{
  "id": "enwiki-001362766773",
  "slug": "executable-compression",
  "title": "Executable compression",
  "qid": "",
  "lead": "Executable compression is any means of compressing an executable file and combining the compressed data with decompression code into a single executable. When this compressed executable is executed, the decompression code recreates the original code from the compressed code before executing it. In most cases this happens transparently so the compressed executable can be used in exactly the same way as the original. Executable compressors are often referred to as executable packers, runtime packers, software packers, software protectors, or even \"polymorphic packers\" and \"obfuscating tools\". A compressed executable can be considered a self-extracting archive, where a compressed executable is packaged along with the relevant decompression code in an executable file. Some compressed executables can be decompressed to reconstruct the original program file without being directly executed. Two programs that can be used to do this are CUP386 and UNP. Most compressed executables decompress the original code in memory and most require slightly more memory to run (because they need to store the decompressor code, the compressed data and the decompressed code). Moreover, some compressed executables have additional requirements, such as those that write the decompressed executable to the file system before executing it.…",
  "body": "Executable compression is any means of compressing an executable file and combining the compressed data with decompression code into a single executable. When this compressed executable is executed, the decompression code recreates the original code from the compressed code before executing it. In most cases this happens transparently so the compressed executable can be used in exactly the same way as the original. Executable compressors are often referred to as executable packers, runtime packers, software packers, software protectors, or even \"polymorphic packers\" and \"obfuscating tools\". A compressed executable can be considered a self-extracting archive, where a compressed executable is packaged along with the relevant decompression code in an executable file. Some compressed executables can be decompressed to reconstruct the original program file without being directly executed. Two programs that can be used to do this are CUP386 and UNP. Most compressed executables decompress the original code in memory and most require slightly more memory to run (because they need to store the decompressor code, the compressed data and the decompressed code). Moreover, some compressed executables have additional requirements, such as those that write the decompressed executable to the file system before executing it. Executable compression is not limited to binary executables, but can also be applied to scripts, such as JavaScript. Because most scripting languages are designed to work on human-readable code, which has a high redundancy, compression can be very effective and as simple as replacing long names used to identify variables and functions with shorter versions and/or removing white-space. === CP/M and MSX-DOS executable === Known executable compressors for CP/M-80 / MSX-DOS .COM files: PMexe (since 1990, written by Yoshihiko Mino , PMARC.COM+PMEXE.CPM, signature \"-pms-\" ) PopCom! (since 1992, written by Yoshihiko Mino, POPCOM.COM, signature \"-pc1-\") === MS-DOS executable === Known executable compressors for MS-DOS-compatible executable files (.COM or .EXE): Realia Spacemaker (since 1982, written by Robert B. K. Dewar, SM.COM, signature \"MEMORY$\" ) Microsoft EXEPACK (since 1985, written by Reuben Borman, EXEPACK.EXE, LINK.EXE /E[XEPACK], signature \"RB\") LZEXE (since 1989, written by Fabrice Bellard, LZEXE.EXE) PKWare PKLite (since 1990, written by Phil Katz, PKLITE.EXE) DIET (since 1991, written by Teddy Matsumoto, DIET.EXE) TINYPROG (TINYPROG.EXE) RJS Software RJCRUSH (since 1994, written by Roland Skinner, RJCRUSH.EXE) XPA (since 1995, written by JauMing Tseng, XPA.EXE) Ibsen Software aPACK (since 1997, written by Jørgen Ibsen, APACK.EXE) UPX (since 1998, written by Markus F. X. J. Oberhumer and László Molnár) 32LiTE (since 1998, written by Oleg Prokhorov, 32LITE.EXE) Knowledge Dynamics LZW Compressor WWpack (since 1994, written by Piotr Warezak and Rafal Wierzbicki, WWPACK.EXE) 624 (only for .COM files smaller than 25&nbsp;KB, uses LZW) AINEXE AvPack ComPAck HASP Envelope LGLZ PMWLITE ProPack UCEXE WDOSX XE XPack === Amiga=== Known executable compressors for executables on the Amiga series: powerpacker Titanics cruncher imploder TNM cruncher Shrinkler PackFire",
  "categories": [
    "10639524",
    "125876068",
    "22930649",
    "22938078",
    "23118434",
    "23133619",
    "23603337",
    "24043274",
    "24623845",
    "24745122",
    "35365937",
    "47074602",
    "59500466"
  ],
  "license": "CC BY-SA 4.0",
  "source_uri": "https://en.wikipedia.org/w/index.php?oldid=1362766773",
  "content_hash": "",
  "created_at": null,
  "updated_at": 1783296429.0,
  "claims": [],
  "contradictions": [],
  "confidence": 0.6,
  "csl": {
    "id": "enwiki-001362766773",
    "type": "webpage",
    "title": "Executable compression",
    "author": [
      {
        "family": "Anticloud FZ LLE",
        "literal": "Anticloud FZ LLE"
      }
    ],
    "container-title": "encyclopegia.org",
    "publisher": "Anticloud FZ LLE",
    "publisher-place": "Dubai, United Arab Emirates",
    "URL": "https://encyclopegia.org/a/executable-compression",
    "issued": {
      "date-parts": [
        [
          2026,
          11,
          11
        ]
      ]
    },
    "accessed": {
      "date-parts": [
        [
          2026,
          11,
          11
        ]
      ]
    },
    "license": "CC BY-SA 4.0",
    "DOI": "eo1:enwiki-001362766773",
    "isBasedOn": "https://en.wikipedia.org/w/index.php?oldid=1362766773",
    "note": "Immutable snapshot enwiki-001362766773"
  }
}