Upx_Doxygen
https://github.com/upx/upx
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
LeFile Class Reference
Inheritance diagram for LeFile:
PackWcle PackVxd

Public Member Functions

 LeFile (InputFile *)
 
virtual bool readFileHeader ()
 
virtual void writeFile (OutputFile *, bool)
 

Protected Types

enum  { FIXUP_EXTRA = 3 }
 

Protected Member Functions

 __packed_struct (le_header_t) char _[2]
 
 __packed_struct_end () __packed_struct(le_object_table_entry_t) LE32 virtual_size
 
 __packed_struct_end () __packed_struct(le_pagemap_entry_t) unsigned char h
 
 __packed_struct_end () virtual void readObjectTable()
 
virtual void writeObjectTable ()
 
virtual void readFixupPageTable ()
 
virtual void writeFixupPageTable ()
 
virtual void readPageMap ()
 
virtual void writePageMap ()
 
virtual void encodePageMap ()
 
virtual void decodePageMap ()
 
virtual void readResidentNames ()
 
virtual void writeResidentNames ()
 
virtual void encodeResidentNames ()
 
virtual void decodeResidentNames ()
 
virtual void readNonResidentNames ()
 
virtual void writeNonResidentNames ()
 
virtual void encodeNonResidentNames ()
 
virtual void decodeNonResidentNames ()
 
virtual void readEntryTable ()
 
virtual void writeEntryTable ()
 
virtual void readFixups ()
 
virtual void writeFixups ()
 
virtual void readImage ()
 
virtual void writeImage ()
 
void countFixups (unsigned *) const
 
unsigned getImageSize () const
 

Protected Attributes

char byte_order
 
char word_order
 
LE32 exe_format_level
 
LE16 cpu_type
 
LE16 target_os
 
char _0 [4]
 
LE32 module_type
 
LE32 memory_pages
 
LE32 init_cs_object
 
LE32 init_eip_offset
 
LE32 init_ss_object
 
LE32 init_esp_offset
 
LE32 memory_page_size
 
LE32 bytes_on_last_page
 
LE32 fixup_size
 
char _1 [4]
 
LE32 loader_size
 
char _2 [4]
 
LE32 object_table_offset
 
LE32 object_table_entries
 
LE32 object_pagemap_offset
 
LE32 object_iterate_data_map_offset
 
char _3 [4]
 
LE32 resource_entries
 
LE32 resident_names_offset
 
LE32 entry_table_offset
 
char _4 [4]
 
LE32 module_directives_entries
 
LE32 fixup_page_table_offset
 
LE32 fixup_record_table_offset
 
LE32 imported_modules_name_table_offset
 
LE32 imported_modules_count
 
LE32 imported_procedures_name_table_offset
 
char _5 [4]
 
LE32 data_pages_offset
 
char _6 [4]
 
LE32 non_resident_name_table_offset
 
LE32 non_resident_name_table_length
 
char _7 [4]
 
LE32 automatic_data_object
 
char _8 [44]
 
LE32 base_address
 
LE32 flags
 
LE32 pagemap_index
 
LE32 npages
 
LE32 reserved
 
unsigned char m
 
unsigned char l
 
unsigned char type
 
InputFilefif
 
OutputFilefof
 
unsigned le_offset
 
unsigned exe_offset
 
le_header_t ih
 
le_header_t oh
 
le_object_table_entry_t * iobject_table
 
le_object_table_entry_t * oobject_table
 
unsigned * ifpage_table
 
unsigned * ofpage_table
 
le_pagemap_entry_t * ipm_entries
 
le_pagemap_entry_t * opm_entries
 
upx_byte * ires_names
 
upx_byte * ores_names
 
upx_byte * ifixups
 
upx_byte * ofixups
 
upx_byte * inonres_names
 
upx_byte * ononres_names
 
MemBuffer iimage
 
MemBuffer oimage
 
upx_byte * ientries
 
upx_byte * oentries
 
unsigned soobject_table
 
unsigned sofpage_table
 
unsigned sopm_entries
 
unsigned sores_names
 
unsigned sofixups
 
unsigned sononres_names
 
unsigned soimage
 
unsigned soentries
 

The documentation for this class was generated from the following files: