AngeloD2022 / jsxer

jsxer is a fast and accurate decompiler for Adobe ExtendScript Binary (JSXBIN) files, featuring JSXBlind deobfuscation.
GNU Affero General Public License v3.0
184 stars 30 forks source link

Implemented functionality to decompile and inline nested JSXBIN eval calls if they contain a valid signature. #139

Closed AngeloD2022 closed 2 months ago

AngeloD2022 commented 2 months ago

Jsxer will now recursively decompile and inline nested JSXBIN eval calls.

Output of v1.6.1:

eval("@JSXBIN@ES@2.1@MyBbyBn0ABJAnASzFjNjZiYiNiMByBoBFekWhcjCjPjPjLheKhAhAhAhAhAhAhAhAhAhAhAhAhAhAhcjUjJjUjMjFhAjDjMjBjTjThdhCjIjFjMjMjPifjXjPjSjMjEhCheiYiNiMhAiOjPjEjFhAiUjFjTjUhchPjUjJjUjMjFheKhAhAhAhAhAhAhAhAhAhAhAhAhAhAhcjBjVjUjIjPjShAjUjZjQjFhdhCjJifjBjNifjBjOifjBjUjUjSjJjCjVjUjFhCheiUjFjTjUhchPjBjVjUjIjPjSheKhAhAhAhAhAhAhAhAhAhAhAhAhchPjCjPjPjLheAnftABB40BiAABAzACByB");
var title = myXML.title;
eval("@JSXBIN@ES@2.1@MyBbyBn0ABJBnASzKjBjVjUjIjPjSiOjBjNjFByBXzFiAjOjBjNjFCfXzGjBjVjUjIjPjSDfjzFjNjZiYiNiMEfnftABB40BiAABAzAFByB");

New Output:

var myXML = <book>
              <title class="hello_world">XML Node Test</title>
              <author type="i_am_an_attribute">Test</author>
            </book>;
var title = myXML.title;
var authorName = myXML.author.@name;