Skip to content

Commit 34991f9

Browse files
committed
Change to markdown + remove profanity
1 parent f5e2496 commit 34991f9

File tree

7 files changed

+441
-10
lines changed

7 files changed

+441
-10
lines changed

CHANGELOG.md

Lines changed: 345 additions & 0 deletions
Large diffs are not rendered by default.

CONTRIBUTING.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Contribution Guide Lines/Coding Conventions:
2+
* Packages must start with the.bytecode.club.bytecodeviewer
3+
* If code you write can throw an exception, handle it using new the.bytecode.club.bytecodeviewer.ExceptionUI(exception, "authors@email.com")
4+
* All variables must be at the start of each class.
5+
* Brackets are meant to be on the same line, I.E. public void main(String[] args) { not (String[] args) <NEWLINE_BREAK> {

README.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Bytecode Viewer
2+
3+
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.
4+
It's written completely in Java, and it's open sourced. It's currently being maintained and developed by Konloch.
5+
6+
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.
7+
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.
8+
9+
Code from various projects has been used, including but not limited to:
10+
* J-RET by WaterWolf
11+
* JHexPane by Sam Koivu
12+
* RSynaxPane by Robert Futrell
13+
* Commons IO by Apache
14+
* ASM by OW2
15+
* FernFlower by Stiver
16+
* Procyon by Mstrobel
17+
* CFR by Lee Benfield
18+
* CFIDE by Bibl
19+
* Smali by JesusFreke
20+
* Dex2Jar by pxb1..?
21+
* Krakatau by Storyyeller
22+
* JD GUI/JD Core by The Java-Decompiler Team
23+
* Enjarify by Storyyeller
24+
25+
Contributors:
26+
* Konloch
27+
* Bibl
28+
* Fluke
29+
* Righteous
30+
* sahitya-pavurala
31+
* priav03
32+
* Afffsdd
33+
* Szperak
34+
* Zooty
35+
* ItzSomebody
36+
* If I missed you, please feel free to contact me @Konloch or konloch@gmail.com
37+
38+
Website: https://bytecodeviewer.com
39+
40+
Source Code: https://github.com/konloch/bytecode-viewer
41+
42+
Bin/Archive: https://github.com/konloch/bytecode-viewer/releases
43+
44+
Java Docs: https://the.bytecode.club/docs/bytecode-viewer/
45+
46+
License (Copyleft): https://raw.githubusercontent.com/Konloch/bytecode-viewer/master/LICENSE
47+
48+
Report Bugs (or below): https://github.com/Konloch/bytecode-viewer/issues
49+
50+
Discussion Forum: https://the.bytecode.club/forumdisplay.php?fid=69
51+
52+
Key Features:
53+
* Krakatau Integration for Bytecode assembly/disassembly.
54+
* Smali/BakSmali Integration - You can now edit class files/dex files via smali!
55+
* APK/DEX Support - Using Dex2Jar and Jar2Dex it's able to load and save APKs with ease!
56+
* Java Decompiler - It utilizes FernFlower, Procyon and CFR for decompilation.
57+
* Bytecode Decompiler - A modified version of CFIDE's.
58+
* Hex Viewer - Powered by JHexPane.
59+
* Each Decompiler/Editor/Viewer is toggleable, you can also select what will display on each pane.
60+
* Fully Featured Search System - Search through strings, functions, variables and more!
61+
* A Plugin System With Built In Plugins - (Show All Strings, Malicious Code Scanner, String Decrypters, etc)
62+
* Fully Featured Scripting System That Supports Groovy.
63+
* EZ-Inject - Graphically insert hooks and debugging code, invoke main and start the program.
64+
* Recent Files & Recent Plugins.
65+
* And more! Give it a try for yourself!
66+
67+
Command Line Input:
68+
```
69+
-help Displays the help menu
70+
-list Displays the available decompilers
71+
-decompiler <decompiler> Selects the decompiler, procyon by default
72+
-i <input file> Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically)
73+
-o <output file> Selects the output file (Java or Java-Bytecode)
74+
-t <target classname> Must either be the fully qualified classname or "all" to decompile all as zip
75+
-nowait Doesn't wait for the user to read the CLI messages
76+
```
77+
78+
Are you a Java Reverse Engineer? Do you want to learn?
79+
80+
Join The Bytecode Club Today!
81+
82+
https://the.bytecode.club

src/the/bytecode/club/bytecodeviewer/BytecodeViewer.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
* 3.0.0: (RETIREMENT PARTY, WOHOOO)
9696
* Add obfuscation:
9797
* - Add integer boxing and other obfuscation methods contra implemented
98-
* - Insert unadded/debug opcodes to try to fuck up decompilers
98+
* - Insert unadded/debug opcodes to try to screw up decompilers
9999
* - ClassAnylyzterAdapter
100100
* Add the jump/save mark system Ida Pro has.
101101
* Add class annotations to bytecode decompiler.
@@ -104,12 +104,12 @@
104104
* Make the tabs menu and middle mouse button click work on the tab itself not just the close button.
105105
* <p>
106106
* before 3.0.0:
107-
* EVERYTHING ON THE FUCKING GITHUB ISSUES LOL
107+
* EVERYTHING ON THE GITHUB ISSUES LOL
108108
* EVERYTHING ON THE BYTECODE CLUB ISSUES LOL
109109
* make it use that global last used inside of export as jar
110110
* Spiffy up the plugin console with hilighted lines
111111
* Take https://github.com/ptnkjke/Java-Bytecode-Editor visualize
112-
* make zipfile not include the decode shit
112+
* make zipfile not include the decode stuff
113113
* add stackmapframes to bytecode decompiler
114114
* add stackmapframes remover?
115115
* make ez-injection plugin console show all sys.out calls
@@ -194,7 +194,7 @@ public void run() {
194194
}
195195

196196
if (!BytecodeViewer.version.equals(version)) {
197-
r = new HTTPRequest(new URL("https://raw.githubusercontent.com/Konloch/bytecode-viewer/master/README.txt"));
197+
r = new HTTPRequest(new URL("https://raw.githubusercontent.com/Konloch/bytecode-viewer/master/CHANGELOG.md"));
198198
String[] readme = r.read();
199199

200200
String changelog = "Unable to load change log, please try again later." + nl;

src/the/bytecode/club/bytecodeviewer/gui/ClassViewer.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -631,7 +631,7 @@ public void startPaneUpdater(final JButton button) {
631631
final byte[] b = cw.toByteArray();
632632
Thread t1 = new PaneUpdaterThread() {
633633
@Override
634-
public void doShit() {
634+
public void doStuff() {
635635
try {
636636
if (pane1 == 1) { // procyon
637637
RSyntaxTextArea panelArea = new RSyntaxTextArea();
@@ -978,7 +978,7 @@ public void run() {
978978

979979
Thread t2 = new PaneUpdaterThread() {
980980
@Override
981-
public void doShit() {
981+
public void doStuff() {
982982
try {
983983
if (pane2 == 1) {
984984
RSyntaxTextArea panelArea = new RSyntaxTextArea();
@@ -1320,7 +1320,7 @@ public void run() {
13201320

13211321
Thread t3 = new PaneUpdaterThread() {
13221322
@Override
1323-
public void doShit() {
1323+
public void doStuff() {
13241324
try {
13251325
if (pane3 == 1) {
13261326
RSyntaxTextArea panelArea = new RSyntaxTextArea();

src/the/bytecode/club/bytecodeviewer/gui/PaneUpdaterThread.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@
2626

2727
public abstract class PaneUpdaterThread extends Thread {
2828

29-
public abstract void doShit();
29+
public abstract void doStuff();
3030

3131
@Override
3232
public void run() {
33-
doShit();
33+
doStuff();
3434
}
3535

3636
}

src/the/bytecode/club/bytecodeviewer/obfuscators/JavaObfuscator.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ public abstract class JavaObfuscator extends Thread {
3333

3434
@Override
3535
public void run() {
36-
System.out.println("mibbzz is gay");
3736
BytecodeViewer.viewer.setIcon(true);
3837
BytecodeViewer.runningObfuscation = true;
3938
obfuscate();

0 commit comments

Comments
 (0)