├── .github └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── eslint.config.js ├── example ├── cx │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── cycgo │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── gk │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── jsonv6 │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── lamz │ ├── index.ts │ ├── input.js │ ├── output.js │ ├── pretty.js │ └── setupCode.js ├── maoyan │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── obfuscator │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── package.json ├── pdd │ ├── index.ts │ ├── input.js │ ├── output.js │ ├── pretty.js │ └── setupCode.js ├── tsconfig.json └── wangyi │ ├── index.ts │ ├── input.js │ ├── output.js │ └── pretty.js ├── images ├── 1.png ├── 2.png └── 3.png ├── package.json ├── packages ├── config-typescript │ ├── base.json │ ├── package.json │ └── vite.json └── deob │ ├── esbuild.config.js │ ├── package.json │ ├── src │ ├── ast-utils │ │ ├── ast.ts │ │ ├── generator.ts │ │ ├── index.ts │ │ ├── inline.ts │ │ ├── matcher.ts │ │ ├── matchers.d.ts │ │ ├── rename.ts │ │ ├── test │ │ │ └── rename.test.ts │ │ └── transform.ts │ ├── cli.ts │ ├── deobfuscate │ │ ├── array-rotator.ts │ │ ├── control-flow-object.ts │ │ ├── control-flow-switch.ts │ │ ├── dead-code.ts │ │ ├── debug-protection.ts │ │ ├── decoder.ts │ │ ├── index.ts │ │ ├── inline-decoded-strings.ts │ │ ├── inline-decoder-wrappers.ts │ │ ├── inline-object-props.ts │ │ ├── merge-object-assignments.ts │ │ ├── my-control-flow-switch.ts │ │ ├── my-inline-decoder-wrappers.ts │ │ ├── my-inline-object-props.ts │ │ ├── save-objects.ts │ │ ├── self-defending.ts │ │ ├── string-array.ts │ │ ├── test │ │ │ ├── __snapshots__ │ │ │ │ └── deobfuscate.test.ts.snap │ │ │ ├── deobfuscate.test.ts │ │ │ ├── inline-object-props.test.ts │ │ │ ├── merge-object-assignments.test.ts │ │ │ └── var-functions.test.ts │ │ ├── var-functions.ts │ │ └── vm.ts │ ├── index.ts │ ├── options.ts │ ├── transforms │ │ ├── babel-plugin-minify-mangle-names.d.ts │ │ ├── decode-strings.ts │ │ ├── design-decoder.ts │ │ ├── find-decoder-by-array.ts │ │ ├── find-decoder-by-call-count.ts │ │ ├── mangle.ts │ │ ├── mark-keyword.ts │ │ └── test │ │ │ └── decoder.test.ts │ ├── unminify │ │ ├── index.ts │ │ ├── test │ │ │ ├── block-statements.test.ts │ │ │ ├── computed-properties.test.ts │ │ │ ├── infinity.test.ts │ │ │ ├── json-parse.test.ts │ │ │ ├── logical-to-if.test.ts │ │ │ ├── merge-else-if.test.ts │ │ │ ├── merge-strings.test.ts │ │ │ ├── number-expressions.test.ts │ │ │ ├── raw-literals.test.ts │ │ │ ├── sequence.test.ts │ │ │ ├── split-variable-declarations.test.ts │ │ │ ├── template-literals.test.ts │ │ │ ├── ternary-to-if.test.ts │ │ │ ├── typeof-undefined.test.ts │ │ │ ├── unary-expressions.test.ts │ │ │ ├── unminify-booleans.test.ts │ │ │ ├── void-to-undefined.test.ts │ │ │ └── yoda.test.ts │ │ └── transforms │ │ │ ├── block-statements.ts │ │ │ ├── computed-properties.ts │ │ │ ├── index.ts │ │ │ ├── infinity.ts │ │ │ ├── json-parse.ts │ │ │ ├── logical-to-if.ts │ │ │ ├── merge-else-if.ts │ │ │ ├── merge-strings.ts │ │ │ ├── number-expressions.ts │ │ │ ├── raw-literals.ts │ │ │ ├── sequence.ts │ │ │ ├── split-variable-declarations.ts │ │ │ ├── template-literals.ts │ │ │ ├── ternary-to-if.ts │ │ │ ├── typeof-undefined.ts │ │ │ ├── unary-expressions.ts │ │ │ ├── unminify-booleans.ts │ │ │ ├── void-to-undefined.ts │ │ │ └── yoda.ts │ └── utils │ │ └── platform.ts │ ├── test │ ├── index.ts │ └── setup.ts │ ├── tsconfig.build.json │ ├── tsconfig.json │ └── vitest.config.ts ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── tmp ├── input.js └── output.js ├── vitest.workspace.json └── website ├── .gitignore ├── .npmrc ├── _empty.ts ├── app.vue ├── components ├── AstOutput.vue ├── CodeEditor.vue ├── DeObfuscatorOutput.vue ├── OuputOptions.vue ├── OutputViewer.vue ├── SourceCodeEditor.vue └── TheHeader.vue ├── composables ├── dark.ts ├── monaco.ts ├── parse.ts ├── state.ts └── url.ts ├── nuxt.config.ts ├── package.json ├── plugins └── monaco.client.ts ├── public └── logo.svg ├── server └── tsconfig.json ├── styles └── global.css ├── tsconfig.json ├── unocss.config.ts └── utils ├── deobfuscate.worker.ts └── file.ts /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.npmrc -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.prettierignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.prettierrc -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/README.md -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/eslint.config.js -------------------------------------------------------------------------------- /example/cx/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cx/index.ts -------------------------------------------------------------------------------- /example/cx/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cx/input.js -------------------------------------------------------------------------------- /example/cx/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cx/output.js -------------------------------------------------------------------------------- /example/cx/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cx/pretty.js -------------------------------------------------------------------------------- /example/cycgo/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cycgo/index.ts -------------------------------------------------------------------------------- /example/cycgo/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cycgo/input.js -------------------------------------------------------------------------------- /example/cycgo/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cycgo/output.js -------------------------------------------------------------------------------- /example/cycgo/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/cycgo/pretty.js -------------------------------------------------------------------------------- /example/gk/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/gk/index.ts -------------------------------------------------------------------------------- /example/gk/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/gk/input.js -------------------------------------------------------------------------------- /example/gk/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/gk/output.js -------------------------------------------------------------------------------- /example/gk/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/gk/pretty.js -------------------------------------------------------------------------------- /example/jsonv6/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/jsonv6/index.ts -------------------------------------------------------------------------------- /example/jsonv6/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/jsonv6/input.js -------------------------------------------------------------------------------- /example/jsonv6/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/jsonv6/output.js -------------------------------------------------------------------------------- /example/jsonv6/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/jsonv6/pretty.js -------------------------------------------------------------------------------- /example/lamz/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/lamz/index.ts -------------------------------------------------------------------------------- /example/lamz/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/lamz/input.js -------------------------------------------------------------------------------- /example/lamz/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/lamz/output.js -------------------------------------------------------------------------------- /example/lamz/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/lamz/pretty.js -------------------------------------------------------------------------------- /example/lamz/setupCode.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/lamz/setupCode.js -------------------------------------------------------------------------------- /example/maoyan/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/maoyan/index.ts -------------------------------------------------------------------------------- /example/maoyan/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/maoyan/input.js -------------------------------------------------------------------------------- /example/maoyan/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/maoyan/output.js -------------------------------------------------------------------------------- /example/maoyan/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/maoyan/pretty.js -------------------------------------------------------------------------------- /example/obfuscator/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/obfuscator/index.ts -------------------------------------------------------------------------------- /example/obfuscator/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/obfuscator/input.js -------------------------------------------------------------------------------- /example/obfuscator/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/obfuscator/output.js -------------------------------------------------------------------------------- /example/obfuscator/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/obfuscator/pretty.js -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/package.json -------------------------------------------------------------------------------- /example/pdd/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/pdd/index.ts -------------------------------------------------------------------------------- /example/pdd/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/pdd/input.js -------------------------------------------------------------------------------- /example/pdd/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/pdd/output.js -------------------------------------------------------------------------------- /example/pdd/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/pdd/pretty.js -------------------------------------------------------------------------------- /example/pdd/setupCode.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/pdd/setupCode.js -------------------------------------------------------------------------------- /example/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/tsconfig.json -------------------------------------------------------------------------------- /example/wangyi/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/wangyi/index.ts -------------------------------------------------------------------------------- /example/wangyi/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/wangyi/input.js -------------------------------------------------------------------------------- /example/wangyi/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/wangyi/output.js -------------------------------------------------------------------------------- /example/wangyi/pretty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/example/wangyi/pretty.js -------------------------------------------------------------------------------- /images/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/images/1.png -------------------------------------------------------------------------------- /images/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/images/2.png -------------------------------------------------------------------------------- /images/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/images/3.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/package.json -------------------------------------------------------------------------------- /packages/config-typescript/base.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/config-typescript/base.json -------------------------------------------------------------------------------- /packages/config-typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/config-typescript/package.json -------------------------------------------------------------------------------- /packages/config-typescript/vite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/config-typescript/vite.json -------------------------------------------------------------------------------- /packages/deob/esbuild.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/esbuild.config.js -------------------------------------------------------------------------------- /packages/deob/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/package.json -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/ast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/ast.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/generator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/generator.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/index.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/inline.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/inline.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/matcher.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/matcher.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/matchers.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/matchers.d.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/rename.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/rename.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/test/rename.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/test/rename.test.ts -------------------------------------------------------------------------------- /packages/deob/src/ast-utils/transform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/ast-utils/transform.ts -------------------------------------------------------------------------------- /packages/deob/src/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/cli.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/array-rotator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/array-rotator.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/control-flow-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/control-flow-object.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/control-flow-switch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/control-flow-switch.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/dead-code.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/dead-code.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/debug-protection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/debug-protection.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/decoder.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/decoder.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/index.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/inline-decoded-strings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/inline-decoded-strings.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/inline-decoder-wrappers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/inline-decoder-wrappers.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/inline-object-props.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/inline-object-props.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/merge-object-assignments.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/merge-object-assignments.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/my-control-flow-switch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/my-control-flow-switch.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/my-inline-decoder-wrappers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/my-inline-decoder-wrappers.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/my-inline-object-props.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/my-inline-object-props.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/save-objects.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/save-objects.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/self-defending.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/self-defending.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/string-array.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/string-array.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/test/__snapshots__/deobfuscate.test.ts.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/test/__snapshots__/deobfuscate.test.ts.snap -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/test/deobfuscate.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/test/deobfuscate.test.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/test/inline-object-props.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/test/inline-object-props.test.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/test/merge-object-assignments.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/test/merge-object-assignments.test.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/test/var-functions.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/test/var-functions.test.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/var-functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/var-functions.ts -------------------------------------------------------------------------------- /packages/deob/src/deobfuscate/vm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/deobfuscate/vm.ts -------------------------------------------------------------------------------- /packages/deob/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/index.ts -------------------------------------------------------------------------------- /packages/deob/src/options.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/options.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/babel-plugin-minify-mangle-names.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/babel-plugin-minify-mangle-names.d.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/decode-strings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/decode-strings.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/design-decoder.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/design-decoder.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/find-decoder-by-array.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/find-decoder-by-array.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/find-decoder-by-call-count.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/find-decoder-by-call-count.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/mangle.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/mangle.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/mark-keyword.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/mark-keyword.ts -------------------------------------------------------------------------------- /packages/deob/src/transforms/test/decoder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/transforms/test/decoder.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/index.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/block-statements.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/block-statements.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/computed-properties.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/computed-properties.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/infinity.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/infinity.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/json-parse.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/json-parse.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/logical-to-if.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/logical-to-if.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/merge-else-if.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/merge-else-if.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/merge-strings.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/merge-strings.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/number-expressions.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/number-expressions.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/raw-literals.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/raw-literals.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/sequence.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/sequence.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/split-variable-declarations.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/split-variable-declarations.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/template-literals.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/template-literals.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/ternary-to-if.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/ternary-to-if.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/typeof-undefined.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/typeof-undefined.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/unary-expressions.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/unary-expressions.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/unminify-booleans.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/unminify-booleans.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/void-to-undefined.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/void-to-undefined.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/test/yoda.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/test/yoda.test.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/block-statements.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/block-statements.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/computed-properties.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/computed-properties.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/index.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/infinity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/infinity.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/json-parse.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/json-parse.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/logical-to-if.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/logical-to-if.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/merge-else-if.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/merge-else-if.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/merge-strings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/merge-strings.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/number-expressions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/number-expressions.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/raw-literals.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/raw-literals.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/sequence.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/sequence.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/split-variable-declarations.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/split-variable-declarations.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/template-literals.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/template-literals.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/ternary-to-if.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/ternary-to-if.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/typeof-undefined.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/typeof-undefined.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/unary-expressions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/unary-expressions.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/unminify-booleans.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/unminify-booleans.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/void-to-undefined.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/void-to-undefined.ts -------------------------------------------------------------------------------- /packages/deob/src/unminify/transforms/yoda.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/unminify/transforms/yoda.ts -------------------------------------------------------------------------------- /packages/deob/src/utils/platform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/src/utils/platform.ts -------------------------------------------------------------------------------- /packages/deob/test/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/test/index.ts -------------------------------------------------------------------------------- /packages/deob/test/setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/test/setup.ts -------------------------------------------------------------------------------- /packages/deob/tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/tsconfig.build.json -------------------------------------------------------------------------------- /packages/deob/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/tsconfig.json -------------------------------------------------------------------------------- /packages/deob/vitest.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/packages/deob/vitest.config.ts -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/pnpm-workspace.yaml -------------------------------------------------------------------------------- /tmp/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/tmp/input.js -------------------------------------------------------------------------------- /tmp/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/tmp/output.js -------------------------------------------------------------------------------- /vitest.workspace.json: -------------------------------------------------------------------------------- 1 | [ 2 | "packages/*/vitest.config.ts" 3 | ] 4 | -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/.gitignore -------------------------------------------------------------------------------- /website/.npmrc: -------------------------------------------------------------------------------- 1 | shamefully-hoist=true -------------------------------------------------------------------------------- /website/_empty.ts: -------------------------------------------------------------------------------- 1 | export {} 2 | -------------------------------------------------------------------------------- /website/app.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/app.vue -------------------------------------------------------------------------------- /website/components/AstOutput.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/AstOutput.vue -------------------------------------------------------------------------------- /website/components/CodeEditor.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/CodeEditor.vue -------------------------------------------------------------------------------- /website/components/DeObfuscatorOutput.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/DeObfuscatorOutput.vue -------------------------------------------------------------------------------- /website/components/OuputOptions.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/OuputOptions.vue -------------------------------------------------------------------------------- /website/components/OutputViewer.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/OutputViewer.vue -------------------------------------------------------------------------------- /website/components/SourceCodeEditor.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/SourceCodeEditor.vue -------------------------------------------------------------------------------- /website/components/TheHeader.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/components/TheHeader.vue -------------------------------------------------------------------------------- /website/composables/dark.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/composables/dark.ts -------------------------------------------------------------------------------- /website/composables/monaco.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/composables/monaco.ts -------------------------------------------------------------------------------- /website/composables/parse.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/composables/parse.ts -------------------------------------------------------------------------------- /website/composables/state.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/composables/state.ts -------------------------------------------------------------------------------- /website/composables/url.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/composables/url.ts -------------------------------------------------------------------------------- /website/nuxt.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/nuxt.config.ts -------------------------------------------------------------------------------- /website/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/package.json -------------------------------------------------------------------------------- /website/plugins/monaco.client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/plugins/monaco.client.ts -------------------------------------------------------------------------------- /website/public/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/public/logo.svg -------------------------------------------------------------------------------- /website/server/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../.nuxt/tsconfig.server.json" 3 | } 4 | -------------------------------------------------------------------------------- /website/styles/global.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/styles/global.css -------------------------------------------------------------------------------- /website/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/tsconfig.json -------------------------------------------------------------------------------- /website/unocss.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/unocss.config.ts -------------------------------------------------------------------------------- /website/utils/deobfuscate.worker.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/utils/deobfuscate.worker.ts -------------------------------------------------------------------------------- /website/utils/file.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuizuo/js-deobfuscator/HEAD/website/utils/file.ts --------------------------------------------------------------------------------