MiUseSlabAllocator

__int64 __fastcall MiUseSlabAllocator(__int64 a1, _BYTE *a2, __int16 a3, _DWORD *a4){
  int v4; 
  __int64 result; 
  int v6; 

  v4 = *(_DWORD *)(*(_QWORD *)a2 + 56i64);
  if( (v4 & 0x20) == 0 || (v4 & 0x40000000) != 0 || (a3 & 0x400) == 0 )
    return 0i64;
  v6 = *(_DWORD *)(a1 + 4);
  if( (*(_DWORD *)(*(_QWORD *)a2 + 92i64) & 0xC0000) == 0 )
  {
    if( (v6 & 0x10) != 0 && a4 )
    {
      result = 1i64;
      *a4 = 1;
      return result;
    }
    return 0i64;
  }
  if( (v6 & 8) == 0 || (a2[34] & 2) != 0 && (a2[32] & 0xA) == 8 )
    return 0i64;
  if( a4 )
    *a4 = 0;
  return 1i64;
}

Referenced by:

MiFinalizeImageHeaderPage
MiGetHardFaultPages
MiPfPrepareReadList
MiPfPrepareSequentialReadList
MiResolveMappedFileFault
MiWalkEntireImage