class sun.security.ssl.SSLAlgorithmDecomposer extends sun.security.util.AlgorithmDecomposer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.security.ssl.SSLAlgorithmDecomposer
  super_class: sun.security.util.AlgorithmDecomposer
{
  private final boolean onlyX509;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // boolean onlyX509
         0: .line 42
            aload 0 /* this */
            invokespecial sun.security.util.AlgorithmDecomposer.<init>:()V
         1: .line 43
            aload 0 /* this */
            iload 1 /* onlyX509 */
            putfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
         2: .line 44
            return
        end local 1 // boolean onlyX509
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0    3     1  onlyX509  Z
    MethodParameters:
          Name  Flags
      onlyX509  

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
         0: .line 47
            aload 0 /* this */
            iconst_0
            invokespecial sun.security.ssl.SSLAlgorithmDecomposer.<init>:(Z)V
         1: .line 48
            return
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/ssl/SSLAlgorithmDecomposer;

  private java.util.Set<java.lang.String> decomposes(sun.security.ssl.CipherSuite$KeyExchange);
    descriptor: (Lsun/security/ssl/CipherSuite$KeyExchange;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // sun.security.ssl.CipherSuite$KeyExchange keyExchange
         0: .line 51
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* components */
        start local 2 // java.util.Set components
         1: .line 52
            invokestatic sun.security.ssl.SSLAlgorithmDecomposer.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:()[I
            aload 1 /* keyExchange */
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iaload
            tableswitch { // 1 - 15
                    1: 2
                    2: 5
                    3: 7
                    4: 10
                    5: 15
                    6: 21
                    7: 28
                    8: 34
                    9: 40
                   10: 44
                   11: 48
                   12: 52
                   13: 56
                   14: 61
                   15: 64
              default: 66
          }
         2: .line 54
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifne 66
         3: .line 55
            aload 2 /* components */
            ldc "K_NULL"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 57
            goto 66
         5: .line 59
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 60
            goto 66
         7: .line 62
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 63
            aload 2 /* components */
            ldc "RSA_EXPORT"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 64
            goto 66
        10: .line 66
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 67
            aload 2 /* components */
            ldc "DH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 68
            aload 2 /* components */
            ldc "DiffieHellman"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 69
            aload 2 /* components */
            ldc "DH_RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        14: .line 70
            goto 66
        15: .line 72
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "DSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        16: .line 73
            aload 2 /* components */
            ldc "DSS"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        17: .line 74
            aload 2 /* components */
            ldc "DH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        18: .line 75
            aload 2 /* components */
            ldc "DiffieHellman"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        19: .line 76
            aload 2 /* components */
            ldc "DH_DSS"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        20: .line 77
            goto 66
        21: .line 79
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "DSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        22: .line 80
            aload 2 /* components */
            ldc "DSS"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        23: .line 81
            aload 2 /* components */
            ldc "DH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        24: .line 82
            aload 2 /* components */
            ldc "DHE"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        25: .line 83
            aload 2 /* components */
            ldc "DiffieHellman"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        26: .line 84
            aload 2 /* components */
            ldc "DHE_DSS"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        27: .line 85
            goto 66
        28: .line 87
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        29: .line 88
            aload 2 /* components */
            ldc "DH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        30: .line 89
            aload 2 /* components */
            ldc "DHE"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        31: .line 90
            aload 2 /* components */
            ldc "DiffieHellman"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        32: .line 91
            aload 2 /* components */
            ldc "DHE_RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        33: .line 92
            goto 66
        34: .line 94
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifne 66
        35: .line 95
            aload 2 /* components */
            ldc "ANON"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        36: .line 96
            aload 2 /* components */
            ldc "DH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        37: .line 97
            aload 2 /* components */
            ldc "DiffieHellman"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        38: .line 98
            aload 2 /* components */
            ldc "DH_ANON"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        39: .line 100
            goto 66
        40: .line 102
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "ECDH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        41: .line 103
            aload 2 /* components */
            ldc "ECDSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        42: .line 104
            aload 2 /* components */
            ldc "ECDH_ECDSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        43: .line 105
            goto 66
        44: .line 107
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "ECDH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        45: .line 108
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        46: .line 109
            aload 2 /* components */
            ldc "ECDH_RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        47: .line 110
            goto 66
        48: .line 112
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "ECDHE"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        49: .line 113
            aload 2 /* components */
            ldc "ECDSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        50: .line 114
            aload 2 /* components */
            ldc "ECDHE_ECDSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        51: .line 115
            goto 66
        52: .line 117
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            ldc "ECDHE"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        53: .line 118
            aload 2 /* components */
            ldc "RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        54: .line 119
            aload 2 /* components */
            ldc "ECDHE_RSA"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        55: .line 120
            goto 66
        56: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifne 66
        57: .line 123
            aload 2 /* components */
            ldc "ECDH"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        58: .line 124
            aload 2 /* components */
            ldc "ANON"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        59: .line 125
            aload 2 /* components */
            ldc "ECDH_ANON"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        60: .line 127
            goto 66
        61: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifne 66
        62: .line 130
            aload 2 /* components */
            ldc "KRB5"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        63: .line 132
            goto 66
        64: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifne 66
        65: .line 135
            aload 2 /* components */
            ldc "KRB5_EXPORT"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        66: .line 142
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            areturn
        end local 2 // java.util.Set components
        end local 1 // sun.security.ssl.CipherSuite$KeyExchange keyExchange
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   67     0         this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0   67     1  keyExchange  Lsun/security/ssl/CipherSuite$KeyExchange;
            1   67     2   components  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Lsun/security/ssl/CipherSuite$KeyExchange;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
             Name  Flags
      keyExchange  

  private java.util.Set<java.lang.String> decomposes(sun.security.ssl.CipherSuite$BulkCipher);
    descriptor: (Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // sun.security.ssl.CipherSuite$BulkCipher bulkCipher
         0: .line 146
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* components */
        start local 2 // java.util.Set components
         1: .line 148
            aload 1 /* bulkCipher */
            getfield sun.security.ssl.CipherSuite$BulkCipher.transformation:Ljava/lang/String;
            ifnull 3
         2: .line 149
            aload 2 /* components */
            aload 0 /* this */
            aload 1 /* bulkCipher */
            getfield sun.security.ssl.CipherSuite$BulkCipher.transformation:Ljava/lang/String;
            invokespecial sun.security.util.AlgorithmDecomposer.decompose:(Ljava/lang/String;)Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 152
      StackMap locals: java.util.Set
      StackMap stack:
            aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_NULL:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 6
         4: .line 153
            aload 2 /* components */
            ldc "C_NULL"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 154
            goto 30
      StackMap locals:
      StackMap stack:
         6: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_RC2_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 9
         7: .line 155
            aload 2 /* components */
            ldc "RC2_CBC_40"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 156
            goto 30
      StackMap locals:
      StackMap stack:
         9: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_RC4_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 12
        10: .line 157
            aload 2 /* components */
            ldc "RC4_40"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 158
            goto 30
      StackMap locals:
      StackMap stack:
        12: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_RC4_128:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 15
        13: .line 159
            aload 2 /* components */
            ldc "RC4_128"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        14: .line 160
            goto 30
      StackMap locals:
      StackMap stack:
        15: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_DES_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 19
        16: .line 161
            aload 2 /* components */
            ldc "DES40_CBC"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        17: .line 162
            aload 2 /* components */
            ldc "DES_CBC_40"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        18: .line 163
            goto 30
      StackMap locals:
      StackMap stack:
        19: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_DES:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 22
        20: .line 164
            aload 2 /* components */
            ldc "DES_CBC"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        21: .line 165
            goto 30
      StackMap locals:
      StackMap stack:
        22: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_3DES:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 25
        23: .line 166
            aload 2 /* components */
            ldc "3DES_EDE_CBC"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        24: .line 167
            goto 30
      StackMap locals:
      StackMap stack:
        25: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_AES_128:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 28
        26: .line 168
            aload 2 /* components */
            ldc "AES_128_CBC"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        27: .line 169
            goto 30
      StackMap locals:
      StackMap stack:
        28: aload 1 /* bulkCipher */
            getstatic sun.security.ssl.CipherSuite.B_AES_256:Lsun/security/ssl/CipherSuite$BulkCipher;
            if_acmpne 30
        29: .line 170
            aload 2 /* components */
            ldc "AES_256_CBC"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        30: .line 173
      StackMap locals:
      StackMap stack:
            aload 2 /* components */
            areturn
        end local 2 // java.util.Set components
        end local 1 // sun.security.ssl.CipherSuite$BulkCipher bulkCipher
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   31     0        this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0   31     1  bulkCipher  Lsun/security/ssl/CipherSuite$BulkCipher;
            1   31     2  components  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
            Name  Flags
      bulkCipher  

  private java.util.Set<java.lang.String> decomposes(sun.security.ssl.CipherSuite$MacAlg, sun.security.ssl.CipherSuite$BulkCipher);
    descriptor: (Lsun/security/ssl/CipherSuite$MacAlg;Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // sun.security.ssl.CipherSuite$MacAlg macAlg
        start local 2 // sun.security.ssl.CipherSuite$BulkCipher cipher
         0: .line 178
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* components */
        start local 3 // java.util.Set components
         1: .line 180
            aload 1 /* macAlg */
            getstatic sun.security.ssl.CipherSuite.M_NULL:Lsun/security/ssl/CipherSuite$MacAlg;
            if_acmpne 4
         2: .line 181
            aload 3 /* components */
            ldc "M_NULL"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 182
            goto 12
      StackMap locals: java.util.Set
      StackMap stack:
         4: aload 1 /* macAlg */
            getstatic sun.security.ssl.CipherSuite.M_MD5:Lsun/security/ssl/CipherSuite$MacAlg;
            if_acmpne 8
         5: .line 183
            aload 3 /* components */
            ldc "MD5"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 184
            aload 3 /* components */
            ldc "HmacMD5"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 185
            goto 12
      StackMap locals:
      StackMap stack:
         8: aload 1 /* macAlg */
            getstatic sun.security.ssl.CipherSuite.M_SHA:Lsun/security/ssl/CipherSuite$MacAlg;
            if_acmpne 12
         9: .line 186
            aload 3 /* components */
            ldc "SHA1"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        10: .line 187
            aload 3 /* components */
            ldc "SHA-1"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 188
            aload 3 /* components */
            ldc "HmacSHA1"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 191
      StackMap locals:
      StackMap stack:
            aload 3 /* components */
            areturn
        end local 3 // java.util.Set components
        end local 2 // sun.security.ssl.CipherSuite$BulkCipher cipher
        end local 1 // sun.security.ssl.CipherSuite$MacAlg macAlg
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0   13     1      macAlg  Lsun/security/ssl/CipherSuite$MacAlg;
            0   13     2      cipher  Lsun/security/ssl/CipherSuite$BulkCipher;
            1   13     3  components  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Lsun/security/ssl/CipherSuite$MacAlg;Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      macAlg  
      cipher  

  private java.util.Set<java.lang.String> decompose(sun.security.ssl.CipherSuite$KeyExchange, sun.security.ssl.CipherSuite$BulkCipher, sun.security.ssl.CipherSuite$MacAlg);
    descriptor: (Lsun/security/ssl/CipherSuite$KeyExchange;Lsun/security/ssl/CipherSuite$BulkCipher;Lsun/security/ssl/CipherSuite$MacAlg;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // sun.security.ssl.CipherSuite$KeyExchange keyExchange
        start local 2 // sun.security.ssl.CipherSuite$BulkCipher cipher
        start local 3 // sun.security.ssl.CipherSuite$MacAlg macAlg
         0: .line 196
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* components */
        start local 4 // java.util.Set components
         1: .line 198
            aload 1 /* keyExchange */
            ifnull 3
         2: .line 199
            aload 4 /* components */
            aload 0 /* this */
            aload 1 /* keyExchange */
            invokevirtual sun.security.ssl.SSLAlgorithmDecomposer.decomposes:(Lsun/security/ssl/CipherSuite$KeyExchange;)Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 202
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLAlgorithmDecomposer.onlyX509:Z
            ifeq 5
         4: .line 205
            aload 4 /* components */
            areturn
         5: .line 208
      StackMap locals:
      StackMap stack:
            aload 2 /* cipher */
            ifnull 7
         6: .line 209
            aload 4 /* components */
            aload 0 /* this */
            aload 2 /* cipher */
            invokevirtual sun.security.ssl.SSLAlgorithmDecomposer.decomposes:(Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         7: .line 212
      StackMap locals:
      StackMap stack:
            aload 3 /* macAlg */
            ifnull 9
         8: .line 213
            aload 4 /* components */
            aload 0 /* this */
            aload 3 /* macAlg */
            aload 2 /* cipher */
            invokevirtual sun.security.ssl.SSLAlgorithmDecomposer.decomposes:(Lsun/security/ssl/CipherSuite$MacAlg;Lsun/security/ssl/CipherSuite$BulkCipher;)Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         9: .line 216
      StackMap locals:
      StackMap stack:
            aload 4 /* components */
            areturn
        end local 4 // java.util.Set components
        end local 3 // sun.security.ssl.CipherSuite$MacAlg macAlg
        end local 2 // sun.security.ssl.CipherSuite$BulkCipher cipher
        end local 1 // sun.security.ssl.CipherSuite$KeyExchange keyExchange
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0   10     1  keyExchange  Lsun/security/ssl/CipherSuite$KeyExchange;
            0   10     2       cipher  Lsun/security/ssl/CipherSuite$BulkCipher;
            0   10     3       macAlg  Lsun/security/ssl/CipherSuite$MacAlg;
            1   10     4   components  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Lsun/security/ssl/CipherSuite$KeyExchange;Lsun/security/ssl/CipherSuite$BulkCipher;Lsun/security/ssl/CipherSuite$MacAlg;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
             Name  Flags
      keyExchange  
      cipher       
      macAlg       

  public java.util.Set<java.lang.String> decompose(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
        start local 1 // java.lang.String algorithm
         0: .line 221
            aload 1 /* algorithm */
            ldc "SSL_"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 1
            aload 1 /* algorithm */
            ldc "TLS_"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         1: .line 222
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* cipherSuite */
        start local 2 // sun.security.ssl.CipherSuite cipherSuite
         2: .line 224
            aload 1 /* algorithm */
            invokestatic sun.security.ssl.CipherSuite.valueOf:(Ljava/lang/String;)Lsun/security/ssl/CipherSuite;
            astore 2 /* cipherSuite */
         3: .line 225
            goto 5
      StackMap locals: sun.security.ssl.SSLAlgorithmDecomposer java.lang.String sun.security.ssl.CipherSuite
      StackMap stack: java.lang.IllegalArgumentException
         4: pop
         5: .line 229
      StackMap locals:
      StackMap stack:
            aload 2 /* cipherSuite */
            ifnull 9
         6: .line 230
            aload 0 /* this */
            aload 2 /* cipherSuite */
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            aload 2 /* cipherSuite */
            getfield sun.security.ssl.CipherSuite.cipher:Lsun/security/ssl/CipherSuite$BulkCipher;
         7: .line 231
            aload 2 /* cipherSuite */
            getfield sun.security.ssl.CipherSuite.macAlg:Lsun/security/ssl/CipherSuite$MacAlg;
         8: .line 230
            invokevirtual sun.security.ssl.SSLAlgorithmDecomposer.decompose:(Lsun/security/ssl/CipherSuite$KeyExchange;Lsun/security/ssl/CipherSuite$BulkCipher;Lsun/security/ssl/CipherSuite$MacAlg;)Ljava/util/Set;
            areturn
        end local 2 // sun.security.ssl.CipherSuite cipherSuite
         9: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* algorithm */
            invokespecial sun.security.util.AlgorithmDecomposer.decompose:(Ljava/lang/String;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.String algorithm
        end local 0 // sun.security.ssl.SSLAlgorithmDecomposer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lsun/security/ssl/SSLAlgorithmDecomposer;
            0   10     1    algorithm  Ljava/lang/String;
            2    9     2  cipherSuite  Lsun/security/ssl/CipherSuite;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.IllegalArgumentException
    Signature: (Ljava/lang/String;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
           Name  Flags
      algorithm  

  static int[] $SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 37
            getstatic sun.security.ssl.SSLAlgorithmDecomposer.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic sun.security.ssl.CipherSuite$KeyExchange.values:()[Lsun/security/ssl/CipherSuite$KeyExchange;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_DSS:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 6
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DHE_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 7
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_ANON:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 8
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_DSS:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_DH_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDHE_ECDSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 11
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDHE_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 12
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_ANON:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 13
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_ECDSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_ECDH_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 10
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_KRB5:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 14
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_KRB5_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 15
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_NULL:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iconst_1
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_RSA:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iconst_2
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_RSA_EXPORT:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            iconst_3
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic sun.security.ssl.CipherSuite$KeyExchange.K_SCSV:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual sun.security.ssl.CipherSuite$KeyExchange.ordinal:()I
            bipush 16
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            dup
            putstatic sun.security.ssl.SSLAlgorithmDecomposer.$SWITCH_TABLE$sun$security$ssl$CipherSuite$KeyExchange:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
}
SourceFile: "SSLAlgorithmDecomposer.java"
InnerClasses:
  final BulkCipher = sun.security.ssl.CipherSuite$BulkCipher of sun.security.ssl.CipherSuite
  final KeyExchange = sun.security.ssl.CipherSuite$KeyExchange of sun.security.ssl.CipherSuite
  final MacAlg = sun.security.ssl.CipherSuite$MacAlg of sun.security.ssl.CipherSuite