MiLockedPageTableHasActiveLargeEntries
INT64 __fastcall MiLockedPageTableHasActiveLargeEntries(INT64 a1){
int v1;
unsigned __int64 PteBase;
int v4;
unsigned __int64 v5;
v1 = 0;
PteBase = (unsigned __int64)MmGetPteBase();
v4 = 0;
v5 = a1;
while( 1 )
{
v5 = (__int64)((v5 << 25) - (PteBase << 25)) >> 16;
if( v5 < PteBase || v5 > (unsigned __int64)MmGetPteLimit() )
break;
++v4;
}
if( (unsigned int)(v4 - 1) > 1 )
return 0i64;
while( (MI_READ_PTE_LOCK_FREE(a1) & 0x1000000000000081i64) != 0x1000000000000081i64 )
{
a1 += 8i64;
if( (unsigned int)++v1 >= 0x200 )
return 0i64;
}
return 1i64;
}Referenced by:
MiWsleFlush