MiReleaseInPageRefs

VOID __fastcall MiReleaseInPageRefs(_MMPFN *Pfn1){
  unsigned __int64 v2; 
  UNICODE_STRING *v3; 
  UINT8 v4; 
  PWCHAR v5; 
  int v6; 
  UINT64 v7; 
  __int64 v8; 
  MiLockAndDecrementShareCount((UINT64)MmGetPfnDb() + 48 * (*((_QWORD *)Pfn1 + 5) & 0xFFFFFFFFFi64), 0);
  v2 = (unsigned __int8)MiLockPageInline((INT64)Pfn1);
  *((_QWORD *)Pfn1 + 3) |= 0x4000000000000000ui64;
  LOBYTE(v6) = MI_PFN_IS_PROTO((UNICODE_STRING *)Pfn1, v3, v4, v5);
  if( v6 && (*((_DWORD *)Pfn1 + 4) & 0x400i64) != 0 )
  {
    _InterlockedAnd64((volatile signed __int64 *)Pfn1 + 3, 0x7FFFFFFFFFFFFFFFui64);
    __writecr8(v2);
    v8 = *((_QWORD *)Pfn1 + 2);
    if( qword_140C4DC80 )
    {
      if( (v8 & 0x10) == 0 )
        v8 &= ~qword_140C4DC80;
    }
    MiDereferenceControlAreaPfnList(*(_CONTROL_AREA **)(v8 >> 16), (_SUBSECTION *)(v8 >> 16), v7, 3ui64);
  }
  else
  {
    *((_QWORD *)Pfn1 + 2) &= 0xFFFFFFFFFFFFFFF9ui64;
    _InterlockedAnd64((volatile signed __int64 *)Pfn1 + 3, 0x7FFFFFFFFFFFFFFFui64);
    __writecr8(v2);
  }
}

Referenced by:

MiInvalidateCollidedIos