package com.l7tech.server.security;

import com.l7tech.gateway.common.LicenseManager;
import com.l7tech.server.RuntimeLifecycleException;
import com.l7tech.util.Config;
import com.l7tech.util.SyspropUtil;
import java.util.logging.Logger;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;

public class CryptoInitializer implements ApplicationListener {
   private static final Logger a;
   private final Config b;
   private final LicenseManager c;
   private boolean d;
   private static final String[] e;

   public CryptoInitializer(Config var1, LicenseManager var2) {
      this.b = var1;
      this.c = var2;
      this.a();
   }

   private void a() {
      try {
         if (this.c.isFeatureEnabled(e[3])) {
            this.d = true;
            SyspropUtil.setProperty(e[14], e[7]);
         }
      } catch (RuntimeLifecycleException var1) {
         throw a(var1);
      }
   }

   private void b() {
      // $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:
      // 00: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 03: astore 3
      // 04: aload 3
      // 05: bipush 4
      // 06: aaload
      // 07: invokestatic com/l7tech/util/SyspropUtil.getProperty (Ljava/lang/String;)Ljava/lang/String;
      // 0a: astore 1
      // 0b: aload 1
      // 0c: ifnonnull 40
      // 0f: aload 0
      // 10: getfield com/l7tech/server/security/CryptoInitializer.b Lcom/l7tech/util/Config;
      // 13: aload 3
      // 14: bipush 6
      // 16: aaload
      // 17: bipush 0
      // 18: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 1d: ifeq 40
      // 20: goto 27
      // 23: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 26: athrow
      // 27: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 2a: astore 3
      // 2b: aload 3
      // 2c: bipush 12
      // 2e: aaload
      // 2f: astore 2
      // 30: getstatic com/l7tech/server/security/CryptoInitializer.a Ljava/util/logging/Logger;
      // 33: aload 2
      // 34: invokevirtual java/util/logging/Logger.severe (Ljava/lang/String;)V
      // 37: new com/l7tech/server/RuntimeLifecycleException
      // 3a: dup
      // 3b: aload 2
      // 3c: invokespecial com/l7tech/server/RuntimeLifecycleException.<init> (Ljava/lang/String;)V
      // 3f: athrow
      // 40: aload 1
      // 41: ifnull 8e
      // 44: aload 1
      // 45: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 48: bipush 11
      // 4a: aaload
      // 4b: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 4e: ifne 8e
      // 51: goto 58
      // 54: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 57: athrow
      // 58: aload 1
      // 59: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 5c: bipush 0
      // 5d: aaload
      // 5e: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 61: ifne 8e
      // 64: goto 6b
      // 67: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 6a: athrow
      // 6b: aload 1
      // 6c: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 6f: astore 3
      // 70: aload 3
      // 71: bipush 13
      // 73: aaload
      // 74: swap
      // 75: aload 3
      // 76: bipush 5
      // 77: aaload
      // 78: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001" ]
      // 7d: astore 2
      // 7e: getstatic com/l7tech/server/security/CryptoInitializer.a Ljava/util/logging/Logger;
      // 81: aload 2
      // 82: invokevirtual java/util/logging/Logger.severe (Ljava/lang/String;)V
      // 85: new com/l7tech/server/RuntimeLifecycleException
      // 88: dup
      // 89: aload 2
      // 8a: invokespecial com/l7tech/server/RuntimeLifecycleException.<init> (Ljava/lang/String;)V
      // 8d: athrow
      // 8e: return
      // try (7 -> 17): 18 com/l7tech/server/RuntimeLifecycleException
      // try (34 -> 42): 43 com/l7tech/server/RuntimeLifecycleException
      // try (36 -> 51): 52 com/l7tech/server/RuntimeLifecycleException
   }

