package com.l7tech.server.transport.ftp;

import com.jscape.inet.ftp.FtpException;
import com.jscape.inet.ftps.FtpsCertificateVerifier;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLSession;
import javax.net.ssl.X509TrustManager;

class f implements FtpsCertificateVerifier {
   private final X509TrustManager a;
   private final HostnameVerifier b;
   private final String c;
   private boolean d = false;
   private FtpException e;
   static final boolean f;
   private static final String[] g;

   public f(X509TrustManager var1, HostnameVerifier var2, String var3) {
      assert var1 != null;
      assert var3 != null;
      this.a = var1;
      this.b = var2;
      this.c = var3;
   }

   public boolean authorized() {
      return this.d;
   }

   public void verify(SSLSession 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:
      // 000: getstatic com/l7tech/server/transport/ftp/FtpClientUtils.a Ljava/util/logging/Logger;
      // 003: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 006: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 009: ifeq 02d
      // 00c: getstatic com/l7tech/server/transport/ftp/FtpClientUtils.a Ljava/util/logging/Logger;
      // 00f: aload 0
      // 010: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 013: getstatic com/l7tech/server/transport/ftp/f.g [Ljava/lang/String;
      // 016: bipush 0
      // 017: aaload
      // 018: swap
      // 019: getstatic com/l7tech/server/transport/ftp/f.g [Ljava/lang/String;
      // 01c: bipush 1
      // 01d: aaload
      // 01e: 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" ]
      // 023: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 026: goto 02d
      // 029: invokestatic com/l7tech/server/transport/ftp/f.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 02c: athrow
      // 02d: aload 1
      // 02e: invokeinterface javax/net/ssl/SSLSession.getPeerCertificates ()[Ljava/security/cert/Certificate; 1
      // 033: astore 2
      // 034: goto 05f
      // 037: astore 3
      // 038: aload 0
      // 039: new com/jscape/inet/ftp/FtpException
      // 03c: dup
      // 03d: getstatic com/l7tech/gateway/common/audit/SystemMessages.FTP_SSL_NO_CERT Lcom/l7tech/gateway/common/audit/Messages$M;
      // 040: invokevirtual com/l7tech/gateway/common/audit/Messages$M.getMessage ()Ljava/lang/String;
      // 043: bipush 2
      // 044: anewarray 83
      // 047: dup
      // 048: bipush 0
      // 049: aload 0
      // 04a: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 04d: aastore
      // 04e: dup
      // 04f: bipush 1
      // 050: aload 3
      // 051: invokevirtual javax/net/ssl/SSLPeerUnverifiedException.getMessage ()Ljava/lang/String;
      // 054: aastore
      // 055: invokestatic java/text/MessageFormat.format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
      // 058: invokespecial com/jscape/inet/ftp/FtpException.<init> (Ljava/lang/String;)V
      // 05b: putfield com/l7tech/server/transport/ftp/f.e Lcom/jscape/inet/ftp/FtpException;
      // 05e: return
      // 05f: aload 2
      // 060: arraylength
      // 061: anewarray 6
      // 064: astore 3
      // 065: bipush 0
      // 066: istore 4
      // 068: iload 4
      // 06a: aload 2
      // 06b: arraylength
      // 06c: if_icmpge 0b8
      // 06f: aload 2
      // 070: iload 4
      // 072: aaload
      // 073: instanceof java/security/cert/X509Certificate
      // 076: ifeq 092
      // 079: goto 080
      // 07c: invokestatic com/l7tech/server/transport/ftp/f.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 07f: athrow
      // 080: aload 3
      // 081: iload 4
      // 083: aload 2
      // 084: iload 4
      // 086: aaload
      // 087: checkcast java/security/cert/X509Certificate
      // 08a: aastore
      // 08b: goto 0b2
      // 08e: invokestatic com/l7tech/server/transport/ftp/f.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 091: athrow
      // 092: aload 0
      // 093: new com/jscape/inet/ftp/FtpException
      // 096: dup
      // 097: getstatic com/l7tech/gateway/common/audit/SystemMessages.FTP_SSL_NOT_X509 Lcom/l7tech/gateway/common/audit/Messages$M;
      // 09a: invokevirtual com/l7tech/gateway/common/audit/Messages$M.getMessage ()Ljava/lang/String;
      // 09d: bipush 1
      // 09e: anewarray 83
      // 0a1: dup
      // 0a2: bipush 0
      // 0a3: aload 0
      // 0a4: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 0a7: aastore
      // 0a8: invokestatic java/text/MessageFormat.format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
      // 0ab: invokespecial com/jscape/inet/ftp/FtpException.<init> (Ljava/lang/String;)V
      // 0ae: putfield com/l7tech/server/transport/ftp/f.e Lcom/jscape/inet/ftp/FtpException;
      // 0b1: return
      // 0b2: iinc 4 1
      // 0b5: goto 068
      // 0b8: aload 0
      // 0b9: getfield com/l7tech/server/transport/ftp/f.a Ljavax/net/ssl/X509TrustManager;
      // 0bc: aload 3
      // 0bd: aload 1
      // 0be: invokeinterface javax/net/ssl/SSLSession.getCipherSuite ()Ljava/lang/String; 1
      // 0c3: invokestatic com/l7tech/common/io/CertUtils.extractAuthType (Ljava/lang/String;)Ljava/lang/String;
      // 0c6: invokeinterface javax/net/ssl/X509TrustManager.checkServerTrusted ([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V 3
      // 0cb: aload 0
      // 0cc: getfield com/l7tech/server/transport/ftp/f.b Ljavax/net/ssl/HostnameVerifier;
      // 0cf: ifnull 0ea
      // 0d2: aload 0
      // 0d3: getfield com/l7tech/server/transport/ftp/f.b Ljavax/net/ssl/HostnameVerifier;
      // 0d6: aload 0
      // 0d7: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 0da: aload 1
      // 0db: invokeinterface javax/net/ssl/HostnameVerifier.verify (Ljava/lang/String;Ljavax/net/ssl/SSLSession;)Z 3
      // 0e0: ifeq 0fb
      // 0e3: goto 0ea
      // 0e6: invokestatic com/l7tech/server/transport/ftp/f.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0e9: athrow
      // 0ea: aload 0
      // 0eb: bipush 1
      // 0ec: putfield com/l7tech/server/transport/ftp/f.d Z
      // 0ef: aload 0
      // 0f0: aconst_null
      // 0f1: putfield com/l7tech/server/transport/ftp/f.e Lcom/jscape/inet/ftp/FtpException;
      // 0f4: goto 122
      // 0f7: invokestatic com/l7tech/server/transport/ftp/f.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0fa: athrow
      // 0fb: aload 0
      // 0fc: new com/jscape/inet/ftp/FtpException
      // 0ff: dup
      // 100: getstatic com/l7tech/gateway/common/audit/SystemMessages.FTP_SSL_UNTRUSTED Lcom/l7tech/gateway/common/audit/Messages$M;
      // 103: invokevirtual com/l7tech/gateway/common/audit/Messages$M.getMessage ()Ljava/lang/String;
      // 106: bipush 2
      // 107: anewarray 83
      // 10a: dup
      // 10b: bipush 0
      // 10c: aload 0
      // 10d: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 110: aastore
      // 111: dup
      // 112: bipush 1
      // 113: getstatic com/l7tech/server/transport/ftp/f.g [Ljava/lang/String;
      // 116: bipush 2
      // 117: aaload
      // 118: aastore
      // 119: invokestatic java/text/MessageFormat.format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
      // 11c: invokespecial com/jscape/inet/ftp/FtpException.<init> (Ljava/lang/String;)V
      // 11f: putfield com/l7tech/server/transport/ftp/f.e Lcom/jscape/inet/ftp/FtpException;
      // 122: goto 14e
      // 125: astore 4
      // 127: aload 0
      // 128: new com/jscape/inet/ftp/FtpException
      // 12b: dup
      // 12c: getstatic com/l7tech/gateway/common/audit/SystemMessages.FTP_SSL_UNTRUSTED Lcom/l7tech/gateway/common/audit/Messages$M;
      // 12f: invokevirtual com/l7tech/gateway/common/audit/Messages$M.getMessage ()Ljava/lang/String;
      // 132: bipush 2
      // 133: anewarray 83
      // 136: dup
      // 137: bipush 0
      // 138: aload 0
      // 139: getfield com/l7tech/server/transport/ftp/f.c Ljava/lang/String;
      // 13c: aastore
      // 13d: dup
      // 13e: bipush 1
      // 13f: aload 4
      // 141: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 144: aastore
      // 145: invokestatic java/text/MessageFormat.format (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
      // 148: invokespecial com/jscape/inet/ftp/FtpException.<init> (Ljava/lang/String;)V
      // 14b: putfield com/l7tech/server/transport/ftp/f.e Lcom/jscape/inet/ftp/FtpException;
      // 14e: return
      // try (0 -> 16): 17 javax/net/ssl/SSLPeerUnverifiedException
      // try (19 -> 22): 23 javax/net/ssl/SSLPeerUnverifiedException
      // try (101 -> 118): 118 javax/net/ssl/SSLPeerUnverifiedException
      // try (91 -> 108): 109 javax/net/ssl/SSLPeerUnverifiedException
      // try (55 -> 71): 71 javax/net/ssl/SSLPeerUnverifiedException
      // try (51 -> 60): 61 javax/net/ssl/SSLPeerUnverifiedException
      // try (91 -> 141): 142 java/security/cert/CertificateException
   }

