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.5.1-py3-none-any.whl (75.2 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for mrcrowbar-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 544a2ab983f44ffc68d8dd632a049376d99596b2f0e1eab00bdd0a038dff96e3
MD5 7884133a601daa1f88606a9e97d78cdd
BLAKE2b-256 9ab50cb28e0fe206bc546a6fa2ecab5b108b5d174e2cc875dee637b2e29b36b9

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