SmcCacheInitialize

VOID __fastcall SmcCacheInitialize(INT64 a1){
  EX_RUNDOWN_REF *v2; 
  EX_RUNDOWN_REF *v3; 
  EX_RUNDOWN_REF *v4; 
  memset(a1, 0i64);
  StEtaInitialize(a1 + 104);
  *(_QWORD *)(a1 + 160) = 0i64;
  v2 = (EX_RUNDOWN_REF *)(a1 + 168);
  v3 = v2 + 48;
  if( v2 < &v2[48] )
  {
    v4 = v2 + 2;
    do
    {
      LODWORD(v2->Count) = -1;
      ExInitializePushLock(v4);
      ExWaitForRundownProtectionRelease(v4);
      v2 += 3;
      v4 += 3;
    }
    while( v2 < v3 );
  }
}

Referenced by:

SmcProcessCreateRequest