MiGetPrototypePteBoundaries

__int64 __fastcall MiGetPrototypePteBoundaries(unsigned __int64 a1, _QWORD *a2){
  __int64 v3; 
  unsigned __int8 v5; 
  _RTL_BALANCED_NODE *Root; 
  unsigned __int64 v7; 
  _RTL_BALANCED_NODE **v8; 
  unsigned __int64 v9; 
  __int64 v11; 

  v3 = 0i64;
  v5 = ExAcquireSpinLockShared(&qword_140C4C880);
  Root = RootPointer.Root;
  v7 = v5;
  while( Root )
  {
    v11 = 0i64;
    v9 = MiObtainProtoBaseFromNode(Root, &v11);
    if( a1 < v9 )
    {
      Root = *v8;
    }
    else
    {
      if( a1 < v9 + 8 * v11 )
      {
        if( v8 )
          v3 = MiObtainProtoBaseFromNode(v8, a2);
        break;
      }
      Root = v8[1];
    }
  }
  ExReleaseSpinLockSharedFromDpcLevel((PEX_SPIN_LOCK)&qword_140C4C880);
  __writecr8(v7);
  return v3;
}

Referenced by:

No references.