The humanify of any file not working
[!NOTE] Processing file 1/1 C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:367 const error = new SyntaxError(); ^
SyntaxError: unknown: 'with' in strict mode. (5:4)
3 | }, SaEgNw7) { 4 | while (Mf8M0u + riQMkU + UcqOgo !== -31) {
5 | with (l06tYa.MC3rfnZ || l06tYa) switch (Mf8M0u + riQMkU + UcqOgo) { | ^ 6 | case l06tYa.iwnVDF.YS7M2nl + 134: 7 | AVRd8A([BpOfWz.qK79DR] = SaEgNw7, BpOfWz.Lva9T_S = function* Mf8M0u(riQMkU, UcqOgo, l06tYa, SaEgNw7 = { 8 | dd37r0: {} at constructor (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:367:19) at Parser.raise (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:6627:19) at Parser.parseWithStatement (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13244:12) at Parser.parseStatementContent (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12856:21) at Parser.parseStatementLike (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12767:17) at Parser.parseStatementListItem (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12747:17) at Parser.parseBlockOrModuleBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13316:61) at Parser.parseBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13309:10) at Parser.parseBlock (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13297:10) at Parser.parseStatementContent (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12858:21) at Parser.parseStatementLike (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12767:17) at Parser.parseStatement (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12760:17) at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13238:68 at Parser.withSmartMixTopicForbiddingContext (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12404:14) at Parser.parseWhileStatement (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13238:22) at Parser.parseStatementContent (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12854:21) at Parser.parseStatementLike (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12767:17) at Parser.parseStatementListItem (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12747:17) at Parser.parseBlockOrModuleBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13316:61) at Parser.parseBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13309:10) at Parser.parseBlock (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13297:10) at Parser.parseFunctionBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12101:24) at Parser.parseFunctionBodyAndFinish (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12087:10) at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13445:12 at Parser.withSmartMixTopicForbiddingContext (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12404:14) at Parser.parseFunction (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13444:10) at Parser.parseFunctionStatement (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13125:17) at Parser.parseStatementContent (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12791:21) at Parser.parseStatementLike (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12767:17) at Parser.parseModuleItem (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12744:17) at Parser.parseBlockOrModuleBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13316:36) at Parser.parseBlockBody (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:13309:10) at Parser.parseProgram (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12625:10) at Parser.parseTopLevel (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:12615:25) at Parser.parse (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:14492:10) at parse (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\parser\lib\index.js:14526:38) at parser (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\core\lib\parser\index.js:41:34) at parser.next (
) at normalizeFile (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\core\lib\transformation\normalize-file.js:64:37) at normalizeFile.next ( ) at run (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\core\lib\transformation\index.js:22:50) at run.next ( ) at transform (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\core\lib\transform.js:22:33) at transform.next ( ) at step (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules\gensync\index.js:261:32) at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules\gensync\index.js:273:13 at async.call.result.err.err (C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules\gensync\index.js:223:11) at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules\gensync\index.js:189:28 at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules@babel\core\lib\gensync-utils\async.js:67:7 at C:\Users\nahid\AppData\Roaming\npm\node_modules\humanifyjs\node_modules\gensync\index.js:113:33 { code: 'BABEL_PARSE_ERROR', reasonCode: 'StrictWith', loc: Position { line: 5, column: 4, index: 128 }, pos: 128, syntaxPlugin: undefined }
Are you trying to process a file that uses the with keyword?
Are you trying to process a file that uses the
withkeyword?
Yes, I am Is there any workaround to deobfuscate such files? @brianjenkins94
You would need to add a non-strict sourceType here: https://github.com/jehna/humanify/blob/main/src/babel-utils.ts#L11
You would need to add a non-strict
sourceTypehere: https://github.com/jehna/humanify/blob/main/src/babel-utils.ts#L11
I apologize would you mind to share a bit more details?
SyntaxError: unknown: 'with' in strict mode. (5:4)
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/with
-
Note: Use of the
withstatement is not recommended, as it may be the source of confusing bugs and compatibility issues, makes optimization impossible, and is forbidden in strict mode.
-
You would need to add a non-strict
sourceTypehere:main/src/babel-utils.ts#L11
It's using Babel's transform:
- https://babeljs.io/docs/babel-core#transform
Which takes these options:
- https://babeljs.io/docs/options
The sourceType option in particular seems to mention strict mode, and defaults to module, which enforces strict mode; so maybe try the most appropriate of the others?:
- https://babeljs.io/docs/options#sourcetype
-
sourceTypeType:
"script" | "module" | "commonjs" | "unambiguous"Default: "module"
"script"- Parse the file using the ECMAScript Script grammar. Noimport/exportstatements allowed, and files are not in strict mode."module"- Parse the file using the ECMAScript Module grammar. Files are automatically strict, andimport/exportstatements are allowed."commonjs"- Parse the file as it will be run in a CommonJS environment. This option is recommended when transforming.cjssources. See Parser docs for syntax differences between"script"and"commonjs"."unambiguous"- Consider the file a "module" ifimport/exportstatements are present, or else consider it a "script".
-