Memory Scanner
Physical memory scanning via hypervisor CR3 page table walk. Scan process memory for values and modify them in real-time.
Scan Types
First Scan
- • Exact value
- • Greater than
- • Less than
- • Between (range)
- • Array of Bytes (AOB)
Next Scan
- • Changed
- • Unchanged
- • Increased
- • Decreased
- • Exact value
Data Types
Byte2-byte (Int16)4-byte (Int32)8-byte (Int64)FloatDoubleArray of Bytes
AOB supports wildcards with ?? (e.g., 48 8B ?? 90)
Scan Regions
- • All — Scan all committed memory
- • Heap — Private memory regions
- • Stack — Thread stack regions
- • Image — Loaded modules (.exe, .dll)
- • Mapped — Memory-mapped files
- • Private — Private allocations only
Features
- • Value writing — Select a result and write a new value
- • Inline editing — Double-click to edit values directly
- • Pagination — 500 results per page
- • Context menu — Edit Value, Copy Address/Value, Install EPT Hook
How It Works
The memory scanner uses the hypervisor to perform physical memory access:
- Get target process CR3 (page table base)
- Walk page tables to translate virtual → physical addresses
- Read/write physical memory via EPT
- Bypasses Ring 0 memory protections
Usage
- Navigate to Memory Scanner tab
- Select a process from the dropdown
- Choose data type and scan type
- Enter value to search for
- Click First Scan
- Use Next Scan to refine results
- Double-click or right-click results to modify values
IOCTLs
| IOCTL | Code |
|---|---|
| HV_READ_VM | 0x842 |
| HV_WRITE_VM | 0x843 |