Tool
javascript-deobfuscator (LostMyCode)
Browser-based Vue app that restores the strings Obfuscator.io hides behind string-array lookups in JavaScript. The user pastes the obfuscated script and names its string array or decoder function, such as _0x439c; the tool classifies the calls as plain array indexing, a one-argument decoder or a two-argument RC4-style decoder, runs the script's own decoder to replace each call with its string literal, rewrites bracketed property access as dot notation and beautifies the result. The author hosts a demo at deo.sigr.io.
- Targets
- Website
- Category
- Website analysis tools
- Relationship
- Foundation tool
- Sources reviewed
Requirements & limits
- Prerequisites: Supply the obfuscated script and identify the target function name yourself; a built-in tip shows call shapes such as _0x439c[103], _0x439c('0x4') and _0x439c('0x2','f]Xg'). The README covers only the Vue CLI 4 project commands (npm install, serve, build and lint), and a GitHub Actions workflow builds the site with Node.js 16 and deploys it to GitHub Pages.
- Scope: Unversioned: package.json reports 0.1.0 and marks the package private, there are no GitHub releases or npm package, and the reviewed master commit of 2024-05-31 is the latest push.
- Limits: Only these string-array patterns are handled, with a fourth pattern marked experimental, and unrecognized input returns an error. The code has no passes for control-flow flattening, proxy functions, dead code or Obfuscator.io's other transformations, so those remain in the output. Decoding evaluates the pasted script with eval inside a browser web worker, so the input's own code runs; it is not a static AST transformation. The page template also loads js-beautify from cdnjs and a Google Analytics tag.
- Testing evidence: The repository has no tests, and the README's only result is an example screenshot.
- License: The repository has no license file and GitHub detects no license, so it grants no stated reuse terms.
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- src/xDecoder.js GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- src/Analyzer.js GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- src/components/Main.vue GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- src/components/TargetFuncTip.vue GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- src/worker.js GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- package.json GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- public/index.html GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
- .github/workflows/deploy.yml GitHub · LostMyCode/javascript-deobfuscator · Revision 2cc31bf
More in Websites
- minusone · Tool
- JS-Deobfuscator (0x1Avram) · Tool
- HTTP Toolkit · Tool
- Javascript Deobfuscator · Tool
- go-fAST · Tool
- Hetty · Tool