Types used to represent a virtual memory used when analyzing native code.


ILazyMemoryProvider Definition of a lazy memory provider. 
IMemoryAllocListener VM page allocation listener. 
IMemoryFreeListener VM page free (un-allocation) listener. 
IMemoryPropertyListener VM property change listener. 
IMemoryProtectionListener VM page protection change listener. 
IMemoryWriteListener VM write pre- and post-operation listener. 
IVirtualMemory Definition of a virtual memory space addressing bytes. 
IVirtualMemoryShim A shim is a VM object wrapping another virtual memory, in order to allow temporary write modifications. 


AbstractVirtualMemory A skeleton implementation for virtual memory classes. 
MemoryAllocEvent Memory event: a successful memory allocation took place. 
MemoryChanges A memory-changes ("diff") object. 
MemoryChangesRecorder A recorder of memory changes (allocated pages, written pages, written data). 
MemoryChangesRecorder.Results A record of memory changes. 
MemoryEvent Base class for a memory event. 
MemoryFreeEvent Memory event: memory pages were successfully freed. 
MemoryPropertyEvent Memory event: some properties of a VM were successfully changed. 
MemoryProtectionEvent Memory event: the protection flags of a VM page was successfully modified. 
MemoryWriteEvent Memory event: a write operation is taking place splace. 
Page Simple representation of a page of memory. 
Range A memory range and its protection flags. 
VirtualMemoryUtil Utility methods for virtual memory classes. 
VMReader Virtual memory utility (outside of VirtualMemoryUtil) to read and map memory bytes to native data types
VMReader.Buf Reader object provided by #VMReader(byte[], INativeType, IVirtualMemory) the reader's read() method. 
VMWriter Virtual memory utility (outside of VirtualMemoryUtil) to write memory bytes mapping to native data types


MemoryException Exception raised by virtual memory objects.