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 MiniOrange\SP\Controller\Actions; use Magento\Framework\App\Action..

Decoded Output download

<?php 
 
 
namespace MiniOrange\SP\Controller\Actions; 
 
use Magento\Framework\App\Action\Action; 
use MiniOrange\SP\Helper\Exception\SAMLResponseException; 
use MiniOrange\SP\Helper\Exception\InvalidSignatureInResponseException; 
use MiniOrange\SP\Helper\SPMessages; 
use Magento\Framework\Event\Observer; 
use MiniOrange\SP\Helper\Saml2\SAML2Utilities; 
use MiniOrange\SP\Controller\Actions\ReadResponseAction; 
use MiniOrange\SP\Helper\SPConstants; 
use Magento\Framework\Controller\ResultFactory; 
use Magento\Framework\App\CsrfAwareActionInterface; 
use Magento\Framework\App\RequestInterface; 
use Magento\Framework\App\Request\InvalidRequestException; 
use MiniOrange\SP\Helper\Saml2\SAML2Assertion; 
use Magento\Framework\Message\ManagerInterface; 
use Psr\Log\LoggerInterface; 
use Magento\Backend\App\Action\Context; 
use MiniOrange\SP\Helper\SPUtility; 
use MiniOrange\SP\Controller\Actions\AdminLoginAction; 
use Magento\Framework\App\Request\Http; 
use MiniOrange\SP\Controller\Actions\ReadLogoutRequestAction; 
use Magento\Store\Model\StoreManagerInterface; 
use MiniOrange\SP\Controller\Actions\ShowTestResultsAction; 
use Magento\Framework\View\Result\PageFactory; 
use Magento\Framework\Data\Form\FormKey; 
class SpObserver extends Action implements CsrfAwareActionInterface 
{ 
    private $requestParams = array("SAMLRequest", "SAMLResponse", "option"); 
    private $controllerActionPair = array("account" => array("login", "create"), "auth" => array("login")); 
    protected $messageManager; 
    protected $logger; 
    protected $readResponseAction; 
    protected $spUtility; 
    protected $adminLoginAction; 
    protected $testAction; 
    protected $storeManager; 
    protected $currentControllerName; 
    protected $currentActionName; 
    protected $readLogoutRequestAction; 
    protected $requestInterface; 
    protected $request; 
    protected $formkey; 
    protected $_pageFactory; 
    protected $acsUrl; 
    protected $repostSAMLResponseRequest; 
    protected $repostSAMLResponsePostData; 
    protected $responseFactory; 
    protected $baseRelayState; 
    public function __construct(ManagerInterface $rD, LoggerInterface $UH, Context $H1, ReadResponseAction $Q6, SPUtility $ic, AdminLoginAction $Jn, Http $Jy, ReadLogoutRequestAction $Q2, RequestInterface $Iv, StoreManagerInterface $VN, ShowTestResultsAction $KR, ResultFactory $qB, PageFactory $XX, FormKey $L5) 
    { 
        $this->messageManager = $rD; 
        $this->logger = $UH; 
        $this->readResponseAction = $Q6; 
        $this->spUtility = $ic; 
        $this->adminLoginAction = $Jn; 
        $this->readLogoutRequestAction = $Q2; 
        $this->currentControllerName = $Jy->getControllerName(); 
        $this->currentActionName = $Jy->getActionName(); 
        $this->request = $Iv; 
        $this->testAction = $KR; 
        $this->storeManager = $VN; 
        $this->resultFactory = $qB; 
        $this->_pageFactory = $XX; 
        parent::__construct($H1); 
        $this->formkey = $L5; 
        $this->getRequest()->setParam("form_key", $this->formkey->getFormKey()); 
        $Qf = \Magento\Framework\App\ObjectManager::getInstance(); 
        $this->responseFactory = $Qf->get("\Magento\Framework\App\ResponseFactory"); 
    } 
    public function createCsrfValidationException(RequestInterface $Iv) : ?InvalidRequestException 
    { 
        return null; 
    } 
    public function validateForCsrf(RequestInterface $Iv) : ?bool 
    { 
        return true; 
    } 
    public function execute() 
    { 
        $this->spUtility->log_debug(" inside spObserver : execute: "); 
        $rU = array_keys($this->request->getParams()); 
        $xP = array_intersect($rU, $this->requestParams); 
        $nJ = $this->spUtility->getSessionData(SPConstants::IDP_NAME); 
        $this->spUtility->log_debug("spobserver: ", $nJ); 
        $iT = $this->getRequest()->getParams(); 
        $iT = $this->request->getParams(); 
        $hU = $this->request->getPost(); 
        $ss = true; 
        $this->baseRelayState = !empty($iT["RelayState"]) ? $iT["RelayState"] : ''; 
        $this->baseRelayState = !empty($this->baseRelayState) ? parse_url($this->baseRelayState, PHP_URL_HOST) : ''; 
        $this->spUtility->log_debug("execute: count-operation: " . count($xP)); 
        if (!(count($xP) > 0)) { 
            goto TI; 
        } 
        $this->_route_data(array_values($xP)[0], $iT, $hU); 
        TI: 
        $this->spUtility->log_debug("SPObserver: execute: stop flow before this. " . $this->baseRelayState); 
    } 
    private function checkIfUserShouldBeRedirected() 
    { 
        if (!($this->spUtility->getStoreConfig(SPConstants::AUTO_REDIRECT) != "1" || $this->spUtility->isUserLoggedIn())) { 
            goto CM; 
        } 
        return FALSE; 
        CM: 
        if (!($this->spUtility->getStoreConfig(SPConstants::BACKDOOR) == "1" && !empty($this->request->getParams()[SPConstants::SAML_SSO_FALSE]))) { 
            goto dU; 
        } 
        return FALSE; 
        dU: 
        $EM = !empty($this->controllerActionPair[$this->currentControllerName]) ? $this->controllerActionPair[$this->currentControllerName] : NULL; 
        return !is_null($EM) && is_array($EM) ? in_array($this->currentActionName, $EM) : FALSE; 
    } 
    private function _route_data($aq, $iT, $hU) 
    { 
        $this->spUtility->log_debug(" _route_data: operation " . $aq); 
        switch ($aq) { 
            case $this->requestParams[0]: 
                $this->readLogoutRequestAction->setRequestParam($iT)->setPostParam($hU)->execute(); 
                goto v4; 
            case $this->requestParams[1]: 
                if (!($iT["RelayState"] == SPConstants::TEST_RELAYSTATE)) { 
                    goto uf; 
                } 
                $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute(); 
                uf: 
                $this->checkForMultipleStoreAndProceedAccordingly($iT, $hU); 
                goto v4; 
            case $this->requestParams[2]: 
                if (!($iT["option"] == SPConstants::LOGIN_ADMIN_OPT)) { 
                    goto aG; 
                } 
                $this->adminLoginAction->execute(); 
                aG: 
                goto v4; 
        } 
        e9: 
        v4: 
    } 
    private function setParams($Iv) 
    { 
        $this->repostSAMLResponseRequest = $Iv; 
        return $this; 
    } 
    private function setPostData($post) 
    { 
        $this->repostSAMLResponsePostData = $post; 
        return $this; 
    } 
    private function checkForMultipleStoreAndProceedAccordingly($iT, $hU) 
    { 
        $this->spUtility->log_debug(" inside spObserver.checkForMultipleStoreAndProceedAccordingly(): "); 
        if ($this->storeManager->hasSingleStore()) { 
            goto aU; 
        } 
        $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: multistore"); 
        $Eo = $this->spUtility->getAdminBaseUrl(); 
        $this->spUtility->log_debug(" admin_base_url - " . $Eo); 
        $eQ = $this->spUtility->getCurrentUrl(); 
        $xA = parse_url($eQ, PHP_URL_HOST); 
        $this->spUtility->log_debug(" currentUrl - " . $eQ); 
        $this->spUtility->log_debug(" baseCurrentUrl - " . $xA); 
        $this->setParams($iT); 
        $this->setPostData($hU); 
        $Rd = $this->repostSAMLResponseRequest["SAMLResponse"]; 
        $LU = array_key_exists("RelayState", $this->repostSAMLResponseRequest) ? $this->repostSAMLResponseRequest["RelayState"] : "/"; 
        $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccording : relayState - " . $LU); 
        if (!($this->spUtility->isBlank($LU) || $LU == "/")) { 
            goto lg; 
        } 
        $this->spUtility->log_debug("checkForMultipleStoreAndProceedAccording : relayState is Blank- "); 
        $gI = $this->spUtility->getStoreConfig(SPConstants::B2B_STORE_URL); 
        $Ie = ''; 
        if ($this->spUtility->isBlank($gI)) { 
            goto Fs; 
        } 
        $this->spUtility->log_debug("checkForMultipleStoreAndProceedAccording : B2b url is set - "); 
        $Ie = $this->spUtility->getBaseUrlFromUrl($gI); 
        Fs: 
        if (!$this->spUtility->isBlank($Ie)) { 
            goto G6; 
        } 
        $Ie = $this->storeManager->getDefaultStoreView()->getBaseUrl(); 
        G6: 
        $tI = $Ie . SPConstants::SUFFIX_SPOBSERVER; 
        $LU = $Ie . SPConstants::SUFFIX_ACCOUNT_LOGIN; 
        $this->spUtility->log_debug("checkForMultipleStoreAndProceedAccordingly:New RelayState  = " . $LU); 
        $this->repostSAMLResponse($Rd, $LU, $tI); 
        return; 
        lg: 
        $this->baseRelayState = $this->baseRelayState = parse_url($LU, PHP_URL_HOST); 
        if ($this->spUtility->checkIfFlowStartedFromBackend($LU)) { 
            goto o5; 
        } 
        $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: No admin_url in relaystate"); 
        $dh = strpos($LU, $xA); 
        if ($dh !== false) { 
            goto u3; 
        } 
        $this->spUtility->log_debug("CurrentUrl not same as RelayState: CurrentUrl: " . $eQ); 
        $this->spUtility->log_debug("CurrentUrl not same as RelayState: RelayState: " . $LU); 
        $l6 = $this->storeManager->getStores(); 
        foreach ($l6 as $km) { 
            $tI = $km->getBaseUrl(); 
            $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: finding url -  " . $tI); 
            $i3 = strpos($LU, $tI); 
            if (!($i3 !== false)) { 
                goto sk; 
            } 
            $tI = $tI . SPConstants::SUFFIX_SPOBSERVER; 
            $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: posting response on - " . $tI); 
            $this->repostSAMLResponse($Rd, $LU, $tI); 
            return; 
            sk: 
            iw: 
        } 
        Vw: 
        goto xp; 
        u3: 
        $this->spUtility->log_debug("CurrentUrl same as RelayState. Processing Response.. - " . $eQ); 
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute(); 
        xp: 
        goto Zj; 
        o5: 
        $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: admin_url: processing response on: " . $LU); 
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute(); 
        Zj: 
        goto au; 
        aU: 
        $this->spUtility->log_debug(" checkForMultipleStoreAndProceedAccordingly: Single Store "); 
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute(); 
        au: 
    } 
    private function repostSAMLResponse($Rd, $AK, $RP) 
    { 
        $this->spUtility->log_debug(" Re-posting SAMLResponse to ssoUrl - " . $RP); 
        print_r("
                \xd\xa                <html>\xd\xa                    <head>
                        <script src='https://code.jquery.com/jquery-1.11.3.min.js'></script>\xd\xa                    </head>\xd
                    <body>
\xa                        <form action="" . $RP . "" method="post" id="saml-request-form" style="display:none;">
                            <input type="hidden" name="SAMLResponse" value="" . $Rd . "" />
                            <input type="hidden" name="RelayState" value="" . $AK . "" />
                        </form>\xd\xa                        <p>Please wait we are processing your request..</p>\xd
                        
                        <script type="text/javascript">\xd\xa                                $(function(){document.forms['saml-request-form'].submit();});\xd
                        </script>\xd
                    </body>\xd
                </html>"); 
        $this->spUtility->log_debug(" Reposted SAMLResponse successfully."); 
    } 
} ?>

Did this file decode correctly?

Original Code

<?php


namespace MiniOrange\SP\Controller\Actions;

use Magento\Framework\App\Action\Action;
use MiniOrange\SP\Helper\Exception\SAMLResponseException;
use MiniOrange\SP\Helper\Exception\InvalidSignatureInResponseException;
use MiniOrange\SP\Helper\SPMessages;
use Magento\Framework\Event\Observer;
use MiniOrange\SP\Helper\Saml2\SAML2Utilities;
use MiniOrange\SP\Controller\Actions\ReadResponseAction;
use MiniOrange\SP\Helper\SPConstants;
use Magento\Framework\Controller\ResultFactory;
use Magento\Framework\App\CsrfAwareActionInterface;
use Magento\Framework\App\RequestInterface;
use Magento\Framework\App\Request\InvalidRequestException;
use MiniOrange\SP\Helper\Saml2\SAML2Assertion;
use Magento\Framework\Message\ManagerInterface;
use Psr\Log\LoggerInterface;
use Magento\Backend\App\Action\Context;
use MiniOrange\SP\Helper\SPUtility;
use MiniOrange\SP\Controller\Actions\AdminLoginAction;
use Magento\Framework\App\Request\Http;
use MiniOrange\SP\Controller\Actions\ReadLogoutRequestAction;
use Magento\Store\Model\StoreManagerInterface;
use MiniOrange\SP\Controller\Actions\ShowTestResultsAction;
use Magento\Framework\View\Result\PageFactory;
use Magento\Framework\Data\Form\FormKey;
class SpObserver extends Action implements CsrfAwareActionInterface
{
    private $requestParams = array("\x53\101\x4d\x4c\122\x65\161\x75\x65\x73\x74", "\123\x41\x4d\x4c\x52\x65\x73\160\x6f\x6e\163\145", "\x6f\x70\x74\151\157\x6e");
    private $controllerActionPair = array("\141\x63\143\157\x75\156\x74" => array("\154\157\x67\x69\156", "\x63\x72\145\141\x74\x65"), "\141\x75\x74\150" => array("\x6c\157\x67\x69\156"));
    protected $messageManager;
    protected $logger;
    protected $readResponseAction;
    protected $spUtility;
    protected $adminLoginAction;
    protected $testAction;
    protected $storeManager;
    protected $currentControllerName;
    protected $currentActionName;
    protected $readLogoutRequestAction;
    protected $requestInterface;
    protected $request;
    protected $formkey;
    protected $_pageFactory;
    protected $acsUrl;
    protected $repostSAMLResponseRequest;
    protected $repostSAMLResponsePostData;
    protected $responseFactory;
    protected $baseRelayState;
    public function __construct(ManagerInterface $rD, LoggerInterface $UH, Context $H1, ReadResponseAction $Q6, SPUtility $ic, AdminLoginAction $Jn, Http $Jy, ReadLogoutRequestAction $Q2, RequestInterface $Iv, StoreManagerInterface $VN, ShowTestResultsAction $KR, ResultFactory $qB, PageFactory $XX, FormKey $L5)
    {
        $this->messageManager = $rD;
        $this->logger = $UH;
        $this->readResponseAction = $Q6;
        $this->spUtility = $ic;
        $this->adminLoginAction = $Jn;
        $this->readLogoutRequestAction = $Q2;
        $this->currentControllerName = $Jy->getControllerName();
        $this->currentActionName = $Jy->getActionName();
        $this->request = $Iv;
        $this->testAction = $KR;
        $this->storeManager = $VN;
        $this->resultFactory = $qB;
        $this->_pageFactory = $XX;
        parent::__construct($H1);
        $this->formkey = $L5;
        $this->getRequest()->setParam("\146\157\x72\x6d\137\153\145\171", $this->formkey->getFormKey());
        $Qf = \Magento\Framework\App\ObjectManager::getInstance();
        $this->responseFactory = $Qf->get("\x5c\115\141\x67\x65\156\164\157\134\x46\x72\141\155\145\x77\157\x72\153\134\x41\x70\160\x5c\x52\x65\x73\160\157\156\x73\x65\x46\141\x63\164\x6f\162\x79");
    }
    public function createCsrfValidationException(RequestInterface $Iv) : ?InvalidRequestException
    {
        return null;
    }
    public function validateForCsrf(RequestInterface $Iv) : ?bool
    {
        return true;
    }
    public function execute()
    {
        $this->spUtility->log_debug("\40\x69\156\x73\151\144\x65\x20\163\160\117\x62\163\145\x72\x76\145\162\x20\72\x20\x65\x78\145\143\165\164\145\x3a\x20");
        $rU = array_keys($this->request->getParams());
        $xP = array_intersect($rU, $this->requestParams);
        $nJ = $this->spUtility->getSessionData(SPConstants::IDP_NAME);
        $this->spUtility->log_debug("\x73\x70\157\x62\163\x65\162\166\145\x72\x3a\x20", $nJ);
        $iT = $this->getRequest()->getParams();
        $iT = $this->request->getParams();
        $hU = $this->request->getPost();
        $ss = true;
        $this->baseRelayState = !empty($iT["\x52\145\x6c\141\x79\x53\164\141\x74\145"]) ? $iT["\122\145\x6c\x61\171\x53\x74\141\164\x65"] : '';
        $this->baseRelayState = !empty($this->baseRelayState) ? parse_url($this->baseRelayState, PHP_URL_HOST) : '';
        $this->spUtility->log_debug("\145\170\145\143\165\164\145\x3a\x20\143\x6f\x75\156\x74\x2d\x6f\160\x65\x72\141\164\x69\157\x6e\x3a\40" . count($xP));
        if (!(count($xP) > 0)) {
            goto TI;
        }
        $this->_route_data(array_values($xP)[0], $iT, $hU);
        TI:
        $this->spUtility->log_debug("\123\120\x4f\142\x73\x65\162\166\x65\x72\x3a\40\145\170\x65\143\165\164\x65\72\40\163\x74\157\160\x20\146\154\157\167\40\142\x65\x66\157\162\x65\x20\164\150\151\163\x2e\x20" . $this->baseRelayState);
    }
    private function checkIfUserShouldBeRedirected()
    {
        if (!($this->spUtility->getStoreConfig(SPConstants::AUTO_REDIRECT) != "\x31" || $this->spUtility->isUserLoggedIn())) {
            goto CM;
        }
        return FALSE;
        CM:
        if (!($this->spUtility->getStoreConfig(SPConstants::BACKDOOR) == "\x31" && !empty($this->request->getParams()[SPConstants::SAML_SSO_FALSE]))) {
            goto dU;
        }
        return FALSE;
        dU:
        $EM = !empty($this->controllerActionPair[$this->currentControllerName]) ? $this->controllerActionPair[$this->currentControllerName] : NULL;
        return !is_null($EM) && is_array($EM) ? in_array($this->currentActionName, $EM) : FALSE;
    }
    private function _route_data($aq, $iT, $hU)
    {
        $this->spUtility->log_debug("\40\137\162\x6f\x75\x74\x65\x5f\x64\x61\164\141\x3a\x20\157\160\x65\x72\x61\164\x69\157\156\40" . $aq);
        switch ($aq) {
            case $this->requestParams[0]:
                $this->readLogoutRequestAction->setRequestParam($iT)->setPostParam($hU)->execute();
                goto v4;
            case $this->requestParams[1]:
                if (!($iT["\x52\145\154\141\171\x53\x74\141\164\x65"] == SPConstants::TEST_RELAYSTATE)) {
                    goto uf;
                }
                $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute();
                uf:
                $this->checkForMultipleStoreAndProceedAccordingly($iT, $hU);
                goto v4;
            case $this->requestParams[2]:
                if (!($iT["\157\x70\x74\x69\x6f\x6e"] == SPConstants::LOGIN_ADMIN_OPT)) {
                    goto aG;
                }
                $this->adminLoginAction->execute();
                aG:
                goto v4;
        }
        e9:
        v4:
    }
    private function setParams($Iv)
    {
        $this->repostSAMLResponseRequest = $Iv;
        return $this;
    }
    private function setPostData($post)
    {
        $this->repostSAMLResponsePostData = $post;
        return $this;
    }
    private function checkForMultipleStoreAndProceedAccordingly($iT, $hU)
    {
        $this->spUtility->log_debug("\40\151\156\163\x69\144\145\x20\x73\160\x4f\x62\x73\145\162\166\x65\162\x2e\x63\x68\x65\143\153\x46\x6f\x72\x4d\x75\x6c\164\x69\x70\x6c\x65\123\x74\x6f\162\145\x41\156\144\x50\162\157\143\x65\x65\144\101\143\143\x6f\x72\x64\151\x6e\x67\x6c\x79\50\51\72\40");
        if ($this->storeManager->hasSingleStore()) {
            goto aU;
        }
        $this->spUtility->log_debug("\x20\143\150\x65\143\153\x46\157\x72\x4d\165\154\x74\x69\x70\x6c\x65\123\x74\x6f\162\145\x41\x6e\144\x50\x72\x6f\143\145\x65\x64\101\143\143\x6f\162\x64\x69\156\x67\154\x79\x3a\x20\x6d\x75\x6c\x74\151\x73\164\x6f\x72\x65");
        $Eo = $this->spUtility->getAdminBaseUrl();
        $this->spUtility->log_debug("\x20\141\144\x6d\151\x6e\137\x62\x61\163\x65\137\165\162\x6c\40\55\x20" . $Eo);
        $eQ = $this->spUtility->getCurrentUrl();
        $xA = parse_url($eQ, PHP_URL_HOST);
        $this->spUtility->log_debug("\40\143\x75\x72\162\145\x6e\164\x55\x72\x6c\x20\x2d\40" . $eQ);
        $this->spUtility->log_debug("\x20\142\141\x73\x65\x43\165\162\162\145\x6e\164\125\162\154\x20\x2d\x20" . $xA);
        $this->setParams($iT);
        $this->setPostData($hU);
        $Rd = $this->repostSAMLResponseRequest["\123\101\115\114\122\x65\163\160\x6f\x6e\163\145"];
        $LU = array_key_exists("\122\145\x6c\141\x79\123\x74\141\164\x65", $this->repostSAMLResponseRequest) ? $this->repostSAMLResponseRequest["\x52\x65\x6c\x61\x79\x53\x74\141\164\x65"] : "\57";
        $this->spUtility->log_debug("\x20\143\150\x65\x63\x6b\x46\157\162\115\x75\154\164\151\160\154\x65\x53\164\157\162\145\101\156\144\120\162\x6f\x63\145\145\144\101\143\143\157\162\144\151\156\147\40\72\40\x72\145\154\x61\171\x53\164\x61\x74\145\x20\55\x20" . $LU);
        if (!($this->spUtility->isBlank($LU) || $LU == "\x2f")) {
            goto lg;
        }
        $this->spUtility->log_debug("\x63\150\x65\143\153\x46\x6f\162\x4d\x75\x6c\164\x69\x70\154\x65\x53\x74\x6f\x72\145\x41\156\144\120\162\x6f\143\x65\145\144\x41\143\143\157\x72\x64\x69\x6e\x67\x20\x3a\40\162\x65\154\x61\x79\123\x74\141\x74\145\40\151\163\40\102\x6c\x61\x6e\x6b\x2d\40");
        $gI = $this->spUtility->getStoreConfig(SPConstants::B2B_STORE_URL);
        $Ie = '';
        if ($this->spUtility->isBlank($gI)) {
            goto Fs;
        }
        $this->spUtility->log_debug("\x63\x68\x65\143\x6b\x46\x6f\x72\x4d\165\x6c\164\x69\160\x6c\x65\x53\x74\x6f\x72\x65\x41\156\x64\x50\x72\157\143\145\x65\144\101\143\x63\157\x72\144\151\x6e\147\x20\x3a\40\x42\x32\142\40\165\162\x6c\x20\151\163\x20\x73\x65\164\x20\x2d\40");
        $Ie = $this->spUtility->getBaseUrlFromUrl($gI);
        Fs:
        if (!$this->spUtility->isBlank($Ie)) {
            goto G6;
        }
        $Ie = $this->storeManager->getDefaultStoreView()->getBaseUrl();
        G6:
        $tI = $Ie . SPConstants::SUFFIX_SPOBSERVER;
        $LU = $Ie . SPConstants::SUFFIX_ACCOUNT_LOGIN;
        $this->spUtility->log_debug("\143\150\x65\143\153\x46\157\162\115\x75\x6c\x74\x69\160\x6c\145\123\x74\x6f\162\145\101\156\x64\120\x72\157\143\x65\x65\x64\x41\x63\x63\157\162\x64\151\156\x67\154\171\72\116\x65\167\x20\122\145\x6c\141\171\123\x74\141\164\145\x20\x20\75\40" . $LU);
        $this->repostSAMLResponse($Rd, $LU, $tI);
        return;
        lg:
        $this->baseRelayState = $this->baseRelayState = parse_url($LU, PHP_URL_HOST);
        if ($this->spUtility->checkIfFlowStartedFromBackend($LU)) {
            goto o5;
        }
        $this->spUtility->log_debug("\x20\143\x68\145\143\x6b\x46\157\x72\x4d\x75\154\164\x69\x70\154\145\x53\x74\157\162\x65\x41\156\144\x50\x72\157\x63\145\145\x64\x41\143\x63\157\162\x64\151\x6e\x67\154\171\72\40\x4e\157\x20\x61\x64\155\151\x6e\137\165\x72\154\40\151\x6e\40\x72\145\154\141\x79\x73\x74\141\164\x65");
        $dh = strpos($LU, $xA);
        if ($dh !== false) {
            goto u3;
        }
        $this->spUtility->log_debug("\x43\165\162\x72\145\x6e\x74\x55\x72\x6c\x20\x6e\x6f\x74\x20\163\x61\x6d\x65\x20\141\x73\40\x52\x65\154\x61\171\123\164\141\164\145\x3a\40\x43\x75\x72\162\145\x6e\x74\125\162\154\x3a\40" . $eQ);
        $this->spUtility->log_debug("\x43\x75\162\x72\x65\156\164\125\162\x6c\x20\156\157\164\x20\163\141\155\x65\x20\141\163\40\x52\x65\x6c\x61\x79\123\x74\141\x74\x65\x3a\x20\122\x65\154\x61\x79\x53\164\x61\164\145\x3a\x20" . $LU);
        $l6 = $this->storeManager->getStores();
        foreach ($l6 as $km) {
            $tI = $km->getBaseUrl();
            $this->spUtility->log_debug("\40\143\x68\x65\143\153\x46\x6f\x72\x4d\x75\154\164\x69\x70\154\145\x53\x74\157\162\x65\x41\x6e\144\120\x72\157\143\x65\145\144\101\143\x63\x6f\x72\144\151\x6e\147\x6c\171\x3a\x20\146\151\156\144\x69\156\x67\40\165\x72\154\40\x2d\x20\x20" . $tI);
            $i3 = strpos($LU, $tI);
            if (!($i3 !== false)) {
                goto sk;
            }
            $tI = $tI . SPConstants::SUFFIX_SPOBSERVER;
            $this->spUtility->log_debug("\40\x63\x68\x65\143\153\106\x6f\x72\115\165\x6c\164\151\x70\154\145\123\x74\157\162\145\101\156\x64\120\162\x6f\x63\x65\145\x64\x41\x63\143\x6f\x72\144\x69\156\147\x6c\171\72\40\x70\157\x73\x74\151\156\x67\x20\162\x65\x73\160\x6f\x6e\163\x65\40\157\156\40\x2d\x20" . $tI);
            $this->repostSAMLResponse($Rd, $LU, $tI);
            return;
            sk:
            iw:
        }
        Vw:
        goto xp;
        u3:
        $this->spUtility->log_debug("\x43\x75\162\x72\x65\x6e\164\125\162\154\x20\163\141\x6d\145\40\141\x73\40\122\145\x6c\x61\x79\123\164\141\164\145\56\x20\x50\162\x6f\143\x65\163\x73\x69\156\x67\x20\122\x65\x73\x70\x6f\x6e\163\145\56\x2e\40\55\x20" . $eQ);
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute();
        xp:
        goto Zj;
        o5:
        $this->spUtility->log_debug("\40\143\150\x65\x63\153\x46\157\x72\115\165\154\164\x69\x70\x6c\x65\123\164\x6f\x72\145\x41\156\x64\x50\162\157\x63\x65\145\144\x41\143\143\x6f\162\x64\x69\x6e\147\154\x79\72\x20\141\144\155\151\156\x5f\x75\162\154\72\40\x70\162\157\x63\145\x73\x73\151\156\x67\40\162\x65\x73\x70\x6f\x6e\163\x65\40\157\x6e\x3a\x20" . $LU);
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute();
        Zj:
        goto au;
        aU:
        $this->spUtility->log_debug("\40\x63\150\145\x63\153\106\157\162\115\165\154\164\x69\160\x6c\145\123\x74\157\x72\145\x41\x6e\x64\x50\162\157\x63\145\x65\144\x41\143\x63\157\162\x64\151\x6e\x67\x6c\171\x3a\40\x53\151\156\147\x6c\x65\40\x53\x74\157\x72\145\40");
        $this->readResponseAction->setRequestParam($iT)->setPostParam($hU)->execute();
        au:
    }
    private function repostSAMLResponse($Rd, $AK, $RP)
    {
        $this->spUtility->log_debug("\x20\122\x65\55\x70\157\163\164\x69\x6e\x67\x20\x53\101\115\114\x52\x65\x73\160\157\x6e\x73\x65\x20\164\157\x20\x73\x73\x6f\x55\x72\154\x20\x2d\40" . $RP);
        print_r("\15\12\40\40\x20\x20\40\x20\x20\x20\x20\40\x20\40\40\x20\40\x20\xd\xa\x20\x20\x20\x20\40\x20\x20\40\x20\40\40\x20\x20\40\40\40\74\x68\164\155\x6c\x3e\xd\xa\x20\40\40\x20\x20\40\x20\x20\x20\40\40\x20\x20\40\40\x20\40\40\x20\40\x3c\x68\145\x61\144\x3e\15\12\x20\40\40\x20\40\x20\x20\40\x20\x20\x20\x20\40\40\x20\40\40\x20\x20\x20\40\x20\x20\40\x3c\x73\x63\x72\x69\x70\x74\40\x73\x72\x63\75\x27\x68\x74\x74\160\x73\72\x2f\x2f\x63\157\x64\x65\56\152\161\x75\145\162\171\56\x63\157\x6d\57\x6a\x71\165\x65\x72\171\x2d\x31\x2e\x31\x31\56\63\x2e\155\151\x6e\56\x6a\x73\x27\x3e\74\57\x73\143\162\151\160\164\76\xd\xa\x20\x20\40\40\x20\x20\40\x20\40\x20\x20\x20\40\40\40\40\40\x20\40\x20\x3c\57\150\x65\x61\144\x3e\xd\12\40\x20\x20\40\40\40\40\40\40\x20\x20\x20\x20\40\x20\40\x20\40\40\x20\x3c\142\157\144\x79\76\15\xa\40\x20\x20\40\x20\40\x20\x20\x20\x20\x20\40\x20\x20\x20\40\40\40\40\40\x20\x20\40\x20\x3c\x66\157\x72\x6d\40\x61\143\164\x69\x6f\156\75\x22" . $RP . "\42\40\155\145\x74\150\157\144\75\42\160\x6f\163\164\42\40\151\144\x3d\x22\x73\141\155\x6c\x2d\162\145\161\165\145\x73\x74\55\146\x6f\x72\x6d\42\40\x73\164\x79\x6c\x65\75\x22\x64\x69\x73\x70\x6c\x61\171\x3a\156\157\x6e\145\73\x22\76\15\12\40\40\x20\40\40\x20\40\40\x20\x20\40\x20\40\40\x20\x20\x20\40\x20\x20\x20\x20\40\x20\40\40\x20\40\x3c\x69\x6e\160\x75\x74\40\x74\x79\x70\145\75\x22\150\151\144\x64\x65\156\x22\40\x6e\x61\x6d\x65\75\42\123\101\x4d\114\x52\x65\x73\160\157\156\x73\x65\42\40\x76\141\x6c\x75\x65\x3d\x22" . $Rd . "\42\40\57\76\15\12\40\x20\40\x20\x20\x20\x20\40\40\x20\x20\x20\40\x20\x20\x20\x20\x20\x20\40\40\40\40\x20\x20\x20\x20\x20\74\151\x6e\x70\x75\164\x20\x74\x79\x70\x65\75\42\x68\x69\144\x64\x65\156\x22\40\156\x61\155\x65\75\42\122\145\x6c\x61\171\x53\164\x61\x74\145\42\40\x76\x61\154\x75\x65\75\x22" . $AK . "\x22\x20\x2f\76\15\12\x20\40\x20\40\40\x20\40\x20\x20\40\x20\40\40\40\40\40\40\x20\x20\40\x20\40\40\x20\x3c\57\146\x6f\162\x6d\76\xd\xa\x20\x20\x20\x20\x20\x20\x20\40\x20\x20\x20\x20\40\40\x20\x20\40\x20\40\40\40\40\40\40\x3c\160\76\120\x6c\x65\141\163\x65\40\x77\141\151\x74\x20\x77\x65\40\x61\162\x65\40\160\162\157\x63\x65\x73\x73\x69\156\x67\40\x79\157\x75\x72\x20\x72\x65\161\x75\x65\x73\x74\56\56\x3c\x2f\x70\76\xd\12\x20\40\40\x20\40\x20\40\x20\x20\x20\x20\40\40\40\40\x20\x20\x20\40\40\x20\40\x20\x20\15\12\40\x20\40\x20\x20\x20\x20\40\x20\x20\40\40\x20\x20\40\x20\x20\40\40\40\x20\40\x20\x20\x3c\163\x63\x72\x69\160\164\40\164\171\160\145\75\42\x74\145\x78\x74\x2f\x6a\141\166\141\x73\143\x72\151\x70\x74\x22\76\xd\xa\x20\x20\40\x20\40\40\x20\40\x20\40\40\40\x20\x20\40\40\x20\40\x20\40\40\x20\x20\40\40\40\40\40\x20\x20\40\40\x24\50\x66\x75\x6e\x63\164\151\157\x6e\x28\51\173\144\157\x63\x75\x6d\145\x6e\x74\56\146\157\162\155\x73\x5b\x27\x73\141\x6d\x6c\55\162\145\x71\x75\x65\x73\164\x2d\146\157\x72\x6d\x27\x5d\x2e\x73\165\x62\x6d\151\x74\x28\51\x3b\175\51\x3b\xd\12\x20\x20\40\40\40\40\40\40\x20\40\x20\x20\x20\x20\40\x20\x20\40\x20\x20\x20\x20\40\x20\x3c\57\163\x63\x72\151\160\164\76\xd\12\40\x20\x20\40\x20\40\40\40\40\40\40\40\40\40\40\x20\x20\x20\x20\40\x3c\57\x62\x6f\144\171\76\xd\12\40\x20\40\x20\40\40\40\x20\40\40\x20\x20\x20\x20\40\x20\x3c\x2f\150\164\155\154\76");
        $this->spUtility->log_debug("\40\122\x65\160\x6f\163\x74\x65\144\40\123\101\x4d\x4c\x52\145\163\160\x6f\156\163\x65\x20\163\x75\x63\x63\x65\x73\x73\x66\165\x6c\154\171\56");
    }
}

Function Calls

None

Variables

None

Stats

MD5 2da763d34e31fe0718aabb34611e5e1c
Eval Count 0
Decode Time 59 ms