Skip to content

iamsopotatoe-coder/TinyLoad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyLoad

simple PE packer for Windows. compresses and optionally XOR-encrypts executables into a self-extracting stub.

how it works

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.

download

grab a precompiled binary from releases or build it yourself.

building from source

you need MinGW (g++) installed. just run:

g++ -o TinyLoad.exe TinyLoad.cpp -static -O2 -s

or use the included build.bat.

usage

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

examples

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.

compression

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.

license

MIT