public class org.apache.http.conn.ssl.SSLSocketFactory implements org.apache.http.conn.scheme.LayeredSocketFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.conn.ssl.SSLSocketFactory
  super_class: java.lang.Object
{
  public static final java.lang.String TLS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "TLS"

  public static final java.lang.String SSL;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SSL"

  public static final java.lang.String SSLV2;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SSLv2"

  public static final org.apache.http.conn.ssl.X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER;
    descriptor: Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.http.conn.ssl.X509HostnameVerifier BROWSER_COMPATIBLE_HOSTNAME_VERIFIER;
    descriptor: Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.http.conn.ssl.X509HostnameVerifier STRICT_HOSTNAME_VERIFIER;
    descriptor: Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private final javax.net.ssl.SSLContext sslcontext;
    descriptor: Ljavax/net/ssl/SSLContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.net.ssl.SSLSocketFactory socketfactory;
    descriptor: Ljavax/net/ssl/SSLSocketFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.conn.scheme.HostNameResolver nameResolver;
    descriptor: Lorg/apache/http/conn/scheme/HostNameResolver;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier;
    descriptor: Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 150
            new org.apache.http.conn.ssl.AllowAllHostnameVerifier
            dup
            invokespecial org.apache.http.conn.ssl.AllowAllHostnameVerifier.<init>:()V
         1: .line 149
            putstatic org.apache.http.conn.ssl.SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         2: .line 153
            new org.apache.http.conn.ssl.BrowserCompatHostnameVerifier
            dup
            invokespecial org.apache.http.conn.ssl.BrowserCompatHostnameVerifier.<init>:()V
         3: .line 152
            putstatic org.apache.http.conn.ssl.SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         4: .line 156
            new org.apache.http.conn.ssl.StrictHostnameVerifier
            dup
            invokespecial org.apache.http.conn.ssl.StrictHostnameVerifier.<init>:()V
         5: .line 155
            putstatic org.apache.http.conn.ssl.SSLSocketFactory.STRICT_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         6: .line 156
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.apache.http.conn.ssl.SSLSocketFactory getSocketFactory();
    descriptor: ()Lorg/apache/http/conn/ssl/SSLSocketFactory;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 174
            getstatic org.apache.http.conn.ssl.SSLSocketFactory$NoPreloadHolder.DEFAULT_FACTORY:Lorg/apache/http/conn/ssl/SSLSocketFactory;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.lang.String, java.security.KeyStore, java.lang.String, java.security.KeyStore, java.security.SecureRandom, org.apache.http.conn.scheme.HostNameResolver);
    descriptor: (Ljava/lang/String;Ljava/security/KeyStore;Ljava/lang/String;Ljava/security/KeyStore;Ljava/security/SecureRandom;Lorg/apache/http/conn/scheme/HostNameResolver;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=7
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.lang.String algorithm
        start local 2 // java.security.KeyStore keystore
        start local 3 // java.lang.String keystorePassword
        start local 4 // java.security.KeyStore truststore
        start local 5 // java.security.SecureRandom random
        start local 6 // org.apache.http.conn.scheme.HostNameResolver nameResolver
         0: .line 191
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 180
            aload 0 /* this */
            getstatic org.apache.http.conn.ssl.SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         2: .line 192
            aload 1 /* algorithm */
            ifnonnull 4
         3: .line 193
            ldc "TLS"
            astore 1 /* algorithm */
         4: .line 195
      StackMap locals: org.apache.http.conn.ssl.SSLSocketFactory java.lang.String java.security.KeyStore java.lang.String java.security.KeyStore java.security.SecureRandom org.apache.http.conn.scheme.HostNameResolver
      StackMap stack:
            aconst_null
            astore 7 /* keymanagers */
        start local 7 // javax.net.ssl.KeyManager[] keymanagers
         5: .line 196
            aload 2 /* keystore */
            ifnull 7
         6: .line 197
            aload 2 /* keystore */
            aload 3 /* keystorePassword */
            invokestatic org.apache.http.conn.ssl.SSLSocketFactory.createKeyManagers:(Ljava/security/KeyStore;Ljava/lang/String;)[Ljavax/net/ssl/KeyManager;
            astore 7 /* keymanagers */
         7: .line 199
      StackMap locals: javax.net.ssl.KeyManager[]
      StackMap stack:
            aconst_null
            astore 8 /* trustmanagers */
        start local 8 // javax.net.ssl.TrustManager[] trustmanagers
         8: .line 200
            aload 4 /* truststore */
            ifnull 10
         9: .line 201
            aload 4 /* truststore */
            invokestatic org.apache.http.conn.ssl.SSLSocketFactory.createTrustManagers:(Ljava/security/KeyStore;)[Ljavax/net/ssl/TrustManager;
            astore 8 /* trustmanagers */
        10: .line 203
      StackMap locals: javax.net.ssl.TrustManager[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* algorithm */
            invokestatic javax.net.ssl.SSLContext.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.sslcontext:Ljavax/net/ssl/SSLContext;
        11: .line 204
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.sslcontext:Ljavax/net/ssl/SSLContext;
            aload 7 /* keymanagers */
            aload 8 /* trustmanagers */
            aload 5 /* random */
            invokevirtual javax.net.ssl.SSLContext.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V
        12: .line 205
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.sslcontext:Ljavax/net/ssl/SSLContext;
            invokevirtual javax.net.ssl.SSLContext.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.socketfactory:Ljavax/net/ssl/SSLSocketFactory;
        13: .line 206
            aload 0 /* this */
            aload 6 /* nameResolver */
            putfield org.apache.http.conn.ssl.SSLSocketFactory.nameResolver:Lorg/apache/http/conn/scheme/HostNameResolver;
        14: .line 207
            return
        end local 8 // javax.net.ssl.TrustManager[] trustmanagers
        end local 7 // javax.net.ssl.KeyManager[] keymanagers
        end local 6 // org.apache.http.conn.scheme.HostNameResolver nameResolver
        end local 5 // java.security.SecureRandom random
        end local 4 // java.security.KeyStore truststore
        end local 3 // java.lang.String keystorePassword
        end local 2 // java.security.KeyStore keystore
        end local 1 // java.lang.String algorithm
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0   15     1         algorithm  Ljava/lang/String;
            0   15     2          keystore  Ljava/security/KeyStore;
            0   15     3  keystorePassword  Ljava/lang/String;
            0   15     4        truststore  Ljava/security/KeyStore;
            0   15     5            random  Ljava/security/SecureRandom;
            0   15     6      nameResolver  Lorg/apache/http/conn/scheme/HostNameResolver;
            5   15     7       keymanagers  [Ljavax/net/ssl/KeyManager;
            8   15     8     trustmanagers  [Ljavax/net/ssl/TrustManager;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
    MethodParameters:
                  Name  Flags
      algorithm         
      keystore          final
      keystorePassword  final
      truststore        final
      random            final
      nameResolver      final

  public void <init>(java.security.KeyStore, java.lang.String, java.security.KeyStore);
    descriptor: (Ljava/security/KeyStore;Ljava/lang/String;Ljava/security/KeyStore;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.security.KeyStore keystore
        start local 2 // java.lang.String keystorePassword
        start local 3 // java.security.KeyStore truststore
         0: .line 215
            aload 0 /* this */
            ldc "TLS"
            aload 1 /* keystore */
            aload 2 /* keystorePassword */
            aload 3 /* truststore */
            aconst_null
            aconst_null
            invokespecial org.apache.http.conn.ssl.SSLSocketFactory.<init>:(Ljava/lang/String;Ljava/security/KeyStore;Ljava/lang/String;Ljava/security/KeyStore;Ljava/security/SecureRandom;Lorg/apache/http/conn/scheme/HostNameResolver;)V
         1: .line 216
            return
        end local 3 // java.security.KeyStore truststore
        end local 2 // java.lang.String keystorePassword
        end local 1 // java.security.KeyStore keystore
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    2     1          keystore  Ljava/security/KeyStore;
            0    2     2  keystorePassword  Ljava/lang/String;
            0    2     3        truststore  Ljava/security/KeyStore;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
    MethodParameters:
                  Name  Flags
      keystore          final
      keystorePassword  final
      truststore        final

  public void <init>(java.security.KeyStore, java.lang.String);
    descriptor: (Ljava/security/KeyStore;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.security.KeyStore keystore
        start local 2 // java.lang.String keystorePassword
         0: .line 221
            aload 0 /* this */
            ldc "TLS"
            aload 1 /* keystore */
            aload 2 /* keystorePassword */
            aconst_null
            aconst_null
            aconst_null
            invokespecial org.apache.http.conn.ssl.SSLSocketFactory.<init>:(Ljava/lang/String;Ljava/security/KeyStore;Ljava/lang/String;Ljava/security/KeyStore;Ljava/security/SecureRandom;Lorg/apache/http/conn/scheme/HostNameResolver;)V
         1: .line 222
            return
        end local 2 // java.lang.String keystorePassword
        end local 1 // java.security.KeyStore keystore
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    2     1          keystore  Ljava/security/KeyStore;
            0    2     2  keystorePassword  Ljava/lang/String;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
    MethodParameters:
                  Name  Flags
      keystore          final
      keystorePassword  final

  public void <init>(java.security.KeyStore);
    descriptor: (Ljava/security/KeyStore;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.security.KeyStore truststore
         0: .line 227
            aload 0 /* this */
            ldc "TLS"
            aconst_null
            aconst_null
            aload 1 /* truststore */
            aconst_null
            aconst_null
            invokespecial org.apache.http.conn.ssl.SSLSocketFactory.<init>:(Ljava/lang/String;Ljava/security/KeyStore;Ljava/lang/String;Ljava/security/KeyStore;Ljava/security/SecureRandom;Lorg/apache/http/conn/scheme/HostNameResolver;)V
         1: .line 228
            return
        end local 1 // java.security.KeyStore truststore
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    2     1  truststore  Ljava/security/KeyStore;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
    MethodParameters:
            Name  Flags
      truststore  final

  public void <init>(javax.net.ssl.SSLSocketFactory);
    descriptor: (Ljavax/net/ssl/SSLSocketFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // javax.net.ssl.SSLSocketFactory socketfactory
         0: .line 237
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 180
            aload 0 /* this */
            getstatic org.apache.http.conn.ssl.SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         2: .line 238
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.conn.ssl.SSLSocketFactory.sslcontext:Ljavax/net/ssl/SSLContext;
         3: .line 239
            aload 0 /* this */
            aload 1 /* socketfactory */
            putfield org.apache.http.conn.ssl.SSLSocketFactory.socketfactory:Ljavax/net/ssl/SSLSocketFactory;
         4: .line 240
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.conn.ssl.SSLSocketFactory.nameResolver:Lorg/apache/http/conn/scheme/HostNameResolver;
         5: .line 241
            return
        end local 1 // javax.net.ssl.SSLSocketFactory socketfactory
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    6     1  socketfactory  Ljavax/net/ssl/SSLSocketFactory;
    MethodParameters:
               Name  Flags
      socketfactory  

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
         0: .line 249
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 180
            aload 0 /* this */
            getstatic org.apache.http.conn.ssl.SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         2: .line 250
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.conn.ssl.SSLSocketFactory.sslcontext:Ljavax/net/ssl/SSLContext;
         3: .line 251
            aload 0 /* this */
            invokestatic javax.net.ssl.HttpsURLConnection.getDefaultSSLSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
            putfield org.apache.http.conn.ssl.SSLSocketFactory.socketfactory:Ljavax/net/ssl/SSLSocketFactory;
         4: .line 252
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.conn.ssl.SSLSocketFactory.nameResolver:Lorg/apache/http/conn/scheme/HostNameResolver;
         5: .line 253
            return
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/http/conn/ssl/SSLSocketFactory;

  private static javax.net.ssl.KeyManager[] createKeyManagers(java.security.KeyStore, java.lang.String);
    descriptor: (Ljava/security/KeyStore;Ljava/lang/String;)[Ljavax/net/ssl/KeyManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.security.KeyStore keystore
        start local 1 // java.lang.String password
         0: .line 257
            aload 0 /* keystore */
            ifnonnull 2
         1: .line 258
            new java.lang.IllegalArgumentException
            dup
            ldc "Keystore may not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 261
      StackMap locals:
      StackMap stack:
            invokestatic javax.net.ssl.KeyManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
         3: .line 260
            invokestatic javax.net.ssl.KeyManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/KeyManagerFactory;
            astore 2 /* kmfactory */
        start local 2 // javax.net.ssl.KeyManagerFactory kmfactory
         4: .line 262
            aload 2 /* kmfactory */
            aload 0 /* keystore */
            aload 1 /* password */
            ifnull 5
            aload 1 /* password */
            invokevirtual java.lang.String.toCharArray:()[C
            goto 6
      StackMap locals: java.security.KeyStore java.lang.String javax.net.ssl.KeyManagerFactory
      StackMap stack: javax.net.ssl.KeyManagerFactory java.security.KeyStore
         5: aconst_null
      StackMap locals: java.security.KeyStore java.lang.String javax.net.ssl.KeyManagerFactory
      StackMap stack: javax.net.ssl.KeyManagerFactory java.security.KeyStore char[]
         6: invokevirtual javax.net.ssl.KeyManagerFactory.init:(Ljava/security/KeyStore;[C)V
         7: .line 263
            aload 2 /* kmfactory */
            invokevirtual javax.net.ssl.KeyManagerFactory.getKeyManagers:()[Ljavax/net/ssl/KeyManager;
            areturn
        end local 2 // javax.net.ssl.KeyManagerFactory kmfactory
        end local 1 // java.lang.String password
        end local 0 // java.security.KeyStore keystore
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0   keystore  Ljava/security/KeyStore;
            0    8     1   password  Ljava/lang/String;
            4    8     2  kmfactory  Ljavax/net/ssl/KeyManagerFactory;
    Exceptions:
      throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
    MethodParameters:
          Name  Flags
      keystore  final
      password  final

  private static javax.net.ssl.TrustManager[] createTrustManagers(java.security.KeyStore);
    descriptor: (Ljava/security/KeyStore;)[Ljavax/net/ssl/TrustManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.security.KeyStore keystore
         0: .line 268
            aload 0 /* keystore */
            ifnonnull 2
         1: .line 269
            new java.lang.IllegalArgumentException
            dup
            ldc "Keystore may not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 272
      StackMap locals:
      StackMap stack:
            invokestatic javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
         3: .line 271
            invokestatic javax.net.ssl.TrustManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory;
            astore 1 /* tmfactory */
        start local 1 // javax.net.ssl.TrustManagerFactory tmfactory
         4: .line 273
            aload 1 /* tmfactory */
            aload 0 /* keystore */
            invokevirtual javax.net.ssl.TrustManagerFactory.init:(Ljava/security/KeyStore;)V
         5: .line 274
            aload 1 /* tmfactory */
            invokevirtual javax.net.ssl.TrustManagerFactory.getTrustManagers:()[Ljavax/net/ssl/TrustManager;
            areturn
        end local 1 // javax.net.ssl.TrustManagerFactory tmfactory
        end local 0 // java.security.KeyStore keystore
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0   keystore  Ljava/security/KeyStore;
            4    6     1  tmfactory  Ljavax/net/ssl/TrustManagerFactory;
    Exceptions:
      throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException
    MethodParameters:
          Name  Flags
      keystore  final

  public java.net.Socket createSocket();
    descriptor: ()Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
         0: .line 283
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.socketfactory:Ljavax/net/ssl/SSLSocketFactory;
            invokevirtual javax.net.ssl.SSLSocketFactory.createSocket:()Ljava/net/Socket;
            checkcast javax.net.ssl.SSLSocket
            areturn
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
    Exceptions:
      throws java.io.IOException

  public java.net.Socket connectSocket(java.net.Socket, java.lang.String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams);
    descriptor: (Ljava/net/Socket;Ljava/lang/String;ILjava/net/InetAddress;ILorg/apache/http/params/HttpParams;)Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=12, args_size=7
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.net.Socket sock
        start local 2 // java.lang.String host
        start local 3 // int port
        start local 4 // java.net.InetAddress localAddress
        start local 5 // int localPort
        start local 6 // org.apache.http.params.HttpParams params
         0: .line 297
            aload 2 /* host */
            ifnonnull 2
         1: .line 298
            new java.lang.IllegalArgumentException
            dup
            ldc "Target host may not be null."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 300
      StackMap locals:
      StackMap stack:
            aload 6 /* params */
            ifnonnull 4
         3: .line 301
            new java.lang.IllegalArgumentException
            dup
            ldc "Parameters may not be null."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 305
      StackMap locals:
      StackMap stack:
            aload 1 /* sock */
            ifnull 5
            aload 1 /* sock */
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            invokevirtual org.apache.http.conn.ssl.SSLSocketFactory.createSocket:()Ljava/net/Socket;
         6: .line 304
      StackMap locals:
      StackMap stack: java.net.Socket
            checkcast javax.net.ssl.SSLSocket
            astore 7 /* sslsock */
        start local 7 // javax.net.ssl.SSLSocket sslsock
         7: .line 307
            aload 4 /* localAddress */
            ifnonnull 8
            iload 5 /* localPort */
            ifle 13
         8: .line 310
      StackMap locals: javax.net.ssl.SSLSocket
      StackMap stack:
            iload 5 /* localPort */
            ifge 10
         9: .line 311
            iconst_0
            istore 5 /* localPort */
        10: .line 314
      StackMap locals:
      StackMap stack:
            new java.net.InetSocketAddress
            dup
            aload 4 /* localAddress */
            iload 5 /* localPort */
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
        11: .line 313
            astore 8 /* isa */
        start local 8 // java.net.InetSocketAddress isa
        12: .line 315
            aload 7 /* sslsock */
            aload 8 /* isa */
            invokevirtual javax.net.ssl.SSLSocket.bind:(Ljava/net/SocketAddress;)V
        end local 8 // java.net.InetSocketAddress isa
        13: .line 318
      StackMap locals:
      StackMap stack:
            aload 6 /* params */
            invokestatic org.apache.http.params.HttpConnectionParams.getConnectionTimeout:(Lorg/apache/http/params/HttpParams;)I
            istore 8 /* connTimeout */
        start local 8 // int connTimeout
        14: .line 319
            aload 6 /* params */
            invokestatic org.apache.http.params.HttpConnectionParams.getSoTimeout:(Lorg/apache/http/params/HttpParams;)I
            istore 9 /* soTimeout */
        start local 9 // int soTimeout
        15: .line 322
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.nameResolver:Lorg/apache/http/conn/scheme/HostNameResolver;
            ifnull 18
        16: .line 323
            new java.net.InetSocketAddress
            dup
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.nameResolver:Lorg/apache/http/conn/scheme/HostNameResolver;
            aload 2 /* host */
            invokeinterface org.apache.http.conn.scheme.HostNameResolver.resolve:(Ljava/lang/String;)Ljava/net/InetAddress;
            iload 3 /* port */
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
            astore 10 /* remoteAddress */
        start local 10 // java.net.InetSocketAddress remoteAddress
        17: .line 324
            goto 19
        end local 10 // java.net.InetSocketAddress remoteAddress
        18: .line 325
      StackMap locals: int int
      StackMap stack:
            new java.net.InetSocketAddress
            dup
            aload 2 /* host */
            iload 3 /* port */
            invokespecial java.net.InetSocketAddress.<init>:(Ljava/lang/String;I)V
            astore 10 /* remoteAddress */
        start local 10 // java.net.InetSocketAddress remoteAddress
        19: .line 328
      StackMap locals: java.net.InetSocketAddress
      StackMap stack:
            aload 7 /* sslsock */
            aload 10 /* remoteAddress */
            iload 8 /* connTimeout */
            invokevirtual javax.net.ssl.SSLSocket.connect:(Ljava/net/SocketAddress;I)V
        20: .line 330
            aload 7 /* sslsock */
            iload 9 /* soTimeout */
            invokevirtual javax.net.ssl.SSLSocket.setSoTimeout:(I)V
        21: .line 338
            aload 7 /* sslsock */
            invokevirtual javax.net.ssl.SSLSocket.startHandshake:()V
        22: .line 340
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            aload 2 /* host */
            aload 7 /* sslsock */
            invokeinterface org.apache.http.conn.ssl.X509HostnameVerifier.verify:(Ljava/lang/String;Ljavax/net/ssl/SSLSocket;)V
        23: .line 342
            goto 29
      StackMap locals:
      StackMap stack: java.io.IOException
        24: astore 11 /* iox */
        start local 11 // java.io.IOException iox
        25: .line 344
            aload 7 /* sslsock */
            invokevirtual javax.net.ssl.SSLSocket.close:()V
        26: goto 28
      StackMap locals: org.apache.http.conn.ssl.SSLSocketFactory java.net.Socket java.lang.String int java.net.InetAddress int org.apache.http.params.HttpParams javax.net.ssl.SSLSocket int int java.net.InetSocketAddress java.io.IOException
      StackMap stack: java.lang.Exception
        27: pop
        28: .line 345
      StackMap locals:
      StackMap stack:
            aload 11 /* iox */
            athrow
        end local 11 // java.io.IOException iox
        29: .line 348
      StackMap locals:
      StackMap stack:
            aload 7 /* sslsock */
            areturn
        end local 10 // java.net.InetSocketAddress remoteAddress
        end local 9 // int soTimeout
        end local 8 // int connTimeout
        end local 7 // javax.net.ssl.SSLSocket sslsock
        end local 6 // org.apache.http.params.HttpParams params
        end local 5 // int localPort
        end local 4 // java.net.InetAddress localAddress
        end local 3 // int port
        end local 2 // java.lang.String host
        end local 1 // java.net.Socket sock
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   30     0           this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0   30     1           sock  Ljava/net/Socket;
            0   30     2           host  Ljava/lang/String;
            0   30     3           port  I
            0   30     4   localAddress  Ljava/net/InetAddress;
            0   30     5      localPort  I
            0   30     6         params  Lorg/apache/http/params/HttpParams;
            7   30     7        sslsock  Ljavax/net/ssl/SSLSocket;
           12   13     8            isa  Ljava/net/InetSocketAddress;
           14   30     8    connTimeout  I
           15   30     9      soTimeout  I
           17   18    10  remoteAddress  Ljava/net/InetSocketAddress;
           19   30    10  remoteAddress  Ljava/net/InetSocketAddress;
           25   29    11            iox  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          21    23      24  Class java.io.IOException
          25    26      27  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      sock          final
      host          final
      port          final
      localAddress  final
      localPort     
      params        final

  public boolean isSecure(java.net.Socket);
    descriptor: (Ljava/net/Socket;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.net.Socket sock
         0: .line 369
            aload 1 /* sock */
            ifnonnull 2
         1: .line 370
            new java.lang.IllegalArgumentException
            dup
            ldc "Socket may not be null."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 373
      StackMap locals:
      StackMap stack:
            aload 1 /* sock */
            instanceof javax.net.ssl.SSLSocket
            ifne 6
         3: .line 374
            new java.lang.IllegalArgumentException
            dup
         4: .line 375
            ldc "Socket not created by this factory."
         5: .line 374
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 378
      StackMap locals:
      StackMap stack:
            aload 1 /* sock */
            invokevirtual java.net.Socket.isClosed:()Z
            ifeq 8
         7: .line 379
            new java.lang.IllegalArgumentException
            dup
            ldc "Socket is closed."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 382
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.net.Socket sock
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    9     1  sock  Ljava/net/Socket;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      sock  

  public java.net.Socket createSocket(java.net.Socket, java.lang.String, int, boolean);
    descriptor: (Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // java.net.Socket socket
        start local 2 // java.lang.String host
        start local 3 // int port
        start local 4 // boolean autoClose
         0: .line 394
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.socketfactory:Ljavax/net/ssl/SSLSocketFactory;
         1: .line 395
            aload 1 /* socket */
         2: .line 396
            aload 2 /* host */
         3: .line 397
            iload 3 /* port */
         4: .line 398
            iload 4 /* autoClose */
         5: .line 394
            invokevirtual javax.net.ssl.SSLSocketFactory.createSocket:(Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket;
            checkcast javax.net.ssl.SSLSocket
            astore 5 /* sslSocket */
        start local 5 // javax.net.ssl.SSLSocket sslSocket
         6: .line 406
            aload 5 /* sslSocket */
            invokevirtual javax.net.ssl.SSLSocket.startHandshake:()V
         7: .line 408
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            aload 2 /* host */
            aload 5 /* sslSocket */
            invokeinterface org.apache.http.conn.ssl.X509HostnameVerifier.verify:(Ljava/lang/String;Ljavax/net/ssl/SSLSocket;)V
         8: .line 410
            aload 5 /* sslSocket */
            areturn
        end local 5 // javax.net.ssl.SSLSocket sslSocket
        end local 4 // boolean autoClose
        end local 3 // int port
        end local 2 // java.lang.String host
        end local 1 // java.net.Socket socket
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    9     1     socket  Ljava/net/Socket;
            0    9     2       host  Ljava/lang/String;
            0    9     3       port  I
            0    9     4  autoClose  Z
            6    9     5  sslSocket  Ljavax/net/ssl/SSLSocket;
    Exceptions:
      throws java.io.IOException, java.net.UnknownHostException
    MethodParameters:
           Name  Flags
      socket     final
      host       final
      port       final
      autoClose  final

  public void setHostnameVerifier(org.apache.http.conn.ssl.X509HostnameVerifier);
    descriptor: (Lorg/apache/http/conn/ssl/X509HostnameVerifier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
        start local 1 // org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier
         0: .line 414
            aload 1 /* hostnameVerifier */
            ifnonnull 2
         1: .line 415
            new java.lang.IllegalArgumentException
            dup
            ldc "Hostname verifier may not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* hostnameVerifier */
            putfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
         3: .line 418
            return
        end local 1 // org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
            0    4     1  hostnameVerifier  Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    MethodParameters:
                  Name  Flags
      hostnameVerifier  

  public org.apache.http.conn.ssl.X509HostnameVerifier getHostnameVerifier();
    descriptor: ()Lorg/apache/http/conn/ssl/X509HostnameVerifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
         0: .line 421
            aload 0 /* this */
            getfield org.apache.http.conn.ssl.SSLSocketFactory.hostnameVerifier:Lorg/apache/http/conn/ssl/X509HostnameVerifier;
            areturn
        end local 0 // org.apache.http.conn.ssl.SSLSocketFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/conn/ssl/SSLSocketFactory;
}
SourceFile: "SSLSocketFactory.java"
NestMembers:
  org.apache.http.conn.ssl.SSLSocketFactory$NoPreloadHolder
InnerClasses:
  private NoPreloadHolder = org.apache.http.conn.ssl.SSLSocketFactory$NoPreloadHolder of org.apache.http.conn.ssl.SSLSocketFactory
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()