SmcCacheManagerInitialize

VOID __stdcall SmcCacheManagerInitialize(_SMC_CACHE_MANAGER *CacheMgr){
  _EX_RUNDOWN_REF *v2; 
  __int64 v3; 

  memset(CacheMgr, 0i64, 0x230u);
  v2 = (_EX_RUNDOWN_REF *)(CacheMgr + 2);
  v3 = 16i64;
  do
  {
    ExInitializePushLock(&v2->Count);
    ExWaitForRundownProtectionRelease(v2);
    v2[1].Count = 0i64;
    v2 += 4;
    --v3;
  }
  while( v3 );
  *((_QWORD *)CacheMgr + 65) = 0i64;
  *((_QWORD *)CacheMgr + 66) = 0i64;
  *((_QWORD *)CacheMgr + 67) = 0i64;
  *((_QWORD *)CacheMgr + 68) = 0i64;
  *((_QWORD *)CacheMgr + 64) = 0i64;
  *((_QWORD *)CacheMgr + 66) = CacheMgr + 130;
  *((_QWORD *)CacheMgr + 65) = CacheMgr + 130;
}

Referenced by:

SmGlobalsInitialize