IopLiveDumpDiscardVirtualAddressRange

VOID __stdcall IopLiveDumpDiscardVirtualAddressRange(
        _LIVEDUMP_CONTEXT *Context,
        VOID *VirtualAddress,
        UINT64 NumberOfBytes){
  char *v3; 
  UINT64 i; 
  unsigned __int64 v6; 
  UINT64 v7; 

  if( NumberOfBytes )
  {
    v3 = (char *)VirtualAddress;
    if( VirtualAddress )
    {
      for( i = (NumberOfBytes >> 12) + ((NumberOfBytes & 0xFFF) != 0); i; --i )
      {
        if( MmIsAddressValid((INT64)v3) )
        {
          LODWORD(v6) = MmGetPhysicalAddress((UINT64)v3);
          v7 = v6 >> 12;
          if( v7 < *((_QWORD *)Context + 72) )
            RtlClearBitsEx((_RTL_BITMAP_EX *)Context + 36, v7, 1ui64);
        }
        v3 += 4096;
      }
    }
  }
}

Referenced by:

IopLiveDumpAllocAndInitResources
IopLiveDumpAllocateDumpBuffers
IopLiveDumpAllocateExtraBuffers
IopLiveDumpAllocateIptBuffers