Implemented NtQueryVirtualMemory

This commit is contained in:
wszechpolak
2014-08-15 08:14:57 +02:00
parent b618f38e62
commit 50684f8f0d
4 changed files with 24 additions and 8 deletions

View File

@@ -415,6 +415,12 @@ int XenonMemory::HeapFree(uint64_t address, size_t size) {
}
}
size_t XenonMemory::QueryInformation(uint64_t base_address, MEMORY_BASIC_INFORMATION mem_info) {
uint8_t* p = Translate(base_address);
return VirtualQuery(p, &mem_info, sizeof(mem_info));
}
size_t XenonMemory::QuerySize(uint64_t base_address) {
if (base_address >= XENON_MEMORY_VIRTUAL_HEAP_LOW &&
base_address < XENON_MEMORY_VIRTUAL_HEAP_HIGH) {

View File

@@ -54,6 +54,7 @@ public:
uint32_t alignment = 0x20) override;
int HeapFree(uint64_t address, size_t size) override;
size_t QueryInformation(uint64_t base_address, MEMORY_BASIC_INFORMATION mem_info) override;
size_t QuerySize(uint64_t base_address) override;
int Protect(uint64_t address, size_t size, uint32_t access) override;