pe_structures.h
Go to the documentation of this file.
1 /* Copyright 2017 - 2021 R. Thomas
2  * Copyright 2017 - 2021 Quarkslab
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 
19 static const int32_t MaxNumberOfSections16 = 65279;
20 
22 static const char PE_Magic[] = { 'P', 'E', '\0', '\0' };
23 
24 static const char Rich_Magic[] = {'R', 'i', 'c', 'h'};
25 static const char DanS_Magic[] = {'D', 'a', 'n', 'S'};
26 
27 static const uint32_t DanS_Magic_number = 0x536E6144;
28 
29 static const char BigObjMagic[] = {
30  '\xc7', '\xa1', '\xba', '\xd1', '\xee', '\xba', '\xa9', '\x4b',
31  '\xaf', '\x20', '\xfa', '\xf6', '\x6a', '\xa4', '\xdc', '\xb8',
32 };
33 
35 
36 #pragma pack(push,1)
37 struct pe_header {
38  char signature[sizeof(PE_Magic)];
46 };
47 
48 
49 struct pe_relocation {
53 };
54 
58 };
59 
60 
61 struct pe_symbol {
62  union {
63  char ShortName[8];
64  struct
65  {
68  } Name;
69  } Name;
75 };
76 
77 
78 struct pe_section {
79  char Name[8];
89 };
90 
96  char unused[2];
97 };
98 
105 };
106 
111 };
112 
113 
121  char unused;
122 };
123 
128  char unused2[12];
129 };
130 
131 union Auxiliary {
136 };
137 
138 
142 struct pe_import {
148 };
149 
150 
153 };
154 
157 };
158 
159 
160 struct pe32_tls {
167 };
168 
169 
170 struct pe64_tls {
177 };
178 
179 
201 };
202 
212  //uint32_t BaseOfData; // RVA
234 };
235 
236 
268 };
269 
270 
274 };
275 
276 
277 struct pe_debug {
286 };
287 
288 
289 struct pe_pdb_70 {
293  char* filename;
294 };
295 
296 struct pe_pdb_20 {
301  char* filename;
302 };
303 
304 struct pe_pogo {
307  char name[1];
308 };
309 
310 
318 };
319 
321  union {
324  } NameID;
326 };
327 
333 };
334 
338 };
339 
345 };
346 
347 //
348 // Export structures
349 //
362 };
363 
364 
366  uint32_t signature; // e.g. 0xfeef04bd
367  uint32_t struct_version; // e.g. 0x00000042 = "0.42"
368  uint32_t file_version_MS; // e.g. 0x00030075 = "3.75"
369  uint32_t file_version_LS; // e.g. 0x00000031 = "0.31"
370  uint32_t product_version_MS; // e.g. 0x00030010 = "3.10"
371  uint32_t product_version_LS; // e.g. 0x00000031 = "0.31"
372  uint32_t file_flags_mask; // = 0x3F for version "0.42"
373  uint32_t file_flags; // e.g. VFF_DEBUG | VFF_PRERELEASE
374  uint32_t file_OS; // e.g. VOS_DOS_WINDOWS16
375  uint32_t file_type; // e.g. VFT_DRIVER
376  uint32_t file_subtype; // e.g. VFT2_DRV_KEYBOARD
379 };
380 
381 
386  char16_t key[16];
387  // uint16_t padding;
388  //
389  // uint16_t padding;
390  // uint16_t children
391 };
392 
401 };
402 
403 
414 };
415 
426 };
427 
440  // sz_Or_Ord menu;
441  // sz_Or_Ord windowClass;
442  // char16_t title[titleLen];
443  // uint16_t pointsize;
444  // uint16_t weight;
445  // uint8_t italic;
446  // uint8_t charset;
447  // char16_t typeface[stringLen];
448 };
449 
459 };
460 
461 
472  // sz_Or_Ord windowClass;
473  // sz_Or_Ord title;
474  // uint16_t extra_count;
475 };
476 
477 
487 };
488 
494 };
495 
500 };
501 
502 
509 };
510 
514 };
515 
516 #pragma pack(pop)
pe_relocation::VirtualAddress
uint32_t VirtualAddress
Definition: pe_structures.h:50
AuxiliaryCLRToken::AuxType
uint8_t AuxType
Definition: pe_structures.h:125
pe_dialog_template::ext_style
uint32_t ext_style
Definition: pe_structures.h:453
AuxiliaryCLRToken::unused1
uint8_t unused1
Definition: pe_structures.h:126
pe_resource_acceltableentry
Definition: pe_structures.h:340
pe64_tls::SizeOfZeroFill
uint32_t SizeOfZeroFill
Definition: pe_structures.h:175
pe_dialog_item_template_ext::help_id
uint32_t help_id
Definition: pe_structures.h:464
pe_dialog_item_template_ext::y
int16_t y
Definition: pe_structures.h:468
pe64_optional_header::MinorLinkerVersion
uint8_t MinorLinkerVersion
Definition: pe_structures.h:206
pe_dialog_item_template::x
int16_t x
Definition: pe_structures.h:482
AuxiliaryWeakExternal::TagIndex
uint32_t TagIndex
Definition: pe_structures.h:108
pe_resource_fixed_file_info::signature
uint32_t signature
Definition: pe_structures.h:366
pe_resource_data_entry
Definition: pe_structures.h:328
pe32_optional_header::MinorImageVersion
uint16_t MinorImageVersion
Definition: pe_structures.h:253
pe_dialog_item_template_ext::ext_style
uint32_t ext_style
Definition: pe_structures.h:465
pe_exception_entry_mips::exception_handler
uint32_t exception_handler
Definition: pe_structures.h:506
pe32_optional_header::SizeOfStackReserve
uint32_t SizeOfStackReserve
Definition: pe_structures.h:262
pe_symbol::Value
uint32_t Value
Definition: pe_structures.h:70
pe_base_relocation_block::BlockSize
uint32_t BlockSize
Definition: pe_structures.h:57
pe_export_directory_table::NameRVA
uint32_t NameRVA
The address of the ASCII DLL's name (RVA)
Definition: pe_structures.h:355
Auxiliary::SectionDefinition
AuxiliarySectionDefinition SectionDefinition
Definition: pe_structures.h:135
pe32_optional_header::SizeOfInitializedData
uint32_t SizeOfInitializedData
Definition: pe_structures.h:242
pe_icon_header::size
uint32_t size
Size of the image in bytes.
Definition: pe_structures.h:424
pe_exception_entry_mips::address_start_va
uint32_t address_start_va
Definition: pe_structures.h:504
pe32_optional_header::DLLCharacteristics
uint16_t DLLCharacteristics
Definition: pe_structures.h:261
pe_pdb_20::signature
uint32_t signature
Definition: pe_structures.h:299
DanS_Magic
static const char DanS_Magic[]
Definition: pe_structures.h:25
pe_dos_header::Magic
uint16_t Magic
Definition: pe_structures.h:182
pe_code_integrity
Definition: pe_structures.h:489
pe_resource_directory_table::TimeDateStamp
uint32_t TimeDateStamp
Definition: pe_structures.h:313
pe_pdb_20::offset
uint32_t offset
Definition: pe_structures.h:298
pe_dialog_template_ext::cx
int16_t cx
Definition: pe_structures.h:438
pe_dialog_template::cy
int16_t cy
Definition: pe_structures.h:458
AuxiliarySectionDefinition::unused
char unused
Definition: pe_structures.h:121
AuxiliaryFunctionDefinition::PointerToLinenumber
uint32_t PointerToLinenumber
Definition: pe_structures.h:94
pe_import::ImportLookupTableRVA
uint32_t ImportLookupTableRVA
Definition: pe_structures.h:143
pe_resource_fixed_file_info::file_date_LS
uint32_t file_date_LS
Definition: pe_structures.h:378
pe_exception_entry_x64::address_end_rva
uint32_t address_end_rva
Definition: pe_structures.h:498
Auxiliary::bfAndefSymbol
AuxiliarybfAndefSymbol bfAndefSymbol
Definition: pe_structures.h:133
pe_debug
Definition: pe_structures.h:277
pe_export_directory_table::NamePointerRVA
uint32_t NamePointerRVA
Address of the name pointer table (RVA)
Definition: pe_structures.h:360
pe32_optional_header::MinorOperatingSystemVersion
uint16_t MinorOperatingSystemVersion
Definition: pe_structures.h:251
pe32_optional_header::SizeOfImage
uint32_t SizeOfImage
Definition: pe_structures.h:257
pe_dialog_template::y
int16_t y
Definition: pe_structures.h:456
pe_section::VirtualSize
uint32_t VirtualSize
Definition: pe_structures.h:80
pe_export_directory_table::MinorVersion
uint16_t MinorVersion
The Minor version number.
Definition: pe_structures.h:354
pe32_optional_header::SizeOfCode
uint32_t SizeOfCode
Definition: pe_structures.h:241
uint16_t
unsigned short uint16_t
Definition: stdint-msvc2008.h:79
pe_dialog_item_template
Dialog box template item.
Definition: pe_structures.h:479
pe64_optional_header::MajorImageVersion
uint16_t MajorImageVersion
Definition: pe_structures.h:218
pe64_optional_header::SizeOfHeapCommit
uint64_t SizeOfHeapCommit
Definition: pe_structures.h:231
pe64_optional_header::SizeOfImage
uint32_t SizeOfImage
Definition: pe_structures.h:223
pe_dos_header::MinimumExtraParagraphs
uint16_t MinimumExtraParagraphs
Definition: pe_structures.h:187
pe_dialog_item_template::y
int16_t y
Definition: pe_structures.h:483
pe64_tls::AddressOfCallback
uint64_t AddressOfCallback
Definition: pe_structures.h:174
pe_exception_entry_mips::handler_data
uint32_t handler_data
Definition: pe_structures.h:507
pe_pdb_20
Definition: pe_structures.h:296
AuxiliarySectionDefinition::Length
uint32_t Length
Definition: pe_structures.h:115
pe_resource_fixed_file_info::file_version_MS
uint32_t file_version_MS
Definition: pe_structures.h:368
pe_resource_icon_group::bit_count
uint16_t bit_count
Bits per pixel.
Definition: pe_structures.h:411
pe_resource_string::Length
int16_t Length
Definition: pe_structures.h:336
pe_dos_header::HeaderSizeInParagraphs
uint16_t HeaderSizeInParagraphs
Definition: pe_structures.h:186
pe_resource_acceltableentry::wAnsi
int16_t wAnsi
Definition: pe_structures.h:342
pe32_optional_header::SizeOfHeapReserve
uint32_t SizeOfHeapReserve
Definition: pe_structures.h:264
pe32_tls::RawDataEndVA
uint32_t RawDataEndVA
Definition: pe_structures.h:162
pe32_optional_header::SizeOfStackCommit
uint32_t SizeOfStackCommit
Definition: pe_structures.h:263
pe_exception_entry_mips::address_end_va
uint32_t address_end_va
Definition: pe_structures.h:505
pe_symbol::Offset
uint32_t Offset
Definition: pe_structures.h:67
pe_dialog_template_ext::version
uint16_t version
Definition: pe_structures.h:430
AuxiliarySectionDefinition::Selection
uint8_t Selection
Definition: pe_structures.h:120
AuxiliaryWeakExternal
Definition: pe_structures.h:107
pe_debug::SizeOfData
uint32_t SizeOfData
Definition: pe_structures.h:283
pe32_optional_header::SizeOfHeapCommit
uint32_t SizeOfHeapCommit
Definition: pe_structures.h:265
pe_dos_header::InitialSP
uint16_t InitialSP
Definition: pe_structures.h:190
pe_dialog_template_ext
Extended dialog box template.
Definition: pe_structures.h:429
AuxiliaryCLRToken
Definition: pe_structures.h:124
pe_resource_fixed_file_info::file_version_LS
uint32_t file_version_LS
Definition: pe_structures.h:369
pe_resource_icon_dir::type
uint16_t type
Resource type (1 for icons)
Definition: pe_structures.h:399
pe64_optional_header::Subsystem
uint16_t Subsystem
Definition: pe_structures.h:226
pe_debug::TimeDateStamp
uint32_t TimeDateStamp
Definition: pe_structures.h:279
pe_dos_header::AddressOfNewExeHeader
uint32_t AddressOfNewExeHeader
Definition: pe_structures.h:200
pe64_optional_header::SizeOfHeaders
uint32_t SizeOfHeaders
Definition: pe_structures.h:224
pe_debug::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:278
pe_resource_icon_group::color_count
uint8_t color_count
Number of colors in image (0 if >=8bpp)
Definition: pe_structures.h:408
pe_header::SizeOfOptionalHeader
uint16_t SizeOfOptionalHeader
Definition: pe_structures.h:44
pe64_tls::RawDataStartVA
uint64_t RawDataStartVA
Definition: pe_structures.h:171
pe64_tls
Definition: pe_structures.h:170
pe32_tls::SizeOfZeroFill
uint32_t SizeOfZeroFill
Definition: pe_structures.h:165
pe_icon_header::reserved
uint8_t reserved
Reserved (must be 0)
Definition: pe_structures.h:421
pe_resource_acceltableentry::wId
int16_t wId
Definition: pe_structures.h:343
pe_dialog_template::style
uint32_t style
Definition: pe_structures.h:452
AuxiliaryFunctionDefinition::PointerToNextFunction
uint32_t PointerToNextFunction
Definition: pe_structures.h:95
pe_pdb_70::signature
uint8_t signature[16]
Definition: pe_structures.h:291
pe_import::TimeDateStamp
uint32_t TimeDateStamp
Definition: pe_structures.h:144
pe32_tls::RawDataStartVA
uint32_t RawDataStartVA
Definition: pe_structures.h:161
pe_section::PointerToLineNumbers
uint32_t PointerToLineNumbers
Definition: pe_structures.h:85
pe_base_relocation_block::PageRVA
uint32_t PageRVA
Definition: pe_structures.h:56
pe_dialog_template::cx
int16_t cx
Definition: pe_structures.h:457
pe_pdb_70::age
uint32_t age
Definition: pe_structures.h:292
pe_resource_directory_table::NumberOfIDEntries
uint16_t NumberOfIDEntries
Definition: pe_structures.h:317
uint8_t
unsigned char uint8_t
Definition: stdint-msvc2008.h:78
pe_pdb_20::cv_signature
uint32_t cv_signature
Definition: pe_structures.h:297
pe_dos_header::OEMinfo
uint16_t OEMinfo
Definition: pe_structures.h:198
pe64_optional_header::ImageBase
uint64_t ImageBase
Definition: pe_structures.h:213
pe_import::ImportAddressTableRVA
uint32_t ImportAddressTableRVA
Definition: pe_structures.h:147
pe_resource_icon_group
Structure that follows pe_resource_icon_dir in a resource entry.
Definition: pe_structures.h:405
pe_relocation
Definition: pe_structures.h:49
pe64_optional_header::AddressOfEntryPoint
uint32_t AddressOfEntryPoint
Definition: pe_structures.h:210
Rich_Magic
static const char Rich_Magic[]
Definition: pe_structures.h:24
pe_header::Machine
uint16_t Machine
Definition: pe_structures.h:39
pe_data_directory::RelativeVirtualAddress
uint32_t RelativeVirtualAddress
Definition: pe_structures.h:272
Auxiliary::FunctionDefinition
AuxiliaryFunctionDefinition FunctionDefinition
Definition: pe_structures.h:132
pe_exception_entry_mips
Definition: pe_structures.h:503
pe_dos_header::InitialRelativeCS
uint16_t InitialRelativeCS
Definition: pe_structures.h:193
pe_dialog_item_template_ext
Extended dialog box template item.
Definition: pe_structures.h:463
pe_section::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:88
AuxiliaryFunctionDefinition::unused
char unused[2]
Definition: pe_structures.h:96
DanS_Magic_number
static const uint32_t DanS_Magic_number
Definition: pe_structures.h:27
pe32_optional_header::BaseOfData
uint32_t BaseOfData
Definition: pe_structures.h:246
pe32_optional_header::NumberOfRvaAndSize
uint32_t NumberOfRvaAndSize
Definition: pe_structures.h:267
pe_resource_version_info::type
uint16_t type
Definition: pe_structures.h:385
pe_resource_acceltableentry::padding
int16_t padding
Definition: pe_structures.h:344
pe64_optional_header::MajorLinkerVersion
uint8_t MajorLinkerVersion
Definition: pe_structures.h:205
pe_section
Definition: pe_structures.h:78
AuxiliarySectionDefinition::CheckSum
uint32_t CheckSum
Definition: pe_structures.h:118
pe64_optional_header::MinorImageVersion
uint16_t MinorImageVersion
Definition: pe_structures.h:219
pe_resource_icon_dir::reserved
uint16_t reserved
Reserved.
Definition: pe_structures.h:398
pe_resource_icon_group::height
uint8_t height
Height, in pixels, of the image.
Definition: pe_structures.h:407
pe_export_directory_table::ExportAddressTableRVA
uint32_t ExportAddressTableRVA
Address of the export address table (RVA)
Definition: pe_structures.h:359
uint32_t
unsigned int uint32_t
Definition: stdint-msvc2008.h:80
pe64_optional_header::MajorOperatingSystemVersion
uint16_t MajorOperatingSystemVersion
Definition: pe_structures.h:216
AuxiliaryFunctionDefinition::TotalSize
uint32_t TotalSize
Definition: pe_structures.h:93
pe_resource_fixed_file_info::product_version_MS
uint32_t product_version_MS
Definition: pe_structures.h:370
pe64_optional_header::SizeOfCode
uint32_t SizeOfCode
Definition: pe_structures.h:207
pe_resource_fixed_file_info
Definition: pe_structures.h:365
pe_debug::Type
uint32_t Type
Definition: pe_structures.h:282
AuxiliaryWeakExternal::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:109
ImportLookupTableEntry64::data
uint64_t data
Definition: pe_structures.h:156
AuxiliaryFunctionDefinition::TagIndex
uint32_t TagIndex
Definition: pe_structures.h:92
pe32_optional_header::MajorSubsystemVersion
uint16_t MajorSubsystemVersion
Definition: pe_structures.h:254
pe_resource_acceltableentry::fFlags
int16_t fFlags
Definition: pe_structures.h:341
pe32_optional_header::MajorOperatingSystemVersion
uint16_t MajorOperatingSystemVersion
Definition: pe_structures.h:250
pe_exception_entry_arm
Definition: pe_structures.h:511
int16_t
signed short int16_t
Definition: stdint-msvc2008.h:76
pe_import::ForwarderChain
uint32_t ForwarderChain
Definition: pe_structures.h:145
pe64_optional_header::FileAlignment
uint32_t FileAlignment
Definition: pe_structures.h:215
pe_symbol::Zeroes
uint32_t Zeroes
Definition: pe_structures.h:66
pe_dos_header::OEMid
uint16_t OEMid
Definition: pe_structures.h:197
pe_resource_fixed_file_info::file_OS
uint32_t file_OS
Definition: pe_structures.h:374
pe_code_integrity::Flags
uint16_t Flags
Definition: pe_structures.h:490
AuxiliaryCLRToken::unused2
char unused2[12]
Definition: pe_structures.h:128
pe32_optional_header::BaseOfCode
uint32_t BaseOfCode
Definition: pe_structures.h:245
pe_header::signature
char signature[sizeof(PE_Magic)]
Definition: pe_structures.h:38
pe_symbol
Definition: pe_structures.h:61
pe32_optional_header::SectionAlignment
uint32_t SectionAlignment
Definition: pe_structures.h:248
PE_Magic
static const char PE_Magic[]
The PE signature bytes that follows the DOS stub header.
Definition: pe_structures.h:22
pe_symbol::SectionNumber
int16_t SectionNumber
Definition: pe_structures.h:71
pe_dialog_item_template_ext::x
int16_t x
Definition: pe_structures.h:467
pe_exception_entry_x64::address_start_rva
uint32_t address_start_rva
Definition: pe_structures.h:497
pe_export_directory_table::MajorVersion
uint16_t MajorVersion
The Major version number.
Definition: pe_structures.h:353
pe64_tls::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:176
pe_export_directory_table::OrdinalBase
uint32_t OrdinalBase
The starting ordinal number for exports. (Usually 1)
Definition: pe_structures.h:356
pe_exception_entry_mips::prolog_end_address
uint32_t prolog_end_address
Definition: pe_structures.h:508
pe_resource_data_entry::Size
uint32_t Size
Definition: pe_structures.h:330
pe_dos_header
The DOS compatible header at the front of all PEs.
Definition: pe_structures.h:181
pe_dialog_template_ext::style
uint32_t style
Definition: pe_structures.h:434
pe64_optional_header::SizeOfUninitializedData
uint32_t SizeOfUninitializedData
Definition: pe_structures.h:209
pe32_optional_header::MinorSubsystemVersion
uint16_t MinorSubsystemVersion
Definition: pe_structures.h:255
pe_resource_version_info
Definition: pe_structures.h:382
uint64_t
unsigned __int64 uint64_t
Definition: stdint-msvc2008.h:90
pe32_optional_header::Win32VersionValue
uint32_t Win32VersionValue
Definition: pe_structures.h:256
pe64_tls::AddressOfIndex
uint64_t AddressOfIndex
Definition: pe_structures.h:173
pe64_optional_header::CheckSum
uint32_t CheckSum
Definition: pe_structures.h:225
ImportLookupTableEntry64
Definition: pe_structures.h:155
BigObjMagic
static const char BigObjMagic[]
Definition: pe_structures.h:29
pe64_optional_header
Definition: pe_structures.h:203
pe_dialog_template::x
int16_t x
Definition: pe_structures.h:455
pe_dialog_template::nbof_items
uint16_t nbof_items
Definition: pe_structures.h:454
pe_relocation::SymbolTableIndex
uint32_t SymbolTableIndex
Definition: pe_structures.h:51
pe_resource_data_entry::Codepage
uint32_t Codepage
Definition: pe_structures.h:331
pe32_optional_header::ImageBase
uint32_t ImageBase
Definition: pe_structures.h:247
pe32_optional_header::MinorLinkerVersion
uint8_t MinorLinkerVersion
Definition: pe_structures.h:240
pe_code_integrity::Reserved
uint32_t Reserved
Definition: pe_structures.h:493
pe_icon_header::planes
uint16_t planes
Color Planes.
Definition: pe_structures.h:422
MaxNumberOfSections16
static const int32_t MaxNumberOfSections16
The maximum number of sections that a COFF object can have (inclusive).
Definition: pe_structures.h:19
pe_dos_header::Reserved2
uint16_t Reserved2[10]
Definition: pe_structures.h:199
pe_pogo
Definition: pe_structures.h:304
pe_resource_directory_table::NumberOfNameEntries
uint16_t NumberOfNameEntries
Definition: pe_structures.h:316
pe32_tls::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:166
pe_dialog_template_ext::y
int16_t y
Definition: pe_structures.h:437
AuxiliarySectionDefinition::NumberOfRelocations
uint16_t NumberOfRelocations
Definition: pe_structures.h:116
pe64_optional_header::SectionAlignment
uint32_t SectionAlignment
Definition: pe_structures.h:214
pe_resource_string::Name
uint16_t Name[1]
Definition: pe_structures.h:337
AuxiliarySectionDefinition
Definition: pe_structures.h:114
pe_debug::MinorVersion
uint16_t MinorVersion
Definition: pe_structures.h:281
pe_header::NumberOfSymbols
uint32_t NumberOfSymbols
Definition: pe_structures.h:43
pe32_optional_header
Definition: pe_structures.h:237
pe32_tls::AddressOfIndex
uint32_t AddressOfIndex
Definition: pe_structures.h:163
pe_exception_entry_x64
Definition: pe_structures.h:496
pe32_tls
Definition: pe_structures.h:160
pe_resource_fixed_file_info::file_date_MS
uint32_t file_date_MS
Definition: pe_structures.h:377
pe_header::TimeDateStamp
uint32_t TimeDateStamp
Definition: pe_structures.h:41
pe_resource_version_info::key
char16_t key[16]
Definition: pe_structures.h:386
pe64_optional_header::SizeOfStackReserve
uint64_t SizeOfStackReserve
Definition: pe_structures.h:228
pe_header::Characteristics
uint16_t Characteristics
Definition: pe_structures.h:45
pe_resource_string
Definition: pe_structures.h:335
AuxiliarybfAndefSymbol::PointerToNextFunction
uint32_t PointerToNextFunction
Definition: pe_structures.h:103
pe_resource_fixed_file_info::file_flags
uint32_t file_flags
Definition: pe_structures.h:373
pe_icon_header::bit_count
uint16_t bit_count
Bits per pixel.
Definition: pe_structures.h:423
pe_pdb_70
Definition: pe_structures.h:289
pe32_optional_header::MajorLinkerVersion
uint8_t MajorLinkerVersion
Definition: pe_structures.h:239
pe_dialog_item_template_ext::cy
int16_t cy
Definition: pe_structures.h:470
pe32_optional_header::Magic
uint16_t Magic
Definition: pe_structures.h:238
pe_resource_icon_dir::count
uint16_t count
Number of icons.
Definition: pe_structures.h:400
pe_icon_header::height
uint8_t height
Height, in pixels, of the image.
Definition: pe_structures.h:419
pe_resource_icon_group::ID
uint16_t ID
The associated ID.
Definition: pe_structures.h:413
pe32_optional_header::FileAlignment
uint32_t FileAlignment
Definition: pe_structures.h:249
pe_dos_header::MaximumExtraParagraphs
uint16_t MaximumExtraParagraphs
Definition: pe_structures.h:188
Auxiliary
Definition: pe_structures.h:131
pe_export_directory_table::NumberOfNamePointers
uint32_t NumberOfNamePointers
Number of entries in the name pointer table.
Definition: pe_structures.h:358
pe_resource_icon_group::width
uint8_t width
Width, in pixels, of the image.
Definition: pe_structures.h:406
pe_dialog_item_template::id
uint16_t id
Definition: pe_structures.h:486
pe_export_directory_table
Definition: pe_structures.h:350
pe_section::Name
char Name[8]
Definition: pe_structures.h:79
pe64_optional_header::SizeOfHeapReserve
uint64_t SizeOfHeapReserve
Definition: pe_structures.h:230
pe64_optional_header::MinorOperatingSystemVersion
uint16_t MinorOperatingSystemVersion
Definition: pe_structures.h:217
pe_symbol::StorageClass
uint8_t StorageClass
Definition: pe_structures.h:73
pe_dialog_template
Dialog box template.
Definition: pe_structures.h:451
pe_relocation::Type
uint16_t Type
Definition: pe_structures.h:52
pe_pdb_70::filename
char * filename
Definition: pe_structures.h:293
pe_dos_header::UsedBytesInTheLastPage
uint16_t UsedBytesInTheLastPage
Definition: pe_structures.h:183
pe_dialog_template_ext::nbof_items
uint16_t nbof_items
Definition: pe_structures.h:435
pe_export_directory_table::OrdinalTableRVA
uint32_t OrdinalTableRVA
Address of the ordinal table (RVA)
Definition: pe_structures.h:361
pe_dos_header::AddressOfRelocationTable
uint16_t AddressOfRelocationTable
Definition: pe_structures.h:194
pe_icon_header::color_count
uint8_t color_count
Number of colors in image (0 if >=8bpp)
Definition: pe_structures.h:420
AuxiliarybfAndefSymbol
Definition: pe_structures.h:99
pe_dialog_item_template_ext::style
uint32_t style
Definition: pe_structures.h:466
pe_dialog_template_ext::ext_style
uint32_t ext_style
Definition: pe_structures.h:433
pe_code_integrity::CatalogOffset
uint32_t CatalogOffset
Definition: pe_structures.h:492
pe_dialog_template_ext::help_id
uint32_t help_id
Definition: pe_structures.h:432
pe_symbol::ShortName
char ShortName[8]
Definition: pe_structures.h:63
pe32_optional_header::MajorImageVersion
uint16_t MajorImageVersion
Definition: pe_structures.h:252
pe_resource_fixed_file_info::file_subtype
uint32_t file_subtype
Definition: pe_structures.h:376
pe_resource_icon_group::reserved
uint8_t reserved
Reserved (must be 0)
Definition: pe_structures.h:409
DEFAULT_NUMBER_DATA_DIRECTORIES
static const uint8_t DEFAULT_NUMBER_DATA_DIRECTORIES
Definition: pe_structures.h:34
pe_icon_header::offset
uint32_t offset
Offset to the pixels.
Definition: pe_structures.h:425
pe_resource_directory_entries
Definition: pe_structures.h:320
pe64_optional_header::MinorSubsystemVersion
uint16_t MinorSubsystemVersion
Definition: pe_structures.h:221
pe_symbol::NumberOfAuxSymbols
uint8_t NumberOfAuxSymbols
Definition: pe_structures.h:74
pe_resource_directory_entries::NameRVA
uint32_t NameRVA
Definition: pe_structures.h:322
pe_resource_icon_group::size
uint32_t size
Size of the image in bytes.
Definition: pe_structures.h:412
pe_header
Definition: pe_structures.h:37
pe_resource_directory_table
Definition: pe_structures.h:311
pe64_optional_header::SizeOfInitializedData
uint32_t SizeOfInitializedData
Definition: pe_structures.h:208
pe_exception_entry_x64::unwind_info_rva
uint32_t unwind_info_rva
Definition: pe_structures.h:499
pe64_optional_header::Win32VersionValue
uint32_t Win32VersionValue
Definition: pe_structures.h:222
pe_dos_header::InitialIP
uint16_t InitialIP
Definition: pe_structures.h:192
pe_section::NumberOfLineNumbers
uint16_t NumberOfLineNumbers
Definition: pe_structures.h:87
pe_section::SizeOfRawData
uint32_t SizeOfRawData
Definition: pe_structures.h:82
pe_dos_header::Reserved
uint16_t Reserved[4]
Definition: pe_structures.h:196
AuxiliaryCLRToken::SymbolTableIndex
uint32_t SymbolTableIndex
Definition: pe_structures.h:127
AuxiliarySectionDefinition::NumberOfLinenumbers
uint16_t NumberOfLinenumbers
Definition: pe_structures.h:117
pe_dialog_item_template::cy
int16_t cy
Definition: pe_structures.h:485
pe32_optional_header::SizeOfHeaders
uint32_t SizeOfHeaders
Definition: pe_structures.h:258
AuxiliaryFunctionDefinition
Definition: pe_structures.h:91
pe_resource_icon_group::planes
uint16_t planes
Color Planes.
Definition: pe_structures.h:410
pe_resource_version_info::length
uint16_t length
Definition: pe_structures.h:383
pe_dialog_template_ext::signature
uint16_t signature
Definition: pe_structures.h:431
pe_debug::PointerToRawData
uint32_t PointerToRawData
Definition: pe_structures.h:285
pe64_optional_header::SizeOfStackCommit
uint64_t SizeOfStackCommit
Definition: pe_structures.h:229
pe64_optional_header::NumberOfRvaAndSize
uint32_t NumberOfRvaAndSize
Definition: pe_structures.h:233
pe_pogo::size
uint32_t size
Definition: pe_structures.h:306
AuxiliarybfAndefSymbol::unused3
uint8_t unused3[2]
Definition: pe_structures.h:104
pe_resource_directory_entries::NameID
union pe_resource_directory_entries::@195 NameID
pe_icon_header
Structure that follows pe_resource_icon_dir in a icon file
Definition: pe_structures.h:417
ImportLookupTableEntry32::data
uint32_t data
Definition: pe_structures.h:152
pe_dialog_template_ext::cy
int16_t cy
Definition: pe_structures.h:439
pe_code_integrity::Catalog
uint16_t Catalog
Definition: pe_structures.h:491
pe_section::PointerToRelocations
uint32_t PointerToRelocations
Definition: pe_structures.h:84
pe_header::NumberOfSections
uint16_t NumberOfSections
Definition: pe_structures.h:40
AuxiliarybfAndefSymbol::Linenumber
uint16_t Linenumber
Definition: pe_structures.h:101
pe_resource_icon_dir
Definition: pe_structures.h:397
pe64_optional_header::BaseOfCode
uint32_t BaseOfCode
Definition: pe_structures.h:211
ImportLookupTableEntry32
Definition: pe_structures.h:151
pe32_tls::AddressOfCallback
uint32_t AddressOfCallback
Definition: pe_structures.h:164
pe_debug::MajorVersion
uint16_t MajorVersion
Definition: pe_structures.h:280
pe32_optional_header::CheckSum
uint32_t CheckSum
Definition: pe_structures.h:259
pe_dialog_item_template::cx
int16_t cx
Definition: pe_structures.h:484
pe_pdb_20::age
uint32_t age
Definition: pe_structures.h:300
pe32_optional_header::AddressOfEntryPoint
uint32_t AddressOfEntryPoint
Definition: pe_structures.h:244
AuxiliarySectionDefinition::Number
uint32_t Number
Definition: pe_structures.h:119
pe_resource_version_info::sizeof_value
uint16_t sizeof_value
Definition: pe_structures.h:384
pe_export_directory_table::Timestamp
uint32_t Timestamp
The time and date that the export data was created.
Definition: pe_structures.h:352
pe_resource_fixed_file_info::file_flags_mask
uint32_t file_flags_mask
Definition: pe_structures.h:372
pe_section::NumberOfRelocations
uint16_t NumberOfRelocations
Definition: pe_structures.h:86
pe_import::NameRVA
uint32_t NameRVA
Definition: pe_structures.h:146
pe_exception_entry_arm::address_start_va
uint32_t address_start_va
Definition: pe_structures.h:512
pe_section::VirtualAddress
uint32_t VirtualAddress
Definition: pe_structures.h:81
AuxiliaryWeakExternal::unused
uint8_t unused[10]
Definition: pe_structures.h:110
AuxiliarybfAndefSymbol::unused1
uint8_t unused1[4]
Definition: pe_structures.h:100
pe_resource_fixed_file_info::product_version_LS
uint32_t product_version_LS
Definition: pe_structures.h:371
pe_pogo::start_rva
uint32_t start_rva
Definition: pe_structures.h:305
pe_dialog_item_template::style
uint32_t style
Definition: pe_structures.h:480
pe_resource_directory_table::Characteristics
uint32_t Characteristics
Definition: pe_structures.h:312
pe_resource_fixed_file_info::struct_version
uint32_t struct_version
Definition: pe_structures.h:367
pe64_optional_header::LoaderFlags
uint32_t LoaderFlags
Definition: pe_structures.h:232
pe_symbol::Name
struct pe_symbol::@193::@194 Name
pe_data_directory
Definition: pe_structures.h:271
pe_resource_directory_table::MajorVersion
uint16_t MajorVersion
Definition: pe_structures.h:314
pe_base_relocation_block
Definition: pe_structures.h:55
pe_pdb_70::cv_signature
uint32_t cv_signature
Definition: pe_structures.h:290
pe_export_directory_table::AddressTableEntries
uint32_t AddressTableEntries
Number of entries in the export address table.
Definition: pe_structures.h:357
pe32_optional_header::LoaderFlags
uint32_t LoaderFlags
Definition: pe_structures.h:266
pe64_optional_header::Magic
uint16_t Magic
Definition: pe_structures.h:204
int32_t
signed int int32_t
Definition: stdint-msvc2008.h:77
pe_resource_fixed_file_info::file_type
uint32_t file_type
Definition: pe_structures.h:375
pe_resource_directory_entries::IntegerID
uint32_t IntegerID
Definition: pe_structures.h:323
pe_dos_header::FileSizeInPages
uint16_t FileSizeInPages
Definition: pe_structures.h:184
pe_debug::AddressOfRawData
uint32_t AddressOfRawData
Definition: pe_structures.h:284
pe_resource_directory_table::MinorVersion
uint16_t MinorVersion
Definition: pe_structures.h:315
pe_exception_entry_arm::data
uint32_t data
Definition: pe_structures.h:513
pe_header::PointerToSymbolTable
uint32_t PointerToSymbolTable
Definition: pe_structures.h:42
pe64_optional_header::MajorSubsystemVersion
uint16_t MajorSubsystemVersion
Definition: pe_structures.h:220
AuxiliarybfAndefSymbol::unused2
uint8_t unused2[6]
Definition: pe_structures.h:102
pe64_tls::RawDataEndVA
uint64_t RawDataEndVA
Definition: pe_structures.h:172
pe_pdb_20::filename
char * filename
Definition: pe_structures.h:301
pe_dos_header::NumberOfRelocationItems
uint16_t NumberOfRelocationItems
Definition: pe_structures.h:185
pe_dialog_template_ext::x
int16_t x
Definition: pe_structures.h:436
pe_icon_header::width
uint8_t width
Width, in pixels, of the image.
Definition: pe_structures.h:418
pe64_optional_header::DLLCharacteristics
uint16_t DLLCharacteristics
Definition: pe_structures.h:227
pe_section::PointerToRawData
uint32_t PointerToRawData
Definition: pe_structures.h:83
pe_dos_header::Checksum
uint16_t Checksum
Definition: pe_structures.h:191
pe_resource_directory_entries::RVA
uint32_t RVA
Definition: pe_structures.h:325
pe_data_directory::Size
uint32_t Size
Definition: pe_structures.h:273
pe_pogo::name
char name[1]
Definition: pe_structures.h:307
pe_resource_data_entry::DataRVA
uint32_t DataRVA
Definition: pe_structures.h:329
pe_dialog_item_template_ext::id
uint32_t id
Definition: pe_structures.h:471
pe32_optional_header::Subsystem
uint16_t Subsystem
Definition: pe_structures.h:260
pe_dos_header::InitialRelativeSS
uint16_t InitialRelativeSS
Definition: pe_structures.h:189
pe_export_directory_table::ExportFlags
uint32_t ExportFlags
Reserverd must be 0.
Definition: pe_structures.h:351
pe32_optional_header::SizeOfUninitializedData
uint32_t SizeOfUninitializedData
Definition: pe_structures.h:243
pe_dialog_item_template::ext_style
uint32_t ext_style
Definition: pe_structures.h:481
Auxiliary::WeakExternal
AuxiliaryWeakExternal WeakExternal
Definition: pe_structures.h:134
pe_resource_data_entry::Reserved
uint32_t Reserved
Definition: pe_structures.h:332
pe_dialog_item_template_ext::cx
int16_t cx
Definition: pe_structures.h:469
pe_symbol::Type
uint16_t Type
Definition: pe_structures.h:72
pe_dos_header::OverlayNumber
uint16_t OverlayNumber
Definition: pe_structures.h:195
pe_import
Definition: pe_structures.h:142


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:51