2020-12-23 16:49:36 +00:00
|
|
|
// +build windows,amd64 windows,arm64
|
2020-11-06 04:24:50 +00:00
|
|
|
|
|
|
|
/* SPDX-License-Identifier: MIT
|
|
|
|
*
|
|
|
|
* Copyright (C) 2020 WireGuard LLC. All Rights Reserved.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package memmod
|
|
|
|
|
|
|
|
// Optional header format
|
|
|
|
type IMAGE_OPTIONAL_HEADER struct {
|
|
|
|
Magic uint16
|
|
|
|
MajorLinkerVersion uint8
|
|
|
|
MinorLinkerVersion uint8
|
|
|
|
SizeOfCode uint32
|
|
|
|
SizeOfInitializedData uint32
|
|
|
|
SizeOfUninitializedData uint32
|
|
|
|
AddressOfEntryPoint uint32
|
|
|
|
BaseOfCode uint32
|
|
|
|
ImageBase uintptr
|
|
|
|
SectionAlignment uint32
|
|
|
|
FileAlignment uint32
|
|
|
|
MajorOperatingSystemVersion uint16
|
|
|
|
MinorOperatingSystemVersion uint16
|
|
|
|
MajorImageVersion uint16
|
|
|
|
MinorImageVersion uint16
|
|
|
|
MajorSubsystemVersion uint16
|
|
|
|
MinorSubsystemVersion uint16
|
|
|
|
Win32VersionValue uint32
|
|
|
|
SizeOfImage uint32
|
|
|
|
SizeOfHeaders uint32
|
|
|
|
CheckSum uint32
|
|
|
|
Subsystem uint16
|
|
|
|
DllCharacteristics uint16
|
|
|
|
SizeOfStackReserve uintptr
|
|
|
|
SizeOfStackCommit uintptr
|
|
|
|
SizeOfHeapReserve uintptr
|
|
|
|
SizeOfHeapCommit uintptr
|
|
|
|
LoaderFlags uint32
|
|
|
|
NumberOfRvaAndSizes uint32
|
|
|
|
DataDirectory [IMAGE_NUMBEROF_DIRECTORY_ENTRIES]IMAGE_DATA_DIRECTORY
|
|
|
|
}
|
|
|
|
|
|
|
|
const IMAGE_ORDINAL_FLAG uintptr = 0x8000000000000000
|