2008-07-19 0.30: YAD updated to 0.10 2008-05-14 0.30: IJCC worked with NEAR jumps only, fixed. 2008-05-14 0.30: ADVANCED_MARKER option 2008-05-14 0.30: fixing memory leaks in disassemble() and load_elf() 2008-05-13 0.30: YAD updated to 0.07 2008-05-12 0.30: YAD updated to 0.06 2008-05-11 0.30: YAD updated to 0.05 2008-05-07 0.30: use YAD. bug in MUTATEx1. _AND_ MUTATE should be rewritten to use opcode/opcode2 2008-04-08 0.29: ojmp right thingTM 2008-04-07 0.29: ojmp opt 2008-04-07 0.29: add/sub mutation 2008-04-04 0.29: revert the "error checking" changes (fatal in insert_code) 2008-04-04 0.29: wrong error code in add_virus_imports (if (sec[SI_HASH] == NULL) return 0; 2008-04-03 0.29: better error checking, leaking... 2008-04-06 0.29: optimizing jmp optimization 2008-04-03 0.28: ceil the size of encrypted data, jump optimization 2008-04-01 0.27: invert JCC 2008-02-05 0.26: broken order in section' enum 2008-01-22 0.25.9: fix search routine (dot files) 2008-01-22 0.25.9: search .gnu.version* sections by type, not by name 2008-01-22 0.25.9: minor optimizations 2008-01-21 0.25.8: new compilation options 2008-01-21 0.25.8: minor clean ups 2008-01-21 0.25.8: determine the version index using the .gnu.version_r 2008-01-21 0.25.8: replace memset() with bzero() 2008-01-21 0.25.8: (most of) the prelinked files pass '-y' test 2008-01-17 0.25.7: alignment will not appear in the begining of the section 2008-01-17 0.25.7: FL_DATA flag replaced with combination of FL_GOTOFF|FL_ME 2008-01-17 0.25.7: prelink checksum cleanup 2008-01-17 0.25.7: struct t_section has no longer name field 2008-01-14 0.25.6: minor optimizations 2008-01-14 0.25.6: prelink support 2008-01-10 0.25.5: first attempt to handle indexes in local vars 3d60: 83 7d e8 04 cmpl $0x4,0xffffffe8(%ebp) 3d64: 0f 87 8b 03 00 00 ja 40f5 3d6a: 8b 55 e8 mov 0xffffffe8(%ebp),%edx 3d6d: 8b 84 93 30 de ff ff mov 0xffffde30(%ebx,%edx,4),%eax 3d74: 01 d8 add %ebx,%eax 3d76: ff e0 jmp *%eax 2008-01-10 0.25.5: gcc may use pic register as index: 0eb3: e8 00 00 00 00 call eb8 0eb8: 59 pop %ecx 0eb9: 81 c1 2c 29 00 00 add $0x292c,%ecx 0ed8: 8a 84 08 bc 00 00 00 mov 0xbc(%eax,%ecx,1),%al 2008-01-10 0.25.5: fixed bug in search(), never ever will trust stranger's code, even AT 2008-01-09 0.25.4: better error handling, got rid of exit() 2008-01-08 0.25.3: "mov esp" condition 2008-01-08 0.25.2: RC2 correct version for the symbols, actually it's neccessary to parse .gnu_version_r instead of getting the __libc_start_main's version and 2 otherwise; memory leaks got fixed; cleanup 2008-01-07 0.25.1: return after jump table, not continue 2008-01-07 0.25.1: _less_or_equal_ jtsize 2008-01-07 0.25.1: "contexts" 2008-01-07 0.25.1: unwinding look-back buffers 2007-12-13 0.24: mutate() routine 2007-11-02 0.23: RC1, public release 2007-10-30 0.20-0.22 2007-10-29 0.18,0.19: splay trees vs balanced trees 2007-10-28 0.17 2007-10-26 0.14-0.16 2007-10-25 0.13 2007-10-23 0.12 2007-10-22 0.10, 0.11 2007-10-20 0.08, 0.09: fast pointers 2007-10-19 0.07: convert short jumps to near 2007-10-18 0.06: section alignment 2007-10-16 0.05: first working alpha, public release 2007-10-15 0.03, 0.04: alignment, crc32 instead of names 2007-10-13 0.02: symtab fixes 2007-10-12 0.01