simple PE packer for Windows. compresses and optionally XOR-encrypts executables into a self-extracting stub.
TinyLoad appends your compressed payload to a copy of itself. when the packed exe runs it extracts the original to a temp folder, runs it, waits for it to finish, then deletes it.
everything is in one .cpp file, no dependencies.
grab a precompiled binary from releases or build it yourself.
you need MinGW (g++) installed. just run:
g++ -o TinyLoad.exe TinyLoad.cpp -static -O2 -s
or use the included build.bat.
TinyLoad.exe --i <input> [--o <output>] [--xor] [--c]
| flag | description |
|---|---|
--i <file> |
input exe to pack |
--o <file> |
output path (default: input_packed.exe) |
--xor |
rolling XOR encryption on the payload |
--c |
LZ77 compression |
TinyLoad.exe --i myapp.exe --c
TinyLoad.exe --i myapp.exe --o packed.exe --xor --c
TinyLoad.exe --i myapp.exe --xor
you need at least one of --xor or --c.
custom LZ77 with hash-chain matching, 64KB sliding window, and lazy evaluation. typically gets decent ratios on PE files since they have a lot of repeated structure. compression runs on the raw input first, then XOR is applied on top so patterns in the compressed stream are also hidden.
MIT