PE-Packer (Educational)¶
PE‑Packer is an educational laboratory for learning the Windows Portable Executable (PE) format, safe unpacking workflows, and defensive ML evaluation. It combines a Rust backend with Python bindings and enforces strict safety gates.
- Educational PyPI package is a non‑functional stub (prints guidance and policies).
- Source install enables educational workflows for research and instruction.
See policies: SECURITY.md · LICENSE-APPENDIX.md
Quick start (PyPI Stub)¶
Install and run the educational stub:
pip install rust-python-pe-packer
pe-packer
This prints guidance and links to responsible‑use policies.
Safety model (TL;DR)¶
- Default: analysis‑only dry run.
- Actual packing requires BOTH:
PE_PACKER_ALLOW_PACKING=1--force
Without both, commands do not write packed binaries.
Install from source (for education/research)¶
uv sync --group dev --group training
uv run maturin develop --features python
CLI examples¶
# Dry run (no env/--force)
pe-packer pack input.exe out.exe
# Actual packing (requires both)
PE_PACKER_ALLOW_PACKING=1 pe-packer pack input.exe out.exe --force
Next steps¶
- Usage guide:
usage.md - Safety & policy:
safety.md - Architecture overview:
architecture.md