ReverserAI: A Project Aiming to Automate and Enhance Reverse Engineering Tasks Using LLM

ReverserAI is a rather cutting-edge research project aimed at automating and improving reverse engineering tasks through the use of local language models (LLM).

Operating entirely offline, this first version stands out for its ability to automatically suggest high-level, semantically meaningful function names from the decompiler output. ReverserAI also comes as a plugin for Binary Ninja, but its modular architecture is designed to be extended to other platforms like IDA or Ghidra.

Although local LLMs do not yet match the performance of their cloud-based counterparts like ChatGPT4 or Claude3, they represent a major advancement with a good balance between performance and privacy.

Key features of this tool include:

  • Fully offline operation, ensuring data privacy and security
  • Automatic suggestion of semantically meaningful function names from decompiler output
  • Seamless integration with Binary Ninja via a dedicated plugin
  • Modular architecture allowing easy extension to other reverse engineering tools
  • Compatibility with consumer-grade hardware, including Apple Silicon architectures.

However, a hardware setup with multiple CPU cores or a powerful GPU is recommended. On a system with at least 16 GB of RAM and 12 CPU cores, requests take about 20 to 30 seconds. With GPU optimizations, particularly on Apple Silicon devices, this time can be reduced to 2 to 5 seconds per request.

It can be installed using Binary Ninja’s plugin manager, and once launched, the tool will automatically download the necessary language model (~5 GB). Configuration settings also allow performance optimization based on your hardware setup, distributing the load between the CPU and GPU.

This still somewhat nascent tool is an excellent proof of concept, showcasing the potential of local LLMs for reverse engineering. We’ll see what it becomes in the coming years.

The source code is available on GitHub, so feel free to suggest improvements.

Mohamed SAKHRI
Mohamed SAKHRI

I'm the creator and editor-in-chief of Tech To Geek. Through this little blog, I share with you my passion for technology. I specialize in various operating systems such as Windows, Linux, macOS, and Android, focusing on providing practical and valuable guides.

Articles: 1278

Newsletter Updates

Enter your email address below and subscribe to our newsletter

Leave a Reply

Your email address will not be published. Required fields are marked *