MmFreeNonChargedSecurePages

VOID __stdcall MmFreeNonChargedSecurePages(UINT64 **a1, INT64 a2, UINT64 *a3){
  int v4; 
  volatile signed __int64 *v5; 
  volatile signed __int64 *i; 
  _MMPFN *v7; 
  INT64 v8; 
  UINT64 v9; 
  unsigned __int64 v10; 
  PVOID BugCheckParameter4; 
  UINT64 v12; 

  v4 = a2;
  LODWORD(v5) = MiPartitionObjectToPartition(a1);
  for( i = v5; v4; --v4 )
  {
    v7 = &MmGetPfnDb()[*a3];
    v10 = MiLockPageInline(v7);
    v7->u2._bf_0 &= 0xC000000000000000ui64;
    v7->u4._bf_0 &= 0x8FFFFFFFFFFFFFFFui64;
    v7->u3.ReferenceCount = 0;
    if( _InterlockedDecrement64(i + 54) < 0 )
      KeBugCheckEx(0x1Au, (PVOID)0x42403, (PVOID)i, 0i64, 0i64);
    MiInsertPageInFreeOrZeroedList(*a3, 2ui64, v8, v9, (UINT64)BugCheckParameter4, v12);
    _InterlockedAnd64(&v7->u2.Lock, 0x7FFFFFFFFFFFFFFFui64);
    __writecr8(v10);
    ++a3;
  }
}

Referenced by:

PspIumFreePartitionPages