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 namespace Drupal\miniorange_saml\Controller; use Drupal\Core\Field\EntityRef..

Decoded Output download

<?php 
 
 
namespace Drupal\miniorange_saml\Controller; 
 
use Drupal\Core\Field\EntityReferenceFieldItemList; 
use Drupal\miniorange_saml\HigherUtilities; 
use Drupal\profile\Entity\Profile; 
use Drupal\taxonomy\Entity\Term; 
use Drupal\user\Entity\User; 
use Drupal\Component\Utility\Xss; 
use Drupal\Core\Form\FormBuilder; 
use Drupal\Core\Ajax\AjaxResponse; 
use Drupal\miniorange_saml\Utilities; 
use Drupal\miniorange_saml\MiniOrangeAcs; 
use Drupal\miniorange_saml\AESEncryption; 
use Drupal\Core\Controller\ControllerBase; 
use Drupal\miniorange_saml\XMLSecurityKey; 
use Drupal\miniorange_saml\XMLSecurityDSig; 
use Drupal\Core\Ajax\OpenModalDialogCommand; 
use Drupal\views\Controller\ViewAjaxController; 
use Drupal\views\Plugin\views\area\Entity; 
use Symfony\Component\HttpFoundation\Response; 
use Drupal\miniorange_saml\MiniOrangeAuthnRequest; 
use Drupal\miniorange_saml\MiniorangeSAMLCustomer; 
use Drupal\miniorange_saml\MiniorangeSAMLConstants; 
use Symfony\Component\HttpFoundation\RedirectResponse; 
use Symfony\Component\DependencyInjection\ContainerInterface; 
class miniorange_samlController extends ControllerBase 
{ 
    protected $formBuilder; 
    public function __construct(FormBuilder $Zk) 
    { 
        $this->formBuilder = $Zk; 
    } 
    public static function saml_login($Y7 = '', $sS = '') 
    { 
        $XC = \Drupal::config("miniorange_saml.settings"); 
        if (!(!$XC->get("miniorange_saml_enable_login") && strcasecmp($sS, "testValidate") != 0)) { 
            goto y9; 
        } 
        $Tk = "Can not initiate SSO."; 
        $IV = ''; 
        $Bh = "SSO is not enabled."; 
        Utilities::showErrorMessage($Tk, $IV, $Bh, TRUE); 
        return new Response(); 
        y9: 
        \Drupal::service("page_cache_kill_switch")->trigger(); 
        $qd = $XC->get("miniorange_saml_default_relaystate"); 
        $Dd = $XC->get("miniorange_saml_request_signed"); 
        $dx = $XC->get("security_signature_algorithm"); 
        $KT = $XC->get("miniorange_saml_http_binding"); 
        $kn = isset($_REQUEST["destination"]) ? trim($_REQUEST["destination"], "'") : ''; 
        if (empty($sS)) { 
            goto cg; 
        } 
        $kn = $sS; 
        cg: 
        if (!empty($kn)) { 
            goto XV; 
        } 
        $kn = $qd; 
        XV: 
        if (!empty($kn)) { 
            goto OD; 
        } 
        $kn = $Y7; 
        OD: 
        if (!(empty($kn) && isset($_SERVER["HTTP_REFERER"]))) { 
            goto xw; 
        } 
        $kn = $_SERVER["HTTP_REFERER"]; 
        xw: 
        if (!empty($kn)) { 
            goto RH; 
        } 
        $kn = Utilities::getBaseUrl(); 
        RH: 
        \Drupal::moduleHandler()->invokeAll("get_updated_relayState", [$_GET, &$kn]); 
        $QT = Utilities::getAcsUrl(); 
        $Wl = $XC->get("miniorange_saml_idp_login_url"); 
        $zI = $XC->get("miniorange_saml_nameid_format"); 
        $YZ = new MiniOrangeAuthnRequest(); 
        $YZ->initiateLogin($QT, $Wl, Utilities::getIssuer(), $kn, $zI, $KT, $Dd, $dx); 
        return new Response(); 
    } 
    public static function create(ContainerInterface $GG) 
    { 
        return new static($GG->get("form_builder")); 
    } 
    public function saml_response() 
    { 
        global $base_url; 
        global $CE; 
        if (isset($_GET["SAMLResponse"])) { 
            goto Qy; 
        } 
        $XC = \Drupal::config("miniorange_saml.settings"); 
        $pA = (array) json_decode($XC->get("miniorange_saml_custom_attrs_map_arr")); 
        $Yb = new MiniOrangeAcs(); 
        $Ek = $XC->get("minorange_saml_customer_admin_fraud_check"); 
        $vJ = $XC->get("miniorange_saml_customer_admin_token"); 
        $MI = $XC->get("miniorange_saml_customer_admin_email"); 
        $MW = \Drupal::request()->server->get("DOCUMENT_ROOT") . $CE; 
        $R4 = trim($base_url, "/"); 
        if (preg_match("#^http(s)?://#", $R4)) { 
            goto s1; 
        } 
        $R4 = "http://" . $R4; 
        s1: 
        $sK = parse_url($R4); 
        $VY = isset($sK["path"]) ? $sK["path"] : ''; 
        $lQ = preg_replace("/^www\./", '', $sK["host"] . $VY); 
        $rv = $MW . $lQ; 
        $M4 = $XC->get("miniorange_saml_isMultiSitePluginRequested") == true; 
        if (($M4 || $rv == AESEncryption::decrypt_data($Ek, $vJ) || $rv == AESEncryption::decrypt_data($Ek, $vJ, "AES-128-ECB")) && $MI != null && $MI != '') { 
            goto di; 
        } 
        if ($MI != null && $MI != '') { 
            goto Ib; 
        } 
        if (!($MI == null || $MI == '')) { 
            goto E8; 
        } 
        $Tk = "You are not logged in."; 
        $IV = "Please login first to activate single sign on."; 
        $Bh = "Make sure you have logged in/ Register in to module."; 
        Utilities::showErrorMessage($Tk, $IV, $Bh); 
        E8: 
        goto bm; 
        Ib: 
        if (isset($_POST["RelayState"]) && $_POST["RelayState"] == "testValidate") { 
            goto IY; 
        } 
        $Tk = "We could not sign you in."; 
        $IV = "Please Contact your administrator."; 
        Utilities::showErrorMessage($Tk, $IV, "-"); 
        goto pi; 
        IY: 
        $Tk = "License key you have entered has already been used."; 
        $IV = "Please enter a key which has not been used before on any other instance or if you have exausted all your keys then buy more license from Licensing."; 
        Utilities::showErrorMessage($Tk, $IV, "-"); 
        pi: 
        bm: 
        goto Z7; 
        di: 
        $h0 = $Yb->processSamlResponse($_POST, $pA); 
        $rO = $h0["response"]; 
        $mj = $h0["resources"]; 
        Z7: 
        if (!(MiniorangeSAMLConstants::PLUGIN_VERSION == MiniorangeSAMLConstants::ENTERPRISE_VERSION && \Drupal\miniorange_saml\HigherUtilities::Is_Restricted_Domain($rO["email"]) === TRUE)) { 
            goto Sd; 
        } 
        $Tk = "You are not allowed to login "; 
        $IV = "Please Contact your administrator."; 
        $Bh = "Your domain may be blocked by admin"; 
        Utilities::showErrorMessage($Tk, $IV, $Bh); 
        Sd: 
        if ($XC->get("miniorange_saml_load_user") == 1) { 
            goto ul; 
        } 
        $jI = user_load_by_name($rO["username"]); 
        goto Vv; 
        ul: 
        $jI = user_load_by_mail($rO["email"]); 
        Vv: 
        $my = 0; 
        if (!($jI == NULL)) { 
            goto i2; 
        } 
        $C1 = $XC->get("miniorange_saml_disable_autocreate_users"); 
        if ($C1) { 
            goto WO; 
        } 
        $ax = user_password(8); 
        $WX = $XC->get("miniorange_saml_default_role"); 
        $XO = ["name" => $rO["username"], "mail" => $rO["email"], "pass" => $ax, "status" => 1]; 
        $jI = User::create($XO); 
        $jI->save(); 
        if (!($WX != "authenticated" && $XC->get("miniorange_saml_enable_rolemapping"))) { 
            goto W3; 
        } 
        $jI->addRole($WX); 
        $jI->save(); 
        W3: 
        goto FF; 
        WO: 
        $Tk = "Account does not exist with your username."; 
        $IV = "Please Contact your administrator."; 
        $Bh = "Auto creation of user is not allowed if user does not exist."; 
        Utilities::showErrorMessage($Tk, $IV, $Bh); 
        FF: 
        i2: 
        $lA = array(); 
        $lA = $rO["customFieldAttributes"]; 
        $jI = User::load($jI->id()); 
        $GO = json_decode($XC->get("miniorange_saml_custom_attrs_map_sep")); 
        foreach ($lA as $Tg => $dO) { 
            $qi = $jI->get($Tg); 
            $PU = $qi->getFieldDefinition(); 
            $Rq = $PU->getFieldStorageDefinition(); 
            if ($Rq->getType() === "entity_reference") { 
                goto v7; 
            } 
            if (Utilities::isMultiple($Tg) && !is_null($GO->{$Tg})) { 
                goto Sv; 
            } 
            $VI = array($dO); 
            goto iG; 
            Sv: 
            $VI = explode($GO->{$Tg}, $dO); 
            iG: 
            $jI->get($Tg)->setValue($VI); 
            $jI->save(); 
            goto aC; 
            v7: 
            $pp = $Rq->getSetting("target_type"); 
            $l2 = $PU->getSetting("handler_settings"); 
            $xX = \Drupal::entityTypeManager()->getStorage($pp)->loadMultiple(NULL); 
            if (!isset($l2["target_bundles"])) { 
                goto ti; 
            } 
            if (Utilities::isMultiple($Tg) && !is_null($GO->{$Tg})) { 
                goto jU; 
            } 
            $VI = array($dO); 
            goto h_; 
            jU: 
            $VI = explode($GO->{$Tg}, $dO); 
            h_: 
            $A_ = []; 
            $Dy = []; 
            foreach ($VI as $dO) { 
                $xX = \Drupal::entityTypeManager()->getStorage($pp)->loadByProperties(["name" => $dO]); 
                $Nd = false; 
                foreach ($xX as $S4) { 
                    if (!in_array($S4->bundle(), $l2["target_bundles"])) { 
                        goto k5; 
                    } 
                    $A_[] = $S4->id(); 
                    $Nd = true; 
                    k5: 
                    C2: 
                } 
                Nb: 
                if ($Nd) { 
                    goto sc; 
                } 
                $Dy[] = $dO; 
                sc: 
                Fs: 
            } 
            w3: 
            $rC = isset($l2["auto_create"]) ? $l2["auto_create"] : false; 
            $E7 = isset($l2["auto_create_bundle"]) ? $l2["auto_create_bundle"] : ''; 
            if (!($rC && $pp == "taxonomy_term")) { 
                goto q3; 
            } 
            foreach ($Dy as $Hs) { 
                $za = Term::create(["name" => $Hs, "vid" => $E7]); 
                $za->save(); 
                $A_[] = $za->id(); 
                g1: 
            } 
            ce: 
            q3: 
            $qi->setValue($A_); 
            $jI->save(); 
            ti: 
            aC: 
            KH: 
        } 
        z0: 
        if (!(!is_null($jI) && $XC->get("miniorange_saml_enable_rolemapping"))) { 
            goto my; 
        } 
        $uu = $XC->get("miniorange_saml_role_mapping_arr") != null ? (array) json_decode($XC->get("miniorange_saml_role_mapping_arr")) : []; 
        $Hz = array(); 
        $Hz = $rO["customFieldRoles"]; 
        $cn = \Drupal::configFactory()->getEditable("miniorange_saml.settings")->get("miniorange_saml_disable_role_update"); 
        $uJ = $jI->getRoles(); 
        if ($cn) { 
            goto xh; 
        } 
        foreach ($uJ as $Tg => $dO) { 
            if (in_array($dO, array_keys($uu))) { 
                goto TF; 
            } 
            if (!($dO != $XC->get("miniorange_saml_default_role"))) { 
                goto zF; 
            } 
            $jI->removeRole($dO); 
            $jI->save(); 
            zF: 
            TF: 
            XW: 
        } 
        z2: 
        xh: 
        foreach ($uu as $Tg => $dO) { 
            $Yc = FALSE; 
            $cF = explode(";", $dO); 
            foreach ($cF as $jt => $jW) { 
                if (!(is_array($Hz) && in_array($jW, $Hz))) { 
                    goto wo; 
                } 
                $Yc = TRUE; 
                wo: 
                eD: 
            } 
            Uc: 
            if ($Yc && $Tg != "authenticated") { 
                goto Cs; 
            } 
            $jI->removeRole($Tg); 
            $jI->save(); 
            goto oO; 
            Cs: 
            $jI->addRole($Tg); 
            $jI->save(); 
            oO: 
            VT: 
        } 
        td: 
        my: 
        $z0 = $XC->get("miniorange_saml_enable_profile_mapping"); 
        if (!(MiniorangeSAMLConstants::PLUGIN_VERSION == MiniorangeSAMLConstants::ENTERPRISE_VERSION && $z0)) { 
            goto Ie; 
        } 
        HigherUtilities::profileFieldMapping($jI, $mj); 
        Ie: 
        if (user_is_blocked($rO["username"]) == FALSE) { 
            goto BT; 
        } 
        $Tk = "User Blocked By Administrator."; 
        $IV = "Please Contact your administrator."; 
        $Bh = "This user account is not allowed to login."; 
        Utilities::showErrorMessage($Tk, $IV, $Bh); 
        return new Response(); 
        goto ZF; 
        BT: 
        if (!(array_key_exists("relay_state", $rO) && !empty($rO["relay_state"]))) { 
            goto we; 
        } 
        $Yu = $rO["relay_state"]; 
        we: 
        $oY = Utilities::getBaseUrl(); 
        if (!(empty($Yu) || $Yu == "/")) { 
            goto PK; 
        } 
        $Yu = $oY; 
        PK: 
        $_SESSION["sessionIndex"] = $rO["sessionIndex"]; 
        $_SESSION["NameID"] = $rO["NameID"]; 
        $_SESSION["mo_saml"]["logged_in_with_idp"] = TRUE; 
        \Drupal::moduleHandler()->invokeAll("invoke_miniorange_2fa_before_login", [$jI]); 
        \Drupal::moduleHandler()->invokeAll("miniorange_saml_idp_resources", [$jI, $mj]); 
        user_login_finalize($jI); 
        if (!($XC->get("miniorange_saml_restrict_redirect_outside_domain") == TRUE)) { 
            goto a8; 
        } 
        $q_ = parse_url($Yu); 
        $tV = parse_url($oY); 
        $HE = isset($tV["host"]) ? $tV["host"] : FALSE; 
        $kR = isset($q_["host"]) ? $q_["host"] : FALSE; 
        if (!($kR !== FALSE && $HE !== $kR)) { 
            goto Fj; 
        } 
        $Yk = $Yu; 
        $Yu = $oY; 
        $Hi = $XC->get("miniorange_saml_whitelist_domains"); 
        $hS = explode(";", $Hi); 
        foreach ($hS as $yM) { 
            if (!($yM == '' or $yM == "/")) { 
                goto iw; 
            } 
            goto Bl; 
            iw: 
            if (!(strpos($kR, trim($yM)) !== false)) { 
                goto o5; 
            } 
            $Yu = $Yk; 
            goto br; 
            o5: 
            Bl: 
        } 
        br: 
        Fj: 
        a8: 
        \Drupal::moduleHandler()->invokeAll("headless_sso_redirect", [$jI, $Yu]); 
        $rO = new RedirectResponse($Yu); 
        $gl = \Drupal::request(); 
        $gl->getSession()->save(); 
        $rO->prepare($gl); 
        \Drupal::service("kernel")->terminate($gl, $rO); 
        $rO->send(); 
        exit; 
        return new Response(); 
        ZF: 
        goto A5; 
        Qy: 
        $gl = \Drupal::request(); 
        $gl->getSession()->clear(); 
        $rO = new RedirectResponse(Utilities::getBaseUrl()); 
        $rO->send(); 
        return new Response(); 
        A5: 
        return new Response(); 
    } 
    static function saml_logout() 
    { 
        $XC = \Drupal::config("miniorange_saml.settings"); 
        $dx = $XC->get("security_signature_algorithm"); 
        $Sb = Utilities::getBaseUrl(); 
        $QW = Utilities::getRedirectUrAfterLogout($Sb); 
        $Tf = $XC->get("miniorange_saml_idp_logout_url"); 
        $FO = $XC->get("miniorange_saml_slo_http_binding"); 
        if (!empty($Tf)) { 
            goto gE; 
        } 
        $gl = \Drupal::request(); 
        $gl->getSession()->clear(); 
        $rO = new RedirectResponse($QW); 
        $rO->send(); 
        return new Response(); 
        goto B5; 
        gE: 
        if (!\Drupal::service("session")->getId() || \Drupal::service("session")->getId() == '' || !isset($_SESSION)) { 
            goto px; 
        } 
        if (!isset($_SESSION["mo_saml"]["logged_in_with_idp"])) { 
            goto W_; 
        } 
        unset($_SESSION["mo_saml"]); 
        $lV = $_SESSION["sessionIndex"]; 
        $IY = $_SESSION["NameID"]; 
        Utilities::checkIfLogoutRequest($_REQUEST, $_GET); 
        $KQ = $Sb; 
        $El = Utilities::createLogoutRequest($IY, Utilities::getIssuer(), $Tf, $FO, $lV); 
        $Dd = $XC->get("miniorange_saml_request_signed"); 
        if (empty($FO) || $FO == "HTTP-Redirect") { 
            goto Ua; 
        } 
        if ($Dd) { 
            goto J0; 
        } 
        $Xn = base64_encode($El); 
        Utilities::postSAMLRequest($Tf, $Xn, $KQ); 
        exit; 
        J0: 
        $Xn = Utilities::signXML($El, Utilities::getPublicCertificate(), Utilities::getPrivateKey(), $dx, "NameID"); 
        Utilities::postSAMLRequest($Tf, $Xn, $KQ); 
        goto t5; 
        Ua: 
        $El = "SAMLRequest=" . $El . "&RelayState=" . urlencode($KQ); 
        $kh = $Tf; 
        if (strpos($Tf, "?") !== false) { 
            goto M_; 
        } 
        $kh .= "?"; 
        goto Fh; 
        M_: 
        $kh .= "&"; 
        Fh: 
        if (!$Dd) { 
            goto IG; 
        } 
        if ($dx == "RSA_SHA256") { 
            goto jg; 
        } 
        if ($dx == "RSA_SHA384") { 
            goto N0; 
        } 
        if ($dx == "RSA_SHA512") { 
            goto NK; 
        } 
        if ($dx == "RSA_SHA1") { 
            goto wr; 
        } 
        goto Ga; 
        jg: 
        $El .= "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA256); 
        goto Ga; 
        N0: 
        $El .= "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA384); 
        goto Ga; 
        NK: 
        $El .= "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA512); 
        goto Ga; 
        wr: 
        $El .= "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA1); 
        Ga: 
        $Kb = array("type" => "private"); 
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Kb); 
        if ($dx == "RSA_SHA384") { 
            goto mX; 
        } 
        if ($dx == "RSA_SHA512") { 
            goto aW; 
        } 
        if ($dx == "RSA_SHA1") { 
            goto QN; 
        } 
        goto Yz; 
        mX: 
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA384, $Kb); 
        goto Yz; 
        aW: 
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA512, $Kb); 
        goto Yz; 
        QN: 
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA1, $Kb); 
        Yz: 
        $Tg->loadKey(Utilities::getPrivateKey(), FALSE); 
        $jM = new XMLSecurityDSig(); 
        $O6 = $Tg->signData($El); 
        $O6 = base64_encode($O6); 
        $kh .= $El . "&Signature=" . urlencode($O6); 
        if ($XC->get("miniorange_saml_send_slo_in_iframe")) { 
            goto ZQ; 
        } 
        header("Location: " . $kh); 
        exit; 
        goto qe; 
        ZQ: 
        echo "<iframe id='mo_saml_iframe_slo' src='" . $kh . "' style='position: absolute; height: 0; width: 0; border: 0;' ></iframe>"; 
        exit; 
        qe: 
        goto qm; 
        IG: 
        $kh .= $El; 
        if ($XC->get("miniorange_saml_send_slo_in_iframe")) { 
            goto cX; 
        } 
        $rO = new RedirectResponse($kh); 
        $rO->send(); 
        return new Response(); 
        goto QQ; 
        cX: 
        echo "<iframe id='mo_saml_iframe_slo' src='" . $kh . "' style='position: absolute; height: 0; width: 0; border: 0;' ></iframe>"; 
        exit; 
        QQ: 
        qm: 
        t5: 
        W_: 
        $gl = \Drupal::request(); 
        $gl->getSession()->clear(); 
        if (!($XC->get("miniorange_saml_send_slo_in_iframe") && !isset($_GET["final"]))) { 
            goto yG; 
        } 
        echo "<script> window.top.location.href = '" . $Sb . "/user/logout?final=true'; </script>"; 
        exit; 
        yG: 
        $rO = new RedirectResponse($QW); 
        $rO->send(); 
        return new Response(); 
        goto Ja; 
        px: 
        session_start(); 
        return new Response(); 
        Ja: 
        B5: 
        return new Response(); 
    } 
    function test_configuration() 
    { 
        self::saml_login('', "testValidate"); 
        return new Response(); 
    } 
    function saml_request() 
    { 
        $Uo = \Drupal::config("miniorange_saml.settings")->get("miniorange_saml_idp_login_url"); 
        $zI = \Drupal::config("miniorange_saml.settings")->get("miniorange_saml_nameid_format"); 
        $Pd = Utilities::createAuthnRequest(Utilities::getAcsUrl(), Utilities::getIssuer(), $zI, $Uo, "HTTP-POST", "false"); 
        $KQ = "displaySAMLRequest"; 
        $Dd = \Drupal::config("miniorange_saml.settings")->get("miniorange_saml_request_signed"); 
        $dx = \Drupal::config("miniorange_saml.settings")->get("security_signature_algorithm"); 
        if (!$Dd) { 
            goto rO; 
        } 
        $Xn = Utilities::signXML($Pd, Utilities::getPublicCertificate(), Utilities::getPrivateKey(), $dx, "NameIDPolicy"); 
        $Pd = base64_decode($Xn); 
        rO: 
        Utilities::Print_SAML_Request($Pd, $KQ); 
        return new Response(); 
    } 
    function saml_response_generator() 
    { 
        self::saml_login('', "displaySamlResponse"); 
        return new Response(); 
    } 
    public function openModalForm() 
    { 
        $rO = new AjaxResponse(); 
        $b7 = $this->formBuilder->getForm("\Drupal\miniorange_saml\Form\MiniorangeSAMLRemoveLicense"); 
        $rO->addCommand(new OpenModalDialogCommand("Remove License Key", $b7, ["width" => "800"])); 
        return $rO; 
    } 
    public function moLicenseFetch() 
    { 
        global $base_url; 
        $MI = \Drupal::config("miniorange_saml.settings")->get("miniorange_saml_customer_admin_email"); 
        $ao = new MiniorangeSAMLCustomer($MI, NULL, NULL, NULL); 
        $uD = json_decode($ao->ccl(), true); 
        Utilities::mo_save_expiry_details($uD); 
        \Drupal::messenger()->addStatus(t("Successfully fetched the update")); 
        $rO = new RedirectResponse($base_url . "/admin/config/people/miniorange_saml/customer_setup"); 
        $rO->send(); 
    } 
    function saml_metadata() 
    { 
        $XC = \Drupal::config("miniorange_saml.settings"); 
        $Sb = Utilities::getBaseUrl(); 
        $ze = Utilities::getIssuer(); 
        $QT = Utilities::getAcsUrl(); 
        $OY = Utilities::getPublicCertificate(); 
        $pn = preg_replace("/[
]+/", '', $OY); 
        $pn = str_replace("-----BEGIN CERTIFICATE-----", '', $pn); 
        $pn = str_replace("-----END CERTIFICATE-----", '', $pn); 
        $pn = str_replace("-----BEGIN PUBLIC KEY-----", '', $pn); 
        $pn = str_replace("-----END PUBLIC KEY-----", '', $pn); 
        $pn = str_replace(" ", '', $pn); 
        if (isset($_REQUEST["downloadCertificate"]) && $_REQUEST["downloadCertificate"] && boolval($_REQUEST["downloadCertificate"])) { 
            goto J2; 
        } 
        if (isset($_REQUEST["download"]) && $_REQUEST["download"] && boolval($_REQUEST["download"])) { 
            goto tt; 
        } 
        $uY = "Content-Type: text/xml"; 
        goto Xj; 
        J2: 
        $uY = "Content-Disposition: attachment; filename="sp-certificate.crt""; 
        header($uY); 
        echo xss::filter($OY); 
        exit; 
        goto Xj; 
        tt: 
        $uY = "Content-Disposition: attachment; filename="Metadata.xml""; 
        Xj: 
        header($uY); 
        echo "<?xml version="1.0"?>\xd
        <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" validUntil="2024-03-27T23:59:59Z" cacheDuration="PT1446808792S" entityID="" . $ze . "">
\xa          <md:SPSSODescriptor AuthnRequestsSigned="true" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">\xd\xa            <md:KeyDescriptor use="signing">
\xa              <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
                <ds:X509Data>\xd\xa                  <ds:X509Certificate>" . $pn . "</ds:X509Certificate>\xd
                </ds:X509Data>\xd
              </ds:KeyInfo>
            </md:KeyDescriptor>
            <md:KeyDescriptor use="encryption">
              <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
                <ds:X509Data>
                  <ds:X509Certificate>" . $pn . "</ds:X509Certificate>
                </ds:X509Data>\xd
              </ds:KeyInfo>\xd
            </md:KeyDescriptor>\xd\xa            <md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="" . $Sb . "/user/logout"/>
\xa            <md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="" . $Sb . "/user/logout"/>
\xa            <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>
\xa            <md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified</md:NameIDFormat>
            <md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</md:NameIDFormat>
\xa            <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="" . $QT . "" index="1"/>
          </md:SPSSODescriptor>\xd\xa          <md:Organization>\xd\xa            <md:OrganizationName xml:lang="en-US">" . $XC->get("mo_saml_metadata_OrganizationName") . "</md:OrganizationName>\xd\xa            <md:OrganizationDisplayName xml:lang="en-US">" . $XC->get("mo_saml_OrganizationDisplayName") . "</md:OrganizationDisplayName>\xd
            <md:OrganizationURL xml:lang="en-US">" . $XC->get("mo_saml_OrganizationURL") . "</md:OrganizationURL>\xd
          </md:Organization>\xd
          <md:ContactPerson contactType="technical">\xd\xa            <md:GivenName>" . $XC->get("mo_saml_ContactPersonTechnicalName") . "</md:GivenName>\xd\xa            <md:EmailAddress>" . $XC->get("mo_saml_ContactPersonTechnicalEmail") . "</md:EmailAddress>
\xa          </md:ContactPerson>\xd
          <md:ContactPerson contactType="support">
            <md:GivenName>" . $XC->get("mo_saml_ContactPersonSupportName") . "</md:GivenName>\xd\xa            <md:EmailAddress>" . $XC->get("mo_saml_ContactPersonSupportEmail") . "</md:EmailAddress>
\xa          </md:ContactPerson>\xd\xa        </md:EntityDescriptor>"; 
        exit; 
    } 
} 
 ?>

