PspInitializeSystemDlls

INT64 __stdcall PspInitializeSystemDlls(){
  int v0; 
  __int64 *v1; 
  INT64 result; 
  INT8 v3; 
  INT64 v4; 
  __int64 v5; 
  unsigned int i; 
  __int64 v7; 
  __int64 v8; 
  v0 = 0;
  v1 = &qword_140A98498;
  do
  {
    result = (INT64)PsQuerySystemDllInfo(v0);
    v4 = result;
    if( result )
    {
      v5 = *(v1 - 1);
      for( i = 0; i < *(_DWORD *)v1; **(_QWORD **)(v5 + 8 * v7 + 8) = *(_QWORD *)(v4 + 24) - *(_QWORD *)(v4 + 32) + v8 )
      {
        v7 = 2i64 * i;
        LODWORD(v8) = RtlFindExportedRoutineByName(*(PVOID *)(v4 + 32), *(PSTR *)(v5 + 16i64 * i), v3);
        if( !v8 )
          KeBugCheckEx(0x6Bu, 0xFFFFFFFFC000007Aui64, 6ui64, 0i64, 0i64);
        ++i;
      }
      result = (unsigned int)(v0 - 1);
      if( (unsigned int)result <= 1 )
      {
        result = (INT64)PspWow64GetSharedInformation((unsigned int)v0);
        *(_QWORD *)(result + 48) = *(_QWORD *)(v4 + 24);
      }
    }
    ++v0;
    v1 += 2;
  }
  while( v0 < 6 );
  return result;
}

Referenced by:

PspInitPhase2