SmGlobalsInitialize
__int64 __fastcall SmGlobalsInitialize(__int64 a1){
__int64 result;
__int128 v3;
memset(a1, 0i64);
*(_QWORD *)&v3 = 59i64;
*((_QWORD *)&v3 + 1) = HalSystemVectorDispatchEntry;
SMKM_STORE_MGR::SmInitialize(a1, &v3);
*(_QWORD *)(a1 + 1952) = 0i64;
SmKmGlobals = PsInitialSystemProcess;
*(_QWORD *)(a1 + 2016) = 0i64;
*(_QWORD *)(a1 + 2024) = 0i64;
*(_QWORD *)(a1 + 1992) = 0i64;
*(_QWORD *)(a1 + 2000) = 0i64;
*(_QWORD *)(a1 + 2008) = 0i64;
*(_DWORD *)(a1 + 2032) = -1;
*(_QWORD *)(a1 + 2040) = 0i64;
*(_BYTE *)(a1 + 1960) = 5;
SmcCacheManagerInitialize((struct EX_RUNDOWN_REF *)(a1 + 2048));
SmRegistrationCtxInitialize((_QWORD *)(a1 + 2608));
*(_QWORD *)(a1 + 2624) = 0i64;
*(_QWORD *)(a1 + 2632) = 0i64;
*(_QWORD *)(a1 + 2616) = 0i64;
memset(a1 + 2640, 0i64);
*(_WORD *)(a1 + 2648) = 1;
*(_BYTE *)(a1 + 2650) = 6;
*(_DWORD *)(a1 + 2652) = 0;
*(_QWORD *)(a1 + 2664) = a1 + 2656;
*(_QWORD *)(a1 + 2656) = a1 + 2656;
memset(a1 + 2752, 0i64);
result = a1 + 2768;
*(_DWORD *)(a1 + 2764) = 0;
*(_WORD *)(a1 + 2760) = 1;
*(_BYTE *)(a1 + 2762) = 6;
*(_QWORD *)(a1 + 2776) = a1 + 2768;
*(_QWORD *)(a1 + 2768) = a1 + 2768;
*(_DWORD *)(a1 + 2896) = 3;
return result;
}Referenced by:
SmInitSystem