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 /* Plugin Name: miniOrange SSO using SAML 2.0 Plugin URI: https://miniorange.com/..

Decoded Output download

<?php 
/* 
Plugin Name: miniOrange SSO using SAML 2.0 
Plugin URI: https://miniorange.com/ 
Description: (Standard)miniOrange SAML 2.0 SSO enables user to perform Single Sign On with any SAML 2.0 enabled Identity Provider. 
Version: 16.1.1 
Author: miniOrange 
Author URI: https://miniorange.com/ 
*/ 
 
 
require_once dirname(__FILE__) . '/mo_login_saml_sso_widget.php'; 
require_once 'xmlseclibs.php'; 
use RobRichards\XMLSecLibs\XMLSecurityKey; 
use RobRichards\XMLSecLibs\XMLSecurityDSig; 
use RobRichards\XMLSecLibs\XMLSecEnc; 
require('mo-saml-class-customer.php'); 
require('mo_saml_settings_page.php'); 
require('MetadataReader.php'); 
require('certificate_utility.php'); 
require_once('Import-export.php'); 
require_once('mo-saml-plugin-version-update.php'); 
class saml_mo_login 
{ 
    function __construct() 
    { 
        add_action("admin_menu", array($this, "miniorange_sso_menu")); 
        add_action("admin_init", array($this, "miniorange_login_widget_saml_save_settings")); 
        add_action("admin_enqueue_scripts", array($this, "plugin_settings_style")); 
        register_deactivation_hook(__FILE__, array($this, "mo_sso_saml_deactivate")); 
        add_action("admin_enqueue_scripts", array($this, "plugin_settings_script")); 
        remove_action("admin_notices", array($this, "mo_saml_success_message")); 
        remove_action("admin_notices", array($this, "mo_saml_error_message")); 
        add_action("wp_authenticate", array($this, "mo_saml_authenticate")); 
        add_action("wp", array($this, "mo_saml_auto_redirect")); 
        add_action("admin_init", "mo_saml_download"); 
        add_action("login_form", array($this, "mo_saml_modify_login_form")); 
        add_shortcode("MO_SAML_FORM", array($this, "mo_get_saml_shortcode")); 
        add_action("admin_init", array($this, "default_certificate")); 
        register_activation_hook(__FILE__, array($this, "mo_saml_check_openssl")); 
        add_action("plugin_action_links_" . plugin_basename(__FILE__), array($this, "mo_saml_plugin_action_links")); 
    } 
    function default_certificate() 
    { 
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Public_Certificate); 
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Private_Key); 
        if (!(!get_option("mo_saml_current_cert") && !get_option("mo_saml_current_cert_private_key"))) { 
            goto ck; 
        } 
        if (get_option("mo_saml_cert") && get_option("mo_saml_cert_private_key")) { 
            goto Lw; 
        } 
        update_option("mo_saml_current_cert", $mD); 
        update_option("mo_saml_current_cert_private_key", $wv); 
        goto S9; 
        Lw: 
        update_option("mo_saml_current_cert", get_option("mo_saml_cert")); 
        update_option("mo_saml_current_cert_private_key", get_option("mo_saml_cert_private_key")); 
        S9: 
        ck: 
    } 
    function mo_login_widget_saml_options() 
    { 
        global $wpdb; 
        update_option("mo_saml_host_name", "https://login.xecurify.com"); 
        $wn = get_option("mo_saml_host_name"); 
        mo_register_saml_sso(); 
    } 
    function mo_saml_check_openssl() 
    { 
        if (mo_saml_is_extension_installed("openssl")) { 
            goto ni; 
        } 
        wp_die("PHP openssl extension is not installed or disabled,please enable it to activate the plugin."); 
        ni: 
        add_option("Activated_Plugin", "Plugin-Slug"); 
    } 
    function mo_saml_success_message() 
    { 
        $wq = "error"; 
        $BN = get_option("mo_saml_message"); 
        echo "<div class='" . esc_attr($wq) . "'> <p>" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "</p></div>"; 
    } 
    function mo_saml_error_message() 
    { 
        $wq = "updated"; 
        $BN = get_option("mo_saml_message"); 
        echo "<div class='" . esc_attr($wq) . "'> <p>" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "</p></div>"; 
    } 
    public function mo_sso_saml_deactivate() 
    { 
        if (!is_multisite()) { 
            goto vc; 
        } 
        global $wpdb; 
        $Xh = $wpdb->get_col("SELECT blog_id FROM {$wpdb->blogs}"); 
        $XJ = get_current_blog_id(); 
        do_action("mo_saml_flush_cache"); 
        foreach ($Xh as $blog_id) { 
            switch_to_blog($blog_id); 
            delete_option("mo_saml_host_name"); 
            delete_option("mo_saml_new_registration"); 
            delete_option("mo_saml_admin_phone"); 
            delete_option("mo_saml_admin_password"); 
            delete_option("mo_saml_verify_customer"); 
            delete_option("mo_saml_admin_customer_key"); 
            delete_option("mo_saml_admin_api_key"); 
            delete_option("mo_saml_customer_token"); 
            delete_option("mo_saml_message"); 
            delete_option("mo_saml_registration_status"); 
            delete_option("mo_saml_idp_config_complete"); 
            delete_option("mo_saml_transactionId"); 
            delete_option("vl_check_t"); 
            delete_option("vl_check_s"); 
            delete_option("mo_saml_cert"); 
            delete_option("mo_saml_cert_private_key"); 
            delete_option("mo_saml_enable_cloud_broker"); 
            Fi: 
        } 
        Jt: 
        switch_to_blog($XJ); 
        goto L1; 
        vc: 
        do_action("mo_saml_flush_cache"); 
        delete_option("mo_saml_host_name"); 
        delete_option("mo_saml_new_registration"); 
        delete_option("mo_saml_admin_phone"); 
        delete_option("mo_saml_admin_password"); 
        delete_option("mo_saml_verify_customer"); 
        delete_option("mo_saml_admin_customer_key"); 
        delete_option("mo_saml_admin_api_key"); 
        delete_option("mo_saml_customer_token"); 
        delete_option("mo_saml_message"); 
        delete_option("mo_saml_registration_status"); 
        delete_option("mo_saml_idp_config_complete"); 
        delete_option("mo_saml_transactionId"); 
        delete_option("vl_check_t"); 
        delete_option("vl_check_s"); 
        delete_option("mo_saml_cert"); 
        delete_option("mo_saml_cert_private_key"); 
        delete_option("mo_saml_enable_cloud_broker"); 
        L1: 
    } 
    function mo_saml_show_success_message() 
    { 
        remove_action("admin_notices", array($this, "mo_saml_success_message")); 
        add_action("admin_notices", array($this, "mo_saml_error_message")); 
    } 
    function mo_saml_show_error_message() 
    { 
        remove_action("admin_notices", array($this, "mo_saml_error_message")); 
        add_action("admin_notices", array($this, "mo_saml_success_message")); 
    } 
    function plugin_settings_style($Pp) 
    { 
        if (!("toplevel_page_mo_saml_settings" != $Pp)) { 
            goto q0; 
        } 
        return; 
        q0: 
        if (!(isset($_REQUEST["tab"]) && $_REQUEST["tab"] == "licensing")) { 
            goto Qy; 
        } 
        wp_enqueue_style("mo_saml_bootstrap_css", plugins_url("includes/css/bootstrap/bootstrap.min.css", __FILE__), array(), mo_options_plugin_constants::Version, "all"); 
        Qy: 
        wp_enqueue_style("mo_saml_admin_settings_style_tracker", plugins_url("includes/css/progress-tracker.css", __FILE__), array(), mo_options_plugin_constants::Version, "all"); 
        wp_enqueue_style("mo_saml_admin_settings_style", plugins_url("includes/css/style_settings.min.css", __FILE__), array(), mo_options_plugin_constants::Version, "all"); 
        wp_enqueue_style("mo_saml_admin_settings_phone_style", plugins_url("includes/css/phone.min.css", __FILE__), array(), mo_options_plugin_constants::Version, "all"); 
        wp_enqueue_style("mo_saml_wpb-fa", plugins_url("includes/css/font-awesome.min.css", __FILE__), array(), mo_options_plugin_constants::Version, "all"); 
    } 
    function plugin_settings_script($Pp) 
    { 
        if (!("toplevel_page_mo_saml_settings" != $Pp)) { 
            goto Jx; 
        } 
        return; 
        Jx: 
        wp_enqueue_script("jquery"); 
        wp_enqueue_script("mo_saml_admin_bootstrap_script", plugins_url("includes/js/bootstrap.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        wp_enqueue_script("mo_saml_admin_settings_script", plugins_url("includes/js/settings.min.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        wp_enqueue_script("mo_saml_admin_settings_phone_script", plugins_url("includes/js/phone.min.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        if (!(isset($_REQUEST["tab"]) && $_REQUEST["tab"] == "licensing")) { 
            goto dw; 
        } 
        wp_enqueue_script("mo_saml_modernizr_script", plugins_url("includes/js/modernizr.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        wp_enqueue_script("mo_saml_popover_script", plugins_url("includes/js/bootstrap/popper.min.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        wp_enqueue_script("mo_saml_bootstrap_script", plugins_url("includes/js/bootstrap/bootstrap.min.js", __FILE__), array(), mo_options_plugin_constants::Version, false); 
        dw: 
    } 
    function mo_saml_activation_message() 
    { 
        $wq = "updated"; 
        $BN = get_option("mo_saml_message"); 
        echo "<div class='" . esc_attr($wq) . "'> <p>" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "</p></div>"; 
    } 
    static function mo_check_option_admin_referer($Jp) 
    { 
        return isset($_POST["option"]) and $_POST["option"] == $Jp and check_admin_referer($Jp); 
    } 
    function miniorange_login_widget_saml_save_settings() 
    { 
        if (!current_user_can("manage_options")) { 
            goto rb; 
        } 
        if (!(is_admin() && get_option("Activated_Plugin") == "Plugin-Slug")) { 
            goto A1; 
        } 
        delete_option("Activated_Plugin"); 
        update_option("mo_saml_message", "Go to plugin <b><a href="admin.php?page=mo_saml_settings">settings</a></b> to configure SAML Single Sign On by miniOrange."); 
        add_action("admin_notices", array($this, "mo_saml_activation_message")); 
        A1: 
        if (!self::mo_check_option_admin_referer("login_widget_saml_save_settings")) { 
            goto YY; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto KJ; 
        } 
        update_option("mo_saml_message", "ERROR:PHP cURL extension is not installed or disabled. Save Identity Provider Configuration failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        KJ: 
        $Bh = ''; 
        $Ko = ''; 
        $H4 = ''; 
        $iz = ''; 
        $m7 = ''; 
        $pn = ''; 
        $Ax = ''; 
        $uQ = ''; 
        if ($this->mo_saml_check_empty_or_null($_POST["saml_identity_name"]) || $this->mo_saml_check_empty_or_null($_POST["saml_login_url"]) || $this->mo_saml_check_empty_or_null($_POST["saml_issuer"]) || $this->mo_saml_check_empty_or_null($_POST["saml_nameid_format"])) { 
            goto vd; 
        } 
        if (!preg_match("/^\w*$/", $_POST["saml_identity_name"])) { 
            goto sP; 
        } 
        $Bh = sanitize_text_field(trim($_POST["saml_identity_name"])); 
        $H4 = SAMLSPUtilities::mo_saml_sanitize_url(trim($_POST["saml_login_url"])); 
        if (!isset($_POST["saml_login_binding_type"])) { 
            goto gE; 
        } 
        $Ko = sanitize_text_field($_POST["saml_login_binding_type"]); 
        gE: 
        $pn = sanitize_text_field(trim($_POST["saml_issuer"])); 
        $EV = sanitize_text_field(trim($_POST["saml_identity_provider_guide_name"])); 
        $Ax = $_POST["saml_x509_certificate"]; 
        $m7 = sanitize_text_field($_POST["saml_nameid_format"]); 
        goto mc; 
        sP: 
        update_option("mo_saml_message", "Please match the requested format for Identity Provider Name. Only alphabets, numbers and underscore is allowed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        mc: 
        goto oG; 
        vd: 
        update_option("mo_saml_message", "All the fields are required. Please enter valid entries."); 
        $this->mo_saml_show_error_message(); 
        return; 
        oG: 
        update_option("saml_identity_name", $Bh); 
        update_option("saml_login_binding_type", $Ko); 
        update_option("saml_login_url", $H4); 
        update_option("saml_logout_binding_type", $iz); 
        update_option("saml_issuer", $pn); 
        update_option("saml_nameid_format", $m7); 
        update_option("saml_identity_provider_guide_name", $EV); 
        if (isset($_POST["saml_request_signed"])) { 
            goto ek; 
        } 
        update_option("saml_request_signed", "unchecked"); 
        goto F7; 
        ek: 
        update_option("saml_request_signed", "checked"); 
        F7: 
        foreach ($Ax as $zs => $A2) { 
            if (empty($A2)) { 
                goto mu; 
            } 
            $Ax[$zs] = SAMLSPUtilities::sanitize_certificate($A2); 
            if (@openssl_x509_read($Ax[$zs])) { 
                goto at; 
            } 
            update_option("mo_saml_message", "Invalid certificate: Please provide a valid certificate."); 
            $this->mo_saml_show_error_message(); 
            delete_option("saml_x509_certificate"); 
            return; 
            at: 
            goto yC; 
            mu: 
            unset($Ax[$zs]); 
            yC: 
            VG: 
        } 
        A8: 
        if (!empty($Ax)) { 
            goto HD; 
        } 
        update_option("mo_saml_message", "Invalid Certificate:Please provide a certificate"); 
        $this->mo_saml_show_error_message(); 
        return; 
        HD: 
        update_option("saml_x509_certificate", maybe_serialize($Ax)); 
        if (isset($_POST["saml_response_signed"])) { 
            goto sL; 
        } 
        update_option("saml_response_signed", "Yes"); 
        goto eq; 
        sL: 
        update_option("saml_response_signed", "checked"); 
        eq: 
        if (isset($_POST["saml_assertion_signed"])) { 
            goto ta; 
        } 
        update_option("saml_assertion_signed", "Yes"); 
        goto ij; 
        ta: 
        update_option("saml_assertion_signed", "checked"); 
        ij: 
        if (isset($_POST["enable_iconv"])) { 
            goto le; 
        } 
        update_option("mo_saml_encoding_enabled", ''); 
        goto Vb; 
        le: 
        update_option("mo_saml_encoding_enabled", "checked"); 
        Vb: 
        update_option("mo_saml_message", "Identity Provider details saved successfully."); 
        $this->mo_saml_show_success_message(); 
        YY: 
        if (!self::mo_check_option_admin_referer("mo_saml_add_sso_button_wp_option")) { 
            goto JB; 
        } 
        if (mo_saml_is_sp_configured()) { 
            goto cV; 
        } 
        update_option("mo_saml_message", "Please complete " . addLink("Service Provider", SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "save"), $_SERVER["REQUEST_URI"])) . " configuration first."); 
        $this->mo_saml_show_error_message(); 
        goto sF; 
        cV: 
        if (isset($_POST["mo_saml_add_sso_button_wp"])) { 
            goto JZ; 
        } 
        $q5 = "false"; 
        goto gh; 
        JZ: 
        $q5 = sanitize_text_field($_POST["mo_saml_add_sso_button_wp"]); 
        gh: 
        update_option("mo_saml_add_sso_button_wp", $q5); 
        update_option("mo_saml_message", "Sign in option updated."); 
        $this->mo_saml_show_success_message(); 
        sF: 
        JB: 
        if (!self::mo_check_option_admin_referer("login_widget_saml_attribute_mapping")) { 
            goto Od; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto Bd; 
        } 
        update_option("mo_saml_message", "ERROR:PHP cURL extension is not installed or disabled. Save Attribute Mapping failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Bd: 
        update_option("saml_am_username", sanitize_user($_POST["saml_am_username"])); 
        update_option("saml_am_email", sanitize_text_field($_POST["saml_am_email"])); 
        update_option("saml_am_first_name", sanitize_text_field($_POST["saml_am_first_name"])); 
        update_option("saml_am_last_name", sanitize_text_field($_POST["saml_am_last_name"])); 
        update_option("saml_am_display_name", sanitize_text_field($_POST["saml_am_display_name"])); 
        update_option("mo_saml_message", "Attribute Mapping details saved successfully"); 
        $this->mo_saml_show_success_message(); 
        Od: 
        if (!self::mo_check_option_admin_referer("clear_attrs_list")) { 
            goto VM; 
        } 
        delete_option("mo_saml_test_config_attrs"); 
        update_option("mo_saml_message", "Attributes list removed successfully"); 
        $this->mo_saml_show_success_message(); 
        VM: 
        if (!self::mo_check_option_admin_referer("login_widget_saml_role_mapping")) { 
            goto tG; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto L_; 
        } 
        update_option("mo_saml_message", "ERROR:PHP cURL extension is not installed or disabled. Save Role Mapping failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        L_: 
        if (isset($_POST["mo_saml_dont_update_existing_user_role"])) { 
            goto Jh; 
        } 
        update_option("saml_am_dont_update_existing_user_role", "unchecked"); 
        goto ok; 
        Jh: 
        update_option("saml_am_dont_update_existing_user_role", "checked"); 
        ok: 
        if (!isset($_POST["saml_am_default_user_role"])) { 
            goto g9; 
        } 
        $T5 = sanitize_text_field($_POST["saml_am_default_user_role"]); 
        update_option("saml_am_default_user_role", $T5); 
        g9: 
        update_option("mo_saml_message", "Role Mapping details saved successfully."); 
        $this->mo_saml_show_success_message(); 
        tG: 
        if (!self::mo_check_option_admin_referer("mo_saml_update_idp_settings_option")) { 
            goto D2; 
        } 
        if (!(isset($_POST["mo_saml_sp_base_url"]) && isset($_POST["mo_saml_sp_entity_id"]))) { 
            goto uw; 
        } 
        $Fe = SAMLSPUtilities::mo_saml_sanitize_url($_POST["mo_saml_sp_base_url"]); 
        $K2 = sanitize_text_field($_POST["mo_saml_sp_entity_id"]); 
        if (!(substr($Fe, -1) == "/")) { 
            goto N_; 
        } 
        $Fe = substr($Fe, 0, -1); 
        N_: 
        update_option("mo_saml_sp_base_url", $Fe); 
        update_option("mo_saml_sp_entity_id", $K2); 
        uw: 
        update_option("mo_saml_message", "Settings updated successfully."); 
        $this->mo_saml_show_success_message(); 
        D2: 
        if (!self::mo_check_option_admin_referer("saml_upload_metadata")) { 
            goto Dt; 
        } 
        if (!function_exists("wp_handle_upload")) { 
            require_once ABSPATH . 'wp-admin/includes/file.php'; 
        } 
        $this->_handle_upload_metadata(); 
        Dt: 
        if (!self::mo_check_option_admin_referer("upgrade_cert")) { 
            goto vT; 
        } 
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Public_Certificate); 
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Private_Key); 
        update_option("mo_saml_current_cert", $mD); 
        update_option("mo_saml_current_cert_private_key", $wv); 
        update_option("mo_saml_certificate_roll_back_available", true); 
        update_option("mo_saml_message", "Certificate Upgraded successfully"); 
        $this->mo_saml_show_success_message(); 
        vT: 
        if (!self::mo_check_option_admin_referer("rollback_cert")) { 
            goto cU; 
        } 
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . "sp-certificate.crt"); 
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "resources" . DIRECTORY_SEPARATOR . "sp-key.key"); 
        update_option("mo_saml_current_cert", $mD); 
        update_option("mo_saml_current_cert_private_key", $wv); 
        update_option("mo_saml_message", "Certificate Roll-backed successfully"); 
        delete_option("mo_saml_certificate_roll_back_available"); 
        $this->mo_saml_show_success_message(); 
        cU: 
        if (!self::mo_check_option_admin_referer("mo_saml_relay_state_option")) { 
            goto a1; 
        } 
        $AF = SAMLSPUtilities::mo_saml_sanitize_url($_POST["mo_saml_relay_state"]); 
        update_option("mo_saml_relay_state", $AF); 
        update_option("mo_saml_message", "Relay State has been updated successfully."); 
        $this->mo_saml_show_success_message(); 
        a1: 
        if (!self::mo_check_option_admin_referer("mo_saml_widget_option")) { 
            goto l7; 
        } 
        $OM = sanitize_text_field($_POST["mo_saml_custom_login_text"]); 
        update_option("mo_saml_custom_login_text", stripcslashes($OM)); 
        $e5 = sanitize_text_field($_POST["mo_saml_custom_greeting_text"]); 
        update_option("mo_saml_custom_greeting_text", stripcslashes($e5)); 
        $m_ = sanitize_text_field($_POST["mo_saml_greeting_name"]); 
        update_option("mo_saml_greeting_name", stripcslashes($m_)); 
        $xN = sanitize_text_field($_POST["mo_saml_custom_logout_text"]); 
        update_option("mo_saml_custom_logout_text", stripcslashes($xN)); 
        update_option("mo_saml_message", "Widget Settings updated successfully."); 
        $this->mo_saml_show_success_message(); 
        l7: 
        if (!self::mo_check_option_admin_referer("mo_saml_register_customer")) { 
            goto fw; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto K8; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Registration failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        K8: 
        $KA = ''; 
        $yC = ''; 
        $kZ = ''; 
        $wB = ''; 
        if ($this->mo_saml_check_empty_or_null($_POST["email"]) || $this->mo_saml_check_empty_or_null($_POST["password"]) || $this->mo_saml_check_empty_or_null($_POST["confirmPassword"])) { 
            goto rW; 
        } 
        if (strlen($_POST["password"]) < 6 || strlen($_POST["confirmPassword"]) < 6) { 
            goto ZK; 
        } 
        if (!filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) { 
            goto Lr; 
        } 
        if ($this->checkPasswordPattern(strip_tags($_POST["password"]))) { 
            goto rm; 
        } 
        $KA = sanitize_email($_POST["email"]); 
        $yC = sanitize_text_field($_POST["phone"]); 
        $kZ = sanitize_text_field($_POST["password"]); 
        $wB = sanitize_text_field($_POST["confirmPassword"]); 
        goto Zb; 
        rm: 
        update_option("mo_saml_message", "Minimum 6 characters should be present. Maximum 15 characters should be present. Only following symbols (!@#.$%^&*-_) should be present."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Zb: 
        goto Je; 
        Lr: 
        update_option("mo_saml_message", "Please enter a valid email address."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Je: 
        goto hM; 
        ZK: 
        update_option("mo_saml_message", "Choose a password with minimum length 6."); 
        $this->mo_saml_show_error_message(); 
        return; 
        hM: 
        goto IA; 
        rW: 
        update_option("mo_saml_message", "All the fields are required. Please enter valid entries."); 
        $this->mo_saml_show_error_message(); 
        return; 
        IA: 
        update_option("mo_saml_admin_email", $KA); 
        update_option("mo_saml_admin_phone", $yC); 
        if (strcmp($kZ, $wB) == 0) { 
            goto z6; 
        } 
        update_option("mo_saml_message", "Passwords do not match."); 
        delete_option("mo_saml_verify_customer"); 
        $this->mo_saml_show_error_message(); 
        goto lU; 
        z6: 
        update_option("mo_saml_admin_password", $kZ); 
        $KA = get_option("mo_saml_admin_email"); 
        $ma = new CustomerSaml(); 
        $zn = $ma->check_customer(); 
        if ($zn) { 
            goto JC; 
        } 
        return; 
        JC: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "CUSTOMER_NOT_FOUND") == 0) { 
            goto et; 
        } 
        $this->get_current_customer(); 
        goto qn; 
        et: 
        $zn = $ma->send_otp_token($KA, ''); 
        if ($zn) { 
            goto ar; 
        } 
        return; 
        ar: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto Ji; 
        } 
        update_option("mo_saml_message", "There was an error in sending email. Please verify your email and try again."); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_FAILURE_EMAIL"); 
        $this->mo_saml_show_error_message(); 
        goto b5; 
        Ji: 
        update_option("mo_saml_message", " A one time passcode is sent to " . get_option("mo_saml_admin_email") . ". Please enter the otp here to verify your email."); 
        update_option("mo_saml_transactionId", $zn["txId"]); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_SUCCESS_EMAIL"); 
        $this->mo_saml_show_success_message(); 
        b5: 
        qn: 
        lU: 
        fw: 
        if (self::mo_check_option_admin_referer("mo_saml_validate_otp")) { 
            goto f2; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_verify_license")) { 
            goto cl; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_contact_us_query_option")) { 
            goto I1; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_resend_otp_email")) { 
            goto kb; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_resend_otp_phone")) { 
            goto Sy; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_go_back")) { 
            goto xZ; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_register_with_phone_option")) { 
            goto wn; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_registered_only_access_option")) { 
            goto UK; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_force_authentication_option")) { 
            goto sC; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_enable_rss_access_option")) { 
            goto ql; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_enable_login_redirect_option")) { 
            goto kq; 
        } 
        if (self::mo_check_option_admin_referer("mo_saml_allow_wp_signin_option")) { 
            goto bM; 
        } 
        if (isset($_POST["option"]) && $_POST["option"] == "mo_saml_forgot_password_form_option") { 
            goto Q0; 
        } 
        if (!self::mo_check_option_admin_referer("mo_saml_verify_customer")) { 
            goto IR; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto dp; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Login failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        dp: 
        $KA = ''; 
        $kZ = ''; 
        if ($this->mo_saml_check_empty_or_null($_POST["email"]) || $this->mo_saml_check_empty_or_null($_POST["password"])) { 
            goto lE; 
        } 
        if ($this->checkPasswordPattern(strip_tags($_POST["password"]))) { 
            goto R0; 
        } 
        $KA = sanitize_email($_POST["email"]); 
        $kZ = sanitize_text_field($_POST["password"]); 
        goto s0; 
        R0: 
        update_option("mo_saml_message", "Minimum 6 characters should be present. Maximum 15 characters should be present. Only following symbols (!@#.$%^&*-_) should be present."); 
        $this->mo_saml_show_error_message(); 
        return; 
        s0: 
        goto E2; 
        lE: 
        update_option("mo_saml_message", "All the fields are required. Please enter valid entries."); 
        $this->mo_saml_show_error_message(); 
        return; 
        E2: 
        update_option("mo_saml_admin_email", $KA); 
        update_option("mo_saml_admin_password", $kZ); 
        $ma = new Customersaml(); 
        $zn = $ma->get_customer_key(); 
        if ($zn) { 
            goto s_; 
        } 
        return; 
        s_: 
        $xR = json_decode($zn, true); 
        if (json_last_error() == JSON_ERROR_NONE) { 
            goto MJ; 
        } 
        update_option("mo_saml_message", "Invalid username or password. Please try again."); 
        $this->mo_saml_show_error_message(); 
        goto i_; 
        MJ: 
        update_option("mo_saml_admin_customer_key", $xR["id"]); 
        update_option("mo_saml_admin_api_key", $xR["apiKey"]); 
        update_option("mo_saml_customer_token", $xR["token"]); 
        if (empty($xR["phone"])) { 
            goto A3; 
        } 
        update_option("mo_saml_admin_phone", $xR["phone"]); 
        A3: 
        update_option("mo_saml_admin_password", ''); 
        update_option("mo_saml_message", "Customer retrieved successfully"); 
        update_option("mo_saml_registration_status", "Existing User"); 
        delete_option("mo_saml_verify_customer"); 
        if (get_option("sml_lk")) { 
            goto bc; 
        } 
        $this->mo_saml_show_success_message(); 
        goto V6; 
        bc: 
        $zs = get_option("mo_saml_customer_token"); 
        $M7 = AESEncryption::decrypt_data(get_option("sml_lk"), $zs); 
        $zn = $ma->mo_saml_vl($M7, false); 
        if ($zn) { 
            goto rS; 
        } 
        return; 
        rS: 
        $zn = json_decode($zn, true); 
        update_option("vl_check_t", time()); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto fB; 
        } 
        update_option("mo_saml_message", "License key for this instance is incorrect. Make sure you have not tampered with it at all. Please enter a valid license key."); 
        delete_option("sml_lk"); 
        $this->mo_saml_show_error_message(); 
        goto Kr; 
        fB: 
        $d2 = plugin_dir_path(__FILE__); 
        $DO = home_url(); 
        $DO = trim($DO, "/"); 
        if (preg_match("#^http(s)?://#", $DO)) { 
            goto r5; 
        } 
        $DO = "http://" . $DO; 
        r5: 
        $pJ = parse_url($DO); 
        $YI = preg_replace("/^www\./", '', $pJ["host"]); 
        $H0 = wp_upload_dir(); 
        $KV = $YI . "-" . $H0["basedir"]; 
        $LP = hash_hmac("sha256", $KV, "4DHfjgfjasndfsajfHGJ"); 
        $cy = $this->djkasjdksa(); 
        $TA = round(strlen($cy) / rand(2, 20)); 
        $cy = substr_replace($cy, $LP, $TA, 0); 
        $uG = base64_decode($cy); 
        if (is_writable($d2 . "license")) { 
            goto sR; 
        } 
        $cy = str_rot13($cy); 
        $IB = base64_decode("bGNkamthc2pka3NhY2w="); 
        update_option($IB, $cy); 
        goto rd; 
        sR: 
        file_put_contents($d2 . "license", $uG); 
        rd: 
        update_option("lcwrtlfsaml", true); 
        $this->mo_saml_show_success_message(); 
        Kr: 
        V6: 
        i_: 
        update_option("mo_saml_admin_password", ''); 
        IR: 
        goto Ss; 
        Q0: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto Om; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Resend OTP failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Om: 
        $KA = get_option("mo_saml_admin_email"); 
        $ma = new Customersaml(); 
        $zn = $ma->mo_saml_forgot_password($KA); 
        if ($zn) { 
            goto JV; 
        } 
        return; 
        JV: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto hr; 
        } 
        update_option("mo_saml_message", "An error occured while processing your request. Please Try again."); 
        $this->mo_saml_show_error_message(); 
        goto WF; 
        hr: 
        update_option("mo_saml_message", "Your password has been reset successfully. Please enter the new password sent to " . $KA . "."); 
        $this->mo_saml_show_success_message(); 
        WF: 
        Ss: 
        goto bu; 
        bM: 
        $Q_ = "false"; 
        if (isset($_POST["mo_saml_allow_wp_signin"])) { 
            goto Im; 
        } 
        $I1 = "false"; 
        goto Qo; 
        Im: 
        $I1 = sanitize_text_field($_POST["mo_saml_allow_wp_signin"]); 
        Qo: 
        if ($I1 == "true") { 
            goto KG; 
        } 
        update_option("mo_saml_allow_wp_signin", "False"); 
        goto Tl; 
        KG: 
        update_option("mo_saml_allow_wp_signin", "true"); 
        Tl: 
        if (!isset($_POST["mo_saml_backdoor_url"])) { 
            goto r2; 
        } 
        $Q_ = sanitize_text_field(trim($_POST["mo_saml_backdoor_url"])); 
        r2: 
        update_option("mo_saml_backdoor_url", $Q_); 
        update_option("mo_saml_message", "Sign In settings updated."); 
        $this->mo_saml_show_success_message(); 
        bu: 
        goto T4; 
        kq: 
        if (mo_saml_is_sp_configured()) { 
            goto du; 
        } 
        update_option("mo_saml_message", "Please complete " . addLink("Service Provider", SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "save"), $_SERVER["REQUEST_URI"])) . " configuration first."); 
        $this->mo_saml_show_error_message(); 
        goto Un; 
        du: 
        if (isset($_POST["mo_saml_enable_login_redirect"])) { 
            goto Kf; 
        } 
        $LN = "false"; 
        goto Q4; 
        Kf: 
        $LN = sanitize_text_field($_POST["mo_saml_enable_login_redirect"]); 
        Q4: 
        if ($LN == "true") { 
            goto cZ; 
        } 
        update_option("mo_saml_enable_login_redirect", "false"); 
        update_option("mo_saml_allow_wp_signin", "False"); 
        goto aK; 
        cZ: 
        update_option("mo_saml_enable_login_redirect", "true"); 
        update_option("mo_saml_allow_wp_signin", "true"); 
        aK: 
        update_option("mo_saml_message", "Sign in options updated."); 
        $this->mo_saml_show_success_message(); 
        Un: 
        T4: 
        goto Sb; 
        ql: 
        if (mo_saml_is_sp_configured()) { 
            goto cJ; 
        } 
        update_option("mo_saml_message", "Please complete " . addLink("Service Provider", SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "save"), $_SERVER["REQUEST_URI"])) . " configuration first."); 
        $this->mo_saml_show_error_message(); 
        goto VO; 
        cJ: 
        if (isset($_POST["mo_saml_enable_rss_access"])) { 
            goto go; 
        } 
        $Hi = false; 
        goto Du; 
        go: 
        $Hi = sanitize_text_field($_POST["mo_saml_enable_rss_access"]); 
        Du: 
        if ($Hi == "true") { 
            goto Fw; 
        } 
        update_option("mo_saml_enable_rss_access", "false"); 
        goto en; 
        Fw: 
        update_option("mo_saml_enable_rss_access", "true"); 
        en: 
        update_option("mo_saml_message", "RSS Feed option updated."); 
        $this->mo_saml_show_success_message(); 
        VO: 
        Sb: 
        goto wb; 
        sC: 
        if (mo_saml_is_sp_configured()) { 
            goto S8; 
        } 
        update_option("mo_saml_message", "Please complete " . addLink("Service Provider", SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "save"), $_SERVER["REQUEST_URI"])) . " configuration first."); 
        $this->mo_saml_show_error_message(); 
        goto Cg; 
        S8: 
        if (isset($_POST["mo_saml_force_authentication"])) { 
            goto Yk; 
        } 
        $LN = "false"; 
        goto x4; 
        Yk: 
        $LN = sanitize_text_field($_POST["mo_saml_force_authentication"]); 
        x4: 
        if ($LN == "true") { 
            goto Th; 
        } 
        update_option("mo_saml_force_authentication", "false"); 
        goto Kl; 
        Th: 
        update_option("mo_saml_force_authentication", "true"); 
        Kl: 
        update_option("mo_saml_message", "Sign in options updated."); 
        $this->mo_saml_show_success_message(); 
        Cg: 
        wb: 
        goto D_; 
        UK: 
        if (mo_saml_is_sp_configured()) { 
            goto oK; 
        } 
        update_option("mo_saml_message", "Please complete " . addLink("Service Provider", SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "save"), $_SERVER["REQUEST_URI"])) . " configuration first."); 
        $this->mo_saml_show_error_message(); 
        goto qW; 
        oK: 
        if (isset($_POST["mo_saml_registered_only_access"])) { 
            goto yz; 
        } 
        $LN = "false"; 
        goto mH; 
        yz: 
        $LN = sanitize_text_field($_POST["mo_saml_registered_only_access"]); 
        mH: 
        if ($LN == "true") { 
            goto hb; 
        } 
        update_option("mo_saml_registered_only_access", "false"); 
        goto uc; 
        hb: 
        update_option("mo_saml_registered_only_access", "true"); 
        uc: 
        update_option("mo_saml_message", "Sign in options updated."); 
        $this->mo_saml_show_success_message(); 
        qW: 
        D_: 
        goto zG; 
        wn: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto E6; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Resend OTP failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        E6: 
        $yC = sanitize_text_field($_POST["phone"]); 
        $yC = str_replace(" ", '', $yC); 
        $yC = str_replace("-", '', $yC); 
        update_option("mo_saml_admin_phone", $yC); 
        $ma = new CustomerSaml(); 
        $zn = $ma->send_otp_token('', $yC, FALSE, TRUE); 
        if ($zn) { 
            goto Sa; 
        } 
        return; 
        Sa: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto lq; 
        } 
        update_option("mo_saml_message", "There was an error in sending SMS. Please click on Resend OTP to try again."); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_FAILURE_PHONE"); 
        $this->mo_saml_show_error_message(); 
        goto BQ; 
        lq: 
        update_option("mo_saml_message", " A one time passcode is sent to " . get_option("mo_saml_admin_phone") . ". Please enter the otp here to verify your email."); 
        update_option("mo_saml_transactionId", $zn["txId"]); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_SUCCESS_PHONE"); 
        $this->mo_saml_show_success_message(); 
        BQ: 
        zG: 
        goto dH; 
        xZ: 
        update_option("mo_saml_registration_status", ''); 
        update_option("mo_saml_verify_customer", ''); 
        delete_option("mo_saml_new_registration"); 
        delete_option("mo_saml_admin_email"); 
        delete_option("mo_saml_admin_phone"); 
        delete_site_option("sml_lk"); 
        delete_site_option("t_site_status"); 
        delete_site_option("site_ck_l"); 
        dH: 
        goto bg; 
        Sy: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto sa; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Resend OTP failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        sa: 
        $yC = get_option("mo_saml_admin_phone"); 
        $ma = new CustomerSaml(); 
        $zn = $ma->send_otp_token('', $yC, FALSE, TRUE); 
        if ($zn) { 
            goto pY; 
        } 
        return; 
        pY: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto S7; 
        } 
        update_option("mo_saml_message", "There was an error in sending email. Please click on Resend OTP to try again."); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_FAILURE_PHONE"); 
        $this->mo_saml_show_error_message(); 
        goto k_; 
        S7: 
        update_option("mo_saml_message", " A one time passcode is sent to " . $yC . " again. Please check if you got the otp and enter it here."); 
        update_option("mo_saml_transactionId", $zn["txId"]); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_SUCCESS_PHONE"); 
        $this->mo_saml_show_success_message(); 
        k_: 
        bg: 
        goto X0; 
        kb: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto ZA; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Resend OTP failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        ZA: 
        $KA = get_option("mo_saml_admin_email"); 
        $ma = new CustomerSaml(); 
        $zn = $ma->send_otp_token($KA, ''); 
        if ($zn) { 
            goto hH; 
        } 
        return; 
        hH: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto rv; 
        } 
        update_option("mo_saml_message", "There was an error in sending email. Please click on Resend OTP to try again."); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_FAILURE_EMAIL"); 
        $this->mo_saml_show_error_message(); 
        goto l0; 
        rv: 
        update_option("mo_saml_message", " A one time passcode is sent to " . get_option("mo_saml_admin_email") . " again. Please check if you got the otp and enter it here."); 
        update_option("mo_saml_transactionId", $zn["txId"]); 
        update_option("mo_saml_registration_status", "MO_OTP_DELIVERED_SUCCESS_EMAIL"); 
        $this->mo_saml_show_success_message(); 
        l0: 
        X0: 
        goto Ce; 
        I1: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto ry; 
        } 
        update_option("mo_saml_message", "ERROR: PHP cURL extension is not installed or disabled. Query submit failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        ry: 
        $KA = sanitize_email($_POST["mo_saml_contact_us_email"]); 
        $yC = sanitize_text_field($_POST["mo_saml_contact_us_phone"]); 
        $el = sanitize_text_field($_POST["mo_saml_contact_us_query"]); 
        if (isset($_POST["send_plugin_config"]) === true) { 
            goto VX; 
        } 
        update_option("send_plugin_config", "off"); 
        goto ZF; 
        VX: 
        $lk = miniorange_import_export(true, true); 
        $el .= $lk; 
        delete_option("send_plugin_config"); 
        ZF: 
        $ma = new CustomerSaml(); 
        if ($this->mo_saml_check_empty_or_null($KA) || $this->mo_saml_check_empty_or_null($el)) { 
            goto KC; 
        } 
        if (!filter_var($KA, FILTER_VALIDATE_EMAIL)) { 
            goto Ej; 
        } 
        $B0 = $ma->submit_contact_us($KA, $yC, $el); 
        if ($B0) { 
            goto yf; 
        } 
        return; 
        yf: 
        update_option("mo_saml_message", "Thanks for getting in touch! We shall get back to you shortly."); 
        $this->mo_saml_show_success_message(); 
        goto yy; 
        Ej: 
        update_option("mo_saml_message", "Please enter a valid email address."); 
        $this->mo_saml_show_error_message(); 
        yy: 
        goto Us; 
        KC: 
        update_option("mo_saml_message", "Please fill up Email and Query fields to submit your query."); 
        $this->mo_saml_show_error_message(); 
        Us: 
        Ce: 
        goto yn; 
        cl: 
        if (!$this->mo_saml_check_empty_or_null($_POST["saml_licence_key"])) { 
            goto gZ; 
        } 
        update_option("mo_saml_message", "All the fields are required. Please enter valid license key."); 
        $this->mo_saml_show_error_message(); 
        return; 
        gZ: 
        $M7 = sanitize_text_field(trim($_POST["saml_licence_key"])); 
        $ma = new Customersaml(); 
        $zn = $ma->check_customer_ln(); 
        if ($zn) { 
            goto wO; 
        } 
        return; 
        wO: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto K7; 
        } 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("site_ck_l", AESEncryption::encrypt_data("false", $zs)); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "licensing"), $_SERVER["REQUEST_URI"]); 
        update_option("mo_saml_message", "You have not upgraded yet. " . addLink("Click here", $mn) . " to upgrade to premium version."); 
        $this->mo_saml_show_error_message(); 
        goto oQ; 
        K7: 
        $zn = json_decode($ma->mo_saml_vl($M7, false), true); 
        update_option("vl_check_t", time()); 
        if (is_array($zn) && strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto uf; 
        } 
        if (is_array($zn) && strcasecmp($zn["status"], "FAILED") == 0) { 
            goto MI; 
        } 
        update_option("mo_saml_message", "An error occured while processing your request. Please Try again."); 
        $this->mo_saml_show_error_message(); 
        goto OK; 
        MI: 
        if (strcasecmp($zn["message"], "Code has Expired") == 0) { 
            goto MD; 
        } 
        update_option("mo_saml_message", "You have entered an invalid license key. Please enter a valid license key."); 
        goto Lh; 
        MD: 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "licensing"), $_SERVER["REQUEST_URI"]); 
        update_option("mo_saml_message", "License key you have entered has already been used. Please enter a key which has not been used before on any other instance or if you have exausted all your keys then " . addLink("Click here", $mn) . " to buy more."); 
        Lh: 
        $this->mo_saml_show_error_message(); 
        OK: 
        goto Nf; 
        uf: 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("sml_lk", AESEncryption::encrypt_data($M7, $zs)); 
        $BN = "Your license is verified. You can now setup the plugin."; 
        update_option("mo_saml_message", $BN); 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("site_ck_l", AESEncryption::encrypt_data("true", $zs)); 
        update_option("t_site_status", AESEncryption::encrypt_data("false", $zs)); 
        $d2 = plugin_dir_path(__FILE__); 
        $DO = home_url(); 
        $DO = trim($DO, "/"); 
        if (preg_match("#^http(s)?://#", $DO)) { 
            goto bC; 
        } 
        $DO = "http://" . $DO; 
        bC: 
        $pJ = parse_url($DO); 
        $YI = preg_replace("/^www\./", '', $pJ["host"]); 
        $H0 = wp_upload_dir(); 
        $KV = $YI . "-" . $H0["basedir"]; 
        $LP = hash_hmac("sha256", $KV, "4DHfjgfjasndfsajfHGJ"); 
        $cy = $this->djkasjdksa(); 
        $TA = round(strlen($cy) / rand(2, 20)); 
        $cy = substr_replace($cy, $LP, $TA, 0); 
        $uG = base64_decode($cy); 
        if (is_writable($d2 . "license")) { 
            goto Sc; 
        } 
        $cy = str_rot13($cy); 
        $IB = base64_decode("bGNkamthc2pka3NhY2w="); 
        update_option($IB, $cy); 
        goto Gh; 
        Sc: 
        file_put_contents($d2 . "license", $uG); 
        Gh: 
        update_option("lcwrtlfsaml", true); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "general"), $_SERVER["REQUEST_URI"]); 
        $this->mo_saml_show_success_message(); 
        Nf: 
        oQ: 
        yn: 
        goto MW; 
        f2: 
        if (mo_saml_is_extension_installed("curl")) { 
            goto ap; 
        } 
        update_option("mo_saml_message", "ERROR:PHP cURL extension is not installed or disabled. Validate OTP failed."); 
        $this->mo_saml_show_error_message(); 
        return; 
        ap: 
        $M0 = ''; 
        if ($this->mo_saml_check_empty_or_null($_POST["otp_token"])) { 
            goto RT; 
        } 
        $M0 = sanitize_text_field($_POST["otp_token"]); 
        goto xp; 
        RT: 
        update_option("mo_saml_message", "Please enter a value in otp field."); 
        $this->mo_saml_show_error_message(); 
        return; 
        xp: 
        $ma = new CustomerSaml(); 
        $zn = $ma->validate_otp_token(get_option("mo_saml_transactionId"), $M0); 
        if ($zn) { 
            goto nT; 
        } 
        return; 
        nT: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto Wu; 
        } 
        update_option("mo_saml_message", "Invalid one time passcode. Please enter a valid otp."); 
        $this->mo_saml_show_error_message(); 
        goto co; 
        Wu: 
        $this->create_customer(); 
        co: 
        MW: 
        if (!self::mo_check_option_admin_referer("mo_saml_free_trial")) { 
            goto Hn; 
        } 
        if (decryptSamlElement()) { 
            goto Rp; 
        } 
        $M7 = postResponse(); 
        $ma = new Customersaml(); 
        $zn = $ma->mo_saml_vl($M7, false); 
        if ($zn) { 
            goto yT; 
        } 
        return; 
        yT: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto h3; 
        } 
        if (strcasecmp($zn["status"], "FAILED") == 0) { 
            goto B1; 
        } 
        update_option("mo_saml_message", "An error occured while processing your request. Please Try again."); 
        $this->mo_saml_show_error_message(); 
        goto DT; 
        B1: 
        update_option("mo_saml_message", "There was an error activating your TRIAL version. Please contact [email protected] for getting new license for trial version."); 
        $this->mo_saml_show_error_message(); 
        DT: 
        goto Yi; 
        h3: 
        $zs = get_option("mo_saml_customer_token"); 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("t_site_status", AESEncryption::encrypt_data("true", $zs)); 
        update_option("mo_saml_message", "Your 5 days TRIAL is activated. You can now setup the plugin."); 
        $this->mo_saml_show_success_message(); 
        Yi: 
        goto SG; 
        Rp: 
        update_option("mo_saml_message", "There was an error activating your TRIAL version. Either your trial period is expired or you are using wrong trial version. Please contact [email protected] for getting new license for trial version."); 
        $this->mo_saml_show_error_message(); 
        SG: 
        Hn: 
        if (!self::mo_check_option_admin_referer("mo_saml_check_license")) { 
            goto Ch; 
        } 
        $ma = new Customersaml(); 
        $zn = $ma->check_customer_ln(); 
        if ($zn) { 
            goto I8; 
        } 
        return; 
        I8: 
        $zn = json_decode($zn, true); 
        if (strcasecmp($zn["status"], "SUCCESS") == 0) { 
            goto KR; 
        } 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("site_ck_l", AESEncryption::encrypt_data("false", $zs)); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "licensing"), $_SERVER["REQUEST_URI"]); 
        update_option("mo_saml_message", "You have not upgraded yet. " . addLink("Click here", $mn) . " to upgrade to premium version."); 
        $this->mo_saml_show_error_message(); 
        goto Ew; 
        KR: 
        if (!empty($zn["licensePlan"]) && !$this->mo_saml_check_empty_or_null($zn["licensePlan"])) { 
            goto Ys; 
        } 
        $zs = get_option("mo_saml_customer_token"); 
        update_option("site_ck_l", AESEncryption::encrypt_data("false", $zs)); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "licensing"), $_SERVER["REQUEST_URI"]); 
        update_option("mo_saml_message", "You have not upgraded yet. " . addLink("Click here", $mn) . " to upgrade to premium version."); 
        $this->mo_saml_show_error_message(); 
        goto YH; 
        Ys: 
        update_option("mo_saml_license_name", base64_encode($zn["licensePlan"])); 
        $zs = get_option("mo_saml_customer_token"); 
        if (!(!empty($zn["noOfUsers"]) && !$this->mo_saml_check_empty_or_null($zn["noOfUsers"]))) { 
            goto Go; 
        } 
        update_option("mo_saml_usr_lmt", AESEncryption::encrypt_data($zn["noOfUsers"], $zs)); 
        Go: 
        if (!(!empty($zn["licenseExpiry"]) && !$this->mo_saml_check_empty_or_null($zn["licenseExpiry"]))) { 
            goto Fl; 
        } 
        update_option("mo_saml_license_expiry_date", $this->mo_saml_parse_expiry_date($zn["licenseExpiry"])); 
        Fl: 
        update_option("site_ck_l", AESEncryption::encrypt_data("true", $zs)); 
        $d2 = plugin_dir_path(__FILE__); 
        $DO = home_url(); 
        $DO = trim($DO, "/"); 
        if (preg_match("#^http(s)?://#", $DO)) { 
            goto ur; 
        } 
        $DO = "http://" . $DO; 
        ur: 
        $pJ = parse_url($DO); 
        $YI = preg_replace("/^www\./", '', $pJ["host"]); 
        $H0 = wp_upload_dir(); 
        $KV = $YI . "-" . $H0["basedir"]; 
        $LP = hash_hmac("sha256", $KV, "4DHfjgfjasndfsajfHGJ"); 
        $cy = $this->djkasjdksa(); 
        $TA = round(strlen($cy) / rand(2, 20)); 
        $cy = substr_replace($cy, $LP, $TA, 0); 
        $uG = base64_decode($cy); 
        if (is_writable($d2 . "license")) { 
            goto Bc; 
        } 
        $cy = str_rot13($cy); 
        $IB = base64_decode("bGNkamthc2pka3NhY2w="); 
        update_option($IB, $cy); 
        goto WS; 
        Bc: 
        file_put_contents($d2 . "license", $uG); 
        WS: 
        update_option("lcwrtlfsaml", true); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "general"), $_SERVER["REQUEST_URI"]); 
        update_option("mo_saml_message", "You have successfully upgraded your license."); 
        $this->mo_saml_show_success_message(); 
        YH: 
        Ew: 
        Ch: 
        if (!self::mo_check_option_admin_referer("mo_saml_remove_account")) { 
            goto Kj; 
        } 
        $this->mo_sso_saml_deactivate(); 
        add_option("mo_saml_registration_status", "removed_account"); 
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("tab" => "login"), $_SERVER["REQUEST_URI"]); 
        header("Location: " . $mn); 
        Kj: 
        rb: 
    } 
    function create_customer() 
    { 
        $ma = new CustomerSaml(); 
        $xR = $ma->create_customer(); 
        if ($xR) { 
            goto gt; 
        } 
        return; 
        gt: 
        $xR = json_decode($xR, true); 
        if (strcasecmp($xR["status"], "CUSTOMER_USERNAME_ALREADY_EXISTS") == 0) { 
            goto Gj; 
        } 
        if (!(strcasecmp($xR["status"], "SUCCESS") == 0)) { 
            goto vB; 
        } 
        update_option("mo_saml_admin_customer_key", $xR["id"]); 
        update_option("mo_saml_admin_api_key", $xR["apiKey"]); 
        update_option("mo_saml_customer_token", $xR["token"]); 
        update_option("mo_saml_admin_password", ''); 
        update_option("mo_saml_message", "Thank you for registering with Xecurify."); 
        update_option("mo_saml_registration_status", ''); 
        delete_option("mo_saml_verify_customer"); 
        delete_option("mo_saml_new_registration"); 
        $this->mo_saml_show_success_message(); 
        vB: 
        goto sE; 
        Gj: 
        $this->get_current_customer(); 
        sE: 
        update_option("mo_saml_admin_password", ''); 
    } 
    function get_current_customer() 
    { 
        $ma = new CustomerSaml(); 
        $zn = $ma->get_customer_key(); 
        if ($zn) { 
            goto dZ; 
        } 
        return; 
        dZ: 
        $xR = json_decode($zn, true); 
        if (json_last_error() == JSON_ERROR_NONE) { 
            goto w2; 
        } 
        update_option("mo_saml_message", "You already have an account with miniOrange. Please enter a valid password."); 
        update_option("mo_saml_verify_customer", "true"); 
        delete_option("mo_saml_new_registration"); 
        $this->mo_saml_show_error_message(); 
        goto Td; 
        w2: 
        update_option("mo_saml_admin_customer_key", $xR["id"]); 
        update_option("mo_saml_admin_api_key", $xR["apiKey"]); 
        update_option("mo_saml_customer_token", $xR["token"]); 
        update_option("mo_saml_admin_password", ''); 
        update_option("mo_saml_message", "Your account has been retrieved successfully."); 
        delete_option("mo_saml_verify_customer"); 
        delete_option("mo_saml_new_registration"); 
        $this->mo_saml_show_success_message(); 
        Td: 
    } 
    public function mo_saml_check_empty_or_null($A2) 
    { 
        if (!(!isset($A2) || empty($A2))) { 
            goto po; 
        } 
        return true; 
        po: 
        return false; 
    } 
    function miniorange_sso_menu() 
    { 
        $Pp = add_menu_page("MO SAML Settings " . __("Configure SAML Identity Provider for SSO", "mo_saml_settings"), "miniOrange SAML 2.0 SSO", "administrator", "mo_saml_settings", array($this, "mo_login_widget_saml_options"), plugin_dir_url(__FILE__) . "images/miniorange.png"); 
    } 
    function mo_saml_redirect_for_authentication($AF) 
    { 
        if (!mo_saml_is_customer_license_key_verified()) { 
            goto n_; 
        } 
        if (!(get_option("mo_saml_registered_only_access") == "true")) { 
            goto Jl; 
        } 
        $base_url = home_url(); 
        echo "<script>window.location.href='" . esc_url($base_url) . "/?option=saml_user_login&redirect_to='+encodeURIComponent(window.location.href);</script>"; 
        exit; 
        Jl: 
        if (!(mo_saml_is_sp_configured() && get_option("mo_saml_enable_login_redirect") == "true")) { 
            goto fJ; 
        } 
        $Fe = get_option("mo_saml_sp_base_url"); 
        if (!empty($Fe)) { 
            goto kk; 
        } 
        $Fe = home_url(); 
        kk: 
        if (!(get_option("mo_saml_relay_state") && get_option("mo_saml_relay_state") != '')) { 
            goto oe; 
        } 
        $AF = get_option("mo_saml_relay_state"); 
        oe: 
        $AF = mo_saml_get_relay_state($AF); 
        $XE = empty($AF) ? "/" : $AF; 
        $TD = htmlspecialchars_decode(get_option("saml_login_url")); 
        $ge = get_option("saml_login_binding_type"); 
        $JZ = get_option("mo_saml_force_authentication"); 
        $PK = $Fe . "/"; 
        $K2 = get_option("mo_saml_sp_entity_id"); 
        $m7 = get_option("saml_nameid_format"); 
        if (!empty($m7)) { 
            goto ES; 
        } 
        $m7 = "1.1:nameid-format:emailAddress"; 
        ES: 
        if (!empty($K2)) { 
            goto Vg; 
        } 
        $K2 = $Fe . "/wp-content/plugins/miniorange-saml-20-single-sign-on/"; 
        Vg: 
        $Lg = SAMLSPUtilities::createAuthnRequest($PK, $K2, $TD, $JZ, $ge, $m7); 
        if (empty($ge) || $ge == "HttpRedirect") { 
            goto vq; 
        } 
        if (!(get_option("saml_request_signed") == "unchecked")) { 
            goto h5; 
        } 
        $Md = base64_encode($Lg); 
        SAMLSPUtilities::postSAMLRequest($TD, $Md, $XE); 
        exit; 
        h5: 
        $Xc = ''; 
        $BI = ''; 
        $Md = SAMLSPUtilities::signXML($Lg, "NameIDPolicy"); 
        SAMLSPUtilities::postSAMLRequest($TD, $Md, $XE); 
        goto Fy; 
        vq: 
        $YA = $TD; 
        if (strpos($TD, "?") !== false) { 
            goto LY; 
        } 
        $YA .= "?"; 
        goto Gq; 
        LY: 
        $YA .= "&"; 
        Gq: 
        if (!(get_option("saml_request_signed") == "unchecked")) { 
            goto uP; 
        } 
        $YA .= "SAMLRequest=" . $Lg . "&RelayState=" . urlencode($XE); 
        header("Location: " . $YA); 
        exit; 
        uP: 
        $Lg = "SAMLRequest=" . $Lg . "&RelayState=" . urlencode($XE) . "&SigAlg=" . urlencode(XMLSecurityKey::RSA_SHA256); 
        $Ii = array("type" => "private"); 
        $zs = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Ii); 
        $SX = get_option("mo_saml_current_cert_private_key"); 
        $zs->loadKey($SX, FALSE); 
        $Rh = new XMLSecurityDSig(); 
        $vH = $zs->signData($Lg); 
        $vH = base64_encode($vH); 
        $YA .= $Lg . "&Signature=" . urlencode($vH); 
        header("Location: " . $YA); 
        exit; 
        Fy: 
        fJ: 
        n_: 
    } 
    function mo_saml_authenticate() 
    { 
        $Ki = ''; 
        if (!isset($_REQUEST["redirect_to"])) { 
            goto ew; 
        } 
        $Ki = SAMLSPUtilities::mo_saml_sanitize_url($_REQUEST["redirect_to"]); 
        ew: 
        if (!is_user_logged_in()) { 
            goto V8; 
        } 
        $this->mo_saml_login_redirect($Ki); 
        V8: 
        if (!(get_option("mo_saml_enable_login_redirect") == "true")) { 
            goto pG; 
        } 
        $Wi = get_option("mo_saml_backdoor_url") ? trim(get_option("mo_saml_backdoor_url")) : "false"; 
        if (isset($_GET["loggedout"]) && $_GET["loggedout"] == "true") { 
            goto Sd; 
        } 
        if (!(get_option("mo_saml_allow_wp_signin") == "true")) { 
            goto OF; 
        } 
        if (isset($_GET["saml_sso"]) && $_GET["saml_sso"] == $Wi || isset($_POST["saml_sso"]) && $_POST["saml_sso"] == $Wi) { 
            goto Da; 
        } 
        if (!isset($_REQUEST["redirect_to"])) { 
            goto US; 
        } 
        $Ki = SAMLSPUtilities::mo_saml_sanitize_url($_REQUEST["redirect_to"]); 
        if (!(strpos($Ki, "wp-admin") !== false && strpos($Ki, "saml_sso=" . $Wi) !== false)) { 
            goto lp; 
        } 
        return; 
        lp: 
        US: 
        goto ss; 
        Da: 
        return; 
        ss: 
        OF: 
        goto Ly; 
        Sd: 
        header("Location: " . home_url()); 
        exit; 
        Ly: 
        $this->mo_saml_redirect_for_authentication($Ki); 
        pG: 
    } 
    function mo_saml_login_redirect($Ki) 
    { 
        $DQ = false; 
        if (!(strcmp(admin_url(), $Ki) == 0 || strcmp(wp_login_url(), $Ki) == 0)) { 
            goto Xx; 
        } 
        $DQ = true; 
        Xx: 
        if (!empty($Ki) && !$DQ) { 
            goto kW; 
        } 
        header("Location: " . site_url()); 
        goto Md; 
        kW: 
        header("Location: " . htmlspecialchars_decode($Ki)); 
        Md: 
        exit; 
    } 
    function mo_saml_auto_redirect() 
    { 
        if (!current_user_can("read")) { 
            goto pV; 
        } 
        return; 
        pV: 
        if (!(get_option("mo_saml_registered_only_access") == "true")) { 
            goto hk; 
        } 
        if (!(get_option("mo_saml_enable_rss_access") == "true" && is_feed())) { 
            goto VU; 
        } 
        return; 
        VU: 
        $AF = saml_get_current_page_url(); 
        $this->mo_saml_redirect_for_authentication($AF); 
        hk: 
    } 
    function mo_saml_modify_login_form() 
    { 
        if (!(get_option("mo_saml_add_sso_button_wp") == "true")) { 
            goto Dy; 
        } 
        $this->mo_saml_add_sso_button(); 
        Dy: 
        $Wi = get_option("mo_saml_backdoor_url") ? trim(get_option("mo_saml_backdoor_url")) : "false"; 
        echo "<input type="hidden" name="saml_sso" value="" . esc_attr($Wi) . "">" . "
"; 
    } 
    function mo_saml_add_sso_button() 
    { 
        if (is_user_logged_in()) { 
            goto ow; 
        } 
        $fk = get_option("saml_identity_name"); 
        $px = $fk ? "Login with " . $fk : "Login with SSO"; 
        $te = "\xd
                <script>\xd\xa                window.onload = function() {\xd\xa\x9                var target_btn = document.getElementById("mo_saml_button");
\xa	                var before_element = document.querySelector("#loginform p");\xd\xa\x9                before_element.before(target_btn);\xd
                };
\xa                    function loginWithSSOButton(id) {
\xa                        if( id === "mo_saml_login_sso_button")\xd\xa                            document.getElementById("saml_user_login_input").value = "saml_user_login";
\xa                        document.getElementById("loginform").submit(); 
\xa                    }
\x9			</script>\xd\xa\x9\x9        <input id="saml_user_login_input" type="hidden" name="option" value="" />\xd\xa                <div id="mo_saml_button" style="height:88px;">
\xa                \x9<div id="mo_saml_login_sso_button" onclick="loginWithSSOButton(this.id)" style="width:100%;display:flex;justify-content:center;align-items:center;font-size:14px;margin-bottom:1.3rem" class="button button-primary">
\xa\x9\x9\x9\x9	<img style="width:20px;height:15px;padding-right:1px" src="" . esc_url(plugin_dir_url(__FILE__)) . "images/lock-icon.png">" . esc_html($px) . "</div>\xd\xa                    <div style="padding:5px;font-size:14px;height:20px;text-align:center"><b>OR</b></div>
                </div>"; 
        echo $te; 
        ow: 
    } 
    function djkasjdksa() 
    { 
        $JI = "!~@#$%^&*()_+|{}<>?0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
        $pH = strlen($JI); 
        $J6 = ''; 
        $gB = 0; 
        wT: 
        if (!($gB < 10000)) { 
            goto HC; 
        } 
        $J6 .= $JI[rand(0, $pH - 1)]; 
        dW: 
        $gB++; 
        goto wT; 
        HC: 
        return $J6; 
    } 
    function mo_get_saml_shortcode() 
    { 
        if (!is_user_logged_in()) { 
            goto kP; 
        } 
        $current_user = wp_get_current_user(); 
        $e5 = "Hello,"; 
        if (!get_option("mo_saml_custom_greeting_text")) { 
            goto GK; 
        } 
        $e5 = get_option("mo_saml_custom_greeting_text"); 
        GK: 
        $m_ = ''; 
        if (!get_option("mo_saml_greeting_name")) { 
            goto DP; 
        } 
        switch (get_option("mo_saml_greeting_name")) { 
            case "USERNAME": 
                $m_ = $current_user->user_login; 
                goto bf; 
            case "EMAIL": 
                $m_ = $current_user->user_email; 
                goto bf; 
            case "FNAME": 
                $m_ = $current_user->user_firstname; 
                goto bf; 
            case "LNAME": 
                $m_ = $current_user->user_lastname; 
                goto bf; 
            case "FNAME_LNAME": 
                $m_ = $current_user->user_firstname . " " . $current_user->user_lastname; 
                goto bf; 
            case "LNAME_FNAME": 
                $m_ = $current_user->user_lastname . " " . $current_user->user_firstname; 
                goto bf; 
            default: 
                $m_ = $current_user->user_login; 
        } 
        Bh: 
        bf: 
        DP: 
        if (!empty(trim($m_))) { 
            goto RP; 
        } 
        $m_ = $current_user->user_login; 
        RP: 
        $zW = $e5 . " " . $m_; 
        $m9 = "Logout"; 
        if (!get_option("mo_saml_custom_logout_text")) { 
            goto L7; 
        } 
        $m9 = get_option("mo_saml_custom_logout_text"); 
        L7: 
        $te = $zW . " | <a href="" . wp_logout_url(home_url()) . "" title="logout" >" . $m9 . "</a></li>"; 
        $mn = saml_get_current_page_url(); 
        update_option("logout_redirect_url", $mn); 
        goto iE; 
        kP: 
        $Fe = get_option("mo_saml_sp_base_url"); 
        if (!empty($Fe)) { 
            goto WC; 
        } 
        $Fe = home_url(); 
        WC: 
        if (mo_saml_is_sp_configured() && mo_saml_is_customer_license_key_verified()) { 
            goto kz; 
        } 
        $te = "SP is not configured."; 
        goto c7; 
        kz: 
        $QN = "Login with " . get_option("saml_identity_name"); 
        if (!get_option("mo_saml_custom_login_text")) { 
            goto Eg; 
        } 
        $QN = get_option("mo_saml_custom_login_text"); 
        Eg: 
        $bW = get_option("saml_identity_name"); 
        $QN = str_replace("##IDP##", $bW, $QN); 
        $Ki = urlencode(saml_get_current_page_url()); 
        $te = "<a href="" . $Fe . "/?option=saml_user_login&redirect_to=" . $Ki . "">" . $QN . "</a>"; 
        c7: 
        iE: 
        return $te; 
    } 
    function _handle_upload_metadata() 
    { 
        if (!(isset($_FILES["metadata_file"]) || isset($_POST["metadata_url"]))) { 
            goto Bx; 
        } 
        if (!empty($_FILES["metadata_file"]["tmp_name"])) { 
            goto JQ; 
        } 
        if (mo_saml_is_extension_installed("curl")) { 
            goto pb; 
        } 
        update_option("mo_saml_message", "PHP cURL extension is not installed or disabled. Cannot fetch metadata from URL."); 
        $this->mo_saml_show_error_message(); 
        return; 
        pb: 
        $mn = filter_var(htmlspecialchars($_POST["metadata_url"]), FILTER_SANITIZE_URL); 
        $dj = SAMLSPUtilities::mo_saml_wp_remote_call($mn, array("sslverify" => false), true); 
        if (!is_null($dj)) { 
            goto bO; 
        } 
        $rf = null; 
        goto Yl; 
        bO: 
        $rf = $dj; 
        Yl: 
        goto Nm; 
        JQ: 
        $rf = @file_get_contents(sanitize_text_field($_FILES["metadata_file"]["tmp_name"])); 
        Nm: 
        if (!is_null($rf)) { 
            goto NB; 
        } 
        update_option("mo_saml_message", "Invalid Metadata File or URL"); 
        $this->mo_saml_show_error_message(); 
        return; 
        goto mG; 
        NB: 
        $this->upload_metadata($rf); 
        mG: 
        Bx: 
    } 
    function upload_metadata($rf) 
    { 
        if (!empty($rf)) { 
            goto si; 
        } 
        update_option("mo_saml_message", "Error: Couldn't upload metadata. Metadata File is empty."); 
        $this->mo_saml_show_error_message(); 
        return; 
        si: 
        $C2 = set_error_handler(array($this, "handleXmlError")); 
        $rL = new DOMDocument(); 
        $rL->loadXML($rf); 
        restore_error_handler(); 
        $dd = $rL->firstChild; 
        if (!empty($dd)) { 
            goto kQ; 
        } 
        if (!empty($_FILES["metadata_file"]["tmp_name"])) { 
            goto xT; 
        } 
        if (!empty($_POST["metadata_url"])) { 
            goto Iy; 
        } 
        update_option("mo_saml_message", "Please provide a valid metadata file or a valid URL."); 
        $this->mo_saml_show_error_message(); 
        return; 
        goto OG; 
        Iy: 
        update_option("mo_saml_message", "Please provide a valid metadata URL."); 
        $this->mo_saml_show_error_message(); 
        return; 
        OG: 
        goto jK; 
        xT: 
        update_option("mo_saml_message", "Please provide a valid metadata file."); 
        $this->mo_saml_show_error_message(); 
        return; 
        jK: 
        goto LE; 
        kQ: 
        $MC = new IDPMetadataReader($rL); 
        $UQ = $MC->getIdentityProviders(); 
        if (preg_match("/^\w*$/", $_POST["saml_identity_metadata_provider"])) { 
            goto nu; 
        } 
        update_option("mo_saml_message", __("Please match the requested format for Identity Provider Name. Only alphabets, numbers and underscore is allowed.", "miniorange-saml-20-single-sign-on")); 
        $this->mo_saml_show_error_message(); 
        return; 
        nu: 
        if (!(empty($UQ) && !empty($_FILES["metadata_file"]["tmp_name"]))) { 
            goto Lf; 
        } 
        update_option("mo_saml_message", "Please provide a valid metadata file."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Lf: 
        if (!(empty($UQ) && !empty($_POST["metadata_url"]))) { 
            goto Uh; 
        } 
        update_option("mo_saml_message", "Please provide a valid metadata URL."); 
        $this->mo_saml_show_error_message(); 
        return; 
        Uh: 
        foreach ($UQ as $zs => $wG) { 
            $Bh = sanitize_text_field($_POST["saml_identity_metadata_provider"]); 
            $Ko = "HttpRedirect"; 
            $H4 = ''; 
            $sk = $wG->getLoginDetails(); 
            $h3 = $wG->getLogoutDetails(); 
            if (!empty($sk["HTTP-Redirect"])) { 
                goto v7; 
            } 
            if (empty($sk["HTTP-POST"])) { 
                goto fI; 
            } 
            $Ko = "HttpPost"; 
            $H4 = $wG->getLoginURL("HTTP-POST"); 
            fI: 
            goto fR; 
            v7: 
            $H4 = $wG->getLoginURL("HTTP-Redirect"); 
            fR: 
            $iz = "HttpRedirect"; 
            $YG = ''; 
            if (!empty($h3["HTTP-Redirect"])) { 
                goto FJ; 
            } 
            if (empty($h3["HTTP-POST"])) { 
                goto Wq; 
            } 
            $iz = "HttpPost"; 
            $YG = $wG->getLogoutURL("HTTP-POST"); 
            Wq: 
            goto BU; 
            FJ: 
            $YG = $wG->getLogoutURL("HTTP-Redirect"); 
            BU: 
            $pn = $wG->getEntityID(); 
            $Ax = $wG->getSigningCertificate(); 
            update_option("saml_identity_name", $Bh); 
            update_option("saml_login_binding_type", $Ko); 
            update_option("saml_login_url", $H4); 
            update_option("saml_logout_binding_type", $iz); 
            update_option("saml_logout_url", $YG); 
            update_option("saml_issuer", $pn); 
            update_option("saml_nameid_format", "1.1:nameid-format:unspecified"); 
            update_option("saml_x509_certificate", maybe_serialize($Ax)); 
            goto Ex; 
            ID: 
        } 
        Ex: 
        update_option("mo_saml_message", "Identity Provider details saved successfully."); 
        $this->mo_saml_show_success_message(); 
        LE: 
    } 
    function handleXmlError($aL, $ys, $JG, $pR) 
    { 
        if ($aL == E_WARNING && substr_count($ys, "DOMDocument::loadXML()") > 0) { 
            goto W3; 
        } 
        return false; 
        goto I4; 
        W3: 
        return; 
        I4: 
    } 
    function mo_saml_plugin_action_links($zC) 
    { 
        $zC = array_merge(array("<a href="" . esc_url(admin_url("admin.php?page=mo_saml_settings")) . "">" . __("Settings", "textdomain") . "</a>"), $zC); 
        return $zC; 
    } 
    function checkPasswordPattern($kZ) 
    { 
        $GS = "/^[(\w)*(\!\@\#\$\%\^\&\*\.\-\_)*]+$/"; 
        return !preg_match($GS, $kZ); 
    } 
    function mo_saml_parse_expiry_date($Ho) 
    { 
        $CQ = new DateTime($Ho); 
        $OX = $CQ->getTimestamp(); 
        return date("F j, Y", $OX); 
    } 
} 
new saml_mo_login(); 
 ?>

