MiInitializeRebuildCandidateCounts
int __fastcall MiInitializeRebuildCandidateCounts(unsigned int a1, unsigned int a2){
unsigned int v2;
__int64 v3;
__int64 v4;
unsigned __int8 *v5;
__int64 v6;
char ***v7;
__int64 v8;
char ***v9;
__int64 v10;
char **v11;
__int64 v12;
char *i;
unsigned __int8 *v15;
__int64 v16;
unsigned int v17;
__int64 v19;
unsigned __int8 *v20;
v2 = *((_DWORD *)&stru_140C4DB30 + a2 + 100);
v3 = qword_140C50AD0 + 4544i64 * a1;
v17 = v2;
v4 = v3 + 1072i64 * a2;
v15 = (unsigned __int8 *)(v3 + (unsigned int)MmNumberOfChannels + 4317i64);
v16 = v4;
v5 = (unsigned __int8 *)(v3 + 4317);
v20 = (unsigned __int8 *)(v3 + 4317);
do
{
v6 = 32i64 * *v5;
v7 = (char ***)(v6 + v4 + 560);
v19 = 2i64;
do
{
v8 = 2i64;
do
{
v9 = v7;
v10 = 4i64;
do
{
if( *(v9 - 64) )
{
v11 = *v9;
if( v2 )
{
v12 = v2;
do
{
for( i = *v11; i != (char *)v11; i = *(char **)i )
LODWORD(v6) = MiUpdateLargePageCandidates((i - (char *)MmGetPfnDb()) / 48, a2, 1i64);
v11 += 3;
--v12;
}
while( v12 );
v2 = v17;
}
}
++v9;
--v10;
}
while( v10 );
v7 += 16;
--v8;
}
while( v8 );
--v19;
}
while( v19 );
v4 = v16;
v5 = v20 + 1;
v20 = v5;
}
while( v5 != v15 );
return v6;
}Referenced by:
MiCreatePfnBitMaps