   public void throwIfFailed() throws FtpException {
      try {
         if (this.e != null) {
            throw this.e;
         }
      } catch (FtpException var1) {
         throw a(var1);
      }
   }

   static {
      String[] var5 = new String[3];
      int var3 = 0;
      String var2 = "OjK\u001bD]*wh\u00194vtcjjK\u0004GVc120/j!n\u0004 |}M\u001bDM x{\\RWW*wh\u0019\u0006PQ0mj]RAA1mf_\u001bAE7|/J\u0006MV&7\u001cQ`J\u0006LE.|/O\u0017PM%plX\u0006KK-9iX\u001bNA'";
      int var4 = "OjK\u001bD]*wh\u00194vtcjjK\u0004GVc120/j!n\u0004 |}M\u001bDM x{\\RWW*wh\u0019\u0006PQ0mj]RAA1mf_\u001bAE7|/J\u0006MV&7\u001cQ`J\u0006LE.|/O\u0017PM%plX\u0006KK-9iX\u001bNA'"
         .length();
      char var1 = 22;
      int var0 = -1;

      while (true) {
         String var10002 = a(48, a(var2.substring(++var0, var0 + var1)));
         byte var10001 = -1;
         var5[var3++] = var10002;
         if ((var0 += var1) >= var4) {
            g = var5;
            f = !FtpClientUtils.class.desiredAssertionStatus();
            return;
         }

         var1 = var2.charAt(var0);
      }
   }

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

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

      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 -> 41;
            case 1 -> 63;
            case 2 -> 9;
            case 3 -> 66;
            case 4 -> 18;
            case 5 -> 20;
            default -> 115;
         });
      }

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