/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.gateway.common.security.keystore.SsgKeyEntry
 *  com.l7tech.objectmodel.FindException
 *  com.l7tech.objectmodel.Goid
 *  com.l7tech.objectmodel.ObjectNotFoundException
 *  com.l7tech.security.prov.JceProvider
 *  com.l7tech.util.Config
 *  com.l7tech.util.ConfigFactory
 *  com.l7tech.util.ExceptionUtils
 *  com.l7tech.util.MasterPasswordManager
 *  org.springframework.beans.factory.InitializingBean
 *  org.springframework.transaction.annotation.Transactional
 */
package com.l7tech.server.security.keystore;

import com.l7tech.gateway.common.security.keystore.SsgKeyEntry;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.ObjectNotFoundException;
import com.l7tech.security.prov.JceProvider;
import com.l7tech.server.security.keystore.JdkKeyStoreBackedSsgKeyStore;
import com.l7tech.server.security.keystore.KeyAccessFilter;
import com.l7tech.server.security.keystore.KeystoreFile;
import com.l7tech.server.security.keystore.KeystoreFileManager;
import com.l7tech.server.security.keystore.KeystoreFileManagerImpl;
import com.l7tech.server.security.keystore.SsgKeyFinder;
import com.l7tech.server.security.keystore.SsgKeyMetadataManager;
import com.l7tech.server.security.keystore.SsgKeyStoreManager;
import com.l7tech.server.security.keystore.generic.GenericSsgKeyStore;
import com.l7tech.server.security.keystore.luna.LunaSsgKeyStore;
import com.l7tech.server.security.keystore.ncipher.NcipherSsgKeyStore;
import com.l7tech.server.security.keystore.sca.ScaSsgKeyStore;
import com.l7tech.server.security.keystore.software.DatabasePkcs12SsgKeyStore;
import com.l7tech.server.security.sharedkey.SharedKeyManager;
import com.l7tech.util.Config;
import com.l7tech.util.ConfigFactory;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.MasterPasswordManager;
import java.security.KeyStoreException;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.transaction.annotation.Transactional;

