MiCanPageMove

BOOL __fastcall MiCanPageMove(INT64 a1){
  UNICODE_STRING *v1; 
  UINT8 v2; 
  WCHAR *v3; 
  int v4; 
  INT64 v5; 
  __int64 v6; 
  __int64 v7; 
  __int64 v8; 
  LOBYTE(v4) = MI_PFN_IS_PROTO((UNICODE_STRING *)a1, v1, v2, v3);
  if( !v4 || (*(_QWORD *)(v5 + 16) & 0x400i64) == 0 )
    return 1;
  if( MiIsPfnFileOnly(v5) )
    return 0;
  if( qword_140C4DC80 && (v6 & 0x10) == 0 )
    v6 &= ~qword_140C4DC80;
  v7 = v6 >> 16;
  v8 = *(_QWORD *)v7;
  return v7 == *(_QWORD *)v7 + 128i64 || (*(_DWORD *)(v8 + 56) & 0x20) == 0 || (*(_DWORD *)(v8 + 92) & 0x20000) == 0;
}

Referenced by:

MiMigratePfn
MiProbeLeafPteAccess
MiReferenceInPageFile
MiReplaceLockedPage
MiSwapNumaStandbyPage
MiTradeTransitionPage