EXE Decompiler: Get the Source Code Out of a Binary
Upload an .exe, .dll, .jar or PyInstaller bundle and get its source back: C# for .NET, Java for JARs, Python for PyInstaller and .pyc. Native machine code gets a disassembly with imports and strings. Nothing you upload is ever run.
This tool processes on your device; your file is not uploaded for processing.
About
Whether a binary can be turned back into readable source depends on what built it, and this tool checks that first. A .NET .exe or .dll carries its metadata and intermediate language, so ILSpy rebuilds C# that reads like the original project, one file per class. A Java .jar or .class goes through CFR and comes back as .java. A program packed with PyInstaller is unpacked, its entry scripts and your own modules are found in the archive and decompiled to Python with pycdc (3.9 and newer) or uncompyle6 (3.8 and older); a bare .pyc works the same way. A native C or C++ executable has no source left inside it: for those you get the import table, an Intel-syntax disassembly and the strings, which is what any reverse-engineering session starts from, and the page says so instead of pretending.
Everything is read, never run. The upload lands in an isolated folder on our server, the matching tool reads it with a time limit, the sources are zipped, and the upload itself is deleted before the response is sent. The decompiled files appear on the page with a file list and a code view, so you can judge the result before downloading. Detection reads the bytes, not the extension: a renamed .NET assembly is still a .NET assembly, and a JAR renamed to .exe is still a JAR.
Use it to recover a project whose source was lost, to audit what a vendor's plugin or a downloaded tool really does, to check for hard-coded keys and endpoints in your own release build, to understand an old in-house utility nobody has the code for, or to learn how a piece of software is put together. Decompiling software you do not own or are not authorised to analyse can violate its licence or local law, and the page asks you to confirm that before it runs.
Limits and honesty: obfuscated .NET or Java (names like a, b, c and control-flow flattening) decompiles but reads poorly; PyInstaller bundles from Python 3.11 and newer decompile partially, and the tool marks those files and includes the bytecode listing; Nuitka, Cython and Go binaries are native and get the disassembly path. Uploads up to 50 MB; one file up to 50 MB a day is free, a credit pack, a 24-hour pass or a subscription covers the rest, shared with the STL and GLB tools.
How it works
- 1Open EXE Decompiler: Get the Source Code Out of a Binary and choose your file or enter the required input.
- 2Check the settings and start the process.
- 3The tool creates the result with temporary server-side processing.
- 4Download the output or copy the result when it is ready.