MiIsPageSecured

BOOL __stdcall MiIsPageSecured(INT64 a1){
  _UNICODE_STRING *v1; 
  UINT8 v2; 
  wchar_t *v3; 
  int v4; 
  INT64 v5; 
  int v6; 
  unsigned __int64 v7; 
  _MMPTE *PteBase; 
  BOOL result; 

  result = 0;
  if( (MiFlags & 0x8000) != 0 && ((*(_QWORD *)(a1 + 40) >> 60) & 7) == 3 )
  {
    LOBYTE(v4) = MI_PFN_IS_PROTO((_UNICODE_STRING *)a1, v1, v2, v3);
    if( !v4 )
    {
      if( !*(_QWORD *)(v5 + 8) )
        return 1;
      LOBYTE(v6) = MiIsFreeSlabPage(v5);
      if( v6 )
      {
        if( v7 == -2i64 )
          return 1;
      }
      PteBase = MmGetPteBase();
      if( v7 <= (unsigned __int64)&PteBase[0x7FFFFFFEFi64] && v7 >= (unsigned __int64)PteBase )
        return 1;
    }
  }
  return result;
}

Referenced by:

MiAddNonSecuredPagesToDump
MiAddRangeToCrashDump
MiCopySinglePage
MmTryIdentifyPage