PspSiloLoadApiSets
NTSTATUS __stdcall PspSiloLoadApiSets(_EJOB *Silo){
_EJOB *v2;
_EJOB *v3;
NTSTATUS v4;
_ESERVERSILO_GLOBALS *ServerSiloGlobals;
VOID *ApiSetSchema;
_UNICODE_STRING v8;
VOID *ApiSetBaseAddress;
UINT64 ApiSetSize;
VOID *ApiSetSection;
ApiSetSchema = 0i64;
ApiSetSection = 0i64;
ApiSetBaseAddress = 0i64;
ApiSetSize = 0i64;
v8.Buffer = (wchar_t *)&stru_1407D6010.P5;
*(_QWORD *)&v8.Length = 4980810i64;
LODWORD(v2) = PsAttachSiloToCurrentThread((INT64)Silo);
v3 = v2;
v4 = ApiSetLoadSchemaWithExtensions(&v8, &ApiSetBaseAddress, &ApiSetSize);
if( v4 >= 0 )
{
v4 = PspApiSetCopyToSystemSpace(ApiSetBaseAddress, ApiSetSize, &ApiSetSection, &ApiSetSchema);
if( v4 >= 0 )
{
ServerSiloGlobals = PsGetServerSiloGlobals(Silo);
ServerSiloGlobals->ApiSetSection = ApiSetSection;
ServerSiloGlobals->ApiSetSchema = ApiSetSchema;
ServerSiloGlobals->OneCoreForwardersEnabled = PspQueryForwardersEnabled();
}
if( ApiSetBaseAddress )
ApiSetReleaseSchema(ApiSetBaseAddress);
}
PsDetachSiloFromCurrentThread(v3);
return v4;
}Referenced by:
PspInitializeServerSiloDeferred