MiReturnPfnList

INT64 __fastcall MiReturnPfnList(_MMPFN *PfnList){
  _MMPFN *v1; 
  INT64 v2; 
  _MMPFN *v3; 
  unsigned __int64 v4; 
  v1 = PfnList;
  v2 = 0i64;
  if( PfnList )
  {
    do
    {
      v3 = *(_MMPFN **)v1;
      v4 = (unsigned __int8)MiLockPageInline((INT64)v1);
      *((_WORD *)v1 + 16) = 0;
      *((_QWORD *)v1 + 3) &= 0xC000000000000000ui64;
      MiInsertPageInFreeOrZeroedList((v1 - MmGetPfnDb()) / 48, 2ui64);
      _InterlockedAnd64((volatile signed __int64 *)v1 + 3, 0x7FFFFFFFFFFFFFFFui64);
      __writecr8(v4);
      ++v2;
      v1 = v3;
    }
    while( v3 );
  }
  return v2;
}

Referenced by:

MiDeleteSparseRange
MiInitializeDynamicBitmap