ExpInitSystemPhase0
UINT8 __fastcall ExpInitSystemPhase0(){
bool v0;
unsigned __int64 v1;
UINT8 result;
__int128 v3;
ExpTimeout = -40000000i64;
KUSER_SHARED_DATA.CyclesPerYield = 10;
qword_140C16948 = (__int64)ExpSystemResourcesList;
*(_QWORD *)ExpSystemResourcesList = ExpSystemResourcesList;
ExpEnvironmentLock.Event.Header.WaitListHead.Blink = &ExpEnvironmentLock.Event.Header.WaitListHead;
ExpEnvironmentLock.Event.Header.WaitListHead.Flink = &ExpEnvironmentLock.Event.Header.WaitListHead;
ExNPagedLookasideListHead.Blink = &ExNPagedLookasideListHead;
ExNPagedLookasideListHead.Flink = &ExNPagedLookasideListHead;
ExPagedLookasideListHead.Blink = &ExPagedLookasideListHead;
ExPagedLookasideListHead.Flink = &ExPagedLookasideListHead;
qword_140C19618 = (__int64)&ExpFirmwareTableProviderListHead;
ExpFirmwareTableProviderListHead = (__int64)&ExpFirmwareTableProviderListHead;
ExpEnvironmentLock.Count = 1;
ExpEnvironmentLock.Owner = 0i64;
ExpEnvironmentLock.Contention = 0;
LOWORD(ExpEnvironmentLock.Event.Header.Lock) = 1;
ExpEnvironmentLock.Event.Header.Size = 6;
ExpEnvironmentLock.Event.Header.SignalState = 0;
ExNPagedLookasideLock[0] = 0i64;
ExPagedLookasideLock = 0i64;
ExInitializeResourceLite(&ExpFirmwareTableResource);
v0 = (*((_DWORD *)KeLoaderBlock_0 + 66) & 4) != 0;
ExpConDrvLoadLock = 0i64;
ExpFirmwarePageProtectionSupported = v0;
if( CmSuiteBufferType == 7 )
KUSER_SHARED_DATA.SuiteMask = ExGetSuiteMask(&CmSuiteBuffer, ExpMultiUserTS);
v1 = (unsigned __int64)(unsigned int)ExGenRandom(1i64) << 32;
RtlpHeapKey = v1 | (unsigned int)ExGenRandom(1i64);
RtlHpGlobalsInitialize();
result = 1;
v3 = 0i64;
LOBYTE(v3) = 2;
RtlpHpLegacyEnvHandle = v3;
return result;
}Referenced by:
ExInitSystem