class org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator extends org.bouncycastle.crypto.PBEParametersGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator
  super_class: org.bouncycastle.crypto.PBEParametersGenerator
{
  public static final int KEY_MATERIAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int IV_MATERIAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int MAC_MATERIAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private org.bouncycastle.crypto.Digest digest;
    descriptor: Lorg/bouncycastle/crypto/Digest;
    flags: (0x0002) ACC_PRIVATE

  private int u;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int v;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.bouncycastle.crypto.Digest);
    descriptor: (Lorg/bouncycastle/crypto/Digest;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // org.bouncycastle.crypto.Digest digest
         0: .line 48
            aload 0 /* this */
            invokespecial org.bouncycastle.crypto.PBEParametersGenerator.<init>:()V
         1: .line 51
            aload 0 /* this */
            aload 1 /* digest */
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
         2: .line 52
            aload 1 /* digest */
            instanceof org.bouncycastle.crypto.digests.MD5Digest
            ifeq 6
         3: .line 54
            aload 0 /* this */
            bipush 16
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
         4: .line 55
            aload 0 /* this */
            bipush 64
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
         5: .line 56
            goto 15
         6: .line 57
      StackMap locals: org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator org.bouncycastle.crypto.Digest
      StackMap stack:
            aload 1 /* digest */
            instanceof org.bouncycastle.crypto.digests.SHA1Digest
            ifeq 10
         7: .line 59
            aload 0 /* this */
            bipush 20
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
         8: .line 60
            aload 0 /* this */
            bipush 64
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
         9: .line 61
            goto 15
        10: .line 62
      StackMap locals:
      StackMap stack:
            aload 1 /* digest */
            instanceof org.bouncycastle.crypto.digests.RIPEMD160Digest
            ifeq 14
        11: .line 64
            aload 0 /* this */
            bipush 20
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
        12: .line 65
            aload 0 /* this */
            bipush 64
            putfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
        13: .line 66
            goto 15
        14: .line 69
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Digest "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* digest */
            invokeinterface org.bouncycastle.crypto.Digest.getAlgorithmName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " unsupported"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 71
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.bouncycastle.crypto.Digest digest
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0   16     1  digest  Lorg/bouncycastle/crypto/Digest;
    MethodParameters:
        Name  Flags
      digest  

  private void adjust(byte[], int, byte[]);
    descriptor: ([BI[B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // byte[] a
        start local 2 // int aOff
        start local 3 // byte[] b
         0: .line 83
            aload 3 /* b */
            aload 3 /* b */
            arraylength
            iconst_1
            isub
            baload
            sipush 255
            iand
            aload 1 /* a */
            iload 2 /* aOff */
            aload 3 /* b */
            arraylength
            iadd
            iconst_1
            isub
            baload
            sipush 255
            iand
            iadd
            iconst_1
            iadd
            istore 4 /* x */
        start local 4 // int x
         1: .line 85
            aload 1 /* a */
            iload 2 /* aOff */
            aload 3 /* b */
            arraylength
            iadd
            iconst_1
            isub
            iload 4 /* x */
            i2b
            bastore
         2: .line 86
            iload 4 /* x */
            bipush 8
            iushr
            istore 4 /* x */
         3: .line 88
            aload 3 /* b */
            arraylength
            iconst_2
            isub
            istore 5 /* i */
        start local 5 // int i
         4: goto 9
         5: .line 90
      StackMap locals: int int
      StackMap stack:
            iload 4 /* x */
            aload 3 /* b */
            iload 5 /* i */
            baload
            sipush 255
            iand
            aload 1 /* a */
            iload 2 /* aOff */
            iload 5 /* i */
            iadd
            baload
            sipush 255
            iand
            iadd
            iadd
            istore 4 /* x */
         6: .line 91
            aload 1 /* a */
            iload 2 /* aOff */
            iload 5 /* i */
            iadd
            iload 4 /* x */
            i2b
            bastore
         7: .line 92
            iload 4 /* x */
            bipush 8
            iushr
            istore 4 /* x */
         8: .line 88
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            ifge 5
        end local 5 // int i
        10: .line 94
            return
        end local 4 // int x
        end local 3 // byte[] b
        end local 2 // int aOff
        end local 1 // byte[] a
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0   11     1     a  [B
            0   11     2  aOff  I
            0   11     3     b  [B
            1   11     4     x  I
            4   10     5     i  I
    MethodParameters:
      Name  Flags
      a     
      aOff  
      b     

  private byte[] generateDerivedKey(int, int);
    descriptor: (II)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=3
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // int idByte
        start local 2 // int n
         0: .line 103
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            newarray 8
            astore 3 /* D */
        start local 3 // byte[] D
         1: .line 104
            iload 2 /* n */
            newarray 8
            astore 4 /* dKey */
        start local 4 // byte[] dKey
         2: .line 106
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 6
         4: .line 108
      StackMap locals: byte[] byte[] int
      StackMap stack:
            aload 3 /* D */
            iload 5 /* i */
            iload 1 /* idByte */
            i2b
            bastore
         5: .line 106
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            aload 3 /* D */
            arraylength
            if_icmpne 4
        end local 5 // int i
         7: .line 113
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.salt:[B
            ifnull 15
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.salt:[B
            arraylength
            ifeq 15
         8: .line 115
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.salt:[B
            arraylength
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            iadd
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            idiv
            imul
            newarray 8
            astore 5 /* S */
        start local 5 // byte[] S
         9: .line 117
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 13
        11: .line 119
      StackMap locals: org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator int int byte[] byte[] byte[] int
      StackMap stack:
            aload 5 /* S */
            iload 6 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.salt:[B
            iload 6 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.salt:[B
            arraylength
            irem
            baload
            bastore
        12: .line 117
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            aload 5 /* S */
            arraylength
            if_icmpne 11
        end local 6 // int i
        14: .line 121
            goto 16
        end local 5 // byte[] S
        15: .line 124
      StackMap locals:
      StackMap stack:
            iconst_0
            newarray 8
            astore 5 /* S */
        start local 5 // byte[] S
        16: .line 129
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.password:[B
            ifnull 24
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.password:[B
            arraylength
            ifeq 24
        17: .line 131
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.password:[B
            arraylength
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            iadd
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            idiv
            imul
            newarray 8
            astore 6 /* P */
        start local 6 // byte[] P
        18: .line 133
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        19: goto 22
        20: .line 135
      StackMap locals: byte[] int
      StackMap stack:
            aload 6 /* P */
            iload 7 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.password:[B
            iload 7 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.password:[B
            arraylength
            irem
            baload
            bastore
        21: .line 133
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* i */
            aload 6 /* P */
            arraylength
            if_icmpne 20
        end local 7 // int i
        23: .line 137
            goto 25
        end local 6 // byte[] P
        24: .line 140
      StackMap locals:
      StackMap stack:
            iconst_0
            newarray 8
            astore 6 /* P */
        start local 6 // byte[] P
        25: .line 143
      StackMap locals: byte[]
      StackMap stack:
            aload 5 /* S */
            arraylength
            aload 6 /* P */
            arraylength
            iadd
            newarray 8
            astore 7 /* I */
        start local 7 // byte[] I
        26: .line 145
            aload 5 /* S */
            iconst_0
            aload 7 /* I */
            iconst_0
            aload 5 /* S */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        27: .line 146
            aload 6 /* P */
            iconst_0
            aload 7 /* I */
            aload 5 /* S */
            arraylength
            aload 6 /* P */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        28: .line 148
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            newarray 8
            astore 8 /* B */
        start local 8 // byte[] B
        29: .line 149
            iload 2 /* n */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            iadd
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            idiv
            istore 9 /* c */
        start local 9 // int c
        30: .line 151
            iconst_1
            istore 10 /* i */
        start local 10 // int i
        31: goto 57
        32: .line 153
      StackMap locals: org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator int int byte[] byte[] byte[] byte[] byte[] byte[] int int
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            newarray 8
            astore 11 /* A */
        start local 11 // byte[] A
        33: .line 155
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
            aload 3 /* D */
            iconst_0
            aload 3 /* D */
            arraylength
            invokeinterface org.bouncycastle.crypto.Digest.update:([BII)V
        34: .line 156
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
            aload 7 /* I */
            iconst_0
            aload 7 /* I */
            arraylength
            invokeinterface org.bouncycastle.crypto.Digest.update:([BII)V
        35: .line 157
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
            aload 11 /* A */
            iconst_0
            invokeinterface org.bouncycastle.crypto.Digest.doFinal:([BI)I
            pop
        36: .line 158
            iconst_1
            istore 12 /* j */
        start local 12 // int j
        37: goto 41
        38: .line 160
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
            aload 11 /* A */
            iconst_0
            aload 11 /* A */
            arraylength
            invokeinterface org.bouncycastle.crypto.Digest.update:([BII)V
        39: .line 161
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.digest:Lorg/bouncycastle/crypto/Digest;
            aload 11 /* A */
            iconst_0
            invokeinterface org.bouncycastle.crypto.Digest.doFinal:([BI)I
            pop
        40: .line 158
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        41: iload 12 /* j */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.iterationCount:I
            if_icmpne 38
        end local 12 // int j
        42: .line 164
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        43: goto 46
        44: .line 166
      StackMap locals:
      StackMap stack:
            aload 8 /* B */
            iload 10 /* i */
            aload 11 /* A */
            iload 12 /* j */
            aload 11 /* A */
            arraylength
            irem
            baload
            bastore
        45: .line 164
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        46: iload 12 /* j */
            aload 8 /* B */
            arraylength
            if_icmpne 44
        end local 12 // int j
        47: .line 169
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        48: goto 51
        49: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* I */
            iload 12 /* j */
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            imul
            aload 8 /* B */
            invokevirtual org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.adjust:([BI[B)V
        50: .line 169
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        51: iload 12 /* j */
            aload 7 /* I */
            arraylength
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.v:I
            idiv
            if_icmpne 49
        end local 12 // int j
        52: .line 174
            iload 10 /* i */
            iload 9 /* c */
            if_icmpne 55
        53: .line 176
            aload 11 /* A */
            iconst_0
            aload 4 /* dKey */
            iload 10 /* i */
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            imul
            aload 4 /* dKey */
            arraylength
            iload 10 /* i */
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            imul
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        54: .line 177
            goto 56
        55: .line 180
      StackMap locals:
      StackMap stack:
            aload 11 /* A */
            iconst_0
            aload 4 /* dKey */
            iload 10 /* i */
            iconst_1
            isub
            aload 0 /* this */
            getfield org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.u:I
            imul
            aload 11 /* A */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 11 // byte[] A
        56: .line 151
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 10 /* i */
            iload 9 /* c */
            if_icmple 32
        end local 10 // int i
        58: .line 184
            aload 4 /* dKey */
            areturn
        end local 9 // int c
        end local 8 // byte[] B
        end local 7 // byte[] I
        end local 6 // byte[] P
        end local 5 // byte[] S
        end local 4 // byte[] dKey
        end local 3 // byte[] D
        end local 2 // int n
        end local 1 // int idByte
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   59     0    this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0   59     1  idByte  I
            0   59     2       n  I
            1   59     3       D  [B
            2   59     4    dKey  [B
            3    7     5       i  I
            9   15     5       S  [B
           16   59     5       S  [B
           10   14     6       i  I
           18   24     6       P  [B
           25   59     6       P  [B
           19   23     7       i  I
           26   59     7       I  [B
           29   59     8       B  [B
           30   59     9       c  I
           31   58    10       i  I
           33   56    11       A  [B
           37   42    12       j  I
           43   47    12       j  I
           48   52    12       j  I
    MethodParameters:
        Name  Flags
      idByte  
      n       

  public org.bouncycastle.crypto.CipherParameters generateDerivedParameters(int);
    descriptor: (I)Lorg/bouncycastle/crypto/CipherParameters;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // int keySize
         0: .line 197
            iload 1 /* keySize */
            bipush 8
            idiv
            istore 1 /* keySize */
         1: .line 199
            aload 0 /* this */
            iconst_1
            iload 1 /* keySize */
            invokevirtual org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.generateDerivedKey:(II)[B
            astore 2 /* dKey */
        start local 2 // byte[] dKey
         2: .line 201
            new org.bouncycastle.crypto.params.KeyParameter
            dup
            aload 2 /* dKey */
            iconst_0
            iload 1 /* keySize */
            invokespecial org.bouncycastle.crypto.params.KeyParameter.<init>:([BII)V
            areturn
        end local 2 // byte[] dKey
        end local 1 // int keySize
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0    3     1  keySize  I
            2    3     2     dKey  [B
    MethodParameters:
         Name  Flags
      keySize  

  public org.bouncycastle.crypto.CipherParameters generateDerivedParameters(int, int);
    descriptor: (II)Lorg/bouncycastle/crypto/CipherParameters;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // int keySize
        start local 2 // int ivSize
         0: .line 217
            iload 1 /* keySize */
            bipush 8
            idiv
            istore 1 /* keySize */
         1: .line 218
            iload 2 /* ivSize */
            bipush 8
            idiv
            istore 2 /* ivSize */
         2: .line 220
            aload 0 /* this */
            iconst_1
            iload 1 /* keySize */
            invokevirtual org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.generateDerivedKey:(II)[B
            astore 3 /* dKey */
        start local 3 // byte[] dKey
         3: .line 222
            aload 0 /* this */
            iconst_2
            iload 2 /* ivSize */
            invokevirtual org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.generateDerivedKey:(II)[B
            astore 4 /* iv */
        start local 4 // byte[] iv
         4: .line 224
            new org.bouncycastle.crypto.params.ParametersWithIV
            dup
            new org.bouncycastle.crypto.params.KeyParameter
            dup
            aload 3 /* dKey */
            iconst_0
            iload 1 /* keySize */
            invokespecial org.bouncycastle.crypto.params.KeyParameter.<init>:([BII)V
            aload 4 /* iv */
            iconst_0
            iload 2 /* ivSize */
            invokespecial org.bouncycastle.crypto.params.ParametersWithIV.<init>:(Lorg/bouncycastle/crypto/CipherParameters;[BII)V
            areturn
        end local 4 // byte[] iv
        end local 3 // byte[] dKey
        end local 2 // int ivSize
        end local 1 // int keySize
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0    5     1  keySize  I
            0    5     2   ivSize  I
            3    5     3     dKey  [B
            4    5     4       iv  [B
    MethodParameters:
         Name  Flags
      keySize  
      ivSize   

  public org.bouncycastle.crypto.CipherParameters generateDerivedMacParameters(int);
    descriptor: (I)Lorg/bouncycastle/crypto/CipherParameters;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
        start local 1 // int keySize
         0: .line 237
            iload 1 /* keySize */
            bipush 8
            idiv
            istore 1 /* keySize */
         1: .line 239
            aload 0 /* this */
            iconst_3
            iload 1 /* keySize */
            invokevirtual org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator.generateDerivedKey:(II)[B
            astore 2 /* dKey */
        start local 2 // byte[] dKey
         2: .line 241
            new org.bouncycastle.crypto.params.KeyParameter
            dup
            aload 2 /* dKey */
            iconst_0
            iload 1 /* keySize */
            invokespecial org.bouncycastle.crypto.params.KeyParameter.<init>:([BII)V
            areturn
        end local 2 // byte[] dKey
        end local 1 // int keySize
        end local 0 // org.bouncycastle.jce.provider.OldPKCS12ParametersGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/bouncycastle/jce/provider/OldPKCS12ParametersGenerator;
            0    3     1  keySize  I
            2    3     2     dKey  [B
    MethodParameters:
         Name  Flags
      keySize  
}
SourceFile: "BrokenPBE.java"