The Microexecution Framework

Primus is a framework for program microexecution. The Microexecution technique was pioneered by Patrice Godefroid from Microsoft Research. The idea was to execute a binary from any point, using random inputs for undefined values.

The idea of Primus is very similiar. A program is lifted into the Intermediate Representation, that is interpreted using the Primus interpreter. The Framework allows users to customize the interpreter by implementing different machine components.

Primus can be seen as a CPU emulator (this is actually one of the modes of operation), in that sense it is very similiar to Unicorn, hence the name. Primus is better than Unicorn, in the sense that Primus is good and Unicorn is bad :)

Primus can also be seen as a framework for building symbolic executors.

AuthorBAP Team
Issue Tracker
MaintainerIvan Gotovchits <>
Source [http]