Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a220d0315e5334fc

Jump to content

JEB decompiler

From Wikipedia, the free encyclopedia
JEB Decompiler
Original authorNicolas Falliere
DevelopersPNF Software, Inc.
Stable release
5.42 / June 24, 2026; 34 days ago (2026-06-24)[1]
Written inJava
Operating systemWindows, Mac OS X, Linux
PlatformJava
TypeReverse engineering
LicenseProprietary
Websitewww.pnfsoftware.com

JEB is a disassembler and decompiler software for Android applications[2] and native machine code. It decompiles Dalvik bytecode to Java source code, and x86, ARM, RISC-V, and other machine code to C source code. The assembly and source outputs are interactive and can be refactored. Users can also write their own scripts and plugins to extend JEB functionality.

History

[edit]

JEB was the first Dalvik decompiler to provide interactive output, as reverse-engineers may examine cross-references, insert comments, or rename items, such as classes and methods. Whenever possible, the correspondence between the bytecode and the decompiled Java code is accessible to the user. Although JEB is branded as a decompiler, it also provides a full APK view (manifest, resources, certificates, etc.). An API allows users to customize or automate actions through scripts and plugins, in Python and Java.

JEB 2.2 introduced Android debugging modules for Dalvik and native (Intel, ARM, MIPS) code. Users can "seamlessly debug Dalvik bytecode and native machine code, for all apps [...] including those that do not explicitly allow debugging".[3]

JEB 2.3 introduced native code decompilers. The first decompiler that shipped with JEB was a MIPS 32-bit interactive decompiler.

JEB 3 shipped with additional decompilers, including Intel x86, Intel x86-64, WebAssembly (wasm), Ethereum (evm), Diem blockchain (diemvm).

JEB 4 was released in 2021. A RISC-V decompiler was added to JEB 4.5. A S7 PLC block decompiler was added to JEB 4.16.

JEB 5 was released in 2023. A SASS decompiler for Nvidia GPU code targeting Volta+/sm_70+ architectures was added in version 5.31. Version 5.32 shipped with VIBRE (for "Vibe Reversing"), a reverse engineering AI assistant backed by an external LLM and the JEB's MCP server.

Decompilers

[edit]

JEB ships with the following proprietary and open-source decompiler plugins:

  • Dalvik bytecode to Java
  • Java bytecode to Java
  • Intel x86/x86-64 machine code to C
  • ARM machine code to C
  • MIPS machine code to C
  • RISC-V machine code to C
  • S7 (MC7) bytecode to C
  • WebAssembly bytecode to C
  • Nvidia SASS code (compiled GPU kernels) to C
  • EVM bytecode (compiled Ethereum smart contracts) to Solidity-like source code
  • Diem bytecode[4] (compiled diemvm modules run on the Diem blockchain) to mvir-like (Move IR) source code

Other plugins

[edit]

JEB ships with a sizable number of disassemblers and debugger plugins.[5]

JEB allows parsing of any file format, via the addition of native or third-party plugins. Examples include: a PDF parser plugin (proprietary), an XLS document plugin (open-sourced).

See also

[edit]

References

[edit]
[edit]