MiGetPageTableLockBuffer

char *__fastcall MiGetPageTableLockBuffer(__int64 a1, __int64 a2, _DWORD *a3){
  unsigned __int64 v3; 
  int v4; 
  unsigned __int64 v5; 
  char *v6; 
  char *result; 

  v3 = 2 * (unsigned int)((a2 - (__int64)MmGetPml4eBase()) >> 3);
  v4 = v3 & 0x1F;
  v5 = v3 >> 5;
  v6 = (char *)&stru_140C4DB30 + 1196;
  if( (*(_BYTE *)(a1 + 184) & 7u) < 2 )
    v6 = (char *)(a1 + 432);
  result = &v6[4 * v5];
  *a3 = v4;
  return result;
}

Referenced by:

MiIsPageTableLocked
MiLockPageTableInternal
MiPageTableLockIsContended
MiQueryAddressState
MiUnlockPageTableInternal
MiWalkPageTablesRecursively