Bytecode viewer
Author: c | 2025-04-24
Download bytecode-viewer packages for Arch Linux. bytecode-viewer latest versions: 2.13.0. bytecode-viewer architectures: any. bytecode-viewer linux packages: zst
Bytecode Viewer - The Bytecode Wiki
Bytecode ViewerBytecode 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 sourced. 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 WaterWolfJHexPane by Sam KoivuRSynaxPane by Robert FutrellCommons IO by ApacheASM by OW2FernFlower by StiverProcyon by MstrobelCFR by Lee BenfieldCFIDE by BiblSmali by JesusFrekeDex2Jar by pxb1..?Krakatau by StoryyellerJD GUI/JD Core by The Java-Decompiler TeamEnjarify by StoryyellerContributors:KonlochBiblFlukeRighteoussahitya-pavuralapriav03AfffsddSzperakZootysamczsunItzSomebodyIf I missed you, please feel free to contact me @Konloch or [email protected]: Code: Docs: (Copyleft): Bugs (or below): Forum: 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: Selects the decompiler, procyon by default -i Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically) -o Selects the output file (Java or Java-Bytecode) -t 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"> To use and can be modified by the community.Cross-Platform: The software is available for Windows, macOS, and Linux, making it accessible on multiple operating systems.User-Friendly Interface: It provides a graphical user interface (GUI) that is relatively easy to use. It displays Java source code in a tree-like structure, making it more accessible for those who are not comfortable with command-line tools.Decompilation Accuracy: JD-GUI generally provides accurate decompilation of Java bytecode, making it easier to understand and modify Java applications.Bytecode Viewer: In addition to decompiling Java code, it also allows you to view the bytecode instructions, which can be useful for in-depth analysis.Search and Navigate: You can search for classes, methods, or fields within the decompiled code, making it easier to locate specific parts of a Java application.CONSLimited in Complex Cases: It may struggle with more complex Java bytecode, resulting in less readable decompiled code. It might have difficulty reconstructing advanced language features or obfuscated code.No Support for Java 9+: It may not fully support the features introduced in Java 9 and later versions, including modules and the new Java platform module system.Limited Code Modification: While the software can help you understand and modify Java code, it might not be the best tool for extensive code modifications or refactoring. You may want to use a proper integrated development environment (IDE) for that purpose.Lack of Code Comments: Decompiled code often lacks comments and meaningful variable/method names since this information is not stored in bytecode. This can make the decompiled code less understandable.MaintenanceDownload Bytecode-Viewer-.jar (Bytecode Viewer)
Not needed to be installed on the machine to run this tool.The program enables users to save, print, edit and compile the generated java code.And also you can edit and run the code instantly using the given option as below.DownloadHome page3.4 Cavaj Java DecompilerThis is another java decompiler and is free software.Cavaj Java Decompiler is a simple GUI for only for windows developers and does not provide the javasyntax highlighting.This is not available for the MAC and Unix os. So, this is not recommened for the experienced developers.Homepage for download3.5 AndroChef Java DecompilerAndochef is a windows based GUI and works with apk., dex, jar and java class-files. It’s simple and easy.AndroChef Java Decompiler is Windows XP, Windows 2003, Windows Vista, Windows 7, Windows 8 , 8.1 and Windows 10 decompiler for Java that reconstructs the original source code from the compiled binary CLASS files. AndroChef Java Decompiler is able to decompile the most complex Java 6 applets and binaries, producing accurate source code from it.This decompiler works for android apk files also.For large APK files (over 10 MB) – decompilation may take several minutes to complete or even longer, depending on the configuration of your computer and the size of the file.To get the full features, you need to buy the licenced copy of software.Home page3.6 JBVD – Java Bytecode Viewer & DecompilerJBVD provides the support for the cross platforms such as Windows, Mac and Unix environments.A very powerful java bytecode viewer and decompiler which makes use of the javassist. Download bytecode-viewer packages for Arch Linux. bytecode-viewer latest versions: 2.13.0. bytecode-viewer architectures: any. bytecode-viewer linux packages: zst Introduction. In this tutorial we learn how to install bytecode-viewer on Kali Linux. What is bytecode-viewer. bytecode-viewer is: This package contains Bytecode Viewer (BCV). It is anBytecode Viewer - The Bytecode Wiki - wiki.bytecode.club
Java Decompiler 1.0.0.13 Date Released: Jan 9, 2016 Status: Minor Update Release Notes: Updated decompiler engine. Added option 'APK Tool Decode and Baksmaling' to exptract, decode and baksmali APK files with apktool. AndroChef Java Decompiler is able to decompile the most complex Java 6 applets and binaries, producing accurate source code.Code viewer and Tree view added. Bugs fixed. Most popular click and convert in Java & JavaScript downloads for Vista AndroChef Java Decompiler 1.0.0.13 download by Atanas Neshkov ... Decompiler is Windows decompiler for class, jar, apk and dex files. It reconstructs the original source code ... a folder to decompile file to (Destination directory). Click on "Decompile" -button. Selected files will be decompiled ... type: Shareware ($24.99) categories: java, decompiler, apk, decompile, class, jar, dex, code, java 1.6, java 6, software, bytecode, convert, tools, gui, applet, disassembler, converter, source, disassembly, open class, decompilador, reverse, source code, file View Details Download ClamAV Bytecode Compiler The ClamAV® Bytecode Compiler is a tool to build cross-platform advanced malware detection plugins for the ClamAV® open source antivirus engine. We call these plugins "bytecode signatures". Bytecode signatures are are executed by a ClamAV using either an LLVM JIT runtime or an interpreter runtime. These signatures extend ClamAV's file format support and provide detection capabilities above and beyond the limitations of content-based logical signatures. DocumentationAt present the pdf documentation is dated.Specifically, the instructions for building the compiler or no longer correct.The documentation will be updated as time permits.The PDF documentation still provides valuable instructions for writing andcompiling signatures, and documents features of the bytecode signature API.Quick StartGetting the bytecode compiler repositorygit clone git://github.com/Cisco-Talos/clamav-bytecode-compilerQuick start for building & installingRequirementsLLVM and Clang, version 8 or newerLLVM and Clang versions must match.Version 8 is preferred, tested. Newer versions are not guaranteed to work correctly.LLVM is required to build the bytecode compiler.Clang is required to run the bytecode compiler.Python 3.6 or newer.Python is required to run the unit tests, and to run the bytecode compiler.Build & InstallConfigure:">mkdir build && cd buildcmake .. \ -D CMAKE_BUILD_TYPE=Release \ -D CMAKE_INSTALL_PREFIX=install path>Build:Test:Install:cmake --build . --target installAdditional Build ExamplesBuild with a specific LLVM version and specific ClamAV install that installs tolocal directory:cmake .. \ -D CMAKE_INSTALL_PREFIX=install \ -D ENABLE_TESTS=ON \ -D LLVM_ROOT=/usr/lib/llvm-8 \ -D ClamAV_HOME=$HOME/clams/0.105.0make -j12ctest -Vmake installChange LogFor information about the features in this and prior releases, readthe news.Join the ClamAV CommunityThe best way to get in touch with the ClamAV community is to join ourmailing lists and tojoin us on Discord.Want to make a contribution?The ClamAV development team welcomescode contributions.Thanks for joining us!LicensingClamAV is licensed for public/open source use under the GNU General PublicLicense, Version 2 (GPLv2).See COPYING/COPYING.txt for a copy of the license.3rd Party CodeClamAV contains a number of components that include code copied in part or inwhole from 3rd party projects and whose code is not owned by Cisco and whichare licensed differently than ClamAV. These include:LLVM, Clang:= 9.0.0: Apache License 2.0 with LLVM ExceptionsSee the COPYING directory for a copy of the 3rd party project licenses.Bytecode Viewer - The Bytecode Club Wiki
Question What methods can I use to change a compiled .class file without decompiling? Answer Modifying a compiled Java .class file without decompiling it into source code can be achieved using various tools that directly manipulate bytecode. These methods might involve editing Java bytecode or using specialized tools for patching the compiled class files. ClassWriter cw = new ClassWriter(0);cw.visit(V1_8, ACC_PUBLIC, "HelloWorld", null, "java/lang/Object", null);MethodVisitor mv = cw.visitMethod(ACC_PUBLIC + ACC_STATIC, "main", "([Ljava/lang/String;)V", null, null);v.visitCode();v.visitInsn(RETURN);v.visitEnd();cw.visitEnd();byte[] b = cw.toByteArray(); Causes Direct bytecode manipulation tools can alter existing class files. Certain frameworks provide methods for runtime modification without decompiling. Solutions Use a Java bytecode editor such as ASM or Byte Buddy to manipulate the bytecode directly. Utilize a hex editor for very low-level changes to specific byte sequences within the .class file. Apply libraries/tools such as Javassist or AspectJ for runtime modifications and enhancements. Common Mistakes Mistake: Editing the wrong bytecode leading to corrupted class files. Solution: Always back up the original .class file before making edits. Mistake: Not understanding the class file format can lead to improper modifications. Solution: Familiarize yourself with the Java Virtual Machine Specification for correct approach. Helpers modify .class file Java class file modification Java bytecode manipulation edit compiled Java class Java class file patching Related Questionsbytecode-viewer/README.md at master Konloch/bytecode-viewer
Here are 33 public repositories matching this topic... Code Issues Pull requests A basic Virtual machine operating on bytecode with a stack and Van Neumann Architecture. Built in Assembler. Updated Oct 22, 2017 C++ Code Issues Pull requests A low overhead, embeddable bytecode virtual machine in C++ Updated Dec 25, 2018 C++ Code Issues Pull requests Bytecode compiler handmade with ❤️ and C++ Updated Apr 7, 2019 C++ Code Issues Pull requests The Meet Language Interpreter Updated Jul 29, 2019 C++ Code Issues Pull requests An imperitive, procedural programming language complete with closures, higher order functions, and run time object manipulation. Compiles to a custom bytecode. Updated Dec 9, 2019 C++ Code Issues Pull requests A bytecode interpreted scripting language for C++ Updated Jan 11, 2020 C++ Code Issues Pull requests A Simple Bytecode Interpreter/Virtual Machine in C++. Updated Feb 11, 2020 C++ Code Issues Pull requests Spinscript is a fantasy architecture for a game project that is quite assembly. Updated Mar 15, 2020 C++ Code Issues Pull requests Ethereal Language Reference Implementation (archived). Currently working on Scribe. Updated May 21, 2020 C++ Code Issues Pull requests Libraries for the Nabla VM - Assembler, Byte Code Generator, and the Virtual Machine Updated Oct 8, 2020 C++ Code Issues Pull requests Foxely is an object-oriented language. Updated May 16, 2021 C++ Code Issues Pull requests Lox bytecode VM written in C++ - Based on Part III of Bob Nystrom's Book "Crafting Interpreters" Updated Jul 11, 2021 C++ Code Issues Pull requests. Download bytecode-viewer packages for Arch Linux. bytecode-viewer latest versions: 2.13.0. bytecode-viewer architectures: any. bytecode-viewer linux packages: zstDownload Bytecode-Viewer-2.11.2.jar (Bytecode Viewer)
Machine. In scenarios like this, it’s ideal if we can embed the generated ELF objects in the binary’s data segment, maximizing cross-machine portability.Besides providing bindings for libbcc, the gobpf package can load eBPF programs from compiled bytecode. By combining it with a tool such as packr, which embeds blobs into Go applications, we have all the tools necessary for distributing binary files without runtime dependencies.We make slight amendments to our eBPF program so it can print messages to the kernel tracing pipeline when a kprobe is triggered. For succinctness, we will omit the printf macro and other eBPF helper functions, but you can find relevant definitions in this header file.SEC("kprobe/sys_setns")int kprobe__sys_setns(struct pt_regs *ctx) { int fd = (int)PT_REGS_PARM1(ctx); int pid = bpf_get_current_pid_tgid() >> 32; printt("process with pid %d joined ns through fd %d", pid, fd); return 0;}We can now start writing Go code to handle eBPF bytecode loading. We’ll implement a small abstraction on top of gobpf (KprobeTracer):import ( "bytes" "errors" "fmt" bpflib "github.com/iovisor/gobpf/elf")type KprobeTracer struct { // bytecode is the byte stream with embedded eBPF program bytecode []byte // eBPF module associated with this tracer. The module is a collection of maps, probes, etc. mod *bpflib.Module}func NewKprobeTracer(bytecode []byte) (*KprobeTracer, error) { mod := bpflib.NewModuleFromReader(bytes.NewReader(bytecode)) if mod == nil { return nil, errors.New("ebpf is not supported") } return KprobeTracer{mod: mod, bytecode: bytecode}, nil}// EnableAllKprobes enables all kprobes/kretprobes in the module. The argument// determines the maximum number of instances of the probed functions the can// be handled simultaneously.func (t *KprobeTracer) EnableAllKprobes(maxActive int) error { params := make(map[string]*bpflib.PerfMap) err := t.mod.Load(params) if err != nil { return fmt.Errorf("unable to load module: %v", err) } err = t.mod.EnableKprobes(maxActive) if err != nil { return fmt.Errorf("cannot initialize kprobes: %v", err) } return nil}Ready to start kernel probe tracing:package mainimport ( "log" "github.com/gobuffalo/packr")func main() { box := packr.NewBox("/directory/to/your/object/files") bytecode, err := box.Find("ns.o") if err != nil { log.Fatal(err) } ktracer, err := NewKprobeTracer(bytecode) if err != nil { log.Fatal(err) } if err := ktracer.EnableAllKprobes(10); err != nil { log.Fatal(err) }}Use sudo cat /sys/kernel/debug/tracing/trace_pipe to read out the debug information that has been piped in. The easiest way to test the eBPF program is by appending it to a running Docker container:$ docker exec -it nginx /bin/bashThe scenario behind this is that the container runtime will re-associate the bash process to the namespace of the nginx container. The first parameter obtained through the PT_REGS_PARM1 macro is the first file descriptor for the namespace, which can be traced in the /proc//ns symbolic link directory. So we can monitor if a process joins that namespace. This feature might not be very useful, but it is an example of tracking system call executions and obtaining their parameters.Using eBPF MapsWritingComments
Bytecode ViewerBytecode 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 sourced. 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 WaterWolfJHexPane by Sam KoivuRSynaxPane by Robert FutrellCommons IO by ApacheASM by OW2FernFlower by StiverProcyon by MstrobelCFR by Lee BenfieldCFIDE by BiblSmali by JesusFrekeDex2Jar by pxb1..?Krakatau by StoryyellerJD GUI/JD Core by The Java-Decompiler TeamEnjarify by StoryyellerContributors:KonlochBiblFlukeRighteoussahitya-pavuralapriav03AfffsddSzperakZootysamczsunItzSomebodyIf I missed you, please feel free to contact me @Konloch or [email protected]: Code: Docs: (Copyleft): Bugs (or below): Forum: 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: Selects the decompiler, procyon by default -i Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically) -o Selects the output file (Java or Java-Bytecode) -t 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">
2025-04-08To use and can be modified by the community.Cross-Platform: The software is available for Windows, macOS, and Linux, making it accessible on multiple operating systems.User-Friendly Interface: It provides a graphical user interface (GUI) that is relatively easy to use. It displays Java source code in a tree-like structure, making it more accessible for those who are not comfortable with command-line tools.Decompilation Accuracy: JD-GUI generally provides accurate decompilation of Java bytecode, making it easier to understand and modify Java applications.Bytecode Viewer: In addition to decompiling Java code, it also allows you to view the bytecode instructions, which can be useful for in-depth analysis.Search and Navigate: You can search for classes, methods, or fields within the decompiled code, making it easier to locate specific parts of a Java application.CONSLimited in Complex Cases: It may struggle with more complex Java bytecode, resulting in less readable decompiled code. It might have difficulty reconstructing advanced language features or obfuscated code.No Support for Java 9+: It may not fully support the features introduced in Java 9 and later versions, including modules and the new Java platform module system.Limited Code Modification: While the software can help you understand and modify Java code, it might not be the best tool for extensive code modifications or refactoring. You may want to use a proper integrated development environment (IDE) for that purpose.Lack of Code Comments: Decompiled code often lacks comments and meaningful variable/method names since this information is not stored in bytecode. This can make the decompiled code less understandable.Maintenance
2025-04-12Not needed to be installed on the machine to run this tool.The program enables users to save, print, edit and compile the generated java code.And also you can edit and run the code instantly using the given option as below.DownloadHome page3.4 Cavaj Java DecompilerThis is another java decompiler and is free software.Cavaj Java Decompiler is a simple GUI for only for windows developers and does not provide the javasyntax highlighting.This is not available for the MAC and Unix os. So, this is not recommened for the experienced developers.Homepage for download3.5 AndroChef Java DecompilerAndochef is a windows based GUI and works with apk., dex, jar and java class-files. It’s simple and easy.AndroChef Java Decompiler is Windows XP, Windows 2003, Windows Vista, Windows 7, Windows 8 , 8.1 and Windows 10 decompiler for Java that reconstructs the original source code from the compiled binary CLASS files. AndroChef Java Decompiler is able to decompile the most complex Java 6 applets and binaries, producing accurate source code from it.This decompiler works for android apk files also.For large APK files (over 10 MB) – decompilation may take several minutes to complete or even longer, depending on the configuration of your computer and the size of the file.To get the full features, you need to buy the licenced copy of software.Home page3.6 JBVD – Java Bytecode Viewer & DecompilerJBVD provides the support for the cross platforms such as Windows, Mac and Unix environments.A very powerful java bytecode viewer and decompiler which makes use of the javassist
2025-03-28