package com.l7tech.external.assertions.gatewaygraphql.server.resolver.mutation;

import com.l7tech.external.assertions.gatewaygraphql.EntityTypeInfo;
import com.l7tech.external.assertions.gatewaygraphql.server.data.EntityMappingInstruction;
import com.l7tech.external.assertions.gatewaygraphql.server.data.LdapIdpDTO;
import com.l7tech.external.assertions.gatewaygraphql.server.input.EntityPropertyInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.GroupMappingInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.UserMappingInput;
import com.l7tech.external.assertions.gatewaygraphql.server.resolver.query.IdpResolverHelper;
import com.l7tech.external.assertions.gatewaygraphql.server.util.AssertionLocalBeanFactory;
import com.l7tech.identity.IdentityProviderType;
import com.l7tech.identity.ldap.GroupMappingConfig;
import com.l7tech.identity.ldap.LdapIdentityProviderConfig;
import com.l7tech.identity.ldap.MemberStrategy;
import com.l7tech.identity.ldap.UserMappingConfig;
import com.l7tech.identity.ldap.LdapIdentityProviderConfig.UserCertificateUseType;
import com.l7tech.identity.ldap.LdapIdentityProviderConfig.UserLookupByCertMode;
import com.l7tech.objectmodel.FindException;
import com.l7tech.security.types.CertificateValidationType;
import com.l7tech.server.identity.ldap.LdapIdentityProvider;
import com.l7tech.util.TimeUnit;
import graphql.schema.DataFetchingEnvironment;
import java.util.HashMap;
import java.util.List;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.transaction.PlatformTransactionManager;

public class LdapIdpxMutationResolver extends IdpMutationResolver<LdapIdentityProvider, LdapIdentityProviderConfig, LdapIdpDTO, LdapIdpDTO.LdapIdpInput> {
   private static final String[] b;

   public LdapIdpxMutationResolver(PlatformTransactionManager var1, BeanFactory var2, AssertionLocalBeanFactory var3) {
      super(EntityTypeInfo.LDAP_IDPX, var1, var2, var3.getRequired(IdpResolverHelper.class), IdentityProviderType.LDAP);
   }

   public LdapIdpDTO.LdapIdpsPayload setLdapIdps(List<LdapIdpDTO.LdapIdpInput> var1, DataFetchingEnvironment var2) {
      LdapIdpDTO.LdapIdpsPayload var3 = new LdapIdpDTO.LdapIdpsPayload();

      try {
         this.transformNoDefEntityMappings(var1, var2);
         if (var1.isEmpty()) {
            return var3;
         }
      } catch (IllegalStateException var4) {
         throw a(var4);
      }

      return this.execute(var2, (var3x, var4x) -> {
         var1.forEach(var4xx -> this.doUpsertSilently(var4xx, var3x, var3, var4x));
         return var3;
      });
   }

   public LdapIdpDTO.LdapIdpsPayload deleteLdapIdps(List<String> var1, DataFetchingEnvironment var2) {
      LdapIdpDTO.LdapIdpsPayload var3 = new LdapIdpDTO.LdapIdpsPayload();

      try {
         if (var1.isEmpty()) {
            return var3;
         }
      } catch (IllegalStateException var4) {
         throw a(var4);
      }

      return this.execute(var2, (var3x, var4x) -> {
         var1.forEach(var4xx -> this.doDeleteSilently(var4xx, var3x, var3, var4x));
         return var3;
      });
   }

   protected LdapIdentityProviderConfig toEntity(LdapIdpDTO.LdapIdpInput var1) {
      return LdapIdentityProviderConfig.newLdapIdentityProviderConfig();
   }

   protected LdapIdpDTO toEntityDTO(LdapIdentityProviderConfig var1) {
      return new LdapIdpDTO(var1, this.idpHelper);
   }

   protected LdapIdpDTO.LdapIdpInput toEntityInput(EntityMappingInstruction var1) {
      LdapIdpDTO.LdapIdpInput var2 = new LdapIdpDTO.LdapIdpInput();
      var2.setName(var1.getIdentityValue());
      return var2;
   }

