A plugin that translates foreign language text in binaries to any supported language using offline translation.
This plugin requires Binary Ninja's Unicode support to be enabled to display non-ASCII characters in the appropriate codepages!
Enable Unicode Support in Binary Ninja
- Real-time Translation (Render Layer)
- Replaces foreign text with translations directly in the disassembly view
- Works in both Linear and Graph views
- Non-destructive - original text preserved in database
- Toggle on/off via View → Layer menu
Warning, this method can be slow!
- Manual Changes
Plugins/Translate/Translate All SymbolsPlugins/Translate/Translate Current Symbol
Note that these changes will be made as user changes so saving them in an analysis database will persist.
- String Translation Comments
- Adds translation comments at string usage locations
- Comments appear at both string definitions and references
- Preserves existing comments
Install from Binary Ninja's Plugin Manager - dependencies will be installed automatically.
- Clone or download this repository
- Copy the
translate-layerfolder to your Binary Ninja plugins directory:- macOS:
~/Library/Application Support/Binary Ninja/plugins/ - Linux:
~/.binaryninja/plugins/ - Windows:
%APPDATA%\Binary Ninja\plugins\
- macOS:
- Restart Binary Ninja (it will automatically install the required Python packages)
The plugin uses Argos Translate's offline models. Install models for the language pairs you need:
# Update the package index
argospm update
# List available packages
argospm search
# Install language pairs (format: translate-[source]_[dest])
# Examples:
argospm install translate-ru_en # Russian to English
argospm install translate-ja_en # Japanese to English
argospm install translate-zh_en # Chinese to English
argospm install translate-en_es # English to Spanish
argospm install translate-fr_de # French to GermanAccess settings via Edit → Preferences → Settings → Translation
Available settings:
- Destination Language: Target language for translations (based on installed models)
- Translated Symbol Prefix: Prefix for renamed symbols (default: "🌎")
The plugin can translate between any languages supported by Argos Translate models.
Check available models with argospm search.
- Install translation models:
argospm install translate-[source]_[dest] - Restart Binary Ninja after installing models
If Binary Ninja doesn't automatically install dependencies:
pip install argostranslate- Check that a destination language is selected in settings
- Verify translation models are installed:
argospm list - Check the Binary Ninja log for error messages (enable debug logs for more information)
- First translation after loading may be slow as models load
- Subsequent translations use the cache for instant results