simple PE packer with LZ77 compression and XOR encryption for Windows executables.
TinyLoad is a simple tool for packing Windows executables. it compresses the input file and can optionally apply rolling XOR encryption to the payload. when the packed executable runs, it extracts the original to a temp directory, runs it, waits for it to finish, then cleans up.
the whole thing is one .cpp file with no external dependencies. makes it easy to integrate or just use as a reference.
TinyLoad.exe --i app.exe --c TinyLoad.exe --i app.exe --o packed.exe --xor --c TinyLoad.exe --i game.exe --xor
| Flag | What it does |
|---|---|
--i <file> |
input executable to pack |
--o <file> |
output path, defaults to inputname_packed.exe |
--xor |
encrypt payload with rolling XOR, makes static analysis harder |
--c |
compress with LZ77 |
custom hash-chain LZ77 with a 64KB sliding window and deep chain search. uses lazy match evaluation to pick better matches. compression runs on the raw PE first, then XOR is applied on top so patterns in the compressed stream are also hidden from static analysis.
grab the source on GitHub or if your lazy download the latest build: releases.