Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 94

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 97

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 103

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Defines.php on line 187

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 115

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 134

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/LocalSettings.php on line 137

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/LocalSettings.php on line 139

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/LocalSettings.php on line 144

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/LocalSettings.php on line 145

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/LocalSettings.php on line 153

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 150

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 157

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 381

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 382

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/languages/Language.php on line 20

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Skin.php on line 153

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/skins/Vector.deps.php on line 11

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Skin.php on line 155

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/languages/Language.php on line 668

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:94) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:94) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/resourceloader/ResourceLoader.php on line 201

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/json/FormatJson.php on line 12

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007
Executable compression - Just Solve the File Format Problem

Executable compression

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007
(List of formats)
(List of formats)
 
(34 intermediate revisions by 3 users not shown)
Line 7: Line 7:
  
 
It is usually possible to identify a particular kind of compressed executable as such, and decompress it to its original form. Another possibility is to let the program decompress itself, then try to capture it in memory. However, some developers have used various tricks to try to make these things difficult.
 
It is usually possible to identify a particular kind of compressed executable as such, and decompress it to its original form. Another possibility is to let the program decompress itself, then try to capture it in memory. However, some developers have used various tricks to try to make these things difficult.
 +
 +
== Security information ==
 +
Executable compression frequently involves techniques, such as self-modifying code, that are also used by '''viruses''' and other malware. Compounding the problem, a compressed executable can't be properly scanned by anti-malware software unless it knows how to decompress it.
 +
 +
