final class sun.security.ssl.CipherSuite$BulkCipher extends java.lang.Enum<sun.security.ssl.CipherSuite$BulkCipher>
  minor version: 0
  major version: 59
  flags: flags: (0x4030) ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: sun.security.ssl.CipherSuite$BulkCipher
  super_class: java.lang.Enum
{
  public static final sun.security.ssl.CipherSuite$BulkCipher B_NULL;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_RC4_40;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_RC2_40;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_DES_40;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_RC4_128;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_DES;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_3DES;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_IDEA;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_AES_128;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_AES_256;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_AES_128_GCM;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.CipherSuite$BulkCipher B_AES_256_GCM;
    descriptor: Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  final java.lang.String description;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  final java.lang.String transformation;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  final java.lang.String algorithm;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  final boolean allowed;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final int keySize;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final int expandedKeySize;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final int ivSize;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final int fixedIvSize;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final boolean exportable;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final sun.security.ssl.CipherSuite$CipherType cipherType;
    descriptor: Lsun/security/ssl/CipherSuite$CipherType;
    flags: (0x0010) ACC_FINAL

  final int tagSize;
    descriptor: I
    flags: (0x0010) ACC_FINAL
    ConstantValue: 16

  private static final java.security.SecureRandom secureRandom;
    descriptor: Ljava/security/SecureRandom;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final boolean isAvailable;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final sun.security.ssl.CipherSuite$BulkCipher[] ENUM$VALUES;
    descriptor: [Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=11, locals=1, args_size=0
         0: .line 453
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_NULL"
            iconst_0
            ldc "NULL"
            getstatic sun.security.ssl.CipherSuite$CipherType.NULL_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_NULL:Lsun/security/ssl/CipherSuite$BulkCipher;
         1: .line 454
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_RC4_40"
            iconst_1
            ldc "RC4"
            getstatic sun.security.ssl.CipherSuite$CipherType.STREAM_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            iconst_5
            bipush 16
            iconst_0
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC4_40:Lsun/security/ssl/CipherSuite$BulkCipher;
         2: .line 455
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_RC2_40"
            iconst_2
            ldc "RC2"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            iconst_5
            bipush 16
            bipush 8
            iconst_0
            iconst_0
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC2_40:Lsun/security/ssl/CipherSuite$BulkCipher;
         3: .line 456
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_DES_40"
            iconst_3
            ldc "DES/CBC/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            iconst_5
            bipush 8
            bipush 8
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_DES_40:Lsun/security/ssl/CipherSuite$BulkCipher;
         4: .line 459
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_RC4_128"
            iconst_4
            ldc "RC4"
            getstatic sun.security.ssl.CipherSuite$CipherType.STREAM_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 16
            iconst_0
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC4_128:Lsun/security/ssl/CipherSuite$BulkCipher;
         5: .line 460
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_DES"
            iconst_5
            ldc "DES/CBC/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 8
            bipush 8
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_DES:Lsun/security/ssl/CipherSuite$BulkCipher;
         6: .line 461
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_3DES"
            bipush 6
            ldc "DESede/CBC/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 24
            bipush 8
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_3DES:Lsun/security/ssl/CipherSuite$BulkCipher;
         7: .line 462
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_IDEA"
            bipush 7
            ldc "IDEA"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 16
            bipush 8
            iconst_0
            iconst_0
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_IDEA:Lsun/security/ssl/CipherSuite$BulkCipher;
         8: .line 463
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_AES_128"
            bipush 8
            ldc "AES/CBC/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 16
            bipush 16
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_128:Lsun/security/ssl/CipherSuite$BulkCipher;
         9: .line 464
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_AES_256"
            bipush 9
            ldc "AES/CBC/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.BLOCK_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 32
            bipush 16
            iconst_0
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_256:Lsun/security/ssl/CipherSuite$BulkCipher;
        10: .line 465
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_AES_128_GCM"
            bipush 10
            ldc "AES/GCM/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.AEAD_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 16
            bipush 12
            iconst_4
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_128_GCM:Lsun/security/ssl/CipherSuite$BulkCipher;
        11: .line 466
            new sun.security.ssl.CipherSuite$BulkCipher
            dup
            ldc "B_AES_256_GCM"
            bipush 11
            ldc "AES/GCM/NoPadding"
            getstatic sun.security.ssl.CipherSuite$CipherType.AEAD_CIPHER:Lsun/security/ssl/CipherSuite$CipherType;
            bipush 32
            bipush 12
            iconst_4
            iconst_1
            invokespecial sun.security.ssl.CipherSuite$BulkCipher.<init>:(Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
            putstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_256_GCM:Lsun/security/ssl/CipherSuite$BulkCipher;
            bipush 12
            anewarray sun.security.ssl.CipherSuite$BulkCipher
            dup
            iconst_0
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_NULL:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            iconst_1
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC4_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            iconst_2
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC2_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            iconst_3
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_DES_40:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            iconst_4
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_RC4_128:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            iconst_5
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_DES:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 6
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_3DES:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 7
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_IDEA:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 8
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_128:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 9
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_256:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 10
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_128_GCM:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            dup
            bipush 11
            getstatic sun.security.ssl.CipherSuite$BulkCipher.B_AES_256_GCM:Lsun/security/ssl/CipherSuite$BulkCipher;
            aastore
            putstatic sun.security.ssl.CipherSuite$BulkCipher.ENUM$VALUES:[Lsun/security/ssl/CipherSuite$BulkCipher;
        12: .line 516
            invokestatic sun.security.ssl.JsseJce.getSecureRandom:()Ljava/security/SecureRandom;
            putstatic sun.security.ssl.CipherSuite$BulkCipher.secureRandom:Ljava/security/SecureRandom;
        13: .line 517
            goto 16
      StackMap locals:
      StackMap stack: java.security.KeyManagementException
        14: astore 0 /* kme */
        start local 0 // java.security.KeyManagementException kme
        15: .line 518
            new java.lang.RuntimeException
            dup
            aload 0 /* kme */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.security.KeyManagementException kme
        16: .line 520
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           15   16     0   kme  Ljava/security/KeyManagementException;
      Exception table:
        from    to  target  type
          12    13      14  Class java.security.KeyManagementException

  private void <init>(java.lang.String, int, java.lang.String, sun.security.ssl.CipherSuite$CipherType, int, int, int, int, boolean);
    descriptor: (Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIIZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=10
        start local 0 // sun.security.ssl.CipherSuite$BulkCipher this
        start local 3 // java.lang.String transformation
        start local 4 // sun.security.ssl.CipherSuite$CipherType cipherType
        start local 5 // int keySize
        start local 6 // int expandedKeySize
        start local 7 // int ivSize
        start local 8 // int fixedIvSize
        start local 9 // boolean allowed
         0: .line 522
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 506
            aload 0 /* this */
            bipush 16
            putfield sun.security.ssl.CipherSuite$BulkCipher.tagSize:I
         2: .line 526
            aload 0 /* this */
            aload 3 /* transformation */
            putfield sun.security.ssl.CipherSuite$BulkCipher.transformation:Ljava/lang/String;
         3: .line 527
            aload 3 /* transformation */
            ldc "/"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 10 /* splits */
        start local 10 // java.lang.String[] splits
         4: .line 528
            aload 0 /* this */
            aload 10 /* splits */
            iconst_0
            aaload
            putfield sun.security.ssl.CipherSuite$BulkCipher.algorithm:Ljava/lang/String;
         5: .line 529
            aload 0 /* this */
            aload 4 /* cipherType */
            putfield sun.security.ssl.CipherSuite$BulkCipher.cipherType:Lsun/security/ssl/CipherSuite$CipherType;
         6: .line 530
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.ssl.CipherSuite$BulkCipher.algorithm:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* keySize */
            iconst_3
            ishl
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.security.ssl.CipherSuite$BulkCipher.description:Ljava/lang/String;
         7: .line 531
            aload 0 /* this */
            iload 5 /* keySize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.keySize:I
         8: .line 532
            aload 0 /* this */
            iload 7 /* ivSize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.ivSize:I
         9: .line 533
            aload 0 /* this */
            iload 8 /* fixedIvSize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.fixedIvSize:I
        10: .line 534
            aload 0 /* this */
            iload 9 /* allowed */
            putfield sun.security.ssl.CipherSuite$BulkCipher.allowed:Z
        11: .line 536
            aload 0 /* this */
            iload 6 /* expandedKeySize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.expandedKeySize:I
        12: .line 537
            aload 0 /* this */
            iconst_1
            putfield sun.security.ssl.CipherSuite$BulkCipher.exportable:Z
        13: .line 547
            aload 0 /* this */
        14: .line 548
            iload 9 /* allowed */
            ifeq 15
            iload 5 /* keySize */
            aload 3 /* transformation */
            invokestatic sun.security.ssl.CipherSuite$BulkCipher.isUnlimited:(ILjava/lang/String;)Z
            goto 16
      StackMap locals: sun.security.ssl.CipherSuite$BulkCipher java.lang.String int java.lang.String sun.security.ssl.CipherSuite$CipherType int int int int int java.lang.String[]
      StackMap stack: sun.security.ssl.CipherSuite$BulkCipher
        15: iconst_0
        16: .line 547
      StackMap locals: sun.security.ssl.CipherSuite$BulkCipher java.lang.String int java.lang.String sun.security.ssl.CipherSuite$CipherType int int int int int java.lang.String[]
      StackMap stack: sun.security.ssl.CipherSuite$BulkCipher int
            putfield sun.security.ssl.CipherSuite$BulkCipher.isAvailable:Z
        17: .line 549
            return
        end local 10 // java.lang.String[] splits
        end local 9 // boolean allowed
        end local 8 // int fixedIvSize
        end local 7 // int ivSize
        end local 6 // int expandedKeySize
        end local 5 // int keySize
        end local 4 // sun.security.ssl.CipherSuite$CipherType cipherType
        end local 3 // java.lang.String transformation
        end local 0 // sun.security.ssl.CipherSuite$BulkCipher this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   18     0             this  Lsun/security/ssl/CipherSuite$BulkCipher;
            0   18     3   transformation  Ljava/lang/String;
            0   18     4       cipherType  Lsun/security/ssl/CipherSuite$CipherType;
            0   18     5          keySize  I
            0   18     6  expandedKeySize  I
            0   18     7           ivSize  I
            0   18     8      fixedIvSize  I
            0   18     9          allowed  Z
            4   18    10           splits  [Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      $enum$name       
      $enum$ordinal    
      transformation   
      cipherType       
      keySize          
      expandedKeySize  
      ivSize           
      fixedIvSize      
      allowed          

  private void <init>(java.lang.String, int, java.lang.String, sun.security.ssl.CipherSuite$CipherType, int, int, int, boolean);
    descriptor: (Ljava/lang/String;ILjava/lang/String;Lsun/security/ssl/CipherSuite$CipherType;IIIZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=9
        start local 0 // sun.security.ssl.CipherSuite$BulkCipher this
        start local 3 // java.lang.String transformation
        start local 4 // sun.security.ssl.CipherSuite$CipherType cipherType
        start local 5 // int keySize
        start local 6 // int ivSize
        start local 7 // int fixedIvSize
        start local 8 // boolean allowed
         0: .line 551
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 506
            aload 0 /* this */
            bipush 16
            putfield sun.security.ssl.CipherSuite$BulkCipher.tagSize:I
         2: .line 553
            aload 0 /* this */
            aload 3 /* transformation */
            putfield sun.security.ssl.CipherSuite$BulkCipher.transformation:Ljava/lang/String;
         3: .line 554
            aload 3 /* transformation */
            ldc "/"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 9 /* splits */
        start local 9 // java.lang.String[] splits
         4: .line 555
            aload 0 /* this */
            aload 9 /* splits */
            iconst_0
            aaload
            putfield sun.security.ssl.CipherSuite$BulkCipher.algorithm:Ljava/lang/String;
         5: .line 556
            aload 0 /* this */
            aload 4 /* cipherType */
            putfield sun.security.ssl.CipherSuite$BulkCipher.cipherType:Lsun/security/ssl/CipherSuite$CipherType;
         6: .line 557
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.security.ssl.CipherSuite$BulkCipher.algorithm:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* keySize */
            iconst_3
            ishl
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.security.ssl.CipherSuite$BulkCipher.description:Ljava/lang/String;
         7: .line 558
            aload 0 /* this */
            iload 5 /* keySize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.keySize:I
         8: .line 559
            aload 0 /* this */
            iload 6 /* ivSize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.ivSize:I
         9: .line 560
            aload 0 /* this */
            iload 7 /* fixedIvSize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.fixedIvSize:I
        10: .line 561
            aload 0 /* this */
            iload 8 /* allowed */
            putfield sun.security.ssl.CipherSuite$BulkCipher.allowed:Z
        11: .line 563
            aload 0 /* this */
            iload 5 /* keySize */
            putfield sun.security.ssl.CipherSuite$BulkCipher.expandedKeySize:I
        12: .line 564
            aload 0 /* this */
            iconst_0
            putfield sun.security.ssl.CipherSuite$BulkCipher.exportable:Z
        13: .line 574
            aload 0 /* this */
        14: .line 575
            iload 8 /* allowed */
            ifeq 15
            iload 5 /* keySize */
            aload 3 /* transformation */
            invokestatic sun.security.ssl.CipherSuite$BulkCipher.isUnlimited:(ILjava/lang/String;)Z
            goto 16
      StackMap locals: sun.security.ssl.CipherSuite$BulkCipher java.lang.String int java.lang.String sun.security.ssl.CipherSuite$CipherType int int int int java.lang.String[]
      StackMap stack: sun.security.ssl.CipherSuite$BulkCipher
        15: iconst_0
        16: .line 574
      StackMap locals: sun.security.ssl.CipherSuite$BulkCipher java.lang.String int java.lang.String sun.security.ssl.CipherSuite$CipherType int int int int java.lang.String[]
      StackMap stack: sun.security.ssl.CipherSuite$BulkCipher int
            putfield sun.security.ssl.CipherSuite$BulkCipher.isAvailable:Z
        17: .line 576
            return
        end local 9 // java.lang.String[] splits
        end local 8 // boolean allowed
        end local 7 // int fixedIvSize
        end local 6 // int ivSize
        end local 5 // int keySize
        end local 4 // sun.security.ssl.CipherSuite$CipherType cipherType
        end local 3 // java.lang.String transformation
        end local 0 // sun.security.ssl.CipherSuite$BulkCipher this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Lsun/security/ssl/CipherSuite$BulkCipher;
            0   18     3  transformation  Ljava/lang/String;
            0   18     4      cipherType  Lsun/security/ssl/CipherSuite$CipherType;
            0   18     5         keySize  I
            0   18     6          ivSize  I
            0   18     7     fixedIvSize  I
            0   18     8         allowed  Z
            4   18     9          splits  [Ljava/lang/String;
    MethodParameters:
                Name  Flags
      $enum$name      
      $enum$ordinal   
      transformation  
      cipherType      
      keySize         
      ivSize          
      fixedIvSize     
      allowed         

  sun.security.ssl.CipherBox newCipher(sun.security.ssl.ProtocolVersion, javax.crypto.SecretKey, javax.crypto.spec.IvParameterSpec, java.security.SecureRandom, boolean);
    descriptor: (Lsun/security/ssl/ProtocolVersion;Ljavax/crypto/SecretKey;Ljavax/crypto/spec/IvParameterSpec;Ljava/security/SecureRandom;Z)Lsun/security/ssl/CipherBox;
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // sun.security.ssl.CipherSuite$BulkCipher this
        start local 1 // sun.security.ssl.ProtocolVersion version
        start local 2 // javax.crypto.SecretKey key
        start local 3 // javax.crypto.spec.IvParameterSpec iv
        start local 4 // java.security.SecureRandom random
        start local 5 // boolean encrypt
         0: .line 587
            aload 1 /* version */
            aload 0 /* this */
         1: .line 588
            aload 2 /* key */
            aload 3 /* iv */
            aload 4 /* random */
            iload 5 /* encrypt */
         2: .line 587
            invokestatic sun.security.ssl.CipherBox.newCipherBox:(Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite$BulkCipher;Ljavax/crypto/SecretKey;Ljavax/crypto/spec/IvParameterSpec;Ljava/security/SecureRandom;Z)Lsun/security/ssl/CipherBox;
            areturn
        end local 5 // boolean encrypt
        end local 4 // java.security.SecureRandom random
        end local 3 // javax.crypto.spec.IvParameterSpec iv
        end local 2 // javax.crypto.SecretKey key
        end local 1 // sun.security.ssl.ProtocolVersion version
        end local 0 // sun.security.ssl.CipherSuite$BulkCipher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lsun/security/ssl/CipherSuite$BulkCipher;
            0    3     1  version  Lsun/security/ssl/ProtocolVersion;
            0    3     2      key  Ljavax/crypto/SecretKey;
            0    3     3       iv  Ljavax/crypto/spec/IvParameterSpec;
            0    3     4   random  Ljava/security/SecureRandom;
            0    3     5  encrypt  Z
    Exceptions:
      throws java.security.NoSuchAlgorithmException
    MethodParameters:
         Name  Flags
      version  
      key      
      iv       
      random   
      encrypt  

  boolean isAvailable();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.CipherSuite$BulkCipher this
         0: .line 595
            aload 0 /* this */
            getfield sun.security.ssl.CipherSuite$BulkCipher.isAvailable:Z
            ireturn
        end local 0 // sun.security.ssl.CipherSuite$BulkCipher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/CipherSuite$BulkCipher;

  private static boolean isUnlimited(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // int keySize
        start local 1 // java.lang.String transformation
         0: .line 599
            iload 0 /* keySize */
            bipush 8
            imul
            istore 2 /* keySizeInBits */
        start local 2 // int keySizeInBits
         1: .line 600
            iload 2 /* keySizeInBits */
            sipush 128
            if_icmple 8
         2: .line 604
            aload 1 /* transformation */
         3: .line 603
            invokestatic javax.crypto.Cipher.getMaxAllowedKeyLength:(Ljava/lang/String;)I
         4: .line 604
            iload 2 /* keySizeInBits */
            if_icmpge 8
         5: .line 606
            iconst_0
            ireturn
         6: .line 608
      StackMap locals: int java.lang.String int
      StackMap stack: java.lang.Exception
            pop
         7: .line 609
            iconst_0
            ireturn
         8: .line 613
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // int keySizeInBits
        end local 1 // java.lang.String transformation
        end local 0 // int keySize
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0         keySize  I
            0    9     1  transformation  Ljava/lang/String;
            1    9     2   keySizeInBits  I
      Exception table:
        from    to  target  type
           2     5       6  Class java.lang.Exception
    MethodParameters:
                Name  Flags
      keySize         
      transformation  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.CipherSuite$BulkCipher this
         0: .line 618
            aload 0 /* this */
            getfield sun.security.ssl.CipherSuite$BulkCipher.description:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ssl.CipherSuite$BulkCipher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/CipherSuite$BulkCipher;

  public static sun.security.ssl.CipherSuite$BulkCipher[] values();
    descriptor: ()[Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic sun.security.ssl.CipherSuite$BulkCipher.ENUM$VALUES:[Lsun/security/ssl/CipherSuite$BulkCipher;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray sun.security.ssl.CipherSuite$BulkCipher
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static sun.security.ssl.CipherSuite$BulkCipher valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/security/ssl/CipherSuite$BulkCipher;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lsun/security/ssl/CipherSuite$BulkCipher;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast sun.security.ssl.CipherSuite$BulkCipher
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  
}
Signature: Ljava/lang/Enum<Lsun/security/ssl/CipherSuite$BulkCipher;>;
SourceFile: "CipherSuite.java"
NestHost: sun.security.ssl.CipherSuite
InnerClasses:
  final BulkCipher = sun.security.ssl.CipherSuite$BulkCipher of sun.security.ssl.CipherSuite
  final CipherType = sun.security.ssl.CipherSuite$CipherType of sun.security.ssl.CipherSuite