Did this file decode correctly?

Original Code

<?php


namespace Drupal\miniorange_saml\Controller;

use Drupal\Core\Field\EntityReferenceFieldItemList;
use Drupal\miniorange_saml\HigherUtilities;
use Drupal\profile\Entity\Profile;
use Drupal\taxonomy\Entity\Term;
use Drupal\user\Entity\User;
use Drupal\Component\Utility\Xss;
use Drupal\Core\Form\FormBuilder;
use Drupal\Core\Ajax\AjaxResponse;
use Drupal\miniorange_saml\Utilities;
use Drupal\miniorange_saml\MiniOrangeAcs;
use Drupal\miniorange_saml\AESEncryption;
use Drupal\Core\Controller\ControllerBase;
use Drupal\miniorange_saml\XMLSecurityKey;
use Drupal\miniorange_saml\XMLSecurityDSig;
use Drupal\Core\Ajax\OpenModalDialogCommand;
use Drupal\views\Controller\ViewAjaxController;
use Drupal\views\Plugin\views\area\Entity;
use Symfony\Component\HttpFoundation\Response;
use Drupal\miniorange_saml\MiniOrangeAuthnRequest;
use Drupal\miniorange_saml\MiniorangeSAMLCustomer;
use Drupal\miniorange_saml\MiniorangeSAMLConstants;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\DependencyInjection\ContainerInterface;
class miniorange_samlController extends ControllerBase
{
    protected $formBuilder;
    public function __construct(FormBuilder $Zk)
    {
        $this->formBuilder = $Zk;
    }
    public static function saml_login($Y7 = '', $sS = '')
    {
        $XC = \Drupal::config("\x6d\151\156\151\x6f\162\141\x6e\147\145\x5f\x73\141\x6d\154\x2e\163\145\x74\164\151\x6e\147\163");
        if (!(!$XC->get("\155\151\156\x69\x6f\162\141\156\147\x65\137\163\x61\x6d\154\x5f\x65\156\x61\142\154\145\137\x6c\157\147\151\x6e") && strcasecmp($sS, "\x74\x65\163\164\126\x61\154\151\144\x61\164\x65") != 0)) {
            goto y9;
        }
        $Tk = "\103\141\x6e\40\x6e\157\164\x20\x69\156\x69\x74\151\x61\x74\x65\x20\123\x53\x4f\56";
        $IV = '';
        $Bh = "\123\123\x4f\40\151\163\x20\156\x6f\x74\x20\x65\x6e\141\x62\154\145\144\x2e";
        Utilities::showErrorMessage($Tk, $IV, $Bh, TRUE);
        return new Response();
        y9:
        \Drupal::service("\x70\141\x67\x65\137\143\141\143\150\x65\137\153\151\154\x6c\x5f\163\167\151\x74\143\x68")->trigger();
        $qd = $XC->get("\155\151\x6e\x69\x6f\x72\x61\156\147\145\x5f\163\141\x6d\x6c\x5f\x64\145\146\x61\x75\154\164\x5f\162\145\x6c\x61\x79\163\164\141\x74\145");
        $Dd = $XC->get("\155\151\156\x69\157\162\141\156\x67\x65\x5f\163\141\155\x6c\x5f\162\x65\x71\165\x65\163\x74\137\x73\151\147\156\145\x64");
        $dx = $XC->get("\x73\x65\x63\165\162\x69\164\x79\137\163\x69\x67\x6e\141\164\x75\162\145\x5f\x61\154\x67\x6f\162\x69\x74\x68\x6d");
        $KT = $XC->get("\155\151\x6e\151\x6f\162\x61\156\147\x65\137\163\x61\155\x6c\x5f\150\x74\164\160\137\x62\151\156\x64\x69\156\147");
        $kn = isset($_REQUEST["\144\145\x73\164\x69\156\x61\x74\x69\x6f\156"]) ? trim($_REQUEST["\144\145\163\x74\x69\156\141\164\x69\x6f\156"], "\x27") : '';
        if (empty($sS)) {
            goto cg;
        }
        $kn = $sS;
        cg:
        if (!empty($kn)) {
            goto XV;
        }
        $kn = $qd;
        XV:
        if (!empty($kn)) {
            goto OD;
        }
        $kn = $Y7;
        OD:
        if (!(empty($kn) && isset($_SERVER["\x48\x54\124\x50\137\x52\105\x46\x45\x52\x45\x52"]))) {
            goto xw;
        }
        $kn = $_SERVER["\110\124\x54\x50\137\122\x45\x46\x45\x52\105\x52"];
        xw:
        if (!empty($kn)) {
            goto RH;
        }
        $kn = Utilities::getBaseUrl();
        RH:
        \Drupal::moduleHandler()->invokeAll("\147\x65\x74\x5f\x75\x70\x64\x61\x74\145\144\137\x72\x65\154\141\x79\123\164\x61\164\x65", [$_GET, &$kn]);
        $QT = Utilities::getAcsUrl();
        $Wl = $XC->get("\x6d\151\156\151\157\x72\x61\x6e\147\x65\137\x73\x61\x6d\x6c\x5f\x69\144\x70\137\154\x6f\147\x69\156\x5f\165\x72\154");
        $zI = $XC->get("\155\x69\x6e\151\x6f\x72\141\156\147\145\x5f\163\x61\x6d\154\137\x6e\141\155\x65\x69\144\x5f\x66\x6f\x72\155\141\164");
        $YZ = new MiniOrangeAuthnRequest();
        $YZ->initiateLogin($QT, $Wl, Utilities::getIssuer(), $kn, $zI, $KT, $Dd, $dx);
        return new Response();
    }
    public static function create(ContainerInterface $GG)
    {
        return new static($GG->get("\x66\157\162\155\137\142\x75\151\x6c\x64\x65\x72"));
    }
    public function saml_response()
    {
        global $base_url;
        global $CE;
        if (isset($_GET["\x53\101\x4d\x4c\122\x65\x73\160\157\x6e\x73\x65"])) {
            goto Qy;
        }
        $XC = \Drupal::config("\x6d\x69\156\x69\157\162\141\x6e\x67\145\137\163\x61\x6d\x6c\56\x73\x65\164\164\x69\x6e\147\x73");
        $pA = (array) json_decode($XC->get("\155\x69\156\151\x6f\162\141\x6e\x67\x65\x5f\163\x61\155\x6c\137\x63\x75\x73\x74\157\x6d\137\x61\164\164\162\x73\x5f\x6d\141\x70\137\141\x72\x72"));
        $Yb = new MiniOrangeAcs();
        $Ek = $XC->get("\155\151\156\157\x72\x61\x6e\147\145\137\x73\141\155\x6c\137\143\x75\163\x74\157\x6d\x65\162\x5f\x61\144\155\x69\156\x5f\146\x72\x61\x75\x64\137\143\x68\145\143\153");
        $vJ = $XC->get("\155\x69\x6e\151\157\x72\x61\x6e\147\145\x5f\163\x61\x6d\154\x5f\143\x75\x73\164\x6f\x6d\x65\x72\x5f\x61\x64\155\x69\x6e\x5f\164\157\x6b\x65\x6e");
        $MI = $XC->get("\x6d\x69\x6e\x69\157\162\x61\156\x67\x65\137\163\141\x6d\x6c\x5f\x63\165\x73\x74\157\155\x65\162\x5f\141\x64\155\x69\156\x5f\x65\155\x61\151\154");
        $MW = \Drupal::request()->server->get("\x44\x4f\x43\125\115\x45\x4e\x54\137\x52\117\x4f\124") . $CE;
        $R4 = trim($base_url, "\x2f");
        if (preg_match("\43\136\x68\x74\164\x70\50\x73\51\77\72\x2f\57\x23", $R4)) {
            goto s1;
        }
        $R4 = "\150\164\x74\x70\72\57\57" . $R4;
        s1:
        $sK = parse_url($R4);
        $VY = isset($sK["\x70\141\164\150"]) ? $sK["\x70\141\x74\x68"] : '';
        $lQ = preg_replace("\x2f\136\167\167\167\134\56\57", '', $sK["\x68\x6f\x73\164"] . $VY);
        $rv = $MW . $lQ;
        $M4 = $XC->get("\x6d\151\156\x69\157\162\x61\x6e\x67\x65\x5f\x73\x61\x6d\154\x5f\x69\x73\x4d\165\154\x74\151\x53\151\164\x65\120\x6c\165\x67\x69\156\x52\x65\x71\x75\145\x73\164\145\x64") == true;
        if (($M4 || $rv == AESEncryption::decrypt_data($Ek, $vJ) || $rv == AESEncryption::decrypt_data($Ek, $vJ, "\101\x45\x53\55\x31\x32\x38\x2d\105\x43\x42")) && $MI != null && $MI != '') {
            goto di;
        }
        if ($MI != null && $MI != '') {
            goto Ib;
        }
        if (!($MI == null || $MI == '')) {
            goto E8;
        }
        $Tk = "\x59\x6f\165\x20\141\162\145\x20\x6e\x6f\164\40\154\x6f\147\147\145\144\40\x69\156\56";
        $IV = "\120\x6c\145\x61\163\x65\40\154\157\147\151\x6e\40\x66\x69\x72\163\164\40\x74\157\40\x61\x63\x74\x69\x76\x61\164\145\x20\163\151\156\x67\x6c\x65\40\163\x69\147\x6e\x20\x6f\156\x2e";
        $Bh = "\115\141\x6b\145\40\163\165\x72\x65\x20\x79\157\x75\40\150\141\x76\145\40\x6c\157\147\x67\x65\x64\x20\x69\x6e\x2f\40\122\x65\147\x69\x73\x74\145\162\40\151\x6e\40\x74\x6f\x20\x6d\157\144\x75\x6c\x65\x2e";
        Utilities::showErrorMessage($Tk, $IV, $Bh);
        E8:
        goto bm;
        Ib:
        if (isset($_POST["\x52\145\x6c\x61\171\123\x74\141\164\x65"]) && $_POST["\x52\145\154\x61\x79\123\x74\x61\164\145"] == "\x74\x65\163\x74\126\x61\x6c\x69\x64\x61\x74\145") {
            goto IY;
        }
        $Tk = "\x57\145\40\143\157\165\154\144\x20\156\x6f\x74\40\163\x69\x67\x6e\x20\x79\x6f\165\x20\x69\156\56";
        $IV = "\120\x6c\145\x61\x73\145\x20\x43\x6f\x6e\164\141\143\164\x20\x79\x6f\165\162\40\141\x64\155\151\156\151\x73\x74\x72\141\x74\x6f\x72\x2e";
        Utilities::showErrorMessage($Tk, $IV, "\x2d");
        goto pi;
        IY:
        $Tk = "\114\x69\x63\145\x6e\163\145\40\153\145\171\x20\x79\x6f\x75\40\x68\x61\x76\145\x20\x65\x6e\164\145\162\x65\144\40\150\141\x73\40\141\x6c\162\145\x61\144\171\x20\x62\145\x65\x6e\x20\x75\x73\145\x64\56";
        $IV = "\120\x6c\145\x61\x73\x65\x20\145\156\164\x65\x72\x20\x61\40\x6b\145\171\x20\x77\150\151\143\x68\x20\x68\x61\x73\40\x6e\157\164\x20\142\x65\145\x6e\x20\x75\163\145\x64\40\142\145\x66\157\x72\x65\x20\157\156\40\141\x6e\171\40\157\x74\150\145\x72\x20\x69\156\163\x74\141\156\143\145\x20\157\x72\40\x69\x66\x20\171\157\x75\40\x68\x61\166\x65\40\x65\170\x61\x75\163\x74\x65\144\x20\x61\x6c\154\40\171\x6f\165\x72\40\x6b\145\x79\163\x20\x74\150\145\x6e\x20\142\165\x79\40\155\x6f\x72\x65\40\154\151\x63\x65\156\x73\x65\40\x66\x72\x6f\155\x20\114\151\x63\145\x6e\163\x69\156\147\x2e";
        Utilities::showErrorMessage($Tk, $IV, "\x2d");
        pi:
        bm:
        goto Z7;
        di:
        $h0 = $Yb->processSamlResponse($_POST, $pA);
        $rO = $h0["\162\145\x73\160\x6f\156\163\145"];
        $mj = $h0["\x72\145\x73\157\x75\162\143\145\163"];
        Z7:
        if (!(MiniorangeSAMLConstants::PLUGIN_VERSION == MiniorangeSAMLConstants::ENTERPRISE_VERSION && \Drupal\miniorange_saml\HigherUtilities::Is_Restricted_Domain($rO["\145\155\x61\x69\154"]) === TRUE)) {
            goto Sd;
        }
        $Tk = "\x59\157\x75\x20\141\162\145\x20\x6e\157\x74\x20\x61\154\154\x6f\x77\x65\x64\x20\x74\157\40\154\x6f\147\x69\x6e\40";
        $IV = "\x50\x6c\x65\x61\x73\x65\40\x43\157\x6e\164\141\x63\164\x20\171\157\x75\162\x20\x61\x64\x6d\x69\x6e\x69\163\x74\162\141\x74\x6f\162\x2e";
        $Bh = "\x59\x6f\x75\x72\40\x64\157\x6d\141\x69\x6e\40\x6d\x61\x79\x20\x62\x65\x20\142\x6c\157\x63\x6b\145\144\40\142\171\40\x61\144\155\x69\x6e";
        Utilities::showErrorMessage($Tk, $IV, $Bh);
        Sd:
        if ($XC->get("\155\151\156\151\157\162\141\156\147\x65\137\x73\141\155\154\x5f\x6c\x6f\x61\144\x5f\165\163\x65\x72") == 1) {
            goto ul;
        }
        $jI = user_load_by_name($rO["\165\x73\x65\162\x6e\x61\x6d\145"]);
        goto Vv;
        ul:
        $jI = user_load_by_mail($rO["\x65\155\141\x69\154"]);
        Vv:
        $my = 0;
        if (!($jI == NULL)) {
            goto i2;
        }
        $C1 = $XC->get("\x6d\x69\x6e\151\x6f\x72\x61\156\147\x65\x5f\163\x61\155\154\x5f\x64\x69\x73\x61\x62\x6c\145\137\141\165\x74\157\143\162\145\141\164\x65\137\x75\x73\x65\162\x73");
        if ($C1) {
            goto WO;
        }
        $ax = user_password(8);
        $WX = $XC->get("\155\151\x6e\x69\157\162\x61\x6e\147\x65\x5f\163\x61\x6d\x6c\137\x64\x65\x66\141\165\154\164\137\162\x6f\x6c\x65");
        $XO = ["\156\x61\x6d\x65" => $rO["\165\x73\145\x72\x6e\141\155\145"], "\155\x61\151\154" => $rO["\145\155\141\151\154"], "\160\x61\x73\x73" => $ax, "\x73\164\141\164\x75\x73" => 1];
        $jI = User::create($XO);
        $jI->save();
        if (!($WX != "\141\x75\164\x68\145\156\164\151\143\141\164\145\x64" && $XC->get("\155\151\156\151\157\162\x61\x6e\147\x65\137\x73\x61\x6d\x6c\137\145\x6e\x61\142\x6c\145\137\x72\x6f\154\x65\x6d\x61\160\x70\x69\x6e\147"))) {
            goto W3;
        }
        $jI->addRole($WX);
        $jI->save();
        W3:
        goto FF;
        WO:
        $Tk = "\101\143\x63\x6f\165\x6e\x74\40\x64\157\145\x73\40\156\157\164\x20\x65\170\x69\163\164\40\x77\x69\164\x68\x20\x79\x6f\x75\162\40\165\163\145\162\156\x61\155\145\56";
        $IV = "\x50\x6c\145\141\163\x65\x20\x43\x6f\156\164\141\143\164\40\x79\x6f\x75\x72\x20\141\x64\155\151\156\x69\x73\x74\x72\141\164\x6f\x72\56";
        $Bh = "\x41\165\164\157\40\x63\x72\x65\x61\164\x69\x6f\x6e\40\x6f\x66\x20\165\x73\145\162\40\151\x73\x20\156\157\164\x20\141\154\154\157\167\x65\x64\40\151\x66\x20\x75\163\145\x72\40\x64\157\x65\x73\40\156\157\x74\40\x65\170\x69\163\164\56";
        Utilities::showErrorMessage($Tk, $IV, $Bh);
        FF:
        i2:
        $lA = array();
        $lA = $rO["\143\x75\163\x74\157\155\106\151\145\154\144\x41\164\x74\162\151\142\x75\164\145\x73"];
        $jI = User::load($jI->id());
        $GO = json_decode($XC->get("\x6d\151\x6e\151\157\162\x61\156\x67\145\x5f\163\141\155\x6c\137\x63\165\163\164\x6f\155\137\141\x74\x74\x72\x73\x5f\x6d\141\160\137\163\145\160"));
        foreach ($lA as $Tg => $dO) {
            $qi = $jI->get($Tg);
            $PU = $qi->getFieldDefinition();
            $Rq = $PU->getFieldStorageDefinition();
            if ($Rq->getType() === "\x65\156\164\151\164\171\137\x72\x65\146\145\162\145\156\143\x65") {
                goto v7;
            }
            if (Utilities::isMultiple($Tg) && !is_null($GO->{$Tg})) {
                goto Sv;
            }
            $VI = array($dO);
            goto iG;
            Sv:
            $VI = explode($GO->{$Tg}, $dO);
            iG:
            $jI->get($Tg)->setValue($VI);
            $jI->save();
            goto aC;
            v7:
            $pp = $Rq->getSetting("\164\141\x72\x67\x65\x74\137\164\x79\160\145");
            $l2 = $PU->getSetting("\150\x61\x6e\x64\x6c\x65\162\137\x73\x65\164\164\151\156\147\163");
            $xX = \Drupal::entityTypeManager()->getStorage($pp)->loadMultiple(NULL);
            if (!isset($l2["\164\141\162\147\145\x74\137\x62\x75\156\x64\154\x65\163"])) {
                goto ti;
            }
            if (Utilities::isMultiple($Tg) && !is_null($GO->{$Tg})) {
                goto jU;
            }
            $VI = array($dO);
            goto h_;
            jU:
            $VI = explode($GO->{$Tg}, $dO);
            h_:
            $A_ = [];
            $Dy = [];
            foreach ($VI as $dO) {
                $xX = \Drupal::entityTypeManager()->getStorage($pp)->loadByProperties(["\x6e\141\155\x65" => $dO]);
                $Nd = false;
                foreach ($xX as $S4) {
                    if (!in_array($S4->bundle(), $l2["\164\141\162\147\145\x74\x5f\142\165\156\x64\154\x65\163"])) {
                        goto k5;
                    }
                    $A_[] = $S4->id();
                    $Nd = true;
                    k5:
                    C2:
                }
                Nb:
                if ($Nd) {
                    goto sc;
                }
                $Dy[] = $dO;
                sc:
                Fs:
            }
            w3:
            $rC = isset($l2["\141\x75\x74\157\x5f\143\x72\x65\141\164\x65"]) ? $l2["\141\165\x74\x6f\x5f\143\x72\x65\x61\164\145"] : false;
            $E7 = isset($l2["\x61\165\164\x6f\x5f\143\x72\145\141\x74\x65\x5f\x62\x75\x6e\x64\154\x65"]) ? $l2["\x61\x75\x74\157\137\143\x72\x65\x61\164\145\137\142\x75\156\144\154\x65"] : '';
            if (!($rC && $pp == "\164\x61\x78\x6f\x6e\x6f\x6d\x79\137\x74\145\x72\155")) {
                goto q3;
            }
            foreach ($Dy as $Hs) {
                $za = Term::create(["\x6e\141\x6d\145" => $Hs, "\x76\x69\x64" => $E7]);
                $za->save();
                $A_[] = $za->id();
                g1:
            }
            ce:
            q3:
            $qi->setValue($A_);
            $jI->save();
            ti:
            aC:
            KH:
        }
        z0:
        if (!(!is_null($jI) && $XC->get("\155\151\156\151\157\162\x61\156\x67\x65\x5f\163\141\155\154\x5f\x65\156\141\142\154\x65\x5f\162\x6f\154\145\x6d\x61\x70\160\151\x6e\147"))) {
            goto my;
        }
        $uu = $XC->get("\155\x69\x6e\x69\157\162\141\156\x67\x65\137\163\141\155\x6c\x5f\162\157\x6c\145\137\155\141\160\160\x69\156\147\x5f\141\162\162") != null ? (array) json_decode($XC->get("\x6d\151\x6e\151\x6f\x72\141\156\x67\x65\137\163\x61\x6d\x6c\x5f\x72\x6f\154\145\137\155\x61\x70\160\151\x6e\147\x5f\x61\162\162")) : [];
        $Hz = array();
        $Hz = $rO["\x63\165\x73\164\157\155\106\151\145\x6c\144\x52\x6f\154\x65\163"];
        $cn = \Drupal::configFactory()->getEditable("\x6d\151\156\151\x6f\162\141\x6e\147\145\137\x73\x61\155\x6c\x2e\x73\145\x74\164\x69\156\x67\163")->get("\155\151\156\151\157\162\141\x6e\147\145\x5f\163\141\155\x6c\x5f\x64\x69\x73\x61\142\x6c\145\137\x72\x6f\x6c\145\x5f\165\160\144\x61\164\145");
        $uJ = $jI->getRoles();
        if ($cn) {
            goto xh;
        }
        foreach ($uJ as $Tg => $dO) {
            if (in_array($dO, array_keys($uu))) {
                goto TF;
            }
            if (!($dO != $XC->get("\x6d\x69\156\151\157\162\141\156\x67\145\137\163\141\155\x6c\x5f\x64\x65\146\141\165\154\x74\x5f\162\x6f\154\145"))) {
                goto zF;
            }
            $jI->removeRole($dO);
            $jI->save();
            zF:
            TF:
            XW:
        }
        z2:
        xh:
        foreach ($uu as $Tg => $dO) {
            $Yc = FALSE;
            $cF = explode("\x3b", $dO);
            foreach ($cF as $jt => $jW) {
                if (!(is_array($Hz) && in_array($jW, $Hz))) {
                    goto wo;
                }
                $Yc = TRUE;
                wo:
                eD:
            }
            Uc:
            if ($Yc && $Tg != "\x61\165\x74\150\145\x6e\x74\151\x63\x61\164\145\144") {
                goto Cs;
            }
            $jI->removeRole($Tg);
            $jI->save();
            goto oO;
            Cs:
            $jI->addRole($Tg);
            $jI->save();
            oO:
            VT:
        }
        td:
        my:
        $z0 = $XC->get("\x6d\151\x6e\151\157\162\x61\156\x67\145\x5f\163\141\x6d\154\x5f\x65\156\x61\x62\x6c\x65\x5f\160\x72\x6f\146\x69\x6c\x65\x5f\155\141\x70\160\151\156\x67");
        if (!(MiniorangeSAMLConstants::PLUGIN_VERSION == MiniorangeSAMLConstants::ENTERPRISE_VERSION && $z0)) {
            goto Ie;
        }
        HigherUtilities::profileFieldMapping($jI, $mj);
        Ie:
        if (user_is_blocked($rO["\165\163\x65\162\156\141\x6d\145"]) == FALSE) {
            goto BT;
        }
        $Tk = "\125\163\145\162\40\x42\x6c\x6f\x63\153\x65\144\40\x42\171\40\101\144\x6d\x69\156\x69\x73\164\162\x61\164\x6f\162\56";
        $IV = "\120\x6c\x65\x61\x73\145\x20\x43\x6f\156\164\x61\143\164\x20\x79\x6f\x75\x72\40\x61\144\x6d\x69\x6e\151\163\164\x72\141\164\157\x72\x2e";
        $Bh = "\x54\x68\x69\163\40\165\x73\145\x72\40\x61\143\143\x6f\x75\x6e\x74\40\x69\x73\40\x6e\157\164\40\141\154\154\x6f\x77\145\144\x20\x74\x6f\40\x6c\x6f\x67\151\156\x2e";
        Utilities::showErrorMessage($Tk, $IV, $Bh);
        return new Response();
        goto ZF;
        BT:
        if (!(array_key_exists("\x72\145\x6c\x61\x79\x5f\x73\164\141\164\145", $rO) && !empty($rO["\x72\x65\154\141\171\x5f\163\x74\141\x74\145"]))) {
            goto we;
        }
        $Yu = $rO["\x72\145\154\x61\171\137\163\164\x61\164\145"];
        we:
        $oY = Utilities::getBaseUrl();
        if (!(empty($Yu) || $Yu == "\x2f")) {
            goto PK;
        }
        $Yu = $oY;
        PK:
        $_SESSION["\163\x65\x73\163\151\x6f\x6e\111\156\x64\x65\170"] = $rO["\x73\x65\x73\x73\151\157\x6e\x49\x6e\144\x65\170"];
        $_SESSION["\116\141\x6d\145\111\104"] = $rO["\116\x61\x6d\145\x49\104"];
        $_SESSION["\x6d\x6f\137\x73\x61\x6d\x6c"]["\x6c\157\147\x67\x65\144\137\x69\x6e\137\x77\x69\x74\x68\x5f\151\144\x70"] = TRUE;
        \Drupal::moduleHandler()->invokeAll("\x69\x6e\166\157\x6b\x65\137\155\x69\x6e\x69\x6f\162\141\x6e\147\145\x5f\62\146\x61\137\x62\x65\x66\157\162\x65\137\x6c\x6f\x67\x69\156", [$jI]);
        \Drupal::moduleHandler()->invokeAll("\155\x69\x6e\x69\157\162\141\156\147\x65\137\163\141\x6d\154\x5f\x69\x64\x70\x5f\x72\x65\163\x6f\165\162\x63\x65\163", [$jI, $mj]);
        user_login_finalize($jI);
        if (!($XC->get("\x6d\x69\156\151\157\162\141\x6e\147\x65\137\163\141\x6d\x6c\x5f\162\x65\163\x74\x72\x69\x63\x74\x5f\162\x65\x64\x69\x72\x65\x63\164\x5f\x6f\165\x74\x73\x69\144\x65\x5f\144\x6f\x6d\x61\x69\x6e") == TRUE)) {
            goto a8;
        }
        $q_ = parse_url($Yu);
        $tV = parse_url($oY);
        $HE = isset($tV["\150\x6f\163\164"]) ? $tV["\x68\157\x73\x74"] : FALSE;
        $kR = isset($q_["\150\x6f\x73\x74"]) ? $q_["\150\x6f\163\x74"] : FALSE;
        if (!($kR !== FALSE && $HE !== $kR)) {
            goto Fj;
        }
        $Yk = $Yu;
        $Yu = $oY;
        $Hi = $XC->get("\155\x69\156\151\x6f\x72\141\156\147\x65\x5f\163\x61\155\154\x5f\x77\x68\151\x74\x65\x6c\x69\163\164\x5f\144\x6f\x6d\x61\151\156\x73");
        $hS = explode("\73", $Hi);
        foreach ($hS as $yM) {
            if (!($yM == '' or $yM == "\x2f")) {
                goto iw;
            }
            goto Bl;
            iw:
            if (!(strpos($kR, trim($yM)) !== false)) {
                goto o5;
            }
            $Yu = $Yk;
            goto br;
            o5:
            Bl:
        }
        br:
        Fj:
        a8:
        \Drupal::moduleHandler()->invokeAll("\x68\x65\x61\x64\x6c\145\x73\x73\137\x73\x73\157\137\162\145\144\x69\x72\x65\x63\164", [$jI, $Yu]);
        $rO = new RedirectResponse($Yu);
        $gl = \Drupal::request();
        $gl->getSession()->save();
        $rO->prepare($gl);
        \Drupal::service("\x6b\145\162\x6e\x65\154")->terminate($gl, $rO);
        $rO->send();
        exit;
        return new Response();
        ZF:
        goto A5;
        Qy:
        $gl = \Drupal::request();
        $gl->getSession()->clear();
        $rO = new RedirectResponse(Utilities::getBaseUrl());
        $rO->send();
        return new Response();
        A5:
        return new Response();
    }
    static function saml_logout()
    {
        $XC = \Drupal::config("\155\x69\156\x69\157\x72\141\x6e\x67\145\137\163\141\x6d\x6c\56\x73\145\x74\164\x69\156\147\x73");
        $dx = $XC->get("\x73\145\x63\165\x72\151\x74\x79\x5f\163\x69\147\x6e\141\x74\165\x72\145\137\141\154\x67\157\x72\151\x74\x68\x6d");
        $Sb = Utilities::getBaseUrl();
        $QW = Utilities::getRedirectUrAfterLogout($Sb);
        $Tf = $XC->get("\x6d\x69\x6e\x69\x6f\162\x61\x6e\147\145\x5f\x73\141\x6d\154\137\151\x64\x70\137\154\157\147\157\x75\164\x5f\165\x72\x6c");
        $FO = $XC->get("\x6d\x69\156\x69\x6f\x72\x61\x6e\147\x65\137\163\x61\x6d\x6c\137\163\x6c\157\x5f\x68\x74\164\x70\137\x62\151\156\144\x69\x6e\147");
        if (!empty($Tf)) {
            goto gE;
        }
        $gl = \Drupal::request();
        $gl->getSession()->clear();
        $rO = new RedirectResponse($QW);
        $rO->send();
        return new Response();
        goto B5;
        gE:
        if (!\Drupal::service("\163\x65\163\163\151\x6f\x6e")->getId() || \Drupal::service("\x73\x65\x73\x73\151\157\156")->getId() == '' || !isset($_SESSION)) {
            goto px;
        }
        if (!isset($_SESSION["\x6d\157\x5f\x73\x61\155\x6c"]["\x6c\157\x67\x67\145\144\x5f\x69\x6e\137\x77\151\164\x68\137\x69\144\160"])) {
            goto W_;
        }
        unset($_SESSION["\155\x6f\x5f\163\141\155\154"]);
        $lV = $_SESSION["\163\145\163\x73\x69\157\x6e\111\156\144\x65\170"];
        $IY = $_SESSION["\116\141\x6d\x65\111\x44"];
        Utilities::checkIfLogoutRequest($_REQUEST, $_GET);
        $KQ = $Sb;
        $El = Utilities::createLogoutRequest($IY, Utilities::getIssuer(), $Tf, $FO, $lV);
        $Dd = $XC->get("\x6d\x69\156\x69\157\162\x61\156\147\145\137\x73\141\155\154\x5f\162\x65\x71\165\145\163\x74\x5f\163\x69\147\156\145\144");
        if (empty($FO) || $FO == "\x48\124\x54\120\55\122\x65\x64\x69\162\x65\x63\x74") {
            goto Ua;
        }
        if ($Dd) {
            goto J0;
        }
        $Xn = base64_encode($El);
        Utilities::postSAMLRequest($Tf, $Xn, $KQ);
        exit;
        J0:
        $Xn = Utilities::signXML($El, Utilities::getPublicCertificate(), Utilities::getPrivateKey(), $dx, "\x4e\x61\155\x65\111\x44");
        Utilities::postSAMLRequest($Tf, $Xn, $KQ);
        goto t5;
        Ua:
        $El = "\x53\101\115\114\122\145\161\x75\x65\x73\x74\x3d" . $El . "\46\x52\145\154\x61\x79\123\164\141\x74\x65\75" . urlencode($KQ);
        $kh = $Tf;
        if (strpos($Tf, "\x3f") !== false) {
            goto M_;
        }
        $kh .= "\x3f";
        goto Fh;
        M_:
        $kh .= "\x26";
        Fh:
        if (!$Dd) {
            goto IG;
        }
        if ($dx == "\122\123\x41\x5f\123\x48\x41\62\65\x36") {
            goto jg;
        }
        if ($dx == "\122\123\101\137\123\110\101\63\70\x34") {
            goto N0;
        }
        if ($dx == "\122\x53\101\137\x53\110\101\65\61\62") {
            goto NK;
        }
        if ($dx == "\x52\x53\101\x5f\x53\x48\x41\x31") {
            goto wr;
        }
        goto Ga;
        jg:
        $El .= "\46\123\151\x67\101\x6c\x67\75" . urlencode(XMLSecurityKey::RSA_SHA256);
        goto Ga;
        N0:
        $El .= "\x26\x53\151\x67\101\x6c\147\x3d" . urlencode(XMLSecurityKey::RSA_SHA384);
        goto Ga;
        NK:
        $El .= "\46\x53\x69\147\101\154\147\x3d" . urlencode(XMLSecurityKey::RSA_SHA512);
        goto Ga;
        wr:
        $El .= "\46\x53\151\147\101\154\147\x3d" . urlencode(XMLSecurityKey::RSA_SHA1);
        Ga:
        $Kb = array("\164\x79\x70\x65" => "\160\162\151\x76\x61\164\145");
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Kb);
        if ($dx == "\x52\123\101\137\x53\110\x41\x33\70\x34") {
            goto mX;
        }
        if ($dx == "\x52\x53\101\137\x53\110\101\x35\61\x32") {
            goto aW;
        }
        if ($dx == "\122\x53\x41\x5f\x53\110\101\x31") {
            goto QN;
        }
        goto Yz;
        mX:
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA384, $Kb);
        goto Yz;
        aW:
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA512, $Kb);
        goto Yz;
        QN:
        $Tg = new XMLSecurityKey(XMLSecurityKey::RSA_SHA1, $Kb);
        Yz:
        $Tg->loadKey(Utilities::getPrivateKey(), FALSE);
        $jM = new XMLSecurityDSig();
        $O6 = $Tg->signData($El);
        $O6 = base64_encode($O6);
        $kh .= $El . "\x26\123\151\x67\156\141\x74\165\x72\x65\x3d" . urlencode($O6);
        if ($XC->get("\155\x69\x6e\151\157\x72\141\x6e\x67\145\x5f\163\x61\155\154\137\x73\145\x6e\x64\x5f\163\154\157\x5f\x69\x6e\137\151\146\x72\141\155\145")) {
            goto ZQ;
        }
        header("\114\x6f\x63\141\x74\x69\x6f\156\72\x20" . $kh);
        exit;
        goto qe;
        ZQ:
        echo "\74\x69\146\x72\x61\155\145\40\151\144\x3d\47\x6d\157\137\x73\141\x6d\154\x5f\x69\x66\162\141\155\145\x5f\163\154\157\47\x20\163\162\143\75\47" . $kh . "\x27\x20\163\x74\x79\154\145\75\x27\160\157\163\151\164\151\x6f\156\x3a\40\141\x62\x73\x6f\x6c\165\x74\x65\x3b\x20\x68\x65\x69\x67\150\x74\x3a\40\60\x3b\40\167\151\144\164\150\72\x20\x30\73\40\x62\157\x72\144\145\x72\72\40\x30\73\x27\x20\76\x3c\57\151\x66\x72\141\x6d\145\x3e";
        exit;
        qe:
        goto qm;
        IG:
        $kh .= $El;
        if ($XC->get("\x6d\x69\156\x69\157\x72\x61\156\147\145\137\x73\141\155\x6c\137\x73\145\156\144\137\163\154\157\x5f\151\156\137\x69\146\162\141\155\x65")) {
            goto cX;
        }
        $rO = new RedirectResponse($kh);
        $rO->send();
        return new Response();
        goto QQ;
        cX:
        echo "\x3c\x69\x66\x72\x61\155\145\40\151\144\x3d\x27\155\x6f\x5f\163\141\155\x6c\137\151\x66\x72\141\155\145\x5f\163\154\x6f\x27\x20\163\x72\x63\75\x27" . $kh . "\x27\40\x73\x74\171\x6c\145\x3d\x27\x70\157\163\x69\x74\x69\157\x6e\72\40\141\x62\163\157\x6c\x75\x74\145\x3b\x20\150\x65\x69\147\150\164\x3a\40\x30\73\40\x77\151\144\164\x68\x3a\40\60\73\x20\x62\157\162\x64\x65\x72\72\x20\x30\73\x27\x20\x3e\74\57\151\146\162\141\155\x65\76";
        exit;
        QQ:
        qm:
        t5:
        W_:
        $gl = \Drupal::request();
        $gl->getSession()->clear();
        if (!($XC->get("\155\151\156\151\157\x72\141\x6e\147\145\137\x73\141\x6d\154\x5f\x73\145\156\x64\x5f\163\x6c\157\x5f\x69\x6e\137\151\146\162\141\x6d\x65") && !isset($_GET["\146\x69\x6e\x61\154"]))) {
            goto yG;
        }
        echo "\x3c\163\x63\162\x69\160\x74\76\x20\167\151\156\144\157\167\56\x74\x6f\x70\56\154\x6f\x63\x61\x74\x69\157\x6e\x2e\150\x72\x65\146\40\x3d\40\x27" . $Sb . "\x2f\165\163\x65\x72\x2f\x6c\157\147\157\x75\x74\x3f\x66\151\x6e\141\x6c\75\x74\162\x75\145\x27\73\x20\74\57\163\143\162\151\160\164\x3e";
        exit;
        yG:
        $rO = new RedirectResponse($QW);
        $rO->send();
        return new Response();
        goto Ja;
        px:
        session_start();
        return new Response();
        Ja:
        B5:
        return new Response();
    }
    function test_configuration()
    {
        self::saml_login('', "\x74\x65\x73\x74\x56\x61\154\151\144\141\164\x65");
        return new Response();
    }
    function saml_request()
    {
        $Uo = \Drupal::config("\155\151\156\x69\x6f\162\x61\156\147\145\137\x73\141\155\x6c\x2e\163\x65\164\x74\x69\156\147\163")->get("\x6d\x69\x6e\151\x6f\162\x61\156\x67\145\x5f\x73\x61\x6d\x6c\137\151\144\x70\x5f\x6c\x6f\147\x69\x6e\x5f\x75\x72\154");
        $zI = \Drupal::config("\x6d\151\x6e\151\157\x72\x61\x6e\x67\x65\x5f\163\141\155\x6c\56\163\x65\x74\x74\151\x6e\147\x73")->get("\155\x69\156\x69\157\162\141\156\x67\x65\x5f\x73\x61\155\154\x5f\x6e\x61\155\x65\151\144\x5f\146\157\x72\x6d\141\164");
        $Pd = Utilities::createAuthnRequest(Utilities::getAcsUrl(), Utilities::getIssuer(), $zI, $Uo, "\110\124\x54\120\x2d\120\x4f\123\124", "\146\x61\154\x73\x65");
        $KQ = "\144\x69\163\x70\154\x61\171\123\x41\x4d\x4c\122\145\x71\x75\x65\163\164";
        $Dd = \Drupal::config("\155\x69\156\151\157\162\x61\x6e\x67\x65\x5f\x73\141\155\154\56\163\145\x74\164\151\x6e\147\163")->get("\x6d\151\156\151\157\x72\x61\156\x67\x65\x5f\x73\141\155\x6c\x5f\162\x65\x71\165\x65\x73\x74\x5f\163\x69\x67\x6e\x65\144");
        $dx = \Drupal::config("\x6d\x69\x6e\x69\157\x72\x61\x6e\147\145\x5f\163\141\155\154\x2e\x73\145\164\164\x69\x6e\x67\163")->get("\163\x65\x63\x75\162\151\x74\171\x5f\163\x69\x67\x6e\141\x74\x75\162\x65\x5f\x61\x6c\x67\157\162\x69\x74\150\155");
        if (!$Dd) {
            goto rO;
        }
        $Xn = Utilities::signXML($Pd, Utilities::getPublicCertificate(), Utilities::getPrivateKey(), $dx, "\x4e\x61\155\145\111\x44\x50\x6f\154\151\143\x79");
        $Pd = base64_decode($Xn);
        rO:
        Utilities::Print_SAML_Request($Pd, $KQ);
        return new Response();
    }
    function saml_response_generator()
    {
        self::saml_login('', "\144\x69\x73\160\x6c\141\171\123\141\155\x6c\122\145\163\160\157\x6e\x73\145");
        return new Response();
    }
    public function openModalForm()
    {
        $rO = new AjaxResponse();
        $b7 = $this->formBuilder->getForm("\134\104\x72\x75\160\x61\x6c\x5c\155\151\x6e\151\x6f\162\x61\x6e\x67\x65\137\x73\141\155\x6c\x5c\106\x6f\162\x6d\134\115\151\x6e\151\x6f\162\141\x6e\x67\x65\123\x41\x4d\x4c\x52\145\x6d\157\x76\x65\x4c\151\143\x65\156\163\x65");
        $rO->addCommand(new OpenModalDialogCommand("\x52\x65\x6d\x6f\x76\x65\40\x4c\151\x63\145\156\x73\x65\x20\x4b\x65\x79", $b7, ["\x77\x69\144\x74\150" => "\70\60\x30"]));
        return $rO;
    }
    public function moLicenseFetch()
    {
        global $base_url;
        $MI = \Drupal::config("\x6d\151\156\x69\157\x72\x61\156\147\145\x5f\163\x61\x6d\154\56\163\145\x74\x74\x69\x6e\x67\x73")->get("\155\151\x6e\151\x6f\x72\x61\x6e\x67\145\137\x73\x61\155\x6c\x5f\x63\x75\x73\x74\157\155\145\162\x5f\141\144\x6d\151\x6e\x5f\x65\155\x61\x69\x6c");
        $ao = new MiniorangeSAMLCustomer($MI, NULL, NULL, NULL);
        $uD = json_decode($ao->ccl(), true);
        Utilities::mo_save_expiry_details($uD);
        \Drupal::messenger()->addStatus(t("\x53\165\143\x63\145\163\x73\146\165\154\x6c\x79\x20\146\145\164\143\150\x65\x64\40\x74\x68\x65\40\x75\160\x64\141\x74\145"));
        $rO = new RedirectResponse($base_url . "\57\x61\144\x6d\151\156\57\143\x6f\156\146\151\x67\x2f\x70\145\x6f\x70\154\145\57\155\151\x6e\151\x6f\162\x61\156\147\x65\x5f\x73\141\x6d\x6c\57\x63\165\x73\164\x6f\x6d\145\162\x5f\163\145\164\x75\x70");
        $rO->send();
    }
    function saml_metadata()
    {
        $XC = \Drupal::config("\x6d\151\x6e\151\x6f\x72\x61\x6e\147\x65\137\x73\141\155\x6c\x2e\x73\145\164\164\151\x6e\x67\x73");
        $Sb = Utilities::getBaseUrl();
        $ze = Utilities::getIssuer();
        $QT = Utilities::getAcsUrl();
        $OY = Utilities::getPublicCertificate();
        $pn = preg_replace("\x2f\133\15\12\135\53\x2f", '', $OY);
        $pn = str_replace("\55\55\x2d\x2d\x2d\102\x45\x47\x49\116\40\x43\x45\122\x54\111\106\x49\x43\x41\124\105\55\55\55\x2d\x2d", '', $pn);
        $pn = str_replace("\55\x2d\55\x2d\55\x45\116\104\x20\103\x45\x52\x54\x49\x46\x49\103\x41\124\x45\55\55\x2d\55\55", '', $pn);
        $pn = str_replace("\55\55\x2d\55\x2d\x42\105\x47\x49\116\x20\x50\125\x42\114\x49\103\x20\113\x45\x59\55\55\x2d\x2d\55", '', $pn);
        $pn = str_replace("\55\x2d\55\x2d\x2d\x45\116\104\40\120\125\x42\x4c\x49\103\40\x4b\105\131\x2d\x2d\55\55\55", '', $pn);
        $pn = str_replace("\x20", '', $pn);
        if (isset($_REQUEST["\144\x6f\167\x6e\x6c\x6f\141\x64\103\x65\x72\x74\151\x66\151\143\x61\x74\x65"]) && $_REQUEST["\x64\x6f\167\156\x6c\157\141\x64\x43\x65\162\164\151\x66\151\143\x61\164\x65"] && boolval($_REQUEST["\144\157\167\x6e\154\x6f\x61\144\x43\x65\x72\x74\151\x66\151\x63\x61\x74\145"])) {
            goto J2;
        }
        if (isset($_REQUEST["\x64\157\167\156\154\157\141\x64"]) && $_REQUEST["\144\157\167\156\x6c\157\141\144"] && boolval($_REQUEST["\144\x6f\x77\x6e\154\x6f\x61\144"])) {
            goto tt;
        }
        $uY = "\103\x6f\156\164\145\156\x74\x2d\x54\x79\x70\145\72\40\x74\x65\170\164\57\170\155\154";
        goto Xj;
        J2:
        $uY = "\103\157\156\x74\x65\156\x74\55\x44\x69\x73\160\157\x73\151\164\x69\157\x6e\72\40\x61\164\164\x61\x63\150\155\145\x6e\164\x3b\x20\146\x69\x6c\x65\156\141\x6d\x65\75\42\x73\x70\x2d\x63\x65\x72\164\x69\x66\151\143\141\164\x65\56\143\x72\x74\42";
        header($uY);
        echo xss::filter($OY);
        exit;
        goto Xj;
        tt:
        $uY = "\103\x6f\x6e\x74\x65\x6e\x74\x2d\104\x69\x73\160\x6f\163\151\164\151\157\x6e\72\40\x61\164\164\x61\143\150\155\145\x6e\164\73\40\146\151\154\x65\x6e\x61\x6d\145\x3d\42\x4d\x65\x74\x61\144\141\164\141\56\x78\155\154\x22";
        Xj:
        header($uY);
        echo "\x3c\77\x78\155\154\x20\166\x65\162\x73\151\157\x6e\x3d\x22\x31\56\60\42\x3f\76\xd\12\40\x20\x20\x20\40\40\x20\40\x3c\155\144\72\x45\156\x74\x69\164\x79\x44\145\163\x63\x72\x69\160\x74\157\x72\40\x78\155\x6c\x6e\163\x3a\155\x64\75\x22\165\162\x6e\x3a\x6f\141\x73\x69\x73\x3a\156\x61\155\145\x73\x3a\x74\143\x3a\x53\101\x4d\114\x3a\62\56\x30\x3a\x6d\145\x74\141\x64\141\x74\141\42\x20\166\x61\154\x69\x64\x55\x6e\164\x69\154\x3d\42\x32\x30\x32\64\x2d\x30\x33\55\62\x37\x54\x32\63\x3a\65\71\x3a\65\71\x5a\42\x20\143\141\x63\x68\x65\104\x75\x72\141\x74\151\157\x6e\x3d\42\120\124\61\x34\64\x36\70\x30\x38\x37\71\x32\123\x22\x20\145\156\164\x69\x74\171\x49\x44\x3d\42" . $ze . "\42\76\15\xa\x20\x20\x20\x20\40\x20\x20\40\x20\40\74\x6d\x64\x3a\123\120\123\123\117\104\145\x73\x63\162\x69\160\x74\x6f\x72\x20\x41\165\x74\150\x6e\122\145\x71\165\145\163\x74\163\x53\151\147\156\145\x64\75\42\x74\162\x75\x65\x22\40\127\x61\156\x74\x41\x73\x73\145\x72\x74\x69\157\x6e\x73\123\151\147\156\145\144\75\42\x74\x72\165\x65\42\40\x70\162\x6f\x74\x6f\x63\x6f\x6c\123\165\160\x70\157\x72\x74\105\156\x75\155\x65\162\141\x74\x69\x6f\x6e\75\x22\x75\162\156\x3a\157\x61\163\x69\163\72\x6e\141\x6d\x65\x73\x3a\x74\143\x3a\123\x41\115\114\72\62\x2e\x30\x3a\160\162\x6f\x74\157\143\157\x6c\42\x3e\xd\xa\40\40\40\x20\x20\x20\40\40\x20\x20\40\40\x3c\155\144\x3a\x4b\145\171\x44\145\x73\143\162\151\x70\x74\x6f\x72\x20\165\163\x65\x3d\x22\163\x69\147\x6e\x69\156\x67\x22\76\15\xa\40\x20\x20\40\x20\40\x20\x20\x20\40\40\x20\x20\x20\x3c\144\x73\72\x4b\x65\171\x49\156\x66\x6f\x20\x78\x6d\x6c\156\163\72\x64\163\x3d\x22\x68\164\x74\160\x3a\57\x2f\x77\x77\x77\56\167\x33\56\x6f\x72\147\x2f\62\x30\x30\60\x2f\60\x39\57\x78\x6d\154\x64\163\x69\147\43\42\76\15\12\x20\x20\40\x20\x20\40\x20\40\40\40\x20\40\40\x20\40\40\x3c\144\x73\72\x58\65\60\71\x44\141\164\141\x3e\xd\xa\x20\x20\40\x20\x20\40\x20\40\40\x20\40\x20\x20\x20\x20\x20\x20\40\74\x64\163\72\130\65\x30\71\103\145\x72\164\x69\x66\151\143\141\164\x65\76" . $pn . "\74\57\144\x73\x3a\130\x35\60\71\x43\145\162\164\151\146\151\x63\x61\x74\x65\x3e\xd\12\40\40\x20\40\x20\40\40\40\x20\40\40\x20\40\x20\x20\40\x3c\57\x64\x73\72\x58\65\60\71\104\x61\x74\141\x3e\xd\12\x20\40\x20\x20\40\x20\40\40\x20\40\x20\x20\40\40\x3c\x2f\x64\163\x3a\x4b\145\171\x49\x6e\146\157\76\15\12\x20\40\40\40\x20\x20\40\40\40\40\x20\40\x3c\x2f\x6d\x64\72\113\x65\x79\x44\145\163\x63\x72\x69\x70\164\157\162\76\15\12\x20\x20\40\40\x20\x20\x20\x20\40\x20\40\x20\x3c\155\144\x3a\x4b\x65\x79\104\145\163\143\x72\151\x70\164\x6f\162\x20\x75\x73\145\75\42\x65\156\x63\162\x79\160\164\151\x6f\156\x22\x3e\15\12\x20\40\40\x20\40\x20\x20\x20\x20\40\x20\x20\x20\40\74\x64\x73\x3a\113\145\x79\111\x6e\146\x6f\40\170\x6d\x6c\x6e\163\x3a\144\x73\75\42\x68\164\x74\x70\x3a\57\57\167\167\x77\56\167\x33\56\x6f\162\x67\57\x32\x30\x30\x30\x2f\60\71\x2f\170\x6d\x6c\x64\x73\x69\147\43\42\x3e\15\12\x20\x20\40\40\40\x20\40\40\x20\40\40\x20\40\40\x20\40\74\x64\163\x3a\x58\65\60\x39\104\141\164\141\x3e\15\12\40\x20\x20\x20\x20\40\40\40\x20\40\x20\x20\40\x20\40\40\40\x20\74\144\x73\72\x58\65\x30\x39\103\x65\x72\x74\151\x66\151\x63\x61\x74\x65\x3e" . $pn . "\x3c\57\144\163\x3a\130\x35\60\x39\103\x65\162\164\x69\146\x69\143\141\x74\145\x3e\15\12\x20\40\40\40\x20\40\40\40\40\x20\x20\x20\x20\x20\40\40\x3c\x2f\144\163\x3a\130\65\x30\71\104\x61\x74\141\x3e\xd\12\x20\x20\x20\x20\40\40\40\40\40\40\40\x20\40\x20\74\x2f\x64\x73\72\x4b\x65\x79\111\x6e\x66\157\x3e\xd\12\40\40\x20\40\40\x20\40\40\40\x20\40\40\x3c\x2f\x6d\x64\72\x4b\145\x79\104\145\x73\x63\162\x69\160\164\x6f\162\76\xd\xa\x20\x20\x20\x20\x20\40\x20\x20\x20\x20\x20\x20\x3c\155\x64\x3a\x53\151\x6e\147\x6c\145\x4c\157\x67\157\165\x74\123\x65\162\166\151\x63\145\40\x42\151\156\x64\x69\156\x67\x3d\42\x75\x72\156\72\x6f\141\163\x69\x73\x3a\x6e\x61\155\x65\163\72\164\x63\x3a\123\101\115\114\72\62\56\60\72\142\x69\x6e\x64\x69\156\147\x73\x3a\110\124\124\x50\55\x50\117\x53\x54\42\x20\x4c\157\143\141\164\151\157\156\75\42" . $Sb . "\57\x75\163\x65\x72\57\154\x6f\x67\x6f\165\x74\x22\x2f\x3e\15\xa\40\40\40\40\40\x20\x20\40\x20\40\40\x20\74\155\x64\72\123\x69\156\x67\x6c\145\x4c\157\x67\x6f\165\x74\123\x65\162\166\x69\143\145\x20\x42\x69\156\x64\151\156\147\75\x22\x75\162\x6e\72\x6f\141\163\151\x73\72\156\x61\x6d\x65\x73\72\x74\143\72\123\101\x4d\x4c\x3a\62\56\60\72\x62\x69\156\x64\151\x6e\147\x73\72\x48\x54\x54\120\x2d\122\145\144\151\x72\x65\x63\x74\42\x20\x4c\x6f\143\141\164\x69\157\x6e\75\x22" . $Sb . "\57\x75\163\x65\x72\x2f\x6c\x6f\147\157\165\x74\42\57\76\15\xa\x20\40\x20\x20\x20\40\40\40\x20\40\x20\x20\x3c\155\x64\72\116\141\155\x65\111\104\106\157\x72\x6d\141\x74\76\165\x72\x6e\72\x6f\x61\163\151\x73\x3a\x6e\141\155\x65\x73\72\x74\x63\72\x53\101\x4d\x4c\72\x31\56\x31\72\x6e\141\x6d\x65\x69\x64\55\x66\157\x72\155\x61\x74\x3a\x65\x6d\141\x69\x6c\x41\x64\144\162\145\163\x73\74\x2f\155\x64\x3a\x4e\141\155\x65\x49\104\106\157\162\155\141\164\x3e\15\xa\40\40\x20\x20\40\40\x20\x20\x20\40\40\x20\74\x6d\144\x3a\x4e\141\x6d\145\x49\104\106\157\162\x6d\141\164\x3e\x75\x72\156\x3a\157\x61\x73\x69\x73\x3a\x6e\141\x6d\145\163\x3a\164\143\x3a\x53\x41\x4d\x4c\x3a\x32\56\60\72\x6e\141\x6d\x65\151\x64\x2d\x66\157\x72\155\x61\164\x3a\165\x6e\163\160\145\143\151\x66\151\145\144\x3c\57\x6d\x64\x3a\x4e\x61\x6d\145\111\104\106\157\x72\x6d\141\164\x3e\15\12\x20\x20\x20\x20\x20\x20\x20\40\40\x20\40\40\74\155\144\72\x4e\x61\155\x65\111\x44\106\157\x72\155\x61\164\76\165\162\156\72\x6f\141\163\x69\163\x3a\x6e\x61\155\145\x73\x3a\164\143\x3a\123\x41\x4d\x4c\72\x32\x2e\x30\x3a\156\x61\155\x65\151\x64\55\146\x6f\x72\x6d\x61\x74\x3a\x74\x72\141\156\x73\151\x65\156\164\74\57\x6d\x64\72\x4e\x61\x6d\145\x49\x44\106\157\162\x6d\141\x74\x3e\15\xa\40\40\x20\x20\x20\40\x20\40\x20\x20\x20\40\74\x6d\144\72\x41\x73\x73\x65\162\x74\x69\157\156\103\x6f\156\x73\x75\x6d\x65\x72\x53\145\x72\x76\151\143\x65\x20\102\151\156\144\151\156\x67\x3d\x22\165\x72\x6e\72\157\x61\x73\151\x73\x3a\156\141\x6d\x65\x73\72\x74\x63\72\123\x41\x4d\114\x3a\62\x2e\60\x3a\142\151\x6e\x64\151\x6e\147\163\72\110\124\124\120\x2d\x50\x4f\123\x54\42\x20\x4c\x6f\143\x61\164\151\x6f\156\75\42" . $QT . "\x22\x20\x69\x6e\144\x65\170\75\42\61\x22\x2f\x3e\15\12\x20\40\x20\40\40\40\40\40\40\x20\x3c\x2f\155\144\72\123\120\x53\123\x4f\104\x65\163\x63\162\151\160\164\157\x72\76\xd\xa\x20\x20\x20\40\x20\40\40\40\40\40\x3c\155\144\72\117\x72\147\141\x6e\151\x7a\141\164\x69\157\156\76\xd\xa\x20\x20\40\x20\40\40\40\40\x20\x20\40\x20\74\155\x64\72\117\162\147\141\x6e\151\x7a\141\164\151\x6f\156\116\x61\155\145\40\x78\155\154\72\x6c\x61\156\x67\75\x22\x65\156\55\125\123\x22\76" . $XC->get("\155\157\x5f\163\x61\155\154\137\x6d\x65\x74\141\x64\141\x74\x61\137\117\162\147\x61\156\x69\x7a\141\x74\151\157\156\116\x61\x6d\x65") . "\x3c\x2f\x6d\x64\72\x4f\x72\147\x61\156\x69\x7a\x61\x74\x69\157\x6e\x4e\141\155\x65\x3e\xd\xa\x20\x20\40\40\x20\x20\40\x20\x20\40\x20\x20\x3c\155\x64\x3a\117\162\147\141\x6e\151\172\141\164\x69\157\156\x44\x69\x73\160\x6c\141\171\116\x61\155\145\40\170\155\x6c\x3a\154\x61\x6e\x67\x3d\42\145\156\x2d\125\x53\x22\76" . $XC->get("\155\x6f\137\163\x61\155\x6c\x5f\117\162\x67\x61\x6e\x69\172\141\x74\151\x6f\156\104\x69\x73\x70\x6c\x61\x79\x4e\x61\x6d\x65") . "\74\x2f\155\x64\x3a\x4f\x72\x67\141\x6e\x69\x7a\141\x74\x69\157\x6e\104\x69\163\160\154\x61\171\x4e\x61\155\145\x3e\xd\12\x20\40\x20\x20\x20\x20\x20\x20\x20\40\40\40\x3c\155\x64\x3a\117\162\147\x61\156\x69\172\x61\164\151\x6f\156\125\122\x4c\x20\170\155\x6c\72\x6c\141\156\147\75\42\x65\x6e\x2d\125\x53\42\76" . $XC->get("\x6d\x6f\x5f\x73\141\x6d\154\137\x4f\x72\147\141\156\x69\x7a\141\164\x69\157\156\x55\x52\x4c") . "\74\x2f\155\144\72\117\162\x67\x61\x6e\x69\x7a\141\x74\151\x6f\x6e\125\x52\x4c\x3e\xd\12\40\40\40\x20\40\40\x20\x20\40\40\74\x2f\x6d\x64\x3a\117\x72\147\x61\156\151\172\x61\x74\151\x6f\156\76\xd\12\40\x20\x20\40\x20\x20\40\40\x20\x20\74\x6d\144\x3a\103\157\156\164\x61\143\164\120\x65\162\x73\x6f\156\40\x63\157\x6e\x74\141\x63\x74\124\171\160\x65\x3d\42\x74\x65\x63\x68\156\x69\143\x61\154\x22\x3e\xd\xa\40\40\x20\40\40\40\x20\40\x20\40\x20\x20\x3c\155\144\72\x47\151\x76\x65\156\116\x61\155\x65\76" . $XC->get("\155\157\137\x73\x61\x6d\154\137\103\x6f\x6e\164\x61\143\x74\120\145\162\x73\157\x6e\x54\145\143\150\156\x69\x63\141\x6c\116\141\155\x65") . "\x3c\x2f\155\144\x3a\x47\x69\166\145\x6e\116\x61\155\145\x3e\xd\xa\x20\x20\x20\x20\40\40\x20\x20\40\40\40\x20\x3c\155\144\x3a\105\155\141\x69\154\101\144\144\x72\x65\x73\163\x3e" . $XC->get("\x6d\x6f\137\x73\141\x6d\x6c\137\103\x6f\x6e\x74\x61\143\x74\x50\x65\x72\163\157\156\x54\145\143\x68\x6e\x69\x63\x61\154\105\155\x61\x69\x6c") . "\x3c\57\155\x64\x3a\105\155\141\x69\x6c\x41\144\144\x72\145\163\x73\x3e\15\xa\40\x20\40\x20\x20\40\40\40\x20\40\x3c\x2f\x6d\x64\72\103\x6f\156\x74\x61\143\x74\120\x65\162\163\x6f\156\76\xd\12\40\x20\40\x20\x20\x20\40\40\x20\40\x3c\155\144\72\x43\x6f\x6e\x74\141\x63\164\120\145\x72\163\157\156\40\143\157\156\164\141\x63\164\x54\171\x70\x65\75\42\163\165\x70\x70\x6f\162\x74\x22\x3e\15\12\40\40\40\40\x20\x20\x20\x20\x20\40\40\x20\x3c\x6d\144\x3a\x47\151\166\x65\156\x4e\x61\155\x65\76" . $XC->get("\x6d\x6f\x5f\x73\x61\155\x6c\137\x43\x6f\x6e\x74\x61\143\x74\120\x65\162\x73\x6f\x6e\x53\x75\x70\160\x6f\x72\164\x4e\141\155\145") . "\74\57\x6d\144\x3a\107\x69\x76\x65\x6e\116\x61\x6d\145\x3e\xd\xa\x20\40\40\40\40\x20\x20\x20\40\x20\x20\40\74\x6d\x64\x3a\x45\x6d\x61\151\154\x41\x64\144\x72\x65\163\x73\x3e" . $XC->get("\x6d\x6f\137\x73\x61\x6d\x6c\x5f\103\157\156\x74\x61\x63\x74\120\x65\162\163\x6f\156\123\165\160\x70\157\x72\164\x45\155\x61\151\x6c") . "\x3c\x2f\x6d\144\x3a\105\155\x61\151\x6c\x41\x64\x64\162\145\163\163\x3e\15\xa\40\40\x20\40\x20\x20\40\40\40\x20\x3c\x2f\155\x64\72\103\x6f\x6e\x74\141\x63\x74\120\x65\x72\163\x6f\156\76\xd\xa\x20\x20\40\x20\40\40\x20\x20\x3c\x2f\x6d\144\72\105\156\x74\x69\x74\x79\104\x65\163\x63\162\x69\160\x74\x6f\x72\76";
        exit;
    }
}

Function Calls

None

Variables

None

Stats

MD5 0037e40484a6471200a0bf3e023b64ce
Eval Count 0
Decode Time 144 ms