Did this file decode correctly?

Original Code

<?php
/*
Plugin Name: miniOrange SSO using SAML 2.0
Plugin URI: https://miniorange.com/
Description: (Standard)miniOrange SAML 2.0 SSO enables user to perform Single Sign On with any SAML 2.0 enabled Identity Provider.
Version: 16.1.1
Author: miniOrange
Author URI: https://miniorange.com/
*/


require_once dirname(__FILE__) . '/mo_login_saml_sso_widget.php';
require_once 'xmlseclibs.php';
use RobRichards\XMLSecLibs\XMLSecurityKey;
use RobRichards\XMLSecLibs\XMLSecurityDSig;
use RobRichards\XMLSecLibs\XMLSecEnc;
require('mo-saml-class-customer.php');
require('mo_saml_settings_page.php');
require('MetadataReader.php');
require('certificate_utility.php');
require_once('Import-export.php');
require_once('mo-saml-plugin-version-update.php');
class saml_mo_login
{
    function __construct()
    {
        add_action("\x61\144\x6d\151\x6e\137\x6d\145\x6e\165", array($this, "\x6d\151\156\x69\157\162\141\156\147\145\137\163\163\157\x5f\x6d\145\156\x75"));
        add_action("\141\144\x6d\151\156\137\x69\156\x69\x74", array($this, "\x6d\x69\x6e\x69\157\x72\x61\x6e\147\x65\x5f\154\157\x67\151\x6e\137\x77\151\x64\x67\x65\164\x5f\x73\x61\x6d\154\x5f\163\x61\166\x65\137\163\145\x74\164\x69\x6e\147\163"));
        add_action("\141\x64\x6d\x69\156\x5f\x65\156\x71\x75\145\x75\145\137\163\143\162\151\x70\x74\163", array($this, "\x70\154\165\147\151\156\137\x73\145\164\164\151\156\x67\163\x5f\163\164\171\x6c\145"));
        register_deactivation_hook(__FILE__, array($this, "\x6d\157\x5f\x73\x73\157\137\x73\141\155\x6c\137\144\x65\x61\x63\164\151\166\141\x74\145"));
        add_action("\141\144\x6d\x69\156\137\145\x6e\161\x75\x65\165\x65\137\163\x63\162\x69\160\x74\x73", array($this, "\160\154\x75\147\151\x6e\137\x73\145\164\x74\151\x6e\x67\163\137\163\x63\162\151\x70\164"));
        remove_action("\141\x64\155\151\156\x5f\156\157\x74\151\143\x65\163", array($this, "\155\157\x5f\163\x61\155\154\x5f\163\x75\x63\x63\145\x73\163\x5f\155\145\x73\163\141\147\145"));
        remove_action("\141\x64\155\151\156\x5f\156\x6f\x74\151\143\x65\163", array($this, "\x6d\x6f\137\x73\141\155\x6c\137\x65\162\162\x6f\162\137\x6d\145\163\163\x61\147\x65"));
        add_action("\x77\x70\137\141\x75\x74\x68\145\x6e\x74\151\x63\x61\164\x65", array($this, "\155\157\137\x73\x61\x6d\154\x5f\x61\165\x74\x68\145\x6e\x74\x69\143\141\164\x65"));
        add_action("\167\160", array($this, "\155\157\x5f\163\x61\x6d\x6c\x5f\141\x75\x74\x6f\x5f\x72\145\x64\x69\x72\145\143\x74"));
        add_action("\x61\144\x6d\x69\x6e\x5f\151\156\151\164", "\x6d\x6f\137\163\x61\155\154\137\x64\157\x77\156\x6c\157\x61\x64");
        add_action("\x6c\157\147\151\156\x5f\x66\157\162\x6d", array($this, "\155\157\137\x73\x61\155\154\x5f\x6d\x6f\144\x69\146\x79\x5f\x6c\x6f\x67\151\x6e\x5f\146\157\x72\155"));
        add_shortcode("\115\117\137\123\101\x4d\x4c\137\x46\117\122\x4d", array($this, "\x6d\157\x5f\147\145\x74\137\x73\x61\x6d\x6c\137\x73\x68\x6f\162\164\143\x6f\x64\145"));
        add_action("\x61\x64\155\x69\156\137\151\x6e\151\164", array($this, "\x64\x65\x66\x61\165\x6c\x74\137\x63\145\162\164\x69\x66\x69\143\x61\x74\x65"));
        register_activation_hook(__FILE__, array($this, "\x6d\157\x5f\x73\x61\155\154\137\x63\150\145\143\153\x5f\x6f\x70\145\x6e\x73\x73\154"));
        add_action("\x70\154\165\147\x69\x6e\137\141\143\x74\151\x6f\156\137\x6c\x69\156\153\163\x5f" . plugin_basename(__FILE__), array($this, "\155\x6f\137\x73\x61\x6d\x6c\137\x70\x6c\165\147\x69\x6e\x5f\141\x63\164\x69\x6f\x6e\137\x6c\x69\x6e\x6b\x73"));
    }
    function default_certificate()
    {
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "\x72\x65\163\157\165\162\143\x65\163" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Public_Certificate);
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "\x72\x65\163\157\x75\x72\143\x65\163" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Private_Key);
        if (!(!get_option("\155\157\x5f\163\141\x6d\154\x5f\143\165\x72\162\145\156\164\x5f\x63\145\x72\x74") && !get_option("\x6d\x6f\137\x73\x61\155\154\x5f\143\165\x72\162\x65\x6e\x74\137\x63\145\x72\x74\137\160\x72\x69\x76\x61\164\145\x5f\153\145\171"))) {
            goto ck;
        }
        if (get_option("\155\157\x5f\163\141\x6d\x6c\137\x63\145\162\x74") && get_option("\x6d\157\x5f\x73\x61\x6d\154\x5f\143\x65\x72\164\x5f\x70\162\151\166\x61\x74\145\137\153\x65\x79")) {
            goto Lw;
        }
        update_option("\x6d\x6f\137\163\141\x6d\154\x5f\x63\x75\x72\162\145\x6e\x74\137\x63\145\162\164", $mD);
        update_option("\x6d\157\137\x73\141\x6d\x6c\x5f\143\165\162\162\145\156\x74\x5f\143\145\162\x74\137\160\162\x69\x76\141\164\x65\137\153\145\x79", $wv);
        goto S9;
        Lw:
        update_option("\155\x6f\137\163\x61\x6d\x6c\137\143\165\162\x72\x65\156\164\x5f\x63\145\x72\x74", get_option("\x6d\157\x5f\x73\x61\x6d\154\x5f\143\x65\162\x74"));
        update_option("\155\x6f\x5f\x73\141\x6d\x6c\x5f\x63\x75\162\x72\145\156\x74\x5f\143\145\162\x74\x5f\160\162\151\x76\x61\164\145\x5f\x6b\x65\x79", get_option("\x6d\x6f\x5f\163\x61\x6d\154\x5f\x63\145\162\x74\137\x70\162\x69\x76\x61\x74\x65\137\x6b\145\x79"));
        S9:
        ck:
    }
    function mo_login_widget_saml_options()
    {
        global $wpdb;
        update_option("\x6d\x6f\137\x73\141\x6d\x6c\x5f\x68\x6f\x73\164\x5f\156\141\x6d\145", "\150\164\164\160\x73\72\x2f\x2f\x6c\157\x67\x69\x6e\56\x78\145\143\165\x72\151\146\171\x2e\143\x6f\155");
        $wn = get_option("\155\157\x5f\x73\141\x6d\x6c\x5f\150\x6f\x73\164\137\156\141\x6d\145");
        mo_register_saml_sso();
    }
    function mo_saml_check_openssl()
    {
        if (mo_saml_is_extension_installed("\157\x70\x65\x6e\x73\x73\154")) {
            goto ni;
        }
        wp_die("\x50\110\x50\x20\157\160\x65\x6e\x73\163\x6c\40\x65\170\164\x65\156\x73\151\x6f\x6e\40\151\163\40\156\157\x74\x20\151\156\x73\x74\141\x6c\x6c\x65\144\x20\157\162\x20\144\151\x73\141\142\x6c\145\x64\x2c\x70\154\145\141\163\x65\x20\x65\156\x61\142\x6c\x65\x20\151\164\40\164\x6f\40\x61\x63\x74\151\166\141\164\x65\40\164\150\145\40\160\154\x75\147\151\156\x2e");
        ni:
        add_option("\x41\143\164\x69\x76\x61\164\145\x64\x5f\120\154\x75\x67\151\156", "\x50\154\x75\x67\x69\x6e\55\123\154\x75\x67");
    }
    function mo_saml_success_message()
    {
        $wq = "\x65\162\x72\x6f\x72";
        $BN = get_option("\155\157\x5f\x73\x61\x6d\x6c\x5f\155\x65\163\x73\x61\147\145");
        echo "\x3c\144\151\x76\40\x63\154\x61\x73\x73\75\x27" . esc_attr($wq) . "\x27\x3e\40\74\x70\76" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "\74\x2f\x70\x3e\74\x2f\144\151\166\76";
    }
    function mo_saml_error_message()
    {
        $wq = "\165\x70\x64\x61\x74\x65\x64";
        $BN = get_option("\x6d\x6f\x5f\x73\141\155\154\137\x6d\145\163\163\x61\x67\x65");
        echo "\74\x64\151\166\40\x63\x6c\x61\x73\163\x3d\x27" . esc_attr($wq) . "\47\76\x20\x3c\160\x3e" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "\x3c\x2f\x70\x3e\x3c\x2f\x64\x69\x76\x3e";
    }
    public function mo_sso_saml_deactivate()
    {
        if (!is_multisite()) {
            goto vc;
        }
        global $wpdb;
        $Xh = $wpdb->get_col("\x53\105\x4c\x45\103\124\x20\x62\x6c\157\x67\137\151\x64\40\106\122\117\x4d\x20{$wpdb->blogs}");
        $XJ = get_current_blog_id();
        do_action("\155\157\137\x73\141\x6d\x6c\x5f\x66\x6c\165\163\150\137\x63\141\x63\150\145");
        foreach ($Xh as $blog_id) {
            switch_to_blog($blog_id);
            delete_option("\155\157\x5f\163\141\155\154\x5f\150\157\x73\x74\x5f\156\141\x6d\145");
            delete_option("\155\x6f\137\163\141\155\154\x5f\156\145\167\x5f\162\145\147\x69\163\x74\162\141\x74\151\157\156");
            delete_option("\155\157\137\x73\x61\155\x6c\137\x61\144\x6d\151\x6e\137\160\150\157\x6e\x65");
            delete_option("\x6d\x6f\x5f\x73\x61\155\x6c\x5f\141\144\155\x69\156\137\x70\x61\163\x73\x77\157\162\x64");
            delete_option("\x6d\157\x5f\x73\x61\x6d\154\137\x76\145\162\x69\146\171\137\143\165\163\164\157\x6d\145\162");
            delete_option("\x6d\157\x5f\163\x61\155\x6c\137\141\x64\155\x69\156\137\143\x75\163\x74\x6f\x6d\145\x72\137\153\145\x79");
            delete_option("\155\157\137\x73\x61\x6d\x6c\137\141\144\155\x69\156\x5f\141\160\151\x5f\153\145\x79");
            delete_option("\x6d\x6f\x5f\163\x61\155\154\x5f\x63\x75\x73\x74\x6f\x6d\145\162\x5f\164\x6f\x6b\145\x6e");
            delete_option("\155\157\x5f\x73\x61\x6d\x6c\137\155\x65\163\x73\141\x67\x65");
            delete_option("\x6d\157\137\x73\141\x6d\x6c\x5f\162\x65\147\151\163\164\x72\141\164\x69\157\156\137\163\164\141\164\165\163");
            delete_option("\x6d\157\x5f\x73\x61\155\x6c\137\x69\144\x70\x5f\x63\157\x6e\146\151\147\x5f\143\157\155\160\x6c\145\x74\x65");
            delete_option("\x6d\x6f\x5f\x73\x61\155\154\x5f\164\x72\x61\x6e\x73\141\x63\x74\x69\157\156\x49\x64");
            delete_option("\166\x6c\x5f\143\x68\x65\143\153\x5f\x74");
            delete_option("\x76\154\x5f\x63\x68\x65\x63\x6b\x5f\x73");
            delete_option("\155\157\137\x73\141\155\x6c\137\x63\145\x72\x74");
            delete_option("\155\157\x5f\163\141\x6d\154\x5f\x63\145\162\164\137\x70\162\x69\166\141\164\145\137\153\x65\x79");
            delete_option("\x6d\x6f\137\x73\x61\x6d\x6c\x5f\145\156\141\x62\x6c\145\x5f\143\x6c\x6f\x75\144\x5f\142\x72\x6f\x6b\145\x72");
            Fi:
        }
        Jt:
        switch_to_blog($XJ);
        goto L1;
        vc:
        do_action("\x6d\157\x5f\x73\x61\x6d\x6c\137\146\154\165\163\150\x5f\x63\141\143\150\145");
        delete_option("\155\x6f\137\163\141\x6d\154\137\x68\x6f\x73\164\137\156\141\x6d\145");
        delete_option("\155\x6f\137\163\141\155\x6c\x5f\x6e\x65\167\x5f\x72\x65\x67\x69\163\x74\x72\x61\x74\x69\157\x6e");
        delete_option("\155\x6f\x5f\163\141\155\x6c\x5f\x61\144\x6d\151\156\x5f\160\150\x6f\156\145");
        delete_option("\x6d\x6f\x5f\163\x61\155\x6c\137\x61\x64\155\151\x6e\137\x70\x61\163\x73\167\157\162\144");
        delete_option("\155\157\x5f\163\x61\155\154\137\x76\x65\162\x69\146\171\137\x63\x75\x73\164\157\155\145\x72");
        delete_option("\x6d\157\x5f\163\x61\x6d\154\x5f\x61\144\x6d\151\156\137\x63\165\163\x74\x6f\155\x65\162\x5f\153\145\x79");
        delete_option("\155\157\x5f\163\x61\x6d\x6c\x5f\x61\144\155\x69\x6e\x5f\x61\x70\x69\137\x6b\x65\x79");
        delete_option("\155\157\137\163\x61\x6d\x6c\x5f\143\165\x73\164\x6f\155\x65\x72\x5f\164\x6f\x6b\x65\x6e");
        delete_option("\x6d\157\x5f\163\141\155\154\x5f\x6d\x65\x73\163\141\147\x65");
        delete_option("\x6d\157\137\x73\141\x6d\x6c\137\162\x65\x67\151\x73\164\162\141\164\151\157\156\137\163\164\x61\164\x75\163");
        delete_option("\x6d\x6f\x5f\x73\141\155\x6c\x5f\151\144\160\x5f\143\157\x6e\x66\151\x67\x5f\x63\x6f\x6d\160\x6c\145\x74\145");
        delete_option("\155\x6f\137\163\141\155\x6c\x5f\164\x72\141\156\163\x61\143\x74\151\x6f\156\111\x64");
        delete_option("\166\154\137\143\150\x65\x63\x6b\137\x74");
        delete_option("\166\154\x5f\x63\x68\145\143\x6b\137\163");
        delete_option("\x6d\x6f\137\163\x61\x6d\154\x5f\x63\x65\x72\x74");
        delete_option("\155\x6f\137\x73\141\x6d\x6c\137\143\145\x72\x74\x5f\160\162\x69\166\x61\x74\x65\x5f\153\145\171");
        delete_option("\155\157\137\163\141\155\x6c\137\x65\x6e\x61\x62\x6c\145\x5f\x63\154\157\x75\144\137\x62\162\157\153\145\162");
        L1:
    }
    function mo_saml_show_success_message()
    {
        remove_action("\x61\x64\x6d\151\156\137\x6e\157\164\x69\x63\x65\163", array($this, "\155\x6f\x5f\163\x61\x6d\154\137\x73\165\143\143\145\x73\163\x5f\155\145\163\x73\x61\x67\x65"));
        add_action("\x61\x64\x6d\151\x6e\x5f\156\157\164\x69\143\145\x73", array($this, "\155\x6f\x5f\163\141\155\x6c\x5f\x65\x72\x72\x6f\x72\137\x6d\145\163\163\x61\147\145"));
    }
    function mo_saml_show_error_message()
    {
        remove_action("\x61\144\x6d\151\x6e\137\x6e\x6f\164\151\x63\x65\x73", array($this, "\x6d\157\137\x73\141\155\154\137\145\x72\x72\x6f\x72\137\155\x65\x73\163\141\x67\145"));
        add_action("\141\144\155\151\x6e\137\x6e\x6f\164\x69\x63\145\163", array($this, "\155\157\137\x73\x61\x6d\154\137\x73\165\143\x63\x65\163\x73\137\x6d\145\x73\x73\x61\x67\145"));
    }
    function plugin_settings_style($Pp)
    {
        if (!("\x74\157\160\x6c\145\166\x65\154\137\x70\x61\147\145\137\155\x6f\x5f\163\141\x6d\x6c\x5f\163\x65\x74\x74\x69\156\x67\163" != $Pp)) {
            goto q0;
        }
        return;
        q0:
        if (!(isset($_REQUEST["\164\x61\x62"]) && $_REQUEST["\x74\141\x62"] == "\154\x69\x63\145\156\x73\151\x6e\147")) {
            goto Qy;
        }
        wp_enqueue_style("\x6d\x6f\137\163\x61\155\154\x5f\142\x6f\x6f\164\163\x74\x72\141\x70\x5f\x63\163\163", plugins_url("\151\156\x63\154\165\x64\145\163\57\x63\163\x73\57\142\x6f\x6f\x74\163\164\162\x61\160\57\142\157\157\x74\x73\164\x72\141\x70\56\x6d\x69\156\x2e\143\x73\x73", __FILE__), array(), mo_options_plugin_constants::Version, "\141\x6c\x6c");
        Qy:
        wp_enqueue_style("\155\157\137\163\141\x6d\154\137\141\144\155\x69\x6e\137\163\145\x74\164\x69\156\147\x73\x5f\163\x74\x79\x6c\145\137\164\x72\x61\x63\153\145\x72", plugins_url("\151\x6e\x63\154\x75\144\x65\163\57\x63\x73\x73\57\160\x72\157\147\x72\145\x73\x73\55\x74\162\x61\x63\x6b\145\x72\56\x63\163\163", __FILE__), array(), mo_options_plugin_constants::Version, "\x61\x6c\x6c");
        wp_enqueue_style("\x6d\157\x5f\x73\x61\155\x6c\x5f\141\144\155\x69\x6e\137\163\145\164\x74\x69\156\x67\x73\x5f\163\164\171\x6c\145", plugins_url("\151\156\x63\x6c\165\x64\145\x73\x2f\x63\163\x73\57\x73\x74\x79\x6c\x65\137\163\145\164\x74\151\156\x67\163\56\155\x69\x6e\56\x63\163\x73", __FILE__), array(), mo_options_plugin_constants::Version, "\141\x6c\x6c");
        wp_enqueue_style("\155\x6f\137\163\x61\155\154\x5f\141\144\x6d\151\156\x5f\x73\145\x74\x74\x69\156\147\163\137\160\150\157\x6e\x65\x5f\x73\x74\x79\154\145", plugins_url("\151\156\x63\154\165\x64\145\163\57\x63\163\x73\x2f\160\x68\157\156\x65\x2e\155\x69\156\x2e\143\163\x73", __FILE__), array(), mo_options_plugin_constants::Version, "\141\154\154");
        wp_enqueue_style("\x6d\x6f\x5f\163\x61\155\x6c\137\x77\160\x62\x2d\x66\141", plugins_url("\151\x6e\143\x6c\165\x64\x65\163\57\x63\x73\163\x2f\146\x6f\x6e\164\x2d\141\167\145\163\x6f\x6d\x65\56\155\x69\x6e\x2e\143\163\163", __FILE__), array(), mo_options_plugin_constants::Version, "\x61\154\x6c");
    }
    function plugin_settings_script($Pp)
    {
        if (!("\x74\x6f\x70\x6c\145\x76\145\x6c\x5f\160\x61\x67\145\137\x6d\157\x5f\x73\141\155\154\137\x73\145\x74\x74\151\x6e\x67\163" != $Pp)) {
            goto Jx;
        }
        return;
        Jx:
        wp_enqueue_script("\152\x71\x75\145\x72\x79");
        wp_enqueue_script("\155\157\137\x73\141\x6d\154\x5f\x61\x64\x6d\151\156\x5f\x62\x6f\x6f\x74\x73\x74\x72\x61\x70\x5f\163\143\x72\151\160\164", plugins_url("\151\156\x63\154\165\144\145\x73\x2f\x6a\163\x2f\142\x6f\157\x74\163\164\x72\141\x70\56\152\x73", __FILE__), array(), mo_options_plugin_constants::Version, false);
        wp_enqueue_script("\155\x6f\x5f\x73\x61\155\154\137\x61\x64\x6d\x69\156\x5f\x73\145\x74\x74\x69\156\147\163\137\163\x63\x72\x69\x70\x74", plugins_url("\151\x6e\143\x6c\x75\x64\x65\163\57\x6a\x73\x2f\x73\145\164\x74\151\x6e\x67\163\x2e\x6d\151\156\56\x6a\163", __FILE__), array(), mo_options_plugin_constants::Version, false);
        wp_enqueue_script("\x6d\157\x5f\163\x61\155\x6c\137\141\x64\155\151\x6e\x5f\x73\145\x74\164\x69\156\147\163\x5f\160\x68\x6f\156\145\137\x73\143\162\151\160\164", plugins_url("\151\156\x63\154\x75\x64\x65\x73\57\152\163\57\x70\x68\x6f\156\x65\x2e\x6d\151\156\56\152\163", __FILE__), array(), mo_options_plugin_constants::Version, false);
        if (!(isset($_REQUEST["\x74\141\x62"]) && $_REQUEST["\x74\x61\142"] == "\154\151\x63\x65\156\163\151\156\x67")) {
            goto dw;
        }
        wp_enqueue_script("\x6d\x6f\137\x73\x61\155\x6c\137\x6d\x6f\144\x65\x72\156\151\172\162\x5f\x73\x63\162\151\160\x74", plugins_url("\x69\156\143\x6c\x75\x64\x65\163\57\x6a\x73\57\x6d\x6f\144\x65\x72\156\151\172\162\56\x6a\163", __FILE__), array(), mo_options_plugin_constants::Version, false);
        wp_enqueue_script("\155\157\x5f\x73\x61\155\154\137\160\157\160\x6f\166\x65\x72\x5f\163\x63\162\x69\x70\164", plugins_url("\x69\156\143\x6c\x75\x64\145\163\57\x6a\163\57\142\x6f\157\164\163\x74\x72\141\x70\x2f\160\157\x70\x70\x65\x72\x2e\155\x69\x6e\56\152\x73", __FILE__), array(), mo_options_plugin_constants::Version, false);
        wp_enqueue_script("\155\x6f\137\163\141\155\x6c\137\142\157\157\164\x73\164\162\141\160\x5f\x73\x63\x72\x69\x70\164", plugins_url("\x69\x6e\143\x6c\x75\x64\145\x73\x2f\x6a\x73\x2f\x62\157\x6f\x74\163\164\x72\x61\160\x2f\x62\x6f\157\164\163\164\x72\x61\x70\x2e\155\x69\156\56\152\163", __FILE__), array(), mo_options_plugin_constants::Version, false);
        dw:
    }
    function mo_saml_activation_message()
    {
        $wq = "\165\160\x64\141\164\x65\x64";
        $BN = get_option("\x6d\157\x5f\x73\141\x6d\154\137\155\145\x73\x73\x61\147\x65");
        echo "\74\x64\151\166\40\x63\x6c\x61\x73\163\75\x27" . esc_attr($wq) . "\x27\x3e\40\x3c\160\x3e" . SAMLSPUtilities::mo_saml_kses_esc_message($BN) . "\74\x2f\160\76\x3c\x2f\x64\151\166\x3e";
    }
    static function mo_check_option_admin_referer($Jp)
    {
        return isset($_POST["\x6f\160\x74\x69\x6f\156"]) and $_POST["\x6f\x70\x74\x69\157\x6e"] == $Jp and check_admin_referer($Jp);
    }
    function miniorange_login_widget_saml_save_settings()
    {
        if (!current_user_can("\x6d\x61\x6e\x61\147\145\x5f\x6f\160\x74\x69\x6f\156\x73")) {
            goto rb;
        }
        if (!(is_admin() && get_option("\101\143\x74\151\x76\141\164\145\x64\x5f\x50\x6c\165\147\x69\x6e") == "\120\154\165\147\x69\156\55\123\x6c\165\147")) {
            goto A1;
        }
        delete_option("\x41\x63\164\x69\x76\x61\x74\145\144\x5f\x50\x6c\x75\147\151\x6e");
        update_option("\155\157\137\x73\x61\155\x6c\137\155\x65\x73\x73\141\147\145", "\107\x6f\x20\x74\x6f\x20\x70\x6c\x75\x67\151\x6e\x20\x3c\142\76\74\x61\40\x68\162\x65\x66\75\x22\141\144\x6d\151\156\56\x70\x68\x70\x3f\160\141\147\x65\75\155\157\137\x73\x61\155\154\x5f\x73\x65\164\164\151\x6e\x67\163\42\x3e\x73\x65\164\x74\151\x6e\147\x73\x3c\x2f\x61\76\x3c\57\x62\x3e\x20\164\157\x20\143\157\x6e\x66\151\147\165\162\x65\40\x53\x41\115\x4c\40\123\151\156\x67\x6c\145\x20\x53\x69\147\156\x20\x4f\156\40\x62\x79\x20\x6d\151\156\151\x4f\x72\141\156\x67\145\x2e");
        add_action("\141\144\x6d\x69\156\137\x6e\x6f\164\x69\x63\x65\163", array($this, "\x6d\157\137\x73\x61\x6d\x6c\x5f\x61\x63\x74\x69\166\x61\x74\151\157\x6e\137\155\x65\163\163\x61\147\x65"));
        A1:
        if (!self::mo_check_option_admin_referer("\154\157\147\x69\156\x5f\167\151\144\x67\x65\x74\137\x73\141\155\154\137\x73\x61\166\145\137\163\145\x74\x74\x69\156\147\x73")) {
            goto YY;
        }
        if (mo_saml_is_extension_installed("\143\165\162\154")) {
            goto KJ;
        }
        update_option("\155\x6f\x5f\163\x61\x6d\154\137\155\x65\x73\163\x61\x67\x65", "\105\x52\x52\117\x52\x3a\120\x48\120\x20\x63\125\122\x4c\40\145\x78\x74\145\x6e\163\151\157\x6e\40\151\163\x20\x6e\x6f\164\x20\x69\156\x73\x74\x61\154\154\145\144\x20\157\x72\40\x64\x69\x73\x61\x62\x6c\145\x64\x2e\40\x53\x61\x76\145\40\x49\x64\145\x6e\x74\x69\164\x79\40\x50\x72\157\x76\x69\x64\x65\162\x20\103\x6f\x6e\146\151\147\165\x72\141\x74\151\157\156\40\x66\141\151\x6c\x65\x64\x2e");
        $this->mo_saml_show_error_message();
        return;
        KJ:
        $Bh = '';
        $Ko = '';
        $H4 = '';
        $iz = '';
        $m7 = '';
        $pn = '';
        $Ax = '';
        $uQ = '';
        if ($this->mo_saml_check_empty_or_null($_POST["\x73\141\x6d\x6c\137\151\144\x65\x6e\x74\x69\164\171\x5f\x6e\x61\x6d\145"]) || $this->mo_saml_check_empty_or_null($_POST["\x73\141\x6d\x6c\x5f\154\x6f\147\151\x6e\x5f\x75\x72\154"]) || $this->mo_saml_check_empty_or_null($_POST["\163\141\x6d\154\x5f\151\163\x73\x75\145\162"]) || $this->mo_saml_check_empty_or_null($_POST["\163\141\x6d\x6c\x5f\x6e\141\x6d\x65\x69\144\137\x66\157\x72\155\x61\164"])) {
            goto vd;
        }
        if (!preg_match("\x2f\136\134\x77\x2a\x24\x2f", $_POST["\x73\x61\x6d\154\137\x69\144\145\x6e\x74\151\x74\171\x5f\x6e\x61\x6d\145"])) {
            goto sP;
        }
        $Bh = sanitize_text_field(trim($_POST["\x73\x61\x6d\154\137\x69\x64\x65\x6e\x74\151\x74\x79\x5f\x6e\141\155\x65"]));
        $H4 = SAMLSPUtilities::mo_saml_sanitize_url(trim($_POST["\x73\141\x6d\154\x5f\154\x6f\147\x69\x6e\137\x75\x72\x6c"]));
        if (!isset($_POST["\163\x61\155\154\137\x6c\x6f\x67\x69\x6e\x5f\x62\x69\x6e\x64\151\x6e\x67\137\164\x79\x70\145"])) {
            goto gE;
        }
        $Ko = sanitize_text_field($_POST["\x73\141\155\154\x5f\154\157\147\x69\156\137\x62\151\156\144\151\x6e\147\x5f\164\x79\160\145"]);
        gE:
        $pn = sanitize_text_field(trim($_POST["\x73\x61\155\154\x5f\x69\x73\x73\165\145\162"]));
        $EV = sanitize_text_field(trim($_POST["\163\141\155\154\137\x69\x64\145\x6e\x74\x69\164\x79\137\160\162\x6f\x76\x69\144\x65\162\x5f\x67\165\x69\x64\x65\137\156\x61\x6d\x65"]));
        $Ax = $_POST["\x73\x61\155\x6c\x5f\170\x35\60\x39\137\x63\x65\x72\164\151\146\151\143\x61\x74\x65"];
        $m7 = sanitize_text_field($_POST["\163\x61\x6d\154\137\x6e\x61\x6d\145\151\x64\137\x66\157\x72\155\x61\164"]);
        goto mc;
        sP:
        update_option("\x6d\157\137\x73\141\x6d\x6c\137\155\145\x73\x73\141\x67\145", "\x50\x6c\145\141\163\x65\40\155\141\x74\x63\150\40\164\x68\145\x20\162\145\x71\x75\x65\x73\x74\145\x64\40\146\157\162\x6d\141\x74\40\146\x6f\x72\40\111\x64\x65\x6e\164\x69\164\x79\x20\120\x72\157\x76\151\144\145\x72\40\116\141\x6d\x65\x2e\x20\117\156\154\x79\40\141\x6c\x70\x68\x61\x62\x65\164\163\x2c\40\156\x75\155\142\x65\162\x73\x20\x61\x6e\144\x20\165\156\x64\145\x72\163\143\x6f\162\x65\x20\151\163\40\x61\x6c\154\x6f\167\x65\144\56");
        $this->mo_saml_show_error_message();
        return;
        mc:
        goto oG;
        vd:
        update_option("\155\x6f\x5f\163\x61\x6d\154\137\x6d\x65\163\163\x61\147\145", "\x41\154\154\40\164\150\145\40\146\151\x65\154\x64\163\40\x61\x72\x65\40\x72\x65\161\x75\151\162\145\144\x2e\40\120\x6c\x65\141\163\145\x20\x65\156\164\x65\x72\x20\166\141\154\x69\144\40\145\x6e\x74\x72\151\x65\x73\x2e");
        $this->mo_saml_show_error_message();
        return;
        oG:
        update_option("\163\141\155\x6c\137\151\x64\145\156\164\x69\164\x79\x5f\x6e\x61\x6d\x65", $Bh);
        update_option("\163\141\x6d\x6c\x5f\154\157\147\x69\156\137\x62\x69\x6e\x64\x69\x6e\x67\x5f\164\171\160\x65", $Ko);
        update_option("\163\x61\155\154\x5f\x6c\157\147\151\156\x5f\165\x72\x6c", $H4);
        update_option("\x73\141\155\x6c\137\x6c\x6f\x67\157\165\x74\x5f\142\151\156\144\151\x6e\147\x5f\164\x79\160\145", $iz);
        update_option("\x73\141\155\x6c\137\x69\x73\163\x75\x65\x72", $pn);
        update_option("\x73\141\x6d\154\137\156\x61\x6d\145\151\x64\137\146\157\x72\x6d\x61\x74", $m7);
        update_option("\x73\141\x6d\x6c\x5f\151\144\145\x6e\164\x69\x74\x79\x5f\x70\x72\x6f\x76\151\144\x65\x72\x5f\x67\x75\x69\x64\x65\137\156\x61\155\x65", $EV);
        if (isset($_POST["\163\x61\155\x6c\x5f\162\145\x71\x75\x65\x73\x74\x5f\x73\151\x67\156\x65\144"])) {
            goto ek;
        }
        update_option("\x73\x61\x6d\x6c\137\x72\x65\x71\165\145\163\164\137\x73\151\x67\156\145\144", "\x75\x6e\143\x68\x65\143\153\x65\144");
        goto F7;
        ek:
        update_option("\163\x61\x6d\x6c\137\162\145\161\165\x65\163\x74\137\x73\151\x67\156\145\x64", "\143\x68\145\x63\x6b\x65\144");
        F7:
        foreach ($Ax as $zs => $A2) {
            if (empty($A2)) {
                goto mu;
            }
            $Ax[$zs] = SAMLSPUtilities::sanitize_certificate($A2);
            if (@openssl_x509_read($Ax[$zs])) {
                goto at;
            }
            update_option("\155\157\x5f\163\x61\155\x6c\x5f\x6d\x65\163\x73\x61\x67\x65", "\111\156\166\x61\x6c\x69\x64\40\x63\x65\162\x74\x69\146\x69\143\141\164\145\x3a\40\120\x6c\145\x61\163\145\40\x70\162\157\166\151\144\145\40\x61\40\166\141\154\x69\x64\x20\143\145\x72\x74\x69\x66\151\x63\x61\164\145\x2e");
            $this->mo_saml_show_error_message();
            delete_option("\163\x61\x6d\x6c\x5f\170\x35\60\71\137\143\145\x72\164\x69\146\151\x63\141\x74\x65");
            return;
            at:
            goto yC;
            mu:
            unset($Ax[$zs]);
            yC:
            VG:
        }
        A8:
        if (!empty($Ax)) {
            goto HD;
        }
        update_option("\155\x6f\x5f\163\141\155\x6c\x5f\155\145\163\x73\141\x67\145", "\x49\x6e\166\141\154\x69\144\x20\103\145\162\164\151\146\151\143\x61\164\145\x3a\120\x6c\145\x61\x73\x65\40\x70\x72\157\x76\151\x64\145\x20\x61\40\143\145\162\x74\151\x66\151\143\x61\x74\x65");
        $this->mo_saml_show_error_message();
        return;
        HD:
        update_option("\163\x61\155\x6c\x5f\170\65\60\x39\137\143\145\x72\164\x69\x66\151\x63\x61\x74\145", maybe_serialize($Ax));
        if (isset($_POST["\163\141\155\154\x5f\162\x65\163\x70\157\156\163\x65\x5f\x73\x69\147\156\x65\x64"])) {
            goto sL;
        }
        update_option("\x73\141\155\x6c\137\x72\145\x73\160\157\x6e\163\x65\137\x73\151\x67\x6e\145\x64", "\131\x65\163");
        goto eq;
        sL:
        update_option("\x73\x61\155\154\x5f\162\145\163\x70\157\x6e\x73\x65\x5f\x73\x69\147\x6e\x65\x64", "\x63\x68\145\143\153\x65\144");
        eq:
        if (isset($_POST["\x73\141\x6d\154\x5f\x61\x73\163\145\x72\164\151\x6f\156\137\163\x69\x67\156\145\144"])) {
            goto ta;
        }
        update_option("\x73\141\155\154\x5f\141\163\x73\145\162\x74\x69\x6f\156\137\x73\x69\147\156\145\144", "\131\145\x73");
        goto ij;
        ta:
        update_option("\163\x61\155\154\137\x61\163\x73\145\162\x74\151\157\156\x5f\x73\x69\x67\x6e\x65\x64", "\143\150\145\143\153\145\144");
        ij:
        if (isset($_POST["\145\156\141\142\x6c\145\137\151\143\157\156\166"])) {
            goto le;
        }
        update_option("\155\157\137\163\141\155\x6c\137\145\156\x63\x6f\x64\151\156\x67\x5f\x65\156\141\x62\x6c\145\144", '');
        goto Vb;
        le:
        update_option("\x6d\x6f\x5f\163\141\155\x6c\137\x65\156\x63\x6f\x64\151\x6e\147\x5f\145\x6e\x61\x62\154\145\144", "\x63\x68\x65\143\x6b\x65\144");
        Vb:
        update_option("\155\x6f\137\x73\141\x6d\x6c\137\x6d\145\163\x73\141\147\145", "\x49\144\x65\x6e\x74\151\164\171\40\x50\x72\157\x76\x69\x64\x65\x72\40\x64\x65\x74\x61\151\x6c\163\40\x73\141\166\x65\144\40\x73\165\143\x63\145\163\163\146\165\154\x6c\171\x2e");
        $this->mo_saml_show_success_message();
        YY:
        if (!self::mo_check_option_admin_referer("\x6d\x6f\137\x73\141\x6d\x6c\x5f\x61\x64\x64\137\163\163\157\137\142\165\x74\164\157\x6e\x5f\x77\160\137\x6f\x70\x74\x69\157\156")) {
            goto JB;
        }
        if (mo_saml_is_sp_configured()) {
            goto cV;
        }
        update_option("\155\x6f\x5f\x73\141\155\154\137\x6d\145\163\163\141\147\x65", "\x50\154\x65\141\x73\145\x20\143\x6f\x6d\160\x6c\145\164\x65\40" . addLink("\x53\145\162\166\x69\143\145\40\x50\x72\x6f\x76\151\144\x65\x72", SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\x61\142" => "\163\x61\166\x65"), $_SERVER["\122\105\121\x55\105\x53\124\137\x55\x52\111"])) . "\40\143\x6f\156\x66\151\147\165\162\141\164\x69\157\x6e\40\x66\151\x72\163\x74\56");
        $this->mo_saml_show_error_message();
        goto sF;
        cV:
        if (isset($_POST["\x6d\x6f\x5f\x73\x61\x6d\154\x5f\141\144\x64\137\x73\x73\x6f\x5f\x62\x75\164\x74\x6f\156\137\x77\x70"])) {
            goto JZ;
        }
        $q5 = "\x66\x61\x6c\163\145";
        goto gh;
        JZ:
        $q5 = sanitize_text_field($_POST["\155\157\137\163\141\155\154\137\x61\x64\144\137\163\x73\x6f\x5f\142\x75\x74\164\x6f\156\x5f\x77\160"]);
        gh:
        update_option("\x6d\157\137\163\141\155\154\137\x61\144\144\x5f\163\163\x6f\137\142\165\x74\x74\x6f\156\137\x77\x70", $q5);
        update_option("\x6d\x6f\137\163\x61\x6d\154\137\155\145\163\163\141\147\x65", "\x53\151\147\156\x20\151\156\x20\x6f\160\x74\151\157\156\x20\165\x70\144\x61\164\x65\x64\56");
        $this->mo_saml_show_success_message();
        sF:
        JB:
        if (!self::mo_check_option_admin_referer("\154\157\x67\x69\x6e\x5f\x77\x69\144\x67\145\x74\137\x73\141\x6d\154\x5f\141\164\164\162\x69\142\x75\x74\x65\x5f\x6d\x61\x70\160\151\x6e\147")) {
            goto Od;
        }
        if (mo_saml_is_extension_installed("\x63\165\x72\154")) {
            goto Bd;
        }
        update_option("\155\157\x5f\x73\x61\155\x6c\137\155\x65\x73\163\141\147\145", "\105\122\122\x4f\x52\72\120\x48\120\40\143\125\122\114\x20\145\x78\164\x65\x6e\163\x69\157\156\40\x69\163\40\x6e\157\x74\x20\151\x6e\x73\x74\141\x6c\x6c\145\144\40\x6f\x72\40\x64\151\x73\141\x62\154\145\144\56\40\x53\141\x76\145\x20\101\x74\164\x72\151\x62\165\x74\x65\x20\115\141\160\x70\x69\156\x67\x20\x66\141\x69\154\x65\x64\x2e");
        $this->mo_saml_show_error_message();
        return;
        Bd:
        update_option("\x73\x61\x6d\154\137\141\x6d\x5f\x75\163\145\162\x6e\x61\x6d\145", sanitize_user($_POST["\x73\141\155\x6c\x5f\141\155\x5f\165\163\x65\x72\x6e\141\155\x65"]));
        update_option("\163\141\155\x6c\x5f\141\155\137\145\x6d\x61\151\154", sanitize_text_field($_POST["\x73\x61\155\154\x5f\x61\x6d\137\x65\155\x61\151\x6c"]));
        update_option("\x73\x61\x6d\x6c\137\x61\x6d\137\146\x69\162\x73\x74\137\x6e\x61\155\x65", sanitize_text_field($_POST["\x73\141\x6d\154\137\141\155\x5f\x66\151\162\163\x74\x5f\x6e\x61\155\x65"]));
        update_option("\163\x61\155\154\x5f\x61\155\x5f\154\141\163\164\x5f\156\141\x6d\145", sanitize_text_field($_POST["\x73\141\x6d\x6c\137\x61\x6d\137\x6c\x61\x73\164\137\156\141\x6d\x65"]));
        update_option("\x73\141\155\x6c\137\x61\155\x5f\144\x69\x73\160\154\x61\x79\137\x6e\141\155\x65", sanitize_text_field($_POST["\163\141\155\154\137\141\155\137\144\151\163\160\x6c\141\171\x5f\156\x61\155\x65"]));
        update_option("\x6d\x6f\x5f\x73\141\155\x6c\137\x6d\x65\163\x73\141\147\x65", "\x41\164\x74\162\x69\142\x75\x74\145\x20\115\x61\x70\x70\151\x6e\147\40\x64\145\164\x61\x69\x6c\163\40\163\141\166\145\x64\40\x73\x75\143\x63\145\x73\x73\146\165\x6c\x6c\x79");
        $this->mo_saml_show_success_message();
        Od:
        if (!self::mo_check_option_admin_referer("\x63\154\x65\x61\x72\x5f\141\x74\164\x72\163\x5f\154\151\163\x74")) {
            goto VM;
        }
        delete_option("\155\x6f\137\163\141\155\154\x5f\164\145\x73\164\x5f\143\157\x6e\146\151\x67\x5f\x61\x74\164\x72\163");
        update_option("\155\157\x5f\163\141\155\154\137\x6d\x65\x73\163\141\x67\x65", "\x41\164\x74\x72\x69\142\165\x74\x65\x73\40\x6c\151\x73\x74\x20\x72\x65\155\157\166\145\x64\x20\163\165\143\143\x65\163\163\x66\165\x6c\154\171");
        $this->mo_saml_show_success_message();
        VM:
        if (!self::mo_check_option_admin_referer("\154\157\147\151\x6e\137\167\x69\144\x67\x65\164\137\163\141\x6d\x6c\137\x72\157\154\x65\x5f\155\141\x70\160\x69\156\147")) {
            goto tG;
        }
        if (mo_saml_is_extension_installed("\143\165\x72\154")) {
            goto L_;
        }
        update_option("\155\157\137\x73\141\155\x6c\x5f\x6d\145\163\x73\141\x67\x65", "\105\x52\122\x4f\122\72\120\110\120\x20\x63\125\x52\x4c\40\x65\170\164\x65\156\163\x69\x6f\x6e\x20\151\x73\x20\156\x6f\x74\40\151\x6e\x73\x74\141\x6c\x6c\x65\x64\x20\157\x72\x20\144\151\163\141\142\154\145\x64\x2e\x20\x53\141\x76\x65\40\x52\157\154\x65\40\115\141\160\160\151\x6e\147\40\146\x61\151\x6c\145\x64\56");
        $this->mo_saml_show_error_message();
        return;
        L_:
        if (isset($_POST["\x6d\157\137\x73\x61\155\x6c\x5f\x64\157\x6e\164\137\165\160\144\141\164\145\137\145\170\151\163\x74\x69\156\147\137\x75\x73\x65\162\x5f\x72\x6f\154\145"])) {
            goto Jh;
        }
        update_option("\x73\141\x6d\154\137\141\x6d\x5f\144\x6f\x6e\x74\x5f\165\x70\x64\141\x74\x65\137\x65\170\x69\163\164\151\156\147\x5f\x75\x73\x65\x72\137\x72\157\x6c\x65", "\165\156\x63\150\x65\143\153\145\x64");
        goto ok;
        Jh:
        update_option("\163\x61\x6d\x6c\137\141\155\x5f\x64\x6f\156\164\137\x75\x70\x64\141\164\145\137\x65\x78\x69\x73\164\x69\x6e\147\137\x75\x73\145\x72\137\162\x6f\154\x65", "\x63\150\x65\143\x6b\145\x64");
        ok:
        if (!isset($_POST["\x73\141\155\154\137\141\155\x5f\144\145\146\141\165\154\164\137\x75\163\x65\x72\x5f\x72\x6f\154\x65"])) {
            goto g9;
        }
        $T5 = sanitize_text_field($_POST["\163\x61\155\x6c\137\x61\x6d\x5f\144\x65\146\x61\x75\154\x74\x5f\165\x73\x65\162\x5f\162\157\x6c\145"]);
        update_option("\x73\141\155\x6c\x5f\x61\155\x5f\x64\x65\146\141\x75\x6c\x74\137\165\x73\x65\x72\137\x72\157\x6c\145", $T5);
        g9:
        update_option("\x6d\157\x5f\x73\x61\x6d\x6c\137\155\x65\163\x73\141\x67\x65", "\122\157\154\x65\x20\x4d\141\x70\x70\151\x6e\x67\40\144\x65\164\x61\151\x6c\163\40\x73\141\166\145\x64\x20\163\165\x63\x63\x65\163\163\146\x75\x6c\x6c\x79\x2e");
        $this->mo_saml_show_success_message();
        tG:
        if (!self::mo_check_option_admin_referer("\155\157\x5f\x73\x61\x6d\x6c\x5f\x75\160\x64\x61\x74\145\137\x69\144\x70\137\x73\145\164\164\x69\x6e\147\163\x5f\x6f\160\164\x69\157\156")) {
            goto D2;
        }
        if (!(isset($_POST["\x6d\157\x5f\163\x61\x6d\154\x5f\163\160\137\142\141\x73\145\x5f\x75\162\x6c"]) && isset($_POST["\x6d\x6f\x5f\163\x61\155\x6c\x5f\x73\160\137\x65\x6e\164\151\164\x79\137\151\x64"]))) {
            goto uw;
        }
        $Fe = SAMLSPUtilities::mo_saml_sanitize_url($_POST["\x6d\157\137\x73\141\x6d\154\137\x73\x70\137\x62\x61\163\x65\x5f\165\162\x6c"]);
        $K2 = sanitize_text_field($_POST["\x6d\157\137\x73\x61\x6d\x6c\137\x73\160\137\145\x6e\x74\151\164\171\137\151\144"]);
        if (!(substr($Fe, -1) == "\x2f")) {
            goto N_;
        }
        $Fe = substr($Fe, 0, -1);
        N_:
        update_option("\x6d\157\x5f\163\141\x6d\154\137\163\x70\x5f\142\141\163\x65\137\x75\162\154", $Fe);
        update_option("\x6d\x6f\137\x73\141\155\154\x5f\x73\x70\x5f\x65\x6e\164\x69\x74\171\137\151\144", $K2);
        uw:
        update_option("\x6d\157\137\x73\x61\x6d\154\137\155\145\163\163\x61\x67\x65", "\x53\x65\164\164\151\156\x67\163\x20\165\160\144\x61\164\x65\x64\40\x73\x75\143\x63\x65\x73\163\146\x75\x6c\154\171\x2e");
        $this->mo_saml_show_success_message();
        D2:
        if (!self::mo_check_option_admin_referer("\x73\x61\x6d\154\x5f\165\160\154\157\x61\144\137\155\x65\x74\x61\x64\x61\164\141")) {
            goto Dt;
        }
        if (!function_exists("\x77\x70\x5f\x68\141\x6e\144\154\x65\137\x75\160\x6c\157\141\144")) {
            require_once ABSPATH . 'wp-admin/includes/file.php';
        }
        $this->_handle_upload_metadata();
        Dt:
        if (!self::mo_check_option_admin_referer("\x75\160\147\x72\x61\144\x65\x5f\x63\x65\x72\x74")) {
            goto vT;
        }
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "\x72\x65\163\x6f\x75\162\x63\145\163" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Public_Certificate);
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "\162\x65\163\x6f\165\x72\x63\x65\163" . DIRECTORY_SEPARATOR . mo_options_enum_default_sp_certificate::SP_Private_Key);
        update_option("\x6d\x6f\137\x73\x61\155\x6c\137\x63\x75\x72\162\x65\x6e\x74\x5f\x63\145\x72\164", $mD);
        update_option("\155\157\137\x73\141\x6d\x6c\x5f\x63\x75\x72\x72\x65\x6e\x74\x5f\143\145\162\164\x5f\160\162\x69\166\141\164\x65\x5f\x6b\145\171", $wv);
        update_option("\155\157\x5f\163\141\x6d\154\137\143\x65\x72\x74\x69\x66\151\143\141\164\x65\137\x72\157\154\x6c\137\x62\141\143\153\x5f\141\x76\x61\151\154\x61\142\x6c\145", true);
        update_option("\x6d\x6f\x5f\163\141\155\x6c\137\x6d\x65\x73\x73\141\147\x65", "\x43\x65\162\164\x69\x66\x69\143\x61\164\145\40\125\x70\147\x72\x61\144\145\x64\40\163\x75\143\143\x65\x73\163\146\x75\x6c\x6c\x79");
        $this->mo_saml_show_success_message();
        vT:
        if (!self::mo_check_option_admin_referer("\x72\x6f\154\154\x62\x61\x63\x6b\x5f\143\145\162\x74")) {
            goto cU;
        }
        $mD = file_get_contents(plugin_dir_path(__FILE__) . "\162\x65\x73\x6f\x75\x72\x63\x65\x73" . DIRECTORY_SEPARATOR . "\163\x70\x2d\143\145\162\164\x69\146\x69\143\141\x74\x65\56\x63\162\x74");
        $wv = file_get_contents(plugin_dir_path(__FILE__) . "\x72\145\x73\157\x75\162\x63\145\163" . DIRECTORY_SEPARATOR . "\x73\x70\55\x6b\145\171\56\153\x65\171");
        update_option("\x6d\157\137\163\141\155\x6c\x5f\x63\x75\x72\162\x65\156\164\x5f\143\x65\x72\x74", $mD);
        update_option("\x6d\x6f\137\x73\x61\155\154\137\x63\165\x72\x72\x65\x6e\164\137\x63\145\x72\x74\137\160\162\x69\x76\141\164\145\x5f\153\x65\x79", $wv);
        update_option("\155\x6f\x5f\163\141\155\154\137\155\x65\163\163\x61\147\145", "\x43\x65\x72\164\151\146\x69\x63\x61\164\145\x20\122\x6f\x6c\x6c\55\142\x61\x63\x6b\145\x64\40\x73\165\x63\x63\145\163\x73\146\x75\154\x6c\171");
        delete_option("\155\157\x5f\x73\x61\155\154\137\143\x65\x72\164\x69\x66\151\143\141\164\x65\137\162\157\154\154\137\142\141\x63\153\137\141\166\141\x69\154\x61\x62\x6c\x65");
        $this->mo_saml_show_success_message();
        cU:
        if (!self::mo_check_option_admin_referer("\x6d\157\x5f\163\141\x6d\x6c\x5f\x72\x65\x6c\141\x79\137\163\x74\x61\x74\145\137\157\160\164\151\157\x6e")) {
            goto a1;
        }
        $AF = SAMLSPUtilities::mo_saml_sanitize_url($_POST["\155\x6f\x5f\163\141\x6d\x6c\x5f\x72\x65\154\141\171\x5f\163\164\141\x74\x65"]);
        update_option("\155\x6f\137\x73\x61\155\x6c\137\x72\x65\x6c\x61\171\137\163\164\x61\x74\x65", $AF);
        update_option("\155\x6f\137\x73\x61\155\x6c\137\x6d\145\163\x73\x61\x67\x65", "\x52\145\154\141\171\40\x53\x74\x61\x74\x65\x20\x68\141\163\40\142\x65\x65\156\40\165\x70\x64\x61\164\x65\x64\40\163\165\143\143\145\163\x73\146\165\154\x6c\x79\56");
        $this->mo_saml_show_success_message();
        a1:
        if (!self::mo_check_option_admin_referer("\155\157\x5f\163\x61\155\154\x5f\167\x69\x64\147\x65\x74\137\157\160\x74\151\x6f\156")) {
            goto l7;
        }
        $OM = sanitize_text_field($_POST["\155\157\x5f\x73\141\155\x6c\x5f\x63\x75\x73\164\x6f\155\x5f\154\x6f\147\151\156\x5f\164\x65\170\164"]);
        update_option("\x6d\157\137\163\x61\155\x6c\x5f\x63\x75\163\x74\157\x6d\137\154\157\x67\151\x6e\x5f\164\x65\170\x74", stripcslashes($OM));
        $e5 = sanitize_text_field($_POST["\x6d\x6f\x5f\x73\141\x6d\154\137\x63\165\163\x74\x6f\x6d\137\147\x72\x65\x65\x74\x69\x6e\x67\137\x74\x65\x78\x74"]);
        update_option("\155\157\137\163\141\155\x6c\x5f\x63\x75\x73\164\157\x6d\137\147\x72\x65\145\164\x69\x6e\147\137\x74\145\170\x74", stripcslashes($e5));
        $m_ = sanitize_text_field($_POST["\x6d\x6f\x5f\163\x61\155\x6c\x5f\x67\162\145\x65\164\151\156\x67\137\x6e\x61\x6d\x65"]);
        update_option("\x6d\157\x5f\x73\141\155\x6c\137\x67\x72\145\x65\x74\151\156\147\x5f\156\141\155\x65", stripcslashes($m_));
        $xN = sanitize_text_field($_POST["\x6d\x6f\x5f\163\x61\155\x6c\x5f\x63\165\163\x74\157\x6d\137\154\x6f\147\x6f\165\164\137\164\145\x78\x74"]);
        update_option("\155\157\137\163\141\x6d\x6c\137\143\165\x73\164\x6f\x6d\137\x6c\157\x67\x6f\165\164\x5f\x74\x65\x78\164", stripcslashes($xN));
        update_option("\155\157\x5f\163\141\x6d\154\137\x6d\x65\x73\x73\x61\147\x65", "\127\151\x64\147\x65\164\x20\x53\x65\164\164\151\x6e\147\x73\x20\165\160\144\141\x74\145\x64\40\x73\x75\143\x63\x65\163\163\146\165\154\x6c\171\x2e");
        $this->mo_saml_show_success_message();
        l7:
        if (!self::mo_check_option_admin_referer("\155\x6f\137\163\141\x6d\154\137\162\x65\147\x69\163\164\x65\x72\137\x63\165\163\x74\x6f\155\145\162")) {
            goto fw;
        }
        if (mo_saml_is_extension_installed("\x63\165\x72\x6c")) {
            goto K8;
        }
        update_option("\x6d\x6f\137\163\x61\x6d\154\x5f\155\145\163\x73\141\147\145", "\105\122\122\117\x52\72\x20\x50\x48\120\40\x63\x55\x52\114\x20\x65\x78\x74\x65\x6e\163\151\x6f\156\x20\151\163\x20\x6e\x6f\164\40\x69\156\163\x74\141\154\x6c\145\x64\x20\157\162\x20\x64\151\163\x61\142\x6c\x65\x64\x2e\x20\x52\x65\147\151\x73\164\x72\141\x74\151\x6f\156\x20\x66\x61\x69\x6c\x65\x64\x2e");
        $this->mo_saml_show_error_message();
        return;
        K8:
        $KA = '';
        $yC = '';
        $kZ = '';
        $wB = '';
        if ($this->mo_saml_check_empty_or_null($_POST["\145\x6d\141\151\x6c"]) || $this->mo_saml_check_empty_or_null($_POST["\x70\x61\163\163\x77\157\x72\144"]) || $this->mo_saml_check_empty_or_null($_POST["\x63\157\156\146\151\162\x6d\x50\141\x73\163\167\x6f\162\144"])) {
            goto rW;
        }
        if (strlen($_POST["\160\x61\x73\x73\167\x6f\162\144"]) < 6 || strlen($_POST["\143\157\x6e\x66\x69\x72\x6d\120\x61\163\163\167\x6f\x72\x64"]) < 6) {
            goto ZK;
        }
        if (!filter_var($_POST["\145\155\x61\x69\154"], FILTER_VALIDATE_EMAIL)) {
            goto Lr;
        }
        if ($this->checkPasswordPattern(strip_tags($_POST["\160\141\x73\163\x77\157\x72\144"]))) {
            goto rm;
        }
        $KA = sanitize_email($_POST["\x65\155\141\x69\154"]);
        $yC = sanitize_text_field($_POST["\x70\150\157\156\145"]);
        $kZ = sanitize_text_field($_POST["\x70\x61\x73\163\167\157\162\144"]);
        $wB = sanitize_text_field($_POST["\x63\157\156\x66\151\162\x6d\120\141\x73\163\x77\x6f\x72\144"]);
        goto Zb;
        rm:
        update_option("\155\x6f\137\x73\x61\155\x6c\x5f\x6d\x65\x73\x73\141\x67\x65", "\115\x69\x6e\x69\155\165\155\40\x36\x20\143\x68\141\x72\x61\x63\x74\145\162\x73\40\163\150\157\165\154\x64\x20\142\145\x20\160\162\145\163\145\x6e\x74\x2e\x20\x4d\x61\x78\151\155\x75\x6d\40\x31\x35\x20\143\150\141\x72\x61\x63\164\x65\x72\x73\x20\163\150\157\x75\154\144\40\142\x65\x20\160\162\x65\163\x65\156\x74\56\x20\117\x6e\154\171\40\x66\157\154\154\x6f\167\x69\156\x67\40\x73\x79\155\x62\x6f\154\x73\x20\50\41\100\43\x2e\44\45\x5e\x26\52\x2d\x5f\51\x20\x73\150\157\x75\x6c\x64\x20\142\145\40\x70\162\145\163\145\156\164\x2e");
        $this->mo_saml_show_error_message();
        return;
        Zb:
        goto Je;
        Lr:
        update_option("\x6d\x6f\x5f\163\x61\x6d\154\x5f\155\x65\163\x73\141\x67\x65", "\120\154\x65\x61\x73\x65\40\145\x6e\x74\145\162\40\x61\40\x76\141\x6c\151\x64\x20\x65\x6d\x61\x69\154\x20\141\144\x64\x72\145\x73\163\x2e");
        $this->mo_saml_show_error_message();
        return;
        Je:
        goto hM;
        ZK:
        update_option("\x6d\x6f\137\163\x61\x6d\x6c\137\155\145\163\163\141\147\145", "\x43\150\157\x6f\x73\x65\40\x61\x20\160\141\163\x73\167\x6f\x72\144\40\x77\151\164\x68\x20\x6d\151\156\x69\155\165\155\x20\x6c\x65\156\147\164\x68\x20\66\x2e");
        $this->mo_saml_show_error_message();
        return;
        hM:
        goto IA;
        rW:
        update_option("\155\x6f\137\x73\141\155\x6c\137\155\x65\x73\x73\x61\147\x65", "\x41\154\x6c\40\164\x68\x65\x20\146\x69\145\154\x64\163\40\141\162\x65\x20\x72\x65\x71\165\151\x72\x65\x64\56\40\x50\154\145\141\x73\x65\x20\145\x6e\x74\x65\162\40\x76\x61\154\x69\x64\x20\x65\156\x74\x72\151\145\x73\x2e");
        $this->mo_saml_show_error_message();
        return;
        IA:
        update_option("\x6d\x6f\137\163\141\155\154\x5f\141\144\155\151\x6e\137\x65\155\x61\x69\154", $KA);
        update_option("\x6d\x6f\x5f\163\x61\155\x6c\x5f\141\144\x6d\x69\x6e\137\x70\x68\157\156\145", $yC);
        if (strcmp($kZ, $wB) == 0) {
            goto z6;
        }
        update_option("\155\157\x5f\163\x61\x6d\154\137\155\145\163\x73\141\147\145", "\x50\x61\x73\163\x77\x6f\162\x64\x73\40\144\x6f\x20\156\157\164\x20\x6d\141\164\143\150\56");
        delete_option("\x6d\157\137\x73\141\155\154\137\x76\x65\x72\151\146\171\x5f\x63\165\x73\x74\x6f\155\145\x72");
        $this->mo_saml_show_error_message();
        goto lU;
        z6:
        update_option("\x6d\157\x5f\x73\141\155\x6c\x5f\x61\144\x6d\x69\x6e\x5f\x70\x61\x73\x73\x77\157\162\144", $kZ);
        $KA = get_option("\155\x6f\137\163\x61\155\154\137\x61\x64\x6d\x69\156\x5f\145\x6d\x61\x69\x6c");
        $ma = new CustomerSaml();
        $zn = $ma->check_customer();
        if ($zn) {
            goto JC;
        }
        return;
        JC:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\163\x74\141\x74\x75\x73"], "\103\x55\123\124\117\115\x45\x52\137\x4e\117\x54\x5f\x46\117\125\116\x44") == 0) {
            goto et;
        }
        $this->get_current_customer();
        goto qn;
        et:
        $zn = $ma->send_otp_token($KA, '');
        if ($zn) {
            goto ar;
        }
        return;
        ar:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\x73\x74\x61\164\165\x73"], "\x53\125\103\x43\x45\123\123") == 0) {
            goto Ji;
        }
        update_option("\155\157\137\x73\141\x6d\154\x5f\155\x65\x73\163\141\x67\x65", "\124\150\145\x72\x65\40\167\x61\163\x20\x61\156\40\145\162\162\x6f\162\40\x69\x6e\x20\x73\x65\156\144\151\156\x67\40\145\x6d\141\151\154\x2e\x20\120\x6c\x65\141\x73\145\40\166\x65\162\151\x66\171\x20\171\157\x75\x72\x20\145\x6d\x61\151\154\40\x61\x6e\144\40\x74\162\x79\40\141\147\x61\151\x6e\x2e");
        update_option("\155\x6f\137\x73\141\x6d\154\x5f\x72\x65\147\x69\163\164\x72\141\x74\151\x6f\156\137\163\164\x61\164\165\x73", "\x4d\x4f\137\x4f\x54\x50\137\x44\x45\114\x49\x56\x45\122\x45\104\x5f\x46\101\x49\x4c\125\x52\105\x5f\x45\115\x41\111\x4c");
        $this->mo_saml_show_error_message();
        goto b5;
        Ji:
        update_option("\155\157\137\x73\141\155\x6c\x5f\155\x65\163\163\x61\x67\145", "\40\101\40\x6f\156\x65\x20\x74\151\155\145\40\160\141\163\x73\x63\x6f\144\x65\x20\151\x73\x20\x73\145\x6e\164\40\x74\157\x20" . get_option("\x6d\157\137\x73\x61\155\x6c\x5f\x61\144\155\151\156\137\145\155\x61\151\x6c") . "\x2e\40\x50\x6c\145\141\x73\x65\40\x65\x6e\x74\145\x72\40\164\150\x65\x20\157\x74\x70\40\150\x65\x72\x65\40\x74\x6f\x20\x76\x65\x72\x69\146\171\40\171\x6f\165\x72\40\x65\x6d\141\x69\x6c\56");
        update_option("\x6d\x6f\x5f\163\141\155\x6c\137\164\x72\141\x6e\163\x61\143\x74\151\157\x6e\x49\x64", $zn["\x74\170\x49\x64"]);
        update_option("\155\157\x5f\163\x61\x6d\x6c\137\162\x65\147\x69\x73\164\x72\141\x74\x69\157\156\x5f\163\x74\x61\164\165\x73", "\115\x4f\x5f\117\124\x50\x5f\x44\x45\x4c\x49\x56\105\122\105\104\x5f\x53\x55\x43\x43\x45\x53\123\137\105\115\101\111\x4c");
        $this->mo_saml_show_success_message();
        b5:
        qn:
        lU:
        fw:
        if (self::mo_check_option_admin_referer("\155\157\x5f\x73\141\x6d\154\x5f\166\141\x6c\x69\x64\x61\164\x65\137\157\x74\160")) {
            goto f2;
        }
        if (self::mo_check_option_admin_referer("\155\157\x5f\163\141\x6d\x6c\x5f\166\145\x72\x69\x66\171\137\154\x69\x63\x65\x6e\163\145")) {
            goto cl;
        }
        if (self::mo_check_option_admin_referer("\155\157\137\163\x61\155\154\137\x63\x6f\x6e\164\x61\x63\164\137\165\x73\137\x71\165\145\162\171\x5f\157\160\x74\x69\x6f\x6e")) {
            goto I1;
        }
        if (self::mo_check_option_admin_referer("\x6d\157\x5f\x73\x61\155\x6c\x5f\x72\145\x73\x65\156\x64\137\157\164\160\x5f\145\155\141\151\x6c")) {
            goto kb;
        }
        if (self::mo_check_option_admin_referer("\x6d\157\x5f\163\x61\155\154\x5f\x72\145\163\145\x6e\144\137\x6f\164\x70\137\160\x68\157\156\x65")) {
            goto Sy;
        }
        if (self::mo_check_option_admin_referer("\x6d\x6f\137\x73\x61\x6d\154\137\x67\x6f\x5f\x62\x61\x63\x6b")) {
            goto xZ;
        }
        if (self::mo_check_option_admin_referer("\x6d\x6f\137\163\141\x6d\154\137\162\145\147\x69\x73\164\145\162\x5f\167\x69\x74\x68\x5f\x70\x68\x6f\x6e\145\x5f\157\x70\164\151\x6f\x6e")) {
            goto wn;
        }
        if (self::mo_check_option_admin_referer("\155\x6f\x5f\163\x61\155\x6c\137\x72\145\147\x69\x73\x74\145\162\x65\x64\x5f\x6f\156\154\171\137\141\x63\x63\145\163\163\x5f\x6f\x70\164\151\x6f\156")) {
            goto UK;
        }
        if (self::mo_check_option_admin_referer("\x6d\157\137\163\x61\x6d\154\x5f\x66\x6f\x72\x63\x65\x5f\141\x75\164\150\x65\x6e\x74\x69\x63\141\164\151\x6f\x6e\137\157\160\x74\x69\157\x6e")) {
            goto sC;
        }
        if (self::mo_check_option_admin_referer("\155\157\x5f\x73\141\x6d\154\x5f\145\x6e\x61\x62\x6c\x65\137\162\x73\163\137\141\143\143\145\163\x73\137\157\x70\164\151\157\156")) {
            goto ql;
        }
        if (self::mo_check_option_admin_referer("\155\x6f\137\x73\x61\155\x6c\x5f\x65\156\x61\142\x6c\145\x5f\x6c\x6f\147\151\x6e\137\x72\x65\x64\x69\x72\145\143\164\137\157\160\164\151\x6f\x6e")) {
            goto kq;
        }
        if (self::mo_check_option_admin_referer("\155\x6f\x5f\x73\x61\155\154\137\141\x6c\x6c\157\x77\137\x77\160\137\163\151\147\x6e\x69\x6e\x5f\x6f\x70\164\x69\157\156")) {
            goto bM;
        }
        if (isset($_POST["\157\x70\x74\151\x6f\x6e"]) && $_POST["\157\160\164\x69\x6f\156"] == "\155\x6f\137\163\141\155\154\x5f\146\157\x72\147\x6f\x74\137\160\x61\163\163\x77\157\162\x64\x5f\146\157\162\x6d\137\x6f\160\x74\151\x6f\x6e") {
            goto Q0;
        }
        if (!self::mo_check_option_admin_referer("\x6d\157\x5f\163\141\x6d\x6c\137\x76\x65\x72\151\x66\x79\x5f\x63\165\x73\164\x6f\x6d\145\x72")) {
            goto IR;
        }
        if (mo_saml_is_extension_installed("\x63\x75\162\154")) {
            goto dp;
        }
        update_option("\x6d\157\137\163\141\x6d\x6c\x5f\155\x65\163\x73\141\x67\x65", "\105\122\122\117\122\x3a\x20\x50\110\x50\x20\143\x55\122\114\40\145\170\x74\x65\x6e\x73\151\157\x6e\40\151\x73\40\x6e\x6f\164\40\x69\x6e\163\164\141\154\x6c\x65\144\x20\157\162\40\144\x69\x73\x61\142\x6c\145\144\x2e\40\x4c\157\x67\151\156\40\146\141\151\154\x65\144\56");
        $this->mo_saml_show_error_message();
        return;
        dp:
        $KA = '';
        $kZ = '';
        if ($this->mo_saml_check_empty_or_null($_POST["\x65\155\141\151\154"]) || $this->mo_saml_check_empty_or_null($_POST["\x70\141\163\163\x77\x6f\x72\144"])) {
            goto lE;
        }
        if ($this->checkPasswordPattern(strip_tags($_POST["\160\x61\x73\x73\x77\157\x72\x64"]))) {
            goto R0;
        }
        $KA = sanitize_email($_POST["\x65\x6d\141\x69\154"]);
        $kZ = sanitize_text_field($_POST["\160\141\x73\163\x77\x6f\162\x64"]);
        goto s0;
        R0:
        update_option("\155\157\x5f\163\x61\155\x6c\137\x6d\x65\x73\163\x61\147\x65", "\x4d\151\x6e\x69\155\165\155\40\66\40\143\x68\x61\x72\141\143\x74\x65\162\163\40\x73\150\157\x75\154\144\40\x62\145\x20\x70\162\x65\163\145\156\x74\x2e\40\x4d\141\170\151\x6d\165\155\x20\61\x35\40\x63\x68\x61\x72\141\x63\x74\145\x72\x73\40\x73\x68\157\x75\x6c\144\x20\142\x65\40\160\162\145\163\x65\x6e\x74\x2e\40\117\x6e\154\171\40\x66\157\x6c\x6c\157\x77\x69\156\147\x20\163\x79\x6d\x62\157\x6c\x73\x20\50\41\x40\43\x2e\x24\x25\136\x26\x2a\x2d\x5f\51\40\163\x68\157\x75\154\144\x20\142\x65\40\x70\162\x65\163\145\156\164\56");
        $this->mo_saml_show_error_message();
        return;
        s0:
        goto E2;
        lE:
        update_option("\155\157\137\163\x61\x6d\x6c\137\x6d\x65\x73\x73\x61\147\x65", "\x41\x6c\154\x20\x74\x68\x65\x20\146\151\x65\154\144\163\x20\x61\x72\x65\40\x72\x65\x71\x75\x69\x72\145\144\56\40\120\x6c\x65\x61\163\x65\x20\x65\156\164\x65\162\x20\166\x61\154\x69\144\40\145\156\164\162\x69\x65\x73\56");
        $this->mo_saml_show_error_message();
        return;
        E2:
        update_option("\155\x6f\137\163\141\x6d\154\x5f\x61\x64\x6d\151\x6e\137\x65\x6d\141\151\x6c", $KA);
        update_option("\155\x6f\x5f\163\141\155\x6c\x5f\x61\x64\x6d\151\156\137\160\141\x73\163\167\x6f\162\x64", $kZ);
        $ma = new Customersaml();
        $zn = $ma->get_customer_key();
        if ($zn) {
            goto s_;
        }
        return;
        s_:
        $xR = json_decode($zn, true);
        if (json_last_error() == JSON_ERROR_NONE) {
            goto MJ;
        }
        update_option("\x6d\x6f\x5f\x73\141\x6d\x6c\x5f\x6d\x65\163\163\x61\x67\x65", "\111\x6e\166\x61\154\151\144\40\x75\163\x65\x72\156\x61\155\x65\x20\157\x72\40\160\141\163\163\x77\157\162\x64\56\x20\120\x6c\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\147\141\x69\x6e\x2e");
        $this->mo_saml_show_error_message();
        goto i_;
        MJ:
        update_option("\155\x6f\137\163\141\x6d\154\x5f\141\144\x6d\x69\156\x5f\x63\165\x73\x74\x6f\155\x65\x72\137\x6b\x65\171", $xR["\x69\144"]);
        update_option("\155\x6f\x5f\163\x61\x6d\154\x5f\x61\144\x6d\151\156\137\x61\160\151\x5f\153\x65\x79", $xR["\x61\160\x69\x4b\x65\171"]);
        update_option("\x6d\x6f\x5f\163\141\155\x6c\x5f\x63\165\x73\x74\157\x6d\x65\162\137\x74\157\x6b\x65\x6e", $xR["\164\x6f\x6b\145\x6e"]);
        if (empty($xR["\160\x68\157\156\x65"])) {
            goto A3;
        }
        update_option("\155\157\x5f\163\141\155\154\x5f\x61\144\x6d\x69\x6e\137\x70\150\x6f\x6e\145", $xR["\x70\x68\x6f\x6e\145"]);
        A3:
        update_option("\155\x6f\x5f\163\x61\x6d\154\x5f\141\x64\155\x69\156\x5f\160\x61\x73\x73\167\x6f\x72\x64", '');
        update_option("\155\157\x5f\x73\x61\x6d\x6c\137\x6d\145\163\x73\x61\x67\145", "\x43\x75\x73\164\x6f\155\x65\x72\40\x72\145\x74\x72\x69\145\x76\145\x64\40\163\x75\x63\143\x65\163\163\x66\x75\x6c\x6c\171");
        update_option("\155\x6f\x5f\x73\x61\155\x6c\137\x72\x65\x67\151\x73\x74\x72\141\x74\151\157\156\137\x73\x74\141\x74\x75\x73", "\x45\170\x69\163\x74\151\x6e\x67\40\x55\x73\x65\162");
        delete_option("\155\x6f\137\163\x61\x6d\154\x5f\x76\x65\162\151\146\171\x5f\x63\165\163\x74\157\155\145\162");
        if (get_option("\163\x6d\154\137\154\153")) {
            goto bc;
        }
        $this->mo_saml_show_success_message();
        goto V6;
        bc:
        $zs = get_option("\x6d\157\137\163\141\x6d\154\x5f\x63\x75\163\164\157\155\x65\162\137\164\157\153\x65\x6e");
        $M7 = AESEncryption::decrypt_data(get_option("\163\x6d\x6c\137\x6c\x6b"), $zs);
        $zn = $ma->mo_saml_vl($M7, false);
        if ($zn) {
            goto rS;
        }
        return;
        rS:
        $zn = json_decode($zn, true);
        update_option("\x76\154\x5f\x63\150\145\143\x6b\137\x74", time());
        if (strcasecmp($zn["\x73\164\141\x74\165\163"], "\123\x55\103\x43\x45\123\123") == 0) {
            goto fB;
        }
        update_option("\155\157\x5f\163\x61\x6d\x6c\137\155\145\163\x73\x61\147\145", "\x4c\x69\143\145\156\x73\145\x20\153\x65\171\40\146\x6f\162\40\x74\150\x69\x73\x20\x69\x6e\x73\x74\x61\x6e\x63\145\40\x69\163\40\151\x6e\x63\157\162\162\145\143\x74\56\40\x4d\141\153\x65\x20\x73\165\x72\x65\40\171\157\165\x20\150\x61\x76\145\x20\156\157\164\40\164\141\x6d\x70\x65\162\145\x64\x20\167\151\x74\150\x20\151\x74\x20\141\164\x20\141\x6c\154\x2e\40\120\x6c\145\x61\x73\x65\x20\x65\x6e\x74\x65\162\x20\141\40\166\141\154\151\144\x20\x6c\151\143\x65\x6e\163\145\40\x6b\145\171\56");
        delete_option("\x73\x6d\x6c\x5f\154\x6b");
        $this->mo_saml_show_error_message();
        goto Kr;
        fB:
        $d2 = plugin_dir_path(__FILE__);
        $DO = home_url();
        $DO = trim($DO, "\57");
        if (preg_match("\x23\x5e\150\164\x74\x70\50\163\x29\x3f\72\57\x2f\x23", $DO)) {
            goto r5;
        }
        $DO = "\150\x74\164\x70\x3a\x2f\57" . $DO;
        r5:
        $pJ = parse_url($DO);
        $YI = preg_replace("\x2f\x5e\x77\167\167\x5c\x2e\x2f", '', $pJ["\150\157\163\x74"]);
        $H0 = wp_upload_dir();
        $KV = $YI . "\55" . $H0["\x62\x61\163\145\144\x69\162"];
        $LP = hash_hmac("\163\150\x61\62\x35\x36", $KV, "\x34\104\x48\x66\x6a\147\146\x6a\141\x73\156\x64\146\x73\141\x6a\x66\110\107\x4a");
        $cy = $this->djkasjdksa();
        $TA = round(strlen($cy) / rand(2, 20));
        $cy = substr_replace($cy, $LP, $TA, 0);
        $uG = base64_decode($cy);
        if (is_writable($d2 . "\154\x69\143\x65\x6e\x73\x65")) {
            goto sR;
        }
        $cy = str_rot13($cy);
        $IB = base64_decode("bGNkamthc2pka3NhY2w=");
        update_option($IB, $cy);
        goto rd;
        sR:
        file_put_contents($d2 . "\154\x69\x63\145\x6e\163\145", $uG);
        rd:
        update_option("\154\x63\x77\x72\x74\x6c\146\x73\x61\x6d\154", true);
        $this->mo_saml_show_success_message();
        Kr:
        V6:
        i_:
        update_option("\x6d\x6f\137\x73\x61\155\x6c\137\141\144\x6d\x69\x6e\137\x70\141\x73\x73\x77\157\x72\x64", '');
        IR:
        goto Ss;
        Q0:
        if (mo_saml_is_extension_installed("\x63\x75\162\x6c")) {
            goto Om;
        }
        update_option("\x6d\157\137\163\x61\155\x6c\x5f\155\x65\163\x73\x61\x67\145", "\105\x52\x52\117\x52\x3a\x20\120\x48\120\40\x63\125\122\114\x20\x65\170\164\145\x6e\x73\x69\x6f\156\40\151\x73\40\156\x6f\164\x20\x69\156\x73\x74\x61\x6c\154\145\x64\x20\x6f\x72\x20\x64\x69\163\141\x62\154\145\144\x2e\x20\x52\145\x73\145\x6e\x64\40\117\x54\120\40\x66\x61\151\154\145\144\x2e");
        $this->mo_saml_show_error_message();
        return;
        Om:
        $KA = get_option("\155\157\137\x73\x61\x6d\x6c\x5f\141\x64\155\x69\156\x5f\145\155\141\151\154");
        $ma = new Customersaml();
        $zn = $ma->mo_saml_forgot_password($KA);
        if ($zn) {
            goto JV;
        }
        return;
        JV:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\163\x74\x61\164\x75\163"], "\123\125\x43\103\105\123\123") == 0) {
            goto hr;
        }
        update_option("\155\157\137\163\x61\155\x6c\x5f\155\145\x73\x73\141\147\145", "\x41\x6e\40\x65\162\x72\x6f\162\x20\157\x63\x63\x75\x72\145\x64\40\x77\x68\x69\154\x65\x20\x70\x72\x6f\x63\145\163\163\151\x6e\x67\x20\171\x6f\x75\x72\40\162\145\161\165\x65\x73\164\x2e\x20\x50\x6c\x65\141\163\145\40\124\162\171\40\x61\147\141\x69\156\x2e");
        $this->mo_saml_show_error_message();
        goto WF;
        hr:
        update_option("\155\x6f\x5f\163\x61\155\x6c\137\155\x65\x73\x73\141\147\x65", "\x59\x6f\165\162\40\160\141\x73\163\x77\x6f\x72\144\x20\x68\x61\163\x20\142\145\x65\x6e\40\x72\x65\163\145\164\40\163\165\143\143\145\x73\163\146\165\x6c\x6c\x79\56\x20\120\x6c\x65\141\163\x65\40\145\156\x74\145\162\40\x74\x68\x65\x20\156\145\x77\40\160\141\163\x73\x77\157\162\144\40\163\145\x6e\164\x20\164\157\x20" . $KA . "\56");
        $this->mo_saml_show_success_message();
        WF:
        Ss:
        goto bu;
        bM:
        $Q_ = "\146\141\154\163\145";
        if (isset($_POST["\x6d\157\x5f\163\141\155\154\137\141\x6c\x6c\x6f\167\137\x77\x70\x5f\x73\x69\x67\156\151\x6e"])) {
            goto Im;
        }
        $I1 = "\146\141\154\x73\x65";
        goto Qo;
        Im:
        $I1 = sanitize_text_field($_POST["\155\157\137\x73\x61\155\154\137\141\154\x6c\x6f\167\x5f\167\x70\x5f\163\151\x67\156\x69\156"]);
        Qo:
        if ($I1 == "\x74\x72\x75\x65") {
            goto KG;
        }
        update_option("\155\157\x5f\163\141\x6d\154\137\141\154\x6c\x6f\167\137\167\x70\x5f\x73\x69\147\156\151\x6e", "\x46\x61\x6c\x73\x65");
        goto Tl;
        KG:
        update_option("\x6d\x6f\137\163\141\x6d\154\x5f\x61\154\154\x6f\167\x5f\167\160\137\x73\151\x67\156\x69\x6e", "\x74\162\x75\x65");
        Tl:
        if (!isset($_POST["\x6d\157\x5f\163\141\x6d\x6c\x5f\142\141\x63\153\x64\157\x6f\x72\137\165\x72\154"])) {
            goto r2;
        }
        $Q_ = sanitize_text_field(trim($_POST["\155\x6f\137\163\141\155\x6c\x5f\142\141\143\x6b\x64\157\157\x72\x5f\165\x72\154"]));
        r2:
        update_option("\x6d\157\x5f\163\x61\155\154\x5f\142\x61\x63\x6b\144\x6f\157\162\x5f\165\162\x6c", $Q_);
        update_option("\x6d\x6f\137\163\x61\155\154\137\x6d\145\163\163\141\x67\x65", "\x53\151\x67\x6e\40\111\x6e\40\x73\145\164\x74\151\x6e\147\x73\x20\165\x70\144\x61\164\x65\144\x2e");
        $this->mo_saml_show_success_message();
        bu:
        goto T4;
        kq:
        if (mo_saml_is_sp_configured()) {
            goto du;
        }
        update_option("\x6d\x6f\x5f\163\x61\x6d\154\137\x6d\145\x73\163\x61\147\x65", "\x50\154\x65\141\x73\x65\40\143\x6f\x6d\x70\154\x65\164\145\x20" . addLink("\123\x65\x72\166\151\x63\145\x20\x50\x72\x6f\166\x69\144\145\162", SAMLSPUtilities::mo_saml_add_query_arg(array("\164\141\142" => "\x73\x61\x76\x65"), $_SERVER["\x52\105\121\x55\x45\x53\124\x5f\x55\x52\111"])) . "\x20\x63\x6f\156\146\x69\147\x75\162\x61\x74\151\x6f\x6e\x20\146\151\162\x73\x74\x2e");
        $this->mo_saml_show_error_message();
        goto Un;
        du:
        if (isset($_POST["\x6d\157\x5f\163\x61\155\x6c\x5f\145\156\141\142\x6c\145\137\154\x6f\147\x69\156\x5f\162\x65\x64\x69\x72\145\x63\164"])) {
            goto Kf;
        }
        $LN = "\x66\141\x6c\x73\x65";
        goto Q4;
        Kf:
        $LN = sanitize_text_field($_POST["\155\157\137\163\141\155\154\137\145\156\141\142\x6c\x65\x5f\154\157\x67\x69\x6e\137\162\145\144\151\162\x65\143\164"]);
        Q4:
        if ($LN == "\164\162\165\x65") {
            goto cZ;
        }
        update_option("\x6d\157\137\x73\x61\x6d\x6c\x5f\145\156\x61\x62\x6c\145\x5f\x6c\157\x67\x69\x6e\x5f\x72\145\144\x69\x72\x65\143\x74", "\x66\141\154\x73\145");
        update_option("\x6d\x6f\137\x73\141\155\x6c\x5f\141\154\x6c\x6f\x77\137\167\160\137\x73\151\x67\156\151\x6e", "\106\x61\x6c\x73\x65");
        goto aK;
        cZ:
        update_option("\155\157\x5f\163\x61\155\x6c\137\145\156\141\142\154\x65\137\154\157\x67\151\156\137\x72\x65\x64\x69\162\145\143\x74", "\164\162\x75\x65");
        update_option("\x6d\x6f\137\163\141\155\x6c\137\141\x6c\x6c\x6f\167\x5f\x77\160\137\163\151\147\x6e\151\x6e", "\x74\162\x75\145");
        aK:
        update_option("\155\157\x5f\x73\141\155\154\x5f\155\x65\163\x73\x61\147\145", "\123\x69\147\x6e\40\x69\x6e\40\157\160\x74\x69\x6f\x6e\x73\x20\x75\160\x64\141\164\x65\144\x2e");
        $this->mo_saml_show_success_message();
        Un:
        T4:
        goto Sb;
        ql:
        if (mo_saml_is_sp_configured()) {
            goto cJ;
        }
        update_option("\x6d\x6f\137\163\141\x6d\x6c\137\155\x65\x73\x73\141\147\x65", "\x50\154\x65\x61\x73\145\x20\143\157\155\x70\x6c\145\164\x65\40" . addLink("\123\145\162\x76\151\143\x65\40\120\162\x6f\166\x69\144\145\x72", SAMLSPUtilities::mo_saml_add_query_arg(array("\164\x61\x62" => "\163\141\x76\145"), $_SERVER["\x52\105\x51\125\x45\123\124\137\x55\x52\x49"])) . "\40\143\157\x6e\x66\x69\x67\165\162\141\x74\x69\x6f\x6e\40\x66\151\162\x73\164\56");
        $this->mo_saml_show_error_message();
        goto VO;
        cJ:
        if (isset($_POST["\155\157\137\163\141\155\x6c\137\x65\156\141\142\x6c\145\x5f\162\163\163\137\x61\143\x63\x65\x73\163"])) {
            goto go;
        }
        $Hi = false;
        goto Du;
        go:
        $Hi = sanitize_text_field($_POST["\155\157\x5f\x73\x61\155\x6c\137\145\x6e\x61\142\154\x65\x5f\162\x73\x73\137\x61\x63\x63\x65\x73\x73"]);
        Du:
        if ($Hi == "\164\x72\x75\145") {
            goto Fw;
        }
        update_option("\155\157\x5f\163\141\x6d\x6c\x5f\145\156\x61\x62\154\145\x5f\162\163\163\x5f\x61\x63\x63\145\163\x73", "\x66\x61\154\163\x65");
        goto en;
        Fw:
        update_option("\x6d\x6f\x5f\163\x61\x6d\154\137\145\x6e\141\x62\154\x65\x5f\x72\163\163\137\x61\x63\143\145\x73\x73", "\x74\162\x75\145");
        en:
        update_option("\155\157\137\x73\x61\155\x6c\x5f\x6d\x65\163\x73\141\147\x65", "\122\123\x53\40\x46\x65\x65\144\x20\x6f\x70\164\x69\157\x6e\x20\x75\x70\x64\x61\164\145\144\56");
        $this->mo_saml_show_success_message();
        VO:
        Sb:
        goto wb;
        sC:
        if (mo_saml_is_sp_configured()) {
            goto S8;
        }
        update_option("\155\x6f\x5f\163\141\155\154\x5f\155\x65\x73\163\141\147\x65", "\120\154\145\x61\163\145\x20\143\x6f\x6d\160\x6c\x65\164\145\40" . addLink("\x53\145\x72\x76\x69\143\x65\x20\120\162\x6f\x76\151\144\145\x72", SAMLSPUtilities::mo_saml_add_query_arg(array("\164\x61\x62" => "\163\141\166\x65"), $_SERVER["\x52\105\x51\125\x45\123\124\137\125\x52\111"])) . "\x20\143\x6f\156\x66\x69\x67\165\x72\141\x74\151\157\x6e\40\146\x69\162\163\164\x2e");
        $this->mo_saml_show_error_message();
        goto Cg;
        S8:
        if (isset($_POST["\155\157\137\x73\141\x6d\154\x5f\x66\157\162\143\x65\137\141\165\164\x68\x65\156\164\x69\143\141\x74\151\x6f\156"])) {
            goto Yk;
        }
        $LN = "\x66\x61\x6c\x73\x65";
        goto x4;
        Yk:
        $LN = sanitize_text_field($_POST["\155\157\x5f\163\x61\x6d\154\x5f\146\157\162\143\x65\137\141\x75\164\150\145\156\164\x69\143\141\x74\x69\x6f\156"]);
        x4:
        if ($LN == "\164\162\x75\x65") {
            goto Th;
        }
        update_option("\x6d\157\x5f\x73\141\x6d\x6c\x5f\x66\157\162\x63\145\x5f\x61\x75\164\150\x65\x6e\164\151\x63\141\x74\x69\157\x6e", "\x66\141\x6c\163\145");
        goto Kl;
        Th:
        update_option("\155\x6f\x5f\163\x61\155\x6c\137\146\157\162\x63\145\x5f\141\165\x74\x68\x65\156\164\151\x63\141\164\151\157\156", "\x74\x72\165\145");
        Kl:
        update_option("\155\157\x5f\x73\x61\x6d\154\137\x6d\145\163\163\x61\x67\145", "\x53\151\147\x6e\40\x69\x6e\40\x6f\x70\x74\151\157\156\163\40\x75\x70\x64\141\164\x65\x64\56");
        $this->mo_saml_show_success_message();
        Cg:
        wb:
        goto D_;
        UK:
        if (mo_saml_is_sp_configured()) {
            goto oK;
        }
        update_option("\155\x6f\137\163\x61\x6d\154\x5f\x6d\145\163\163\x61\147\x65", "\x50\x6c\145\x61\x73\x65\x20\143\157\155\x70\154\145\164\x65\x20" . addLink("\x53\145\x72\x76\151\x63\145\x20\120\x72\157\x76\x69\x64\x65\162", SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\x61\x62" => "\163\x61\x76\145"), $_SERVER["\122\105\x51\x55\x45\x53\124\137\x55\x52\x49"])) . "\x20\143\157\156\x66\x69\x67\x75\x72\x61\164\151\157\x6e\40\x66\151\162\163\x74\56");
        $this->mo_saml_show_error_message();
        goto qW;
        oK:
        if (isset($_POST["\155\x6f\x5f\x73\141\x6d\154\x5f\162\145\x67\151\x73\164\145\x72\145\x64\x5f\x6f\156\154\171\x5f\x61\143\x63\x65\163\x73"])) {
            goto yz;
        }
        $LN = "\x66\141\x6c\163\145";
        goto mH;
        yz:
        $LN = sanitize_text_field($_POST["\x6d\157\x5f\x73\141\x6d\x6c\x5f\162\x65\x67\151\x73\164\145\x72\x65\x64\x5f\x6f\x6e\154\x79\x5f\x61\x63\x63\145\163\163"]);
        mH:
        if ($LN == "\x74\x72\x75\145") {
            goto hb;
        }
        update_option("\155\157\137\163\141\155\x6c\x5f\162\x65\x67\151\163\164\x65\x72\x65\144\137\157\156\x6c\171\137\141\143\x63\x65\163\x73", "\x66\141\154\163\x65");
        goto uc;
        hb:
        update_option("\x6d\157\137\163\x61\155\154\137\x72\145\x67\x69\x73\164\145\x72\145\144\137\x6f\x6e\154\171\x5f\141\x63\143\145\x73\x73", "\164\162\165\145");
        uc:
        update_option("\x6d\x6f\137\163\141\155\x6c\x5f\155\145\x73\163\141\147\145", "\x53\x69\x67\x6e\x20\x69\156\40\x6f\160\164\151\x6f\x6e\163\x20\x75\160\x64\141\x74\145\144\x2e");
        $this->mo_saml_show_success_message();
        qW:
        D_:
        goto zG;
        wn:
        if (mo_saml_is_extension_installed("\x63\x75\162\x6c")) {
            goto E6;
        }
        update_option("\155\x6f\x5f\163\141\x6d\x6c\x5f\x6d\x65\163\163\141\x67\145", "\x45\122\x52\x4f\x52\72\x20\120\110\x50\x20\x63\125\x52\114\40\x65\170\164\145\x6e\163\x69\157\x6e\x20\151\163\x20\x6e\157\164\x20\x69\x6e\x73\164\x61\154\x6c\x65\x64\x20\x6f\162\40\x64\x69\163\141\x62\x6c\145\144\x2e\40\x52\145\x73\145\x6e\144\x20\x4f\x54\x50\40\x66\141\151\x6c\x65\x64\x2e");
        $this->mo_saml_show_error_message();
        return;
        E6:
        $yC = sanitize_text_field($_POST["\160\x68\x6f\x6e\x65"]);
        $yC = str_replace("\x20", '', $yC);
        $yC = str_replace("\x2d", '', $yC);
        update_option("\155\157\x5f\x73\141\x6d\154\x5f\141\x64\155\x69\x6e\137\x70\x68\x6f\x6e\145", $yC);
        $ma = new CustomerSaml();
        $zn = $ma->send_otp_token('', $yC, FALSE, TRUE);
        if ($zn) {
            goto Sa;
        }
        return;
        Sa:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\163\x74\x61\164\165\x73"], "\x53\x55\103\103\105\x53\x53") == 0) {
            goto lq;
        }
        update_option("\155\157\137\x73\141\155\x6c\x5f\x6d\145\x73\x73\x61\x67\x65", "\124\x68\145\x72\145\x20\167\x61\163\40\141\x6e\x20\x65\162\x72\x6f\162\x20\x69\x6e\40\163\x65\x6e\x64\x69\x6e\x67\x20\123\115\123\x2e\x20\120\x6c\x65\x61\163\x65\40\143\154\151\143\153\40\x6f\x6e\x20\x52\145\x73\x65\156\x64\x20\117\x54\120\x20\164\157\40\x74\162\171\40\x61\x67\x61\x69\156\x2e");
        update_option("\155\157\137\163\141\155\x6c\137\162\145\147\x69\x73\x74\162\x61\164\151\x6f\x6e\x5f\x73\164\141\164\x75\x73", "\x4d\x4f\x5f\117\124\120\137\104\x45\114\x49\126\x45\x52\105\x44\x5f\x46\101\x49\114\x55\x52\x45\x5f\120\x48\x4f\x4e\x45");
        $this->mo_saml_show_error_message();
        goto BQ;
        lq:
        update_option("\155\157\x5f\x73\x61\x6d\154\137\155\145\x73\163\141\147\145", "\40\x41\x20\157\156\145\x20\164\x69\x6d\145\x20\x70\141\163\x73\x63\x6f\x64\x65\x20\x69\163\40\x73\145\156\x74\x20\x74\157\40" . get_option("\155\157\x5f\x73\141\155\154\137\x61\144\x6d\151\156\x5f\160\150\x6f\156\x65") . "\56\x20\x50\154\145\x61\x73\x65\40\x65\156\x74\x65\162\x20\164\x68\145\x20\x6f\164\160\40\150\x65\x72\x65\x20\164\x6f\40\166\145\162\x69\146\171\40\171\x6f\165\162\x20\x65\155\x61\x69\x6c\x2e");
        update_option("\155\x6f\137\163\x61\155\x6c\x5f\x74\x72\141\x6e\x73\x61\x63\164\x69\157\x6e\111\144", $zn["\164\170\111\144"]);
        update_option("\155\157\x5f\x73\141\x6d\154\x5f\x72\145\147\151\163\164\x72\141\164\x69\x6f\156\137\x73\x74\141\x74\165\x73", "\115\117\137\117\124\120\137\104\x45\114\x49\126\105\x52\105\104\x5f\x53\x55\103\103\105\123\x53\137\120\110\x4f\116\x45");
        $this->mo_saml_show_success_message();
        BQ:
        zG:
        goto dH;
        xZ:
        update_option("\155\x6f\x5f\x73\x61\x6d\154\x5f\x72\x65\147\x69\x73\x74\x72\x61\164\x69\157\x6e\x5f\x73\x74\141\x74\165\163", '');
        update_option("\x6d\x6f\x5f\x73\141\x6d\x6c\x5f\x76\x65\162\151\146\171\137\143\165\163\164\x6f\x6d\145\162", '');
        delete_option("\x6d\157\137\x73\141\155\x6c\137\156\x65\x77\x5f\x72\x65\147\151\163\x74\x72\141\x74\151\157\x6e");
        delete_option("\x6d\x6f\x5f\x73\x61\155\154\137\x61\144\x6d\x69\156\137\x65\155\141\x69\154");
        delete_option("\155\x6f\137\x73\141\x6d\x6c\x5f\141\144\155\151\x6e\137\160\x68\x6f\x6e\x65");
        delete_site_option("\163\x6d\x6c\x5f\x6c\153");
        delete_site_option("\x74\x5f\x73\x69\164\145\x5f\163\x74\141\x74\165\163");
        delete_site_option("\163\x69\x74\x65\x5f\143\x6b\x5f\154");
        dH:
        goto bg;
        Sy:
        if (mo_saml_is_extension_installed("\x63\x75\162\154")) {
            goto sa;
        }
        update_option("\155\x6f\x5f\x73\x61\155\154\137\155\145\163\x73\x61\147\145", "\x45\122\x52\x4f\x52\x3a\40\x50\x48\120\x20\143\125\x52\114\40\145\170\x74\x65\156\163\151\x6f\x6e\40\x69\163\x20\x6e\157\164\x20\151\x6e\x73\164\x61\x6c\154\145\x64\x20\x6f\x72\x20\144\x69\x73\x61\x62\154\145\144\56\x20\x52\145\163\145\x6e\x64\40\117\124\120\40\x66\141\x69\x6c\x65\144\56");
        $this->mo_saml_show_error_message();
        return;
        sa:
        $yC = get_option("\x6d\x6f\137\163\x61\x6d\154\137\x61\144\155\x69\x6e\137\160\x68\157\x6e\x65");
        $ma = new CustomerSaml();
        $zn = $ma->send_otp_token('', $yC, FALSE, TRUE);
        if ($zn) {
            goto pY;
        }
        return;
        pY:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\x73\164\141\164\165\163"], "\x53\x55\x43\x43\105\x53\x53") == 0) {
            goto S7;
        }
        update_option("\155\157\137\x73\141\155\x6c\137\155\x65\163\163\141\147\x65", "\124\x68\145\162\145\40\x77\x61\163\x20\x61\x6e\x20\145\162\162\x6f\162\x20\151\x6e\40\163\145\x6e\x64\x69\156\x67\x20\x65\x6d\x61\151\x6c\x2e\40\120\154\x65\x61\x73\x65\40\143\154\151\x63\x6b\40\x6f\156\x20\122\145\163\145\156\144\40\x4f\x54\x50\40\164\157\40\164\x72\171\x20\141\147\141\151\x6e\56");
        update_option("\x6d\x6f\x5f\x73\x61\155\154\x5f\x72\145\x67\x69\163\164\x72\x61\164\x69\x6f\x6e\x5f\163\164\141\x74\165\163", "\115\x4f\137\x4f\124\x50\137\104\x45\114\x49\126\105\122\x45\104\x5f\x46\x41\x49\114\125\122\x45\x5f\x50\x48\117\x4e\x45");
        $this->mo_saml_show_error_message();
        goto k_;
        S7:
        update_option("\155\157\x5f\x73\141\155\x6c\137\x6d\145\x73\x73\x61\x67\x65", "\x20\101\40\x6f\156\x65\40\164\151\155\x65\x20\160\x61\x73\163\x63\x6f\x64\145\40\x69\x73\x20\x73\x65\156\x74\x20\164\157\40" . $yC . "\x20\x61\147\141\151\156\56\x20\x50\x6c\145\x61\x73\145\40\143\150\x65\143\153\40\x69\146\x20\x79\157\165\x20\x67\x6f\164\x20\x74\150\x65\x20\157\164\160\40\141\156\x64\40\145\x6e\x74\x65\x72\40\x69\x74\40\x68\x65\x72\x65\x2e");
        update_option("\155\x6f\137\x73\x61\155\154\137\164\x72\141\x6e\x73\x61\143\x74\151\x6f\156\x49\x64", $zn["\164\x78\x49\x64"]);
        update_option("\155\x6f\137\x73\x61\x6d\x6c\x5f\x72\x65\147\151\163\164\x72\x61\x74\x69\157\156\x5f\163\x74\141\164\x75\163", "\x4d\x4f\x5f\x4f\124\120\x5f\x44\x45\x4c\x49\x56\105\x52\x45\x44\137\123\125\x43\x43\x45\123\x53\137\x50\110\117\116\x45");
        $this->mo_saml_show_success_message();
        k_:
        bg:
        goto X0;
        kb:
        if (mo_saml_is_extension_installed("\143\x75\162\154")) {
            goto ZA;
        }
        update_option("\x6d\157\137\163\x61\x6d\x6c\137\x6d\145\163\163\141\x67\x65", "\105\122\x52\x4f\x52\72\x20\x50\x48\x50\40\143\125\x52\x4c\40\145\x78\164\x65\156\x73\x69\x6f\156\x20\x69\163\x20\156\157\164\x20\x69\156\163\x74\x61\154\x6c\x65\x64\x20\157\162\x20\x64\151\x73\141\142\154\145\144\56\40\x52\145\163\x65\x6e\x64\40\117\x54\120\40\146\x61\151\x6c\145\144\x2e");
        $this->mo_saml_show_error_message();
        return;
        ZA:
        $KA = get_option("\155\x6f\137\x73\x61\x6d\154\x5f\x61\x64\155\151\156\137\x65\x6d\141\151\154");
        $ma = new CustomerSaml();
        $zn = $ma->send_otp_token($KA, '');
        if ($zn) {
            goto hH;
        }
        return;
        hH:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\163\x74\141\164\x75\x73"], "\x53\x55\x43\x43\x45\x53\x53") == 0) {
            goto rv;
        }
        update_option("\155\157\137\163\x61\155\x6c\137\x6d\145\163\163\141\147\x65", "\x54\x68\145\x72\145\40\167\x61\163\x20\141\x6e\40\x65\162\x72\x6f\x72\40\x69\x6e\x20\x73\x65\x6e\144\151\156\147\x20\145\155\x61\151\x6c\56\x20\120\x6c\145\141\163\x65\40\143\154\x69\143\153\x20\157\x6e\40\x52\145\163\145\x6e\x64\x20\117\124\120\x20\x74\x6f\x20\164\162\x79\40\x61\147\141\x69\x6e\56");
        update_option("\155\157\137\x73\141\155\x6c\137\x72\145\147\x69\x73\164\162\x61\x74\151\x6f\x6e\137\163\x74\141\164\x75\x73", "\115\117\137\117\x54\x50\x5f\104\x45\x4c\x49\126\x45\x52\105\x44\137\106\101\111\114\125\122\x45\x5f\105\x4d\x41\x49\114");
        $this->mo_saml_show_error_message();
        goto l0;
        rv:
        update_option("\155\157\x5f\x73\x61\155\x6c\x5f\155\x65\163\x73\x61\147\145", "\x20\101\x20\157\156\x65\x20\164\151\155\x65\x20\160\x61\163\163\x63\157\144\145\x20\151\163\x20\x73\x65\x6e\164\x20\x74\x6f\40" . get_option("\x6d\x6f\137\163\x61\155\154\x5f\141\x64\x6d\x69\x6e\x5f\x65\x6d\x61\x69\x6c") . "\x20\x61\x67\141\x69\156\56\40\x50\154\x65\x61\x73\x65\x20\143\150\x65\x63\x6b\40\x69\146\x20\171\157\165\40\147\x6f\x74\x20\x74\x68\x65\x20\x6f\x74\160\40\141\156\144\x20\x65\156\164\145\x72\x20\x69\164\40\150\145\x72\145\x2e");
        update_option("\x6d\157\137\163\141\155\x6c\137\x74\162\x61\x6e\163\x61\143\x74\151\x6f\x6e\111\x64", $zn["\x74\170\111\x64"]);
        update_option("\x6d\157\137\x73\x61\x6d\x6c\x5f\x72\145\x67\x69\x73\164\x72\141\x74\151\157\x6e\137\x73\x74\141\164\x75\163", "\115\117\x5f\117\x54\x50\137\104\105\x4c\111\126\x45\x52\x45\104\137\x53\x55\x43\103\105\x53\123\x5f\x45\115\101\111\x4c");
        $this->mo_saml_show_success_message();
        l0:
        X0:
        goto Ce;
        I1:
        if (mo_saml_is_extension_installed("\x63\x75\162\154")) {
            goto ry;
        }
        update_option("\155\157\137\163\x61\x6d\154\137\x6d\145\x73\x73\141\147\x65", "\x45\122\x52\x4f\x52\72\x20\x50\110\120\40\143\125\x52\114\x20\x65\x78\164\145\x6e\x73\x69\x6f\156\x20\x69\x73\x20\156\x6f\164\x20\151\x6e\163\164\141\x6c\154\x65\144\x20\x6f\x72\x20\144\x69\x73\x61\142\x6c\145\x64\x2e\x20\x51\165\145\162\x79\x20\163\x75\142\x6d\x69\164\x20\x66\141\151\154\145\144\x2e");
        $this->mo_saml_show_error_message();
        return;
        ry:
        $KA = sanitize_email($_POST["\x6d\157\137\163\141\x6d\x6c\137\143\157\x6e\164\141\143\x74\x5f\165\163\137\x65\x6d\x61\151\154"]);
        $yC = sanitize_text_field($_POST["\155\157\x5f\163\x61\155\154\137\143\x6f\x6e\164\x61\x63\164\137\165\163\137\x70\x68\x6f\x6e\x65"]);
        $el = sanitize_text_field($_POST["\155\x6f\x5f\x73\141\155\x6c\x5f\x63\157\x6e\164\x61\143\164\x5f\x75\x73\x5f\x71\x75\145\162\171"]);
        if (isset($_POST["\x73\x65\x6e\x64\x5f\160\x6c\x75\147\x69\156\137\x63\x6f\x6e\x66\151\147"]) === true) {
            goto VX;
        }
        update_option("\163\x65\x6e\x64\x5f\x70\154\x75\147\151\x6e\137\x63\x6f\156\146\x69\x67", "\157\146\x66");
        goto ZF;
        VX:
        $lk = miniorange_import_export(true, true);
        $el .= $lk;
        delete_option("\163\x65\x6e\144\x5f\x70\x6c\165\147\151\x6e\x5f\143\x6f\156\x66\x69\x67");
        ZF:
        $ma = new CustomerSaml();
        if ($this->mo_saml_check_empty_or_null($KA) || $this->mo_saml_check_empty_or_null($el)) {
            goto KC;
        }
        if (!filter_var($KA, FILTER_VALIDATE_EMAIL)) {
            goto Ej;
        }
        $B0 = $ma->submit_contact_us($KA, $yC, $el);
        if ($B0) {
            goto yf;
        }
        return;
        yf:
        update_option("\x6d\x6f\x5f\163\x61\155\154\x5f\155\145\163\163\141\147\x65", "\x54\150\x61\x6e\153\163\40\x66\157\x72\x20\147\145\x74\164\151\156\x67\40\151\156\x20\164\157\165\x63\x68\x21\40\x57\145\40\x73\x68\141\154\154\40\x67\x65\x74\40\142\x61\x63\x6b\x20\x74\157\x20\171\157\x75\x20\x73\x68\x6f\162\164\x6c\171\x2e");
        $this->mo_saml_show_success_message();
        goto yy;
        Ej:
        update_option("\155\157\137\x73\141\155\154\x5f\x6d\145\x73\x73\x61\x67\145", "\x50\154\145\x61\x73\x65\x20\145\x6e\x74\145\162\40\x61\x20\166\141\154\x69\x64\40\x65\x6d\141\151\x6c\x20\141\x64\144\x72\x65\163\x73\x2e");
        $this->mo_saml_show_error_message();
        yy:
        goto Us;
        KC:
        update_option("\x6d\x6f\x5f\163\141\x6d\154\x5f\155\145\163\163\x61\x67\145", "\x50\x6c\145\x61\163\x65\x20\x66\x69\x6c\154\x20\x75\160\x20\105\155\x61\x69\154\x20\x61\x6e\x64\40\121\x75\x65\162\x79\40\146\151\145\154\x64\163\x20\x74\x6f\40\x73\x75\142\155\x69\x74\40\x79\x6f\165\x72\x20\161\165\x65\x72\171\x2e");
        $this->mo_saml_show_error_message();
        Us:
        Ce:
        goto yn;
        cl:
        if (!$this->mo_saml_check_empty_or_null($_POST["\163\x61\x6d\x6c\x5f\154\x69\143\145\156\x63\145\x5f\x6b\145\171"])) {
            goto gZ;
        }
        update_option("\x6d\x6f\x5f\x73\x61\x6d\x6c\137\x6d\145\163\163\x61\147\145", "\x41\154\x6c\40\x74\150\145\x20\x66\x69\145\154\144\x73\40\x61\x72\145\40\162\145\x71\x75\151\162\x65\x64\x2e\x20\120\154\x65\x61\x73\x65\40\x65\156\164\145\x72\40\166\141\154\x69\144\x20\x6c\151\143\x65\156\x73\x65\40\153\x65\171\x2e");
        $this->mo_saml_show_error_message();
        return;
        gZ:
        $M7 = sanitize_text_field(trim($_POST["\163\141\155\154\137\x6c\151\x63\x65\x6e\x63\x65\137\x6b\x65\171"]));
        $ma = new Customersaml();
        $zn = $ma->check_customer_ln();
        if ($zn) {
            goto wO;
        }
        return;
        wO:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\x73\x74\x61\164\165\x73"], "\x53\125\103\103\105\x53\x53") == 0) {
            goto K7;
        }
        $zs = get_option("\155\x6f\137\163\x61\x6d\154\x5f\143\165\163\164\x6f\x6d\145\162\x5f\164\157\x6b\x65\156");
        update_option("\x73\151\164\145\137\143\x6b\x5f\154", AESEncryption::encrypt_data("\x66\x61\x6c\x73\x65", $zs));
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\x61\x62" => "\x6c\151\143\x65\x6e\163\x69\156\147"), $_SERVER["\x52\x45\121\125\105\123\x54\x5f\x55\122\111"]);
        update_option("\155\157\137\163\141\155\x6c\x5f\155\x65\163\163\141\x67\x65", "\x59\157\x75\x20\x68\x61\x76\x65\x20\x6e\x6f\x74\x20\165\160\147\x72\x61\144\145\144\40\x79\145\x74\56\40" . addLink("\103\x6c\x69\x63\153\40\x68\145\162\145", $mn) . "\x20\164\157\40\165\160\147\162\141\144\x65\x20\x74\x6f\40\x70\x72\145\155\x69\x75\155\40\166\145\162\163\151\x6f\156\56");
        $this->mo_saml_show_error_message();
        goto oQ;
        K7:
        $zn = json_decode($ma->mo_saml_vl($M7, false), true);
        update_option("\x76\154\137\x63\150\x65\x63\x6b\137\164", time());
        if (is_array($zn) && strcasecmp($zn["\x73\x74\x61\164\x75\x73"], "\123\x55\103\103\x45\x53\x53") == 0) {
            goto uf;
        }
        if (is_array($zn) && strcasecmp($zn["\163\x74\x61\x74\x75\x73"], "\x46\x41\x49\x4c\105\104") == 0) {
            goto MI;
        }
        update_option("\155\157\x5f\x73\x61\155\x6c\x5f\155\x65\x73\x73\x61\x67\145", "\101\x6e\40\145\162\162\157\162\x20\157\143\143\165\162\145\x64\40\x77\x68\151\x6c\x65\x20\x70\x72\157\143\x65\x73\x73\151\156\x67\40\171\157\x75\x72\x20\162\x65\x71\x75\x65\x73\x74\x2e\x20\120\154\145\x61\x73\145\x20\x54\162\x79\x20\x61\x67\x61\151\x6e\x2e");
        $this->mo_saml_show_error_message();
        goto OK;
        MI:
        if (strcasecmp($zn["\155\145\163\x73\x61\x67\145"], "\x43\x6f\144\145\40\150\141\163\40\x45\x78\160\151\x72\x65\144") == 0) {
            goto MD;
        }
        update_option("\x6d\157\137\163\141\x6d\x6c\137\155\145\163\163\x61\147\x65", "\x59\157\165\x20\x68\141\166\x65\40\x65\x6e\164\x65\162\145\144\40\x61\156\40\x69\x6e\x76\141\x6c\x69\x64\x20\154\151\x63\x65\156\x73\145\40\153\145\x79\56\40\120\154\x65\x61\163\145\x20\x65\156\164\x65\162\40\141\40\166\x61\154\151\x64\x20\x6c\151\143\x65\156\x73\145\x20\153\x65\x79\56");
        goto Lh;
        MD:
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\x61\x62" => "\154\151\143\145\156\x73\151\156\147"), $_SERVER["\122\105\x51\125\105\123\x54\x5f\125\x52\x49"]);
        update_option("\155\x6f\x5f\163\x61\155\x6c\x5f\155\145\x73\163\x61\x67\x65", "\114\x69\143\x65\156\163\145\x20\153\145\x79\x20\x79\157\x75\40\150\141\166\145\x20\x65\x6e\x74\145\x72\x65\144\40\x68\x61\163\40\141\154\162\x65\x61\x64\x79\40\x62\x65\145\x6e\40\x75\x73\145\144\56\x20\120\x6c\145\141\163\x65\x20\x65\156\164\145\x72\x20\x61\x20\x6b\x65\171\40\x77\150\151\143\x68\40\x68\141\163\40\x6e\157\x74\40\x62\x65\145\x6e\40\165\x73\145\x64\x20\142\145\146\x6f\162\145\x20\157\x6e\x20\x61\156\171\40\x6f\164\x68\x65\162\x20\x69\x6e\x73\164\x61\156\143\145\40\x6f\162\x20\x69\x66\x20\171\157\165\40\x68\x61\x76\145\40\145\x78\141\165\163\164\145\x64\x20\x61\154\x6c\40\171\157\165\162\40\x6b\x65\171\163\40\164\x68\145\x6e\40" . addLink("\103\154\x69\143\x6b\x20\x68\145\x72\145", $mn) . "\40\x74\x6f\40\x62\165\171\x20\155\157\162\x65\x2e");
        Lh:
        $this->mo_saml_show_error_message();
        OK:
        goto Nf;
        uf:
        $zs = get_option("\x6d\x6f\137\163\141\155\154\137\143\165\163\x74\157\x6d\145\x72\x5f\x74\157\x6b\x65\x6e");
        update_option("\163\x6d\x6c\x5f\x6c\x6b", AESEncryption::encrypt_data($M7, $zs));
        $BN = "\x59\x6f\x75\x72\40\x6c\151\x63\145\156\x73\145\x20\151\163\40\166\x65\162\151\x66\x69\145\144\x2e\40\x59\157\x75\x20\x63\141\156\x20\156\x6f\167\x20\163\x65\164\165\160\x20\x74\x68\x65\40\160\154\165\147\151\x6e\56";
        update_option("\155\x6f\137\163\141\x6d\154\137\155\145\x73\163\x61\147\x65", $BN);
        $zs = get_option("\155\x6f\x5f\163\141\155\154\137\143\165\x73\164\157\x6d\x65\x72\137\x74\157\153\x65\x6e");
        update_option("\163\151\164\145\137\143\153\137\x6c", AESEncryption::encrypt_data("\x74\x72\165\x65", $zs));
        update_option("\x74\137\163\x69\x74\x65\x5f\163\164\141\x74\x75\163", AESEncryption::encrypt_data("\146\141\154\x73\x65", $zs));
        $d2 = plugin_dir_path(__FILE__);
        $DO = home_url();
        $DO = trim($DO, "\x2f");
        if (preg_match("\x23\x5e\x68\164\164\x70\x28\x73\x29\77\72\57\57\43", $DO)) {
            goto bC;
        }
        $DO = "\x68\x74\x74\160\72\57\57" . $DO;
        bC:
        $pJ = parse_url($DO);
        $YI = preg_replace("\x2f\136\167\x77\167\134\x2e\57", '', $pJ["\x68\157\x73\164"]);
        $H0 = wp_upload_dir();
        $KV = $YI . "\x2d" . $H0["\x62\x61\163\145\144\151\162"];
        $LP = hash_hmac("\x73\x68\141\62\x35\66", $KV, "\x34\x44\110\x66\152\x67\146\x6a\x61\x73\x6e\x64\x66\x73\141\x6a\x66\110\107\112");
        $cy = $this->djkasjdksa();
        $TA = round(strlen($cy) / rand(2, 20));
        $cy = substr_replace($cy, $LP, $TA, 0);
        $uG = base64_decode($cy);
        if (is_writable($d2 . "\154\x69\143\145\156\x73\x65")) {
            goto Sc;
        }
        $cy = str_rot13($cy);
        $IB = base64_decode("bGNkamthc2pka3NhY2w=");
        update_option($IB, $cy);
        goto Gh;
        Sc:
        file_put_contents($d2 . "\154\x69\143\x65\156\x73\x65", $uG);
        Gh:
        update_option("\x6c\143\167\x72\164\154\x66\163\141\155\154", true);
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\164\141\x62" => "\147\145\x6e\x65\162\x61\154"), $_SERVER["\x52\105\121\125\x45\123\x54\137\125\122\x49"]);
        $this->mo_saml_show_success_message();
        Nf:
        oQ:
        yn:
        goto MW;
        f2:
        if (mo_saml_is_extension_installed("\143\x75\162\x6c")) {
            goto ap;
        }
        update_option("\155\157\137\163\x61\155\154\x5f\x6d\x65\163\x73\x61\x67\145", "\105\x52\122\117\122\x3a\x50\110\120\40\x63\125\x52\114\40\145\x78\x74\145\156\x73\x69\x6f\156\40\151\163\x20\x6e\x6f\x74\40\x69\x6e\x73\x74\x61\x6c\154\x65\x64\x20\157\162\x20\x64\151\163\141\x62\x6c\x65\x64\56\x20\126\x61\x6c\x69\144\x61\x74\145\40\x4f\124\120\40\x66\141\x69\154\x65\144\x2e");
        $this->mo_saml_show_error_message();
        return;
        ap:
        $M0 = '';
        if ($this->mo_saml_check_empty_or_null($_POST["\157\164\x70\x5f\x74\157\153\145\156"])) {
            goto RT;
        }
        $M0 = sanitize_text_field($_POST["\157\x74\160\x5f\x74\157\153\x65\156"]);
        goto xp;
        RT:
        update_option("\x6d\157\x5f\x73\141\x6d\x6c\137\x6d\x65\x73\x73\141\x67\x65", "\120\x6c\x65\x61\x73\x65\x20\x65\x6e\164\x65\162\40\x61\x20\166\x61\154\x75\x65\40\x69\156\40\157\164\x70\x20\x66\x69\x65\x6c\x64\56");
        $this->mo_saml_show_error_message();
        return;
        xp:
        $ma = new CustomerSaml();
        $zn = $ma->validate_otp_token(get_option("\155\157\137\163\x61\155\x6c\x5f\164\162\x61\x6e\163\x61\x63\164\x69\157\x6e\111\144"), $M0);
        if ($zn) {
            goto nT;
        }
        return;
        nT:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\x73\164\x61\x74\165\163"], "\x53\125\103\x43\x45\x53\123") == 0) {
            goto Wu;
        }
        update_option("\x6d\157\x5f\163\141\x6d\154\137\155\145\163\x73\x61\147\x65", "\111\156\x76\x61\154\x69\x64\x20\157\156\145\x20\164\151\x6d\x65\40\160\x61\163\163\143\x6f\x64\145\x2e\x20\120\x6c\x65\x61\x73\145\40\145\x6e\x74\145\x72\40\x61\40\166\141\x6c\151\x64\x20\157\x74\x70\x2e");
        $this->mo_saml_show_error_message();
        goto co;
        Wu:
        $this->create_customer();
        co:
        MW:
        if (!self::mo_check_option_admin_referer("\155\x6f\137\x73\141\x6d\154\x5f\146\162\145\x65\137\x74\x72\x69\x61\154")) {
            goto Hn;
        }
        if (decryptSamlElement()) {
            goto Rp;
        }
        $M7 = postResponse();
        $ma = new Customersaml();
        $zn = $ma->mo_saml_vl($M7, false);
        if ($zn) {
            goto yT;
        }
        return;
        yT:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\163\x74\141\164\x75\163"], "\123\x55\x43\x43\105\123\123") == 0) {
            goto h3;
        }
        if (strcasecmp($zn["\163\164\141\x74\165\x73"], "\106\x41\x49\114\x45\x44") == 0) {
            goto B1;
        }
        update_option("\155\x6f\x5f\163\141\x6d\x6c\x5f\x6d\x65\163\163\x61\147\x65", "\101\x6e\x20\x65\162\162\157\x72\x20\x6f\x63\x63\165\162\145\x64\40\x77\x68\151\154\x65\40\x70\x72\x6f\x63\145\x73\163\x69\156\147\40\x79\x6f\165\162\40\162\145\x71\x75\x65\x73\x74\x2e\x20\120\154\145\x61\163\145\x20\x54\162\x79\x20\x61\147\141\151\156\56");
        $this->mo_saml_show_error_message();
        goto DT;
        B1:
        update_option("\x6d\157\x5f\x73\x61\155\154\x5f\x6d\145\163\x73\x61\x67\145", "\124\x68\x65\x72\x65\x20\167\141\163\x20\x61\x6e\x20\x65\162\x72\157\x72\x20\x61\x63\164\151\166\141\164\151\156\x67\x20\171\157\x75\162\40\124\122\x49\x41\x4c\40\166\x65\x72\163\151\157\156\56\x20\x50\154\145\141\x73\x65\40\143\x6f\x6e\x74\x61\x63\x74\x20\151\x6e\x66\157\x40\170\x65\143\165\162\151\x66\171\56\x63\x6f\x6d\x20\x66\157\x72\40\147\145\164\164\151\x6e\147\40\156\x65\167\x20\154\x69\x63\x65\x6e\x73\145\40\146\157\x72\40\x74\162\x69\x61\x6c\x20\166\x65\x72\x73\x69\x6f\x6e\x2e");
        $this->mo_saml_show_error_message();
        DT:
        goto Yi;
        h3:
        $zs = get_option("\155\157\x5f\163\x61\155\x6c\x5f\143\165\x73\164\157\155\145\x72\137\x74\x6f\x6b\x65\x6e");
        $zs = get_option("\155\157\x5f\x73\141\155\x6c\x5f\143\x75\163\x74\157\x6d\145\162\137\x74\x6f\x6b\x65\x6e");
        update_option("\164\x5f\163\151\x74\x65\137\x73\x74\x61\x74\x75\x73", AESEncryption::encrypt_data("\164\x72\165\x65", $zs));
        update_option("\155\x6f\x5f\163\141\155\154\x5f\x6d\x65\163\x73\141\x67\x65", "\131\x6f\x75\162\x20\x35\40\144\141\x79\x73\x20\124\122\x49\x41\x4c\x20\151\163\40\141\x63\164\151\x76\141\x74\x65\x64\56\40\x59\x6f\165\x20\143\141\156\40\x6e\157\167\40\x73\x65\x74\165\160\40\x74\150\145\x20\x70\x6c\165\147\151\x6e\56");
        $this->mo_saml_show_success_message();
        Yi:
        goto SG;
        Rp:
        update_option("\155\157\x5f\x73\x61\155\x6c\137\x6d\145\x73\163\x61\147\145", "\x54\x68\x65\x72\145\x20\x77\x61\163\x20\x61\156\x20\145\162\x72\x6f\x72\40\141\143\x74\151\x76\x61\164\x69\156\x67\x20\x79\157\165\162\x20\x54\122\111\101\x4c\x20\166\x65\x72\163\151\x6f\x6e\56\40\x45\151\x74\150\x65\x72\x20\171\x6f\165\162\x20\164\x72\151\141\154\x20\160\x65\x72\x69\x6f\x64\40\151\x73\40\x65\170\x70\151\x72\x65\x64\40\x6f\162\40\171\x6f\165\x20\x61\162\x65\x20\x75\163\x69\156\147\40\x77\162\157\x6e\x67\x20\164\x72\151\x61\154\x20\166\x65\162\163\x69\157\x6e\x2e\x20\120\154\145\x61\x73\145\x20\x63\157\156\x74\141\143\x74\40\x69\x6e\x66\157\100\x78\x65\143\x75\x72\151\x66\171\56\x63\x6f\x6d\x20\146\157\162\x20\147\x65\x74\x74\x69\x6e\147\x20\x6e\145\x77\x20\x6c\151\143\145\156\163\145\x20\x66\x6f\162\40\x74\162\x69\141\154\40\x76\x65\x72\x73\x69\x6f\156\x2e");
        $this->mo_saml_show_error_message();
        SG:
        Hn:
        if (!self::mo_check_option_admin_referer("\155\157\x5f\x73\141\155\154\x5f\143\x68\145\x63\x6b\137\x6c\151\x63\x65\156\163\x65")) {
            goto Ch;
        }
        $ma = new Customersaml();
        $zn = $ma->check_customer_ln();
        if ($zn) {
            goto I8;
        }
        return;
        I8:
        $zn = json_decode($zn, true);
        if (strcasecmp($zn["\x73\164\141\x74\x75\163"], "\x53\125\x43\x43\105\123\x53") == 0) {
            goto KR;
        }
        $zs = get_option("\155\157\137\163\141\x6d\x6c\137\x63\165\x73\x74\157\x6d\145\162\137\164\x6f\153\145\x6e");
        update_option("\x73\151\164\145\137\143\153\137\x6c", AESEncryption::encrypt_data("\146\141\x6c\x73\x65", $zs));
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\x61\x62" => "\x6c\151\x63\x65\x6e\163\151\156\147"), $_SERVER["\x52\105\121\x55\105\123\x54\137\125\x52\111"]);
        update_option("\x6d\157\x5f\x73\141\x6d\154\137\155\x65\x73\163\x61\147\x65", "\131\x6f\x75\x20\150\141\x76\145\40\x6e\157\x74\40\x75\160\x67\162\x61\144\145\x64\x20\x79\145\164\56\x20" . addLink("\x43\154\x69\143\x6b\40\150\145\162\145", $mn) . "\x20\164\x6f\x20\165\x70\147\x72\141\144\x65\40\x74\x6f\40\160\x72\145\155\151\x75\155\40\166\145\162\x73\x69\157\x6e\56");
        $this->mo_saml_show_error_message();
        goto Ew;
        KR:
        if (!empty($zn["\154\151\143\x65\x6e\163\145\x50\x6c\x61\x6e"]) && !$this->mo_saml_check_empty_or_null($zn["\154\x69\x63\x65\156\163\145\120\x6c\141\156"])) {
            goto Ys;
        }
        $zs = get_option("\x6d\x6f\x5f\163\141\x6d\154\x5f\x63\x75\x73\164\157\155\x65\x72\x5f\164\x6f\x6b\145\156");
        update_option("\163\x69\x74\x65\x5f\x63\x6b\x5f\154", AESEncryption::encrypt_data("\146\141\x6c\163\x65", $zs));
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\164\x61\x62" => "\x6c\151\143\x65\x6e\x73\x69\x6e\147"), $_SERVER["\122\x45\121\x55\x45\x53\124\x5f\125\122\x49"]);
        update_option("\x6d\157\x5f\x73\x61\x6d\154\x5f\155\145\x73\163\x61\x67\x65", "\x59\x6f\165\40\150\141\x76\145\40\x6e\x6f\x74\x20\165\x70\x67\x72\x61\144\x65\x64\x20\x79\x65\x74\x2e\x20" . addLink("\x43\154\x69\143\153\40\x68\x65\x72\145", $mn) . "\x20\x74\157\x20\x75\x70\147\x72\141\144\x65\40\x74\157\40\160\162\145\155\x69\165\x6d\40\x76\145\x72\x73\151\157\156\x2e");
        $this->mo_saml_show_error_message();
        goto YH;
        Ys:
        update_option("\155\157\x5f\163\x61\155\154\x5f\x6c\151\x63\145\156\x73\x65\x5f\x6e\x61\155\x65", base64_encode($zn["\x6c\151\x63\145\x6e\x73\145\x50\x6c\x61\x6e"]));
        $zs = get_option("\155\x6f\x5f\x73\x61\155\x6c\x5f\x63\165\163\164\x6f\155\145\162\137\164\157\x6b\x65\x6e");
        if (!(!empty($zn["\x6e\x6f\x4f\x66\125\x73\145\x72\163"]) && !$this->mo_saml_check_empty_or_null($zn["\x6e\157\x4f\146\x55\163\145\162\x73"]))) {
            goto Go;
        }
        update_option("\155\x6f\x5f\163\141\x6d\154\137\165\163\162\x5f\x6c\x6d\x74", AESEncryption::encrypt_data($zn["\156\x6f\x4f\146\x55\x73\x65\x72\163"], $zs));
        Go:
        if (!(!empty($zn["\x6c\151\x63\x65\x6e\x73\145\x45\x78\160\x69\162\x79"]) && !$this->mo_saml_check_empty_or_null($zn["\x6c\x69\x63\x65\156\x73\145\105\170\160\151\x72\x79"]))) {
            goto Fl;
        }
        update_option("\x6d\x6f\x5f\163\x61\155\x6c\x5f\154\x69\143\x65\156\x73\x65\137\145\170\x70\x69\x72\x79\x5f\x64\x61\x74\145", $this->mo_saml_parse_expiry_date($zn["\x6c\151\x63\x65\156\x73\x65\x45\170\x70\151\162\171"]));
        Fl:
        update_option("\163\x69\164\x65\x5f\143\153\x5f\x6c", AESEncryption::encrypt_data("\x74\162\165\x65", $zs));
        $d2 = plugin_dir_path(__FILE__);
        $DO = home_url();
        $DO = trim($DO, "\57");
        if (preg_match("\x23\136\150\164\x74\x70\x28\x73\x29\x3f\72\x2f\x2f\43", $DO)) {
            goto ur;
        }
        $DO = "\150\164\164\160\x3a\57\x2f" . $DO;
        ur:
        $pJ = parse_url($DO);
        $YI = preg_replace("\x2f\136\x77\x77\x77\x5c\x2e\x2f", '', $pJ["\150\x6f\x73\x74"]);
        $H0 = wp_upload_dir();
        $KV = $YI . "\x2d" . $H0["\x62\x61\x73\x65\144\151\x72"];
        $LP = hash_hmac("\163\150\141\62\x35\x36", $KV, "\64\x44\110\146\x6a\147\x66\152\x61\x73\x6e\144\x66\x73\141\x6a\146\110\x47\112");
        $cy = $this->djkasjdksa();
        $TA = round(strlen($cy) / rand(2, 20));
        $cy = substr_replace($cy, $LP, $TA, 0);
        $uG = base64_decode($cy);
        if (is_writable($d2 . "\154\151\143\x65\x6e\163\145")) {
            goto Bc;
        }
        $cy = str_rot13($cy);
        $IB = base64_decode("bGNkamthc2pka3NhY2w=");
        update_option($IB, $cy);
        goto WS;
        Bc:
        file_put_contents($d2 . "\x6c\151\143\145\156\163\x65", $uG);
        WS:
        update_option("\x6c\x63\167\162\164\154\146\163\x61\x6d\154", true);
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\x74\141\142" => "\x67\x65\156\145\x72\x61\154"), $_SERVER["\122\x45\121\125\x45\x53\x54\137\x55\x52\111"]);
        update_option("\x6d\x6f\137\163\x61\155\154\x5f\155\145\x73\163\x61\147\x65", "\x59\157\x75\x20\150\141\166\145\x20\163\x75\x63\x63\x65\163\x73\x66\165\154\154\x79\x20\x75\160\147\x72\x61\x64\x65\x64\x20\171\157\165\162\x20\154\151\x63\x65\156\163\145\x2e");
        $this->mo_saml_show_success_message();
        YH:
        Ew:
        Ch:
        if (!self::mo_check_option_admin_referer("\x6d\157\x5f\163\141\x6d\154\x5f\x72\145\x6d\157\166\x65\x5f\141\143\143\x6f\x75\156\x74")) {
            goto Kj;
        }
        $this->mo_sso_saml_deactivate();
        add_option("\155\157\x5f\163\x61\x6d\x6c\x5f\162\x65\147\151\163\164\162\x61\164\x69\x6f\x6e\137\x73\164\141\x74\165\x73", "\x72\145\155\157\x76\145\x64\x5f\141\x63\143\157\x75\156\x74");
        $mn = SAMLSPUtilities::mo_saml_add_query_arg(array("\164\x61\142" => "\x6c\x6f\147\x69\x6e"), $_SERVER["\x52\x45\x51\x55\105\x53\x54\x5f\x55\x52\x49"]);
        header("\114\157\x63\x61\x74\151\157\x6e\72\x20" . $mn);
        Kj:
        rb:
    }
    function create_customer()
    {
        $ma = new CustomerSaml();
        $xR = $ma->create_customer();
        if ($xR) {
            goto gt;
        }
        return;
        gt:
        $xR = json_decode($xR, true);
        if (strcasecmp($xR["\163\x74\x61\x74\165\x73"], "\x43\x55\123\124\117\x4d\105\122\x5f\125\123\x45\122\116\x41\x4d\x45\x5f\101\x4c\122\x45\x41\x44\131\x5f\x45\130\x49\x53\x54\123") == 0) {
            goto Gj;
        }
        if (!(strcasecmp($xR["\x73\164\x61\164\165\x73"], "\x53\125\x43\x43\x45\123\123") == 0)) {
            goto vB;
        }
        update_option("\x6d\157\x5f\x73\x61\x6d\x6c\137\x61\x64\155\151\x6e\x5f\143\165\x73\x74\x6f\x6d\x65\162\x5f\x6b\x65\x79", $xR["\x69\x64"]);
        update_option("\x6d\x6f\x5f\x73\141\155\x6c\x5f\141\x64\x6d\151\x6e\137\x61\160\151\x5f\x6b\145\x79", $xR["\x61\x70\x69\113\x65\x79"]);
        update_option("\155\x6f\137\x73\141\x6d\154\137\143\165\163\x74\x6f\x6d\x65\x72\137\x74\x6f\153\145\156", $xR["\x74\x6f\153\x65\x6e"]);
        update_option("\155\157\x5f\163\141\155\154\x5f\141\x64\155\x69\156\x5f\x70\x61\x73\163\x77\157\162\144", '');
        update_option("\155\157\137\163\141\x6d\154\x5f\x6d\x65\163\163\x61\147\x65", "\x54\x68\141\156\x6b\40\171\x6f\x75\40\146\x6f\x72\40\x72\x65\x67\x69\x73\x74\x65\x72\x69\x6e\147\x20\167\151\x74\150\40\130\x65\143\x75\162\151\x66\171\x2e");
        update_option("\155\x6f\x5f\163\141\155\154\x5f\x72\x65\x67\x69\x73\164\x72\141\x74\151\157\156\x5f\163\164\x61\164\x75\x73", '');
        delete_option("\155\157\137\x73\141\x6d\154\137\x76\145\162\x69\x66\171\x5f\143\165\x73\164\x6f\155\145\162");
        delete_option("\x6d\157\137\x73\141\155\154\x5f\156\145\167\x5f\162\145\x67\151\x73\x74\162\141\164\x69\x6f\x6e");
        $this->mo_saml_show_success_message();
        vB:
        goto sE;
        Gj:
        $this->get_current_customer();
        sE:
        update_option("\x6d\x6f\x5f\x73\x61\x6d\x6c\137\x61\144\x6d\x69\x6e\x5f\x70\x61\163\163\167\157\162\144", '');
    }
    function get_current_customer()
    {
        $ma = new CustomerSaml();
        $zn = $ma->get_customer_key();
        if ($zn) {
            goto dZ;
        }
        return;
        dZ:
        $xR = json_decode($zn, true);
        if (json_last_error() == JSON_ERROR_NONE) {
            goto w2;
        }
        update_option("\x6d\157\137\163\141\x6d\154\x5f\155\x65\163\163\141\x67\145", "\131\157\x75\40\141\x6c\162\x65\x61\x64\x79\x20\x68\x61\166\145\x20\x61\156\x20\141\143\143\157\x75\156\x74\x20\x77\x69\164\x68\40\x6d\151\156\x69\x4f\x72\141\156\x67\x65\56\40\120\x6c\145\x61\163\145\40\145\156\x74\145\x72\x20\x61\x20\166\141\x6c\x69\x64\40\x70\x61\163\163\167\157\162\144\56");
        update_option("\x6d\157\137\163\141\155\154\137\x76\x65\x72\151\x66\171\x5f\x63\x75\x73\164\x6f\155\x65\x72", "\164\162\165\145");
        delete_option("\155\x6f\x5f\x73\x61\155\154\137\x6e\145\x77\x5f\162\145\x67\x69\x73\x74\x72\141\x74\x69\x6f\x6e");
        $this->mo_saml_show_error_message();
        goto Td;
        w2:
        update_option("\x6d\157\x5f\x73\141\155\x6c\x5f\141\144\155\x69\x6e\137\x63\165\163\164\x6f\x6d\x65\162\x5f\x6b\x65\x79", $xR["\151\x64"]);
        update_option("\x6d\157\137\163\141\x6d\154\137\x61\x64\155\x69\156\137\x61\160\151\137\153\145\x79", $xR["\x61\160\x69\x4b\x65\x79"]);
        update_option("\x6d\x6f\137\x73\141\155\x6c\137\143\165\x73\164\x6f\155\145\x72\x5f\164\x6f\x6b\145\x6e", $xR["\164\x6f\x6b\x65\x6e"]);
        update_option("\155\157\137\x73\x61\x6d\154\137\x61\144\155\151\156\x5f\x70\x61\x73\163\x77\157\x72\144", '');
        update_option("\155\x6f\137\x73\141\155\154\137\155\x65\x73\163\x61\147\145", "\x59\157\165\162\40\141\x63\143\x6f\x75\x6e\x74\x20\150\x61\163\40\x62\x65\x65\156\40\162\x65\164\162\151\145\166\145\x64\40\x73\165\143\143\x65\x73\x73\x66\165\154\x6c\x79\56");
        delete_option("\155\x6f\x5f\x73\x61\x6d\154\x5f\x76\x65\162\151\x66\171\x5f\143\165\x73\x74\157\x6d\x65\x72");
        delete_option("\155\157\x5f\163\x61\x6d\x6c\137\x6e\x65\x77\137\162\x65\x67\151\163\x74\x72\141\x74\x69\x6f\156");
        $this->mo_saml_show_success_message();
        Td:
    }
    public function mo_saml_check_empty_or_null($A2)
    {
        if (!(!isset($A2) || empty($A2))) {
            goto po;
        }
        return true;
        po:
        return false;
    }
    function miniorange_sso_menu()
    {
        $Pp = add_menu_page("\115\x4f\x20\123\101\115\x4c\x20\123\x65\164\164\x69\156\147\163\x20" . __("\x43\x6f\x6e\x66\151\147\x75\x72\145\x20\123\x41\x4d\114\x20\x49\x64\x65\156\x74\x69\x74\x79\x20\x50\x72\x6f\166\151\144\145\162\x20\146\157\x72\40\x53\x53\x4f", "\x6d\x6f\137\163\x61\155\x6c\x5f\x73\x65\x74\164\x69\156\x67\163"), "\155\151\x6e\151\x4f\x72\141\x6e\147\145\x20\x53\101\115\x4c\40\x32\56\x30\x20\123\x53\117", "\x61\x64\x6d\151\x6e\151\x73\x74\x72\141\x74\x6f\x72", "\x6d\x6f\137\163\x61\x6d\x6c\x5f\163\x65\x74\x74\151\156\147\x73", array($this, "\155\x6f\x5f\154\157\147\x69\156\x5f\x77\151\x64\147\145\x74\137\x73\141\155\154\137\157\160\x74\x69\157\156\163"), plugin_dir_url(__FILE__) . "\x69\155\141\147\x65\163\x2f\155\151\156\151\x6f\162\x61\156\147\145\56\x70\156\x67");
    }
    function mo_saml_redirect_for_authentication($AF)
    {
        if (!mo_saml_is_customer_license_key_verified()) {
            goto n_;
        }
        if (!(get_option("\x6d\x6f\137\x73\141\x6d\x6c\137\x72\145\147\x69\x73\x74\x65\162\x65\144\x5f\157\x6e\x6c\171\x5f\141\x63\x63\x65\x73\163") == "\164\162\165\x65")) {
            goto Jl;
        }
        $base_url = home_url();
        echo "\74\163\x63\162\151\160\164\x3e\167\151\x6e\144\157\x77\x2e\x6c\157\143\x61\x74\x69\x6f\x6e\56\150\x72\x65\x66\75\47" . esc_url($base_url) . "\x2f\x3f\x6f\x70\164\151\x6f\156\x3d\x73\x61\155\x6c\137\x75\163\145\162\137\154\157\147\151\156\46\x72\145\x64\151\162\145\x63\164\137\164\157\75\47\53\x65\x6e\x63\x6f\x64\x65\125\x52\x49\x43\x6f\x6d\160\x6f\156\145\156\x74\50\x77\x69\156\x64\157\x77\x2e\x6c\157\x63\141\x74\x69\157\x6e\x2e\x68\x72\145\x66\x29\x3b\74\57\163\143\x72\x69\x70\x74\76";
        exit;
        Jl:
        if (!(mo_saml_is_sp_configured() && get_option("\x6d\x6f\x5f\163\x61\155\x6c\x5f\x65\156\141\x62\x6c\145\137\154\157\x67\x69\x6e\137\162\x65\144\151\x72\x65\143\164") == "\164\162\165\x65")) {
            goto fJ;
        }
        $Fe = get_option("\x6d\157\137\x73\141\x6d\x6c\137\163\160\137\x62\141\x73\x65\x5f\165\x72\154");
        if (!empty($Fe)) {
            goto kk;
        }
        $Fe = home_url();
        kk:
        if (!(get_option("\155\x6f\x5f\x73\141\155\154\137\x72\145\x6c\141\x79\x5f\x73\x74\141\164\145") && get_option("\155\157\x5f\163\141\x6d\x6c\x5f\x72\x65\154\141\171\137\163\164\141\x74\145") != '')) {
            goto oe;
        }
        $AF = get_option("\x6d\x6f\x5f\163\141\155\154\x5f\162\x65\154\141\171\x5f\163\164\x61\164\x65");
        oe:
        $AF = mo_saml_get_relay_state($AF);
        $XE = empty($AF) ? "\x2f" : $AF;
        $TD = htmlspecialchars_decode(get_option("\163\x61\x6d\x6c\x5f\154\157\x67\151\156\x5f\x75\162\154"));
        $ge = get_option("\x73\x61\x6d\154\x5f\154\x6f\147\x69\x6e\x5f\x62\151\x6e\x64\x69\x6e\147\x5f\x74\x79\x70\145");
        $JZ = get_option("\x6d\157\137\163\x61\155\x6c\x5f\x66\157\x72\143\145\x5f\141\165\164\150\145\156\x74\x69\143\141\164\x69\x6f\156");
        $PK = $Fe . "\57";
        $K2 = get_option("\x6d\157\x5f\x73\141\155\154\x5f\x73\x70\137\145\156\164\151\x74\x79\137\151\144");
        $m7 = get_option("\x73\141\x6d\x6c\x5f\x6e\141\155\145\x69\x64\x5f\146\x6f\x72\155\141\164");
        if (!empty($m7)) {
            goto ES;
        }
        $m7 = "\61\56\61\72\x6e\141\155\x65\x69\144\55\x66\157\x72\x6d\x61\x74\x3a\x65\155\x61\x69\x6c\101\x64\x64\x72\x65\163\163";
        ES:
        if (!empty($K2)) {
            goto Vg;
        }
        $K2 = $Fe . "\57\167\160\x2d\x63\157\156\164\145\156\x74\57\x70\x6c\x75\x67\151\x6e\163\57\x6d\x69\x6e\151\157\162\x61\x6e\x67\x65\x2d\x73\141\155\154\x2d\62\60\55\x73\151\156\147\154\x65\x2d\163\151\x67\x6e\x2d\157\156\57";
        Vg:
        $Lg = SAMLSPUtilities::createAuthnRequest($PK, $K2, $TD, $JZ, $ge, $m7);
        if (empty($ge) || $ge == "\x48\x74\164\160\122\x65\144\x69\162\145\143\x74") {
            goto vq;
        }
        if (!(get_option("\x73\x61\155\154\137\x72\145\161\165\x65\x73\164\137\163\151\147\156\x65\144") == "\165\156\143\150\x65\x63\x6b\x65\144")) {
            goto h5;
        }
        $Md = base64_encode($Lg);
        SAMLSPUtilities::postSAMLRequest($TD, $Md, $XE);
        exit;
        h5:
        $Xc = '';
        $BI = '';
        $Md = SAMLSPUtilities::signXML($Lg, "\x4e\x61\x6d\x65\x49\x44\120\157\154\151\x63\x79");
        SAMLSPUtilities::postSAMLRequest($TD, $Md, $XE);
        goto Fy;
        vq:
        $YA = $TD;
        if (strpos($TD, "\x3f") !== false) {
            goto LY;
        }
        $YA .= "\x3f";
        goto Gq;
        LY:
        $YA .= "\x26";
        Gq:
        if (!(get_option("\x73\141\155\x6c\137\x72\145\161\x75\145\x73\x74\x5f\163\x69\x67\156\x65\x64") == "\165\156\x63\150\145\x63\153\145\x64")) {
            goto uP;
        }
        $YA .= "\123\x41\115\114\122\x65\161\x75\x65\163\164\x3d" . $Lg . "\46\x52\145\154\141\x79\123\x74\x61\164\145\x3d" . urlencode($XE);
        header("\x4c\x6f\143\x61\164\151\157\x6e\x3a\x20" . $YA);
        exit;
        uP:
        $Lg = "\x53\101\x4d\x4c\x52\x65\161\165\x65\x73\164\75" . $Lg . "\x26\x52\x65\x6c\141\x79\x53\x74\x61\164\145\75" . urlencode($XE) . "\46\x53\x69\147\101\x6c\147\75" . urlencode(XMLSecurityKey::RSA_SHA256);
        $Ii = array("\x74\171\160\x65" => "\160\x72\151\166\x61\x74\145");
        $zs = new XMLSecurityKey(XMLSecurityKey::RSA_SHA256, $Ii);
        $SX = get_option("\x6d\157\x5f\163\141\x6d\x6c\137\x63\165\162\x72\x65\x6e\164\x5f\143\145\162\164\137\160\162\x69\166\x61\x74\145\x5f\153\x65\x79");
        $zs->loadKey($SX, FALSE);
        $Rh = new XMLSecurityDSig();
        $vH = $zs->signData($Lg);
        $vH = base64_encode($vH);
        $YA .= $Lg . "\46\x53\151\147\156\x61\x74\165\162\x65\75" . urlencode($vH);
        header("\114\157\x63\141\164\151\x6f\156\x3a\40" . $YA);
        exit;
        Fy:
        fJ:
        n_:
    }
    function mo_saml_authenticate()
    {
        $Ki = '';
        if (!isset($_REQUEST["\162\145\144\151\x72\145\x63\164\137\164\x6f"])) {
            goto ew;
        }
        $Ki = SAMLSPUtilities::mo_saml_sanitize_url($_REQUEST["\162\145\x64\x69\162\x65\x63\164\x5f\164\x6f"]);
        ew:
        if (!is_user_logged_in()) {
            goto V8;
        }
        $this->mo_saml_login_redirect($Ki);
        V8:
        if (!(get_option("\x6d\157\x5f\x73\x61\155\154\137\145\156\141\142\x6c\x65\x5f\x6c\157\147\151\x6e\137\162\x65\x64\151\x72\x65\143\164") == "\x74\162\165\145")) {
            goto pG;
        }
        $Wi = get_option("\x6d\157\x5f\x73\x61\x6d\154\x5f\x62\141\143\153\144\157\x6f\x72\x5f\165\x72\x6c") ? trim(get_option("\x6d\157\x5f\163\141\155\x6c\x5f\x62\x61\143\153\x64\157\157\162\x5f\x75\x72\154")) : "\146\141\x6c\x73\x65";
        if (isset($_GET["\154\157\x67\x67\x65\144\157\165\164"]) && $_GET["\x6c\157\147\x67\x65\144\x6f\x75\x74"] == "\x74\x72\x75\145") {
            goto Sd;
        }
        if (!(get_option("\155\157\137\163\141\155\x6c\137\141\154\x6c\x6f\167\x5f\167\160\x5f\x73\x69\x67\x6e\151\156") == "\x74\x72\165\x65")) {
            goto OF;
        }
        if (isset($_GET["\163\141\x6d\154\x5f\x73\x73\157"]) && $_GET["\x73\141\x6d\154\137\x73\x73\157"] == $Wi || isset($_POST["\x73\141\x6d\154\x5f\163\x73\x6f"]) && $_POST["\163\x61\155\154\x5f\163\163\157"] == $Wi) {
            goto Da;
        }
        if (!isset($_REQUEST["\162\x65\144\x69\162\145\143\164\x5f\164\x6f"])) {
            goto US;
        }
        $Ki = SAMLSPUtilities::mo_saml_sanitize_url($_REQUEST["\x72\145\144\x69\162\145\x63\164\x5f\164\x6f"]);
        if (!(strpos($Ki, "\167\x70\55\141\x64\155\151\156") !== false && strpos($Ki, "\x73\141\x6d\154\x5f\x73\163\157\75" . $Wi) !== false)) {
            goto lp;
        }
        return;
        lp:
        US:
        goto ss;
        Da:
        return;
        ss:
        OF:
        goto Ly;
        Sd:
        header("\x4c\x6f\143\x61\x74\151\157\156\x3a\40" . home_url());
        exit;
        Ly:
        $this->mo_saml_redirect_for_authentication($Ki);
        pG:
    }
    function mo_saml_login_redirect($Ki)
    {
        $DQ = false;
        if (!(strcmp(admin_url(), $Ki) == 0 || strcmp(wp_login_url(), $Ki) == 0)) {
            goto Xx;
        }
        $DQ = true;
        Xx:
        if (!empty($Ki) && !$DQ) {
            goto kW;
        }
        header("\114\x6f\x63\x61\x74\151\157\x6e\x3a\40" . site_url());
        goto Md;
        kW:
        header("\x4c\157\x63\x61\164\x69\x6f\x6e\72\40" . htmlspecialchars_decode($Ki));
        Md:
        exit;
    }
    function mo_saml_auto_redirect()
    {
        if (!current_user_can("\162\x65\141\x64")) {
            goto pV;
        }
        return;
        pV:
        if (!(get_option("\155\x6f\x5f\x73\x61\x6d\154\x5f\x72\x65\147\151\163\x74\x65\162\145\x64\x5f\x6f\x6e\x6c\171\x5f\x61\x63\x63\x65\x73\x73") == "\x74\x72\x75\145")) {
            goto hk;
        }
        if (!(get_option("\x6d\157\137\x73\x61\x6d\x6c\x5f\145\156\x61\x62\154\145\x5f\x72\x73\x73\x5f\141\x63\x63\145\x73\x73") == "\164\x72\165\145" && is_feed())) {
            goto VU;
        }
        return;
        VU:
        $AF = saml_get_current_page_url();
        $this->mo_saml_redirect_for_authentication($AF);
        hk:
    }
    function mo_saml_modify_login_form()
    {
        if (!(get_option("\155\157\137\163\x61\x6d\x6c\137\x61\x64\x64\x5f\x73\163\x6f\x5f\142\x75\164\x74\x6f\156\x5f\167\x70") == "\164\162\x75\145")) {
            goto Dy;
        }
        $this->mo_saml_add_sso_button();
        Dy:
        $Wi = get_option("\x6d\x6f\137\x73\141\x6d\x6c\x5f\142\141\143\x6b\x64\157\x6f\x72\137\x75\x72\x6c") ? trim(get_option("\155\157\x5f\163\x61\x6d\x6c\x5f\142\141\143\153\144\x6f\x6f\162\x5f\165\162\x6c")) : "\146\141\154\163\x65";
        echo "\x3c\151\156\x70\165\164\x20\164\171\x70\x65\x3d\x22\150\x69\144\144\x65\156\42\40\x6e\x61\x6d\x65\x3d\x22\x73\x61\155\x6c\x5f\x73\163\157\42\x20\x76\x61\154\165\x65\75\42" . esc_attr($Wi) . "\42\x3e" . "\12";
    }
    function mo_saml_add_sso_button()
    {
        if (is_user_logged_in()) {
            goto ow;
        }
        $fk = get_option("\163\141\155\154\x5f\x69\144\x65\x6e\164\x69\164\171\137\x6e\141\x6d\145");
        $px = $fk ? "\x4c\x6f\147\x69\x6e\x20\x77\x69\164\150\x20" . $fk : "\114\x6f\x67\x69\x6e\40\167\151\164\150\x20\x53\123\117";
        $te = "\xd\12\x20\x20\40\x20\x20\40\40\x20\40\40\40\x20\40\x20\x20\40\x3c\163\x63\x72\x69\x70\164\76\xd\xa\x20\x20\x20\40\x20\x20\40\40\40\x20\40\x20\40\40\x20\40\167\x69\156\x64\157\167\x2e\x6f\156\x6c\x6f\x61\x64\x20\75\40\146\165\156\x63\164\151\x6f\x6e\50\x29\40\x7b\xd\xa\x9\40\40\x20\x20\40\x20\40\x20\40\x20\x20\x20\x20\x20\x20\x20\166\141\162\x20\x74\x61\162\x67\145\164\137\142\164\x6e\40\75\x20\144\x6f\143\x75\155\x65\x6e\x74\56\147\145\x74\105\x6c\145\155\x65\156\x74\x42\171\x49\x64\50\x22\155\x6f\x5f\163\x61\x6d\154\x5f\142\165\x74\x74\x6f\156\x22\51\x3b\15\xa\11\x20\40\40\x20\40\x20\40\x20\40\40\x20\x20\40\40\x20\40\166\141\162\x20\x62\145\x66\157\x72\145\x5f\145\154\x65\155\145\156\164\x20\x3d\x20\x64\157\x63\165\x6d\x65\x6e\164\56\161\165\x65\162\171\123\x65\154\145\143\x74\x6f\x72\50\42\43\x6c\x6f\x67\151\156\x66\x6f\162\155\40\x70\42\x29\x3b\xd\xa\x9\40\x20\40\40\x20\40\40\40\x20\x20\40\x20\40\x20\x20\x20\x62\145\146\x6f\162\x65\137\145\x6c\x65\x6d\x65\156\164\x2e\142\x65\146\x6f\162\145\x28\x74\141\x72\147\145\x74\137\x62\164\156\51\73\xd\12\40\x20\40\40\40\x20\40\40\x20\40\x20\x20\x20\x20\x20\40\175\73\15\xa\40\40\40\x20\40\x20\x20\x20\40\x20\40\40\40\40\x20\40\x20\x20\40\40\x66\165\156\143\x74\151\157\x6e\40\x6c\x6f\147\151\156\x57\151\x74\x68\123\x53\117\x42\x75\x74\x74\157\x6e\50\151\144\x29\x20\x7b\15\xa\40\40\40\40\40\40\x20\x20\x20\40\x20\x20\40\x20\40\x20\x20\40\40\40\x20\x20\40\40\x69\x66\x28\40\x69\x64\x20\75\x3d\x3d\x20\x22\x6d\x6f\137\x73\141\155\154\137\154\157\x67\151\x6e\x5f\163\x73\157\x5f\142\165\x74\164\157\156\42\51\xd\xa\40\x20\x20\40\40\40\40\x20\40\40\x20\x20\x20\40\x20\40\40\x20\x20\40\40\40\x20\40\x20\x20\x20\40\144\157\x63\165\x6d\x65\156\164\56\147\x65\x74\105\x6c\145\155\x65\x6e\x74\x42\x79\111\x64\50\42\163\141\155\154\x5f\165\163\x65\162\x5f\154\157\x67\x69\x6e\x5f\x69\x6e\x70\165\164\42\x29\x2e\166\141\x6c\165\x65\40\x3d\40\x22\163\x61\155\154\x5f\x75\163\x65\x72\x5f\x6c\x6f\147\151\156\x22\73\15\xa\40\40\x20\x20\x20\x20\x20\x20\x20\40\x20\x20\x20\40\40\x20\40\40\x20\40\40\40\x20\40\x64\x6f\143\165\155\145\x6e\x74\x2e\x67\x65\x74\x45\154\145\155\145\156\x74\102\x79\x49\144\50\42\154\x6f\147\151\x6e\146\x6f\162\x6d\x22\x29\x2e\x73\165\x62\x6d\151\x74\x28\51\x3b\40\15\xa\x20\40\x20\x20\x20\40\40\x20\40\40\x20\40\x20\x20\x20\x20\40\x20\x20\x20\x7d\15\12\x9\11\11\11\x3c\x2f\x73\x63\162\x69\160\164\76\xd\xa\x9\x9\40\40\40\40\40\x20\40\40\74\x69\x6e\x70\165\x74\x20\151\x64\x3d\42\x73\x61\155\x6c\137\x75\163\145\162\137\x6c\x6f\147\x69\x6e\137\151\156\160\x75\x74\42\x20\164\x79\x70\145\x3d\42\x68\x69\x64\144\x65\x6e\x22\40\156\x61\x6d\145\75\42\157\160\x74\151\157\156\x22\40\x76\x61\x6c\165\x65\x3d\x22\x22\x20\57\76\xd\xa\40\40\x20\40\40\40\40\x20\40\x20\40\40\40\40\40\x20\x3c\144\151\166\x20\x69\144\75\x22\155\157\x5f\x73\x61\155\x6c\x5f\142\165\x74\x74\x6f\156\x22\x20\163\x74\171\154\x65\75\42\x68\x65\151\147\x68\x74\x3a\x38\70\x70\170\73\x22\x3e\15\xa\x20\40\x20\x20\x20\x20\x20\40\x20\x20\40\x20\40\40\x20\40\x9\74\144\x69\166\x20\x69\144\75\42\155\157\x5f\163\x61\x6d\154\137\154\157\147\151\x6e\x5f\x73\x73\157\x5f\x62\x75\164\164\x6f\x6e\x22\x20\157\x6e\x63\x6c\x69\143\x6b\x3d\42\x6c\157\147\x69\x6e\127\151\164\x68\x53\123\117\x42\x75\x74\x74\157\x6e\50\164\x68\151\x73\56\151\x64\x29\42\40\163\164\171\x6c\145\75\x22\167\151\144\x74\x68\x3a\61\60\x30\x25\73\x64\151\163\160\x6c\x61\171\72\x66\154\x65\x78\x3b\x6a\x75\x73\x74\x69\146\x79\55\143\x6f\x6e\x74\145\156\x74\72\x63\145\x6e\x74\145\162\x3b\141\x6c\x69\147\x6e\x2d\151\x74\145\x6d\x73\x3a\x63\145\156\x74\x65\x72\x3b\x66\157\156\x74\x2d\x73\151\x7a\145\72\61\x34\x70\x78\x3b\155\x61\x72\147\x69\156\55\142\157\x74\164\x6f\155\72\x31\x2e\63\x72\x65\x6d\42\x20\143\154\141\163\x73\75\x22\x62\x75\x74\164\x6f\x6e\40\x62\165\x74\164\157\156\x2d\160\162\151\155\x61\x72\x79\x22\76\15\xa\x9\x9\x9\x9\11\x3c\x69\x6d\x67\x20\x73\164\x79\154\145\x3d\42\167\151\x64\164\150\72\x32\60\x70\x78\73\x68\145\x69\x67\150\164\72\61\65\160\170\73\x70\x61\x64\x64\x69\156\147\x2d\x72\151\147\150\x74\72\x31\x70\x78\x22\40\x73\x72\143\x3d\x22" . esc_url(plugin_dir_url(__FILE__)) . "\151\155\x61\147\145\163\57\x6c\x6f\x63\x6b\55\x69\x63\x6f\156\x2e\160\156\x67\42\x3e" . esc_html($px) . "\x3c\x2f\x64\151\166\x3e\xd\xa\x20\40\40\40\40\40\x20\x20\x20\40\x20\40\x20\40\40\x20\40\x20\40\x20\x3c\144\x69\166\40\x73\164\x79\154\145\x3d\x22\x70\141\144\144\x69\156\x67\x3a\x35\x70\170\x3b\146\157\156\x74\x2d\x73\x69\172\x65\72\x31\64\x70\170\x3b\150\x65\151\147\x68\164\x3a\62\x30\x70\170\73\164\x65\x78\164\55\141\x6c\151\147\156\x3a\x63\x65\156\x74\x65\x72\x22\76\74\142\x3e\x4f\122\74\57\142\x3e\x3c\x2f\x64\x69\166\x3e\15\12\x20\40\x20\40\x20\x20\40\x20\x20\x20\x20\40\x20\40\x20\x20\x3c\57\144\x69\166\x3e";
        echo $te;
        ow:
    }
    function djkasjdksa()
    {
        $JI = "\x21\x7e\x40\x23\44\x25\136\x26\52\x28\x29\137\53\174\x7b\x7d\x3c\x3e\77\x30\61\x32\x33\64\x35\66\x37\70\71\x61\142\x63\144\x65\146\x67\x68\x69\152\153\154\x6d\156\157\x70\x71\162\163\x74\165\x76\x77\x78\171\x7a\101\102\103\104\105\x46\107\x48\111\x4a\x4b\x4c\115\x4e\117\x50\121\122\x53\x54\x55\126\127\130\x59\132";
        $pH = strlen($JI);
        $J6 = '';
        $gB = 0;
        wT:
        if (!($gB < 10000)) {
            goto HC;
        }
        $J6 .= $JI[rand(0, $pH - 1)];
        dW:
        $gB++;
        goto wT;
        HC:
        return $J6;
    }
    function mo_get_saml_shortcode()
    {
        if (!is_user_logged_in()) {
            goto kP;
        }
        $current_user = wp_get_current_user();
        $e5 = "\110\x65\x6c\x6c\157\54";
        if (!get_option("\x6d\157\137\x73\x61\x6d\x6c\137\143\x75\163\164\157\155\137\x67\162\145\145\x74\x69\156\147\x5f\164\145\x78\164")) {
            goto GK;
        }
        $e5 = get_option("\155\x6f\x5f\163\141\x6d\154\x5f\x63\x75\x73\164\x6f\155\x5f\x67\162\145\145\x74\151\x6e\x67\137\x74\145\x78\164");
        GK:
        $m_ = '';
        if (!get_option("\x6d\x6f\137\163\x61\x6d\154\x5f\147\x72\145\x65\x74\x69\156\147\137\x6e\141\x6d\145")) {
            goto DP;
        }
        switch (get_option("\155\x6f\137\x73\x61\155\x6c\x5f\147\162\145\145\164\x69\156\x67\137\156\x61\x6d\145")) {
            case "\x55\x53\105\122\x4e\x41\115\105":
                $m_ = $current_user->user_login;
                goto bf;
            case "\105\115\x41\x49\114":
                $m_ = $current_user->user_email;
                goto bf;
            case "\106\116\101\x4d\x45":
                $m_ = $current_user->user_firstname;
                goto bf;
            case "\x4c\x4e\x41\x4d\x45":
                $m_ = $current_user->user_lastname;
                goto bf;
            case "\106\116\x41\x4d\x45\x5f\x4c\x4e\101\x4d\x45":
                $m_ = $current_user->user_firstname . "\x20" . $current_user->user_lastname;
                goto bf;
            case "\x4c\116\x41\x4d\105\x5f\x46\116\x41\115\105":
                $m_ = $current_user->user_lastname . "\x20" . $current_user->user_firstname;
                goto bf;
            default:
                $m_ = $current_user->user_login;
        }
        Bh:
        bf:
        DP:
        if (!empty(trim($m_))) {
            goto RP;
        }
        $m_ = $current_user->user_login;
        RP:
        $zW = $e5 . "\x20" . $m_;
        $m9 = "\114\157\x67\x6f\165\x74";
        if (!get_option("\x6d\157\x5f\163\141\155\154\x5f\143\165\x73\x74\x6f\x6d\x5f\x6c\157\x67\x6f\165\164\x5f\164\x65\x78\164")) {
            goto L7;
        }
        $m9 = get_option("\x6d\157\137\x73\x61\155\x6c\137\143\165\x73\x74\x6f\x6d\x5f\x6c\157\147\157\165\x74\137\164\145\170\164");
        L7:
        $te = $zW . "\x20\174\40\74\141\40\150\x72\145\x66\x3d\x22" . wp_logout_url(home_url()) . "\x22\40\x74\x69\164\154\145\x3d\x22\x6c\157\147\157\165\x74\x22\x20\76" . $m9 . "\74\57\141\x3e\x3c\x2f\x6c\151\x3e";
        $mn = saml_get_current_page_url();
        update_option("\154\x6f\x67\157\165\164\x5f\x72\145\x64\151\x72\145\x63\x74\x5f\x75\x72\x6c", $mn);
        goto iE;
        kP:
        $Fe = get_option("\155\x6f\137\x73\x61\x6d\154\x5f\163\160\x5f\x62\x61\163\x65\x5f\x75\x72\x6c");
        if (!empty($Fe)) {
            goto WC;
        }
        $Fe = home_url();
        WC:
        if (mo_saml_is_sp_configured() && mo_saml_is_customer_license_key_verified()) {
            goto kz;
        }
        $te = "\123\x50\40\151\x73\x20\x6e\157\x74\40\x63\157\156\146\151\147\165\x72\145\x64\x2e";
        goto c7;
        kz:
        $QN = "\x4c\157\x67\x69\156\x20\167\x69\x74\x68\40" . get_option("\x73\141\155\x6c\x5f\x69\x64\x65\x6e\164\x69\164\171\x5f\x6e\x61\x6d\x65");
        if (!get_option("\x6d\x6f\137\x73\x61\155\154\x5f\x63\x75\x73\164\157\x6d\x5f\x6c\x6f\x67\x69\x6e\137\x74\x65\x78\164")) {
            goto Eg;
        }
        $QN = get_option("\155\157\137\163\141\x6d\154\x5f\143\x75\163\164\157\x6d\x5f\x6c\x6f\x67\151\x6e\137\164\x65\170\164");
        Eg:
        $bW = get_option("\163\141\155\x6c\x5f\x69\144\x65\156\164\x69\x74\x79\x5f\x6e\x61\x6d\145");
        $QN = str_replace("\x23\x23\x49\x44\120\x23\x23", $bW, $QN);
        $Ki = urlencode(saml_get_current_page_url());
        $te = "\x3c\x61\x20\x68\162\x65\146\x3d\42" . $Fe . "\x2f\77\157\160\x74\151\157\156\x3d\x73\141\x6d\154\137\165\163\x65\x72\x5f\x6c\x6f\147\x69\156\46\162\x65\144\x69\162\x65\143\x74\x5f\x74\x6f\75" . $Ki . "\x22\x3e" . $QN . "\x3c\x2f\x61\x3e";
        c7:
        iE:
        return $te;
    }
    function _handle_upload_metadata()
    {
        if (!(isset($_FILES["\x6d\145\x74\141\x64\x61\164\141\x5f\x66\x69\x6c\x65"]) || isset($_POST["\155\145\x74\x61\x64\141\164\141\x5f\x75\x72\x6c"]))) {
            goto Bx;
        }
        if (!empty($_FILES["\x6d\145\164\x61\x64\141\164\x61\x5f\x66\151\154\x65"]["\x74\155\160\137\156\x61\155\x65"])) {
            goto JQ;
        }
        if (mo_saml_is_extension_installed("\x63\x75\x72\154")) {
            goto pb;
        }
        update_option("\155\x6f\x5f\163\141\155\x6c\137\x6d\x65\x73\163\x61\x67\x65", "\120\x48\120\40\x63\125\122\x4c\x20\145\170\x74\x65\x6e\163\151\x6f\x6e\x20\151\163\40\156\x6f\164\40\x69\156\x73\x74\x61\x6c\154\x65\144\x20\157\162\x20\x64\151\163\141\142\154\x65\144\x2e\40\x43\141\156\156\x6f\x74\x20\146\145\164\x63\x68\x20\155\145\x74\x61\x64\141\x74\141\x20\146\162\157\155\40\125\x52\114\56");
        $this->mo_saml_show_error_message();
        return;
        pb:
        $mn = filter_var(htmlspecialchars($_POST["\155\145\x74\141\144\141\164\141\137\165\x72\154"]), FILTER_SANITIZE_URL);
        $dj = SAMLSPUtilities::mo_saml_wp_remote_call($mn, array("\x73\x73\x6c\x76\145\162\x69\146\x79" => false), true);
        if (!is_null($dj)) {
            goto bO;
        }
        $rf = null;
        goto Yl;
        bO:
        $rf = $dj;
        Yl:
        goto Nm;
        JQ:
        $rf = @file_get_contents(sanitize_text_field($_FILES["\155\145\x74\x61\144\141\164\141\137\146\x69\154\145"]["\164\x6d\x70\x5f\x6e\141\x6d\145"]));
        Nm:
        if (!is_null($rf)) {
            goto NB;
        }
        update_option("\155\x6f\137\x73\141\x6d\154\137\x6d\x65\163\163\141\x67\x65", "\111\x6e\166\x61\154\x69\x64\x20\x4d\145\164\x61\x64\141\164\x61\40\106\x69\x6c\x65\40\x6f\162\40\x55\122\114");
        $this->mo_saml_show_error_message();
        return;
        goto mG;
        NB:
        $this->upload_metadata($rf);
        mG:
        Bx:
    }
    function upload_metadata($rf)
    {
        if (!empty($rf)) {
            goto si;
        }
        update_option("\155\x6f\137\163\x61\x6d\154\137\x6d\x65\163\163\x61\x67\x65", "\x45\x72\162\157\162\72\40\x43\157\x75\x6c\144\156\47\164\x20\x75\160\154\x6f\x61\x64\40\155\x65\x74\141\x64\141\x74\x61\56\x20\115\145\x74\141\144\141\164\141\40\106\x69\x6c\x65\40\x69\163\x20\145\155\x70\x74\x79\56");
        $this->mo_saml_show_error_message();
        return;
        si:
        $C2 = set_error_handler(array($this, "\x68\x61\x6e\x64\154\145\x58\x6d\x6c\105\162\x72\157\162"));
        $rL = new DOMDocument();
        $rL->loadXML($rf);
        restore_error_handler();
        $dd = $rL->firstChild;
        if (!empty($dd)) {
            goto kQ;
        }
        if (!empty($_FILES["\x6d\x65\x74\141\144\141\x74\141\x5f\146\x69\154\x65"]["\164\x6d\x70\137\156\141\x6d\x65"])) {
            goto xT;
        }
        if (!empty($_POST["\155\145\164\x61\144\x61\164\x61\137\165\162\154"])) {
            goto Iy;
        }
        update_option("\155\157\137\x73\141\x6d\x6c\137\155\x65\163\x73\x61\x67\x65", "\x50\154\x65\x61\163\145\40\x70\x72\157\166\151\x64\145\40\x61\40\166\141\x6c\x69\144\40\155\x65\164\141\144\x61\x74\141\x20\x66\x69\x6c\x65\x20\157\162\x20\141\x20\166\141\x6c\x69\x64\x20\125\x52\x4c\x2e");
        $this->mo_saml_show_error_message();
        return;
        goto OG;
        Iy:
        update_option("\155\157\137\163\141\155\154\x5f\155\x65\163\163\x61\147\145", "\x50\154\145\141\x73\145\40\x70\x72\x6f\x76\151\144\x65\40\x61\x20\166\x61\x6c\151\144\x20\155\145\x74\141\x64\x61\x74\141\x20\125\x52\114\x2e");
        $this->mo_saml_show_error_message();
        return;
        OG:
        goto jK;
        xT:
        update_option("\155\157\x5f\x73\141\155\x6c\x5f\x6d\145\x73\163\x61\147\145", "\x50\154\145\141\163\145\40\x70\x72\x6f\166\x69\144\145\x20\x61\40\x76\141\154\x69\x64\x20\x6d\145\x74\x61\144\141\164\x61\x20\x66\151\154\x65\x2e");
        $this->mo_saml_show_error_message();
        return;
        jK:
        goto LE;
        kQ:
        $MC = new IDPMetadataReader($rL);
        $UQ = $MC->getIdentityProviders();
        if (preg_match("\57\x5e\134\167\x2a\44\x2f", $_POST["\x73\141\x6d\154\x5f\151\x64\x65\x6e\x74\x69\164\x79\137\x6d\145\164\141\144\141\164\x61\137\x70\162\157\166\151\144\x65\x72"])) {
            goto nu;
        }
        update_option("\x6d\x6f\137\x73\141\155\154\x5f\x6d\x65\163\x73\x61\x67\x65", __("\x50\x6c\x65\141\x73\x65\x20\155\x61\x74\143\x68\40\164\150\x65\40\162\x65\161\x75\x65\163\x74\145\144\40\x66\x6f\x72\x6d\x61\164\x20\x66\157\162\40\x49\x64\145\x6e\x74\151\x74\171\x20\120\162\157\x76\x69\x64\145\x72\x20\116\141\x6d\x65\x2e\40\x4f\x6e\x6c\x79\x20\x61\154\x70\150\141\x62\x65\164\x73\54\x20\156\x75\155\142\145\162\x73\x20\141\156\x64\40\165\x6e\144\145\162\x73\143\x6f\x72\145\40\151\x73\x20\x61\154\x6c\x6f\x77\x65\144\x2e", "\x6d\x69\x6e\x69\x6f\x72\141\x6e\147\145\55\x73\141\x6d\x6c\55\62\60\x2d\x73\x69\156\x67\154\145\x2d\163\151\147\x6e\55\157\156"));
        $this->mo_saml_show_error_message();
        return;
        nu:
        if (!(empty($UQ) && !empty($_FILES["\155\x65\x74\141\144\x61\164\141\137\146\151\154\145"]["\x74\x6d\x70\x5f\156\x61\x6d\x65"]))) {
            goto Lf;
        }
        update_option("\155\157\137\163\x61\155\x6c\137\x6d\x65\x73\x73\141\x67\145", "\x50\x6c\x65\x61\x73\145\x20\x70\x72\x6f\166\x69\144\x65\40\141\40\x76\x61\x6c\x69\x64\40\x6d\145\x74\x61\144\141\164\x61\40\x66\x69\154\x65\x2e");
        $this->mo_saml_show_error_message();
        return;
        Lf:
        if (!(empty($UQ) && !empty($_POST["\x6d\145\164\141\x64\x61\164\141\x5f\165\x72\154"]))) {
            goto Uh;
        }
        update_option("\155\x6f\x5f\x73\141\155\x6c\x5f\x6d\145\x73\163\141\x67\x65", "\x50\154\145\x61\x73\145\x20\x70\162\x6f\166\151\x64\x65\40\x61\x20\166\x61\x6c\x69\144\40\x6d\x65\164\141\x64\141\164\141\x20\x55\x52\114\x2e");
        $this->mo_saml_show_error_message();
        return;
        Uh:
        foreach ($UQ as $zs => $wG) {
            $Bh = sanitize_text_field($_POST["\163\141\155\x6c\137\151\x64\x65\x6e\x74\151\164\x79\x5f\x6d\x65\x74\x61\144\x61\164\x61\137\160\162\157\166\151\144\x65\162"]);
            $Ko = "\x48\164\164\160\122\x65\x64\x69\162\145\x63\x74";
            $H4 = '';
            $sk = $wG->getLoginDetails();
            $h3 = $wG->getLogoutDetails();
            if (!empty($sk["\110\124\124\120\x2d\122\x65\144\x69\162\x65\143\164"])) {
                goto v7;
            }
            if (empty($sk["\110\124\124\120\55\x50\x4f\123\124"])) {
                goto fI;
            }
            $Ko = "\x48\164\164\x70\120\x6f\x73\164";
            $H4 = $wG->getLoginURL("\110\x54\x54\120\55\x50\117\x53\124");
            fI:
            goto fR;
            v7:
            $H4 = $wG->getLoginURL("\x48\124\124\x50\55\122\145\x64\151\162\x65\143\164");
            fR:
            $iz = "\x48\164\164\160\x52\145\x64\151\x72\145\143\x74";
            $YG = '';
            if (!empty($h3["\110\x54\124\120\55\x52\x65\x64\x69\162\x65\x63\164"])) {
                goto FJ;
            }
            if (empty($h3["\x48\124\x54\x50\x2d\120\x4f\x53\124"])) {
                goto Wq;
            }
            $iz = "\x48\164\x74\160\x50\x6f\x73\164";
            $YG = $wG->getLogoutURL("\110\124\x54\120\55\x50\117\123\x54");
            Wq:
            goto BU;
            FJ:
            $YG = $wG->getLogoutURL("\x48\x54\x54\x50\x2d\x52\145\144\x69\x72\145\x63\164");
            BU:
            $pn = $wG->getEntityID();
            $Ax = $wG->getSigningCertificate();
            update_option("\x73\141\x6d\x6c\x5f\151\144\145\x6e\x74\151\164\x79\137\156\141\x6d\145", $Bh);
            update_option("\x73\141\x6d\x6c\137\154\157\147\151\x6e\x5f\142\x69\x6e\x64\x69\x6e\x67\137\164\171\160\x65", $Ko);
            update_option("\163\x61\x6d\x6c\137\154\157\x67\x69\156\137\x75\x72\x6c", $H4);
            update_option("\x73\x61\x6d\154\x5f\x6c\157\147\157\165\x74\x5f\142\151\x6e\144\151\156\x67\137\x74\171\160\x65", $iz);
            update_option("\x73\141\x6d\154\137\154\157\x67\157\x75\164\137\x75\x72\154", $YG);
            update_option("\x73\x61\155\154\137\x69\163\x73\165\145\x72", $pn);
            update_option("\163\x61\x6d\x6c\137\x6e\141\x6d\145\x69\x64\137\x66\x6f\162\x6d\x61\164", "\x31\x2e\x31\72\x6e\x61\155\x65\x69\x64\55\x66\x6f\162\x6d\x61\x74\72\x75\x6e\163\x70\x65\x63\x69\146\151\145\x64");
            update_option("\163\x61\155\154\x5f\170\x35\x30\71\x5f\143\145\x72\x74\x69\146\x69\x63\x61\x74\x65", maybe_serialize($Ax));
            goto Ex;
            ID:
        }
        Ex:
        update_option("\155\x6f\137\163\141\155\154\137\155\x65\163\x73\141\147\x65", "\x49\144\145\x6e\x74\151\x74\171\40\x50\x72\157\166\151\144\x65\x72\x20\x64\x65\164\x61\151\x6c\163\x20\x73\x61\x76\145\144\x20\163\165\143\x63\x65\x73\x73\146\165\154\x6c\171\x2e");
        $this->mo_saml_show_success_message();
        LE:
    }
    function handleXmlError($aL, $ys, $JG, $pR)
    {
        if ($aL == E_WARNING && substr_count($ys, "\104\117\x4d\104\x6f\x63\x75\155\145\156\164\72\72\x6c\x6f\x61\144\x58\x4d\x4c\x28\x29") > 0) {
            goto W3;
        }
        return false;
        goto I4;
        W3:
        return;
        I4:
    }
    function mo_saml_plugin_action_links($zC)
    {
        $zC = array_merge(array("\74\141\x20\x68\162\145\146\x3d\42" . esc_url(admin_url("\141\x64\155\x69\x6e\56\x70\150\x70\77\x70\x61\147\x65\x3d\x6d\x6f\137\163\141\x6d\154\137\x73\145\x74\x74\x69\156\147\163")) . "\42\x3e" . __("\123\145\x74\x74\x69\156\x67\x73", "\x74\145\x78\164\x64\157\x6d\x61\151\x6e") . "\x3c\57\x61\x3e"), $zC);
        return $zC;
    }
    function checkPasswordPattern($kZ)
    {
        $GS = "\x2f\136\133\50\x5c\167\51\x2a\x28\x5c\x21\134\x40\x5c\x23\134\44\134\x25\x5c\136\x5c\x26\134\52\134\56\134\55\x5c\137\x29\52\x5d\x2b\44\x2f";
        return !preg_match($GS, $kZ);
    }
    function mo_saml_parse_expiry_date($Ho)
    {
        $CQ = new DateTime($Ho);
        $OX = $CQ->getTimestamp();
        return date("\106\40\x6a\54\x20\x59", $OX);
    }
}
new saml_mo_login();

Function Calls

None

Variables

None

Stats

MD5 9c91895699f33c6965cae0b46f6d1d73
Eval Count 0
Decode Time 137 ms