MiNodeLargeFreeZeroPages
UINT64 __fastcall MiNodeLargeFreeZeroPages(_MI_NODE_INFORMATION *NodeInformation, UINT64 Channel, _MMLISTS PageList){
UINT64 v3;
__int64 v4;
__int64 *v5;
__int64 v7;
_MI_NODE_INFORMATION *v8;
__int64 v9;
__int64 v10;
__int64 v11;
__int64 v12;
__int64 v13;
v3 = 0i64;
v4 = PageList;
v5 = MiLargePageSizes;
v7 = 0i64;
v8 = NodeInformation;
v9 = PageList;
v10 = 3i64;
do
{
if( (_DWORD)Channel == 4 )
{
v9 = v4;
if( (_DWORD)v4 == 2 )
v11 = *(_QWORD *)v8 + *((_QWORD *)v8 + 1);
else
v11 = *((_QWORD *)NodeInformation + v7 + v4);
}
else
{
v12 = v7 + 4 * ((unsigned int)Channel + 4 * v9);
v11 = *((_QWORD *)NodeInformation + v12 + 6)
+ *((_QWORD *)NodeInformation + v12 + 7)
+ *((_QWORD *)NodeInformation + v12 + 9)
+ *((_QWORD *)NodeInformation + v12 + 38)
+ *((_QWORD *)NodeInformation + v12 + 39)
+ *((_QWORD *)NodeInformation + v12 + 41)
+ *((_QWORD *)NodeInformation + v12 + 8)
+ *((_QWORD *)NodeInformation + v12 + 40);
}
v13 = v11 * *v5++;
v8 = (_MI_NODE_INFORMATION *)((char *)v8 + 1072);
v3 += v13;
v7 += 134i64;
--v10;
}
while( v10 );
return v3;
}Referenced by:
MiCheckZeroFreeRebalance
MiInsertPageInFreeOrZeroedList
MiNodeFreeZeroPages
MiRebuildLargePages
MiSignalLargePageRebuild
MiWakePageZeroing