Don't be surprised if your anti-malware software thinks some compressed executable files, and related tools, look suspicious. Research into this topic should be considered '''NSFW'''.
  
 
== List of formats ==
 
== List of formats ==
  
* [[AINEXE]]
+
* [[624]]
 +
* AINEXE - See [[AIN#AINEXE]]
 
* [[aPACK]]
 
* [[aPACK]]
* [[AVPACK]] (Andrei Volkov)
+
* [[ASPack]]
* [[AXE (executable compression)|AXE]] (System Enhancement Associates)
+
* [[AVPACK]]
 +
* [[AXE (executable compression)|AXE]]
 +
* [[CauseWay Compressor]]
 +
* [[CC (UniHackers)]]
 
* [[COMPACK]]
 
* [[COMPACK]]
 +
* [[Compact (Klaus Peichl)]]
 +
* [[ComprEXE]]
 +
* [[Cruncher]]
 
* [[DIET (compression)|DIET]]
 
* [[DIET (compression)|DIET]]
* [[ICE (executable compression)|ICE]] (Keith P. Graham)
+
* [[DJP]]
 +
* [[EPACK (executable compression)|EPACK]]
 +
* [[ExeLITE]] (a.k.a. ELITE)
 
* [[EXEPACK]]
 
* [[EXEPACK]]
 +
* [[EXEPACK2]]
 +
* [[ICE (executable compression)|ICE]]
 +
* [[JAM (executable compression)|JAM]]
 +
* [[The JAM Packer|JAM Packer, The]]
 +
* [[LEXEM]]
 +
* [[LGLZ]]
 
* [[LZEXE]]
 
* [[LZEXE]]
* [[PGMPak]] (Todor Todorov)
+
* [[MEGALITE]]
 +
* [[PACK (NoddegamrA)]]
 +
* [[PACK (TurboPower)]]
 +
* [[PACKWIN]]
 +
* [[PAKEXE]]
 +
* [[PECompact]]
 +
* [[Petite]]
 +
* [[PGMPAK]]
 
* [[PKLITE]]
 
* [[PKLITE]]
 +
* [[PKLITE32]]
 +
* [[Pksmart]]
 +
* [[PKTINY]]
 +
* [[PMexe]]
 +
* [[PopCom!]]
 
* [[Pro-Pack|PRO-PACK]]
 
* [[Pro-Pack|PRO-PACK]]
 +
* [[Realia Spacemaker]]
 +
* [[RJCRUSH]]
 +
* [[Rosenthal WinLite]]
 
* [[SCRNCH]]
 
* [[SCRNCH]]
 
* [[SHRINK (executable compression)|SHRINK]]
 
* [[SHRINK (executable compression)|SHRINK]]
 +
* [[Shrinker]]
 
* [[TINYPROG]]
 
* [[TINYPROG]]
* [[UCEXE]] (Ad Infinitum Programs)
+
* [[T-PACK]]
 +
* UCEXE - See [[UltraCompressor II#UCEXE]]
 
* [[UPX]]
 
* [[UPX]]
 
* [[WWPACK]]
 
* [[WWPACK]]
* [[XPACK]] (JauMing Tseng)
+
* [[WWPack32]]
 +
* [[XPACK]]
 
* [[X-pack for Executable‎]]
 
* [[X-pack for Executable‎]]
  
 
== Software ==
 
== Software ==
 
* [https://www.sac.sk/ SAC FTP collection] → [https://www.sac.sk/files.php?d=7 PACK] (also at [ftp://ftp.elf.stuba.sk/pub/pc/pack/], [http://info.elf.stuba.sk/packages/pub/pc/pack/], [http://ebook.pldworld.com/%5Bmirroring%5D/ftp.elf.stuba.sk/pub/pc/pack/])
 
* [https://www.sac.sk/ SAC FTP collection] → [https://www.sac.sk/files.php?d=7 PACK] (also at [ftp://ftp.elf.stuba.sk/pub/pc/pack/], [http://info.elf.stuba.sk/packages/pub/pc/pack/], [http://ebook.pldworld.com/%5Bmirroring%5D/ftp.elf.stuba.sk/pub/pc/pack/])
* [ftp://ftp.oldskool.org/pub/ ftp.oldskool.org] [ftp://ftp.oldskool.org/pub/ANORMAL%20executable%20tools/DOSEXE%20Executable%20Tools%20Pack/packers/ packers], [ftp://ftp.oldskool.org/pub/ANORMAL%20executable%20tools/DOSEXE%20Executable%20Tools%20Pack/unpackers/ unpackers]
+
* {{OldskoolDOSEXE}} → Executable Tools Pack → packers/, unpackers/
 
* [{{CdTextfilesURL|pdos9606/ARCHIVER/EXECOMP/}}] - A collection of some compression and decompression utilities for DOS
 
* [{{CdTextfilesURL|pdos9606/ARCHIVER/EXECOMP/}}] - A collection of some compression and decompression utilities for DOS
 +
 +
=== Decompression software ===
 +
Some multi-format executable decompression utilities are listed here. They generally only run on the same platform as the files they decompress.
 +
 +
* UNP - [{{SACFTPURL|pack|unp411.zip}} v4.11] · [{{SACFTPURL|pack|unp412b.zip}} 4.12β] · [https://bencastricum.nl/unp/ website] - For DOS, source code available
 +
* [{{SACFTPURL|pack|tron130.zip}} Tron] - For DOS
 +
* [{{SACFTPURL|pack|ucfcup34.zip}} CUP386] - For DOS
 +
* [{{SACFTPURL|pack|i034.zip}} iCEuNP] by JauMing Tseng & Christoph Gabler - For DOS, source code included
 +
* [{{SACFTPURL|pack|unexe.zip}} UNEXE] by Frolov Andrey Leonidovich - For DOS
 +
* [{{SACFTPURL|pack|teu182.lzh}} TEU]
 +
* {{CdTextfiles|simtel/simtel0101/simtel/execomp/gtr184.zip|GTR}}
  
 
== See also ==
 
== See also ==
 
* [[Archiving#Self-extracting archives]]
 
* [[Archiving#Self-extracting archives]]
 +
* [[Executable envelopes]]
  
 
== Links ==
 
== Links ==
Line 43: Line 93:
  
 
[[Category:Executables]]
 
[[Category:Executables]]
 +
[[Category:Executable envelopes]]

Latest revision as of 16:37, 20 September 2024

File Format
Name Executable compression
Ontology

Executable compression takes an executable file, and makes it smaller, without changing its functionality. One way to do that is to compress the file and bundle it with a small decompression routine, which decompresses the file, in memory, every time it is executed.

It is usually possible to identify a particular kind of compressed executable as such, and decompress it to its original form. Another possibility is to let the program decompress itself, then try to capture it in memory. However, some developers have used various tricks to try to make these things difficult.

Contents

[edit] Security information

Executable compression frequently involves techniques, such as self-modifying code, that are also used by viruses and other malware. Compounding the problem, a compressed executable can't be properly scanned by anti-malware software unless it knows how to decompress it.

Don't be surprised if your anti-malware software thinks some compressed executable files, and related tools, look suspicious. Research into this topic should be considered NSFW.

[edit] List of formats

[edit] Software

[edit] Decompression software

Some multi-format executable decompression utilities are listed here. They generally only run on the same platform as the files they decompress.

  • UNP - v4.11 · 4.12β · website - For DOS, source code available
  • Tron - For DOS
  • CUP386 - For DOS
  • iCEuNP by JauMing Tseng & Christoph Gabler - For DOS, source code included
  • UNEXE by Frolov Andrey Leonidovich - For DOS
  • TEU
  • GTR

[edit] See also

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:94) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:94) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:94) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007