CmRegisterSystemHiveLimitCallback
UINT64 __stdcall CmRegisterSystemHiveLimitCallback(PVOID Ref){
__int64 v1;
unsigned int v2;
if( Hive )
v2 = 100 * (*(_DWORD *)(*(_QWORD *)(Hive + 64) + 40i64) + 4096) / (unsigned int)CmSystemHiveLimitSize;
else
v2 = 0;
if( !CmpSystemHiveHysteresisCallback )
{
CmpSystemHiveHysteresisLow = 80;
CmpSystemHiveHysteresisCallback = (__int64(__fastcall *)(_QWORD, _QWORD))PpSystemHiveLimitCallback;
CmpSystemHiveHysteresisHigh = 90;
CmpSystemHiveHysteresisContext = v1;
CmpSystemHiveHysteresisLowSeen = 1;
if( v2 >= 0x5A && (CmpSystemHiveHysteresisHighSeen = 1, CmpDoQueueSystemHiveHysteresis(v2)) )
CmpSystemHiveHysteresisLowSeen = 0;
else
CmpSystemHiveHysteresisHighSeen = 0;
}
return v2;
}Referenced by:
IopInitializePlugPlayServices