   public void onApplicationEvent(ApplicationEvent param1) {
      // $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:
      // 00: aload 1
      // 01: instanceof com/l7tech/server/event/system/Starting
      // 04: ifeq 8f
      // 07: aload 0
      // 08: invokevirtual com/l7tech/server/security/CryptoInitializer.b ()V
      // 0b: aload 0
      // 0c: getfield com/l7tech/server/security/CryptoInitializer.d Z
      // 0f: ifeq 41
      // 12: goto 19
      // 15: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 18: athrow
      // 19: invokestatic com/l7tech/security/prov/JceProvider.getInstance ()Lcom/l7tech/security/prov/JceProvider;
      // 1c: invokevirtual com/l7tech/security/prov/JceProvider.isFips140ModeEnabled ()Z
      // 1f: ifne 41
      // 22: goto 29
      // 25: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 28: athrow
      // 29: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 2c: astore 3
      // 2d: aload 3
      // 2e: bipush 1
      // 2f: aaload
      // 30: astore 2
      // 31: getstatic com/l7tech/server/security/CryptoInitializer.a Ljava/util/logging/Logger;
      // 34: aload 2
      // 35: invokevirtual java/util/logging/Logger.severe (Ljava/lang/String;)V
      // 38: new java/lang/IllegalStateException
      // 3b: dup
      // 3c: aload 2
      // 3d: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;)V
      // 40: athrow
      // 41: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 44: bipush 9
      // 46: aaload
      // 47: bipush 1
      // 48: invokestatic com/l7tech/util/SyspropUtil.getBoolean (Ljava/lang/String;Z)Z
      // 4b: ifeq 8f
      // 4e: new java/security/SecureRandom
      // 51: dup
      // 52: invokespecial java/security/SecureRandom.<init> ()V
      // 55: invokevirtual java/security/SecureRandom.getAlgorithm ()Ljava/lang/String;
      // 58: invokevirtual java/lang/String.toUpperCase ()Ljava/lang/String;
      // 5b: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 5e: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 61: bipush 2
      // 62: aaload
      // 63: invokevirtual java/lang/String.contains (Ljava/lang/CharSequence;)Z
      // 66: ifeq 8f
      // 69: goto 70
      // 6c: invokestatic com/l7tech/server/security/CryptoInitializer.a (Lcom/l7tech/server/RuntimeLifecycleException;)Lcom/l7tech/server/RuntimeLifecycleException;
      // 6f: athrow
      // 70: getstatic com/l7tech/server/security/CryptoInitializer.e [Ljava/lang/String;
      // 73: astore 3
      // 74: aload 3
      // 75: bipush 8
      // 77: aaload
      // 78: astore 2
      // 79: getstatic com/l7tech/server/security/CryptoInitializer.a Ljava/util/logging/Logger;
      // 7c: aload 3
      // 7d: bipush 10
      // 7f: aaload
      // 80: invokevirtual java/util/logging/Logger.severe (Ljava/lang/String;)V
      // 83: new java/lang/RuntimeException
      // 86: dup
      // 87: aload 3
      // 88: bipush 10
      // 8a: aaload
      // 8b: invokespecial java/lang/RuntimeException.<init> (Ljava/lang/String;)V
      // 8e: athrow
      // 8f: return
      // try (0 -> 8): 9 com/l7tech/server/RuntimeLifecycleException
      // try (3 -> 14): 15 com/l7tech/server/RuntimeLifecycleException
      // try (31 -> 48): 49 com/l7tech/server/RuntimeLifecycleException
   }

