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("IAovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKio..
Decoded Output download
/************************************************
* *
* *
* *
* *
* *
* *
* --------------------------------------------- *
* This is commercial software, only users *
* who have purchased a valid license and *
* accept to the terms of the License *
* Agreement can install and use this program. *
* --------------------------------------------- *
* website: https://maurisweb.ru *
* email: [email protected] *
************************************************/
namespace Tygh\Addons\MwDebuger\Operative\Main;
use Tygh\Exceptions\AException;
use Tygh\Exceptions\DeveloperException;
use Throwable;
use Exception;
class ErrorHandler
{
public static function showErrorMessage($exception)
{
return self::getDebugInfo($exception, defined('CONSOLE'));
}
public static function getDebugInfo($exception, $plain_text = false)
{
$exception = self::castToException($exception);
$backtrace_data = array();
$file = str_replace(DIR_ROOT . '/', '', $exception->getFile());
$title = self::getErrorTitle($exception);
$massege = $exception->getMessage();
$line = $exception->getLine();
$trace
= <<< EOU
<div style="margin: 0 0 30px 0; font-size: 1em; padding: 0 10px;">
<h2>{$title}</h2>
<h3>Message</h3>
<p style="margin: 0; padding: 0 0 20px 0;">{$massege}</p>
<h3>Error at</h3>
<p style="margin: 0; padding: 0 0 20px 0;">{$file}, line: {$line}</p>
<h3>Backtrace</h3>
<table cellspacing="0" cellpadding="3" style="font-size: 0.9em;">
EOU;
$i = 0;
if ($backtrace = $exception->getTrace()) {
$func = '';
foreach ($backtrace as $v) {
if (empty($v['file'])) {
$func = $v['function'];
continue;
} elseif (!empty($func)) {
$v['function'] = $func;
$func = '';
}
$i = ($i == 0) ? 1 : 0;
$color = ($i == 0) ? "#CCCCCC" : "#EEEEEE";
if (strpos($v['file'], DIR_ROOT) !== false) {
$v['file'] = str_replace(DIR_ROOT . '/', '', $v['file']);
}
$trace .= "<tr bgcolor='$color'><td>File:</td><td>{$v['file']}</td></tr>
";
$trace .= "<tr bgcolor='$color'><td>Line:</td><td>{$v['line']}</td></tr>
";
$trace .= "<tr bgcolor='$color'><td>Function:</td><td><b>{$v['function']}</b></td></tr>
";
$backtrace_data[] = array("file" => $v["file"], "line" => $v["line"]);
}
}
$trace .= '</table></div>';
if ($plain_text) {
$trace = strip_tags($trace);
}
$data = array("html" => $trace, "elements" => array("name_file" => $file, "title" => $title, "massege" => $massege, "line" => $line, "backtrace_data" => $backtrace_data));
return $data;
}
protected static function castToException($exception)
{
if ($exception instanceof Throwable || $exception instanceof Exception) {
return $exception;
}
return new DeveloperException((string) $exception);
}
protected static function getErrorTitle($exception)
{
if ($exception instanceof AException) {
return $exception->getErrorTitle();
}
return get_class($exception);
}
}
Did this file decode correctly?
Original Code
<?php
eval(base64_decode("IAovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICAgKiAg4pWU4pWX4pSA4pSA4pWU4pWX4pWU4pWQ4pWQ4pWX4pWU4pWX4pWU4pWX4pWU4pWQ4pWQ4pWQ4pWX4pWU4pWQ4pWQ4pWX4pWU4pWQ4pWQ4pWX4pWU4pWX4pWU4pWX4pWU4pWX4pWU4pWQ4pWQ4pWQ4pWX4pWU4pWQ4pWQ4pWXICAgKg0KICAgICogIOKVkeKVkeKUgOKUgOKVkeKVkeKVkeKVlOKVl+KVkeKVkeKVkeKVkeKVkeKVkeKVlOKVkOKVl+KVkeKVmuKVl+KVlOKVneKVkeKVlOKVkOKVneKVkeKVkeKVkeKVkeKVkeKVkeKVkeKVlOKVkOKVkOKVneKVkeKVlOKVl+KVkSAgICoNCiAgICAqICDilZHilZrilZfilZTilZ3ilZHilZHilZrilZ3ilZHilZHilZHilZHilZHilZHilZrilZDilZ3ilZHilIDilZHilZHilIDilZHilZrilZDilZfilZHilZHilZHilZHilZHilZHilZHilZrilZDilZDilZfilZHilZrilZ3ilZrilZcgICoNCiAgICAqICDilZHilZTilZfilZTilZfilZHilZHilZTilZfilZHilZHilZHilZHilZHilZHilZTilZfilZTilZ3ilIDilZHilZHilIDilZrilZDilZfilZHilZHilZHilZHilZHilZHilZHilZHilZTilZDilZDilZ3ilZHilZTilZDilZfilZEgICoNCiAgICAqICDilZHilZHilZrilZ3ilZHilZHilZHilZHilZHilZHilZHilZrilZ3ilZHilZHilZHilZHilZHilIDilZTilZ3ilZrilZfilZTilZDilZ3ilZHilZHilZrilZ3ilZrilZ3ilZHilZHilZrilZDilZDilZfilZHilZrilZDilZ3ilZEgICoNCiAgICAqICDilZrilZ3ilIDilIDilZrilZ3ilZrilZ3ilZrilZ3ilZrilZDilZDilZ3ilZrilZ3ilZrilZ3ilIDilZrilZDilZDilZ3ilZrilZDilZDilZ3ilZrilZDilZ3ilZrilZDilZ3ilZrilZDilZDilZDilZ3ilZrilZDilZDilZDilZ0gICoNCiAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqDQogICAgKiBUaGlzIGlzIGNvbW1lcmNpYWwgc29mdHdhcmUsIG9ubHkgdXNlcnMgICAgICAgKg0KICAgICogd2hvIGhhdmUgcHVyY2hhc2VkIGEgdmFsaWQgbGljZW5zZSBhbmQgICAgICAgICoNCiAgICAqIGFjY2VwdCB0byB0aGUgdGVybXMgb2YgdGhlIExpY2Vuc2UgICAgICAgICAgICAqDQogICAgKiBBZ3JlZW1lbnQgY2FuIGluc3RhbGwgYW5kIHVzZSB0aGlzIHByb2dyYW0uICAgKg0KICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICoNCiAgICAqIHdlYnNpdGU6IGh0dHBzOi8vbWF1cmlzd2ViLnJ1ICAgICAgICAgICAgICAgICAqDQogICAgKiAgIGVtYWlsOiBpbmZvQG1hdXJpc3dlYi5ydSAgICAgICAgICAgICAgICAgICAgKg0KICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCgoKCgpuYW1lc3BhY2UgVHlnaFxBZGRvbnNcTXdEZWJ1Z2VyXE9wZXJhdGl2ZVxNYWluOwoKdXNlIFR5Z2hcRXhjZXB0aW9uc1xBRXhjZXB0aW9uOwp1c2UgVHlnaFxFeGNlcHRpb25zXERldmVsb3BlckV4Y2VwdGlvbjsKdXNlIFRocm93YWJsZTsKdXNlIEV4Y2VwdGlvbjsKY2xhc3MgRXJyb3JIYW5kbGVyIAp7CiAgICAKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2hvd0Vycm9yTWVzc2FnZSgkZXhjZXB0aW9uKQogICAgewogICAgICAgIHJldHVybiBzZWxmOjpnZXREZWJ1Z0luZm8oJGV4Y2VwdGlvbiwgZGVmaW5lZCgnQ09OU09MRScpKTsKICAgIH0KCiAgICAKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0RGVidWdJbmZvKCRleGNlcHRpb24sICRwbGFpbl90ZXh0ID0gZmFsc2UpCiAgICB7CiAgICAgICAgJGV4Y2VwdGlvbiA9IHNlbGY6OmNhc3RUb0V4Y2VwdGlvbigkZXhjZXB0aW9uKTsKICAgICAgICAkYmFja3RyYWNlX2RhdGEgPSBhcnJheSgpOwogICAgICAgICRmaWxlID0gc3RyX3JlcGxhY2UoRElSX1JPT1QgLiAnLycsICcnLCAkZXhjZXB0aW9uLT5nZXRGaWxlKCkpOwogICAgICAgICR0aXRsZSA9IHNlbGY6OmdldEVycm9yVGl0bGUoJGV4Y2VwdGlvbik7CiAgICAgICAgJG1hc3NlZ2UgPSAkZXhjZXB0aW9uLT5nZXRNZXNzYWdlKCk7CiAgICAgICAgJGxpbmUgPSAkZXhjZXB0aW9uLT5nZXRMaW5lKCk7CiAgICAgICAgJHRyYWNlCiAgICAgICAgICAgID0gPDw8IEVPVQo8ZGl2IHN0eWxlPSJtYXJnaW46IDAgMCAzMHB4IDA7IGZvbnQtc2l6ZTogMWVtOyBwYWRkaW5nOiAwIDEwcHg7Ij4KPGgyPnskdGl0bGV9PC9oMj4KCjxoMz5NZXNzYWdlPC9oMz4KPHAgc3R5bGU9Im1hcmdpbjogMDsgcGFkZGluZzogMCAwIDIwcHggMDsiPnskbWFzc2VnZX08L3A+Cgo8aDM+RXJyb3IgYXQ8L2gzPgo8cCBzdHlsZT0ibWFyZ2luOiAwOyBwYWRkaW5nOiAwIDAgMjBweCAwOyI+eyRmaWxlfSwgbGluZTogeyRsaW5lfTwvcD4KCjxoMz5CYWNrdHJhY2U8L2gzPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIzIiBzdHlsZT0iZm9udC1zaXplOiAwLjllbTsiPgpFT1U7CiAgICAgICAgJGkgPSAwOwoKICAgICAgICBpZiAoJGJhY2t0cmFjZSA9ICRleGNlcHRpb24tPmdldFRyYWNlKCkpIHsKICAgICAgICAgICAgJGZ1bmMgPSAnJzsKICAgICAgICAgICAgZm9yZWFjaCAoJGJhY2t0cmFjZSBhcyAkdikgewogICAgICAgICAgICAgICAgaWYgKGVtcHR5KCR2WydmaWxlJ10pKSB7CiAgICAgICAgICAgICAgICAgICAgJGZ1bmMgPSAkdlsnZnVuY3Rpb24nXTsKICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgIH0gZWxzZWlmICghZW1wdHkoJGZ1bmMpKSB7CiAgICAgICAgICAgICAgICAgICAgJHZbJ2Z1bmN0aW9uJ10gPSAkZnVuYzsKICAgICAgICAgICAgICAgICAgICAkZnVuYyA9ICcnOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGkgPSAoJGkgPT0gMCkgPyAxIDogMDsKICAgICAgICAgICAgICAgICRjb2xvciA9ICgkaSA9PSAwKSA/ICIjQ0NDQ0NDIiA6ICIjRUVFRUVFIjsKICAgICAgICAgICAgICAgIGlmIChzdHJwb3MoJHZbJ2ZpbGUnXSwgRElSX1JPT1QpICE9PSBmYWxzZSkgewogICAgICAgICAgICAgICAgICAgICR2WydmaWxlJ10gPSBzdHJfcmVwbGFjZShESVJfUk9PVCAuICcvJywgJycsICR2WydmaWxlJ10pOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICR0cmFjZSAuPSAiPHRyIGJnY29sb3I9JyRjb2xvcic+PHRkPkZpbGU6PC90ZD48dGQ+eyR2WydmaWxlJ119PC90ZD48L3RyPlxuIjsKICAgICAgICAgICAgICAgICR0cmFjZSAuPSAiPHRyIGJnY29sb3I9JyRjb2xvcic+PHRkPkxpbmU6PC90ZD48dGQ+eyR2WydsaW5lJ119PC90ZD48L3RyPlxuIjsKICAgICAgICAgICAgICAgICR0cmFjZSAuPSAiPHRyIGJnY29sb3I9JyRjb2xvcic+PHRkPkZ1bmN0aW9uOjwvdGQ+PHRkPjxiPnskdlsnZnVuY3Rpb24nXX08L2I+PC90ZD48L3RyPlxuXG4iOwogICAgICAgICAgICAgICAgJGJhY2t0cmFjZV9kYXRhW10gPSBhcnJheSgiZmlsZSIgPT4gJHZbImZpbGUiXSwgImxpbmUiID0+ICR2WyJsaW5lIl0pOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgICR0cmFjZSAuPSAnPC90YWJsZT48L2Rpdj4nOwogICAgICAgIGlmICgkcGxhaW5fdGV4dCkgewogICAgICAgICAgICAkdHJhY2UgPSBzdHJpcF90YWdzKCR0cmFjZSk7CiAgICAgICAgfSAgICAgICAKICAgICAgICAkZGF0YSA9IGFycmF5KCJodG1sIiA9PiAkdHJhY2UsICJlbGVtZW50cyIgPT4gYXJyYXkoIm5hbWVfZmlsZSIgPT4gJGZpbGUsICJ0aXRsZSIgPT4gJHRpdGxlLCAibWFzc2VnZSIgPT4gJG1hc3NlZ2UsICJsaW5lIiA9PiAkbGluZSwgImJhY2t0cmFjZV9kYXRhIiA9PiAkYmFja3RyYWNlX2RhdGEpKTsKICAgICAgICByZXR1cm4gJGRhdGE7CiAgICB9CgogICAgCiAgICBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIGNhc3RUb0V4Y2VwdGlvbigkZXhjZXB0aW9uKQogICAgewogICAgICAgIGlmICgkZXhjZXB0aW9uIGluc3RhbmNlb2YgVGhyb3dhYmxlIHx8ICRleGNlcHRpb24gaW5zdGFuY2VvZiBFeGNlcHRpb24pIHsKICAgICAgICAgICAgcmV0dXJuICRleGNlcHRpb247CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gbmV3IERldmVsb3BlckV4Y2VwdGlvbigoc3RyaW5nKSAkZXhjZXB0aW9uKTsKICAgIH0KCiAgICAKICAgIHByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gZ2V0RXJyb3JUaXRsZSgkZXhjZXB0aW9uKQogICAgewogICAgICAgIGlmICgkZXhjZXB0aW9uIGluc3RhbmNlb2YgQUV4Y2VwdGlvbikgewogICAgICAgICAgICByZXR1cm4gJGV4Y2VwdGlvbi0+Z2V0RXJyb3JUaXRsZSgpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIGdldF9jbGFzcygkZXhjZXB0aW9uKTsKICAgIH0KfQo="));
?>
Function Calls
base64_decode | 1 |
Stats
MD5 | 5ae6a849942ee51f25a1db0d331e8b79 |
Eval Count | 1 |
Decode Time | 75 ms |