eXPressor Changelog

What's new in eXPressor 1.8.0.1

Jan 16, 2010
  • added support for Windows7; eXPressor and packed/protected executables runs on W7;
  • the packer (ligh&full stubs) supports WinCE or Windows Mobile PE files (exe+dll - PE files compiled for the ARM cpu architecture);
  • added support for packing (not protecting) PE+ (64bit files); exe, dll, tls support; not yet .net;
  • added more checks for non win32 applications to see if we can pack;
  • KeyStore allows now to generate a new key for a certain Customer (ie: if he changes his MachineID); this key will be imported inside KeyStore and the generation date for the new key will be taken from the first key generation date; it is for the projects which uses limited key support - aka the Customer can update with a key for one year; untill now, if after half an year he request a new key (in the past, the key generation date was the current date) he receives a key which gived him an update prolongation.
  • added support for unicode registration names in KeyStore "Reg Name" column; although eXPressor it's an ansi compiled app, it can handle unicode Reg Names.
  • fixed a problem when protecting PE files with .rsrc section having only MEM_READ flag (not write); just packing such files doesn't cause any problem;
  • small fix in reset trial if some reg-cleaners delete reg-trial data; the reset button won't work in this situation and the app would remain expired; the truble can persist on the user's side; regcleaners can expire trial versions;
  • added warning when Digital Signature is found at the end of the file;
  • unfortunately on w7/vista drag&drop doesn't function if expressor's run as admin; a fix is to disable uac(run->msconfig-disable uac);
  • added restore backup option in File->Menu; (keep-backup checkbox must be checked before saving packed file over original file;
  • if "open last project at start" is checked, a second instance of expressor, won't open again the same project;
  • added warning if the version info stored inside the project is different than the current target version; usefull if you use reset tral on new ver.; it prevents you to build new versions which won't reset the trial;

New in eXPressor 1.7.0.2 (Jan 16, 2010)

  • fixed splash screen not showing on w9x;
  • fixed "Protect Imported Functions" which may fail on win9x; VirtualProtect will crash the OS if we call it on some system's dlls with PAGE_EXECUTE_READ;
  • added suport for windows 7 (beta);
  • sample vb project for using eXPressor's builtin registration scheme;

New in eXPressor 1.7.0.1 (Jun 4, 2009)

  • switched to vc8 from vc6 (2 hard working weeks for fixing few thousand errors&warnings, finding hacks against new ms copiler/linker limitations etc.);
  • first attempts to implement a debug blocker;
  • fixed some memory leaks inside expressor.exe (aka _CRTDBG_MAP_ALLOC);
  • changed the PRNG related to RSA key generation due to a critical error; we advise you to change the project RSA key pairs because the registration keys generated with eXPressor prior to ver 1.7 are vulnerable; this will require to regenerate and send new keys to your clients;
  • fixed a bug which caused an error if canceling the packing process was too quick;
  • enabled "Select plugin..." in "General Options" tab; was disabled by mistake;
  • added Option to fake PE's signature; you can add custom signature;
  • added a tree control in Splash Property Page to make some room for other things; worked for a while at this control's keyboard support because default implementation didn't supported it;
  • added option to choose hardware ID string generation based on cpu,hdd,installed ram;
  • added Configuration type; ie: protect only, one touch trial (OTT registration without api);
  • fixed a bug in expressor.dll; keys generated were invalid if the program had encrypted code fragments;
  • added support for UNICODE registration names via UTF8 to be used with ShareIt etc;

New in eXPressor 1.5.0.1 (Mar 10, 2007)

  • fixed an error when resource were packed (this only on level 2) if "Compress resources" wasn't checked
  • fixed an error with error displaying and different stub selection
  • changed the command line /err mode; default is now on
  • this version can compress .scr .ocx files
  • fixed a bug when compressing files linked to oleaut32.dll (skype v1.4)
  • DSI (Digital Signature Information) is not preserved in any ver of eXPressor
  • added Project Save/Open option
  • password protect messagebox display options on packed file
  • warning if PE file has memory shared sections
  • API redirection for protecting stub
  • fixed an error when canceling pack operation
  • added verbose text to progress window
  • resource compresion level 3 is now visual; you can select from eXPressor what resource to let unpacked; good for a lot of icons in first icon group when it's hard to find default shell one
  • fixed some errors when packing .dll files with protection stub; (stack problems)
  • fixed eXPressor closing when Esc/Enter were pressed on main interface
  • added most recent used (MRU) pe/project files in File menu
  • will spit an error when .net packed file fail to run (full/protection stubs)
  • done crypt with password; it will be impossible to rebuild exe, coz the unpack information is encrypted with password
  • changed "Handle dll imports" to "Use Windows Loader" to align to other packers definition standards; it just means to include at least one import from each module
  • in the import table in the "new" import table; (some exe needs this)
  • added expire date/days/executions in protected mode
  • SDK (Software Developement Kit - API for comunication between stub and packed file)
  • added registration scheme; is done using 768 up to 2048 bit key lenght
  • added encryption for code fragments inside packed executable which decrypts only when registered, with the right key(external or from eXPressor registration scheme); encrypting blocks of code on dll's it's difficult because when we handle relocations we must check to see if some reloc are inside those encrypted fragments and avoid fixing them untill after decryption
  • file extension support for .epf (eXPressor Project Files); click on icon and the project will be automatically opened; renamed "Shell menu" to "Shell stuff" which, when checked, will install support for opening .epf files onclick and option to "Pack with eXPressor" on rightclick menu over .exe .dll files
  • fixed a bug in protection stub when packing dll's which relocates at runtime; this was caused by the fact that tls image dir must have fixing entryes inside .reloc; made a class which handles relocation dir manipulation, adding new elements etc
  • fixed a bug, not handeling right overlay, when last section had the same raw start with the one before, with rawsize 0
  • added support for stolenkeys; you must add to database new stolen keys and then reprotect the exe file and put it for download
  • it is now possible to modify compression thread priority from GUI, even at packing time; this was possible only from the command line in previous version (aka /tp)
  • added execution dir for "Test file" because some exe needs files relative to starting directory specified for example in shortcut properties like "Start In:"
  • emproved TLS support; it seems that when loading dll's via LoadModule windows do not process TLS informations; so you may encount an error if you pack&test such an .dll because it tries to find it's global data which is placed in some memory allocated only by winloader via import loading; so dll's with tls data can't be loaded via LoadModule, only dinamically linked, so if you pack an exe which loads such dll it is advised to use "Use Win Loader" option
  • added "Restore" backup after compressing; if a backup exist after replacing original file with packed one by pushing "Save It", this button will turn to "Replace", which will allow to restore backup if somthing went wrong after filename conversion.
  • ocx files needs seh to be executed in a -rwe segment, (tested on regsvr32 winxp)
  • Windows Vista has a problem with drag&drop operation; it will not work if eXPressor isn't run with admin privilege
  • better handeling of dll proc detach; eXPressor won't crash (exit) now, when testing dll with errors during stub initialization (like dll not found) in dllmain; also additional libraries loaded by packed dll are now unloaded when packed dll quits; on prev versions of eXPressor after testing packed dlls (Test button), the aditional dlls loaded by packed dll were not unloaded, remaining atached to eXPressor's loaded modules.
  • additional tools were made to help project&stubs manipulations
  • added CRC prot
  • added antidump prot
  • added use common section names
  • added obfuscation code
  • warn for Use Win Loader on PE with TLS
  • added restore backup
  • added Antidebug protection: Antidebug SEH Antitrace etc
  • done this Help File (6 days).
  • changed license types, packeges name, prices

New in eXPressor 1.4.5.1 (Feb 26, 2007)

  • Command Line" enhancement;
  • -fixed a little bug when "compression level" was set to 0 if "Compress resource" was unchecked => a non working executable;
  • -fixed a bug, eXPressor not compressing resources -> Type String on level 2;
  • -added option "Add automatically overlays";if not checked will ask; Show More
  • -"Allow MultiPacking" option to allow files to be packed by eXPressor more times;
  • -"Stay on top" option for main eXPressor dialog window;
  • -more gui enhancements;
  • -eXPressor can pack now resource only dlls,those with entry point 0 and no imports;
  • -initial ImageSize is now allocated by winloader;this prevents other malloc calls when stub decompresses packed data;
  • -option to pack all sections at once; this will free few more bytes; when this is set more memory is needed to decompress packed data...about the size of original exe is needed,so you may want not to use this option;
  • -option to set compression thread priority when multipacking files from cml;
  • -option to compress export dir;good if you pack .executable with export dir.; (see firefox.exe)
  • -packer data is dynamically allocated depending on sections number; now can pack exe files with more then 20 sections;
  • -dos header can be now removed;it will free few more bytes;
  • -more TLS support (callback support);need to test more exe files;tls,dirty little trick -> execute code before the entry point gets called ;)
  • -discovered what SizeOfHeaders really is and made a bugfix for nonworking packed exe related to this problem ;) "...ug.exe is not a valid Win32 application."
  • -support for packing "apache.exe",when all imported dll names (for packed file) must be visible to winloader;try to check "Handle dll imports" if your file doesn't run; this will add few more bytes to final exe;
  • -light protection for packed executables (antidebugging);
  • -light .NET support (only .exe not dll) [this ver. can pack files with com header (aka .net C#)];
  • -discontinued lib1 support (useless);
  • -added an option to choose compression level from 1-3:
  • -option to choose Uncompressing Stub; this is a little portion of code at the very beginning of the packed executable, which does the unpacking job;
  • 1- Light stub is designed only for .exe files and has no support for tls directory,
  • relocations, net directory, and no errors will be displayed, this for keeping
  • a minimum file size; most of people pack .exe files (no need 4 reloc,tls code);
  • this will use an ~3kb stub;
  • 2- Supporting exe,dll,net files (including tls,reloc);
  • 3- Same as 2 but it has some anticracking protection;
  • -changed the license types;