   static {
      String[] var5 = new String[15];
      int var3 = 0;
      String var2 = "o\"_\bs\u0082O\u0002g:Z\u0017(O\nc(6\u001c<9c^\u0014rH(`0\u0013\ts\\}`1V\u001f6Oq)7[\u001e6N}{1V\u0015b\rd` V\u0015eH(k6G[uB}e'\u0013\u0015yY(k&\u0013\u001exLje&W[c^ag$\u0013\u000f~H(j6A\tsC|) A\u0002fYgn1R\u000b~T(y1\\\r\u007fIm{c@\u001ebYag$@U\u0006L\u0000w)Tj\u0013o/R\u001c,kay0~\u0014rHIe4R\u0002e j,^Uz\u001a|l [UeHk|1Z\u000fo\u0003n`3@UsCik/V\u001f\u0093.m\u00132p\r|a*@[f_gy&A\u000fo\razc@\u001eb\u0001(`7\u0013\u0016c^|)+R\rs\ri)5R\u0017cH(f%\u0013\u001e\u007fY`l1\u0013\u000fdXm),A[pLdz&\u001d[WA|l1]\u001abD~l/JW6Y`lcC\ty]m{7J[uLf)!V[cC{l7\u001f[\u007fC(~+Z\u0018~\rkh0V[PdXZcZ\b6Iaz\"Q\u0017sI&\u0015z&P\u000edD|pmU\u0012f^&l-R\u0019zHl\u0004}1F\u001e©O\u0002g:Z\u0017(M&U\u001acA|)\u0010V\u0018c_m[\"]\u001fy@(h/T\u0014dD|a.\u0013\u001af]mh1@[bB(k&\u0013?cLd)\u0006p[R\u007fJNo\u0013\f~DkacZ\b6Cg}cC\u001ed@a}7V\u001f8\r(Z&G[eT{}&^[f_gy&A\u000fo\rkf.\u001d\u0017!Ymj+\u001d\bsN}{*G\u00028_fnmQ\u0017wNce*@\u000f8Hkm1Q\u001c+Kie0V[bB(f5V\tdDll(j,^Uz\u001a|l [UeHk|1Z\u000fo\u0003zg$\u001d\u0019zLkb/Z\bb\u0003mj'A\u0019q©O\u0002g:Z\u0017(M&U\u001acA|)\u0010V\u0018c_m[\"]\u001fy@(h/T\u0014dD|a.\u0013\u001af]mh1@[bB(k&\u0013?cLd)\u0006p[R\u007fJNo\u0013\f~DkacZ\b6Cg}cC\u001ed@a}7V\u001f8\r(Z&G[eT{}&^[f_gy&A\u000fo\rkf.\u001d\u0017!Ymj+\u001d\bsN}{*G\u00028_fnmQ\u0017wNce*@\u000f8Hkm1Q\u001c+Kie0V[bB(f5V\tdDll\u0004}1F\u001eØO\u0002g:Z\u0017(]+V[PdXZc@\u0002eYmdcC\ty]m{7J[\u007f^(|-@\u001eb\r\u007fa*_\u001e6Y`lcP\u0017c^|l1\u001e\f\u007fIm)3A\u0014fHz}:\u0013\u0012e\r{l7\u0013\u000fy\r|{6VU6y`lc@\u0002eYmdcC\ty]m{7JA6Ngdm_LbHkam@\u001euXz`7JUpDxzmV\u0015wOdl'\u0013\u0016c^|)!V[eH|)7\\[b_}lcG\u00146Hfh!_\u001e6kAY\u0010\u0013\u0014x\r{}\"A\u000fc]&)\u0017[\u001e6n_YcZ\b6Cg)/\\\u0015qHz)6@\u001er\u0003";
      int var4 = "o\"_\bs\u0082O\u0002g:Z\u0017(O\nc(6\u001c<9c^\u0014rH(`0\u0013\ts\\}`1V\u001f6Oq)7[\u001e6N}{1V\u0015b\rd` V\u0015eH(k6G[uB}e'\u0013\u0015yY(k&\u0013\u001exLje&W[c^ag$\u0013\u000f~H(j6A\tsC|) A\u0002fYgn1R\u000b~T(y1\\\r\u007fIm{c@\u001ebYag$@U\u0006L\u0000w)Tj\u0013o/R\u001c,kay0~\u0014rHIe4R\u0002e j,^Uz\u001a|l [UeHk|1Z\u000fo\u0003n`3@UsCik/V\u001f\u0093.m\u00132p\r|a*@[f_gy&A\u000fo\razc@\u001eb\u0001(`7\u0013\u0016c^|)+R\rs\ri)5R\u0017cH(f%\u0013\u001e\u007fY`l1\u0013\u000fdXm),A[pLdz&\u001d[WA|l1]\u001abD~l/JW6Y`lcC\ty]m{7J[uLf)!V[cC{l7\u001f[\u007fC(~+Z\u0018~\rkh0V[PdXZcZ\b6Iaz\"Q\u0017sI&\u0015z&P\u000edD|pmU\u0012f^&l-R\u0019zHl\u0004}1F\u001e©O\u0002g:Z\u0017(M&U\u001acA|)\u0010V\u0018c_m[\"]\u001fy@(h/T\u0014dD|a.\u0013\u001af]mh1@[bB(k&\u0013?cLd)\u0006p[R\u007fJNo\u0013\f~DkacZ\b6Cg}cC\u001ed@a}7V\u001f8\r(Z&G[eT{}&^[f_gy&A\u000fo\rkf.\u001d\u0017!Ymj+\u001d\bsN}{*G\u00028_fnmQ\u0017wNce*@\u000f8Hkm1Q\u001c+Kie0V[bB(f5V\tdDll(j,^Uz\u001a|l [UeHk|1Z\u000fo\u0003zg$\u001d\u0019zLkb/Z\bb\u0003mj'A\u0019q©O\u0002g:Z\u0017(M&U\u001acA|)\u0010V\u0018c_m[\"]\u001fy@(h/T\u0014dD|a.\u0013\u001af]mh1@[bB(k&\u0013?cLd)\u0006p[R\u007fJNo\u0013\f~DkacZ\b6Cg}cC\u001ed@a}7V\u001f8\r(Z&G[eT{}&^[f_gy&A\u000fo\rkf.\u001d\u0017!Ymj+\u001d\bsN}{*G\u00028_fnmQ\u0017wNce*@\u000f8Hkm1Q\u001c+Kie0V[bB(f5V\tdDll\u0004}1F\u001eØO\u0002g:Z\u0017(]+V[PdXZc@\u0002eYmdcC\ty]m{7J[\u007f^(|-@\u001eb\r\u007fa*_\u001e6Y`lcP\u0017c^|l1\u001e\f\u007fIm)3A\u0014fHz}:\u0013\u0012e\r{l7\u0013\u000fy\r|{6VU6y`lc@\u0002eYmdcC\ty]m{7JA6Ngdm_LbHkam@\u001euXz`7JUpDxzmV\u0015wOdl'\u0013\u0016c^|)!V[eH|)7\\[b_}lcG\u00146Hfh!_\u001e6kAY\u0010\u0013\u0014x\r{}\"A\u000fc]&)\u0017[\u001e6n_YcZ\b6Cg)/\\\u0015qHz)6@\u001er\u0003"
         .length();
      char var1 = 5;
      int var7 = -1;

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

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     e = var5;
                     a = Logger.getLogger(CryptoInitializer.class.getName());
                     return;
                  }

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

