MiCanStealKernelStack

NTSTATUS __stdcall MiCanStealKernelStack(_MMPFN *Pfn1, UINT16 RequiredReferenceCount){
  UINT16 v2; 
  _MMPFN *v3; 
  unsigned __int64 v4; 

  v2 = RequiredReferenceCount;
  v3 = Pfn1;
  v4 = Pfn1 - MmGetPfnDb();
  return v4 <= 0xFFFFFFFFFi64
      && (((unsigned __int64)MmGetPfnDb()[v4].u4._bf_0 >> 50) & 1) != 0
      && (((unsigned __int64)Pfn1->u4._bf_0 >> 60) & 7) == 2
      && ((MiFlags & 0x800) == 0 || ((MiGetLeafPfnBuddy(Pfn1) + 32) & 0xFFFFFFFFFFFFFFDFui64) != 0)
      && (*(_BYTE *)(&v3->u3 + 1) & 7) == 6
      && v3->u3.ReferenceCount == v2;
}

Referenced by:

MiJumpStackTarget
MiSwapStackPage