Could someone point me to good resources about mining code, most data mining and machine learning articles deal with points in multidimensional space and not objects with complex internal structure like programs...
New Statistical De-minifier and De-obfuscator for JavaScript
11–20 of 34 posts
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#12Can this approach be extended to for example generating "matching" tests for the code? Like "I see this function processes dates, here are some popular test cases learned from 1000s other projects"? Could someone point me to good resources about mining code, most data mining and machine learning articles deal with points in multidimensional space and not objects with complex internal structure like programs...
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#13Re: New Statistical De-minifier and De-obfuscator for JavaScript
#14Infinitely helpful in reverse engineering google stuff like www.googletagservices.com/tag/js/gpt.js
Thanks!!!
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#15Why was it unable to infer the type of the return value for generateSeries? The function only has one return statement, and it already knows the type of the return variable is {Array}.
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#16I took the code presented and put it into packer - http://dean.edwards.name/packer/ , and the "nice" output was not very helpful in that it still looked obfuscated. Maybe I'm misunderstanding something. So the input to js nice was the packed generateSeries function: eval(function(p,a,c,k,e,r){e=function(c) {return(c 35? String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/, String)){while(c--)r[e(c)]=k[c]||e(…
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#17Line 1: Parse error. missing ; before statement
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#18I put in some real world JS found on Hulu, and got a slew of errors like this one: Line 1: Parse error. missing ; before statement
Thanks for trying it out. I tried few large samples from Hulu and they seemed to work fine, e.g.:
http://static.huluim.com/huluguru/i18n/en-us/translations-9d...
But indeed, sometimes there could be issues if the code does not compile with the compiler of choice.
Re: New Statistical De-minifier and De-obfuscator for JavaScript
#19 /**
* @param {string} val
* @return {?}
*/
var expect = function(val) {
return "string" == typeof val;
};
/**
* @param {boolean} deepDataAndEvents
* @return {?}
*/
var clone = function(deepDataAndEvents) {
return "boolean" == typeof deepDataAndEvents;
};
/**
* @param {(boolean|number|string)} obj
* @return {?}
*/
var isString = function(obj) {
return "number" == typeof obj;
};
Still, neat idea. Seems like there's a lot of room to train it, probably a lot of fun to try to improve things :)