Skip to main content

A library and model framework for reverse engineering binary file formats

Project description

Wait, what?!

Mr. Crowbar is a Django-esque model framework that makes it super easy to work with proprietary binary formats while reverse engineering.

File formats are described with Python classes that allow ORM-like free modification of structures and properties, which in turn can be validated and converted back to the binary equivalent at any time.

The eventual goal is to provide a library for storing file format information that retains the readability of a text file, while providing instant read/write support for almost no cost.

Give us an example

The main project page has a pretty good example, omitted here for brevity.

Contributing

If you’ve developed models using Mr. Crowbar and want to share them with people, that’s pretty great! The main source code tree is a Mercurial repository hosted on BitBucket, with a Git mirror available on GitHub. For either site, pull requests are more than welcome, along with feature requests and discussion. The framework is still being cooked, so not all of the interfaces are set in stone yet, but we will try to limit breaking API changes to major point releases.

Licensing

Mr. Crowbar is licensed under the BSD 3-Clause license. Any code that implements or otherwise builds upon reverse engineering research produced by other individuals or groups must be attributed and cited in the header of the module.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

mrcrowbar-0.4.1-py3-none-any.whl (51.9 kB view details)

Uploaded Python 3

File details

Details for the file mrcrowbar-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for mrcrowbar-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5c43983cca3283e04ca0cbed1272c11e7ca7c68d558effa17a75102bb386a889
MD5 b352c1d414b05f9f45cb27cb6d045965
BLAKE2b-256 3585a4245c9d17bd01eb7f4f529fabc66b83bf07b62e9bc54342b24e41762338

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page