Thanks to visit codestin.com
Credit goes to github.com

Skip to content
forked from mahaloz/DAILA

A decompiler-unified plugin for accessing the OpenAI API to improve your decompilation experience

Notifications You must be signed in to change notification settings

twizmwazin/DAILA

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DAILA

Decompiler Artificial Intelligence Language Assistant - Built on OpenAI. Utilize OpenAI to improve your decompilation experience in most modern decompilers.

Installation

Clone down this repo and pip install and use the daila installer:

pip3 install -e . && dailalib --install 

Depending on your decompiler, this will attempt to copy the script files into your decompiler and install the DAILA core to your current Python. If you are using Binja or IDA, make sure your Python is the same as the one you are using in your decompiler.

If you are using Ghidra, you may be required to enable the $USER_HOME/ghidra_scripts as a valid scripts path.

If your decompiler does not have access to the OPENAI_API_KEY, then you must use the decompiler option from DAILA to set the API key. A popup will appear for you to enter your key.

Manual Install

If the above fails, you will need to manually install. To manually install, first pip3 install -e . on the repo, then copy the python file for your decompiler in your decompilers plugins/scripts folder.

Ghidra Gotchas

You must have python3 in your path for the Ghidra version to work. We quite literally call it from inside Python 2.

Usage

In your decompiler you can access the DAILA options in one of two ways:

  1. If you are not in Ghidra, you can right-click a function and go to Plugins or directly use the DAILA ... menu.
  2. If you are in Ghidra, use Tools->DAILA then use the operation selector

All operations that DAILA can perform can be found from the DAILA context menu, which in some decompilers may just be the menu described above.

Comments will appear in the function header with the response or an error message.

Supported Decompilers

  • IDA

  • Binja

  • Ghidra

Features

Function Identification

We use ChatGPT to attempt to:

  1. Identify which open-source project this decompilation could be a result of
  2. Find a link to that said source if it exists

Function Summarization

Summarizes in human-readable text what this function does

Vulnerability Detection

Attempts to find and describe the vulnerability in the function

About

A decompiler-unified plugin for accessing the OpenAI API to improve your decompilation experience

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Python 100.0%