public class org.bouncycastle.crypto.digests.MD5Digest 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.MD5Digest
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: 7
private static final int S12;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final int S13;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 17
private static final int S14;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 22
private static final int S21;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int S22;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 9
private static final int S23;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 14
private static final int S24;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20
private static final int S31;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int S32;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 11
private static final int S33;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16
private static final int S34;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 23
private static final int S41;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static final int S42;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final int S43;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 15
private static final int S44;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 21
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.bouncycastle.crypto.digests.GeneralDigest.<init>:()V
1: aload 0
bipush 16
newarray 10
putfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
2: aload 0
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.reset:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
public void <init>(org.bouncycastle.crypto.digests.MD5Digest);
descriptor: (Lorg/bouncycastle/crypto/digests/MD5Digest;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.bouncycastle.crypto.digests.GeneralDigest.<init>:(Lorg/bouncycastle/crypto/digests/GeneralDigest;)V
1: aload 0
bipush 16
newarray 10
putfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
2: aload 0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
putfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
3: aload 0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
putfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
4: aload 0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
putfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
5: aload 0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
putfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
6: aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 0
aload 1
getfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
putfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
0 9 1 t Lorg/bouncycastle/crypto/digests/MD5Digest;
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 0: ldc "MD5"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
public int getDigestSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 16
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
protected void processWord(byte[], int);
descriptor: ([BI)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
aload 0
dup
getfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
dup_x1
iconst_1
iadd
putfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
aload 1
iload 2
baload
sipush 255
iand
aload 1
iload 2
iconst_1
iadd
baload
sipush 255
iand
bipush 8
ishl
ior
1: aload 1
iload 2
iconst_2
iadd
baload
sipush 255
iand
bipush 16
ishl
ior
aload 1
iload 2
iconst_3
iadd
baload
sipush 255
iand
bipush 24
ishl
ior
2: iastore
3: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
bipush 16
if_icmpne 5
4: aload 0
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.processBlock:()V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 0: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
bipush 14
if_icmple 2
1: aload 0
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.processBlock:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 14
lload 1
ldc -1
land
l2i
iastore
3: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 15
lload 1
bipush 32
lushr
l2i
iastore
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 start local 2 start local 3 0: aload 2
iload 3
iload 1
i2b
bastore
1: aload 2
iload 3
iconst_1
iadd
iload 1
bipush 8
iushr
i2b
bastore
2: aload 2
iload 3
iconst_2
iadd
iload 1
bipush 16
iushr
i2b
bastore
3: aload 2
iload 3
iconst_3
iadd
iload 1
bipush 24
iushr
i2b
bastore
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 start local 2 0: aload 0
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.finish:()V
1: aload 0
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
aload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.unpackWord:(I[BI)V
2: aload 0
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
aload 1
iload 2
iconst_4
iadd
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.unpackWord:(I[BI)V
3: aload 0
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
aload 1
iload 2
bipush 8
iadd
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.unpackWord:(I[BI)V
4: aload 0
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
aload 1
iload 2
bipush 12
iadd
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.unpackWord:(I[BI)V
5: aload 0
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.reset:()V
6: bipush 16
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 0: aload 0
invokespecial org.bouncycastle.crypto.digests.GeneralDigest.reset:()V
1: aload 0
ldc 1732584193
putfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
2: aload 0
ldc -271733879
putfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
3: aload 0
ldc -1732584194
putfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
4: aload 0
ldc 271733878
putfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
5: aload 0
iconst_0
putfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
6: iconst_0
istore 1
start local 1 7: goto 10
8: StackMap locals: int
StackMap stack:
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iload 1
iconst_0
iastore
9: iinc 1 1
StackMap locals:
StackMap stack:
10: iload 1
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
arraylength
if_icmpne 8
end local 1 11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 start local 2 0: iload 1
iload 2
ishl
iload 1
bipush 32
iload 2
isub
iushr
ior
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 start local 2 start local 3 0: iload 1
iload 2
iand
iload 1
iconst_m1
ixor
iload 3
iand
ior
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
iload 3
iand
iload 2
iload 3
iconst_m1
ixor
iand
ior
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 start local 1 start local 2 start local 3 0: iload 1
iload 2
ixor
iload 3
ixor
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
0 1 1 u I
0 1 2 v I
0 1 3 w I
MethodParameters:
Name Flags
u
v
w
private int K(int, int, int);
descriptor: (III)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iload 1
iload 3
iconst_m1
ixor
ior
ixor
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
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 0: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
istore 1
start local 1 1: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
istore 2
start local 2 2: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
istore 3
start local 3 3: aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
istore 4
start local 4 4: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
iaload
iadd
ldc -680876936
iadd
bipush 7
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
5: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_1
iaload
iadd
ldc -389564586
iadd
bipush 12
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
6: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_2
iaload
iadd
ldc 606105819
iadd
bipush 17
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
7: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_3
iaload
iadd
ldc -1044525330
iadd
bipush 22
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
8: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_4
iaload
iadd
ldc -176418897
iadd
bipush 7
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
9: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_5
iaload
iadd
ldc 1200080426
iadd
bipush 12
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
10: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 6
iaload
iadd
ldc -1473231341
iadd
bipush 17
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
11: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 7
iaload
iadd
ldc -45705983
iadd
bipush 22
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
12: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 8
iaload
iadd
ldc 1770035416
iadd
bipush 7
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
13: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 9
iaload
iadd
ldc -1958414417
iadd
bipush 12
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
14: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 10
iaload
iadd
ldc -42063
iadd
bipush 17
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
15: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 11
iaload
iadd
ldc -1990404162
iadd
bipush 22
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
16: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 12
iaload
iadd
ldc 1804603682
iadd
bipush 7
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
17: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 13
iaload
iadd
ldc -40341101
iadd
bipush 12
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
18: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 14
iaload
iadd
ldc -1502002290
iadd
bipush 17
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
19: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.F:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 15
iaload
iadd
ldc 1236535329
iadd
bipush 22
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
20: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_1
iaload
iadd
ldc -165796510
iadd
iconst_5
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
21: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 6
iaload
iadd
ldc -1069501632
iadd
bipush 9
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
22: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 11
iaload
iadd
ldc 643717713
iadd
bipush 14
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
23: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
iaload
iadd
ldc -373897302
iadd
bipush 20
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
24: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_5
iaload
iadd
ldc -701558691
iadd
iconst_5
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
25: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 10
iaload
iadd
ldc 38016083
iadd
bipush 9
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
26: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 15
iaload
iadd
ldc -660478335
iadd
bipush 14
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
27: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_4
iaload
iadd
ldc -405537848
iadd
bipush 20
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
28: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 9
iaload
iadd
ldc 568446438
iadd
iconst_5
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
29: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 14
iaload
iadd
ldc -1019803690
iadd
bipush 9
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
30: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_3
iaload
iadd
ldc -187363961
iadd
bipush 14
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
31: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 8
iaload
iadd
ldc 1163531501
iadd
bipush 20
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
32: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 13
iaload
iadd
ldc -1444681467
iadd
iconst_5
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
33: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_2
iaload
iadd
ldc -51403784
iadd
bipush 9
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
34: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 7
iaload
iadd
ldc 1735328473
iadd
bipush 14
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
35: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.G:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 12
iaload
iadd
ldc -1926607734
iadd
bipush 20
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
36: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_5
iaload
iadd
ldc -378558
iadd
iconst_4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
37: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 8
iaload
iadd
ldc -2022574463
iadd
bipush 11
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
38: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 11
iaload
iadd
ldc 1839030562
iadd
bipush 16
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
39: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 14
iaload
iadd
ldc -35309556
iadd
bipush 23
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
40: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_1
iaload
iadd
ldc -1530992060
iadd
iconst_4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
41: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_4
iaload
iadd
ldc 1272893353
iadd
bipush 11
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
42: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 7
iaload
iadd
ldc -155497632
iadd
bipush 16
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
43: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 10
iaload
iadd
ldc -1094730640
iadd
bipush 23
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
44: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 13
iaload
iadd
ldc 681279174
iadd
iconst_4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
45: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
iaload
iadd
ldc -358537222
iadd
bipush 11
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
46: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_3
iaload
iadd
ldc -722521979
iadd
bipush 16
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
47: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 6
iaload
iadd
ldc 76029189
iadd
bipush 23
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
48: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 9
iaload
iadd
ldc -640364487
iadd
iconst_4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
49: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 12
iaload
iadd
ldc -421815835
iadd
bipush 11
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
50: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 15
iaload
iadd
ldc 530742520
iadd
bipush 16
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
51: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.H:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_2
iaload
iadd
ldc -995338651
iadd
bipush 23
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
52: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_0
iaload
iadd
ldc -198630844
iadd
bipush 6
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
53: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 7
iaload
iadd
ldc 1126891415
iadd
bipush 10
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
54: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 14
iaload
iadd
ldc -1416354905
iadd
bipush 15
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
55: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_5
iaload
iadd
ldc -57434055
iadd
bipush 21
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
56: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 12
iaload
iadd
ldc 1700485571
iadd
bipush 6
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
57: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_3
iaload
iadd
ldc -1894986606
iadd
bipush 10
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
58: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 10
iaload
iadd
ldc -1051523
iadd
bipush 15
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
59: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_1
iaload
iadd
ldc -2054922799
iadd
bipush 21
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
60: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 8
iaload
iadd
ldc 1873313359
iadd
bipush 6
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
61: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 15
iaload
iadd
ldc -30611744
iadd
bipush 10
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
62: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 6
iaload
iadd
ldc -1560198380
iadd
bipush 15
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
63: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 13
iaload
iadd
ldc 1309151649
iadd
bipush 21
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
64: aload 0
iload 1
aload 0
iload 2
iload 3
iload 4
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_4
iaload
iadd
ldc -145523070
iadd
bipush 6
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 2
iadd
istore 1
65: aload 0
iload 4
aload 0
iload 1
iload 2
iload 3
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 11
iaload
iadd
ldc -1120210379
iadd
bipush 10
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 1
iadd
istore 4
66: aload 0
iload 3
aload 0
iload 4
iload 1
iload 2
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iconst_2
iaload
iadd
ldc 718787259
iadd
bipush 15
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 4
iadd
istore 3
67: aload 0
iload 2
aload 0
iload 3
iload 4
iload 1
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.K:(III)I
iadd
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
bipush 9
iaload
iadd
ldc -343485551
iadd
bipush 21
invokevirtual org.bouncycastle.crypto.digests.MD5Digest.rotateLeft:(II)I
iload 3
iadd
istore 2
68: aload 0
dup
getfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
iload 1
iadd
putfield org.bouncycastle.crypto.digests.MD5Digest.H1:I
69: aload 0
dup
getfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
iload 2
iadd
putfield org.bouncycastle.crypto.digests.MD5Digest.H2:I
70: aload 0
dup
getfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
iload 3
iadd
putfield org.bouncycastle.crypto.digests.MD5Digest.H3:I
71: aload 0
dup
getfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
iload 4
iadd
putfield org.bouncycastle.crypto.digests.MD5Digest.H4:I
72: aload 0
iconst_0
putfield org.bouncycastle.crypto.digests.MD5Digest.xOff:I
73: iconst_0
istore 5
start local 5 74: goto 77
75: StackMap locals: org.bouncycastle.crypto.digests.MD5Digest int int int int int
StackMap stack:
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
iload 5
iconst_0
iastore
76: iinc 5 1
StackMap locals:
StackMap stack:
77: iload 5
aload 0
getfield org.bouncycastle.crypto.digests.MD5Digest.X:[I
arraylength
if_icmpne 75
end local 5 78: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 79 0 this Lorg/bouncycastle/crypto/digests/MD5Digest;
1 79 1 a I
2 79 2 b I
3 79 3 c I
4 79 4 d I
74 78 5 i I
}
SourceFile: "MD5Digest.java"