我正在尝试编辑一个Greasemonkey/jQuery脚本。这里不能发布链接。
代码经过混淆并使用minify进行压缩。
它的开头是这样的:
var _0x21e9 = ["\x67\x65\x74\x4D\x6F\x6E\x74\x68", "\x67\x65\x74\x55\x54\x43\x44\x61\x74\x65", ...
“解码”后,我得到了这个:
var _0x21e9=["getMonth","getUTCDate","getFullYear", ...
这是一个巨大的列表(500+)。然后,它还有一些变量,比如:
month = date[_0x21e9[0]](), day = date[_0x21e9[1]](), ...
_0x21e9[0]代表获取月份,_0x21e9[1]代表获取UTC日期等。
是否可以用实际的变量名替换方括号?如何操作?
我对javascript/jQuery了解不多,无法像现在这样“读”代码。
我只想使用一些函数来执行这个庞大的脚本,并删除我不需要的内容。
更新:我尝试使用jsbeautifier.org,如此重复问题中所建议的,但除了“缩进”之外,没有任何变化。
它没有用解码后的名称替换数组变量。
例如:
- jsbeautifier仍然显示:
month = date[_0x21e9[0]]()
。 - 但我需要:
month = date["getMonth"]()
。
似乎没有在线反混淆程序可以做到这点,我该怎么办?
有没有办法让我与某人分享代码,至少其中的一部分?我读到我不能在这里发布pastebin或类似的东西。我不能在这里发布完整的代码。
这是代码的另一部分:
$(_0x21e9[8] + vid)[_0x21e9[18]]();
[8]表示“.”,[18]表示“remove”。手动替换会导致奇怪的结果。