README.md

April 6, 2026 ยท View on GitHub

Patcherex2 Latest Release PyPI Statistics CI License

Patcherex2 is a rewritten adaptation of the original Patcherex project, aimed at building upon its core ideas and extending its capabilities.

Installation

Patcherex2 is available on PyPI and can be installed using pip. Alternatively, you can use the provided Docker image.

pip

pip install patcherex2
Install from latest commit
pip install git+https://github.com/purseclab/Patcherex2.git

Docker

docker run --rm -it -v ${PWD}:/workdir -w /workdir ghcr.io/purseclab/patcherex2
Build from latest commit
docker build -t patcherex2 --platform linux/amd64 https://github.com/purseclab/Patcherex2.git
docker run --rm -it -v ${PWD}:/workdir -w /workdir patcherex2

Usage

You can find usage examples here.

Documentation

General documentation and API reference for Patcherex2 can be found at purseclab.github.io/Patcherex2.

Supported Targets

Linux x86Linux amd64Linux armLinux aarch64Linux PowerPC (32bit)Linux PowerPC (64bit)Linux PowerPCle (64bit)Linux MIPS (32bit)Linux MIPS (64bit)Linux MIPSEL
โ€‹(32bit)
Linux MIPSEL
(64bit)
Linux s390xSPARCv8 (LEON3)PowerPC (VLE) (IHEX)
InsertDataPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
RemoveDataPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
ModifyDataPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
InsertInstructionPatch (ASM)๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
InsertInstructionPatch (C)๐ŸŸฅ๐ŸŸฉ๐ŸŸฅ๐ŸŸฉ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ๐ŸŸฅ
RemoveInstructionPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
ModifyInstructionPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉโฌœโฌœ
InsertFunctionPatch๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸจโฌœโฌœ
ModifyFunctionPatch๐ŸŸจ๐ŸŸฉ๐ŸŸฉ๐ŸŸฉ๐ŸŸจ๐ŸŸจ๐ŸŸจ๐ŸŸจ๐ŸŸจ๐ŸŸจ๐ŸŸจ๐ŸŸจโฌœโฌœ

๐ŸŸฉ Fully Functional, ๐ŸŸจ Limited Functionality, ๐ŸŸฅ Not Working, โฌœ Not Tested, ๐ŸŸช Work in Progress

Acknowledgements

This project was initially developed as part of the DARPA AMP program, under contract N6600120C4031. This project is also supported by NSF, under Award # 2442339.