Upx_Doxygen
https://github.com/upx/upx
|
Public Member Functions | |
PackDylibPPC32 (InputFile *f) | |
virtual int | getFormat () const |
virtual const char * | getName () const |
virtual const char * | getFullName (const options_t *) const |
![]() | |
PackMachPPC32 (InputFile *f) | |
![]() | |
PackMachBase (InputFile *, unsigned cpuid, unsigned filetype, unsigned t_flavor, unsigned ts_word_cnt, unsigned tc_size) | |
virtual int | getVersion () const |
virtual const int * | getCompressionMethods (int method, int level) const |
virtual void | pack1 (OutputFile *, Filter &) |
virtual int | pack2 (OutputFile *, Filter &) |
virtual void | pack4dylib (OutputFile *, Filter &, Addr init_address) |
virtual void | unpack (OutputFile *fo) |
virtual bool | canPack () |
virtual int | canUnpack () |
virtual unsigned | find_SEGMENT_gap (unsigned const k, unsigned pos_eof) |
![]() | |
virtual int | getStrategy (Filter &) |
virtual void | pack (OutputFile *fo) |
![]() | |
virtual void | assertPacker () const |
void | initPackHeader () |
void | updatePackHeader () |
void | doPack (OutputFile *fo) |
void | doUnpack (OutputFile *fo) |
void | doTest () |
void | doList () |
void | doFileInfo () |
virtual bool | canUnpackVersion (int version) const |
virtual bool | canUnpackFormat (int format) const |
virtual int | canTest () |
virtual int | canList () |
Protected Member Functions | |
virtual void | pack3 (OutputFile *, Filter &) |
virtual void | pack4 (OutputFile *, Filter &) |
![]() | |
virtual const int * | getFilters () const |
virtual void | pack1_setup_threado (OutputFile *const fo) |
virtual Linker * | newLinker () const |
virtual void | addStubEntrySections (Filter const *) |
__packed_struct (Mach_thread_command) TE32 cmd | |
__packed_struct_end () Mach_thread_command threado | |
int | threado_size () const |
void | threado_setPC (upx_uint64_t pc) |
void | threado_rewrite (OutputFile *fo) |
void | threado_write (OutputFile *fo) |
upx_uint64_t | threadc_getPC (void const *ptr) |
![]() | |
virtual void | patchLoader () |
virtual void | patchLoaderChecksum () |
virtual void | updateLoader (OutputFile *) |
virtual void | buildLoader (const Filter *ft) |
virtual void | buildMachLoader (upx_byte const *const proto, unsigned const szproto, upx_byte const *const fold, unsigned const szfold, Filter const *ft) |
virtual void | defineSymbols (Filter const *) |
__packed_struct (b_info) TE32 sz_unc | |
__packed_struct_end () __packed_struct(l_info) TE32 l_checksum | |
__packed_struct_end () __packed_struct(p_info) TE32 p_progid | |
__packed_struct_end () struct l_info linfo | |
![]() | |
PackUnix (InputFile *f) | |
virtual void | writePackHeader (OutputFile *fo) |
virtual bool | checkCompressionRatio (unsigned, unsigned) const |
virtual void | packExtent (const Extent &x, unsigned &total_in, unsigned &total_out, Filter *, OutputFile *, unsigned hdr_len=0) |
virtual void | unpackExtent (unsigned wanted, OutputFile *fo, unsigned &total_in, unsigned &total_out, unsigned &c_adler, unsigned &u_adler, bool first_PF_X, unsigned szb_info) |
__packed_struct (b_info) unsigned sz_unc | |
__packed_struct_end () __packed_struct(l_info) LE32 l_checksum | |
__packed_struct_end () __packed_struct(p_info) unsigned p_progid | |
__packed_struct_end () struct l_info linfo | |
![]() | |
Packer (InputFile *f) | |
virtual bool | testUnpackVersion (int version) const |
virtual bool | testUnpackFormat (int format) const |
virtual void | test () |
virtual void | list () |
virtual void | fileInfo () |
virtual bool | compress (upx_bytep i_ptr, unsigned i_len, upx_bytep o_ptr, const upx_compress_config_t *cconf=NULL) |
virtual void | decompress (const upx_bytep in, upx_bytep out, bool verify_checksum=true, Filter *ft=NULL) |
virtual bool | checkDefaultCompressionRatio (unsigned u_len, unsigned c_len) const |
virtual bool | checkFinalCompressionRatio (const OutputFile *fo) const |
void | compressWithFilters (Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy=0, int inhibit_compression_check=0) |
void | compressWithFilters (Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy, unsigned filter_buf_off, unsigned compress_ibuf_off, unsigned compress_obuf_off, const upx_bytep hdr_ptr, unsigned hdr_len, int inhibit_compression_check=0) |
void | compressWithFilters (upx_bytep i_ptr, unsigned i_len, upx_bytep o_ptr, upx_bytep f_ptr, unsigned f_len, const upx_bytep hdr_ptr, unsigned hdr_len, Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy, int inhibit_compression_check=0) |
virtual bool | testOverlappingDecompression (const upx_bytep buf, const upx_bytep tbuf, unsigned overlap_overhead) const |
virtual unsigned | findOverlapOverhead (const upx_bytep buf, const upx_bytep tbuf, unsigned range=0, unsigned upper_limit=~0u) const |
void | verifyOverlappingDecompression (Filter *ft=NULL) |
void | verifyOverlappingDecompression (upx_bytep o_ptr, unsigned o_size, Filter *ft=NULL) |
virtual int | patchPackHeader (void *b, int blen) |
virtual bool | getPackHeader (void *b, int blen, bool allow_incompressible=false) |
virtual bool | readPackHeader (int len, bool allow_incompressible=false) |
virtual void | checkAlreadyPacked (const void *b, int blen) |
virtual void | relocateLoader () |
virtual upx_byte * | getLoader () const |
virtual int | getLoaderSize () const |
virtual void | initLoader (const void *pdata, int plen, int small=-1) |
void | addLoader (C) |
void | addLoader (C, C) |
void | addLoader (C, C, C) |
void | addLoader (C, C, C, C) |
void | addLoader (C, C, C, C, C) |
void | addLoader (C, C, C, C, C, C) |
void | addLoader (C, C, C, C, C, C, C) |
void | addLoader (C, C, C, C, C, C, C, C) |
void | addLoader (C, C, C, C, C, C, C, C, C) |
void | addLoader (C, C, C, C, C, C, C, C, C, C) |
void __acc_cdecl_va | addLoaderVA (const char *s,...) |
virtual bool | hasLoaderSection (const char *name) const |
virtual int | getLoaderSection (const char *name, int *slen=NULL) const |
virtual int | getLoaderSectionStart (const char *name, int *slen=NULL) const |
const int * | getDefaultCompressionMethods_8 (int method, int level, int small=-1) const |
const int * | getDefaultCompressionMethods_le32 (int method, int level, int small=-1) const |
virtual const char * | getDecompressorSections () const |
virtual unsigned | getDecompressorWrkmemSize () const |
virtual void | defineDecompressorSymbols () |
virtual bool | isValidFilter (int filter_id) const |
virtual void | optimizeFilter (Filter *, const upx_byte *, unsigned) const |
virtual void | addFilter32 (int filter_id) |
virtual void | defineFilterSymbols (const Filter *ft) |
virtual void | checkOverlay (unsigned overlay) |
virtual void | copyOverlay (OutputFile *fo, unsigned overlay, MemBuffer *buf, bool do_seek=true) |
virtual unsigned | getRandomId () const |
int | patch_be16 (void *b, int blen, unsigned old, unsigned new_) |
int | patch_be16 (void *b, int blen, const void *old, unsigned new_) |
int | patch_be32 (void *b, int blen, unsigned old, unsigned new_) |
int | patch_be32 (void *b, int blen, const void *old, unsigned new_) |
int | patch_le16 (void *b, int blen, unsigned old, unsigned new_) |
int | patch_le16 (void *b, int blen, const void *old, unsigned new_) |
int | patch_le32 (void *b, int blen, unsigned old, unsigned new_) |
int | patch_le32 (void *b, int blen, const void *old, unsigned new_) |
void | checkPatch (void *b, int blen, int boff, int size) |
unsigned | get_te16 (const void *p) const |
unsigned | get_te32 (const void *p) const |
upx_uint64_t | get_te64 (const void *p) const |
void | set_te16 (void *p, unsigned v) const |
void | set_te32 (void *p, unsigned v) const |
void | set_te64 (void *p, upx_uint64_t v) const |
Additional Inherited Members | |
![]() | |
static bool | isValidCompressionMethod (int method) |
![]() | |
enum | { PPC_THREAD_STATE = 1, PPC_THREAD_STATE64 = 5, x86_THREAD_STATE32 = 1, x86_THREAD_STATE64 = 4, i386_OLD_THREAD_STATE = -1, ARM_THREAD_STATE = 1 } |
![]() | |
typedef MachClass_BE32 | MachClass |
typedef MachClass::BeLePolicy | BeLePolicy |
typedef MachClass::MachITypes | MachITypes |
typedef MachClass::TE16 | TE16 |
typedef MachClass::TE32 | TE32 |
typedef MachClass::TE64 | TE64 |
typedef MachClass::Addr | Addr |
typedef MachClass::Mach_header | Mach_header |
typedef MachClass::Mach_command | Mach_command |
typedef MachClass::Mach_segment_command | Mach_segment_command |
typedef MachClass::Mach_section_command | Mach_section_command |
typedef MachClass::Mach_symtab_command | Mach_symtab_command |
typedef MachClass::Mach_dysymtab_command | Mach_dysymtab_command |
typedef MachClass::Mach_segsplit_info_command | Mach_segsplit_info_command |
typedef MachClass::Mach_routines_command | Mach_routines_command |
typedef MachClass::Mach_twolevel_hints_command | Mach_twolevel_hints_command |
typedef MachClass::Mach_linkedit_data_command | Mach_linkedit_data_command |
typedef MachClass::Mach_uuid_command | Mach_uuid_command |
typedef MachClass::Mach_main_command | Mach_main_command |
typedef MachClass::Mach_data_in_code_command | Mach_data_in_code_command |
typedef MachClass::Mach_function_starts_command | Mach_function_starts_command |
typedef MachClass::Mach_load_dylib_command | Mach_load_dylib_command |
typedef MachClass::Mach_dylib | Mach_dylib |
typedef MachClass::Mach_load_dylinker_command | Mach_load_dylinker_command |
typedef MachClass::Mach_dyld_info_only_command | Mach_dyld_info_only_command |
typedef MachClass::Mach_version_min_command | Mach_version_min_command |
typedef MachClass::Mach_source_version_command | Mach_source_version_command |
![]() | |
enum | { OVERHEAD = 2048 } |
![]() | |
static int __acc_cdecl_qsort | compare_segment_command (void const *aa, void const *bb) |
static void | compileTimeAssertions () |
![]() | |
static void | handleStub (InputFile *fi, OutputFile *fo, unsigned size) |
static upx_byte * | optimizeReloc (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big, int bits) |
static unsigned | unoptimizeReloc (upx_byte **in, upx_byte *image, MemBuffer *out, int bs, int bits) |
static upx_byte * | optimizeReloc32 (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big) |
static unsigned | unoptimizeReloc32 (upx_byte **in, upx_byte *image, MemBuffer *out, int bs) |
static upx_byte * | optimizeReloc64 (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big) |
static unsigned | unoptimizeReloc64 (upx_byte **in, upx_byte *image, MemBuffer *out, int bs) |
![]() | |
TE32 | cmdsize |
TE32 | flavor |
TE32 | count |
Mach_ppc_thread_state | state |
![]() | |
upx_uint64_t | entryVMA |
unsigned | my_cputype |
unsigned | my_cpusubtype |
unsigned | my_filetype |
unsigned | my_thread_flavor |
unsigned | my_thread_state_word_count |
unsigned | my_thread_command_size |
unsigned | n_segment |
unsigned | sz_segment |
unsigned | sz_mach_headers |
unsigned | sz_stub_entry |
unsigned | sz_stub_fold |
unsigned | sz_stub_main |
upx_byte const * | stub_entry |
upx_byte const * | stub_fold |
upx_byte const * | stub_main |
Mach_segment_command * | rawmseg |
Mach_segment_command * | msegcmd |
unsigned | o_routines_cmd |
upx_uint64_t | prev_init_address |
Mach_header | mhdri |
Mach_header | mhdro |
Mach_segment_command | segZERO |
Mach_segment_command | segXHDR |
Mach_section_command | secXHDR |
Mach_segment_command | segTEXT |
Mach_section_command | secTEXT |
Mach_segment_command | segLINK |
Mach_linkedit_data_command | linkitem |
Mach_uuid_command | cmdUUID |
Mach_source_version_command | cmdSRCVER |
Mach_version_min_command | cmdVERMIN |
TE32 | sz_cpr |
unsigned char | b_method |
unsigned char | b_ftid |
unsigned char | b_cto8 |
unsigned char | b_unused |
LE32 | l_magic |
TE16 | l_lsize |
unsigned char | l_version |
unsigned char | l_format |
TE32 | p_filesize |
TE32 | p_blocksize |
![]() | |
int | exetype |
unsigned | blocksize |
unsigned | progid |
unsigned | overlay_offset |
MemBuffer | loader |
int | lsize |
MemBuffer | pt_dynamic |
int | sz_dynamic |
unsigned | b_len |
unsigned | sz_cpr |
unsigned char | b_method |
unsigned char | b_ftid |
unsigned char | b_cto8 |
unsigned char | b_unused |
LE32 | l_magic |
LE16 | l_lsize |
unsigned char | l_version |
unsigned char | l_format |
unsigned | p_filesize |
unsigned | p_blocksize |
![]() | |
const N_BELE_RTP::AbstractPolicy * | bele |
InputFile * | fi |
off_t | file_size |
PackHeader | ph |
int | ph_format |
int | ph_version |
MemBuffer | ibuf |
MemBuffer | obuf |
UiPacker * | uip |
Linker * | linker |