$ show charles2gan/GDA-android-reversing-Tool
GDA (GJoy Dex Analyzer) is a Windows-native, closed-source Dalvik bytecode decompiler and Android APK reversing tool, written in C++. It provides a GUI for interactive analysis, a CLI for batch operations, and a socket-based server for programmatic access. The open-source components in this repository include Java and Python plugin APIs for scripting analysis tasks (e.g., string decryption, method tracing), example scripts, and skill definitions for LLM-driven automated malware analysis. The core decompiler is not open source, but the plugin interfaces and skill scripts are well-structured and reusable for integrating GDA with other tools or AI agents. The repository also contains color themes, documentation images, and a DEX patching utility.
The LLM identified 4 files worth highlighting for reuse:
A complete, reusable skill execution framework that manages the lifecycle of the GDA server (start/stop) and translates high-level LLM function calls into GDA commands over TCP. It includes a builder for command mapping, error handling, and thread-safe client connections. Can be extracted and adapted to wrap any socket-based CLI tool for AI-driven analysis.
A standalone Python client for the GDA server with presets (triage, malware, full) and parametric command support. It handles server startup, command execution, and structured output. The code is modular, with clear error handling and encoding fallbacks. Reusable for any tool that exposes a socket interface for binary analysis.
A minimal but robust TCP client for GDA server communication. It handles length-prefixed responses and encoding. Simple enough to be a template for similar tools, though less feature-rich than gda_analyze.py.
A domain-specific rule definition file for GDA's static vulnerability scanner. Rules use a simple syntax with properties like id, rule expression, type, vname, vlevel, description, and returnType. This format could be extracted and reused as a lightweight rule engine for other static analysis tools (e.g., to define custom checks on API patterns or manifest conditions).