public class org.bouncycastle.crypto.digests.MD4Digest extends org.bouncycastle.crypto.digests.GeneralDigest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.crypto.digests.MD4Digest
  super_class: org.bouncycastle.crypto.digests.GeneralDigest
{
  private static final int DIGEST_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

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

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

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

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

  private int[] X;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

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

  private static final int S11;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int S12;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  private static final int S13;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  private static final int S14;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 19

  private static final int S21;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int S22;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int S23;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  private static final int S24;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  private static final int S31;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int S32;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  private static final int S33;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  private static final int S34;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 26
            aload 0 /* this */
            invokespecial org.bouncycastle.crypto.digests.GeneralDigest.<init>:()V
         1: .line 20
            aload 0 /* this */
            bipush 16
            newarray 10
            putfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
         2: .line 28
            aload 0 /* this */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.reset:()V
         3: .line 29
            return
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;

  public void <init>(org.bouncycastle.crypto.digests.MD4Digest);
    descriptor: (Lorg/bouncycastle/crypto/digests/MD4Digest;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // org.bouncycastle.crypto.digests.MD4Digest t
         0: .line 37
            aload 0 /* this */
            aload 1 /* t */
            invokespecial org.bouncycastle.crypto.digests.GeneralDigest.<init>:(Lorg/bouncycastle/crypto/digests/GeneralDigest;)V
         1: .line 20
            aload 0 /* this */
            bipush 16
            newarray 10
            putfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
         2: .line 39
            aload 0 /* this */
            aload 1 /* t */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.copyIn:(Lorg/bouncycastle/crypto/digests/MD4Digest;)V
         3: .line 40
            return
        end local 1 // org.bouncycastle.crypto.digests.MD4Digest t
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    4     1     t  Lorg/bouncycastle/crypto/digests/MD4Digest;
    MethodParameters:
      Name  Flags
      t     

  private void copyIn(org.bouncycastle.crypto.digests.MD4Digest);
    descriptor: (Lorg/bouncycastle/crypto/digests/MD4Digest;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // org.bouncycastle.crypto.digests.MD4Digest t
         0: .line 44
            aload 0 /* this */
            aload 1 /* t */
            invokespecial org.bouncycastle.crypto.digests.GeneralDigest.copyIn:(Lorg/bouncycastle/crypto/digests/GeneralDigest;)V
         1: .line 46
            aload 0 /* this */
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
            putfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
         2: .line 47
            aload 0 /* this */
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
            putfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
         3: .line 48
            aload 0 /* this */
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
            putfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
         4: .line 49
            aload 0 /* this */
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
            putfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
         5: .line 51
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_0
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_0
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         6: .line 52
            aload 0 /* this */
            aload 1 /* t */
            getfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
            putfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
         7: .line 53
            return
        end local 1 // org.bouncycastle.crypto.digests.MD4Digest t
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    8     1     t  Lorg/bouncycastle/crypto/digests/MD4Digest;
    MethodParameters:
      Name  Flags
      t     

  public java.lang.String getAlgorithmName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 57
            ldc "MD4"
            areturn
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;

  public int getDigestSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 62
            bipush 16
            ireturn
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;

  protected void processWord(byte[], int);
    descriptor: ([BI)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // byte[] in
        start local 2 // int inOff
         0: .line 69
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            aload 0 /* this */
            dup
            getfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
            dup_x1
            iconst_1
            iadd
            putfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
            aload 1 /* in */
            iload 2 /* inOff */
            baload
            sipush 255
            iand
            aload 1 /* in */
            iload 2 /* inOff */
            iconst_1
            iadd
            baload
            sipush 255
            iand
            bipush 8
            ishl
            ior
         1: .line 70
            aload 1 /* in */
            iload 2 /* inOff */
            iconst_2
            iadd
            baload
            sipush 255
            iand
            bipush 16
            ishl
            ior
            aload 1 /* in */
            iload 2 /* inOff */
            iconst_3
            iadd
            baload
            sipush 255
            iand
            bipush 24
            ishl
            ior
         2: .line 69
            iastore
         3: .line 72
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
            bipush 16
            if_icmpne 5
         4: .line 74
            aload 0 /* this */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.processBlock:()V
         5: .line 76
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int inOff
        end local 1 // byte[] in
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    6     1     in  [B
            0    6     2  inOff  I
    MethodParameters:
       Name  Flags
      in     
      inOff  

  protected void processLength(long);
    descriptor: (J)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // long bitLength
         0: .line 81
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
            bipush 14
            if_icmple 2
         1: .line 83
            aload 0 /* this */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.processBlock:()V
         2: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 14
            lload 1 /* bitLength */
            ldc -1
            land
            l2i
            iastore
         3: .line 87
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 15
            lload 1 /* bitLength */
            bipush 32
            lushr
            l2i
            iastore
         4: .line 88
            return
        end local 1 // long bitLength
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    5     1  bitLength  J
    MethodParameters:
           Name  Flags
      bitLength  

  private void unpackWord(int, byte[], int);
    descriptor: (I[BI)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // int word
        start local 2 // byte[] out
        start local 3 // int outOff
         0: .line 95
            aload 2 /* out */
            iload 3 /* outOff */
            iload 1 /* word */
            i2b
            bastore
         1: .line 96
            aload 2 /* out */
            iload 3 /* outOff */
            iconst_1
            iadd
            iload 1 /* word */
            bipush 8
            iushr
            i2b
            bastore
         2: .line 97
            aload 2 /* out */
            iload 3 /* outOff */
            iconst_2
            iadd
            iload 1 /* word */
            bipush 16
            iushr
            i2b
            bastore
         3: .line 98
            aload 2 /* out */
            iload 3 /* outOff */
            iconst_3
            iadd
            iload 1 /* word */
            bipush 24
            iushr
            i2b
            bastore
         4: .line 99
            return
        end local 3 // int outOff
        end local 2 // byte[] out
        end local 1 // int word
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    5     1    word  I
            0    5     2     out  [B
            0    5     3  outOff  I
    MethodParameters:
        Name  Flags
      word    
      out     
      outOff  

  public int doFinal(byte[], int);
    descriptor: ([BI)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // byte[] out
        start local 2 // int outOff
         0: .line 105
            aload 0 /* this */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.finish:()V
         1: .line 107
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
            aload 1 /* out */
            iload 2 /* outOff */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.unpackWord:(I[BI)V
         2: .line 108
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
            aload 1 /* out */
            iload 2 /* outOff */
            iconst_4
            iadd
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.unpackWord:(I[BI)V
         3: .line 109
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
            aload 1 /* out */
            iload 2 /* outOff */
            bipush 8
            iadd
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.unpackWord:(I[BI)V
         4: .line 110
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
            aload 1 /* out */
            iload 2 /* outOff */
            bipush 12
            iadd
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.unpackWord:(I[BI)V
         5: .line 112
            aload 0 /* this */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.reset:()V
         6: .line 114
            bipush 16
            ireturn
        end local 2 // int outOff
        end local 1 // byte[] out
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    7     1     out  [B
            0    7     2  outOff  I
    MethodParameters:
        Name  Flags
      out     
      outOff  

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 122
            aload 0 /* this */
            invokespecial org.bouncycastle.crypto.digests.GeneralDigest.reset:()V
         1: .line 124
            aload 0 /* this */
            ldc 1732584193
            putfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
         2: .line 125
            aload 0 /* this */
            ldc -271733879
            putfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
         3: .line 126
            aload 0 /* this */
            ldc -1732584194
            putfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
         4: .line 127
            aload 0 /* this */
            ldc 271733878
            putfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
         5: .line 129
            aload 0 /* this */
            iconst_0
            putfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
         6: .line 131
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         7: goto 10
         8: .line 133
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iload 1 /* i */
            iconst_0
            iastore
         9: .line 131
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 1 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            arraylength
            if_icmpne 8
        end local 1 // int i
        11: .line 135
            return
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            7   11     1     i  I

  private int rotateLeft(int, int);
    descriptor: (II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // int x
        start local 2 // int n
         0: .line 168
            iload 1 /* x */
            iload 2 /* n */
            ishl
            iload 1 /* x */
            bipush 32
            iload 2 /* n */
            isub
            iushr
            ior
            ireturn
        end local 2 // int n
        end local 1 // int x
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    1     1     x  I
            0    1     2     n  I
    MethodParameters:
      Name  Flags
      x     
      n     

  private int F(int, int, int);
    descriptor: (III)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // int u
        start local 2 // int v
        start local 3 // int w
         0: .line 179
            iload 1 /* u */
            iload 2 /* v */
            iand
            iload 1 /* u */
            iconst_m1
            ixor
            iload 3 /* w */
            iand
            ior
            ireturn
        end local 3 // int w
        end local 2 // int v
        end local 1 // int u
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    1     1     u  I
            0    1     2     v  I
            0    1     3     w  I
    MethodParameters:
      Name  Flags
      u     
      v     
      w     

  private int G(int, int, int);
    descriptor: (III)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // int u
        start local 2 // int v
        start local 3 // int w
         0: .line 187
            iload 1 /* u */
            iload 2 /* v */
            iand
            iload 1 /* u */
            iload 3 /* w */
            iand
            ior
            iload 2 /* v */
            iload 3 /* w */
            iand
            ior
            ireturn
        end local 3 // int w
        end local 2 // int v
        end local 1 // int u
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    1     1     u  I
            0    1     2     v  I
            0    1     3     w  I
    MethodParameters:
      Name  Flags
      u     
      v     
      w     

  private int H(int, int, int);
    descriptor: (III)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // int u
        start local 2 // int v
        start local 3 // int w
         0: .line 195
            iload 1 /* u */
            iload 2 /* v */
            ixor
            iload 3 /* w */
            ixor
            ireturn
        end local 3 // int w
        end local 2 // int v
        end local 1 // int u
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    1     1     u  I
            0    1     2     v  I
            0    1     3     w  I
    MethodParameters:
      Name  Flags
      u     
      v     
      w     

  protected void processBlock();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 200
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
            istore 1 /* a */
        start local 1 // int a
         1: .line 201
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
            istore 2 /* b */
        start local 2 // int b
         2: .line 202
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
            istore 3 /* c */
        start local 3 // int c
         3: .line 203
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
            istore 4 /* d */
        start local 4 // int d
         4: .line 208
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_0
            iaload
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
         5: .line 209
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_1
            iaload
            iadd
            bipush 7
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
         6: .line 210
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_2
            iaload
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
         7: .line 211
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_3
            iaload
            iadd
            bipush 19
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
         8: .line 212
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_4
            iaload
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
         9: .line 213
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_5
            iaload
            iadd
            bipush 7
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        10: .line 214
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 6
            iaload
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        11: .line 215
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 7
            iaload
            iadd
            bipush 19
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        12: .line 216
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 8
            iaload
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        13: .line 217
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 9
            iaload
            iadd
            bipush 7
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        14: .line 218
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 10
            iaload
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        15: .line 219
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 11
            iaload
            iadd
            bipush 19
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        16: .line 220
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 12
            iaload
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        17: .line 221
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 13
            iaload
            iadd
            bipush 7
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        18: .line 222
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 14
            iaload
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        19: .line 223
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.F:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 15
            iaload
            iadd
            bipush 19
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        20: .line 228
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_0
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        21: .line 229
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_4
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_5
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        22: .line 230
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 8
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        23: .line 231
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 12
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 13
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        24: .line 232
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_1
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        25: .line 233
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_5
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_5
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        26: .line 234
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 9
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        27: .line 235
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 13
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 13
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        28: .line 236
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_2
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        29: .line 237
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 6
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_5
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        30: .line 238
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 10
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        31: .line 239
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 14
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 13
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        32: .line 240
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_3
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        33: .line 241
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 7
            iaload
            iadd
            ldc 1518500249
            iadd
            iconst_5
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        34: .line 242
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 11
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        35: .line 243
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.G:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 15
            iaload
            iadd
            ldc 1518500249
            iadd
            bipush 13
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        36: .line 248
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_0
            iaload
            iadd
            ldc 1859775393
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        37: .line 249
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 8
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        38: .line 250
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_4
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        39: .line 251
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 12
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 15
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        40: .line 252
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_2
            iaload
            iadd
            ldc 1859775393
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        41: .line 253
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 10
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        42: .line 254
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 6
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        43: .line 255
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 14
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 15
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        44: .line 256
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_1
            iaload
            iadd
            ldc 1859775393
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        45: .line 257
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 9
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        46: .line 258
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_5
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        47: .line 259
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 13
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 15
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        48: .line 260
            aload 0 /* this */
            iload 1 /* a */
            aload 0 /* this */
            iload 2 /* b */
            iload 3 /* c */
            iload 4 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iconst_3
            iaload
            iadd
            ldc 1859775393
            iadd
            iconst_3
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 1 /* a */
        49: .line 261
            aload 0 /* this */
            iload 4 /* d */
            aload 0 /* this */
            iload 1 /* a */
            iload 2 /* b */
            iload 3 /* c */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 11
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 9
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 4 /* d */
        50: .line 262
            aload 0 /* this */
            iload 3 /* c */
            aload 0 /* this */
            iload 4 /* d */
            iload 1 /* a */
            iload 2 /* b */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 7
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 11
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 3 /* c */
        51: .line 263
            aload 0 /* this */
            iload 2 /* b */
            aload 0 /* this */
            iload 3 /* c */
            iload 4 /* d */
            iload 1 /* a */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.H:(III)I
            iadd
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            bipush 15
            iaload
            iadd
            ldc 1859775393
            iadd
            bipush 15
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.rotateLeft:(II)I
            istore 2 /* b */
        52: .line 265
            aload 0 /* this */
            dup
            getfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
            iload 1 /* a */
            iadd
            putfield org.bouncycastle.crypto.digests.MD4Digest.H1:I
        53: .line 266
            aload 0 /* this */
            dup
            getfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
            iload 2 /* b */
            iadd
            putfield org.bouncycastle.crypto.digests.MD4Digest.H2:I
        54: .line 267
            aload 0 /* this */
            dup
            getfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
            iload 3 /* c */
            iadd
            putfield org.bouncycastle.crypto.digests.MD4Digest.H3:I
        55: .line 268
            aload 0 /* this */
            dup
            getfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
            iload 4 /* d */
            iadd
            putfield org.bouncycastle.crypto.digests.MD4Digest.H4:I
        56: .line 273
            aload 0 /* this */
            iconst_0
            putfield org.bouncycastle.crypto.digests.MD4Digest.xOff:I
        57: .line 274
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        58: goto 61
        59: .line 276
      StackMap locals: org.bouncycastle.crypto.digests.MD4Digest int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            iload 5 /* i */
            iconst_0
            iastore
        60: .line 274
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        61: iload 5 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.crypto.digests.MD4Digest.X:[I
            arraylength
            if_icmpne 59
        end local 5 // int i
        62: .line 278
            return
        end local 4 // int d
        end local 3 // int c
        end local 2 // int b
        end local 1 // int a
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   63     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            1   63     1     a  I
            2   63     2     b  I
            3   63     3     c  I
            4   63     4     d  I
           58   62     5     i  I

  public org.bouncycastle.util.Memoable copy();
    descriptor: ()Lorg/bouncycastle/util/Memoable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
         0: .line 282
            new org.bouncycastle.crypto.digests.MD4Digest
            dup
            aload 0 /* this */
            invokespecial org.bouncycastle.crypto.digests.MD4Digest.<init>:(Lorg/bouncycastle/crypto/digests/MD4Digest;)V
            areturn
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/crypto/digests/MD4Digest;

  public void reset(org.bouncycastle.util.Memoable);
    descriptor: (Lorg/bouncycastle/util/Memoable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.bouncycastle.crypto.digests.MD4Digest this
        start local 1 // org.bouncycastle.util.Memoable other
         0: .line 287
            aload 1 /* other */
            checkcast org.bouncycastle.crypto.digests.MD4Digest
            astore 2 /* d */
        start local 2 // org.bouncycastle.crypto.digests.MD4Digest d
         1: .line 289
            aload 0 /* this */
            aload 2 /* d */
            invokevirtual org.bouncycastle.crypto.digests.MD4Digest.copyIn:(Lorg/bouncycastle/crypto/digests/MD4Digest;)V
         2: .line 290
            return
        end local 2 // org.bouncycastle.crypto.digests.MD4Digest d
        end local 1 // org.bouncycastle.util.Memoable other
        end local 0 // org.bouncycastle.crypto.digests.MD4Digest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/bouncycastle/crypto/digests/MD4Digest;
            0    3     1  other  Lorg/bouncycastle/util/Memoable;
            1    3     2      d  Lorg/bouncycastle/crypto/digests/MD4Digest;
    MethodParameters:
       Name  Flags
      other  
}
SourceFile: "MD4Digest.java"