   protected void setEntity(LdapIdpDTO.LdapIdpInput param1, LdapIdentityProviderConfig param2) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: aload 2
      // 002: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.isNewEntity (Lcom/l7tech/objectmodel/PersistentEntity;)Z
      // 005: ifne 02f
      // 008: aload 2
      // 009: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.getTemplateName ()Ljava/lang/String;
      // 00c: aload 1
      // 00d: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getLdapType ()Ljava/lang/String;
      // 010: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 013: ifne 02f
      // 016: goto 01d
      // 019: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/lang/IllegalStateException;)Ljava/lang/IllegalStateException;
      // 01c: athrow
      // 01d: new java/lang/IllegalStateException
      // 020: dup
      // 021: getstatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.b [Ljava/lang/String;
      // 024: bipush 7
      // 026: aaload
      // 027: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;)V
      // 02a: athrow
      // 02b: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/lang/IllegalStateException;)Ljava/lang/IllegalStateException;
      // 02e: athrow
      // 02f: aload 2
      // 030: aload 1
      // 031: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getLdapType ()Ljava/lang/String;
      // 034: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setTemplateName (Ljava/lang/String;)V
      // 037: aload 2
      // 038: aload 1
      // 039: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getName ()Ljava/lang/String;
      // 03c: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setName (Ljava/lang/String;)V
      // 03f: aload 2
      // 040: aload 1
      // 041: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getServerUrls ()Ljava/util/List;
      // 044: bipush 0
      // 045: anewarray 588
      // 048: invokeinterface java/util/List.toArray ([Ljava/lang/Object;)[Ljava/lang/Object; 2
      // 04d: checkcast [Ljava/lang/String;
      // 050: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setLdapUrl ([Ljava/lang/String;)V
      // 053: aload 2
      // 054: aload 1
      // 055: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getUseSslClientAuth ()Ljava/lang/Boolean;
      // 058: invokevirtual java/lang/Boolean.booleanValue ()Z
      // 05b: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setClientAuthEnabled (Z)V
      // 05e: aload 1
      // 05f: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getSslClientKeyAlias ()Ljava/lang/String;
      // 062: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/util/Util.isNotEmpty (Ljava/lang/String;)Z
      // 065: ifeq 085
      // 068: aload 1
      // 069: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getSslClientKeyAlias ()Ljava/lang/String;
      // 06c: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/util/Util.tokenizeKeyAlias (Ljava/lang/String;)[Ljava/lang/String;
      // 06f: astore 3
      // 070: aload 3
      // 071: bipush 0
      // 072: aaload
      // 073: invokestatic com/l7tech/objectmodel/Goid.parseGoid (Ljava/lang/String;)Lcom/l7tech/objectmodel/Goid;
      // 076: astore 4
      // 078: aload 2
      // 079: aload 3
      // 07a: bipush 1
      // 07b: aaload
      // 07c: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setKeyAlias (Ljava/lang/String;)V
      // 07f: aload 2
      // 080: aload 4
      // 082: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setKeystoreId (Lcom/l7tech/objectmodel/Goid;)V
      // 085: aload 2
      // 086: aload 1
      // 087: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getSearchBase ()Ljava/lang/String;
      // 08a: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setSearchBase (Ljava/lang/String;)V
      // 08d: aload 2
      // 08e: aload 1
      // 08f: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getWritable ()Ljava/lang/Boolean;
      // 092: invokevirtual java/lang/Boolean.booleanValue ()Z
      // 095: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setWritable (Z)V
      // 098: aload 2
      // 099: aload 1
      // 09a: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getWriteBase ()Ljava/lang/String;
      // 09d: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setWriteBase (Ljava/lang/String;)V
      // 0a0: aload 2
      // 0a1: aload 1
      // 0a2: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getBindDn ()Ljava/lang/String;
      // 0a5: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setBindDN (Ljava/lang/String;)V
      // 0a8: aload 2
      // 0a9: aload 1
      // 0aa: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getBindPassword ()Ljava/lang/String;
      // 0ad: aload 1
      // 0ae: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getExecutionContext ()Lcom/l7tech/external/assertions/gatewaygraphql/server/resolver/ResolverExecutionContext;
      // 0b1: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/ResolverExecutionContext.getEncryptionPassphrase ()Ljava/lang/String;
      // 0b4: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/util/SecretUtil.decode (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      // 0b7: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setBindPasswd (Ljava/lang/String;)V
      // 0ba: aload 1
      // 0bb: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getSpecifiedAttributes ()Ljava/util/List;
      // 0be: astore 3
      // 0bf: aload 3
      // 0c0: ifnull 0e0
      // 0c3: aload 2
      // 0c4: aload 3
      // 0c5: aload 3
      // 0c6: invokeinterface java/util/List.size ()I 1
      // 0cb: anewarray 588
      // 0ce: invokeinterface java/util/List.toArray ([Ljava/lang/Object;)[Ljava/lang/Object; 2
      // 0d3: checkcast [Ljava/lang/String;
      // 0d6: invokevirtual com/l7tech/identity/ldap/LdapIdentityProviderConfig.setReturningAttributes ([Ljava/lang/String;)V
      // 0d9: goto 0e0
      // 0dc: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/lang/IllegalStateException;)Ljava/lang/IllegalStateException;
      // 0df: athrow
      // 0e0: aload 1
      // 0e1: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getUserMappings ()Ljava/util/List;
      // 0e4: ifnull 0f4
      // 0e7: aload 0
      // 0e8: aload 2
      // 0e9: aload 1
      // 0ea: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Lcom/l7tech/identity/ldap/LdapIdentityProviderConfig;Lcom/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput;)V
      // 0ed: goto 0f4
      // 0f0: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/lang/IllegalStateException;)Ljava/lang/IllegalStateException;
      // 0f3: athrow
      // 0f4: aload 1
      // 0f5: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getGroupMappings ()Ljava/util/List;
      // 0f8: ifnull 108
      // 0fb: aload 0
      // 0fc: aload 2
      // 0fd: aload 1
      // 0fe: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.b (Lcom/l7tech/identity/ldap/LdapIdentityProviderConfig;Lcom/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput;)V
      // 101: goto 108
      // 104: invokestatic com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/lang/IllegalStateException;)Ljava/lang/IllegalStateException;
      // 107: athrow
      // 108: aload 0
      // 109: aload 1
      // 10a: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getProperties ()Ljava/util/List;
      // 10d: aload 2
      // 10e: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.b (Ljava/util/List;Lcom/l7tech/identity/ldap/LdapIdentityProviderConfig;)V
      // 111: aload 0
      // 112: aload 1
      // 113: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/data/LdapIdpDTO$LdapIdpInput.getNtlmProperties ()Ljava/util/List;
      // 116: aload 2
      // 117: invokevirtual com/l7tech/external/assertions/gatewaygraphql/server/resolver/mutation/LdapIdpxMutationResolver.a (Ljava/util/List;Lcom/l7tech/identity/ldap/LdapIdentityProviderConfig;)V
      // 11a: return
      // try (0 -> 10): 11 java/lang/IllegalStateException
      // try (4 -> 20): 20 java/lang/IllegalStateException
      // try (92 -> 102): 103 java/lang/IllegalStateException
      // try (105 -> 112): 113 java/lang/IllegalStateException
      // try (115 -> 122): 123 java/lang/IllegalStateException
   }

   private void a(List<EntityPropertyInput> var1, LdapIdentityProviderConfig var2) {
      if (var1 != null) {
         HashMap var3 = new HashMap();

         for (EntityPropertyInput var5 : var1) {
            var3.put(var5.getName(), var5.getValue());
         }

         var2.setNtlmAuthenticationProviderProperties(var3);
      }
   }

   private void b(List<EntityPropertyInput> var1, LdapIdentityProviderConfig var2) {
      if (var1 != null) {
         for (EntityPropertyInput var4 : var1) {
            try {
               if (b[8].equals(var4.getName())) {
                  var2.setReconnectTimeout(Long.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var17) {
               throw a(var17);
            }

            try {
               if (b[3].equals(var4.getName())) {
                  var2.setAdminEnabled(Boolean.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var16) {
               throw a(var16);
            }

            try {
               if (b[13].equals(var4.getName())) {
                  var2.setGroupCacheMaxAge(Long.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var15) {
               throw a(var15);
            }

            try {
               if (b[12].equals(var4.getName())) {
                  var2.setGroupCacheMaxAgeUnit(TimeUnit.fromAbbreviation(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var14) {
               throw a(var14);
            }

            try {
               if (b[2].equals(var4.getName())) {
                  var2.setGroupCacheSize(Integer.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var13) {
               throw a(var13);
            }

            try {
               if (b[9].equals(var4.getName())) {
                  var2.setGroupMaxNesting(Integer.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var12) {
               throw a(var12);
            }

            try {
               if (b[5].equals(var4.getName())) {
                  var2.setGroupMembershipCaseInsensitive(Boolean.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var11) {
               throw a(var11);
            }

            try {
               if (b[10].equals(var4.getName())) {
                  var2.setUserCertificateIndexSearchFilter(var4.getValue());
                  continue;
               }
            } catch (IllegalStateException var10) {
               throw a(var10);
            }

            try {
               if (b[6].equals(var4.getName())) {
                  var2.setUserCertificateIssuerSerialSearchFilter(var4.getValue());
                  continue;
               }
            } catch (IllegalStateException var9) {
               throw a(var9);
            }

            try {
               if (b[4].equals(var4.getName())) {
                  var2.setUserCertificateSKISearchFilter(var4.getValue());
                  continue;
               }
            } catch (IllegalStateException var8) {
               throw a(var8);
            }

            try {
               if (b[0].equals(var4.getName())) {
                  var2.setUserCertificateUseType(UserCertificateUseType.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var7) {
               throw a(var7);
            }

            try {
               if (b[11].equals(var4.getName())) {
                  var2.setUserLookupByCertMode(UserLookupByCertMode.valueOf(var4.getValue()));
                  continue;
               }
            } catch (IllegalStateException var6) {
               throw a(var6);
            }

            try {
               if (b[1].equals(var4.getName())) {
                  var2.setCertificateValidationType(CertificateValidationType.valueOf(var4.getValue()));
               }
            } catch (IllegalStateException var5) {
               throw a(var5);
            }
         }
      }
   }

   protected void resetEntitySelectively(LdapIdpDTO.LdapIdpInput var1, LdapIdentityProviderConfig var2) {
      var2.setKeystoreId(null);
      var2.setKeyAlias(null);
   }

   protected LdapIdentityProviderConfig doFind(LdapIdpDTO.LdapIdpInput var1) throws FindException {
      return this.doFindBy(var1.getName());
   }

   private void a(LdapIdentityProviderConfig var1, LdapIdpDTO.LdapIdpInput var2) {
      var1.setUserMappings(new UserMappingConfig[0]);

      for (UserMappingInput var4 : var2.getUserMappings()) {
         UserMappingConfig var5 = new UserMappingConfig();
         var5.setNameAttrName(var4.getNameAttrName());
         var5.setObjClass(var4.getObjClass());
         var5.setLoginAttrName(var4.getLoginAttrName());
         var5.setPasswdAttrName(var4.getPasswdAttrName());
         var5.setFirstNameAttrName(var4.getFirstNameAttrName());
         var5.setLastNameAttrName(var4.getLastNameAttrName());
         var5.setEmailNameAttrName(var4.getEmailNameAttrName());
         var5.setKerberosAttrName(var4.getKerberosAttrName());
         var5.setKerberosEnterpriseAttrName(var4.getKerberosEnterpriseAttrName());
         var5.setUserCertAttrName(var4.getUserCertAttrName());
         var1.setUserMapping(var5);
      }
   }

   private void b(LdapIdentityProviderConfig var1, LdapIdpDTO.LdapIdpInput var2) {
      var1.setGroupMappings(new GroupMappingConfig[0]);

      for (GroupMappingInput var4 : var2.getGroupMappings()) {
         GroupMappingConfig var5 = new GroupMappingConfig();
         var5.setObjClass(var4.getObjClass());
         var5.setNameAttrName(var4.getNameAttrName());
         var5.setMemberAttrName(var4.getMemberAttrName());
         MemberStrategy var6 = new MemberStrategy();
         var6.setVal(var4.getMemberStrategy().getVal());
         var5.setMemberStrategy(var6);
         var1.setGroupMapping(var5);
      }
   }

   private static IllegalStateException a(IllegalStateException var0) {
      return var0;
   }

   static {
      String[] var5 = new String[14];
      int var3 = 0;
      String var2 = "^@y\u0007Nla_fo\u0010YpcN\u0019HVn\u0001dozHRh\u0010[h\u007fBW}\u0001df}\u007fJl\u0010\u000eLAs\u0000}JrH[y&dsv\fJWq\u001ccL}JQp\u0010i\u0011^@y\u0007Nla_`y\u0014\u007fj{xxU\u001eLAs\u0000}DvFQy\u0007~az[p}\u0006h@}XVr\u0006d}z]V\u001a^@y\u0007Nla_`y\u0014\u007fj{b@o\u0000h{@NAu\u0014a0gW}\u0005-}j[V<\u0016lg}DG<\u0017h)pCRr\u0012hm3M\\nUhqzXGu\u001bj)vEGu\u0001t'\u0010YV\u007f\u001acgvHGH\u001c`l|^G\u000fLAs\u0000}DrS}y\u0006y`}L\r^@y\u0007Nla_zr\u0011hq\u0014^@y\u0007Af|@Fl7tJvYGQ\u001ail";
      int var4 = "^@y\u0007Nla_fo\u0010YpcN\u0019HVn\u0001dozHRh\u0010[h\u007fBW}\u0001df}\u007fJl\u0010\u000eLAs\u0000}JrH[y&dsv\fJWq\u001ccL}JQp\u0010i\u0011^@y\u0007Nla_`y\u0014\u007fj{xxU\u001eLAs\u0000}DvFQy\u0007~az[p}\u0006h@}XVr\u0006d}z]V\u001a^@y\u0007Nla_`y\u0014\u007fj{b@o\u0000h{@NAu\u0014a0gW}\u0005-}j[V<\u0016lg}DG<\u0017h)pCRr\u0012hm3M\\nUhqzXGu\u001bj)vEGu\u0001t'\u0010YV\u007f\u001acgvHGH\u001c`l|^G\u000fLAs\u0000}DrS}y\u0006y`}L\r^@y\u0007Nla_zr\u0011hq\u0014^@y\u0007Af|@Fl7tJvYGQ\u001ail"
         .length();
      char var1 = 15;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 74;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = c(var10000, b(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     b = var5;
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var8;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "\u0010\u001d/\\!\u0016.\u0014\u0007%d0-\u000e\u0010\n\u0015G8!\u0010\u0010\u001d/\\!\u0016.\u0014\u0007%d0-\u000e\u0010\n";
                  var4 = "\u0010\u001d/\\!\u0016.\u0014\u0007%d0-\u000e\u0010\n\u0015G8!\u0010\u0010\u001d/\\!\u0016.\u0014\u0007%d0-\u000e\u0010\n".length();
                  var1 = 20;
                  var7 = -1;
            }

            var10000 = 22;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static char[] b(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 89);
      }

      return var10000;
   }

   private static String c(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 97;
            case 1 -> 121;
            case 2 -> 86;
            case 3 -> 63;
            case 4 -> 71;
            case 5 -> 67;
            default -> 89;
         });
      }

      return new String(var10001).intern();
   }
}
