MiGetSystemPteStatistics

INT64 __fastcall MiGetSystemPteStatistics(INT64 a1, _QWORD *a2, UINT64 *a3){
  int v3; 
  int v7; 
  __int64 v8; 
  UINT64 v9; 
  UINT64 v10; 
  int NumberOfCachedPtes; 
  __int64 v12; 
  INT64 result; 
  UINT64 v14; 
  v3 = *(_DWORD *)(a1 + 24);
  v14 = 0i64;
  v7 = (v3 & 4) != 0 ? 0xF : 0;
  v8 = (unsigned int)(v7 + 1);
  v9 = v8 * RtlFindLongestRunClearEx((_RTL_BITMAP_EX *)a1, &v14, (UINT64)a3, v7);
  v10 = 0x2000000 - v8 * *(_QWORD *)(a1 + 56);
  *a3 = v9;
  if( v10 > v9 )
    *a3 = v10;
  NumberOfCachedPtes = MiGetNumberOfCachedPtes(a1);
  result = v12 + (unsigned int)(v8 * NumberOfCachedPtes);
  *a2 = result + v8 * *(_QWORD *)(a1 + 88);
  return result;
}

Referenced by:

MmGetSessionMappedViewInformation