PROT {.pure.} = enum PAGE_NOACCESS = 0x01 PAGE_READONLY = 0x02 PAGE_READWRITE = 0x04 PAGE_WRITECOPY = 0x08 PAGE_EXECUTE = 0x10 PAGE_EXECUTE_READ = 0x20 PAGE_EXECUTE_READWRITE = 0x40 PAGE_EXECUTE_WRITECOPY = 0x80 PAGE_GUARD = 0x100 PAGE_NOCACHE = 0x200 PAGE_WRITECOMBINE = 0x400 MMEMORY_BASIC_INFORMATION = object BaseAddress: LPVOID AllocationBase: LPVOID AllocationProtect: DWORD RegionSize: SIZE_T State: DWORD Protect: PROT Type: DWORDconverter toProtection(page: MEMORY_BASIC_INFORMATION): MMEMORY_BASIC_INFORMATION = MMEMORY_BASIC_INFORMATION( BaseAddress: page.BaseAddress, AllocationBase: page.AllocationBase, AllocationProtect: page.AllocationProtect, RegionSize: page.RegionSize, State: page.State, Protect: PROT(page.Protect), Type: page.Type)