Skip to main content

Utilities for rewriting GTIRB with capstone and keystone

Project description


Integration between GTIRB and the Capstone/Keystone libraries.


GTIRB explicitly does not include any notion of instructions or instruction semantics. In general this is desirable as most tools have their own intermediate languages and corresponding encoders/decoders to deal with instructions. However, in many cases the high-quality Capstone/Keystone decoder/encoder libraries provide sufficient instruction information for binary analysis and transformation. These libraries provide exceptional coverage of multiple ISAs and are widely used. GTIRB-Capstone integrates GTIRB with the Capstone disassembler and the Keystone assembler allowing for transparent access to instructions in GTIRB instances.


This package requires:

  • keystone To install keystone run:
    git clone
    cd keystone
    mkdir build
    cd build
    make install


You can create a virtual environment for development using tox:

tox -e venv
. venv/bin/activate

This repository uses pre-commit to enforce code formatting. You should
have pre-commit installed. To activate pre-commit in this repository run:

pre-commit install

To run the tests execute tox:


## Copyright and Acknowledgments

Copyright (C) 2020 GrammaTech, Inc.

This code is licensed under the MIT license. See the LICENSE file in
the project root for license terms.

This project is sponsored by the Office of Naval Research, One Liberty
Center, 875 N. Randolph Street, Arlington, VA 22203 under contract #
N68335-17-C-0700.  The content of the information does not necessarily
reflect the position or policy of the Government and no official
endorsement should be inferred.

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

gtirb_capstone-1.0.1-py3-none-any.whl (7.8 kB view hashes)

Uploaded py3

Supported by

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