Giter Club home page Giter Club logo

pyda's Introduction

NO LONGER BEING DEVELOPED.

We ran into a lot of issues with Python being so horrible at threading. It was impossible to make the UI responsive while it was disassembling, so we have moved on from this. Feel free to take the code and try to make it better...

PyDA

This program is currently in alpha and in heavy development mode (on our free time), so expect unstable behaviors as we develop. We currently have a "stable" master (that is slightly useable) and all current work will be done on the "unstable" branch. If you want to checkout that branch, it will have more current developments included, but it might not work as well as we rework data structures, add new functionality, test new features, etc. On that nore, below is a description of the project.

The Python DisAssembler is a disassembler built on the Capstone Engine that aims to provide an easy front end to disassembling many file formats and architectures. It is written in pure Python and has the Capstone Engine as its only non-native dependency.

The Capstone Engine can be found at http://www.capstone-engine.org/. In order to make this program work, you must visit http://www.capstone-engine.org/download.html and download the appropriate libraries. If you are on windows, just install the "Python module for Windows XX - Binaries" and you're good to go. For other operating systems, follow the steps at http://www.capstone-engine.org/documentation.html to install the engine and python bindings. It's fairly straightforward and easy to do.

The purpose of this program is to provide an easy to use disassembler that supports many file types. It abstracts disassembly functionality out to individual, format-specific modules that are located in the disassembler/formats directory. The individual modules must only behave in a certain way and put their disassembly into a data structure in order for them to be accepted into the program. This would allow anyone to design a module that disassembles a single executable format, putting it into that directory and, without any changes to the code, have it automatically imported into PyDA. See the current modules for an example of how to write the modules.

The program is written in such a way as to require a minimal amount of dependencies from pure Python. Therefore, Tkinter was chosen as the GUI library as it is installed by default with Python and makes cross platform implementation simplest. The only dependency is the capstone library which is linked above for your convenience. I will keep as up to date with the capstone API as possible, but right now the API is 2.1.1.

Donations

If you like this project and want to donate:

BTC: 1CYP9apFMB2DgCbRxo1oAJNsbMwKbe6QyV

DOGE: D8ra8gDYqK4Mx52Q5nw5GjA9nDRjNJpzee

pyda's People

Contributors

jchristman avatar direwolf314 avatar madsc13ntist avatar wiseone13 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.