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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for mrcrowbar-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c0b5dc5e2090a7fac8ebd982fd0c697c0dabafe6f77c3f0285c17b84aecd031b
MD5 4cd51db746909423b7cf231ddd58535e
BLAKE2b-256 8f6b1cc733d7eee8ee9a8a78459c87e07468064c4de24903704f348194b1b607

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