PoCopyDeepIdleMask
VOID __stdcall PoCopyDeepIdleMask(_KAFFINITY_EX *DeepIdleMask){
__int64 *v2;
__int64 v3;
__int64 v4;
__int64 v5;
DeepIdleMask->Reserved = 0;
*(_DWORD *)&DeepIdleMask->Count = 1310721;
memset(DeepIdleMask->Bitmap, 0i64, sizeof(DeepIdleMask->Bitmap));
if( KeNumberNodes )
{
v2 = KeNodeBlock;
v3 = (unsigned __int16)KeNumberNodes;
do
{
v4 = *(unsigned __int16 *)(*v2 + 144);
v5 = *(_QWORD *)(*v2 + 64);
if( DeepIdleMask->Count <= (unsigned __int16)v4 )
DeepIdleMask->Count = v4 + 1;
DeepIdleMask->Bitmap[v4] |= v5;
++v2;
--v3;
}
while( v3 );
}
}Referenced by:
KiGetDeepIdleProcessors
PpmCheckContinueExecution
PpmIdleSelectStates
PpmPostProcessMediaBuffering
RtlUpdateSwapReference