GithubHelp home page GithubHelp logo

fcccode / retdec-idaplugin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from avast/retdec-idaplugin

0.0 0.0 0.0 6.83 MB

IDA plugin for RetDec.

License: MIT License

CMake 5.28% C 2.99% Python 3.91% C++ 87.82%

retdec-idaplugin's Introduction

RetDec IDA plugin

RetDec plugin for IDA (Interactive Disassembler).

The plugin is compatible with the following IDA versions: 7.x. The plugin does NOT work with IDA 6.x, or freeware version of IDA 7.0. The plugin binary itself is 64-bit, but at the moment, it supports only 32-bit address space. I.e. it works in ida, not ida64, and can decompile only 32-bit binaries.

Installation and Use

Currently, we support only Windows and Linux.

Windows

  1. Either download and unpack a pre-built package from the following list, or build and install the RetDec IDA plugin by yourself (the process is described below):

  2. Follow the user guide (user_guide.pdf) that is part of the downloaded package, or use the current version from this repository.

Linux

  1. Either download and unpack a pre-built package from the following list, or build and install the RetDec IDA plugin by yourself (the process is described below):

  2. Follow the user guide (user_guide.pdf) that is part of the downloaded package, or use the current version from this repository.

Build and Installation

Requirements

Note: These are requirements to build the RetDec IDA plugin, not to run it. See our User Guide for information on plugin installation, configuration, and use.

  • A compiler supporting C++14
    • On Windows, only Microsoft Visual C++ is supported (version >= Visual Studio 2015).
  • CMake (version >= 3.6)
  • IDA SDK (version == 7.0)

Process

  • Clone the repository:
    • git clone https://github.com/avast-tl/retdec-idaplugin.git
  • Linux:
    • cd retdec-idaplugin
    • mkdir build && cd build
    • cmake .. -DIDA_SDK_DIR=<path>
    • make
    • make install (if IDA_PATH was set, see below)
  • Windows:
    • Open a command prompt (e.g. C:\msys64\msys2_shell.cmd from MSYS2)
    • cd retdec-idaplugin
    • mkdir build && cd build
    • cmake .. -DIDA_SDK_DIR=<path> -G<generator>
    • cmake --build . --config Release -- -m
    • cmake --build . --config Release --target install (if IDA_PATH was set, see below)
    • Alternatively, you can open retdec-idaplugin.sln generated by cmake in Visual Studio IDE.

You must pass the following parameters to cmake:

  • -DIDA_SDK_DIR=</path/to/idasdk> to tell cmake where the IDA SDK directory is located.
  • (Windows only) -G<generator> is -G"Visual Studio 14 2015 Win64" for 64-bit build using Visual Studio 2015. Later versions of Visual Studio may be used. Only 64-bit build is supported.

You can pass the following additional parameters to cmake:

  • -DIDA_PATH=</path/to/ida> to tell cmake where to install the plugin. If specified, installation will copy plugin binary into IDA_PATH/plugins, and content of scripts/idc directory into IDA_PATH/idc. If not set, installation step does nothing.
  • -DRETDEC_IDAPLUGIN_DOC=ON to enable the user-guide target which generates the user guide document (disabled by default, the target needs to be explicitly invoked).

User Guide

The User Guide in a PDF form is located in doc/user_guide/user_guide.pdf.

You can build your own guide by enabling and invoking the user-guide target:

  • cmake .. -DRETDEC_IDAPLUGIN_DOC=ON
  • Linux: make user-guide
  • Windows: cmake --build . --config Release --target user-guide
  • Requires LaTeX, LaTeX packages, and related tools.
  • The resulting PDF will overwrite the original user_guide.pdf in doc/user_guide.

License

Copyright (c) 2017 Avast Software, licensed under the MIT license. See the LICENSE file for more details.

RetDec IDA plugin uses third-party libraries or other resources listed, along with their licenses, in the LICENSE-THIRD-PARTY file.

Contributing

See RetDec contribution guidelines.

retdec-idaplugin's People

Contributors

bet4it avatar manouchehri avatar maroc-os avatar maxton avatar petermatula avatar s3rvac 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.