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 class Bot { private $OeptT; private $lLI1B; public $SdJGw; public $Naunv; public..

Decoded Output download

<?php 
 
 class Bot { private $OeptT; private $lLI1B; public $SdJGw; public $Naunv; public $NZG3R; public $j0B8A; public $omsOt; public $name; public $start; public $id; public $KSM6h; public $SgvOF; public $C0x2i; public $bmu52; public function __construct() { goto XtwMO; Zddzq: $this->KSM6h = "/configs/name"; goto wToLQ; l7HDV: $this->start = 1; goto NR_B4; XtwMO: $this->lLI1B = "7606883848:AAHpeix8Dxq7SAD8Yd6uKOVHis5tk-K71YQ"; goto Dbxvb; rvgAJ: $this->omsOt = 1; goto l7HDV; Dbxvb: $this->OeptT = "https://api.telegram.org/bot{$this->lLI1B}/"; goto fxeg2; wToLQ: $this->Naunv = getenv("IP"); goto rvgAJ; fxeg2: $this->SdJGw = "8192168470"; goto Zddzq; NR_B4: } public function amneziaKeys() { goto MC2oT; p27KZ: $this->sql("update servers set amnezia=:amnezia where id=:id", [":id" => $this->id, ":amnezia" => json_encode($k)]); goto FOyJt; Jq_EU: $k = ["Jc" => rand(3, 10), "Jmin" => 50, "Jmax" => 1000, "S1" => rand(15, 150), "S2" => rand(15, 150), "H1" => rand(1, 2147483647), "H2" => rand(1, 2147483647), "H3" => rand(1, 2147483647), "H4" => rand(1, 2147483647), "preshared_key" => trim($this->ssh("awg genpsk", "awg"))]; goto p27KZ; NnfJ_: return $k; goto tRO7u; FOyJt: return $k; goto E1ebz; tRO7u: tfUHG: goto Jq_EU; MC2oT: $k = json_decode($this->sql("select amnezia from servers where id=:id", [":id" => $this->id], "one"), true); goto BNSmv; BNSmv: if (empty($k)) { goto tfUHG; } goto NnfJ_; E1ebz: } public function syncAmnezia() { goto P2Gkf; nc6MM: TAh0v: goto JUvE2; It6JR: $c["interface"] = array_merge($c["interface"], $k); goto K_h6S; P2Gkf: $c = $this->readConfig(); goto Sjbc5; K_h6S: $c["interface"]["ListenPort"] = getenv("AWGPORT"); goto sgmfX; Sjbc5: $k = $this->amneziaKeys(); goto It6JR; JUvE2: unset($c["interface"]["preshared_key"]); goto kHoRK; nzglq: $this->ssh("awg-quick up wg0 || awg syncconf wg0 <(awg-quick strip wg0)", "awg"); goto o6ikA; sgmfX: if (empty($c["peers"])) { goto TAh0v; } goto prhdh; tCLqZ: oMr9Q: goto nc6MM; prhdh: foreach ($c["peers"] as $i => $v) { $c["peers"][$i]["PresharedKey"] = $k["preshared_key"]; rFLjq: } goto tCLqZ; kHoRK: file_put_contents("/configs/awg.conf", $this->createConfig($c)); goto nzglq; o6ikA: } public function cron() { goto yoIiU; NUgGJ: WG0EG: goto sv5lb; kq1GD: if (!empty($s["id"])) { goto JCKZn; } goto H_XG8; sQAmW: foreach ($r as $k => $v) { $c[$v["command"]] = $v["description"]; HsaOb: } goto NUgGJ; pIwVY: $this->tracking($s["id"]); goto Dm2FL; b6l0f: KBTm1: goto pIwVY; ArVUf: F57dh: goto P5kJm; J1Ol8: if ($s["torrent"]) { goto Uqcn5; } goto KbBJr; DNDi8: $sleep = $s["sleep"] ?: 30; goto EQE86; Y0pSz: a2zNI: goto F8Gey; EQE86: if (!$s["ping"]) { goto FS0om; } goto mYXEh; E89SZ: $this->send($this->SdJGw, "\320\xb2\320\276\xd1\201\xd1\201\321\x82\320\xb0\xd0\275\xd0\xbe\320\xb2\320\270\xd0\xbb \xd1\x81\xd0\xb2\321\x8f\xd0\267\xd1\214 \xd1\201 tower", $t["result"]["message_id"]); goto vUJHD; DNyvG: $this->j0B8A = $c["interface"]["PrivateKey"]; goto XYg7A; rEAJu: sleep(60); goto gweyw; SKgre: hWEHS: goto E4tU0; S4eno: die; goto ArVUf; iQplT: goto qQaBJ; goto SKgre; YFOTh: Uqcn5: goto pwaCE; NAtyJ: LY_Gj: goto qI6jT; Dm2FL: sleep($sleep); goto iQplT; XYg7A: if (!empty($this->NZG3R)) { goto F57dh; } goto Rowac; zN5gM: $this->NZG3R = trim($this->ssh("echo {$c["interface"]["PrivateKey"]} | wg pubkey")); goto DNyvG; D1ddi: if (!$noconnect) { goto KBTm1; } goto E89SZ; aAwuE: $this->name = $s["name"] ?: "{$this->Naunv}:{$c["interface"]["ListenPort"]}"; goto J1uc0; mYXEh: $this->sql("update servers set ping=0 where id=:id", [":id" => $s["id"]]); goto Ouv19; sv5lb: [$this->SgvOF, $this->C0x2i, $this->bmu52] = explode(":", $c["db"]); goto wqxy6; X9gqo: $t = $this->send($this->SdJGw, "\320\275\xd0\265\xd1\202 \xd1\x81\320\262\xd1\217\320\xb7\320\xb8 \321\201 tower"); goto p8uK0; TkjHL: $this->send($this->SdJGw, "\xd1\x81\xd1\x82\xd0\xb0\321\200\xd1\202"); goto MOv04; dWCQg: $this->send($this->SdJGw, "{$this->name}\xatorrent " . ($s["torrent"] ? "on" : "off")); goto bfeQY; MOv04: qQaBJ: goto pfAHO; yoIiU: $c = $this->readConfig(); goto zN5gM; wrMKc: $this->ssh("/bin/sh /scripts/unblock_torrent.sh", "awg"); goto Y0pSz; O1alH: goto qQaBJ; goto IHKgU; YLe5i: if (!($s["torrent"] != $this->omsOt)) { goto dSaGj; } goto J1Ol8; H_XG8: $this->sql("insert into servers(hash, private, ip, port, awgport, last_online) values (:hash, :private, :ip, :port, :awgport, now())", [":hash" => $this->NZG3R, ":private" => $this->j0B8A, ":ip" => $this->Naunv, ":port" => getenv("WGPORT"), ":awgport" => getenv("AWGPORT")]); goto O1alH; p8uK0: NV92E: goto lp0jZ; CdISz: $r = $this->getcommands(false, ["type" => "chat", "chat_id" => $this->SdJGw]); goto sQAmW; gweyw: goto qQaBJ; goto NAtyJ; qI6jT: $s = $this->sql("update servers set last_online=now(),
                                                                ip=:ip,\xa                                                                port=:port,\xa                                                                awgport=:awgport,\xa                                                                private=:private,
                                                                id=(select @id:=id),
                                                                sleep=(select @sleep:=sleep),
                                                                name=(select @name:=name),\xa                                                                ping=(select @ping:=ping),\xa                                                                torrent=(select @torrent:=torrent)\xa                                            where hash=:hash;\xa                                            select @id id,\xa                                                   @sleep sleep,
                                                   @name name,
                                                   @ping ping,\xa                                                   @torrent torrent", [":hash" => $this->NZG3R, ":private" => $this->j0B8A, ":ip" => $this->Naunv, ":port" => getenv("WGPORT"), ":awgport" => getenv("AWGPORT")], "row", nextRowset: 1); goto kq1GD; yANDx: FS0om: goto YLe5i; J1uc0: $this->setName($s["name"]); goto tx7ZN; KbBJr: $this->ssh("/bin/sh /scripts/block_torrent.sh"); goto Fw_d_; wqxy6: if ($this->sql("select 1 from information_schema.tables where TABLE_NAME="settings"", view: "one")) { goto LY_Gj; } goto lTxOy; bfeQY: dSaGj: goto D1ddi; tx7ZN: $this->syncAmnezia(); goto DNDi8; Fw_d_: $this->ssh("/bin/sh /scripts/block_torrent.sh", "awg"); goto TsgBN; P5kJm: $this->name = $this->getName() ?: "{$this->Naunv}:{$c["interface"]["ListenPort"]}"; goto TkjHL; lTxOy: if ($noconnect) { goto NV92E; } goto X9gqo; lp0jZ: $noconnect = true; goto rEAJu; TsgBN: goto a2zNI; goto YFOTh; Ouv19: $this->send($this->SdJGw, "pong", $s["ping"]); goto yANDx; F8Gey: $this->omsOt = $s["torrent"]; goto dWCQg; pfAHO: if (!true) { goto hWEHS; } goto CdISz; IHKgU: JCKZn: goto UqLHB; pwaCE: $this->ssh("/bin/sh /scripts/unblock_torrent.sh"); goto wrMKc; UqLHB: $this->id = $s["id"]; goto aAwuE; Rowac: $this->send($this->SdJGw, "\320\xbe\321\x88\xd0\xb8\xd0\xb1\320\xba\320\xb0 \321\x81\xd1\x82\xd0\260\xd1\200\xd1\202\xd0\260"); goto S4eno; vUJHD: $noconnect = false; goto b6l0f; E4tU0: } public function template(string $template, array $data) { goto s30yF; fg0R8: a9rQC: goto wzDSf; mr6oG: foreach ($data as $k => $v) { $tmp["~{$k}~"] = $v; wGckM: } goto Virx5; wcQ14: return trim($tmp ? str_replace(array_keys($tmp), array_values($tmp), $t) : $t); goto JG3Zi; wzDSf: $t = $this->getSetting($template); goto wcQ14; s30yF: if (empty($data)) { goto a9rQC; } goto mr6oG; Virx5: oDfmI: goto fg0R8; JG3Zi: } public function getSetting($param) { return $this->sql("select value from settings where param=:param", [":param" => $param], "one"); } public function getAmneziaShortLink($client) { goto tO24K; Qr9vq: exec("echo '{$c}' | python amnezia.py", $o); goto ha_8U; aBEWS: $mtu = $r["mtu"] ?: 1350; goto hnGu0; twYn1: $config = "[Interface]
PrivateKey = {$r["private"]}\xaAddress = {$client["AllowedIPs"]}\xaMTU = {$mtu}
Jc = {$k["Jc"]}\xaJmin = {$k["Jmin"]}\xaJmax = {$k["Jmax"]}\xaS1 = {$k["S1"]}
S2 = {$k["S2"]}
H1 = {$k["H1"]}\xaH2 = {$k["H2"]}
H3 = {$k["H3"]}
H4 = {$k["H4"]}\xaDNS = {$dns}\xa\xa[Peer]
PublicKey = {$r["hash"]}
PresharedKey = {$k["preshared_key"]}\xaEndpoint = {$domain}:{$r["awgport"]}
AllowedIPs = {$ips}
PersistentKeepalive = 20"; goto Wi_4r; tO24K: $k = $this->amneziaKeys(); goto NGnzQ; Wi_4r: $c = json_encode(["containers" => [["awg" => ["isThirdPartyConfig" => true, "last_config" => json_encode(["H1" => "{$k["H1"]}", "H2" => "{$k["H2"]}", "H3" => "{$k["H3"]}", "H4" => "{$k["H4"]}", "Jc" => "{$k["Jc"]}", "Jmax" => "{$k["Jmax"]}", "Jmin" => "{$k["Jmin"]}", "S1" => "{$k["S1"]}", "S2" => "{$k["S2"]}", "client_ip" => explode("/", $r["ip"])[0], "client_priv_key" => "{$r["private"]}", "client_pub_key" => "0", "config" => $config, "hostName" => "{$r["server_ip"]}", "port" => (int) $r["awgport"], "psk_key" => "{$k["preshared_key"]}", "server_pub_key" => "{$r["hash"]}"]), "port" => (int) "{$r["awgport"]}", "transport_proto" => "udp"], "container" => "amnezia-awg"]], "defaultContainer" => "amnezia-awg", "description" => "#{$client["# id"]}", "dns1" => explode(",", $dns)[0], "dns2" => explode(",", $dns)[1] ?: '', "hostName" => "{$r["server_ip"]}"]); goto Qr9vq; hnGu0: $ips = $r["ips"] ?: "0.0.0.0/0"; goto Hgc13; Hgc13: $domain = $r["domain"] ?: $r["server_ip"]; goto twYn1; ha_8U: return "{$o[0]}"; goto Fp1zY; NGnzQ: $r = $this->sql("SELECT  c.private
                                ,c.public\xa                                ,c.ip\xa                                ,if(c.mtu, c.mtu, s.mtu) mtu
                                ,if(c.ips, c.ips, s.ips) ips\xa                                ,s.hash
                                ,s.awgport\xa                                , IF(c.name != "", c.name, c.tgid) name\xa                                , s.ip server_ip\xa                                , s.domain\xa                        FROM clients c
                        LEFT JOIN servers s\xa                        ON s.id = c.server
                        WHERE c.id = :id", [":id" => $client["# id"]], "row"); goto Ds8xK; Ds8xK: $dns = $this->getSetting("dns") ?: "1.1.1.1, 8.8.8.8"; goto aBEWS; Fp1zY: } public function tracking($id) { goto tbMJt; hQAN5: $cl = $this->sql("select * from clients where server=:id and on_off=1", [":id" => $id]); goto J_3mY; aI0U6: h08cz: goto f2u5w; OGJsP: $stats = $this->getStats(); goto Qsy87; ADuV3: $new = $exist = []; goto ZJ4no; BuTaE: foreach ($exist as $k) { goto no180; RaL_P: QDNkx: goto CP9Ao; CP9Ao: n1EC5: goto YGIgw; no180: foreach ($new as $v) { goto mMgIt; ODm_D: $this->send($this->SdJGw, "\320\xb8\320\267\320\274\xd0\265\320\275\xd0\270\xd0\273 {$v["# id"]} \xd0\264\xd0\xbb\321\x8f {$v["# friendly_name"]}({$v["user"]}) \xd0\xbd\xd0\260 {$v["life"]}"); goto mAthL; mMgIt: if (!($k["PublicKey"] == $v["PublicKey"] && $k["# life"] != $v["# life"])) { goto PvaKl; } goto zVpoB; wt3FW: $v["id"] = $v["# id"]; goto ODm_D; zVpoB: $flag = true; goto cNnDt; mAthL: $this->send($v["# tgid"], $this->template("np", $v)); goto dhx7c; GaMwr: XFFN9: goto W450U; cNnDt: $v["life"] = $v["# life"] ? $this->getTime(strtotime($v["# life"]) - time()) : "\342\x88\236"; goto Muu7D; Muu7D: $v["user"] = $this->getInfoUser($v["# tgid"])["result"]["user"]["first_name"]; goto wt3FW; dhx7c: PvaKl: goto GaMwr; W450U: } goto RaL_P; YGIgw: } goto vc26V; qylNu: $flag = true; goto j6Pnv; sZGYg: CT0YE: goto RvY_d; i5NXc: if (empty($cr)) { goto EOp1o; } goto qylNu; j6Pnv: foreach ($cr as $v) { goto fViVt; kjgt2: goto fLptM; goto jQVcS; jQVcS: c8zfC: goto IQNcS; PMPGN: $this->send($v["# tgid"], $this->template("np", $v)); goto m8IKw; jrDFY: $this->qrPeer($v, $c["interface"]); goto kjgt2; g2onQ: if (!empty($v["# exists"])) { goto c8zfC; } goto wusCn; fViVt: $v["life"] = $v["# life"] ? $this->getTime(strtotime($v["# life"]) - time()) : "\xe2\210\236"; goto JCMRy; G75vB: GnrUs: goto jTXgM; m8IKw: fLptM: goto G75vB; IQNcS: $this->send($this->SdJGw, "\xd0\270\xd0\xb7\xd0\xbc\320\265\xd0\275\320\xb8\xd0\xbb {$v["# id"]} \xd0\xb4\320\273\321\217 {$v["# friendly_name"]}({$v["user"]}) \xd0\275\xd0\xb0 {$v["life"]}"); goto PMPGN; KeiYK: $v["id"] = $v["# id"]; goto jrZse; jrZse: $v["vpn"] = $this->sql("select amnezia from clients where id=:id", [":id" => $v["id"]], "one"); goto g2onQ; wusCn: $this->send($this->SdJGw, "\321\201\xd0\xbe\xd0\267\320\xb4\xd0\xb0\320\xbb {$v["# id"]} \320\264\xd0\273\xd1\217 {$v["# friendly_name"]}({$v["user"]}) \320\275\320\260 {$v["life"]}"); goto jrDFY; JCMRy: $v["user"] = $this->getInfoUser($v["# tgid"])["result"]["user"]["first_name"]; goto KeiYK; jTXgM: } goto t_yZE; lnVx4: if (empty($c["peers"])) { goto I13th; } goto OGJsP; bLFM2: kkPu7: goto wp8C5; Xh6og: gsO3c: goto Rjrsz; dvnAr: foreach ($new as $k => $v) { unset($new[$k]["PrivateKey"]); Qzc49: } goto YlrMR; XHDJw: Xi1aA: goto ZKzf1; ZJ4no: if (empty($c["peers"])) { goto rM3zB; } goto KSnRq; Qsy87: foreach ($c["peers"] as $k => $v) { goto RLNJN; vMcm_: IJN_R: goto BfbSk; DZGFs: ncYWV: goto vMcm_; RLNJN: if (empty($stats[$v["PublicKey"]])) { goto ncYWV; } goto oKvwA; aHHUj: $this->sql("update clients set download=download + session_download, upload=upload + session_upload where id=:id", [":id" => $v["# id"]]); goto m9hbO; m9hbO: z14De: goto Bc_FM; Bc_FM: $this->sql("update clients set session_download=:download, session_upload=:upload, external_ip=if(:external_ip is not null, :external_ip, external_ip), handshake=if(:handshake, :handshake, handshake) where id=:id", [":id" => $v["# id"], ":download" => $stats[$v["PublicKey"]]["download"], ":upload" => $stats[$v["PublicKey"]]["upload"], ":handshake" => $stats[$v["PublicKey"]]["handshake"] ?: null, ":external_ip" => $stats[$v["PublicKey"]]["external_ip"] != "(none)" ? $stats[$v["PublicKey"]]["external_ip"] : null]); goto DZGFs; oKvwA: if (!$this->start) { goto z14De; } goto aHHUj; BfbSk: } goto Qpfxp; D2u2F: foreach ($d as $v) { goto d88d4; UEeQv: $this->send($v["# tgid"], $this->template("nd", $v)); goto mS4Kr; mS4Kr: v2yXk: goto Uw6Fj; kAt6w: $v["id"] = $v["# id"]; goto PlwRm; d88d4: $v["user"] = $this->getInfoUser($v["# tgid"])["result"]["user"]["first_name"]; goto kAt6w; PlwRm: $this->send($this->SdJGw, "\xd0\xb2\xd1\213\xd0\xba\xd0\273\321\216\xd1\x87\320\xb8\xd0\xbb {$v["# id"]} \320\264\320\xbb\321\217 {$v["# tgid"]}({$v["user"]})"); goto UEeQv; Uw6Fj: } goto Zf1Yj; Yhc0Q: EOp1o: goto wJCH3; uza29: $c["peers"] = $new; goto aV9FX; Qpfxp: jQc3B: goto xUQpG; wJCH3: if (empty($exist)) { goto G_Idr; } goto BuTaE; f2u5w: if (empty($new)) { goto yqf9u; } goto xWbIX; srqr2: $this->restart(); goto URLLl; xWbIX: foreach ($new as $k => $v) { goto LxtVc; Sx9cg: mYbTF: goto sKvUP; sKvUP: Rg9Hc: goto wZ6iT; LxtVc: if (!empty($v["# amnezia"])) { goto mYbTF; } goto B6HZV; B6HZV: $this->sql("update clients set amnezia=:amnezia where id=:id", [":id" => $v["# id"], ":amnezia" => $this->getAmneziaShortLink($v)], "count"); goto Sx9cg; wZ6iT: } goto sZGYg; URLLl: $this->syncAmnezia(); goto xj8AV; xUQpG: $this->start = 0; goto fFPie; J_3mY: if (!($cl !== false)) { goto kkPu7; } goto ADuV3; RvY_d: yqf9u: goto HH3l3; Ma6b1: foreach ($cl as $v) { goto TEyFP; iNVne: CFSFI: goto HbUA9; JDsTx: z0vh_: goto iNVne; TEyFP: if (!$v["public"]) { goto z0vh_; } goto eS9xA; eS9xA: $new[$v["public"]] = ["PublicKey" => $v["public"], "AllowedIPs" => $v["ip"], "# friendly_name" => $v["name"] ?: $v["tgid"], "# life" => $v["life"], "# id" => $v["id"], "# tgid" => $v["tgid"], "# download" => $v["download"], "# upload" => $v["upload"], "# exists" => 1, "# amnezia" => $v["amnezia"]]; goto JDsTx; HbUA9: } goto XHDJw; YlrMR: fySy_: goto uza29; Zf1Yj: oeA_e: goto V21zq; i1IYm: $cr = array_diff_key($new, $exist); goto i5NXc; V21zq: xN5LJ: goto i1IYm; tbMJt: $c = $this->readConfig(); goto hQAN5; cJ65y: G_Idr: goto xUb0_; xj8AV: AWKH9: goto lnVx4; fFPie: I13th: goto bLFM2; KSnRq: foreach ($c["peers"] as $k => $v) { $exist[$v["PublicKey"]] = $v; mAp2Z: } goto Xh6og; ZKzf1: foreach ($cl as $v) { goto PM1KY; wEKlr: zPO0E: goto xfjkW; PM1KY: if ($v["public"]) { goto qFYXT; } goto xme2V; xme2V: $peer = $this->createPeer($v); goto ITKVl; zeaQ1: $this->sql("update clients set public=:public, private=:private where id=:id", [":id" => $v["id"], ":private" => $peer["PrivateKey"], ":public" => $peer["PublicKey"]]); goto OqGIL; OqGIL: $new[$peer["PublicKey"]] = array_merge(["# id" => $v["id"], "# tgid" => $v["tgid"], "# download" => $v["download"], "# upload" => $v["upload"]], $peer); goto wEKlr; ITKVl: if (empty($peer["PublicKey"])) { goto zPO0E; } goto zeaQ1; h2OfH: NYSCT: goto oQrux; xfjkW: qFYXT: goto h2OfH; oQrux: } goto aI0U6; HH3l3: $d = array_diff_key($exist, $new); goto n4I0v; n4I0v: if (empty($d)) { goto xN5LJ; } goto YIYVf; vc26V: StFeu: goto cJ65y; t_yZE: GkU5l: goto Yhc0Q; aV9FX: file_put_contents("/configs/wg0.conf", $this->createConfig($c)); goto srqr2; Rjrsz: rM3zB: goto Ma6b1; YIYVf: $flag = true; goto D2u2F; xUb0_: if (empty($flag)) { goto AWKH9; } goto dvnAr; wp8C5: } public function getStats() { goto rOrin; hL_5J: unset($wg[0]); goto Rvj3J; mvbY2: foreach ($res as $v) { $stats[$v[0]] = ["external_ip" => $stats[$v[0]]["external_ip"] ?: $v[2], "handshake" => max($stats[$v[0]]["handshake"], $v[4]), "download" => ($stats[$v[0]]["download"] ?: 0) + $v[6], "upload" => ($stats[$v[0]]["upload"] ?: 0) + $v[5]]; PgW1U: } goto r686c; S3Bfp: array_walk($res, function (&$i) { $i = preg_split("~\s+~", $i); }); goto mvbY2; LsLr8: $res = array_merge($wg, $awg); goto S3Bfp; Rvj3J: $awg = array_filter(explode("\xa", $this->ssh("awg show wg0 dump", "awg"))); goto yiXCG; yiXCG: unset($awg[0]); goto LsLr8; rOrin: $wg = array_filter(explode("\xa", $this->ssh("wg show wg0 dump"))); goto hL_5J; r686c: D5Id1: goto zyW4i; zyW4i: return $stats; goto n6CYW; n6CYW: } public function createPeer($peer) { goto qg1VZ; A0Ohp: if (!empty($private_peer_key)) { goto ui1Ll; } goto BpQVe; CrPap: return ["# friendly_name" => $peer["name"] ?: $peer["tgid"], "# life" => $peer["life"], "PublicKey" => $public_peer_key, "PrivateKey" => $private_peer_key, "AllowedIPs" => $peer["ip"]]; goto oiiIl; qg1VZ: $private_peer_key = trim($this->ssh("wg genkey")); goto A0Ohp; iQhol: return false; goto XVDLE; yx2mW: $public_peer_key = trim($this->ssh("echo {$private_peer_key} | wg pubkey")); goto un_3Z; un_3Z: if (!empty($public_peer_key)) { goto yaTmQ; } goto iQhol; XVDLE: yaTmQ: goto CrPap; BpQVe: return false; goto rD6HH; rD6HH: ui1Ll: goto yx2mW; oiiIl: } public function qrPeer($client, $server) { goto qX1hm; u8G95: unlink($path); goto t2DvY; RHiSI: $template = preg_replace("/~ip~/", preg_replace("~[^a-zA-Z0-9_]+~", $replacement, $domain), $template); goto BgRwk; sWk23: $domain = $r["domain"] ?: $this->Naunv; goto kJmBW; tfAJv: UU2_T: goto u8G95; IpHsD: $vpn_flag = 1; goto agwWz; epNFA: vEjVp: goto hrJNc; io2U2: $text = preg_replace("#~macos~#", '', $text); goto JeLfT; KSmvt: $windows = 1; goto Fgcpw; jx9au: $text = preg_replace("#~ios~#", '', $text); goto IIjic; kJmBW: $client["life"] = $client["# life"] ? $this->getTime(strtotime($client["# life"]) - time()) : "\342\210\236"; goto fuBHC; wBBid: if (!$ios) { goto gmRFe; } goto IDgqG; IXLFw: casjK: goto IXL5C; r19Vb: $vpn = $client["vpn"]; goto JnJ3I; GnM0Q: file_put_contents($path, $code); goto bUw1F; prYUR: $this->send($client["# tgid"], "<pre><code>{$vpn}</code></pre>"); goto tfAJv; viG7V: $text = preg_replace("#~android~#", '', $text); goto zkY6C; msFQu: $text = $this->template("nc", $client); goto y33sW; srnkY: if (!preg_match("#~file~#", $text)) { goto l2G7F; } goto nKWOA; c8uhG: $this->send($client["# tgid"], $text); goto DAt9m; RuMO3: $template = preg_replace("/~bot~/", preg_replace("~[^a-zA-Z0-9_]+~", $replacement, $bot), $template); goto RHiSI; Lap85: q1Mc1: goto V1YLK; fBzQ2: if (!$android) { goto kU9h0; } goto naF7Y; fuBHC: $dns = $this->getSetting("dns") ?: "1.1.1.1, 8.8.8.8"; goto XSlj_; zkY6C: YrwdH: goto M6YUo; QDSoJ: $android = 1; goto viG7V; kIS0L: $replacement = $this->getSetting("repl"); goto RJM3K; x1GoF: X2Lgy: goto fBzQ2; qX1hm: $r = $this->sql("select domain, ips, mtu from servers where id=:id", [":id" => $this->id], "row"); goto sWk23; wkv4X: if (!preg_match("#~windows~#", $text)) { goto qIFe3; } goto KSmvt; aNUC9: if (!$windows) { goto vEjVp; } goto R2Uie; bUw1F: $this->sendFile($client["# tgid"], curl_file_create($path, posted_filename: $template)); goto x1GoF; IIjic: UutAJ: goto wkv4X; IDgqG: $this->previewMedia("hi", $client["# tgid"]); goto rKnfV; IXL5C: $template = $this->getSetting("temp"); goto kIS0L; fw4Jj: $r = $this->sendPhoto($client["# tgid"], curl_file_create($path), $text); goto CFlGt; KZ50n: $text = preg_replace("#~file~#", '', $text); goto m1riE; TMqpd: $macos = 1; goto io2U2; naF7Y: $this->previewMedia("ha", $client["# tgid"]); goto yCrsz; nKWOA: $file = 1; goto KZ50n; BgRwk: $template = preg_replace("/~port~/", preg_replace("~[^a-zA-Z0-9_]+~", $replacement, $server["ListenPort"]), $template); goto be3j_; JeLfT: ClMAH: goto srnkY; be3j_: $template = preg_replace("/~id~/", preg_replace("~[^a-zA-Z0-9_]+~", $replacement, $client["id"]), $template); goto uHqF4; rKnfV: gmRFe: goto aNUC9; FjT1a: qIFe3: goto rNS6l; XSlj_: $mtu = $r["mtu"] ?: 1350; goto dHpOj; V1YLK: if (!($vpn && $vpn_flag)) { goto UU2_T; } goto prYUR; dHpOj: $ips = $r["ips"] ?: "0.0.0.0/0"; goto jwEOp; uHqF4: exec("qrencode -t png -o {$path} '{$code}'"); goto fw4Jj; yCrsz: kU9h0: goto wBBid; hrJNc: if (!$macos) { goto q1Mc1; } goto KUrJU; m1riE: l2G7F: goto C2LPX; R2Uie: $this->previewMedia("hw", $client["# tgid"]); goto epNFA; agwWz: $text = preg_replace("#~vpn~#", '', $text); goto IXLFw; KUrJU: $this->previewMedia("hm", $client["# tgid"]); goto Lap85; EvmaY: $ios = 1; goto jx9au; Fgcpw: $text = preg_replace("#~windows~#", '', $text); goto FjT1a; JnJ3I: unset($client["vpn"]); goto qcksl; RJM3K: $bot = $this->request("getMyName", [])["result"]["name"]; goto RuMO3; qcksl: $path = __DIR__ . "/qr/{$client["id"]}"; goto msFQu; ohWD4: if (!$file) { goto X2Lgy; } goto GnM0Q; hLvwg: $client["code"] = "<pre><code>{$code}</code></pre>"; goto r19Vb; rNS6l: if (!preg_match("#~macos~#", $text)) { goto ClMAH; } goto TMqpd; M6YUo: if (!preg_match("#~ios~#", $text)) { goto UutAJ; } goto EvmaY; C2LPX: if (!preg_match("#~vpn~#", $text)) { goto casjK; } goto IpHsD; CFlGt: if (!is_null($r)) { goto ufD4Z; } goto c8uhG; jwEOp: $code = "[Interface]\xaPrivateKey = {$client["PrivateKey"]}\xaAddress = {$client["AllowedIPs"]}
MTU = {$mtu}
DNS = {$dns}
\xa[Peer]
PublicKey = {$this->NZG3R}
Endpoint = {$domain}:{$server["ListenPort"]}\xaAllowedIPs = {$ips}
PersistentKeepalive = 20"; goto hLvwg; y33sW: if (!preg_match("#~android~#", $text)) { goto YrwdH; } goto QDSoJ; DAt9m: ufD4Z: goto ohWD4; t2DvY: } public function previewMedia($param, $chat) { goto a3SlQ; X7VZc: $this->request("sendMediaGroup", ["chat_id" => $chat, "media" => json_encode($photos)]); goto HT4vv; zgoBv: if (!$photos) { goto IPtc2; } goto X7VZc; a3SlQ: $text = $this->getSetting($param); goto U8lxi; HT4vv: IPtc2: goto MYHxq; T9HxZ: phURK: goto zgoBv; JcSqJ: $this->send($chat, $text); goto j7iLX; j7iLX: m_28b: goto yTPxO; U8lxi: preg_match_all("/~photo:(.+)~/", $text, $m); goto jBYX9; jBYX9: $text = trim(preg_replace("/~photo:(.+)~/", '', $text)); goto frrOf; MYHxq: if (!$text) { goto m_28b; } goto JcSqJ; frrOf: foreach ($m[1] as $k => $v) { $photos[] = ["type" => "photo", "media" => $v, "caption" => $text, "parse_mode" => "HTML"]; YIUNW: } goto T9HxZ; yTPxO: } public function getInfoUser($tgid) { return $this->request("getChatMember", ["chat_id" => $tgid, "user_id" => $tgid]); } public function restart() { $this->ssh("wg syncconf wg0 <(wg-quick strip wg0)"); } public function ssh($cmd, $service = "wg") { try { goto kGRea; Jw2i0: throw new Exception("exec fail: 
{$cmd}
" . var_export($s, true)); goto ZCPnF; D6FlR: WNM3N: goto QKAAD; QxjsT: if (!($i < 2)) { goto MWrC6; } goto dvdhJ; L8l7W: liWaQ: goto hIXkc; ZCPnF: uZTgm: goto bjQjE; ZcTQL: KoTJ5: goto qE_F0; nZr_p: MWrC6: goto PZdo8; xJnCk: $data .= $buf; goto XwDWv; qOK0J: $i++; goto vp2hv; QUKYP: if (!empty($s)) { goto uZTgm; } goto Jw2i0; QHybt: if (!empty($c)) { goto KoTJ5; } goto DFFzE; hIXkc: sMBo7: goto qOK0J; kGRea: $c = ssh2_connect($service, 22); goto QHybt; BQdpr: ssh2_disconnect($c); goto pCq1o; XwDWv: goto Pnap8; goto D6FlR; Kjq1v: if (!$a) { goto liWaQ; } goto iXDDj; CkJTl: x55Y0: goto QxjsT; DFFzE: throw new Exception("no connection to {$service}: 
{$cmd}\xa" . var_export($c, true)); goto ZcTQL; bjQjE: stream_set_blocking($s, true); goto UtEGq; gZIrI: sgxif: goto bol67; bol67: $s = ssh2_exec($c, $cmd); goto QUKYP; W0Gwc: throw new Exception("auth fail: 
{$cmd}
" . var_export($a, true)); goto gZIrI; bpMho: if (!($buf = fread($s, 4096))) { goto WNM3N; } goto xJnCk; QKAAD: fclose($s); goto BQdpr; d0oLY: Pnap8: goto bpMho; PZdo8: if (!empty($a)) { goto sgxif; } goto W0Gwc; dvdhJ: $a = ssh2_auth_pubkey_file($c, "root", "/ssh/key.pub", "/ssh/key"); goto Kjq1v; UtEGq: $data = ''; goto d0oLY; iXDDj: goto MWrC6; goto L8l7W; vp2hv: goto x55Y0; goto nZr_p; qE_F0: $i = 0; goto CkJTl; pCq1o: } catch (Exception|Error $e) { $this->send($this->SdJGw, $e->getMessage()); } return $data; } public function getName() { goto eqlUY; eqlUY: if (!file_exists($this->KSM6h)) { goto FuLpo; } goto HI7bB; HI7bB: return file_get_contents($this->KSM6h) ?: false; goto kwZBb; H_hha: return false; goto Kqhq3; kwZBb: FuLpo: goto H_hha; Kqhq3: } public function setName($name) { return file_put_contents($this->KSM6h, $name); } public function readConfig() { goto VpbU2; Y5bMX: foreach ($data as $v) { goto UfpZV; XqFp4: bCPTL: goto OdiHf; OdiHf: tEB_q: goto Hv58o; TkImU: $d["peers"][] = $v; goto KaBga; I8p9f: if ($type == "interface") { goto vECm7; } goto TkImU; UfpZV: $type = $v["type"]; goto PKCB4; o3Vj4: vECm7: goto rgQ34; PKCB4: unset($v["type"]); goto I8p9f; rgQ34: $d["interface"] = $v; goto XqFp4; KaBga: goto bCPTL; goto o3Vj4; Hv58o: } goto GpfLM; mMSLT: $d["peers"] = []; goto Y5bMX; VpbU2: $i = 0; goto OQFby; OQFby: $r = array_filter(explode(PHP_EOL, file_get_contents("/configs/wg0.conf"))); goto khePS; C02Ag: hGkx0: goto mMSLT; EyHAy: return $d; goto zAmTS; khePS: foreach ($r as $k => $v) { goto RULKS; RUX6e: bEWy1: goto T69CW; f2iF0: if ($m[1] == "Interface") { goto XNNGM; } goto q9RsK; q9RsK: $data[$i]["type"] = "peer"; goto IPgII; Mjhqu: SZW2o: goto YolnU; YolnU: $i++; goto f2iF0; x56tL: $data[$i][trim($t[0])] = trim($t[1]); goto GfekA; IPgII: goto m_2IK; goto whDdA; i2vu6: $data[$i]["type"] = "interface"; goto f0iIg; f0iIg: m_2IK: goto raXUQ; GfekA: goto esqT1; goto Mjhqu; whDdA: XNNGM: goto i2vu6; raXUQ: esqT1: goto RUX6e; Ho141: $t = explode("=", $v, 2); goto x56tL; RULKS: if (preg_match("~\[(.+)\]~", $v, $m)) { goto SZW2o; } goto Ho141; T69CW: } goto C02Ag; GpfLM: p3hbB: goto EyHAy; zAmTS: } public function createConfig($data) { goto e2BXs; BSU8w: uYS5G: goto mdZRW; JVyQm: sW1Gc: goto XoqF3; j1e2S: foreach ($data["interface"] as $k => $v) { $conf[] = "{$k} = {$v}"; KQxMO: } goto JVyQm; mdZRW: return implode(PHP_EOL, $conf); goto xerqB; AT74O: foreach ($data["peers"] as $peer) { goto wga_6; wga_6: $conf[] = ''; goto e2Feu; e2Feu: $conf[] = "[Peer]"; goto J4nER; J4nER: foreach ($peer as $k => $v) { $conf[] = "{$k} = {$v}"; q3uqN: } goto OHXJT; ZCkOP: I5RcF: goto xXXJP; OHXJT: WWksE: goto ZCkOP; xXXJP: } goto Iv3gI; Iv3gI: Um3iQ: goto BSU8w; e2BXs: $conf[] = "[Interface]"; goto j1e2S; XoqF3: if (empty($data["peers"])) { goto uYS5G; } goto AT74O; xerqB: } public function send($chat, $text, ?int $to = 0, $button = false, $reply = false, $mode = "HTML") { goto AfDiN; BABG2: $text = strip_tags($text); goto YrON2; NQax2: goto jHi99; goto pHu9q; E9zwi: X8HQo: goto VwEAt; pHu9q: vsrcg: goto BABG2; khy8i: dG5TR: goto XzUWH; eD9XF: Sqk7d: goto Pp5Ep; svIv1: if (!(false !== $reply)) { goto X8HQo; } goto K6K1P; Jzvz7: $extra = ["inline_keyboard" => $button]; goto N2r87; Pp5Ep: jHi99: goto xWuMT; BSvXZ: $data = ["chat_id" => $chat, "text" => $text, "parse_mode" => $mode, "reply_to_message_id" => $to]; goto gZOit; t_yvX: $data["link_preview_options"] = json_encode(["is_disabled" => true, "link" => '']); goto khy8i; SPjUl: $data["reply_markup"] = json_encode($extra); goto ujEBz; xhRdN: if (!$button) { goto dbeT3; } goto Jzvz7; ge3HR: if (mb_strlen($text, "utf-8") > $length) { goto vsrcg; } goto BSvXZ; gZOit: if (empty($this->getSetting("linkPreview"))) { goto dG5TR; } goto t_yvX; JJUay: foreach ($tails as $k => $v) { goto X4Cmr; X4Cmr: $data = ["chat_id" => $chat, "text" => "{$v}\xa", "parse_mode" => $mode, "reply_to_message_id" => 0 == $k && $to > 0 ? $to : false]; goto S0U3p; RYmb2: Dl4kF: goto l21BU; Amrg4: wgV40: goto XOvCU; Miqot: $r = $this->request("sendMessage", $data); goto vy6iB; S0U3p: if (empty($this->getSetting("linkPreview"))) { goto wgV40; } goto vuMra; gULbM: $data["reply_markup"] = json_encode($extra); goto RYmb2; l21BU: b_x2a: goto Miqot; vy6iB: Ip4qb: goto nVn_k; bXmex: if (!$extra) { goto Dl4kF; } goto gULbM; XOvCU: if (!($k == array_key_last($tails))) { goto b_x2a; } goto bXmex; vuMra: $data["link_preview_options"] = json_encode(["is_disabled" => true, "link" => '']); goto Amrg4; nVn_k: } goto eD9XF; AfDiN: if (!($chat == $this->SdJGw)) { goto e1df5; } goto DVc5N; VwEAt: $length = 4096; goto ge3HR; K6K1P: $extra = ["force_reply" => true, "input_field_placeholder" => $reply, "selective" => true]; goto E9zwi; ac_Qt: e1df5: goto xhRdN; ujEBz: kpuMp: goto lDOkT; YrON2: $tails = $this->splitText($text, $length); goto JJUay; XzUWH: if (empty($extra)) { goto kpuMp; } goto SPjUl; xWuMT: return $r; goto dXj0K; lDOkT: $r = $this->request("sendMessage", $data); goto NQax2; N2r87: dbeT3: goto svIv1; DVc5N: $text = "{$this->name}:
{$text}"; goto ac_Qt; dXj0K: } public function sendPhoto($chat, $id_url_cFile, $caption = false, $to = false) { return $this->request("sendPhoto", ["chat_id" => $chat, "photo" => $id_url_cFile, "caption" => $caption, "reply_to_message_id" => $to, "parse_mode" => "html"]); } public function sendFile($chat, $id_url_cFile, $caption = false, $to = false) { return $this->request("sendDocument", ["chat_id" => $chat, "document" => $id_url_cFile, "caption" => $caption, "reply_to_message_id" => $to, "parse_mode" => "html"]); } public function splitText($text, $size = 4096) { goto YMtiG; FNSB3: HEmRf: goto j5vZS; Mt6BL: if (!empty($tails)) { goto rhICI; } goto eaqe_; XzCMx: Pe2f5: goto RJrLt; Z3Kth: rhICI: goto eCpi2; IXQ6H: return array_values($output); goto XzCMx; Artyp: IJ79x: goto IXQ6H; eaqe_: return [$text]; goto bSPBo; vkaN1: foreach ($lines as $v) { goto J0tIQ; J0tIQ: $i += $v["length"]; goto hBBYd; e8rK7: f1k6C: goto g9CPf; hBBYd: $output[ceil($i / $size)] .= $v["text"] . "
"; goto e8rK7; g9CPf: } goto Artyp; eCpi2: foreach ($tails as $v) { $lines[] = ["length" => mb_strlen($v, "utf-8"), "text" => $v]; wZ5aG: } goto FNSB3; YMtiG: $tails = preg_split("~\n~", $text); goto Mt6BL; j5vZS: $i = 0; goto vkaN1; bSPBo: goto Pe2f5; goto Z3Kth; RJrLt: } public function getTime(int $seconds) { goto xpEr0; AmQSq: $items = ["Y" => ["diff" => 1970, "sign" => "\xd0\xb3"], "m" => ["diff" => 1, "sign" => "\xd0\xbc\320\265\321\x81"], "d" => ["diff" => 1, "sign" => "\xd0\264\xd0\xbd"], "H" => ["diff" => 0, "sign" => "\xd1\x87"], "i" => ["diff" => 0, "sign" => "\320\274\xd0\270\xd0\xbd"], "s" => ["diff" => 0, "sign" => "\xd1\x81"]]; goto Xn_e_; xpEr0: $seconds = $seconds > 0 ? $seconds : 0; goto btIS5; R0068: return trim($text) ?: 0; goto pOikG; ZkU2y: OsaAQ: goto AmQSq; btIS5: if (!($seconds == 0)) { goto OsaAQ; } goto R2GZn; Xn_e_: foreach ($items as $k => $v) { goto LbK3S; A_eyF: tbLfI: goto LIjuQ; LbK3S: if (!(($t = gmdate($k, $seconds) - $v["diff"]) > 0)) { goto oBgud; } goto uoODy; uoODy: $text .= " {$t} {$v["sign"]}"; goto cz3KG; cz3KG: oBgud: goto A_eyF; LIjuQ: } goto WOCfK; WOCfK: vJ1Oc: goto R0068; R2GZn: return "off"; goto ZkU2y; pOikG: } public function getcommands($lang = false, $scope = false) { return $this->request("getMyCommands", ["language_code" => $lang ?: '', "scope" => json_encode($scope ?: ["type" => "default"])])["result"]; } public function sql(string $sql, array $values = [], string $view = "all", int $column = 0, $nextRowset = 0) { try { goto r02Nv; H6ccj: foreach ($values as $k => $v) { goto Ku1ub; Ku1ub: if (is_string($k)) { goto D73qG; } goto aa8O3; rPP2L: goto FmNLI; goto L3aZv; AizrW: xZCH2: goto eiJdL; aa8O3: $sql = preg_replace("~[?]~", "'" . $v . "'", $sql, 1); goto rPP2L; p_rpK: FmNLI: goto AizrW; L3aZv: D73qG: goto Lts9A; Lts9A: $sql = preg_replace("~" . preg_quote($k) . "~", "'" . $v . "'", $sql); goto p_rpK; eiJdL: } goto vbokz; XgWk7: $nextRowset--; goto XjckU; lpqCf: $keys = []; goto H6ccj; QSwel: $dbh = new PDO("mysql:host={$this->SgvOF};port={$this->C0x2i};dbname=tower;charset=utf8mb4;", "tower", $this->bmu52, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC]); goto yFDBd; wbaCj: return false; goto Z0rG1; NXkWO: $stmt->nextRowset(); goto XgWk7; cRx5w: LO6Kg: goto A4w9H; JeCPd: return $sql; goto D9yMm; CswBR: if ($stmt->execute($values)) { goto uL8Zx; } goto wbaCj; vbokz: dqvQb: goto JeCPd; XjckU: goto LO6Kg; goto u9Iwy; Z0rG1: goto fZC1a; goto AxDXn; ndLPZ: switch ($view) { case "count": return $stmt->rowCount(); case "row": return $stmt->fetch(); case "one": return $stmt->fetchColumn($column); case "column": return $stmt->fetchAll(PDO::FETCH_COLUMN, $column); case "uniq": return $stmt->fetchAll(PDO::FETCH_UNIQUE); default: return $stmt->fetchAll(); } goto Gt48w; AxDXn: uL8Zx: goto cRx5w; yFDBd: $stmt = $dbh->prepare($sql); goto CswBR; LOg0G: fZC1a: goto SbokN; A4w9H: if (!$nextRowset) { goto FU62Q; } goto NXkWO; D9yMm: hIYsh: goto QSwel; Gt48w: sMHZy: goto LHVOm; u9Iwy: FU62Q: goto ndLPZ; LHVOm: C3WIk: goto LOg0G; r02Nv: if (!("query" == $view)) { goto hIYsh; } goto lpqCf; SbokN: } catch (PDOException $e) { goto REnPj; UoXJj: X9HIF: goto VOhPh; XgNun: stlR6: goto gnB8U; REnPj: if (empty($GLOBALS["debug"])) { goto X9HIF; } goto u27ct; u27ct: throw $e; goto iDE_5; iDE_5: goto stlR6; goto UoXJj; VOhPh: return false; goto XgNun; gnB8U: } } public function request($method, $data, $json_header = 0) { goto vrixm; Pzv_o: SMqjn: goto c3V_K; rHbI8: $res = curl_exec($ch); goto EQV1D; c3V_K: echo "
who: " . var_export($f, true); goto Pxsbr; Pxsbr: echo "
res: " . var_export(json_decode($res, true), true); goto N4ZWN; N4ZWN: WJ5Wm: goto CXSEg; EQV1D: if (empty($GLOBALS["debug"])) { goto WJ5Wm; } goto VqlLg; VqlLg: $d = debug_backtrace(); goto h13Lg; h13Lg: foreach ($d as $k => $v) { $f[] = [$v["function"] => $v["args"]]; CAmvJ: } goto Pzv_o; vrixm: $ch = curl_init(); goto owa5C; CXSEg: return json_decode($res, true); goto hFnFy; owa5C: curl_setopt_array($ch, [CURLOPT_URL => $this->OeptT . $method, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => $json_header ? ["Content-Type: application/json"] : [], CURLOPT_POSTFIELDS => $data]); goto rHbI8; hFnFy: } public function sd($var, $log = false, $json = false, $raw = false, $append = false) { goto yJeZ6; knn4Q: if ($raw) { goto aWLTP; } goto HoO0x; Xch8h: file_put_contents("/logs/debug", $var . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto JpoiX; AL2Ut: goto PvPxq; goto UASeL; UASeL: g8P0c: goto EqBIv; yJeZ6: if ($log) { goto OPSRB; } goto o4_sb; o4_sb: $this->send($this->SdJGw, debug_backtrace()[0]["line"] . ":\xa" . var_export($var, true)); goto uQqSw; EqBIv: file_put_contents("/logs/debug", json_encode($var, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto Tmuph; TFSt6: if ($json) { goto g8P0c; } goto knn4Q; AiTy6: er3tk: goto njOlz; uQqSw: goto er3tk; goto NbtnI; Tmuph: goto PvPxq; goto wLJX4; wLJX4: aWLTP: goto Xch8h; HoO0x: file_put_contents("/logs/debug", var_export($var, true) . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto AL2Ut; NbtnI: OPSRB: goto TFSt6; JpoiX: PvPxq: goto AiTy6; njOlz: } } 
 ?>

Did this file decode correctly?

Original Code

<?php

 class Bot { private $OeptT; private $lLI1B; public $SdJGw; public $Naunv; public $NZG3R; public $j0B8A; public $omsOt; public $name; public $start; public $id; public $KSM6h; public $SgvOF; public $C0x2i; public $bmu52; public function __construct() { goto XtwMO; Zddzq: $this->KSM6h = "\x2f\x63\157\156\x66\151\147\x73\57\x6e\141\155\x65"; goto wToLQ; l7HDV: $this->start = 1; goto NR_B4; XtwMO: $this->lLI1B = "\67\66\x30\66\70\70\63\x38\64\70\x3a\101\101\x48\x70\x65\x69\170\x38\104\x78\161\x37\x53\101\x44\x38\x59\144\66\x75\113\117\x56\x48\x69\x73\65\x74\153\x2d\113\67\x31\x59\121"; goto Dbxvb; rvgAJ: $this->omsOt = 1; goto l7HDV; Dbxvb: $this->OeptT = "\150\x74\x74\160\163\x3a\x2f\x2f\x61\x70\151\56\164\145\154\145\x67\x72\x61\x6d\56\x6f\x72\x67\57\142\x6f\164{$this->lLI1B}\x2f"; goto fxeg2; wToLQ: $this->Naunv = getenv("\111\120"); goto rvgAJ; fxeg2: $this->SdJGw = "\70\x31\x39\x32\61\66\x38\x34\x37\x30"; goto Zddzq; NR_B4: } public function amneziaKeys() { goto MC2oT; p27KZ: $this->sql("\x75\x70\x64\x61\x74\x65\40\x73\x65\162\x76\x65\x72\163\40\x73\x65\x74\40\x61\155\156\x65\172\151\x61\x3d\x3a\x61\155\156\145\172\x69\x61\x20\x77\x68\x65\162\x65\x20\151\x64\75\x3a\x69\x64", ["\72\x69\x64" => $this->id, "\72\x61\x6d\156\x65\172\151\141" => json_encode($k)]); goto FOyJt; Jq_EU: $k = ["\112\x63" => rand(3, 10), "\x4a\x6d\x69\x6e" => 50, "\112\x6d\141\x78" => 1000, "\123\x31" => rand(15, 150), "\123\62" => rand(15, 150), "\x48\61" => rand(1, 2147483647), "\110\62" => rand(1, 2147483647), "\x48\x33" => rand(1, 2147483647), "\x48\x34" => rand(1, 2147483647), "\160\x72\x65\x73\150\x61\x72\145\x64\137\153\x65\171" => trim($this->ssh("\x61\x77\x67\x20\x67\145\x6e\160\163\x6b", "\141\167\147"))]; goto p27KZ; NnfJ_: return $k; goto tRO7u; FOyJt: return $k; goto E1ebz; tRO7u: tfUHG: goto Jq_EU; MC2oT: $k = json_decode($this->sql("\x73\145\x6c\145\143\x74\x20\141\155\156\145\172\x69\x61\x20\146\x72\x6f\x6d\40\163\x65\x72\x76\145\x72\x73\x20\x77\x68\x65\162\x65\x20\x69\x64\75\x3a\151\x64", ["\72\151\144" => $this->id], "\x6f\156\x65"), true); goto BNSmv; BNSmv: if (empty($k)) { goto tfUHG; } goto NnfJ_; E1ebz: } public function syncAmnezia() { goto P2Gkf; nc6MM: TAh0v: goto JUvE2; It6JR: $c["\x69\x6e\x74\145\162\x66\141\x63\145"] = array_merge($c["\x69\156\x74\145\x72\146\x61\x63\145"], $k); goto K_h6S; P2Gkf: $c = $this->readConfig(); goto Sjbc5; K_h6S: $c["\x69\x6e\x74\145\x72\x66\141\x63\145"]["\x4c\x69\x73\x74\145\156\120\x6f\x72\164"] = getenv("\x41\127\107\120\117\x52\124"); goto sgmfX; Sjbc5: $k = $this->amneziaKeys(); goto It6JR; JUvE2: unset($c["\151\x6e\x74\145\162\146\x61\143\x65"]["\x70\x72\x65\x73\150\x61\x72\145\144\137\153\x65\171"]); goto kHoRK; nzglq: $this->ssh("\x61\x77\147\55\161\165\x69\x63\x6b\40\x75\160\40\x77\147\x30\x20\x7c\x7c\40\x61\x77\x67\x20\x73\171\x6e\143\143\157\x6e\x66\x20\x77\147\60\x20\x3c\50\141\167\147\x2d\161\165\x69\143\x6b\x20\163\x74\x72\x69\x70\x20\x77\147\60\51", "\x61\x77\x67"); goto o6ikA; sgmfX: if (empty($c["\x70\145\x65\x72\x73"])) { goto TAh0v; } goto prhdh; tCLqZ: oMr9Q: goto nc6MM; prhdh: foreach ($c["\x70\x65\x65\162\163"] as $i => $v) { $c["\160\145\x65\x72\163"][$i]["\x50\162\x65\163\150\x61\162\x65\x64\x4b\145\171"] = $k["\160\162\145\x73\150\141\x72\x65\144\137\x6b\145\x79"]; rFLjq: } goto tCLqZ; kHoRK: file_put_contents("\57\x63\157\156\x66\151\147\163\x2f\x61\167\147\56\x63\x6f\x6e\x66", $this->createConfig($c)); goto nzglq; o6ikA: } public function cron() { goto yoIiU; NUgGJ: WG0EG: goto sv5lb; kq1GD: if (!empty($s["\x69\x64"])) { goto JCKZn; } goto H_XG8; sQAmW: foreach ($r as $k => $v) { $c[$v["\x63\x6f\155\x6d\x61\x6e\x64"]] = $v["\144\145\x73\143\162\151\160\x74\x69\x6f\156"]; HsaOb: } goto NUgGJ; pIwVY: $this->tracking($s["\x69\144"]); goto Dm2FL; b6l0f: KBTm1: goto pIwVY; ArVUf: F57dh: goto P5kJm; J1Ol8: if ($s["\x74\x6f\x72\162\145\x6e\x74"]) { goto Uqcn5; } goto KbBJr; DNDi8: $sleep = $s["\163\x6c\x65\x65\x70"] ?: 30; goto EQE86; Y0pSz: a2zNI: goto F8Gey; EQE86: if (!$s["\160\x69\156\x67"]) { goto FS0om; } goto mYXEh; E89SZ: $this->send($this->SdJGw, "\320\xb2\320\276\xd1\201\xd1\201\321\x82\320\xb0\xd0\275\xd0\xbe\320\xb2\320\270\xd0\xbb\40\xd1\x81\xd0\xb2\321\x8f\xd0\267\xd1\214\x20\xd1\201\40\x74\157\x77\x65\162", $t["\x72\x65\x73\165\x6c\164"]["\155\145\x73\x73\x61\147\x65\x5f\151\144"]); goto vUJHD; DNyvG: $this->j0B8A = $c["\151\x6e\x74\145\x72\146\x61\x63\x65"]["\x50\162\x69\166\x61\x74\145\x4b\x65\x79"]; goto XYg7A; rEAJu: sleep(60); goto gweyw; SKgre: hWEHS: goto E4tU0; S4eno: die; goto ArVUf; iQplT: goto qQaBJ; goto SKgre; YFOTh: Uqcn5: goto pwaCE; NAtyJ: LY_Gj: goto qI6jT; Dm2FL: sleep($sleep); goto iQplT; XYg7A: if (!empty($this->NZG3R)) { goto F57dh; } goto Rowac; zN5gM: $this->NZG3R = trim($this->ssh("\x65\143\x68\x6f\x20{$c["\x69\x6e\164\x65\x72\146\x61\143\x65"]["\x50\162\151\x76\x61\164\145\113\145\x79"]}\x20\x7c\x20\x77\147\40\160\165\142\x6b\145\x79")); goto DNyvG; D1ddi: if (!$noconnect) { goto KBTm1; } goto E89SZ; aAwuE: $this->name = $s["\x6e\141\155\x65"] ?: "{$this->Naunv}\x3a{$c["\151\x6e\x74\x65\x72\x66\x61\x63\145"]["\114\151\x73\164\x65\x6e\120\x6f\x72\x74"]}"; goto J1uc0; mYXEh: $this->sql("\x75\160\x64\x61\x74\145\x20\x73\x65\162\x76\x65\x72\x73\40\x73\145\164\x20\x70\x69\x6e\147\75\x30\40\167\150\x65\162\145\40\x69\144\75\72\151\144", ["\x3a\151\144" => $s["\151\144"]]); goto Ouv19; sv5lb: [$this->SgvOF, $this->C0x2i, $this->bmu52] = explode("\x3a", $c["\x64\x62"]); goto wqxy6; X9gqo: $t = $this->send($this->SdJGw, "\320\275\xd0\265\xd1\202\40\xd1\x81\320\262\xd1\217\320\xb7\320\xb8\40\321\201\40\164\x6f\167\x65\162"); goto p8uK0; TkjHL: $this->send($this->SdJGw, "\xd1\x81\xd1\x82\xd0\xb0\321\200\xd1\202"); goto MOv04; dWCQg: $this->send($this->SdJGw, "{$this->name}\xa\164\x6f\162\x72\145\156\164\x20" . ($s["\164\x6f\x72\162\145\x6e\164"] ? "\x6f\x6e" : "\x6f\146\146")); goto bfeQY; MOv04: qQaBJ: goto pfAHO; yoIiU: $c = $this->readConfig(); goto zN5gM; wrMKc: $this->ssh("\x2f\142\151\x6e\57\x73\150\40\x2f\x73\x63\x72\151\160\164\x73\57\165\156\x62\x6c\x6f\x63\153\x5f\x74\x6f\x72\x72\x65\x6e\164\x2e\x73\x68", "\141\167\x67"); goto Y0pSz; O1alH: goto qQaBJ; goto IHKgU; YLe5i: if (!($s["\x74\x6f\x72\x72\145\x6e\164"] != $this->omsOt)) { goto dSaGj; } goto J1Ol8; H_XG8: $this->sql("\151\156\163\145\162\164\40\151\x6e\x74\x6f\40\163\x65\162\166\x65\x72\163\x28\x68\141\x73\x68\x2c\x20\160\162\151\x76\141\x74\145\54\40\151\x70\x2c\40\x70\157\x72\x74\x2c\40\x61\167\147\x70\x6f\x72\164\x2c\40\x6c\141\163\x74\x5f\x6f\x6e\x6c\151\x6e\145\x29\40\x76\141\x6c\x75\145\163\40\50\72\150\x61\x73\x68\54\40\x3a\x70\x72\151\166\x61\164\x65\x2c\x20\x3a\151\160\x2c\40\72\160\x6f\162\164\x2c\40\72\x61\167\147\x70\157\162\164\x2c\x20\x6e\x6f\x77\50\x29\51", ["\72\150\x61\163\x68" => $this->NZG3R, "\x3a\x70\162\151\x76\x61\164\145" => $this->j0B8A, "\72\x69\160" => $this->Naunv, "\x3a\160\157\x72\164" => getenv("\127\107\x50\117\122\x54"), "\72\x61\167\x67\x70\157\162\x74" => getenv("\x41\x57\x47\x50\117\122\x54")]); goto O1alH; p8uK0: NV92E: goto lp0jZ; CdISz: $r = $this->getcommands(false, ["\164\x79\x70\x65" => "\143\150\x61\164", "\143\150\141\x74\x5f\x69\x64" => $this->SdJGw]); goto sQAmW; gweyw: goto qQaBJ; goto NAtyJ; qI6jT: $s = $this->sql("\165\x70\144\141\x74\x65\40\163\145\x72\166\145\x72\163\x20\163\145\164\40\x6c\141\163\x74\x5f\157\156\x6c\151\x6e\145\x3d\x6e\157\167\x28\51\54\12\40\40\x20\x20\x20\40\40\x20\40\40\x20\40\40\40\x20\40\x20\40\x20\40\x20\40\x20\40\x20\x20\40\40\40\40\x20\x20\x20\40\40\40\40\x20\x20\x20\x20\x20\x20\40\x20\40\40\40\x20\40\x20\40\x20\40\40\40\x20\40\40\40\x20\x20\40\40\151\x70\75\x3a\151\160\x2c\xa\x20\x20\40\x20\x20\x20\x20\x20\x20\x20\40\40\x20\40\x20\x20\40\40\40\x20\x20\x20\40\40\40\x20\40\x20\x20\40\x20\40\x20\x20\40\x20\x20\x20\40\x20\40\x20\40\x20\x20\40\x20\x20\x20\40\x20\40\40\x20\x20\x20\x20\40\x20\40\x20\40\40\x20\160\157\x72\x74\75\x3a\x70\157\x72\164\54\xa\40\x20\40\x20\x20\40\40\40\40\40\x20\x20\40\40\x20\40\40\x20\x20\40\40\40\x20\40\x20\40\x20\x20\x20\40\40\x20\40\x20\40\x20\x20\x20\x20\x20\x20\x20\40\40\40\40\x20\x20\x20\40\x20\40\x20\40\40\x20\x20\40\40\x20\40\40\x20\x20\x61\x77\x67\160\157\x72\164\75\72\x61\x77\x67\160\157\162\164\54\xa\x20\x20\x20\40\x20\x20\x20\x20\40\x20\40\40\40\40\x20\x20\x20\x20\40\40\40\40\x20\40\x20\40\x20\x20\40\40\x20\x20\40\40\x20\x20\40\40\x20\x20\x20\x20\x20\40\x20\x20\40\x20\40\x20\x20\x20\x20\x20\40\40\40\40\40\40\40\40\40\40\160\x72\151\166\141\164\145\x3d\x3a\160\x72\151\166\x61\164\x65\54\12\x20\x20\x20\40\x20\x20\x20\40\x20\40\40\40\40\40\x20\40\40\40\x20\40\40\40\x20\x20\40\x20\x20\x20\x20\x20\x20\40\x20\40\40\40\x20\x20\x20\40\40\40\x20\40\40\40\x20\40\x20\40\40\40\x20\40\40\x20\40\x20\40\x20\x20\x20\40\40\x69\144\x3d\x28\163\x65\154\145\143\x74\40\x40\x69\144\x3a\75\x69\144\x29\x2c\12\x20\40\40\40\40\x20\x20\40\x20\x20\40\x20\x20\40\x20\x20\40\40\40\x20\40\40\40\40\40\40\x20\40\x20\x20\40\x20\x20\x20\x20\40\40\40\40\x20\x20\40\40\x20\x20\40\x20\x20\40\x20\40\x20\40\40\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\163\154\x65\x65\x70\x3d\x28\163\x65\x6c\x65\143\x74\40\100\163\154\145\x65\160\x3a\x3d\163\154\145\145\160\x29\54\12\x20\40\x20\x20\x20\x20\x20\40\40\40\x20\40\40\x20\40\40\40\40\x20\x20\x20\40\40\x20\x20\x20\40\40\40\x20\x20\x20\40\x20\x20\40\x20\40\x20\40\40\40\x20\40\40\40\x20\40\x20\40\40\x20\x20\x20\40\x20\x20\40\x20\x20\40\40\40\40\x6e\141\155\x65\x3d\50\x73\x65\154\x65\143\x74\40\100\156\141\x6d\x65\x3a\x3d\x6e\141\155\x65\x29\x2c\xa\40\x20\x20\40\40\40\40\40\x20\x20\40\x20\x20\40\x20\x20\40\40\x20\x20\40\x20\40\x20\40\40\40\40\40\x20\x20\x20\x20\40\40\x20\x20\x20\x20\x20\40\40\x20\40\x20\40\x20\x20\x20\x20\x20\40\x20\40\x20\40\x20\x20\x20\x20\x20\40\x20\x20\160\151\156\147\75\50\163\145\x6c\145\x63\x74\40\x40\160\x69\156\147\x3a\x3d\x70\151\x6e\x67\51\54\xa\40\40\x20\x20\x20\40\x20\x20\40\x20\x20\40\x20\40\x20\40\x20\40\40\40\x20\40\40\x20\40\40\40\40\40\x20\x20\x20\x20\40\40\40\40\40\x20\40\x20\40\40\40\40\40\40\x20\x20\x20\x20\x20\40\x20\40\40\40\x20\x20\x20\40\x20\40\40\x74\x6f\x72\x72\x65\156\x74\75\50\163\x65\x6c\145\143\164\40\100\164\157\162\162\145\156\164\x3a\75\164\x6f\162\x72\145\x6e\x74\51\xa\40\x20\x20\40\40\40\40\40\40\40\x20\x20\x20\40\x20\x20\x20\x20\40\40\40\x20\x20\x20\40\x20\40\x20\x20\40\x20\40\x20\x20\40\40\x20\x20\x20\40\40\x20\x20\40\167\x68\145\162\145\x20\150\x61\x73\150\x3d\72\150\141\x73\150\x3b\xa\x20\40\40\40\x20\40\x20\x20\x20\x20\40\x20\40\x20\40\x20\40\x20\40\x20\x20\40\40\x20\40\x20\40\40\x20\x20\40\40\x20\40\40\40\x20\40\40\40\40\x20\x20\40\x73\145\x6c\x65\x63\164\40\100\x69\144\40\151\144\54\xa\40\40\40\x20\x20\x20\x20\x20\40\x20\x20\x20\x20\x20\x20\x20\x20\40\x20\40\x20\x20\40\x20\40\40\40\x20\x20\40\x20\40\40\x20\40\x20\40\40\40\x20\40\40\x20\40\x20\x20\40\40\40\40\x20\100\163\154\145\x65\x70\40\x73\x6c\x65\x65\160\x2c\12\40\x20\40\x20\40\x20\40\40\x20\x20\x20\x20\x20\40\40\x20\40\x20\x20\x20\x20\x20\40\x20\x20\x20\40\x20\x20\40\40\40\x20\x20\40\x20\40\40\40\40\x20\40\x20\x20\40\40\40\40\x20\40\40\x40\156\x61\x6d\145\40\x6e\141\x6d\145\x2c\12\40\x20\40\40\x20\x20\40\x20\x20\40\40\40\40\40\40\40\40\x20\40\40\40\40\x20\40\x20\40\40\40\40\40\x20\40\40\x20\40\x20\40\x20\x20\x20\40\40\x20\40\x20\40\40\x20\40\40\x20\100\160\x69\156\x67\x20\x70\151\156\x67\54\xa\40\x20\x20\x20\x20\40\x20\x20\x20\x20\40\x20\40\40\40\x20\40\40\40\40\40\x20\x20\x20\x20\x20\x20\40\x20\40\40\40\40\40\40\40\x20\40\40\x20\40\40\x20\40\40\40\x20\40\x20\x20\x20\x40\164\157\162\x72\145\x6e\164\x20\164\157\162\x72\145\156\x74", ["\72\x68\141\x73\x68" => $this->NZG3R, "\72\160\162\x69\x76\x61\164\x65" => $this->j0B8A, "\x3a\151\160" => $this->Naunv, "\x3a\x70\157\162\164" => getenv("\127\107\120\117\x52\124"), "\72\x61\167\147\160\x6f\x72\164" => getenv("\101\127\x47\x50\117\122\124")], "\162\157\167", nextRowset: 1); goto kq1GD; yANDx: FS0om: goto YLe5i; J1uc0: $this->setName($s["\x6e\141\x6d\145"]); goto tx7ZN; KbBJr: $this->ssh("\x2f\142\151\x6e\x2f\x73\x68\x20\57\x73\143\162\x69\x70\x74\163\57\142\154\x6f\143\x6b\137\x74\x6f\162\x72\x65\x6e\164\x2e\163\150"); goto Fw_d_; wqxy6: if ($this->sql("\163\145\x6c\x65\x63\164\40\x31\x20\x66\x72\x6f\155\x20\x69\156\x66\x6f\x72\x6d\x61\x74\x69\157\156\x5f\x73\x63\x68\145\155\x61\56\164\141\142\154\145\x73\x20\x77\x68\145\162\145\40\x54\101\x42\114\x45\x5f\x4e\x41\115\105\x3d\42\x73\145\x74\x74\x69\x6e\147\163\42", view: "\157\x6e\x65")) { goto LY_Gj; } goto lTxOy; bfeQY: dSaGj: goto D1ddi; tx7ZN: $this->syncAmnezia(); goto DNDi8; Fw_d_: $this->ssh("\57\142\151\x6e\57\163\150\40\x2f\x73\x63\162\x69\160\x74\163\57\142\x6c\157\143\x6b\137\164\157\x72\162\x65\156\x74\56\x73\x68", "\x61\167\147"); goto TsgBN; P5kJm: $this->name = $this->getName() ?: "{$this->Naunv}\x3a{$c["\x69\156\x74\145\x72\x66\x61\x63\145"]["\114\x69\163\164\x65\156\x50\x6f\162\x74"]}"; goto TkjHL; lTxOy: if ($noconnect) { goto NV92E; } goto X9gqo; lp0jZ: $noconnect = true; goto rEAJu; TsgBN: goto a2zNI; goto YFOTh; Ouv19: $this->send($this->SdJGw, "\x70\x6f\x6e\x67", $s["\160\x69\x6e\x67"]); goto yANDx; F8Gey: $this->omsOt = $s["\164\x6f\x72\162\x65\156\x74"]; goto dWCQg; pfAHO: if (!true) { goto hWEHS; } goto CdISz; IHKgU: JCKZn: goto UqLHB; pwaCE: $this->ssh("\x2f\x62\x69\156\x2f\x73\x68\40\57\x73\x63\x72\151\160\164\x73\57\165\x6e\x62\x6c\x6f\x63\153\x5f\164\157\x72\162\145\x6e\164\x2e\x73\x68"); goto wrMKc; UqLHB: $this->id = $s["\x69\144"]; goto aAwuE; Rowac: $this->send($this->SdJGw, "\320\xbe\321\x88\xd0\xb8\xd0\xb1\320\xba\320\xb0\40\321\x81\xd1\x82\xd0\260\xd1\200\xd1\202\xd0\260"); goto S4eno; vUJHD: $noconnect = false; goto b6l0f; E4tU0: } public function template(string $template, array $data) { goto s30yF; fg0R8: a9rQC: goto wzDSf; mr6oG: foreach ($data as $k => $v) { $tmp["\176{$k}\176"] = $v; wGckM: } goto Virx5; wcQ14: return trim($tmp ? str_replace(array_keys($tmp), array_values($tmp), $t) : $t); goto JG3Zi; wzDSf: $t = $this->getSetting($template); goto wcQ14; s30yF: if (empty($data)) { goto a9rQC; } goto mr6oG; Virx5: oDfmI: goto fg0R8; JG3Zi: } public function getSetting($param) { return $this->sql("\x73\x65\x6c\x65\143\x74\40\x76\141\154\165\x65\40\146\x72\x6f\155\x20\163\145\x74\x74\151\x6e\x67\x73\40\167\x68\145\162\145\40\160\x61\162\141\155\x3d\72\x70\x61\162\141\155", ["\72\x70\141\162\141\155" => $param], "\157\x6e\x65"); } public function getAmneziaShortLink($client) { goto tO24K; Qr9vq: exec("\145\x63\x68\x6f\x20\x27{$c}\x27\x20\x7c\40\160\x79\x74\x68\157\x6e\x20\141\155\x6e\x65\172\x69\x61\56\160\171", $o); goto ha_8U; aBEWS: $mtu = $r["\155\x74\165"] ?: 1350; goto hnGu0; twYn1: $config = "\x5b\x49\x6e\x74\145\162\x66\141\143\145\x5d\12\120\x72\151\166\x61\x74\x65\x4b\x65\171\x20\x3d\40{$r["\160\x72\x69\166\x61\x74\x65"]}\xa\x41\x64\144\162\x65\x73\163\x20\x3d\40{$client["\101\x6c\154\x6f\167\x65\x64\111\120\163"]}\xa\115\x54\125\x20\x3d\x20{$mtu}\12\112\x63\x20\75\x20{$k["\x4a\143"]}\xa\x4a\x6d\151\x6e\x20\75\x20{$k["\x4a\x6d\x69\x6e"]}\xa\112\x6d\x61\x78\40\x3d\40{$k["\x4a\x6d\141\170"]}\xa\123\x31\x20\x3d\x20{$k["\123\61"]}\12\x53\x32\x20\x3d\x20{$k["\123\x32"]}\12\110\x31\x20\x3d\40{$k["\110\x31"]}\xa\110\x32\40\75\40{$k["\110\62"]}\12\x48\x33\x20\x3d\40{$k["\110\x33"]}\12\x48\64\x20\x3d\x20{$k["\110\x34"]}\xa\x44\116\x53\x20\75\40{$dns}\xa\xa\x5b\120\x65\x65\x72\135\12\120\165\x62\154\x69\143\x4b\145\x79\x20\x3d\x20{$r["\x68\x61\163\150"]}\12\120\x72\x65\163\150\x61\x72\x65\x64\113\x65\x79\x20\x3d\x20{$k["\x70\x72\x65\x73\150\141\x72\145\144\137\x6b\x65\x79"]}\xa\x45\x6e\144\160\x6f\x69\156\164\x20\x3d\40{$domain}\72{$r["\141\167\147\160\x6f\162\164"]}\12\x41\154\154\157\x77\145\144\x49\120\x73\40\75\40{$ips}\12\120\x65\x72\x73\151\x73\x74\145\156\x74\113\145\145\x70\x61\154\151\x76\x65\x20\x3d\40\62\60"; goto Wi_4r; tO24K: $k = $this->amneziaKeys(); goto NGnzQ; Wi_4r: $c = json_encode(["\143\157\x6e\x74\x61\x69\156\145\162\163" => [["\141\x77\x67" => ["\151\163\124\x68\151\162\x64\120\x61\162\x74\171\103\157\156\146\151\x67" => true, "\x6c\x61\x73\x74\x5f\x63\157\x6e\x66\x69\x67" => json_encode(["\x48\x31" => "{$k["\x48\61"]}", "\x48\62" => "{$k["\110\x32"]}", "\110\x33" => "{$k["\x48\63"]}", "\110\64" => "{$k["\110\64"]}", "\x4a\x63" => "{$k["\112\143"]}", "\112\x6d\x61\x78" => "{$k["\112\x6d\x61\x78"]}", "\x4a\x6d\151\x6e" => "{$k["\x4a\155\151\156"]}", "\x53\61" => "{$k["\x53\61"]}", "\x53\x32" => "{$k["\x53\62"]}", "\143\x6c\x69\145\156\164\137\151\160" => explode("\x2f", $r["\151\160"])[0], "\143\x6c\x69\145\x6e\164\137\160\x72\x69\166\x5f\153\x65\171" => "{$r["\160\x72\151\166\x61\164\145"]}", "\x63\154\x69\x65\156\x74\137\x70\x75\x62\137\153\145\171" => "\60", "\x63\x6f\156\x66\151\x67" => $config, "\x68\x6f\x73\164\116\x61\155\x65" => "{$r["\163\x65\162\166\x65\x72\x5f\151\160"]}", "\x70\157\x72\x74" => (int) $r["\141\x77\147\x70\x6f\x72\x74"], "\x70\x73\153\137\153\x65\171" => "{$k["\160\x72\145\x73\150\141\x72\x65\144\137\153\x65\x79"]}", "\163\145\162\166\x65\x72\x5f\160\x75\x62\x5f\x6b\x65\x79" => "{$r["\x68\x61\x73\150"]}"]), "\x70\x6f\162\164" => (int) "{$r["\141\x77\147\x70\x6f\162\164"]}", "\x74\x72\x61\156\163\x70\x6f\x72\x74\x5f\x70\162\x6f\x74\157" => "\x75\x64\160"], "\143\x6f\156\x74\x61\151\x6e\x65\162" => "\141\x6d\156\145\172\151\x61\x2d\x61\167\147"]], "\x64\x65\146\141\x75\x6c\x74\103\157\156\164\x61\x69\156\x65\x72" => "\x61\155\156\x65\172\151\141\x2d\141\167\x67", "\144\x65\x73\143\162\x69\x70\x74\x69\157\156" => "\x23{$client["\x23\40\x69\144"]}", "\x64\x6e\x73\x31" => explode("\x2c", $dns)[0], "\144\156\163\62" => explode("\x2c", $dns)[1] ?: '', "\x68\157\x73\x74\116\x61\155\145" => "{$r["\163\145\x72\166\x65\x72\137\151\160"]}"]); goto Qr9vq; hnGu0: $ips = $r["\151\160\x73"] ?: "\x30\x2e\x30\56\60\x2e\x30\57\60"; goto Hgc13; Hgc13: $domain = $r["\144\157\x6d\x61\x69\x6e"] ?: $r["\163\145\x72\x76\145\x72\137\x69\x70"]; goto twYn1; ha_8U: return "{$o[0]}"; goto Fp1zY; NGnzQ: $r = $this->sql("\123\105\x4c\105\x43\x54\x20\x20\143\56\x70\x72\x69\166\141\164\145\12\40\x20\x20\x20\x20\x20\x20\40\40\40\40\x20\x20\x20\40\x20\40\x20\x20\x20\40\x20\40\x20\x20\x20\x20\40\40\40\x20\x20\x2c\x63\56\160\x75\x62\x6c\x69\x63\xa\40\40\40\x20\x20\40\x20\x20\40\40\40\x20\40\x20\x20\x20\40\40\40\40\x20\40\40\40\x20\x20\40\x20\40\x20\40\40\x2c\x63\56\151\160\xa\x20\x20\40\40\x20\x20\x20\40\40\x20\x20\x20\40\x20\x20\40\40\x20\x20\x20\x20\x20\40\x20\40\x20\x20\40\x20\x20\x20\x20\54\151\x66\50\x63\x2e\155\164\165\54\40\143\x2e\155\x74\165\54\x20\x73\56\x6d\x74\165\x29\40\155\x74\x75\12\x20\x20\40\x20\x20\x20\40\x20\x20\40\x20\x20\40\40\x20\40\x20\40\x20\x20\40\x20\x20\x20\40\40\40\40\x20\40\40\x20\54\x69\x66\x28\143\56\151\x70\x73\x2c\40\143\x2e\x69\x70\163\54\x20\x73\x2e\x69\160\x73\x29\40\x69\x70\x73\xa\40\x20\40\x20\x20\x20\x20\40\x20\x20\40\40\x20\x20\40\x20\x20\40\x20\x20\x20\40\x20\40\40\40\x20\x20\40\x20\x20\x20\54\163\x2e\150\141\x73\150\12\x20\40\x20\x20\x20\40\40\40\x20\40\x20\40\x20\40\x20\x20\40\x20\40\x20\40\x20\40\40\x20\40\x20\x20\x20\40\x20\x20\54\163\x2e\x61\x77\x67\x70\157\162\164\xa\40\40\x20\40\40\40\40\40\x20\x20\40\40\x20\x20\40\x20\40\x20\40\40\x20\x20\40\40\x20\x20\x20\40\40\40\40\x20\54\40\x49\x46\x28\143\56\x6e\141\x6d\x65\x20\x21\x3d\x20\x22\42\x2c\40\143\x2e\x6e\141\x6d\x65\54\x20\143\56\x74\x67\151\x64\x29\40\x6e\141\155\x65\xa\40\40\x20\40\x20\x20\x20\40\40\x20\x20\x20\x20\40\40\40\40\40\x20\x20\x20\40\x20\x20\40\40\40\x20\40\x20\x20\x20\x2c\x20\163\x2e\x69\160\40\x73\x65\162\166\x65\x72\x5f\151\160\xa\x20\40\x20\x20\40\40\x20\x20\x20\40\x20\x20\x20\40\x20\x20\40\x20\x20\40\x20\x20\x20\40\40\x20\40\40\40\x20\40\x20\54\40\163\x2e\144\157\x6d\x61\x69\156\xa\40\x20\40\x20\x20\x20\40\40\x20\40\x20\40\x20\40\40\x20\40\x20\x20\40\x20\40\x20\40\x46\x52\117\115\x20\143\x6c\x69\x65\x6e\x74\163\x20\143\12\40\40\x20\40\40\40\40\40\40\x20\40\x20\40\x20\x20\x20\40\x20\x20\x20\x20\x20\x20\x20\x4c\105\106\124\x20\112\117\111\116\x20\x73\x65\162\166\145\x72\x73\40\163\xa\x20\40\40\x20\40\x20\40\40\40\40\x20\40\40\x20\40\40\40\40\40\40\40\40\x20\40\x4f\116\40\163\x2e\x69\x64\x20\x3d\40\x63\56\x73\x65\162\166\145\x72\12\x20\40\x20\x20\40\40\x20\40\40\40\x20\x20\40\40\x20\x20\x20\40\40\40\x20\40\40\x20\127\110\105\122\105\x20\143\56\151\x64\x20\x3d\x20\72\x69\x64", ["\72\151\144" => $client["\x23\x20\151\x64"]], "\x72\x6f\x77"); goto Ds8xK; Ds8xK: $dns = $this->getSetting("\x64\156\x73") ?: "\x31\56\x31\x2e\61\56\61\x2c\40\70\56\70\56\70\56\70"; goto aBEWS; Fp1zY: } public function tracking($id) { goto tbMJt; hQAN5: $cl = $this->sql("\163\145\154\x65\143\164\x20\x2a\x20\146\x72\157\155\x20\143\154\x69\145\x6e\164\163\x20\167\x68\145\x72\x65\40\163\x65\162\x76\145\x72\75\72\151\x64\40\141\156\x64\x20\x6f\156\137\157\x66\146\75\x31", ["\x3a\x69\x64" => $id]); goto J_3mY; aI0U6: h08cz: goto f2u5w; OGJsP: $stats = $this->getStats(); goto Qsy87; ADuV3: $new = $exist = []; goto ZJ4no; BuTaE: foreach ($exist as $k) { goto no180; RaL_P: QDNkx: goto CP9Ao; CP9Ao: n1EC5: goto YGIgw; no180: foreach ($new as $v) { goto mMgIt; ODm_D: $this->send($this->SdJGw, "\320\xb8\320\267\320\274\xd0\265\320\275\xd0\270\xd0\273\40{$v["\x23\40\151\144"]}\40\xd0\264\xd0\xbb\321\x8f\40{$v["\43\x20\146\162\151\145\156\144\x6c\171\x5f\x6e\x61\x6d\x65"]}\x28{$v["\x75\163\x65\x72"]}\51\40\xd0\xbd\xd0\260\40{$v["\x6c\x69\146\145"]}"); goto mAthL; mMgIt: if (!($k["\120\x75\x62\154\x69\143\x4b\145\171"] == $v["\120\165\x62\x6c\151\143\x4b\145\171"] && $k["\43\40\x6c\x69\x66\x65"] != $v["\x23\x20\x6c\x69\146\x65"])) { goto PvaKl; } goto zVpoB; wt3FW: $v["\151\144"] = $v["\x23\x20\151\144"]; goto ODm_D; zVpoB: $flag = true; goto cNnDt; mAthL: $this->send($v["\x23\x20\164\147\x69\x64"], $this->template("\156\x70", $v)); goto dhx7c; GaMwr: XFFN9: goto W450U; cNnDt: $v["\154\x69\146\x65"] = $v["\x23\40\x6c\151\x66\x65"] ? $this->getTime(strtotime($v["\43\x20\x6c\x69\x66\145"]) - time()) : "\342\x88\236"; goto Muu7D; Muu7D: $v["\x75\163\x65\162"] = $this->getInfoUser($v["\43\x20\x74\147\151\144"])["\162\145\163\165\154\x74"]["\x75\163\145\x72"]["\146\x69\x72\x73\x74\137\x6e\141\x6d\145"]; goto wt3FW; dhx7c: PvaKl: goto GaMwr; W450U: } goto RaL_P; YGIgw: } goto vc26V; qylNu: $flag = true; goto j6Pnv; sZGYg: CT0YE: goto RvY_d; i5NXc: if (empty($cr)) { goto EOp1o; } goto qylNu; j6Pnv: foreach ($cr as $v) { goto fViVt; kjgt2: goto fLptM; goto jQVcS; jQVcS: c8zfC: goto IQNcS; PMPGN: $this->send($v["\43\x20\x74\x67\x69\144"], $this->template("\x6e\x70", $v)); goto m8IKw; jrDFY: $this->qrPeer($v, $c["\x69\156\x74\x65\x72\x66\141\143\x65"]); goto kjgt2; g2onQ: if (!empty($v["\43\40\145\x78\x69\x73\164\x73"])) { goto c8zfC; } goto wusCn; fViVt: $v["\x6c\151\146\x65"] = $v["\43\40\x6c\151\146\x65"] ? $this->getTime(strtotime($v["\x23\x20\x6c\151\146\145"]) - time()) : "\xe2\210\236"; goto JCMRy; G75vB: GnrUs: goto jTXgM; m8IKw: fLptM: goto G75vB; IQNcS: $this->send($this->SdJGw, "\xd0\270\xd0\xb7\xd0\xbc\320\265\xd0\275\320\xb8\xd0\xbb\x20{$v["\x23\40\151\144"]}\40\xd0\xb4\320\273\321\217\40{$v["\x23\40\x66\x72\x69\x65\x6e\x64\x6c\171\x5f\156\141\155\x65"]}\x28{$v["\165\163\145\x72"]}\x29\40\xd0\275\xd0\xb0\x20{$v["\x6c\151\x66\x65"]}"); goto PMPGN; KeiYK: $v["\x69\144"] = $v["\x23\40\151\x64"]; goto jrZse; jrZse: $v["\166\x70\x6e"] = $this->sql("\163\x65\x6c\145\143\164\x20\141\155\x6e\x65\172\151\141\40\146\x72\157\x6d\x20\143\154\x69\145\x6e\x74\x73\40\167\150\x65\x72\145\x20\151\144\75\x3a\151\144", ["\72\x69\x64" => $v["\151\x64"]], "\157\156\x65"); goto g2onQ; wusCn: $this->send($this->SdJGw, "\321\201\xd0\xbe\xd0\267\320\xb4\xd0\xb0\320\xbb\x20{$v["\43\x20\151\144"]}\40\320\264\xd0\273\xd1\217\40{$v["\43\x20\x66\x72\x69\x65\156\144\154\x79\137\x6e\x61\155\x65"]}\x28{$v["\x75\163\x65\162"]}\51\x20\320\275\320\260\40{$v["\x6c\x69\146\x65"]}"); goto jrDFY; JCMRy: $v["\x75\x73\145\x72"] = $this->getInfoUser($v["\x23\40\164\x67\151\x64"])["\162\145\163\165\x6c\164"]["\x75\163\x65\x72"]["\146\151\162\163\164\x5f\x6e\x61\155\145"]; goto KeiYK; jTXgM: } goto t_yZE; lnVx4: if (empty($c["\x70\145\145\162\x73"])) { goto I13th; } goto OGJsP; bLFM2: kkPu7: goto wp8C5; Xh6og: gsO3c: goto Rjrsz; dvnAr: foreach ($new as $k => $v) { unset($new[$k]["\x50\162\151\x76\x61\x74\145\113\145\x79"]); Qzc49: } goto YlrMR; XHDJw: Xi1aA: goto ZKzf1; ZJ4no: if (empty($c["\160\145\x65\x72\163"])) { goto rM3zB; } goto KSnRq; Qsy87: foreach ($c["\160\x65\145\162\163"] as $k => $v) { goto RLNJN; vMcm_: IJN_R: goto BfbSk; DZGFs: ncYWV: goto vMcm_; RLNJN: if (empty($stats[$v["\x50\x75\142\154\151\143\113\145\x79"]])) { goto ncYWV; } goto oKvwA; aHHUj: $this->sql("\x75\x70\144\x61\164\145\40\143\154\x69\x65\x6e\x74\163\x20\163\145\164\x20\x64\x6f\167\156\x6c\x6f\x61\x64\75\144\157\167\x6e\154\157\x61\144\x20\x2b\40\163\x65\163\163\x69\x6f\156\x5f\x64\x6f\167\156\154\157\141\144\54\40\x75\160\154\157\x61\144\x3d\165\160\154\x6f\x61\144\40\53\40\163\145\x73\163\x69\157\x6e\137\165\160\154\x6f\141\x64\x20\x77\x68\145\162\x65\40\x69\144\x3d\72\151\144", ["\72\151\x64" => $v["\43\40\151\x64"]]); goto m9hbO; m9hbO: z14De: goto Bc_FM; Bc_FM: $this->sql("\x75\x70\x64\x61\164\145\40\x63\x6c\x69\x65\156\164\x73\40\163\145\164\x20\x73\145\x73\x73\151\157\x6e\137\144\157\x77\x6e\x6c\x6f\141\x64\x3d\72\x64\x6f\x77\x6e\x6c\x6f\141\x64\54\40\x73\x65\x73\x73\151\x6f\156\x5f\x75\160\x6c\x6f\x61\x64\75\72\x75\160\x6c\x6f\x61\144\54\x20\145\x78\x74\145\162\156\x61\154\137\x69\160\x3d\x69\146\50\x3a\145\170\164\x65\x72\156\141\154\137\x69\x70\x20\x69\x73\40\x6e\157\164\x20\156\165\154\x6c\54\40\72\145\170\164\145\162\x6e\141\x6c\x5f\151\160\x2c\x20\x65\170\x74\145\x72\156\x61\x6c\x5f\x69\160\51\54\x20\x68\141\x6e\144\x73\150\x61\x6b\x65\75\151\146\x28\72\150\x61\x6e\x64\163\x68\141\153\x65\54\x20\72\x68\141\x6e\x64\163\150\141\x6b\145\54\x20\150\x61\x6e\x64\163\x68\x61\153\145\x29\x20\167\x68\x65\x72\145\x20\x69\x64\x3d\x3a\x69\x64", ["\x3a\151\144" => $v["\x23\40\x69\144"], "\x3a\144\x6f\x77\156\x6c\157\x61\x64" => $stats[$v["\120\x75\x62\154\x69\x63\113\145\x79"]]["\144\x6f\167\x6e\x6c\x6f\x61\144"], "\x3a\x75\160\x6c\157\141\144" => $stats[$v["\120\x75\142\x6c\x69\143\x4b\145\x79"]]["\x75\x70\x6c\157\x61\144"], "\72\150\x61\x6e\144\163\150\141\153\x65" => $stats[$v["\120\x75\x62\154\x69\x63\113\x65\x79"]]["\150\x61\x6e\x64\163\x68\141\x6b\x65"] ?: null, "\72\x65\170\x74\x65\162\156\141\154\137\x69\160" => $stats[$v["\x50\165\142\154\151\x63\x4b\145\171"]]["\145\x78\164\145\162\156\141\x6c\137\151\160"] != "\50\156\157\156\145\x29" ? $stats[$v["\120\x75\x62\154\x69\x63\113\145\171"]]["\145\170\x74\x65\x72\x6e\x61\x6c\137\x69\x70"] : null]); goto DZGFs; oKvwA: if (!$this->start) { goto z14De; } goto aHHUj; BfbSk: } goto Qpfxp; D2u2F: foreach ($d as $v) { goto d88d4; UEeQv: $this->send($v["\x23\x20\164\x67\151\x64"], $this->template("\x6e\144", $v)); goto mS4Kr; mS4Kr: v2yXk: goto Uw6Fj; kAt6w: $v["\151\144"] = $v["\x23\40\x69\144"]; goto PlwRm; d88d4: $v["\x75\163\x65\x72"] = $this->getInfoUser($v["\43\x20\x74\147\x69\x64"])["\x72\145\x73\x75\154\x74"]["\165\163\145\x72"]["\x66\x69\x72\x73\164\137\x6e\141\x6d\145"]; goto kAt6w; PlwRm: $this->send($this->SdJGw, "\xd0\xb2\xd1\213\xd0\xba\xd0\273\321\216\xd1\x87\320\xb8\xd0\xbb\x20{$v["\43\40\151\x64"]}\x20\320\264\320\xbb\321\217\40{$v["\x23\40\x74\x67\151\x64"]}\50{$v["\x75\x73\145\x72"]}\51"); goto UEeQv; Uw6Fj: } goto Zf1Yj; Yhc0Q: EOp1o: goto wJCH3; uza29: $c["\x70\x65\x65\x72\x73"] = $new; goto aV9FX; Qpfxp: jQc3B: goto xUQpG; wJCH3: if (empty($exist)) { goto G_Idr; } goto BuTaE; f2u5w: if (empty($new)) { goto yqf9u; } goto xWbIX; srqr2: $this->restart(); goto URLLl; xWbIX: foreach ($new as $k => $v) { goto LxtVc; Sx9cg: mYbTF: goto sKvUP; sKvUP: Rg9Hc: goto wZ6iT; LxtVc: if (!empty($v["\43\40\141\155\156\145\x7a\151\141"])) { goto mYbTF; } goto B6HZV; B6HZV: $this->sql("\x75\160\x64\x61\164\145\40\x63\x6c\x69\145\156\164\x73\40\163\x65\164\40\x61\x6d\156\x65\x7a\x69\x61\x3d\x3a\x61\x6d\x6e\145\x7a\x69\x61\40\167\x68\x65\162\145\x20\151\x64\x3d\x3a\151\144", ["\72\151\144" => $v["\x23\40\x69\144"], "\72\x61\x6d\156\145\x7a\151\x61" => $this->getAmneziaShortLink($v)], "\x63\157\x75\x6e\164"); goto Sx9cg; wZ6iT: } goto sZGYg; URLLl: $this->syncAmnezia(); goto xj8AV; xUQpG: $this->start = 0; goto fFPie; J_3mY: if (!($cl !== false)) { goto kkPu7; } goto ADuV3; RvY_d: yqf9u: goto HH3l3; Ma6b1: foreach ($cl as $v) { goto TEyFP; iNVne: CFSFI: goto HbUA9; JDsTx: z0vh_: goto iNVne; TEyFP: if (!$v["\x70\165\142\154\x69\x63"]) { goto z0vh_; } goto eS9xA; eS9xA: $new[$v["\x70\165\142\154\151\x63"]] = ["\x50\165\142\154\151\x63\113\145\171" => $v["\x70\x75\x62\x6c\151\143"], "\101\x6c\x6c\157\x77\145\x64\x49\x50\x73" => $v["\x69\x70"], "\x23\x20\x66\x72\x69\x65\156\x64\x6c\x79\x5f\156\x61\155\145" => $v["\156\x61\155\145"] ?: $v["\x74\147\x69\144"], "\43\x20\154\151\x66\145" => $v["\154\151\x66\145"], "\43\x20\x69\144" => $v["\151\x64"], "\43\x20\164\x67\151\x64" => $v["\x74\x67\x69\144"], "\x23\40\x64\157\x77\x6e\154\157\141\144" => $v["\144\x6f\167\x6e\x6c\157\x61\144"], "\x23\40\x75\x70\154\157\141\x64" => $v["\x75\x70\154\x6f\141\x64"], "\43\x20\145\x78\x69\x73\164\163" => 1, "\43\x20\141\155\156\145\x7a\151\141" => $v["\x61\155\156\145\172\151\141"]]; goto JDsTx; HbUA9: } goto XHDJw; YlrMR: fySy_: goto uza29; Zf1Yj: oeA_e: goto V21zq; i1IYm: $cr = array_diff_key($new, $exist); goto i5NXc; V21zq: xN5LJ: goto i1IYm; tbMJt: $c = $this->readConfig(); goto hQAN5; cJ65y: G_Idr: goto xUb0_; xj8AV: AWKH9: goto lnVx4; fFPie: I13th: goto bLFM2; KSnRq: foreach ($c["\160\x65\x65\x72\x73"] as $k => $v) { $exist[$v["\x50\165\x62\x6c\151\x63\113\x65\x79"]] = $v; mAp2Z: } goto Xh6og; ZKzf1: foreach ($cl as $v) { goto PM1KY; wEKlr: zPO0E: goto xfjkW; PM1KY: if ($v["\160\x75\x62\x6c\x69\x63"]) { goto qFYXT; } goto xme2V; xme2V: $peer = $this->createPeer($v); goto ITKVl; zeaQ1: $this->sql("\165\x70\144\141\164\x65\x20\x63\154\x69\145\156\164\x73\x20\x73\x65\x74\x20\x70\x75\142\x6c\151\143\x3d\x3a\160\x75\x62\154\x69\143\54\40\x70\x72\x69\166\x61\x74\x65\x3d\x3a\160\x72\151\x76\141\x74\x65\x20\167\x68\x65\162\145\x20\x69\144\x3d\x3a\151\x64", ["\72\151\144" => $v["\151\x64"], "\72\x70\x72\x69\166\141\164\x65" => $peer["\120\162\151\x76\141\164\145\x4b\x65\x79"], "\x3a\160\165\142\x6c\151\x63" => $peer["\120\x75\142\x6c\x69\x63\113\x65\x79"]]); goto OqGIL; OqGIL: $new[$peer["\120\165\x62\x6c\151\x63\113\x65\171"]] = array_merge(["\x23\x20\x69\144" => $v["\x69\144"], "\x23\x20\x74\x67\151\x64" => $v["\164\x67\151\x64"], "\x23\x20\144\x6f\x77\x6e\154\157\x61\144" => $v["\x64\x6f\167\x6e\154\157\141\144"], "\x23\x20\165\x70\154\157\x61\144" => $v["\x75\x70\154\157\x61\x64"]], $peer); goto wEKlr; ITKVl: if (empty($peer["\x50\165\142\x6c\x69\143\113\x65\171"])) { goto zPO0E; } goto zeaQ1; h2OfH: NYSCT: goto oQrux; xfjkW: qFYXT: goto h2OfH; oQrux: } goto aI0U6; HH3l3: $d = array_diff_key($exist, $new); goto n4I0v; n4I0v: if (empty($d)) { goto xN5LJ; } goto YIYVf; vc26V: StFeu: goto cJ65y; t_yZE: GkU5l: goto Yhc0Q; aV9FX: file_put_contents("\x2f\143\x6f\x6e\146\x69\147\163\x2f\167\x67\60\x2e\x63\x6f\156\x66", $this->createConfig($c)); goto srqr2; Rjrsz: rM3zB: goto Ma6b1; YIYVf: $flag = true; goto D2u2F; xUb0_: if (empty($flag)) { goto AWKH9; } goto dvnAr; wp8C5: } public function getStats() { goto rOrin; hL_5J: unset($wg[0]); goto Rvj3J; mvbY2: foreach ($res as $v) { $stats[$v[0]] = ["\145\x78\164\145\x72\x6e\x61\154\x5f\151\x70" => $stats[$v[0]]["\x65\170\164\145\x72\x6e\x61\x6c\137\x69\x70"] ?: $v[2], "\150\141\156\x64\x73\x68\141\x6b\x65" => max($stats[$v[0]]["\150\x61\156\144\x73\150\x61\153\145"], $v[4]), "\144\x6f\x77\x6e\x6c\x6f\x61\x64" => ($stats[$v[0]]["\x64\x6f\167\156\154\x6f\141\144"] ?: 0) + $v[6], "\x75\x70\154\x6f\x61\144" => ($stats[$v[0]]["\165\x70\154\157\141\x64"] ?: 0) + $v[5]]; PgW1U: } goto r686c; S3Bfp: array_walk($res, function (&$i) { $i = preg_split("\176\x5c\163\53\x7e", $i); }); goto mvbY2; LsLr8: $res = array_merge($wg, $awg); goto S3Bfp; Rvj3J: $awg = array_filter(explode("\xa", $this->ssh("\141\x77\147\x20\x73\x68\x6f\x77\x20\x77\147\x30\x20\x64\x75\155\160", "\141\167\147"))); goto yiXCG; yiXCG: unset($awg[0]); goto LsLr8; rOrin: $wg = array_filter(explode("\xa", $this->ssh("\167\x67\x20\x73\x68\x6f\167\x20\167\x67\x30\40\x64\165\x6d\160"))); goto hL_5J; r686c: D5Id1: goto zyW4i; zyW4i: return $stats; goto n6CYW; n6CYW: } public function createPeer($peer) { goto qg1VZ; A0Ohp: if (!empty($private_peer_key)) { goto ui1Ll; } goto BpQVe; CrPap: return ["\x23\40\146\162\x69\145\156\144\154\x79\x5f\156\x61\155\x65" => $peer["\x6e\141\155\x65"] ?: $peer["\164\147\x69\144"], "\43\x20\154\x69\146\145" => $peer["\154\x69\x66\145"], "\120\165\142\154\151\143\x4b\145\171" => $public_peer_key, "\x50\162\x69\166\141\164\x65\113\145\171" => $private_peer_key, "\101\154\x6c\157\x77\x65\x64\x49\x50\163" => $peer["\151\x70"]]; goto oiiIl; qg1VZ: $private_peer_key = trim($this->ssh("\x77\147\40\147\x65\x6e\153\x65\171")); goto A0Ohp; iQhol: return false; goto XVDLE; yx2mW: $public_peer_key = trim($this->ssh("\x65\x63\x68\157\40{$private_peer_key}\40\174\x20\167\x67\x20\160\x75\142\153\x65\x79")); goto un_3Z; un_3Z: if (!empty($public_peer_key)) { goto yaTmQ; } goto iQhol; XVDLE: yaTmQ: goto CrPap; BpQVe: return false; goto rD6HH; rD6HH: ui1Ll: goto yx2mW; oiiIl: } public function qrPeer($client, $server) { goto qX1hm; u8G95: unlink($path); goto t2DvY; RHiSI: $template = preg_replace("\57\x7e\151\160\176\57", preg_replace("\x7e\x5b\136\141\55\172\101\x2d\x5a\60\x2d\71\137\x5d\53\x7e", $replacement, $domain), $template); goto BgRwk; sWk23: $domain = $r["\x64\157\155\141\151\x6e"] ?: $this->Naunv; goto kJmBW; tfAJv: UU2_T: goto u8G95; IpHsD: $vpn_flag = 1; goto agwWz; epNFA: vEjVp: goto hrJNc; io2U2: $text = preg_replace("\43\176\155\x61\x63\x6f\x73\x7e\43", '', $text); goto JeLfT; KSmvt: $windows = 1; goto Fgcpw; jx9au: $text = preg_replace("\43\x7e\x69\x6f\x73\x7e\x23", '', $text); goto IIjic; kJmBW: $client["\154\x69\x66\145"] = $client["\x23\x20\154\151\146\145"] ? $this->getTime(strtotime($client["\43\x20\154\151\146\145"]) - time()) : "\342\210\236"; goto fuBHC; wBBid: if (!$ios) { goto gmRFe; } goto IDgqG; IXLFw: casjK: goto IXL5C; r19Vb: $vpn = $client["\166\x70\156"]; goto JnJ3I; GnM0Q: file_put_contents($path, $code); goto bUw1F; prYUR: $this->send($client["\x23\40\164\x67\x69\x64"], "\x3c\160\162\145\76\74\x63\157\144\x65\76{$vpn}\74\x2f\x63\x6f\x64\x65\x3e\x3c\57\x70\x72\x65\76"); goto tfAJv; viG7V: $text = preg_replace("\43\x7e\141\x6e\x64\x72\x6f\x69\144\x7e\x23", '', $text); goto zkY6C; msFQu: $text = $this->template("\x6e\x63", $client); goto y33sW; srnkY: if (!preg_match("\43\176\x66\x69\154\145\x7e\x23", $text)) { goto l2G7F; } goto nKWOA; c8uhG: $this->send($client["\43\40\x74\147\151\144"], $text); goto DAt9m; RuMO3: $template = preg_replace("\57\x7e\142\157\x74\x7e\x2f", preg_replace("\x7e\x5b\x5e\141\55\172\101\x2d\132\60\55\71\137\x5d\x2b\x7e", $replacement, $bot), $template); goto RHiSI; Lap85: q1Mc1: goto V1YLK; fBzQ2: if (!$android) { goto kU9h0; } goto naF7Y; fuBHC: $dns = $this->getSetting("\x64\x6e\163") ?: "\61\56\x31\x2e\61\x2e\x31\x2c\40\x38\56\x38\x2e\70\56\70"; goto XSlj_; zkY6C: YrwdH: goto M6YUo; QDSoJ: $android = 1; goto viG7V; kIS0L: $replacement = $this->getSetting("\162\145\160\154"); goto RJM3K; x1GoF: X2Lgy: goto fBzQ2; qX1hm: $r = $this->sql("\x73\145\x6c\x65\143\x74\x20\x64\x6f\x6d\141\x69\x6e\x2c\x20\x69\160\x73\54\40\x6d\164\165\40\x66\162\x6f\x6d\x20\x73\x65\x72\166\145\x72\163\40\167\150\x65\162\x65\x20\151\x64\75\x3a\x69\144", ["\72\151\144" => $this->id], "\162\x6f\x77"); goto sWk23; wkv4X: if (!preg_match("\x23\x7e\167\x69\156\144\x6f\167\163\x7e\43", $text)) { goto qIFe3; } goto KSmvt; aNUC9: if (!$windows) { goto vEjVp; } goto R2Uie; bUw1F: $this->sendFile($client["\x23\x20\x74\147\x69\x64"], curl_file_create($path, posted_filename: $template)); goto x1GoF; IIjic: UutAJ: goto wkv4X; IDgqG: $this->previewMedia("\x68\151", $client["\x23\40\x74\x67\151\144"]); goto rKnfV; IXL5C: $template = $this->getSetting("\164\x65\155\x70"); goto kIS0L; fw4Jj: $r = $this->sendPhoto($client["\x23\x20\x74\x67\x69\x64"], curl_file_create($path), $text); goto CFlGt; KZ50n: $text = preg_replace("\43\x7e\x66\x69\154\x65\176\43", '', $text); goto m1riE; TMqpd: $macos = 1; goto io2U2; naF7Y: $this->previewMedia("\150\141", $client["\x23\40\164\x67\x69\144"]); goto yCrsz; nKWOA: $file = 1; goto KZ50n; BgRwk: $template = preg_replace("\x2f\x7e\160\157\162\x74\176\57", preg_replace("\x7e\133\136\141\55\172\x41\x2d\132\60\x2d\x39\137\135\x2b\x7e", $replacement, $server["\114\151\x73\164\145\x6e\120\x6f\x72\x74"]), $template); goto be3j_; JeLfT: ClMAH: goto srnkY; be3j_: $template = preg_replace("\57\176\151\144\x7e\x2f", preg_replace("\x7e\133\136\141\x2d\x7a\101\55\x5a\60\55\x39\x5f\135\x2b\176", $replacement, $client["\151\x64"]), $template); goto uHqF4; rKnfV: gmRFe: goto aNUC9; FjT1a: qIFe3: goto rNS6l; XSlj_: $mtu = $r["\x6d\x74\165"] ?: 1350; goto dHpOj; V1YLK: if (!($vpn && $vpn_flag)) { goto UU2_T; } goto prYUR; dHpOj: $ips = $r["\151\160\x73"] ?: "\60\x2e\60\x2e\x30\x2e\60\x2f\60"; goto jwEOp; uHqF4: exec("\161\x72\x65\156\x63\x6f\x64\145\40\55\164\40\160\156\147\x20\x2d\x6f\40{$path}\40\47{$code}\47"); goto fw4Jj; yCrsz: kU9h0: goto wBBid; hrJNc: if (!$macos) { goto q1Mc1; } goto KUrJU; m1riE: l2G7F: goto C2LPX; R2Uie: $this->previewMedia("\150\167", $client["\43\x20\164\147\151\x64"]); goto epNFA; agwWz: $text = preg_replace("\x23\x7e\166\x70\156\176\x23", '', $text); goto IXLFw; KUrJU: $this->previewMedia("\150\155", $client["\43\40\x74\147\x69\x64"]); goto Lap85; EvmaY: $ios = 1; goto jx9au; Fgcpw: $text = preg_replace("\43\176\x77\151\x6e\x64\157\167\x73\176\43", '', $text); goto FjT1a; JnJ3I: unset($client["\x76\160\x6e"]); goto qcksl; RJM3K: $bot = $this->request("\x67\145\164\x4d\171\116\141\155\145", [])["\x72\145\x73\165\x6c\164"]["\156\x61\155\x65"]; goto RuMO3; qcksl: $path = __DIR__ . "\57\x71\162\x2f{$client["\151\x64"]}"; goto msFQu; ohWD4: if (!$file) { goto X2Lgy; } goto GnM0Q; hLvwg: $client["\x63\x6f\x64\145"] = "\x3c\x70\x72\145\x3e\x3c\x63\157\x64\x65\x3e{$code}\74\x2f\143\157\x64\145\76\x3c\57\x70\162\145\76"; goto r19Vb; rNS6l: if (!preg_match("\43\176\x6d\141\143\x6f\x73\x7e\43", $text)) { goto ClMAH; } goto TMqpd; M6YUo: if (!preg_match("\x23\x7e\151\x6f\163\176\43", $text)) { goto UutAJ; } goto EvmaY; C2LPX: if (!preg_match("\x23\176\x76\160\156\x7e\x23", $text)) { goto casjK; } goto IpHsD; CFlGt: if (!is_null($r)) { goto ufD4Z; } goto c8uhG; jwEOp: $code = "\133\111\x6e\164\145\162\146\141\x63\x65\x5d\xa\x50\x72\151\x76\141\x74\145\113\x65\171\x20\x3d\x20{$client["\120\x72\x69\x76\141\x74\145\x4b\x65\171"]}\xa\x41\144\x64\x72\145\x73\x73\x20\x3d\x20{$client["\101\x6c\x6c\x6f\x77\x65\x64\x49\120\x73"]}\12\115\124\x55\x20\x3d\40{$mtu}\12\x44\116\123\x20\75\x20{$dns}\12\xa\x5b\120\x65\x65\x72\x5d\12\120\165\142\x6c\151\x63\113\145\x79\x20\75\x20{$this->NZG3R}\12\105\x6e\x64\160\157\x69\x6e\x74\40\75\x20{$domain}\72{$server["\x4c\x69\163\x74\x65\156\x50\157\162\164"]}\xa\101\x6c\x6c\157\167\x65\x64\x49\120\163\40\x3d\x20{$ips}\12\120\x65\162\x73\x69\163\x74\145\156\164\x4b\x65\x65\160\x61\154\151\x76\145\40\75\40\x32\60"; goto hLvwg; y33sW: if (!preg_match("\43\x7e\x61\156\144\x72\x6f\x69\144\x7e\43", $text)) { goto YrwdH; } goto QDSoJ; DAt9m: ufD4Z: goto ohWD4; t2DvY: } public function previewMedia($param, $chat) { goto a3SlQ; X7VZc: $this->request("\163\x65\156\144\115\145\x64\151\x61\x47\x72\157\165\160", ["\x63\x68\x61\164\x5f\x69\x64" => $chat, "\x6d\x65\x64\x69\x61" => json_encode($photos)]); goto HT4vv; zgoBv: if (!$photos) { goto IPtc2; } goto X7VZc; a3SlQ: $text = $this->getSetting($param); goto U8lxi; HT4vv: IPtc2: goto MYHxq; T9HxZ: phURK: goto zgoBv; JcSqJ: $this->send($chat, $text); goto j7iLX; j7iLX: m_28b: goto yTPxO; U8lxi: preg_match_all("\x2f\x7e\x70\150\157\x74\157\72\50\x2e\x2b\x29\x7e\x2f", $text, $m); goto jBYX9; jBYX9: $text = trim(preg_replace("\x2f\x7e\x70\150\x6f\x74\x6f\72\x28\x2e\53\x29\176\x2f", '', $text)); goto frrOf; MYHxq: if (!$text) { goto m_28b; } goto JcSqJ; frrOf: foreach ($m[1] as $k => $v) { $photos[] = ["\164\x79\160\x65" => "\x70\x68\x6f\164\157", "\x6d\x65\144\x69\141" => $v, "\x63\x61\160\164\x69\157\156" => $text, "\160\x61\x72\163\145\x5f\x6d\157\144\145" => "\110\124\x4d\x4c"]; YIUNW: } goto T9HxZ; yTPxO: } public function getInfoUser($tgid) { return $this->request("\x67\x65\x74\103\150\x61\x74\x4d\x65\155\142\145\x72", ["\143\150\x61\x74\137\151\x64" => $tgid, "\165\163\x65\x72\x5f\151\x64" => $tgid]); } public function restart() { $this->ssh("\167\147\x20\x73\171\x6e\143\x63\157\156\146\x20\167\x67\x30\40\x3c\50\x77\147\x2d\161\165\x69\x63\x6b\x20\163\164\x72\151\160\x20\167\147\x30\x29"); } public function ssh($cmd, $service = "\167\x67") { try { goto kGRea; Jw2i0: throw new Exception("\x65\170\x65\143\x20\146\x61\x69\154\72\40\12{$cmd}\12" . var_export($s, true)); goto ZCPnF; D6FlR: WNM3N: goto QKAAD; QxjsT: if (!($i < 2)) { goto MWrC6; } goto dvdhJ; L8l7W: liWaQ: goto hIXkc; ZCPnF: uZTgm: goto bjQjE; ZcTQL: KoTJ5: goto qE_F0; nZr_p: MWrC6: goto PZdo8; xJnCk: $data .= $buf; goto XwDWv; qOK0J: $i++; goto vp2hv; QUKYP: if (!empty($s)) { goto uZTgm; } goto Jw2i0; QHybt: if (!empty($c)) { goto KoTJ5; } goto DFFzE; hIXkc: sMBo7: goto qOK0J; kGRea: $c = ssh2_connect($service, 22); goto QHybt; BQdpr: ssh2_disconnect($c); goto pCq1o; XwDWv: goto Pnap8; goto D6FlR; Kjq1v: if (!$a) { goto liWaQ; } goto iXDDj; CkJTl: x55Y0: goto QxjsT; DFFzE: throw new Exception("\156\x6f\40\x63\x6f\x6e\156\145\x63\164\151\x6f\156\40\x74\157\40{$service}\x3a\x20\12{$cmd}\xa" . var_export($c, true)); goto ZcTQL; bjQjE: stream_set_blocking($s, true); goto UtEGq; gZIrI: sgxif: goto bol67; bol67: $s = ssh2_exec($c, $cmd); goto QUKYP; W0Gwc: throw new Exception("\x61\x75\x74\x68\x20\146\141\151\x6c\x3a\40\12{$cmd}\12" . var_export($a, true)); goto gZIrI; bpMho: if (!($buf = fread($s, 4096))) { goto WNM3N; } goto xJnCk; QKAAD: fclose($s); goto BQdpr; d0oLY: Pnap8: goto bpMho; PZdo8: if (!empty($a)) { goto sgxif; } goto W0Gwc; dvdhJ: $a = ssh2_auth_pubkey_file($c, "\162\157\157\x74", "\x2f\163\x73\150\57\153\145\171\56\160\x75\x62", "\x2f\163\163\x68\x2f\x6b\145\x79"); goto Kjq1v; UtEGq: $data = ''; goto d0oLY; iXDDj: goto MWrC6; goto L8l7W; vp2hv: goto x55Y0; goto nZr_p; qE_F0: $i = 0; goto CkJTl; pCq1o: } catch (Exception|Error $e) { $this->send($this->SdJGw, $e->getMessage()); } return $data; } public function getName() { goto eqlUY; eqlUY: if (!file_exists($this->KSM6h)) { goto FuLpo; } goto HI7bB; HI7bB: return file_get_contents($this->KSM6h) ?: false; goto kwZBb; H_hha: return false; goto Kqhq3; kwZBb: FuLpo: goto H_hha; Kqhq3: } public function setName($name) { return file_put_contents($this->KSM6h, $name); } public function readConfig() { goto VpbU2; Y5bMX: foreach ($data as $v) { goto UfpZV; XqFp4: bCPTL: goto OdiHf; OdiHf: tEB_q: goto Hv58o; TkImU: $d["\x70\145\145\162\163"][] = $v; goto KaBga; I8p9f: if ($type == "\151\x6e\164\145\162\146\x61\x63\x65") { goto vECm7; } goto TkImU; UfpZV: $type = $v["\164\171\x70\145"]; goto PKCB4; o3Vj4: vECm7: goto rgQ34; PKCB4: unset($v["\x74\171\x70\x65"]); goto I8p9f; rgQ34: $d["\x69\x6e\164\x65\x72\x66\x61\143\145"] = $v; goto XqFp4; KaBga: goto bCPTL; goto o3Vj4; Hv58o: } goto GpfLM; mMSLT: $d["\x70\145\x65\x72\163"] = []; goto Y5bMX; VpbU2: $i = 0; goto OQFby; OQFby: $r = array_filter(explode(PHP_EOL, file_get_contents("\57\143\x6f\156\146\151\x67\x73\57\167\147\x30\56\x63\157\156\x66"))); goto khePS; C02Ag: hGkx0: goto mMSLT; EyHAy: return $d; goto zAmTS; khePS: foreach ($r as $k => $v) { goto RULKS; RUX6e: bEWy1: goto T69CW; f2iF0: if ($m[1] == "\x49\156\x74\145\162\x66\x61\143\x65") { goto XNNGM; } goto q9RsK; q9RsK: $data[$i]["\x74\171\x70\145"] = "\x70\145\x65\x72"; goto IPgII; Mjhqu: SZW2o: goto YolnU; YolnU: $i++; goto f2iF0; x56tL: $data[$i][trim($t[0])] = trim($t[1]); goto GfekA; IPgII: goto m_2IK; goto whDdA; i2vu6: $data[$i]["\164\x79\x70\x65"] = "\x69\156\164\145\x72\146\x61\x63\145"; goto f0iIg; f0iIg: m_2IK: goto raXUQ; GfekA: goto esqT1; goto Mjhqu; whDdA: XNNGM: goto i2vu6; raXUQ: esqT1: goto RUX6e; Ho141: $t = explode("\x3d", $v, 2); goto x56tL; RULKS: if (preg_match("\176\x5c\133\x28\x2e\x2b\x29\x5c\x5d\176", $v, $m)) { goto SZW2o; } goto Ho141; T69CW: } goto C02Ag; GpfLM: p3hbB: goto EyHAy; zAmTS: } public function createConfig($data) { goto e2BXs; BSU8w: uYS5G: goto mdZRW; JVyQm: sW1Gc: goto XoqF3; j1e2S: foreach ($data["\x69\156\164\145\162\146\141\143\x65"] as $k => $v) { $conf[] = "{$k}\x20\75\x20{$v}"; KQxMO: } goto JVyQm; mdZRW: return implode(PHP_EOL, $conf); goto xerqB; AT74O: foreach ($data["\160\145\145\162\x73"] as $peer) { goto wga_6; wga_6: $conf[] = ''; goto e2Feu; e2Feu: $conf[] = "\x5b\x50\145\x65\x72\135"; goto J4nER; J4nER: foreach ($peer as $k => $v) { $conf[] = "{$k}\x20\75\x20{$v}"; q3uqN: } goto OHXJT; ZCkOP: I5RcF: goto xXXJP; OHXJT: WWksE: goto ZCkOP; xXXJP: } goto Iv3gI; Iv3gI: Um3iQ: goto BSU8w; e2BXs: $conf[] = "\133\x49\156\x74\x65\162\x66\x61\x63\145\135"; goto j1e2S; XoqF3: if (empty($data["\160\145\145\162\163"])) { goto uYS5G; } goto AT74O; xerqB: } public function send($chat, $text, ?int $to = 0, $button = false, $reply = false, $mode = "\110\x54\115\x4c") { goto AfDiN; BABG2: $text = strip_tags($text); goto YrON2; NQax2: goto jHi99; goto pHu9q; E9zwi: X8HQo: goto VwEAt; pHu9q: vsrcg: goto BABG2; khy8i: dG5TR: goto XzUWH; eD9XF: Sqk7d: goto Pp5Ep; svIv1: if (!(false !== $reply)) { goto X8HQo; } goto K6K1P; Jzvz7: $extra = ["\151\156\x6c\x69\156\x65\137\x6b\145\171\142\157\141\x72\x64" => $button]; goto N2r87; Pp5Ep: jHi99: goto xWuMT; BSvXZ: $data = ["\x63\150\141\164\137\151\x64" => $chat, "\164\145\x78\164" => $text, "\160\x61\x72\163\145\x5f\155\x6f\144\x65" => $mode, "\x72\145\160\x6c\171\137\164\x6f\137\x6d\145\163\163\141\x67\x65\137\x69\x64" => $to]; goto gZOit; t_yvX: $data["\x6c\x69\x6e\x6b\137\x70\x72\x65\x76\x69\145\167\137\x6f\160\x74\x69\x6f\156\163"] = json_encode(["\151\163\137\x64\x69\x73\141\x62\154\145\x64" => true, "\x6c\151\156\153" => '']); goto khy8i; SPjUl: $data["\162\x65\160\154\171\x5f\155\141\x72\x6b\165\x70"] = json_encode($extra); goto ujEBz; xhRdN: if (!$button) { goto dbeT3; } goto Jzvz7; ge3HR: if (mb_strlen($text, "\165\x74\146\55\x38") > $length) { goto vsrcg; } goto BSvXZ; gZOit: if (empty($this->getSetting("\x6c\x69\x6e\153\120\x72\x65\x76\151\x65\x77"))) { goto dG5TR; } goto t_yvX; JJUay: foreach ($tails as $k => $v) { goto X4Cmr; X4Cmr: $data = ["\x63\x68\141\x74\137\151\144" => $chat, "\x74\x65\x78\x74" => "{$v}\xa", "\160\x61\162\163\145\x5f\155\157\x64\x65" => $mode, "\162\x65\160\x6c\171\137\164\157\x5f\x6d\145\163\x73\141\x67\145\137\x69\x64" => 0 == $k && $to > 0 ? $to : false]; goto S0U3p; RYmb2: Dl4kF: goto l21BU; Amrg4: wgV40: goto XOvCU; Miqot: $r = $this->request("\163\145\156\x64\115\145\x73\x73\x61\147\145", $data); goto vy6iB; S0U3p: if (empty($this->getSetting("\x6c\x69\x6e\153\120\162\x65\x76\x69\x65\167"))) { goto wgV40; } goto vuMra; gULbM: $data["\162\x65\x70\154\x79\x5f\155\141\162\153\x75\160"] = json_encode($extra); goto RYmb2; l21BU: b_x2a: goto Miqot; vy6iB: Ip4qb: goto nVn_k; bXmex: if (!$extra) { goto Dl4kF; } goto gULbM; XOvCU: if (!($k == array_key_last($tails))) { goto b_x2a; } goto bXmex; vuMra: $data["\154\151\x6e\x6b\137\x70\x72\x65\166\151\x65\167\x5f\x6f\160\x74\151\157\156\163"] = json_encode(["\151\163\137\x64\x69\163\141\x62\154\145\144" => true, "\x6c\x69\x6e\x6b" => '']); goto Amrg4; nVn_k: } goto eD9XF; AfDiN: if (!($chat == $this->SdJGw)) { goto e1df5; } goto DVc5N; VwEAt: $length = 4096; goto ge3HR; K6K1P: $extra = ["\146\x6f\162\143\145\x5f\x72\x65\160\x6c\171" => true, "\x69\156\160\x75\x74\x5f\146\x69\145\154\144\x5f\x70\154\x61\143\145\x68\157\154\144\x65\x72" => $reply, "\163\x65\x6c\145\x63\x74\x69\x76\145" => true]; goto E9zwi; ac_Qt: e1df5: goto xhRdN; ujEBz: kpuMp: goto lDOkT; YrON2: $tails = $this->splitText($text, $length); goto JJUay; XzUWH: if (empty($extra)) { goto kpuMp; } goto SPjUl; xWuMT: return $r; goto dXj0K; lDOkT: $r = $this->request("\163\x65\x6e\x64\x4d\x65\x73\163\x61\x67\145", $data); goto NQax2; N2r87: dbeT3: goto svIv1; DVc5N: $text = "{$this->name}\72\12{$text}"; goto ac_Qt; dXj0K: } public function sendPhoto($chat, $id_url_cFile, $caption = false, $to = false) { return $this->request("\163\145\x6e\x64\x50\x68\x6f\164\157", ["\143\x68\141\164\137\151\144" => $chat, "\160\x68\157\164\x6f" => $id_url_cFile, "\x63\141\x70\x74\151\x6f\156" => $caption, "\162\145\x70\154\x79\137\x74\157\137\x6d\x65\x73\163\x61\x67\145\137\x69\144" => $to, "\160\141\162\x73\145\137\x6d\157\x64\145" => "\150\164\x6d\154"]); } public function sendFile($chat, $id_url_cFile, $caption = false, $to = false) { return $this->request("\163\x65\156\144\104\157\143\165\x6d\x65\x6e\164", ["\x63\x68\141\x74\137\151\x64" => $chat, "\x64\x6f\143\165\155\x65\156\x74" => $id_url_cFile, "\143\x61\160\x74\x69\x6f\x6e" => $caption, "\x72\x65\x70\x6c\x79\x5f\x74\x6f\137\x6d\145\163\163\x61\147\145\x5f\x69\x64" => $to, "\160\141\x72\163\x65\137\155\x6f\144\145" => "\x68\164\155\154"]); } public function splitText($text, $size = 4096) { goto YMtiG; FNSB3: HEmRf: goto j5vZS; Mt6BL: if (!empty($tails)) { goto rhICI; } goto eaqe_; XzCMx: Pe2f5: goto RJrLt; Z3Kth: rhICI: goto eCpi2; IXQ6H: return array_values($output); goto XzCMx; Artyp: IJ79x: goto IXQ6H; eaqe_: return [$text]; goto bSPBo; vkaN1: foreach ($lines as $v) { goto J0tIQ; J0tIQ: $i += $v["\154\145\156\147\x74\x68"]; goto hBBYd; e8rK7: f1k6C: goto g9CPf; hBBYd: $output[ceil($i / $size)] .= $v["\164\x65\x78\x74"] . "\12"; goto e8rK7; g9CPf: } goto Artyp; eCpi2: foreach ($tails as $v) { $lines[] = ["\x6c\x65\156\x67\164\x68" => mb_strlen($v, "\165\164\146\55\x38"), "\x74\x65\x78\164" => $v]; wZ5aG: } goto FNSB3; YMtiG: $tails = preg_split("\x7e\x5c\x6e\176", $text); goto Mt6BL; j5vZS: $i = 0; goto vkaN1; bSPBo: goto Pe2f5; goto Z3Kth; RJrLt: } public function getTime(int $seconds) { goto xpEr0; AmQSq: $items = ["\131" => ["\144\151\146\x66" => 1970, "\163\151\147\x6e" => "\xd0\xb3"], "\x6d" => ["\144\151\x66\x66" => 1, "\x73\151\x67\156" => "\xd0\xbc\320\265\321\x81"], "\x64" => ["\144\151\146\x66" => 1, "\163\151\x67\x6e" => "\xd0\264\xd0\xbd"], "\110" => ["\144\x69\146\146" => 0, "\x73\151\147\156" => "\xd1\x87"], "\151" => ["\144\151\146\146" => 0, "\x73\151\147\x6e" => "\320\274\xd0\270\xd0\xbd"], "\163" => ["\144\151\x66\146" => 0, "\163\151\x67\x6e" => "\xd1\x81"]]; goto Xn_e_; xpEr0: $seconds = $seconds > 0 ? $seconds : 0; goto btIS5; R0068: return trim($text) ?: 0; goto pOikG; ZkU2y: OsaAQ: goto AmQSq; btIS5: if (!($seconds == 0)) { goto OsaAQ; } goto R2GZn; Xn_e_: foreach ($items as $k => $v) { goto LbK3S; A_eyF: tbLfI: goto LIjuQ; LbK3S: if (!(($t = gmdate($k, $seconds) - $v["\x64\151\146\x66"]) > 0)) { goto oBgud; } goto uoODy; uoODy: $text .= "\40{$t}\x20{$v["\x73\x69\147\x6e"]}"; goto cz3KG; cz3KG: oBgud: goto A_eyF; LIjuQ: } goto WOCfK; WOCfK: vJ1Oc: goto R0068; R2GZn: return "\x6f\146\146"; goto ZkU2y; pOikG: } public function getcommands($lang = false, $scope = false) { return $this->request("\147\x65\164\x4d\x79\x43\157\155\155\141\156\x64\163", ["\x6c\141\x6e\147\165\141\147\145\x5f\143\x6f\144\145" => $lang ?: '', "\x73\x63\x6f\160\x65" => json_encode($scope ?: ["\x74\171\x70\145" => "\144\x65\146\x61\165\x6c\164"])])["\x72\145\x73\165\x6c\x74"]; } public function sql(string $sql, array $values = [], string $view = "\141\154\154", int $column = 0, $nextRowset = 0) { try { goto r02Nv; H6ccj: foreach ($values as $k => $v) { goto Ku1ub; Ku1ub: if (is_string($k)) { goto D73qG; } goto aa8O3; rPP2L: goto FmNLI; goto L3aZv; AizrW: xZCH2: goto eiJdL; aa8O3: $sql = preg_replace("\x7e\x5b\x3f\x5d\176", "\47" . $v . "\47", $sql, 1); goto rPP2L; p_rpK: FmNLI: goto AizrW; L3aZv: D73qG: goto Lts9A; Lts9A: $sql = preg_replace("\176" . preg_quote($k) . "\x7e", "\x27" . $v . "\47", $sql); goto p_rpK; eiJdL: } goto vbokz; XgWk7: $nextRowset--; goto XjckU; lpqCf: $keys = []; goto H6ccj; QSwel: $dbh = new PDO("\155\x79\x73\161\x6c\x3a\150\157\163\x74\x3d{$this->SgvOF}\x3b\160\157\x72\164\75{$this->C0x2i}\73\x64\x62\156\x61\155\145\x3d\x74\x6f\x77\x65\x72\73\143\x68\141\162\x73\x65\164\75\165\x74\146\70\x6d\x62\64\x3b", "\164\x6f\167\145\x72", $this->bmu52, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC]); goto yFDBd; wbaCj: return false; goto Z0rG1; NXkWO: $stmt->nextRowset(); goto XgWk7; cRx5w: LO6Kg: goto A4w9H; JeCPd: return $sql; goto D9yMm; CswBR: if ($stmt->execute($values)) { goto uL8Zx; } goto wbaCj; vbokz: dqvQb: goto JeCPd; XjckU: goto LO6Kg; goto u9Iwy; Z0rG1: goto fZC1a; goto AxDXn; ndLPZ: switch ($view) { case "\x63\157\x75\156\x74": return $stmt->rowCount(); case "\162\157\167": return $stmt->fetch(); case "\x6f\x6e\x65": return $stmt->fetchColumn($column); case "\x63\157\x6c\165\155\x6e": return $stmt->fetchAll(PDO::FETCH_COLUMN, $column); case "\x75\x6e\x69\x71": return $stmt->fetchAll(PDO::FETCH_UNIQUE); default: return $stmt->fetchAll(); } goto Gt48w; AxDXn: uL8Zx: goto cRx5w; yFDBd: $stmt = $dbh->prepare($sql); goto CswBR; LOg0G: fZC1a: goto SbokN; A4w9H: if (!$nextRowset) { goto FU62Q; } goto NXkWO; D9yMm: hIYsh: goto QSwel; Gt48w: sMHZy: goto LHVOm; u9Iwy: FU62Q: goto ndLPZ; LHVOm: C3WIk: goto LOg0G; r02Nv: if (!("\161\165\145\x72\171" == $view)) { goto hIYsh; } goto lpqCf; SbokN: } catch (PDOException $e) { goto REnPj; UoXJj: X9HIF: goto VOhPh; XgNun: stlR6: goto gnB8U; REnPj: if (empty($GLOBALS["\x64\x65\x62\x75\147"])) { goto X9HIF; } goto u27ct; u27ct: throw $e; goto iDE_5; iDE_5: goto stlR6; goto UoXJj; VOhPh: return false; goto XgNun; gnB8U: } } public function request($method, $data, $json_header = 0) { goto vrixm; Pzv_o: SMqjn: goto c3V_K; rHbI8: $res = curl_exec($ch); goto EQV1D; c3V_K: echo "\12\x77\150\x6f\72\40" . var_export($f, true); goto Pxsbr; Pxsbr: echo "\12\x72\x65\163\72\40" . var_export(json_decode($res, true), true); goto N4ZWN; N4ZWN: WJ5Wm: goto CXSEg; EQV1D: if (empty($GLOBALS["\x64\x65\x62\x75\x67"])) { goto WJ5Wm; } goto VqlLg; VqlLg: $d = debug_backtrace(); goto h13Lg; h13Lg: foreach ($d as $k => $v) { $f[] = [$v["\x66\165\x6e\143\x74\151\157\156"] => $v["\141\x72\147\x73"]]; CAmvJ: } goto Pzv_o; vrixm: $ch = curl_init(); goto owa5C; CXSEg: return json_decode($res, true); goto hFnFy; owa5C: curl_setopt_array($ch, [CURLOPT_URL => $this->OeptT . $method, CURLOPT_CUSTOMREQUEST => "\x50\x4f\x53\x54", CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => $json_header ? ["\103\x6f\x6e\164\145\156\164\x2d\124\x79\x70\x65\72\x20\141\x70\x70\154\151\143\x61\x74\x69\157\x6e\x2f\x6a\x73\157\156"] : [], CURLOPT_POSTFIELDS => $data]); goto rHbI8; hFnFy: } public function sd($var, $log = false, $json = false, $raw = false, $append = false) { goto yJeZ6; knn4Q: if ($raw) { goto aWLTP; } goto HoO0x; Xch8h: file_put_contents("\x2f\154\157\147\x73\57\144\x65\x62\165\147", $var . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto JpoiX; AL2Ut: goto PvPxq; goto UASeL; UASeL: g8P0c: goto EqBIv; yJeZ6: if ($log) { goto OPSRB; } goto o4_sb; o4_sb: $this->send($this->SdJGw, debug_backtrace()[0]["\154\151\x6e\145"] . "\x3a\xa" . var_export($var, true)); goto uQqSw; EqBIv: file_put_contents("\57\154\157\147\163\57\144\x65\x62\x75\147", json_encode($var, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto Tmuph; TFSt6: if ($json) { goto g8P0c; } goto knn4Q; AiTy6: er3tk: goto njOlz; uQqSw: goto er3tk; goto NbtnI; Tmuph: goto PvPxq; goto wLJX4; wLJX4: aWLTP: goto Xch8h; HoO0x: file_put_contents("\x2f\154\157\x67\x73\x2f\144\145\x62\x75\x67", var_export($var, true) . ($append ? PHP_EOL : ''), $append ? FILE_APPEND : false); goto AL2Ut; NbtnI: OPSRB: goto TFSt6; JpoiX: PvPxq: goto AiTy6; njOlz: } }

Function Calls

None

Variables

None

Stats

MD5 c52dddeca5e010d7ece1207f34e67fb3
Eval Count 0
Decode Time 97 ms