#pragma once enum MEM_PROTECTION { MEM_NOACCESS, MEM_READONLY, MEM_READWRITE, MEM_EXECUTE_READWRITE, }; void* AllocateAddressSpace(size_t size, void * base_address = 0); bool FreeAddressSpace(void* addr, size_t size); void* CommitMemory(void* addr, size_t size, MEM_PROTECTION memProtection); bool DecommitMemory(void* addr, size_t size); bool ProtectMemory(void* addr, size_t size, MEM_PROTECTION memProtection, MEM_PROTECTION * OldProtect = nullptr);