VimüUnDoÂ0v∫/ú›‘•[8c6ù%˘ŒÁó¸9î€›ïÁGﬁ35});5••••OL¶Ôg_–ˇˇˇˇOLò°ıı5Å_–ˇˇˇˇvOLò°ıvar var = require('module');5Å_–!ˇˇˇˇ!&v&OLò•ı*var activeXObfuscator = require('module');5Å_–'ˇˇˇˇ!&v&OLòßı5Å_–ˇˇˇˇ!&v&OLò©ıı5Å_–ˇˇˇˇ!&v&OLò›ı5Å_–*ˇˇˇˇ!&v&OLòﬂııı5Å_–	ˇˇˇˇvOLòﬂıvar var = require('module');5Å_–
	ˇˇˇˇvOLò‡ıvar assert = require('module');5Å_–	
ˇˇˇˇvOLò„ı.return new ActiveXObject('Microsoft.XMLHTTP');5Å_–
ˇˇˇˇvOLò‰ı'new ActiveXObject('Microsoft.XMLHTTP');5Å_–
ˇˇˇˇvOLòÁıı5Å_–
ˇˇˇˇvOLòÈı'new ActiveXObject('Microsoft.XMLHTTP');5Å_–
ˇˇˇˇvOLòÎı5Å_–ˇˇˇˇvOLòÎı5Å_–ˇˇˇˇvOLòÓı'new ActiveXObject('Microsoft.XMLHTTP');ı'new ActiveXObject('Microsoft.XMLHTTP');5Å_–ˇˇˇˇvOLòÒııı5Å_–ˇˇˇˇ
vOLòıı/var r = new ActiveXObject('Microsoft.XMLHTTP');5Å_–/ˇˇˇˇ
vOLòˆı0var r = "new ActiveXObject('Microsoft.XMLHTTP');5Å_–	ˇˇˇˇ
vOLò˚ı1var r = "new ActiveXObject('Microsoft.XMLHTTP')";5Å_–3ˇˇˇˇ
vOLò˝ı5var r = "foo(new ActiveXObject('Microsoft.XMLHTTP')";5Å_–
ˇˇˇˇ
vOLòˇııassert.equal(val, expected);5Å_–
ˇˇˇˇvOLôı5assert.equal(var var = require('module');, expected);5Å_–ˇˇˇˇvOLôıassert.equal(r, expected);5Å_–ˇˇˇˇvOLô	ı6var r = "foo(new ActiveXObject('Microsoft.XMLHTTP'))";5Å_–ˇˇˇˇvOLô	ı5var  = "foo(new ActiveXObject('Microsoft.XMLHTTP'))";5Å_–ˇˇˇˇvOLô
ıı5Å_–
ˇˇˇˇvOLôıassert.equal(r, r);5Å_– 
ˇˇˇˇvOLôıassert.equal(, r);5Å_–! ˇˇˇˇvOLôıassert.equal(output, r);5Å_– "!ˇˇˇˇvOLôıassert.equal(output, );5Å_–!#"ˇˇˇˇvOLõııı5Å_–"$#ˇˇˇˇvOLõıconsole.log(var);5Å_–#%$ˇˇˇˇvOLõıconsole.log(output);5Å_–$&%ˇˇˇˇOLúıassert.equal(output, input);5Å_–%'&ˇˇˇˇOLú$ıı5Å_–&('ˇˇˇˇOLú?#ı//assert.equal(output, input);5Å_–')(ˇˇˇˇVOLùµı5Å_–(*)ˇˇˇˇVOLù∂ı
5Å_–)+*	ˇˇˇˇVOLù∑ı	5Å_–*,+ˇˇˇˇVOLù∑ı	5Å_–+-,	
ˇˇˇˇVOLùπı
:var input = "foo(new ActiveXObject('Microsoft.XMLHTTP'))";5Å_–,.-	ˇˇˇˇVOLùΩ-ı
var input = "var foo = '';";5Å_–-/.ˇˇˇˇVOL†mıassert.equal(output, input);5Å_–.0/ˇˇˇˇVOL†nıassert.equal(output, '');5Å_–/10ˇˇˇˇVOL†pıassert.equal(output, 'foo()');5Å_–021ˇˇˇˇVOL†qı assert.equal(output, 'foo('')');5Å_–132ˇˇˇˇVOL†r.ı%assert.equal(output, 'foo(' + + ')');5Å_–243	ˇˇˇˇ	(VOL†Ñ/ı
assert.equal(output, input);ı
ı	&var output = activeXObfuscator(input);ı
)var input = "var foo = 'ActiveXObject';";5Å_–354ˇˇˇˇ	(VOL†éıRassert.equal(output, 'foo(' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + ')');5Å_–465Uˇˇˇˇ	(VOL†ì0ıYassert.equal(output, 'foo(window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + ')');5Å_–576ˇˇˇˇ	(VOL†òıZassert.equal(output, 'foo(window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '])');5Å_–687ˇˇˇˇ	(VOL†ôı
ı5Å_–798ˇˇˇˇ
(
VOL†ùı	
assert.equal(output, )');5Å_–8:9ˇˇˇˇ
(
VOL†ùı	
assert.equal(output, ');5Å_–9;:ˇˇˇˇ
(
VOL†ùı	
assert.equal(output, );5Å_–:<;Pˇˇˇˇ9:vOOL†°1ı
Qvar expected = 'foo(window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '];5Å_–;=<Pˇˇˇˇ9:vOOL†∂ı
Rvar expected = 'foo(window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + ']';5Å_–<>=ˇˇˇˇ#5v5OL†¬ı
Svar expected = 'foo(window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '])';5Å_–=?>ˇˇˇˇ#7v7OL†…ı
Wvar expected = 'foo(new window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '])';5Å_–>@?ˇˇˇˇ#7v7OL†Àı:var input = "foo(new ActiveXObject('Microsoft.XMLHTTP'))";5Å_–?A@
ˇˇˇˇ
$v$OL†—ı	&var output = activeXObfuscator(input);5Å_–@BA

ˇˇˇˇ


vOL†“ı	assert.equal(output, expected);5Å_–ACBˇˇˇˇ


$vOL†“ıvar output = ;5Å_–BDCˇˇˇˇ	
	$vOL†“ı5Å_–CEDˇˇˇˇ,v,OL†ﬁı
J  'foo(new window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '])';5Å_–DFEEˇˇˇˇ,v,OL†‡ı
J  "foo(new window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + '])';5Å_–EGFˇˇˇˇ,v,OL†‚ı
J  "foo(new window[' + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + "])';5Å_–FHGHˇˇˇˇ,v,OL†Êı
J  "foo(new window[" + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + "])';5Å_–GIHFˇˇˇˇ,v,OL†Ìı
J  "foo(new window[" + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + "])";5Å_–HJIˇˇˇˇAvAOL†Ûıı
5Å_–IKJˇˇˇˇ		AvAOL†Ûı5Å_–JLKˇˇˇˇ/v/OL†˘ı0var activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT5Å_–KMLMˇˇˇˇ/v/OL†˙ıMvar OBFUSCATED_ACTIVE_X_OBJECT = activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT5Å_–LNMˇˇˇˇ/v/OL†˚2ı5Å_–MON/ˇˇˇˇ/v/OL°ı5Å_–NPOˇˇˇˇ/v/OL°ıNvar OBFUSCATED_ACTIVE_X_OBJECT = activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT;5Å_–OQP?ˇˇˇˇ/v/OL°ıGvar OBFUSCATED_ACTIVE_X = activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT;5Å_–PRQ	ˇˇˇˇ		'v'OL°3ı
_  "foo(new window[" + activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT + "('Microsoft.XMLHTTP')])";5Å_–QSR	4ˇˇˇˇ		'v'OL°'ı
M  "foo(new window[" + OBFUSCATED_ACTIVE_X_OBJECT + "('Microsoft.XMLHTTP')])";5Å_–RTS	Jˇˇˇˇ		'v'OL°)5ı
N  "foo(new window[" + OBFUSCATED_ACTIVE_X_OBJECT + "]('Microsoft.XMLHTTP')])";5Å_–SUTˇˇˇˇ
VOL°.ı(//var output = activeXObfuscator(input);ı
+//var input = "var foo = 'ActiveXObject';";5Å_–TVUˇˇˇˇ
VOL°/ı//assert.equal(output, input);5Å_–UWV
ˇˇˇˇ
VOL°1ı
&var output = activeXObfuscator(input);5Å_–VXWˇˇˇˇVOL°3ı
ı
assert.equal(output, input);5Å_–WYXˇˇˇˇ	VOL°6ı5Å_–XZYˇˇˇˇ	VOL°7ı)var input = "var foo = 'ActiveXObject';";5Å_–Y[Zˇˇˇˇ	VOL°;ıM  "foo(new window[" + OBFUSCATED_ACTIVE_X_OBJECT + "]('Microsoft.XMLHTTP'))";5Å_–Z\[ˇˇˇˇ	VOL°<ı>  "" + OBFUSCATED_ACTIVE_X_OBJECT + "]('Microsoft.XMLHTTP'))";5Å_–[]\ˇˇˇˇ

VOL°>ı5Å_–\^]ˇˇˇˇ

VOL°>ı  5Å_–]_^
ˇˇˇˇ
vOL°Iı  "var foo = 'ActiveXObject';";5Å_–^`_
ˇˇˇˇ
vOL°Lı*  "var foo = OBFUSCATED_ACTIVE_X_OBJECT;";5Å_–_a`+ˇˇˇˇ
vOL°O9ı.  "var foo = " + OBFUSCATED_ACTIVE_X_OBJECT;";5Å_–`baˇˇˇˇVOL°‘ı5Å_–acbˇˇˇˇVOL°÷ı5Å_–becˇˇˇˇVOL°◊ı5Å_–cfdeˇˇˇˇVOL°ﬂı  "var foo = 'ActiveXObject';";5Å_–egfˇˇˇˇVOL°·;ı  'var foo = 'ActiveXObject';';5Å_–fhgˇˇˇˇ
VOL¢ı5Å_–gihˇˇˇˇ
VOL¢ı5Å_–hji
ˇˇˇˇ
VOL¢$ı  'var foo = "ActiveXObject";';5Å_–ikj
ˇˇˇˇ
VOL¢-ı2  "var foo = " + OBFUSCATED_ACTIVE_X_OBJECT + ";";5Å_–jlk1ˇˇˇˇ
VOL¢0Oı4  "var foo = o[" + OBFUSCATED_ACTIVE_X_OBJECT + ";";5Å_–kmlˇˇˇˇ
VOL£øı5Å_–lnmˇˇˇˇ
VOL£¿Pı!5Å_–mqnˇˇˇˇ"VOL£¬Sı!#1assert.equal(activeXObfuscator(input), expected);ı "5  "var foo = o[" + OBFUSCATED_ACTIVE_X_OBJECT + "];";ı!var expected =ı   'var foo = o.ActiveXObject;';ıvar input =5Å_–nrpqˇˇˇˇ"VOL£’Tı!#3//assert.equal(activeXObfuscator(input), expected);ı "7  //"var foo = o[" + OBFUSCATED_ACTIVE_X_OBJECT + "];";ı!//var expected =ı !  //'var foo = o.ActiveXObject;';ı
//var input =5Å_–qsr
ˇˇˇˇ""VOL£Áı "  'var foo = o.ActiveXObject;';5Å_–rts
ˇˇˇˇ""VOL£Ëı "  'var foo = ;';5Å_–sutˇˇˇˇ""VOL£Èı "  'var foo = '';';5Å_–tvuˇˇˇˇ""VOL£Îı "  'var foo = ';';5Å_–uwvˇˇˇˇ""VOL£Ïı "  'var foo = "";';5Å_–vxw!ˇˇˇˇ!!VOL£Ûı "!ı !5  "var foo = o[" + OBFUSCATED_ACTIVE_X_OBJECT + "];";5Å_–wyx!$ˇˇˇˇ!!1VOL£ıı ""2  "var foo = " + OBFUSCATED_ACTIVE_X_OBJECT + ";";5Å_–xzy!$ˇˇˇˇ!!1VOL£ıı ""1  "var foo = " + OBFUSCATED_ACTIVE_XOBJECT + ";";5Å_–y{z!$ˇˇˇˇ!!1VOL£ˆı ""0  "var foo = " + OBFUSCATED_ACTIVE_XBJECT + ";";5Å_–z|{!$ˇˇˇˇ!!1VOL£ˆı ""/  "var foo = " + OBFUSCATED_ACTIVE_XJECT + ";";5Å_–{}|!$ˇˇˇˇ!!1VOL£ˆı "".  "var foo = " + OBFUSCATED_ACTIVE_XECT + ";";5Å_–|~}!$ˇˇˇˇ!!1VOL£ˆı ""-  "var foo = " + OBFUSCATED_ACTIVE_XCT + ";";5Å_–}~!$ˇˇˇˇ!!1VOL£ˆı "",  "var foo = " + OBFUSCATED_ACTIVE_XT + ";";5Å_–~Ä"ˇˇˇˇ
"VOL£˘ı"5Å_–ÅÄ#ˇˇˇˇ
"VOL£˘ı"$'5Å_–ÄÇÅ%ˇˇˇˇ
"VOL£˝ı$&(  'var foo = "ActiveX";';5Å_–ÅÉÇ%ˇˇˇˇ
"VOL£ˇ[ı$&(  "var foo = "ActiveX";";5Å_–ÇÑÉˇˇˇˇ#"V"OL§Sı@var OBFUSCATED_ACTIVE_X = activeXObfuscator.OBFUSCATED_ACTIVE_X;ıNvar OBFUSCATED_ACTIVE_X_OBJECT = activeXObfuscator.OBFUSCATED_ACTIVE_X_OBJECT;ıvar assert = require('assert');ı+var activeXObfuscator = require('./index');5Å_–ÉÖÑˇˇˇˇ#"V"OL§Tı(5Å_–ÑÜÖˇˇˇˇ#"V"OL§Tı5Å_–ÖáÜˇˇˇˇ#"V"OL§U\ı(5Å_–ÜàáˇˇˇˇVOL§W_ı3var assert                     = require('assert');ı4var activeXObfuscator          = require('./index');5Å_–áâà)
ˇˇˇˇ%
)VOL¶äı)5Å_–àäâ*ˇˇˇˇ%
)VOL¶ãı)+.5Å_–âãä,
ˇˇˇˇ%
)VOL¶çı+-/  "var foo = 'ActiveX';";5Å_–äåã,ˇˇˇˇ%
)VOL¶éı+-/  "var foo; = 'ActiveX';";5Å_–ãçå,ˇˇˇˇ%
)VOL¶éı+-/  "var foo;  'ActiveX';";5Å_–åéç,ˇˇˇˇ%
)VOL¶éı+-/  "var foo; 'ActiveX';";5Å_–çèé,ˇˇˇˇ%
)VOL¶èı+-/  "var foo; ActiveX';";5Å_–éêè,ˇˇˇˇ%
)VOL¶ìı+-/  "var foo; // ActiveX';";5Å_–èëê.ˇˇˇˇ..VOL¶óı-/.ı-.+  "var foo = " + OBFUSCATED_ACTIVE_X + ";";5Å_–êíë.ˇˇˇˇ..VOL¶üı-//   "var foo; // ActiveX is cool";5Å_–ëìí.ˇˇˇˇ..VOL¶üı-//  "var foo; // AtiveX is cool";5Å_–íîì.ˇˇˇˇ..VOL¶†ı-//  "var foo; // AiveX is cool";5Å_–ìïî.ˇˇˇˇ..VOL¶†ı-//  "var foo; // AveX is cool";5Å_–îñï.ˇˇˇˇ..VOL¶†ı-//  "var foo; // AeX is cool";5Å_–ïóñ.ˇˇˇˇ..VOL¶¢bı-//  "var foo; // AX is cool";5Å_–ñòó/ˇˇˇˇ+
/VOL¶∞ı/5Å_–óôò0ˇˇˇˇ+
/VOL¶±ı/145Å_–òöô2
ˇˇˇˇ+
/VOL¶æı135   "var foo; // ActiveX is cool";5Å_–ôõö2ˇˇˇˇ+
/VOL¶¡ı135  "var foo = ''";5Å_–öúõ2ˇˇˇˇ+
/VOL¶≈ı135   "var foo = 'ActiveX is cool'";5Å_–õùú3ˇˇˇˇ+
/VOL¶∆ı23var expected =5Å_–úûù3ˇˇˇˇ+
/VOL¶∆ı23   "var foo; // Ac...eX is cool";5Å_–ùüû2ˇˇˇˇ+
/VOL¶«ı364ı244  ı2435Å_–û†ü6
ˇˇˇˇ+
/VOL¶ ı51assert.equal(activeXObfuscator(input), expected);5Å_–ü°†4ˇˇˇˇ+
/VOL¶Ãı356  5Å_–†¢°4ˇˇˇˇ+
/VOL¶Õı356  activeXObfuscator(input)5Å_–°£¢6ˇˇˇˇ+
/VOL¶Œı56assert.equal(, expected);5Å_–¢§£5ˇˇˇˇ+
/VOL¶œı4});5Å_–£•§5ˇˇˇˇ+
/VOL¶“dı4}, //);5Å_–§•5ˇˇˇˇ55"v"OL¶Ógı4&}, /Unknown ActiveXObject occurence/);5Å_–noqpˇˇˇˇVOL£“ı#ı 5Å_–npoˇˇˇˇVOL£Œı#ı5Å_–cedˇˇˇˇVOL°›ı  "var foo = "ActiveXObject";";5Å_–ˇˇˇˇ
vOLòÛı0var r = 'new ActiveXObject('Microsoft.XMLHTTP');5Å_–/ˇˇˇˇ
vOLòÛı0var r = 'new ActiveXObject('Microsoft.XMLHTTP');5ÅÁ™