Bytecode Viewer v2.12 released: Java 8 Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More)
Bytecode Viewer is an Advanced Lightweight Java Bytecode Viewer, GUI Java Decompiler, GUI Bytecode Editor, GUI Smali, GUI Baksmali, GUI APK Editor, GUI Dex Editor, GUI APK Decompiler, GUI DEX Decompiler, GUI Procyon Java Decompiler, GUI Krakatau, GUI CFR Java Decompiler, GUI FernFlower Java Decompiler, GUI DEX2Jar, GUI Jar2DEX, GUI Jar-Jar, Hex Viewer, Code Searcher, Debugger and more.
It’s written completely in Java, and it’s open source. It’s currently being maintained and developed by Konloch.
There is also a plugin system that will allow you to interact with the loaded classfiles, for example, you can write a String deobfuscator, a malicious code searcher, or something else you can think of.
You can either use one of the pre-written plugins or write your own. It supports groovy scripting. Once a plugin is activated, it will execute the plugin with a ClassNode ArrayList of every single class loaded in BCV, this allows the user to handle it completely using ASM.
Code from various projects has been used, including but not limited to:
- J-RET by WaterWolf
- JHexPane by Sam Koivu
- RSynaxPane by Robert Futrell
- Commons IO by Apache
- ASM by OW2
- FernFlower by Stiver
- Procyon by Mstrobel
- CFR by Lee Benfield
- CFIDE by Bibl
- Smali by JesusFreke
- Dex2Jar by pxb1..?
- Krakatau by Storyyeller
- JD GUI/JD Core by The Java-Decompiler Team
- Enjarify by Storyyeller
Key Features:
- Krakatau Integration for Bytecode assembly/disassembly.
- Smali/BakSmali Integration – You can now edit class files/dex files via smali!
- APK/DEX Support – Using Dex2Jar and Jar2Dex it’s able to load and save APKs with ease!
- Java Decompiler – It utilizes FernFlower, Procyon, and CFR for decompilation.
- Bytecode Decompiler – A modified version of CFIDE’s.
- Hex Viewer – Powered by JHexPane.
- Each Decompiler/Editor/Viewer is toggleable, you can also select what will display on each pane.
- Fully Featured Search System – Search through strings, functions, variables and more!
- A Plugin System With Built-In Plugins – (Show All Strings, Malicious Code Scanner, String Decrypters, etc)
- Fully Featured Scripting System That Supports Groovy.
- EZ-Inject – Graphically insert hooks and debugging code, invoke main and start the program.
- Recent Files & Recent Plugins.
- And more! Give it a try for yourself!
Command Line Input:
-help Displays the help menu
-list Displays the available decompilers
-decompiler <decompiler> Selects the decompiler, procyon by default
-i <input file> Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically)
-o <output file> Selects the output file (Java or Java-Bytecode)
-t <target classname> Must either be the fully qualified classname or “all” to decompile all as zip
-nowait Doesn’t wait for the user to read the CLI messages
Changelog v2.12
Notable Changes
- Detect language from computer wide language settings – @Konloch
- New Window Theme Default: Dark Theme – @Konloch
- Add Auto Open Search Option – @Konloch
- Add Looping Search For Non-Exact – @Konloch
- Update dependencies again – @ThexXTURBOXx
- Update dependencies – @ThexXTURBOXx
- Add Popup Menu for close Tabs – @sinyear
- Update dependencies – @ThexXTURBOXx
- Add dex2jar exception handler – @ThexXTURBOXx
- Removed last version of dnd. Added dnd support from weisJ theme. Also… – @Bl3nd
- Fix many DnD errors related to #462 @ThexXTURBOXx
- Swap to SafeYAML – @Konloch
- Update HTTPRequest Library – @Konloch
- Fixed exception when clicking a class that’s already open. – @Bl3nd
- Enabled tabs to be rearranged. Did not add functionality for a tab to… – @Bl3nd
- Update dependencies as of this commit date – @nick-botticelli
- Fix FernFlower “Rename ambiguous classes and class elements”. – @Bl3nd
- Fix dex2jar issues – @ThexXTURBOXx
- Optimized resource tree building – @majonez
- Update dependencies @ThexXTURBOXx
- Malicious Code Scanner Fix – @Konloch
- Add ASMifier support – @nick-botticelli
- Change reference to -decompiler-list to -list – @nick-botticelli
- Replace icons with more modern svg variants – @weisJ
- Update dependencies – @ThexXTURBOXx
- Update darklaf to version 3.0.0 – @weisJ
- Fixed a lot of issues related to the GUI – @GraxCode
- Better looking tab close button. – @GraxCode
- Dex2Jar is now pulled from Maven Central – @ThexXTURBOXx
- And more! Thank you to everyone who has contributed to this patch. @ThexXTURBOXx / @Konloch / @GraxCode / @weisJ / @nick-botticelli / @majonez / @Bl3nd / @sinyear
Download
Bytecode Viewer(BCV) Copyright (C) 2014 Kalen “Konloch” Kinloch – http://bytecodeviewer.com – http://the.bytecode.club