MiReadyStandbyPageForActive
VOID __fastcall MiReadyStandbyPageForActive(_MMPFN *Pfn1, _MMPTE *PoINTerPte){
__int64 v2;
char v3;
_QWORD *v5;
int v6;
int v7;
v2 = *((_QWORD *)Pfn1 + 1);
v3 = *((_BYTE *)Pfn1 + 34) & 0xFE;
++*((_WORD *)Pfn1 + 16);
*((_BYTE *)Pfn1 + 34) = v3 | 6;
v5 = (_QWORD *)(v2 | 0x8000000000000000ui64);
v6 = (unsigned __int8)*((_QWORD *)Pfn1 + 2) >> 5;
v7 = *((unsigned __int8 *)Pfn1 + 34) >> 6;
if( v7 != 1 )
{
if( v7 )
{
if( v7 == 2 )
v6 |= 0x18u;
}
else
{
v6 |= 8u;
}
}
*v5 = MiMakeValidPte((UINT64)PoINTerPte, (Pfn1 - MmGetPfnDb()) / 48, v6 | 0x20000000u);
*((_QWORD *)Pfn1 + 3) = *((_QWORD *)Pfn1 + 3) & 0xC000000000000000ui64 | 1;
}Referenced by:
MiUnlinkStandbyBatch