PspInitPhase3

BOOL __stdcall PspInitPhase3(){
  NTSTATUS SystemDllSecureHandle; 
  NTSTATUS v2; 
  UINT64 v3; 
  UINT64 v4; 
  UINT64 a2; 
  _KAPC_STATE ApcState; 
  INT64 v7[14]; 

  memset(&ApcState, 0, sizeof(ApcState));
  a2 = 0i64;
  if( !VslVsmEnabled )
    return 1;
  KiStackAttachProcess(PsSecureSystemProcess, 0i64, &ApcState);
  SystemDllSecureHandle = PspGetSystemDllSecureHandle(PspSystemDlls, &a2);
  if( SystemDllSecureHandle >= 0 )
  {
    SystemDllSecureHandle = PspMapSystemDll(
                              (_EPROCESS *)PsSecureSystemProcess,
                              (PSP_SYSTEM_DLL_DATA *)PspSystemDlls,
                              0i64,
                              0i64);
    if( SystemDllSecureHandle >= 0 )
    {
      v4 = 0i64;
      if( PspGetSystemDllSecureHandle(DllData, &v4) < 0 )
      {
        v3 = v4;
      }
      else
      {
        v2 = PspMapSystemDll((_EPROCESS *)PsSecureSystemProcess, (PSP_SYSTEM_DLL_DATA *)DllData, 0i64, 0i64);
        v3 = v4;
        if( v2 < 0 )
          v3 = 0i64;
      }
      memset(v7, 0i64, 0x68u);
      v7[1] = a2;
      v7[2] = v3;
      SystemDllSecureHandle = VslpEnterIumSecureMode(2u, 4, 0i64, (INT64)v7);
    }
  }
  KiUnstackDetachProcess(&ApcState, 0i64);
  return SystemDllSecureHandle >= 0;
}

Referenced by:

Phase1InitializationIoReady
PsInitSystem