public class SsgKeyStoreManagerImpl
implements SsgKeyStoreManager,
InitializingBean {
    protected static final Logger logger;
    private static final String a;
    private final char[] b;
    private final KeystoreFileManager c;
    private final Config d;
    private final MasterPasswordManager e;
    private final KeyAccessFilter f;
    private final SsgKeyMetadataManager g;
    private boolean h = false;
    private List<SsgKeyFinder> i = null;
    Goid j = new Goid(0L, 0L);
    private static final String[] k;

    /*
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    public SsgKeyStoreManagerImpl(SharedKeyManager sharedKeyManager, KeystoreFileManager keystoreFileManager, Config config, char[] cArray, MasterPasswordManager masterPasswordManager, KeyAccessFilter keyAccessFilter, SsgKeyMetadataManager ssgKeyMetadataManager) throws KeyStoreException, FindException {
        if (cArray == null) throw new IllegalArgumentException(k[1]);
        try {
            if (cArray.length == 0) {
                throw new IllegalArgumentException(k[1]);
            }
        }
        catch (KeyStoreException keyStoreException) {
            throw SsgKeyStoreManagerImpl.a(keyStoreException);
        }
        if (keystoreFileManager instanceof KeystoreFileManagerImpl) {
            logger.severe(k[7]);
            keystoreFileManager = null;
        }
        this.c = keystoreFileManager;
        this.b = this.a(sharedKeyManager.getSharedKey());
        this.d = config;
        this.e = masterPasswordManager;
        this.f = keyAccessFilter;
        this.g = ssgKeyMetadataManager;
    }

    private char[] a(byte[] byArray) {
        char[] cArray = new char[byArray.length];
        String[] stringArray = k;
        int n2 = stringArray[12].length();
        try {
            for (int i2 = 0; i2 < byArray.length; ++i2) {
                cArray[i2] = k[3].charAt((128 + byArray[i2]) % n2);
            }
        }
        catch (IllegalArgumentException illegalArgumentException) {
            throw SsgKeyStoreManagerImpl.a(illegalArgumentException);
        }
        return cArray;
    }

    private synchronized void a() throws KeyStoreException, FindException {
        ArrayList<JdkKeyStoreBackedSsgKeyStore> arrayList;
        block52: {
            char[] cArray;
            String[] stringArray;
            boolean bl2;
            block51: {
                try {
                    if (this.h) {
                        return;
                    }
                }
                catch (KeyStoreException keyStoreException) {
                    throw SsgKeyStoreManagerImpl.a(keyStoreException);
                }
                if (this.f == null) {
                    String[] stringArray2 = k;
                    String string = stringArray2[5];
                    logger.severe(string);
                    throw new IllegalStateException(string);
                }
                arrayList = new ArrayList<JdkKeyStoreBackedSsgKeyStore>();
                Collection collection = this.c.findAll();
                if (collection.isEmpty()) {
                    String[] stringArray3 = k;
                    String string = stringArray3[18];
                    logger.warning(string);
                    throw new KeyStoreException(string);
                }
                boolean bl3 = this.isUsingLuna();
                boolean bl4 = this.isUsingNcipher();
                boolean bl5 = this.isUsingSca6000();
                bl2 = this.isUsingGeneric();
                boolean bl6 = false;
                boolean bl7 = false;
                for (KeystoreFile object2 : collection) {
                    String string;
                    Goid goid;
                    block50: {
                        String string2;
                        block47: {
                            block48: {
                                block45: {
                                    block46: {
                                        goid = object2.getGoid();
                                        string = object2.getName();
                                        string2 = object2.getFormat();
                                        try {
                                            if (string2 == null) {
                                                throw new KeyStoreException(k[19] + String.valueOf(goid));
                                            }
                                        }
                                        catch (KeyStoreException keyStoreException) {
                                            throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                        }
                                        try {
                                            try {
                                                if (!string2.startsWith(k[15])) break block45;
                                                if (bl5) break block46;
                                            }
                                            catch (KeyStoreException keyStoreException) {
                                                throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                            }
                                            logger.info(k[26]);
                                            continue;
                                        }
                                        catch (KeyStoreException keyStoreException) {
                                            throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                        }
                                    }
                                    try {
                                        if (bl6) {
                                            throw new KeyStoreException(k[16]);
                                        }
                                    }
                                    catch (KeyStoreException keyStoreException) {
                                        throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                    }
                                    stringArray = k;
                                    String string3 = object2.getProperty(stringArray[14]);
                                    char[] cArray2 = this.e.decryptPasswordIfEncrypted(string3);
                                    arrayList.add(ScaSsgKeyStore.getInstance(goid, string, cArray2, this.c, this.f, this.g));
                                    bl6 = true;
                                    continue;
                                }
                                try {
                                    try {
                                        if (!string2.startsWith(k[2])) break block47;
                                        if (bl4) break block48;
                                    }
                                    catch (KeyStoreException keyStoreException) {
                                        throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                    }
                                    logger.info(k[9]);
                                    continue;
                                }
                                catch (KeyStoreException keyStoreException) {
                                    throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                }
                            }
                            try {
                                if (bl7) {
                                    throw new KeyStoreException(k[23]);
                                }
                            }
                            catch (KeyStoreException keyStoreException) {
                                throw SsgKeyStoreManagerImpl.a(keyStoreException);
                            }
                            arrayList.add(new NcipherSsgKeyStore(goid, string, this.c, this.f, this.g));
                            bl7 = true;
                            continue;
                        }
                        try {
                            if (string2.equals(k[25])) {
                                logger.fine(k[21]);
                                continue;
                            }
                        }
                        catch (KeyStoreException keyStoreException) {
                            throw SsgKeyStoreManagerImpl.a(keyStoreException);
                        }
                        try {
                            block49: {
                                try {
                                    try {
                                        try {
                                            try {
                                                if (!string2.startsWith(k[24])) continue;
                                                if (bl5) break block49;
                                            }
                                            catch (KeyStoreException keyStoreException) {
                                                throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                            }
                                            if (bl3) break block49;
                                        }
                                        catch (KeyStoreException keyStoreException) {
                                            throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                        }
                                        if (bl4) break block49;
                                    }
                                    catch (KeyStoreException keyStoreException) {
                                        throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                    }
                                    if (!bl2) break block50;
                                }
                                catch (KeyStoreException keyStoreException) {
                                    throw SsgKeyStoreManagerImpl.a(keyStoreException);
                                }
                            }
                            logger.info(k[27]);
                            continue;
                        }
                        catch (KeyStoreException keyStoreException) {
                            throw SsgKeyStoreManagerImpl.a(keyStoreException);
                        }
                    }
                    arrayList.add(new DatabasePkcs12SsgKeyStore(goid, string, this.c, this.b, this.f, this.g));
                }
                try {
                    try {
                        if (!bl3 || !arrayList.isEmpty()) break block51;
                    }
                    catch (KeyStoreException keyStoreException) {
                        throw SsgKeyStoreManagerImpl.a(keyStoreException);
                    }
                    arrayList.add(new LunaSsgKeyStore(new Goid(0L, 3L), SsgKeyFinder.SsgKeyStoreType.LUNA_HARDWARE, k[8], this.f, this.g));
                }
                catch (KeyStoreException keyStoreException) {
                    throw SsgKeyStoreManagerImpl.a(keyStoreException);
                }
            }
            try {
                if (!bl2 || !arrayList.isEmpty()) break block52;
            }
            catch (KeyStoreException keyStoreException) {
                throw SsgKeyStoreManagerImpl.a(keyStoreException);
            }
            stringArray = k;
            String string = ConfigFactory.getProperty((String)stringArray[6], (String)stringArray[22]);
            try {
                cArray = string == null ? null : this.e.decryptPasswordIfEncrypted(string);
            }
            catch (KeyStoreException keyStoreException) {
                throw SsgKeyStoreManagerImpl.a(keyStoreException);
            }
            char[] cArray3 = cArray;
            arrayList.add(new GenericSsgKeyStore(new Goid(0L, 5L), SsgKeyFinder.SsgKeyStoreType.GENERIC, k[10], cArray3, this.f, this.g));
        }
        for (SsgKeyFinder ssgKeyFinder : arrayList) {
            ssgKeyFinder.getAliases();
        }
        this.i = Collections.unmodifiableList(arrayList);
        this.h = true;
    }

    public boolean isUsingLuna() {
        return JceProvider.LUNA_ENGINE.equals(JceProvider.getEngineClass());
    }

    public boolean isUsingNcipher() {
        return JceProvider.NCIPHER_ENGINE.equals(JceProvider.getEngineClass());
    }

    public boolean isUsingSca6000() {
        return JceProvider.PKCS11_ENGINE.equals(JceProvider.getEngineClass());
    }

    public boolean isUsingGeneric() {
        return JceProvider.GENERIC_ENGINE.equals(JceProvider.getEngineClass());
    }

    @Override
    public List<SsgKeyFinder> findAll() throws FindException, KeyStoreException {
        try {
            if (!this.h) {
                this.a();
            }
        }
        catch (FindException findException) {
            throw SsgKeyStoreManagerImpl.a((Exception)((Object)findException));
        }
        return this.i;
    }

    @Override
    public SsgKeyFinder findByPrimaryKey(Goid goid) throws FindException, KeyStoreException {
        try {
            if (!this.h) {
                this.a();
            }
        }
        catch (FindException findException) {
            throw SsgKeyStoreManagerImpl.a((Exception)((Object)findException));
        }
        for (SsgKeyFinder ssgKeyFinder : this.i) {
            try {
                if (!Goid.equals((Goid)ssgKeyFinder.getGoid(), (Goid)goid)) continue;
                return ssgKeyFinder;
            }
            catch (FindException findException) {
                throw SsgKeyStoreManagerImpl.a((Exception)((Object)findException));
            }
        }
        throw new ObjectNotFoundException(k[11] + String.valueOf(goid));
    }

    /*
     * Could not resolve type clashes
     * Unable to fully structure code
     */
    @Override
    @Transactional(readOnly=true)
    public SsgKeyEntry lookupKeyByKeyAlias(String var1_1, Goid var2_2) throws FindException, KeyStoreException {
        block41: {
            block40: {
                block39: {
                    block38: {
                        block37: {
                            block36: {
                                try {
                                    if (!this.h) {
                                        this.a();
                                    }
                                }
                                catch (ObjectNotFoundException v0) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v0);
                                }
                                if (Goid.isDefault((Goid)var2_2)) ** GOTO lbl14
                                try {
                                    block42: {
                                        if (!Goid.equals((Goid)this.j, (Goid)var2_2)) break block36;
                                        break block42;
                                        catch (ObjectNotFoundException v1) {
                                            throw SsgKeyStoreManagerImpl.a((Exception)v1);
                                        }
                                    }
                                    v2 = true;
                                    break block37;
                                }
                                catch (ObjectNotFoundException v3) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v3);
                                }
                            }
                            v2 = false;
                        }
                        var3_3 = v2;
                        var4_4 = null;
                        if (!var3_3) {
                            try {
                                var4_4 = this.findByPrimaryKey(var2_2);
                                if (var4_4 != null) {
                                    return var4_4.getCertificateChain(var1_1);
                                }
                            }
                            catch (ObjectNotFoundException var5_5) {
                                try {
                                    if (SsgKeyStoreManagerImpl.logger.isLoggable(Level.FINER)) {
                                        SsgKeyStoreManagerImpl.logger.log(Level.FINER, SsgKeyStoreManagerImpl.k[4], new Object[]{var1_1, var2_2});
                                    }
                                }
                                catch (ObjectNotFoundException v4) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v4);
                                }
                            }
                            catch (FindException var5_6) {
                                try {
                                    if (SsgKeyStoreManagerImpl.logger.isLoggable(Level.FINE)) {
                                        SsgKeyStoreManagerImpl.logger.log(Level.FINE, MessageFormat.format(SsgKeyStoreManagerImpl.k[17], new Object[]{var2_2, var1_1, ExceptionUtils.getMessage((Throwable)var5_6)}), var5_6);
                                    }
                                }
                                catch (ObjectNotFoundException v5) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v5);
                                }
                            }
                            catch (KeyStoreException var5_7) {
                                try {
                                    if (SsgKeyStoreManagerImpl.logger.isLoggable(Level.FINE)) {
                                        SsgKeyStoreManagerImpl.logger.log(Level.FINE, MessageFormat.format(SsgKeyStoreManagerImpl.k[30], new Object[]{var2_2, var1_1, ExceptionUtils.getMessage((Throwable)var5_7)}), var5_7);
                                    }
                                }
                                catch (ObjectNotFoundException v6) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v6);
                                }
                            }
                        }
                        if (var3_3) ** GOTO lbl58
                        try {
                            block43: {
                                if (!this.d.getBooleanProperty(SsgKeyStoreManagerImpl.k[20], true)) break block38;
                                break block43;
                                catch (ObjectNotFoundException v7) {
                                    throw SsgKeyStoreManagerImpl.a((Exception)v7);
                                }
                            }
                            v8 = true;
                            break block39;
                        }
                        catch (ObjectNotFoundException v9) {
                            throw SsgKeyStoreManagerImpl.a((Exception)v9);
                        }
                    }
                    v8 = false;
                }
                var5_9 = v8;
                try {
                    v10 = var5_9 != false ? this.findAll() : Collections.emptyList();
                }
                catch (ObjectNotFoundException v11) {
                    throw SsgKeyStoreManagerImpl.a((Exception)v11);
                }
                var6_10 = v10;
                for (SsgKeyFinder var8_12 : var6_10) {
                    try {
                        if (var8_12 == var4_4) {
                            continue;
                        }
                    }
                    catch (ObjectNotFoundException v12) {
                        throw SsgKeyStoreManagerImpl.a((Exception)v12);
                    }
                    try {
                        return var8_12.getCertificateChain(var1_1);
                    }
                    catch (ObjectNotFoundException var9_13) {
                    }
                }
                try {
                    if (!var5_9) break block40;
                    v13 = SsgKeyStoreManagerImpl.k[29];
                    break block41;
                }
                catch (ObjectNotFoundException v14) {
                    throw SsgKeyStoreManagerImpl.a((Exception)v14);
                }
            }
            var10_14 = SsgKeyStoreManagerImpl.k;
            v13 = var10_14[28] + String.valueOf(var2_2);
        }
        var7_11 = v13;
        var10_14 = SsgKeyStoreManagerImpl.k;
        throw new ObjectNotFoundException(var10_14[0] + var1_1 + var10_14[13] + (String)var7_11);
    }

    public void afterPropertiesSet() throws Exception {
        this.a();
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[31];
                var3_1 = 0;
                var2_2 = "]K\fr\u0007zpdMXqBb<zE_9!`W@R\u0007z#gK^|2b#`TDk\u0003p53M_9\u0010f!fM^|\u0006\u000b{WA7,`9cLIk^rFO}\u0007e7{MFr\u000en>|T]k\u0011w%eST`\u0018B\u0012P`i_%K\u0019Yo`T,L\u0000Bv\u007fM7U\u0007K}v(P0d&\u0012\u001b![3qS\u0007\b<<%z;\r\u0001F_(\u000bN_Q\"X$\fo\u0006\u0003&L/l-DR>CVEo\u0003w53OI`Bb<zE_9\u00193-3JCmBe?fJH9\u000bmpcVI\u007f\u0007q\"v@\fr\u0007z#gK^|BD\u001fZ`\fbS~<]K\fR\u0007z\u0011pGIj\u0011E9\u007fPIkBp5g\u0004U|\u0016#}>\u0004Ew\u0001l\"aAOmBj>zPEx\u000ej*rPEv\f#?a@Ik\u001cpKA7\u000e4$vGD7\tf)`PCk\u0007- rW_n\rq4\u0015xAA9\u0003v$|T^v\u001azpuEEu\u0017q5\u000b@EJ|,f$3l\u007fTyZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004Dj\u000f-\u001epM\\q\u0007qpqAOx\u0017p53PDp\u0011#\u0017rPIn\u0003zp}KH|Bj#3JCmB`?}BE~\u0017q5w\u0004XvBv#v\u0004MwBm\u0013zTD|\u0010#\u0018@i\u0007TAB|\u0010j3/]K\fJ\u0011d\u001bv]jp\fg5a\u0004Mo\u0003j<rF@|Bl>3PDp\u0011#>|@I9\u0015j${\u0004E}_^rFO}\u0007e7{MFr\u000en>|T]k\u0011w%eST`\u0018B\u0012P`i_%K\u0019Yo`T,L\u0000Bv\u007fM7U\u0007K}v(P0d&\u0012\u001b![3qS\u0007\b<<%z;\r\u0001F_(\u000bN_Q\"X$\fo\u0006\u0003&L/l-DR\n3BCl\fgpzJ\f\ncE_j\u0012k\"rWI\b{WA7\u0011`1=JWEXx\u0000b#v\u0004Ov\fw1zJ_9\u000fl\"v\u0004Xq\u0003mp|JI9\tf)`PCk\u0007\\6zHI9\u0010l'3SEm\n#13BCk\u000fb$3KJ9\np==WOx3VV^v\u0010#3{AOr\u000bm73OI`\u0011w?aA\f^-J\u00143_\u001cdBe?a\u0004Mu\u000bb#3_\u001ddX#+!Y]WEXx\u0000b#v\u0004Ov\fw1zJ_9\flpvJXk\u000bf#3MB9\tf)`PCk\u0007\\6zHI9O.p}K\fi\u0010j&rPI9\tf)3IMw\u0003d5~ABmBe5rPYk\u0007ppdM@uBt?aO4WEXx\u0000b#v\u0004Ov\fw1zJ_9\tf)`PCk\u0007\\6zHI9\u0015j${\u0004BvBe?aIMmBd?z@\u0011\u0016xAUJ\u0016l\"vwIx\u0010`8UK^X\u000ej1``ZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004_jBa5pEYj\u0007#${M_9\tf)`PCk\u0007#$jTI9\u000bpp}K\fu\rm7vV\fj\u0017s |VX|\u0006\u0007WajX7O\u0004NWEXx\u0000b#v\u0004Ov\fw1zJ_9\u000fl\"v\u0004Xq\u0003mp|JI9\tf)`PCk\u0007\\6zHI9\u0010l'3SEm\n#13BCk\u000fb$3KJ9\np==jOp\u0012k5a\u0004`@N7\u0002`WzZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004Dj\u000f-#pE\f{\u0007`1fWI9\u0016k9`\u0004kx\u0016f'r]\fw\rg53M_9\fl$3GCw\u0004j7fVI}Bw?3Q_|Bb>3MBm\u0007q>rH\fJ!Bp[wa}ZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004_}\u0000#2vGMl\u0011fpgLEjBD1gA[x\u001b#>|@I9\u000bppfWEw\u0005#1}\u0004dJ/#?a\u0004`l\fbp|V\f~\u0007m5aMO9\u0012q?eMH|\u0010#9}WX|\u0003g\fxAUj\u0016l\"v\u0004e]B";
                var4_3 = "]K\fr\u0007zpdMXqBb<zE_9!`W@R\u0007z#gK^|2b#`TDk\u0003p53M_9\u0010f!fM^|\u0006\u000b{WA7,`9cLIk^rFO}\u0007e7{MFr\u000en>|T]k\u0011w%eST`\u0018B\u0012P`i_%K\u0019Yo`T,L\u0000Bv\u007fM7U\u0007K}v(P0d&\u0012\u001b![3qS\u0007\b<<%z;\r\u0001F_(\u000bN_Q\"X$\fo\u0006\u0003&L/l-DR>CVEo\u0003w53OI`Bb<zE_9\u00193-3JCmBe?fJH9\u000bmpcVI\u007f\u0007q\"v@\fr\u0007z#gK^|BD\u001fZ`\fbS~<]K\fR\u0007z\u0011pGIj\u0011E9\u007fPIkBp5g\u0004U|\u0016#}>\u0004Ew\u0001l\"aAOmBj>zPEx\u000ej*rPEv\f#?a@Ik\u001cpKA7\u000e4$vGD7\tf)`PCk\u0007- rW_n\rq4\u0015xAA9\u0003v$|T^v\u001azpuEEu\u0017q5\u000b@EJ|,f$3l\u007fTyZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004Dj\u000f-\u001epM\\q\u0007qpqAOx\u0017p53PDp\u0011#\u0017rPIn\u0003zp}KH|Bj#3JCmB`?}BE~\u0017q5w\u0004XvBv#v\u0004MwBm\u0013zTD|\u0010#\u0018@i\u0007TAB|\u0010j3/]K\fJ\u0011d\u001bv]jp\fg5a\u0004Mo\u0003j<rF@|Bl>3PDp\u0011#>|@I9\u0015j${\u0004E}_^rFO}\u0007e7{MFr\u000en>|T]k\u0011w%eST`\u0018B\u0012P`i_%K\u0019Yo`T,L\u0000Bv\u007fM7U\u0007K}v(P0d&\u0012\u001b![3qS\u0007\b<<%z;\r\u0001F_(\u000bN_Q\"X$\fo\u0006\u0003&L/l-DR\n3BCl\fgpzJ\f\ncE_j\u0012k\"rWI\b{WA7\u0011`1=JWEXx\u0000b#v\u0004Ov\fw1zJ_9\u000fl\"v\u0004Xq\u0003mp|JI9\tf)`PCk\u0007\\6zHI9\u0010l'3SEm\n#13BCk\u000fb$3KJ9\np==WOx3VV^v\u0010#3{AOr\u000bm73OI`\u0011w?aA\f^-J\u00143_\u001cdBe?a\u0004Mu\u000bb#3_\u001ddX#+!Y]WEXx\u0000b#v\u0004Ov\fw1zJ_9\flpvJXk\u000bf#3MB9\tf)`PCk\u0007\\6zHI9O.p}K\fi\u0010j&rPI9\tf)3IMw\u0003d5~ABmBe5rPYk\u0007ppdM@uBt?aO4WEXx\u0000b#v\u0004Ov\fw1zJ_9\tf)`PCk\u0007\\6zHI9\u0015j${\u0004BvBe?aIMmBd?z@\u0011\u0016xAUJ\u0016l\"vwIx\u0010`8UK^X\u000ej1``ZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004_jBa5pEYj\u0007#${M_9\tf)`PCk\u0007#$jTI9\u000bpp}K\fu\rm7vV\fj\u0017s |VX|\u0006\u0007WajX7O\u0004NWEXx\u0000b#v\u0004Ov\fw1zJ_9\u000fl\"v\u0004Xq\u0003mp|JI9\tf)`PCk\u0007\\6zHI9\u0010l'3SEm\n#13BCk\u000fb$3KJ9\np==jOp\u0012k5a\u0004`@N7\u0002`WzZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004Dj\u000f-#pE\f{\u0007`1fWI9\u0016k9`\u0004kx\u0016f'r]\fw\rg53M_9\fl$3GCw\u0004j7fVI}Bw?3Q_|Bb>3MBm\u0007q>rH\fJ!Bp[wa}ZCBv\u0010j>t\u0004G|\u001bp$|VIF\u0004j<v\u0004^v\u0015#'zPD9\u0003#6|VAx\u0016#?u\u0004_}\u0000#2vGMl\u0011fpgLEjBD1gA[x\u001b#>|@I9\u000bppfWEw\u0005#1}\u0004dJ/#?a\u0004`l\fbp|V\f~\u0007m5aMO9\u0012q?eMH|\u0010#9}WX|\u0003g\fxAUj\u0016l\"v\u0004e]B".length();
                var1_4 = 18;
                var0_5 = -1;
lbl7:
                // 2 sources

                while (true) {
                    v0 = 113;
                    v1 = ++var0_5;
                    v2 = var2_2.substring(v1, v1 + var1_4);
                    v3 = -1;
                    break block9;
                    break;
                }
lbl13:
                // 1 sources

                while (true) {
                    var5[var3_1++] = SsgKeyStoreManagerImpl.a(v0, SsgKeyStoreManagerImpl.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "5\r\u0012~N!n'\u0017\u0004,@3\u0011\u0011\u00191Wdt<\u0006\b5L*pt\b\u000e'V0x&\u0006K\u0019j\rSt\u0018[#\u0005\"x&C\n2L%dt\u0018Z#\u001fdlf\u001e";
                    var4_3 = "5\r\u0012~N!n'\u0017\u0004,@3\u0011\u0011\u00191Wdt<\u0006\b5L*pt\b\u000e'V0x&\u0006K\u0019j\rSt\u0018[#\u0005\"x&C\n2L%dt\u0018Z#\u001fdlf\u001e".length();
                    var1_4 = 12;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 54;
                        v4 = ++var0_5;
                        v2 = var2_2.substring(v4, v4 + var1_4);
                        v3 = 0;
                        break block9;
                        break;
                    }
                    break;
                }
lbl28:
                // 1 sources

                while (true) {
                    var5[var3_1++] = SsgKeyStoreManagerImpl.a(v0, SsgKeyStoreManagerImpl.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    break block10;
                    break;
                }
            }
            switch (v3) {
                default: {
                    ** continue;
                }
                ** case 0:
lbl39:
                // 1 sources

                ** continue;
            }
        }
        SsgKeyStoreManagerImpl.k = var5;
        SsgKeyStoreManagerImpl.a = SsgKeyStoreManagerImpl.k[3];
        SsgKeyStoreManagerImpl.logger = Logger.getLogger(SsgKeyStoreManagerImpl.class.getName());
    }

    private static Exception a(Exception exception) {
        return exception;
    }

    private static char[] a(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x21);
        }
        return cArray;
    }

    /*
     * Handled impossible loop by duplicating code
     * Enabled aggressive block sorting
     */
    private static String a(int n2, char[] cArray) {
        char[] cArray2;
        block11: {
            int n3;
            int n4;
            int n5;
            block10: {
                n5 = n2;
                cArray2 = cArray;
                n4 = cArray.length;
                n3 = 0;
                if (!true) break block10;
                n4 = n4;
                if (n4 <= n3) break block11;
            }
            do {
                n5 = n5;
                cArray2 = cArray2;
                int n6 = n3;
                cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                    case 0 -> 98;
                    case 1 -> 85;
                    case 2 -> 93;
                    case 3 -> 104;
                    case 4 -> 19;
                    case 5 -> 114;
                    default -> 33;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