                  var2 = "/b\u0007Z:wH=K6;\u00054\u001b\u001dF>;\u0006?\u0007\u0019F!o\u000fm\u000b\u0006N}wA9\r\nK}h\u0013.\u001d\u001bJ'bX+\u0001\u0019P}~\u0018,\n\u0005F7;\u001e,\u001bIB=;\u001f#\u001e\bO:\u007fV;\t\u0005V6!Vj&\nL>5\u001az\u001c\f@;5\u0005(\u000b\u001cQ:o\u000fc\u000e\u0000S 5\u0017!\u001f\bZ ^\u0018,\n\u0005F7";
                  var4 = "/b\u0007Z:wH=K6;\u00054\u001b\u001dF>;\u0006?\u0007\u0019F!o\u000fm\u000b\u0006N}wA9\r\nK}h\u0013.\u001d\u001bJ'bX+\u0001\u0019P}~\u0018,\n\u0005F7;\u001e,\u001bIB=;\u001f#\u001e\bO:\u007fV;\t\u0005V6!Vj&\nL>5\u001az\u001c\f@;5\u0005(\u000b\u001cQ:o\u000fc\u000e\u0000S 5\u0017!\u001f\bZ ^\u0018,\n\u0005F7"
                     .length();
                  var1 = 'S';
                  var7 = -1;
            }

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

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

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

      return var10000;
   }

   private static String a(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 -> 81;
            case 1 -> 27;
            case 2 -> 107;
            case 3 -> 35;
            case 4 -> 78;
            case 5 -> 117;
            default -> 80;
         });
      }

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