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