Four algorithms
LZNT1 favors compatibility and speed; XPRESS and XPRESS_HUFF use native Windows decompression; LZMA is the default high-ratio profile.
Executable protection
PEPack is a packer for Windows PE32 and PE64 executables. It analyzes the file, compresses code and safe sections, builds the startup stub, and can add integrity checks and signed-serial licensing.
Executable protection
PEPack interprets the Portable Executable structure before changing it. It selects sections compatible with the chosen profile, compresses the selected data, emits the required sections and decompression code, and rebuilds a runnable executable. Integrity and licensing options are explicit and verifiable: the IAT manifest does not hide imports, and packing does not replace code signing or application testing.
LZNT1 favors compatibility and speed; XPRESS and XPRESS_HUFF use native Windows decompression; LZMA is the default high-ratio profile.
Can compress code, safe data, and resources while preserving on-disk elements required by the loader, UAC manifest, and Explorer icon.
Can add a runtime guard and a SHA-256 footer containing PE-header and per-section hashes.
Records import-directory, IAT, CRC, and hash data for transparent verification without changing loader import resolution.
Controls debug data, empty TLS, relocations when safe, compressed-section name, and generated-section prefix.
Creates profiles, product identities, key pairs, signed PEP4 serials, and serial lists for packed executables.
Technical deep dive
PEPack does not treat an executable as a generic archive. It reads headers, sections, and directories, determines what can be compressed without interfering with the loader, and builds a new layout with a coherent stub and metadata.
PEPack pipeline
Validates format, architecture, entry point, subsystem, sections, and loader-facing directories.
The profile selects algorithm, code, data, resources, cleanup, section names, integrity, and licensing.
Compresses only payloads allowed by the plan and keeps data required before the entry point separate.
Emits the stub, publication sections, and required tables, then rebuilds the PE image.
Checks layout, requested integrity, and IAT manifest, produces the report, and writes the destination file.
Technical controls
Compatibility depends on the executable, existing protections, and selected profile. PEPack keeps runtime-sensitive decisions visible and provides dedicated testing, analysis, and verification before distribution.
LZMA uses a direct runtime decoder on PE32 and dedicated active publication sections on the PE64 path.
Resource compression retains on-disk material required for manifests, elevation behavior, and Explorer icons.
The extended guard uses SHA-256 for the PE header and sections; the IAT manifest adds transparent import and IAT checks.
PEPack signs serials for packed executables with the profile private key and embeds only the public verification key in the runtime.
| Algorithm | Profile | Runtime requirement |
|---|---|---|
| LZNT1 | Maximum compatibility and fast native decompression; lower compression ratio. | Windows XP–11 |
| XPRESS | Better ratio than LZNT1 with native Windows decompression. | Windows 8 or later |
| XPRESS_HUFF | Best ratio among native algorithms, with slower decompression. | Windows 8 or later |
| LZMA | Default high-ratio mode adapted to PE32 and PE64. | Dedicated PEPack decoder |
Packing changes binary structure: the result must be tested on every supported platform and signed again after transformation. Self-protected, already packed, or non-standard-layout applications may require a more conservative profile.
Real interface
The GUI exposes quick profiles, PE options, the equivalent command, testing, analysis, integrity verification, reports, and complete usage-license configuration.






Executable protection