public class org.bouncycastle.crypto.engines.DESEngine implements org.bouncycastle.crypto.BlockCipher
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.crypto.engines.DESEngine
super_class: java.lang.Object
{
protected static final int BLOCK_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private int[] workingKey;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private static final short[] bytebit;
descriptor: [S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] bigbyte;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] pc1;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] totrot;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] pc2;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP1;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP2;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP3;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP4;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP5;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP6;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP7;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int[] SP8;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: .line 109
bipush 8
newarray 9
dup
iconst_0
1: .line 110
sipush 128
sastore
dup
iconst_1
bipush 64
sastore
dup
iconst_2
bipush 32
sastore
dup
iconst_3
bipush 16
sastore
dup
iconst_4
bipush 8
sastore
dup
iconst_5
iconst_4
sastore
dup
bipush 6
iconst_2
sastore
dup
bipush 7
iconst_1
sastore
2: .line 108
putstatic org.bouncycastle.crypto.engines.DESEngine.bytebit:[S
3: .line 114
bipush 24
newarray 10
dup
iconst_0
4: .line 115
ldc 8388608
iastore
dup
iconst_1
ldc 4194304
iastore
dup
iconst_2
ldc 2097152
iastore
dup
iconst_3
ldc 1048576
iastore
dup
iconst_4
5: .line 116
ldc 524288
iastore
dup
iconst_5
ldc 262144
iastore
dup
bipush 6
ldc 131072
iastore
dup
bipush 7
ldc 65536
iastore
dup
bipush 8
6: .line 117
ldc 32768
iastore
dup
bipush 9
sipush 16384
iastore
dup
bipush 10
sipush 8192
iastore
dup
bipush 11
sipush 4096
iastore
dup
bipush 12
7: .line 118
sipush 2048
iastore
dup
bipush 13
sipush 1024
iastore
dup
bipush 14
sipush 512
iastore
dup
bipush 15
sipush 256
iastore
dup
bipush 16
8: .line 119
sipush 128
iastore
dup
bipush 17
bipush 64
iastore
dup
bipush 18
bipush 32
iastore
dup
bipush 19
bipush 16
iastore
dup
bipush 20
9: .line 120
bipush 8
iastore
dup
bipush 21
iconst_4
iastore
dup
bipush 22
iconst_2
iastore
dup
bipush 23
iconst_1
iastore
10: .line 113
putstatic org.bouncycastle.crypto.engines.DESEngine.bigbyte:[I
11: .line 128
bipush 56
newarray 8
dup
iconst_0
12: .line 129
bipush 56
bastore
dup
iconst_1
bipush 48
bastore
dup
iconst_2
bipush 40
bastore
dup
iconst_3
bipush 32
bastore
dup
iconst_4
bipush 24
bastore
dup
iconst_5
bipush 16
bastore
dup
bipush 6
bipush 8
bastore
dup
bipush 8
bipush 57
bastore
dup
bipush 9
bipush 49
bastore
dup
bipush 10
bipush 41
bastore
dup
bipush 11
bipush 33
bastore
dup
bipush 12
bipush 25
bastore
dup
bipush 13
bipush 17
bastore
dup
bipush 14
13: .line 130
bipush 9
bastore
dup
bipush 15
iconst_1
bastore
dup
bipush 16
bipush 58
bastore
dup
bipush 17
bipush 50
bastore
dup
bipush 18
bipush 42
bastore
dup
bipush 19
bipush 34
bastore
dup
bipush 20
bipush 26
bastore
dup
bipush 21
bipush 18
bastore
dup
bipush 22
bipush 10
bastore
dup
bipush 23
iconst_2
bastore
dup
bipush 24
bipush 59
bastore
dup
bipush 25
bipush 51
bastore
dup
bipush 26
bipush 43
bastore
dup
bipush 27
bipush 35
bastore
dup
bipush 28
14: .line 131
bipush 62
bastore
dup
bipush 29
bipush 54
bastore
dup
bipush 30
bipush 46
bastore
dup
bipush 31
bipush 38
bastore
dup
bipush 32
bipush 30
bastore
dup
bipush 33
bipush 22
bastore
dup
bipush 34
bipush 14
bastore
dup
bipush 35
bipush 6
bastore
dup
bipush 36
bipush 61
bastore
dup
bipush 37
bipush 53
bastore
dup
bipush 38
bipush 45
bastore
dup
bipush 39
bipush 37
bastore
dup
bipush 40
bipush 29
bastore
dup
bipush 41
bipush 21
bastore
dup
bipush 42
15: .line 132
bipush 13
bastore
dup
bipush 43
iconst_5
bastore
dup
bipush 44
bipush 60
bastore
dup
bipush 45
bipush 52
bastore
dup
bipush 46
bipush 44
bastore
dup
bipush 47
bipush 36
bastore
dup
bipush 48
bipush 28
bastore
dup
bipush 49
bipush 20
bastore
dup
bipush 50
bipush 12
bastore
dup
bipush 51
iconst_4
bastore
dup
bipush 52
bipush 27
bastore
dup
bipush 53
bipush 19
bastore
dup
bipush 54
bipush 11
bastore
dup
bipush 55
iconst_3
bastore
16: .line 127
putstatic org.bouncycastle.crypto.engines.DESEngine.pc1:[B
17: .line 136
bipush 16
newarray 8
dup
iconst_0
18: .line 137
iconst_1
bastore
dup
iconst_1
iconst_2
bastore
dup
iconst_2
iconst_4
bastore
dup
iconst_3
bipush 6
bastore
dup
iconst_4
bipush 8
bastore
dup
iconst_5
bipush 10
bastore
dup
bipush 6
bipush 12
bastore
dup
bipush 7
bipush 14
bastore
dup
bipush 8
19: .line 138
bipush 15
bastore
dup
bipush 9
bipush 17
bastore
dup
bipush 10
bipush 19
bastore
dup
bipush 11
bipush 21
bastore
dup
bipush 12
bipush 23
bastore
dup
bipush 13
bipush 25
bastore
dup
bipush 14
bipush 27
bastore
dup
bipush 15
bipush 28
bastore
20: .line 135
putstatic org.bouncycastle.crypto.engines.DESEngine.totrot:[B
21: .line 142
bipush 48
newarray 8
dup
iconst_0
22: .line 143
bipush 13
bastore
dup
iconst_1
bipush 16
bastore
dup
iconst_2
bipush 10
bastore
dup
iconst_3
bipush 23
bastore
dup
iconst_5
iconst_4
bastore
dup
bipush 6
iconst_2
bastore
dup
bipush 7
bipush 27
bastore
dup
bipush 8
bipush 14
bastore
dup
bipush 9
iconst_5
bastore
dup
bipush 10
bipush 20
bastore
dup
bipush 11
bipush 9
bastore
dup
bipush 12
23: .line 144
bipush 22
bastore
dup
bipush 13
bipush 18
bastore
dup
bipush 14
bipush 11
bastore
dup
bipush 15
iconst_3
bastore
dup
bipush 16
bipush 25
bastore
dup
bipush 17
bipush 7
bastore
dup
bipush 18
bipush 15
bastore
dup
bipush 19
bipush 6
bastore
dup
bipush 20
bipush 26
bastore
dup
bipush 21
bipush 19
bastore
dup
bipush 22
bipush 12
bastore
dup
bipush 23
iconst_1
bastore
dup
bipush 24
24: .line 145
bipush 40
bastore
dup
bipush 25
bipush 51
bastore
dup
bipush 26
bipush 30
bastore
dup
bipush 27
bipush 36
bastore
dup
bipush 28
bipush 46
bastore
dup
bipush 29
bipush 54
bastore
dup
bipush 30
bipush 29
bastore
dup
bipush 31
bipush 39
bastore
dup
bipush 32
bipush 50
bastore
dup
bipush 33
bipush 44
bastore
dup
bipush 34
bipush 32
bastore
dup
bipush 35
bipush 47
bastore
dup
bipush 36
25: .line 146
bipush 43
bastore
dup
bipush 37
bipush 48
bastore
dup
bipush 38
bipush 38
bastore
dup
bipush 39
bipush 55
bastore
dup
bipush 40
bipush 33
bastore
dup
bipush 41
bipush 52
bastore
dup
bipush 42
bipush 45
bastore
dup
bipush 43
bipush 41
bastore
dup
bipush 44
bipush 49
bastore
dup
bipush 45
bipush 35
bastore
dup
bipush 46
bipush 28
bastore
dup
bipush 47
bipush 31
bastore
26: .line 141
putstatic org.bouncycastle.crypto.engines.DESEngine.pc2:[B
27: .line 149
bipush 64
newarray 10
dup
iconst_0
28: .line 150
ldc 16843776
iastore
dup
iconst_2
ldc 65536
iastore
dup
iconst_3
ldc 16843780
iastore
dup
iconst_4
29: .line 151
ldc 16842756
iastore
dup
iconst_5
ldc 66564
iastore
dup
bipush 6
iconst_4
iastore
dup
bipush 7
ldc 65536
iastore
dup
bipush 8
30: .line 152
sipush 1024
iastore
dup
bipush 9
ldc 16843776
iastore
dup
bipush 10
ldc 16843780
iastore
dup
bipush 11
sipush 1024
iastore
dup
bipush 12
31: .line 153
ldc 16778244
iastore
dup
bipush 13
ldc 16842756
iastore
dup
bipush 14
ldc 16777216
iastore
dup
bipush 15
iconst_4
iastore
dup
bipush 16
32: .line 154
sipush 1028
iastore
dup
bipush 17
ldc 16778240
iastore
dup
bipush 18
ldc 16778240
iastore
dup
bipush 19
ldc 66560
iastore
dup
bipush 20
33: .line 155
ldc 66560
iastore
dup
bipush 21
ldc 16842752
iastore
dup
bipush 22
ldc 16842752
iastore
dup
bipush 23
ldc 16778244
iastore
dup
bipush 24
34: .line 156
ldc 65540
iastore
dup
bipush 25
ldc 16777220
iastore
dup
bipush 26
ldc 16777220
iastore
dup
bipush 27
ldc 65540
iastore
dup
bipush 29
35: .line 157
sipush 1028
iastore
dup
bipush 30
ldc 66564
iastore
dup
bipush 31
ldc 16777216
iastore
dup
bipush 32
36: .line 158
ldc 65536
iastore
dup
bipush 33
ldc 16843780
iastore
dup
bipush 34
iconst_4
iastore
dup
bipush 35
ldc 16842752
iastore
dup
bipush 36
37: .line 159
ldc 16843776
iastore
dup
bipush 37
ldc 16777216
iastore
dup
bipush 38
ldc 16777216
iastore
dup
bipush 39
sipush 1024
iastore
dup
bipush 40
38: .line 160
ldc 16842756
iastore
dup
bipush 41
ldc 65536
iastore
dup
bipush 42
ldc 66560
iastore
dup
bipush 43
ldc 16777220
iastore
dup
bipush 44
39: .line 161
sipush 1024
iastore
dup
bipush 45
iconst_4
iastore
dup
bipush 46
ldc 16778244
iastore
dup
bipush 47
ldc 66564
iastore
dup
bipush 48
40: .line 162
ldc 16843780
iastore
dup
bipush 49
ldc 65540
iastore
dup
bipush 50
ldc 16842752
iastore
dup
bipush 51
ldc 16778244
iastore
dup
bipush 52
41: .line 163
ldc 16777220
iastore
dup
bipush 53
sipush 1028
iastore
dup
bipush 54
ldc 66564
iastore
dup
bipush 55
ldc 16843776
iastore
dup
bipush 56
42: .line 164
sipush 1028
iastore
dup
bipush 57
ldc 16778240
iastore
dup
bipush 58
ldc 16778240
iastore
dup
bipush 60
43: .line 165
ldc 65540
iastore
dup
bipush 61
ldc 66560
iastore
dup
bipush 63
ldc 16842756
iastore
44: .line 149
putstatic org.bouncycastle.crypto.engines.DESEngine.SP1:[I
45: .line 168
bipush 64
newarray 10
dup
iconst_0
46: .line 169
ldc -2146402272
iastore
dup
iconst_1
ldc -2147450880
iastore
dup
iconst_2
ldc 32768
iastore
dup
iconst_3
ldc 1081376
iastore
dup
iconst_4
47: .line 170
ldc 1048576
iastore
dup
iconst_5
bipush 32
iastore
dup
bipush 6
ldc -2146435040
iastore
dup
bipush 7
ldc -2147450848
iastore
dup
bipush 8
48: .line 171
ldc -2147483616
iastore
dup
bipush 9
ldc -2146402272
iastore
dup
bipush 10
ldc -2146402304
iastore
dup
bipush 11
ldc -2147483648
iastore
dup
bipush 12
49: .line 172
ldc -2147450880
iastore
dup
bipush 13
ldc 1048576
iastore
dup
bipush 14
bipush 32
iastore
dup
bipush 15
ldc -2146435040
iastore
dup
bipush 16
50: .line 173
ldc 1081344
iastore
dup
bipush 17
ldc 1048608
iastore
dup
bipush 18
ldc -2147450848
iastore
dup
bipush 20
51: .line 174
ldc -2147483648
iastore
dup
bipush 21
ldc 32768
iastore
dup
bipush 22
ldc 1081376
iastore
dup
bipush 23
ldc -2146435072
iastore
dup
bipush 24
52: .line 175
ldc 1048608
iastore
dup
bipush 25
ldc -2147483616
iastore
dup
bipush 27
ldc 1081344
iastore
dup
bipush 28
53: .line 176
ldc 32800
iastore
dup
bipush 29
ldc -2146402304
iastore
dup
bipush 30
ldc -2146435072
iastore
dup
bipush 31
ldc 32800
iastore
dup
bipush 33
54: .line 177
ldc 1081376
iastore
dup
bipush 34
ldc -2146435040
iastore
dup
bipush 35
ldc 1048576
iastore
dup
bipush 36
55: .line 178
ldc -2147450848
iastore
dup
bipush 37
ldc -2146435072
iastore
dup
bipush 38
ldc -2146402304
iastore
dup
bipush 39
ldc 32768
iastore
dup
bipush 40
56: .line 179
ldc -2146435072
iastore
dup
bipush 41
ldc -2147450880
iastore
dup
bipush 42
bipush 32
iastore
dup
bipush 43
ldc -2146402272
iastore
dup
bipush 44
57: .line 180
ldc 1081376
iastore
dup
bipush 45
bipush 32
iastore
dup
bipush 46
ldc 32768
iastore
dup
bipush 47
ldc -2147483648
iastore
dup
bipush 48
58: .line 181
ldc 32800
iastore
dup
bipush 49
ldc -2146402304
iastore
dup
bipush 50
ldc 1048576
iastore
dup
bipush 51
ldc -2147483616
iastore
dup
bipush 52
59: .line 182
ldc 1048608
iastore
dup
bipush 53
ldc -2147450848
iastore
dup
bipush 54
ldc -2147483616
iastore
dup
bipush 55
ldc 1048608
iastore
dup
bipush 56
60: .line 183
ldc 1081344
iastore
dup
bipush 58
ldc -2147450880
iastore
dup
bipush 59
ldc 32800
iastore
dup
bipush 60
61: .line 184
ldc -2147483648
iastore
dup
bipush 61
ldc -2146435040
iastore
dup
bipush 62
ldc -2146402272
iastore
dup
bipush 63
ldc 1081344
iastore
62: .line 168
putstatic org.bouncycastle.crypto.engines.DESEngine.SP2:[I
63: .line 187
bipush 64
newarray 10
dup
iconst_0
64: .line 188
sipush 520
iastore
dup
iconst_1
ldc 134349312
iastore
dup
iconst_3
ldc 134348808
iastore
dup
iconst_4
65: .line 189
ldc 134218240
iastore
dup
bipush 6
ldc 131592
iastore
dup
bipush 7
ldc 134218240
iastore
dup
bipush 8
66: .line 190
ldc 131080
iastore
dup
bipush 9
ldc 134217736
iastore
dup
bipush 10
ldc 134217736
iastore
dup
bipush 11
ldc 131072
iastore
dup
bipush 12
67: .line 191
ldc 134349320
iastore
dup
bipush 13
ldc 131080
iastore
dup
bipush 14
ldc 134348800
iastore
dup
bipush 15
sipush 520
iastore
dup
bipush 16
68: .line 192
ldc 134217728
iastore
dup
bipush 17
bipush 8
iastore
dup
bipush 18
ldc 134349312
iastore
dup
bipush 19
sipush 512
iastore
dup
bipush 20
69: .line 193
ldc 131584
iastore
dup
bipush 21
ldc 134348800
iastore
dup
bipush 22
ldc 134348808
iastore
dup
bipush 23
ldc 131592
iastore
dup
bipush 24
70: .line 194
ldc 134218248
iastore
dup
bipush 25
ldc 131584
iastore
dup
bipush 26
ldc 131072
iastore
dup
bipush 27
ldc 134218248
iastore
dup
bipush 28
71: .line 195
bipush 8
iastore
dup
bipush 29
ldc 134349320
iastore
dup
bipush 30
sipush 512
iastore
dup
bipush 31
ldc 134217728
iastore
dup
bipush 32
72: .line 196
ldc 134349312
iastore
dup
bipush 33
ldc 134217728
iastore
dup
bipush 34
ldc 131080
iastore
dup
bipush 35
sipush 520
iastore
dup
bipush 36
73: .line 197
ldc 131072
iastore
dup
bipush 37
ldc 134349312
iastore
dup
bipush 38
ldc 134218240
iastore
dup
bipush 40
74: .line 198
sipush 512
iastore
dup
bipush 41
ldc 131080
iastore
dup
bipush 42
ldc 134349320
iastore
dup
bipush 43
ldc 134218240
iastore
dup
bipush 44
75: .line 199
ldc 134217736
iastore
dup
bipush 45
sipush 512
iastore
dup
bipush 47
ldc 134348808
iastore
dup
bipush 48
76: .line 200
ldc 134218248
iastore
dup
bipush 49
ldc 131072
iastore
dup
bipush 50
ldc 134217728
iastore
dup
bipush 51
ldc 134349320
iastore
dup
bipush 52
77: .line 201
bipush 8
iastore
dup
bipush 53
ldc 131592
iastore
dup
bipush 54
ldc 131584
iastore
dup
bipush 55
ldc 134217736
iastore
dup
bipush 56
78: .line 202
ldc 134348800
iastore
dup
bipush 57
ldc 134218248
iastore
dup
bipush 58
sipush 520
iastore
dup
bipush 59
ldc 134348800
iastore
dup
bipush 60
79: .line 203
ldc 131592
iastore
dup
bipush 61
bipush 8
iastore
dup
bipush 62
ldc 134348808
iastore
dup
bipush 63
ldc 131584
iastore
80: .line 187
putstatic org.bouncycastle.crypto.engines.DESEngine.SP3:[I
81: .line 206
bipush 64
newarray 10
dup
iconst_0
82: .line 207
ldc 8396801
iastore
dup
iconst_1
sipush 8321
iastore
dup
iconst_2
sipush 8321
iastore
dup
iconst_3
sipush 128
iastore
dup
iconst_4
83: .line 208
ldc 8396928
iastore
dup
iconst_5
ldc 8388737
iastore
dup
bipush 6
ldc 8388609
iastore
dup
bipush 7
sipush 8193
iastore
dup
bipush 9
84: .line 209
ldc 8396800
iastore
dup
bipush 10
ldc 8396800
iastore
dup
bipush 11
ldc 8396929
iastore
dup
bipush 12
85: .line 210
sipush 129
iastore
dup
bipush 14
ldc 8388736
iastore
dup
bipush 15
ldc 8388609
iastore
dup
bipush 16
86: .line 211
iconst_1
iastore
dup
bipush 17
sipush 8192
iastore
dup
bipush 18
ldc 8388608
iastore
dup
bipush 19
ldc 8396801
iastore
dup
bipush 20
87: .line 212
sipush 128
iastore
dup
bipush 21
ldc 8388608
iastore
dup
bipush 22
sipush 8193
iastore
dup
bipush 23
sipush 8320
iastore
dup
bipush 24
88: .line 213
ldc 8388737
iastore
dup
bipush 25
iconst_1
iastore
dup
bipush 26
sipush 8320
iastore
dup
bipush 27
ldc 8388736
iastore
dup
bipush 28
89: .line 214
sipush 8192
iastore
dup
bipush 29
ldc 8396928
iastore
dup
bipush 30
ldc 8396929
iastore
dup
bipush 31
sipush 129
iastore
dup
bipush 32
90: .line 215
ldc 8388736
iastore
dup
bipush 33
ldc 8388609
iastore
dup
bipush 34
ldc 8396800
iastore
dup
bipush 35
ldc 8396929
iastore
dup
bipush 36
91: .line 216
sipush 129
iastore
dup
bipush 39
ldc 8396800
iastore
dup
bipush 40
92: .line 217
sipush 8320
iastore
dup
bipush 41
ldc 8388736
iastore
dup
bipush 42
ldc 8388737
iastore
dup
bipush 43
iconst_1
iastore
dup
bipush 44
93: .line 218
ldc 8396801
iastore
dup
bipush 45
sipush 8321
iastore
dup
bipush 46
sipush 8321
iastore
dup
bipush 47
sipush 128
iastore
dup
bipush 48
94: .line 219
ldc 8396929
iastore
dup
bipush 49
sipush 129
iastore
dup
bipush 50
iconst_1
iastore
dup
bipush 51
sipush 8192
iastore
dup
bipush 52
95: .line 220
ldc 8388609
iastore
dup
bipush 53
sipush 8193
iastore
dup
bipush 54
ldc 8396928
iastore
dup
bipush 55
ldc 8388737
iastore
dup
bipush 56
96: .line 221
sipush 8193
iastore
dup
bipush 57
sipush 8320
iastore
dup
bipush 58
ldc 8388608
iastore
dup
bipush 59
ldc 8396801
iastore
dup
bipush 60
97: .line 222
sipush 128
iastore
dup
bipush 61
ldc 8388608
iastore
dup
bipush 62
sipush 8192
iastore
dup
bipush 63
ldc 8396928
iastore
98: .line 206
putstatic org.bouncycastle.crypto.engines.DESEngine.SP4:[I
99: .line 225
bipush 64
newarray 10
dup
iconst_0
100: .line 226
sipush 256
iastore
dup
iconst_1
ldc 34078976
iastore
dup
iconst_2
ldc 34078720
iastore
dup
iconst_3
ldc 1107296512
iastore
dup
iconst_4
101: .line 227
ldc 524288
iastore
dup
iconst_5
sipush 256
iastore
dup
bipush 6
ldc 1073741824
iastore
dup
bipush 7
ldc 34078720
iastore
dup
bipush 8
102: .line 228
ldc 1074266368
iastore
dup
bipush 9
ldc 524288
iastore
dup
bipush 10
ldc 33554688
iastore
dup
bipush 11
ldc 1074266368
iastore
dup
bipush 12
103: .line 229
ldc 1107296512
iastore
dup
bipush 13
ldc 1107820544
iastore
dup
bipush 14
ldc 524544
iastore
dup
bipush 15
ldc 1073741824
iastore
dup
bipush 16
104: .line 230
ldc 33554432
iastore
dup
bipush 17
ldc 1074266112
iastore
dup
bipush 18
ldc 1074266112
iastore
dup
bipush 20
105: .line 231
ldc 1073742080
iastore
dup
bipush 21
ldc 1107820800
iastore
dup
bipush 22
ldc 1107820800
iastore
dup
bipush 23
ldc 33554688
iastore
dup
bipush 24
106: .line 232
ldc 1107820544
iastore
dup
bipush 25
ldc 1073742080
iastore
dup
bipush 27
ldc 1107296256
iastore
dup
bipush 28
107: .line 233
ldc 34078976
iastore
dup
bipush 29
ldc 33554432
iastore
dup
bipush 30
ldc 1107296256
iastore
dup
bipush 31
ldc 524544
iastore
dup
bipush 32
108: .line 234
ldc 524288
iastore
dup
bipush 33
ldc 1107296512
iastore
dup
bipush 34
sipush 256
iastore
dup
bipush 35
ldc 33554432
iastore
dup
bipush 36
109: .line 235
ldc 1073741824
iastore
dup
bipush 37
ldc 34078720
iastore
dup
bipush 38
ldc 1107296512
iastore
dup
bipush 39
ldc 1074266368
iastore
dup
bipush 40
110: .line 236
ldc 33554688
iastore
dup
bipush 41
ldc 1073741824
iastore
dup
bipush 42
ldc 1107820544
iastore
dup
bipush 43
ldc 34078976
iastore
dup
bipush 44
111: .line 237
ldc 1074266368
iastore
dup
bipush 45
sipush 256
iastore
dup
bipush 46
ldc 33554432
iastore
dup
bipush 47
ldc 1107820544
iastore
dup
bipush 48
112: .line 238
ldc 1107820800
iastore
dup
bipush 49
ldc 524544
iastore
dup
bipush 50
ldc 1107296256
iastore
dup
bipush 51
ldc 1107820800
iastore
dup
bipush 52
113: .line 239
ldc 34078720
iastore
dup
bipush 54
ldc 1074266112
iastore
dup
bipush 55
ldc 1107296256
iastore
dup
bipush 56
114: .line 240
ldc 524544
iastore
dup
bipush 57
ldc 33554688
iastore
dup
bipush 58
ldc 1073742080
iastore
dup
bipush 59
ldc 524288
iastore
dup
bipush 61
115: .line 241
ldc 1074266112
iastore
dup
bipush 62
ldc 34078976
iastore
dup
bipush 63
ldc 1073742080
iastore
116: .line 225
putstatic org.bouncycastle.crypto.engines.DESEngine.SP5:[I
117: .line 244
bipush 64
newarray 10
dup
iconst_0
118: .line 245
ldc 536870928
iastore
dup
iconst_1
ldc 541065216
iastore
dup
iconst_2
sipush 16384
iastore
dup
iconst_3
ldc 541081616
iastore
dup
iconst_4
119: .line 246
ldc 541065216
iastore
dup
iconst_5
bipush 16
iastore
dup
bipush 6
ldc 541081616
iastore
dup
bipush 7
ldc 4194304
iastore
dup
bipush 8
120: .line 247
ldc 536887296
iastore
dup
bipush 9
ldc 4210704
iastore
dup
bipush 10
ldc 4194304
iastore
dup
bipush 11
ldc 536870928
iastore
dup
bipush 12
121: .line 248
ldc 4194320
iastore
dup
bipush 13
ldc 536887296
iastore
dup
bipush 14
ldc 536870912
iastore
dup
bipush 15
sipush 16400
iastore
dup
bipush 17
122: .line 249
ldc 4194320
iastore
dup
bipush 18
ldc 536887312
iastore
dup
bipush 19
sipush 16384
iastore
dup
bipush 20
123: .line 250
ldc 4210688
iastore
dup
bipush 21
ldc 536887312
iastore
dup
bipush 22
bipush 16
iastore
dup
bipush 23
ldc 541065232
iastore
dup
bipush 24
124: .line 251
ldc 541065232
iastore
dup
bipush 26
ldc 4210704
iastore
dup
bipush 27
ldc 541081600
iastore
dup
bipush 28
125: .line 252
sipush 16400
iastore
dup
bipush 29
ldc 4210688
iastore
dup
bipush 30
ldc 541081600
iastore
dup
bipush 31
ldc 536870912
iastore
dup
bipush 32
126: .line 253
ldc 536887296
iastore
dup
bipush 33
bipush 16
iastore
dup
bipush 34
ldc 541065232
iastore
dup
bipush 35
ldc 4210688
iastore
dup
bipush 36
127: .line 254
ldc 541081616
iastore
dup
bipush 37
ldc 4194304
iastore
dup
bipush 38
sipush 16400
iastore
dup
bipush 39
ldc 536870928
iastore
dup
bipush 40
128: .line 255
ldc 4194304
iastore
dup
bipush 41
ldc 536887296
iastore
dup
bipush 42
ldc 536870912
iastore
dup
bipush 43
sipush 16400
iastore
dup
bipush 44
129: .line 256
ldc 536870928
iastore
dup
bipush 45
ldc 541081616
iastore
dup
bipush 46
ldc 4210688
iastore
dup
bipush 47
ldc 541065216
iastore
dup
bipush 48
130: .line 257
ldc 4210704
iastore
dup
bipush 49
ldc 541081600
iastore
dup
bipush 51
ldc 541065232
iastore
dup
bipush 52
131: .line 258
bipush 16
iastore
dup
bipush 53
sipush 16384
iastore
dup
bipush 54
ldc 541065216
iastore
dup
bipush 55
ldc 4210704
iastore
dup
bipush 56
132: .line 259
sipush 16384
iastore
dup
bipush 57
ldc 4194320
iastore
dup
bipush 58
ldc 536887312
iastore
dup
bipush 60
133: .line 260
ldc 541081600
iastore
dup
bipush 61
ldc 536870912
iastore
dup
bipush 62
ldc 4194320
iastore
dup
bipush 63
ldc 536887312
iastore
134: .line 244
putstatic org.bouncycastle.crypto.engines.DESEngine.SP6:[I
135: .line 263
bipush 64
newarray 10
dup
iconst_0
136: .line 264
ldc 2097152
iastore
dup
iconst_1
ldc 69206018
iastore
dup
iconst_2
ldc 67110914
iastore
dup
iconst_4
137: .line 265
sipush 2048
iastore
dup
iconst_5
ldc 67110914
iastore
dup
bipush 6
ldc 2099202
iastore
dup
bipush 7
ldc 69208064
iastore
dup
bipush 8
138: .line 266
ldc 69208066
iastore
dup
bipush 9
ldc 2097152
iastore
dup
bipush 11
ldc 67108866
iastore
dup
bipush 12
139: .line 267
iconst_2
iastore
dup
bipush 13
ldc 67108864
iastore
dup
bipush 14
ldc 69206018
iastore
dup
bipush 15
sipush 2050
iastore
dup
bipush 16
140: .line 268
ldc 67110912
iastore
dup
bipush 17
ldc 2099202
iastore
dup
bipush 18
ldc 2097154
iastore
dup
bipush 19
ldc 67110912
iastore
dup
bipush 20
141: .line 269
ldc 67108866
iastore
dup
bipush 21
ldc 69206016
iastore
dup
bipush 22
ldc 69208064
iastore
dup
bipush 23
ldc 2097154
iastore
dup
bipush 24
142: .line 270
ldc 69206016
iastore
dup
bipush 25
sipush 2048
iastore
dup
bipush 26
sipush 2050
iastore
dup
bipush 27
ldc 69208066
iastore
dup
bipush 28
143: .line 271
ldc 2099200
iastore
dup
bipush 29
iconst_2
iastore
dup
bipush 30
ldc 67108864
iastore
dup
bipush 31
ldc 2099200
iastore
dup
bipush 32
144: .line 272
ldc 67108864
iastore
dup
bipush 33
ldc 2099200
iastore
dup
bipush 34
ldc 2097152
iastore
dup
bipush 35
ldc 67110914
iastore
dup
bipush 36
145: .line 273
ldc 67110914
iastore
dup
bipush 37
ldc 69206018
iastore
dup
bipush 38
ldc 69206018
iastore
dup
bipush 39
iconst_2
iastore
dup
bipush 40
146: .line 274
ldc 2097154
iastore
dup
bipush 41
ldc 67108864
iastore
dup
bipush 42
ldc 67110912
iastore
dup
bipush 43
ldc 2097152
iastore
dup
bipush 44
147: .line 275
ldc 69208064
iastore
dup
bipush 45
sipush 2050
iastore
dup
bipush 46
ldc 2099202
iastore
dup
bipush 47
ldc 69208064
iastore
dup
bipush 48
148: .line 276
sipush 2050
iastore
dup
bipush 49
ldc 67108866
iastore
dup
bipush 50
ldc 69208066
iastore
dup
bipush 51
ldc 69206016
iastore
dup
bipush 52
149: .line 277
ldc 2099200
iastore
dup
bipush 54
iconst_2
iastore
dup
bipush 55
ldc 69208066
iastore
dup
bipush 57
150: .line 278
ldc 2099202
iastore
dup
bipush 58
ldc 69206016
iastore
dup
bipush 59
sipush 2048
iastore
dup
bipush 60
151: .line 279
ldc 67108866
iastore
dup
bipush 61
ldc 67110912
iastore
dup
bipush 62
sipush 2048
iastore
dup
bipush 63
ldc 2097154
iastore
152: .line 263
putstatic org.bouncycastle.crypto.engines.DESEngine.SP7:[I
153: .line 282
bipush 64
newarray 10
dup
iconst_0
154: .line 283
ldc 268439616
iastore
dup
iconst_1
sipush 4096
iastore
dup
iconst_2
ldc 262144
iastore
dup
iconst_3
ldc 268701760
iastore
dup
iconst_4
155: .line 284
ldc 268435456
iastore
dup
iconst_5
ldc 268439616
iastore
dup
bipush 6
bipush 64
iastore
dup
bipush 7
ldc 268435456
iastore
dup
bipush 8
156: .line 285
ldc 262208
iastore
dup
bipush 9
ldc 268697600
iastore
dup
bipush 10
ldc 268701760
iastore
dup
bipush 11
ldc 266240
iastore
dup
bipush 12
157: .line 286
ldc 268701696
iastore
dup
bipush 13
ldc 266304
iastore
dup
bipush 14
sipush 4096
iastore
dup
bipush 15
bipush 64
iastore
dup
bipush 16
158: .line 287
ldc 268697600
iastore
dup
bipush 17
ldc 268435520
iastore
dup
bipush 18
ldc 268439552
iastore
dup
bipush 19
sipush 4160
iastore
dup
bipush 20
159: .line 288
ldc 266240
iastore
dup
bipush 21
ldc 262208
iastore
dup
bipush 22
ldc 268697664
iastore
dup
bipush 23
ldc 268701696
iastore
dup
bipush 24
160: .line 289
sipush 4160
iastore
dup
bipush 27
ldc 268697664
iastore
dup
bipush 28
161: .line 290
ldc 268435520
iastore
dup
bipush 29
ldc 268439552
iastore
dup
bipush 30
ldc 266304
iastore
dup
bipush 31
ldc 262144
iastore
dup
bipush 32
162: .line 291
ldc 266304
iastore
dup
bipush 33
ldc 262144
iastore
dup
bipush 34
ldc 268701696
iastore
dup
bipush 35
sipush 4096
iastore
dup
bipush 36
163: .line 292
bipush 64
iastore
dup
bipush 37
ldc 268697664
iastore
dup
bipush 38
sipush 4096
iastore
dup
bipush 39
ldc 266304
iastore
dup
bipush 40
164: .line 293
ldc 268439552
iastore
dup
bipush 41
bipush 64
iastore
dup
bipush 42
ldc 268435520
iastore
dup
bipush 43
ldc 268697600
iastore
dup
bipush 44
165: .line 294
ldc 268697664
iastore
dup
bipush 45
ldc 268435456
iastore
dup
bipush 46
ldc 262144
iastore
dup
bipush 47
ldc 268439616
iastore
dup
bipush 49
166: .line 295
ldc 268701760
iastore
dup
bipush 50
ldc 262208
iastore
dup
bipush 51
ldc 268435520
iastore
dup
bipush 52
167: .line 296
ldc 268697600
iastore
dup
bipush 53
ldc 268439552
iastore
dup
bipush 54
ldc 268439616
iastore
dup
bipush 56
168: .line 297
ldc 268701760
iastore
dup
bipush 57
ldc 266240
iastore
dup
bipush 58
ldc 266240
iastore
dup
bipush 59
sipush 4160
iastore
dup
bipush 60
169: .line 298
sipush 4160
iastore
dup
bipush 61
ldc 262208
iastore
dup
bipush 62
ldc 268435456
iastore
dup
bipush 63
ldc 268701696
iastore
170: .line 282
putstatic org.bouncycastle.crypto.engines.DESEngine.SP8:[I
171: .line 299
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
0: .line 23
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 18
aload 0 /* this */
aconst_null
putfield org.bouncycastle.crypto.engines.DESEngine.workingKey:[I
2: .line 25
return
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
public void init(boolean, org.bouncycastle.crypto.CipherParameters);
descriptor: (ZLorg/bouncycastle/crypto/CipherParameters;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
start local 1 // boolean encrypting
start local 2 // org.bouncycastle.crypto.CipherParameters params
0: .line 39
aload 2 /* params */
instanceof org.bouncycastle.crypto.params.KeyParameter
ifeq 7
1: .line 41
aload 2 /* params */
checkcast org.bouncycastle.crypto.params.KeyParameter
invokevirtual org.bouncycastle.crypto.params.KeyParameter.getKey:()[B
arraylength
bipush 8
if_icmple 3
2: .line 43
new java.lang.IllegalArgumentException
dup
ldc "DES key too long - should be 8 bytes"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: .line 46
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
iload 1 /* encrypting */
4: .line 47
aload 2 /* params */
checkcast org.bouncycastle.crypto.params.KeyParameter
invokevirtual org.bouncycastle.crypto.params.KeyParameter.getKey:()[B
5: .line 46
invokevirtual org.bouncycastle.crypto.engines.DESEngine.generateWorkingKey:(Z[B)[I
putfield org.bouncycastle.crypto.engines.DESEngine.workingKey:[I
6: .line 49
return
7: .line 52
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid parameter passed to DES init - "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* params */
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 2 // org.bouncycastle.crypto.CipherParameters params
end local 1 // boolean encrypting
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
0 8 1 encrypting Z
0 8 2 params Lorg/bouncycastle/crypto/CipherParameters;
MethodParameters:
Name Flags
encrypting
params
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.engines.DESEngine this
0: .line 57
ldc "DES"
areturn
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
public int getBlockSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
0: .line 62
bipush 8
ireturn
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
public int processBlock(byte[], int, byte[], int);
descriptor: ([BI[BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
start local 1 // byte[] in
start local 2 // int inOff
start local 3 // byte[] out
start local 4 // int outOff
0: .line 71
aload 0 /* this */
getfield org.bouncycastle.crypto.engines.DESEngine.workingKey:[I
ifnonnull 2
1: .line 73
new java.lang.IllegalStateException
dup
ldc "DES engine not initialised"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: .line 76
StackMap locals:
StackMap stack:
iload 2 /* inOff */
bipush 8
iadd
aload 1 /* in */
arraylength
if_icmple 4
3: .line 78
new org.bouncycastle.crypto.DataLengthException
dup
ldc "input buffer too short"
invokespecial org.bouncycastle.crypto.DataLengthException.<init>:(Ljava/lang/String;)V
athrow
4: .line 81
StackMap locals:
StackMap stack:
iload 4 /* outOff */
bipush 8
iadd
aload 3 /* out */
arraylength
if_icmple 6
5: .line 83
new org.bouncycastle.crypto.OutputLengthException
dup
ldc "output buffer too short"
invokespecial org.bouncycastle.crypto.OutputLengthException.<init>:(Ljava/lang/String;)V
athrow
6: .line 86
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield org.bouncycastle.crypto.engines.DESEngine.workingKey:[I
aload 1 /* in */
iload 2 /* inOff */
aload 3 /* out */
iload 4 /* outOff */
invokevirtual org.bouncycastle.crypto.engines.DESEngine.desFunc:([I[BI[BI)V
7: .line 88
bipush 8
ireturn
end local 4 // int outOff
end local 3 // byte[] out
end local 2 // int inOff
end local 1 // byte[] in
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
0 8 1 in [B
0 8 2 inOff I
0 8 3 out [B
0 8 4 outOff I
MethodParameters:
Name Flags
in
inOff
out
outOff
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
0: .line 93
return
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
protected int[] generateWorkingKey(boolean, byte[]);
descriptor: (Z[B)[I
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=11, args_size=3
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
start local 1 // boolean encrypting
start local 2 // byte[] key
0: .line 312
bipush 32
newarray 10
astore 3 /* newKey */
start local 3 // int[] newKey
1: .line 313
bipush 56
newarray 4
astore 4 /* pc1m */
start local 4 // boolean[] pc1m
2: .line 314
bipush 56
newarray 4
astore 5 /* pcr */
start local 5 // boolean[] pcr
3: .line 316
iconst_0
istore 6 /* j */
start local 6 // int j
4: goto 10
5: .line 318
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int
StackMap stack:
getstatic org.bouncycastle.crypto.engines.DESEngine.pc1:[B
iload 6 /* j */
baload
istore 7 /* l */
start local 7 // int l
6: .line 320
aload 4 /* pc1m */
iload 6 /* j */
aload 2 /* key */
iload 7 /* l */
iconst_3
iushr
baload
getstatic org.bouncycastle.crypto.engines.DESEngine.bytebit:[S
iload 7 /* l */
bipush 7
iand
saload
iand
ifeq 7
iconst_1
goto 8
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int int
StackMap stack: boolean[] int
7: iconst_0
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int int
StackMap stack: boolean[] int int
8: bastore
end local 7 // int l
9: .line 316
iinc 6 /* j */ 1
StackMap locals:
StackMap stack:
10: iload 6 /* j */
bipush 56
if_icmplt 5
end local 6 // int j
11: .line 323
iconst_0
istore 6 /* i */
start local 6 // int i
12: goto 46
13: .line 327
StackMap locals:
StackMap stack:
iload 1 /* encrypting */
ifeq 16
14: .line 329
iload 6 /* i */
iconst_1
ishl
istore 8 /* m */
start local 8 // int m
15: .line 330
goto 17
end local 8 // int m
16: .line 333
StackMap locals:
StackMap stack:
bipush 15
iload 6 /* i */
isub
iconst_1
ishl
istore 8 /* m */
start local 8 // int m
17: .line 336
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int top int
StackMap stack:
iload 8 /* m */
iconst_1
iadd
istore 9 /* n */
start local 9 // int n
18: .line 337
aload 3 /* newKey */
iload 8 /* m */
aload 3 /* newKey */
iload 9 /* n */
iconst_0
dup_x2
iastore
iastore
19: .line 339
iconst_0
istore 10 /* j */
start local 10 // int j
20: goto 27
21: .line 341
StackMap locals: int int
StackMap stack:
iload 10 /* j */
getstatic org.bouncycastle.crypto.engines.DESEngine.totrot:[B
iload 6 /* i */
baload
iadd
istore 7 /* l */
start local 7 // int l
22: .line 342
iload 7 /* l */
bipush 28
if_icmpge 25
23: .line 344
aload 5 /* pcr */
iload 10 /* j */
aload 4 /* pc1m */
iload 7 /* l */
baload
bastore
24: .line 345
goto 26
25: .line 348
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int int int int int
StackMap stack:
aload 5 /* pcr */
iload 10 /* j */
aload 4 /* pc1m */
iload 7 /* l */
bipush 28
isub
baload
bastore
26: .line 339
StackMap locals:
StackMap stack:
iinc 10 /* j */ 1
end local 7 // int l
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int top int int int
StackMap stack:
27: iload 10 /* j */
bipush 28
if_icmplt 21
end local 10 // int j
28: .line 352
bipush 28
istore 10 /* j */
start local 10 // int j
29: goto 36
30: .line 354
StackMap locals:
StackMap stack:
iload 10 /* j */
getstatic org.bouncycastle.crypto.engines.DESEngine.totrot:[B
iload 6 /* i */
baload
iadd
istore 7 /* l */
start local 7 // int l
31: .line 355
iload 7 /* l */
bipush 56
if_icmpge 34
32: .line 357
aload 5 /* pcr */
iload 10 /* j */
aload 4 /* pc1m */
iload 7 /* l */
baload
bastore
33: .line 358
goto 35
34: .line 361
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int int int int int
StackMap stack:
aload 5 /* pcr */
iload 10 /* j */
aload 4 /* pc1m */
iload 7 /* l */
bipush 28
isub
baload
bastore
35: .line 352
StackMap locals:
StackMap stack:
iinc 10 /* j */ 1
end local 7 // int l
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int top int int int
StackMap stack:
36: iload 10 /* j */
bipush 56
if_icmplt 30
end local 10 // int j
37: .line 365
iconst_0
istore 10 /* j */
start local 10 // int j
38: goto 44
39: .line 367
StackMap locals:
StackMap stack:
aload 5 /* pcr */
getstatic org.bouncycastle.crypto.engines.DESEngine.pc2:[B
iload 10 /* j */
baload
baload
ifeq 41
40: .line 369
aload 3 /* newKey */
iload 8 /* m */
dup2
iaload
getstatic org.bouncycastle.crypto.engines.DESEngine.bigbyte:[I
iload 10 /* j */
iaload
ior
iastore
41: .line 372
StackMap locals:
StackMap stack:
aload 5 /* pcr */
getstatic org.bouncycastle.crypto.engines.DESEngine.pc2:[B
iload 10 /* j */
bipush 24
iadd
baload
baload
ifeq 43
42: .line 374
aload 3 /* newKey */
iload 9 /* n */
dup2
iaload
getstatic org.bouncycastle.crypto.engines.DESEngine.bigbyte:[I
iload 10 /* j */
iaload
ior
iastore
43: .line 365
StackMap locals:
StackMap stack:
iinc 10 /* j */ 1
StackMap locals:
StackMap stack:
44: iload 10 /* j */
bipush 24
if_icmplt 39
end local 10 // int j
end local 9 // int n
end local 8 // int m
45: .line 323
iinc 6 /* i */ 1
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int byte[] int[] boolean[] boolean[] int
StackMap stack:
46: iload 6 /* i */
bipush 16
if_icmplt 13
end local 6 // int i
47: .line 382
iconst_0
istore 6 /* i */
start local 6 // int i
48: goto 58
49: .line 386
StackMap locals:
StackMap stack:
aload 3 /* newKey */
iload 6 /* i */
iaload
istore 7 /* i1 */
start local 7 // int i1
50: .line 387
aload 3 /* newKey */
iload 6 /* i */
iconst_1
iadd
iaload
istore 8 /* i2 */
start local 8 // int i2
51: .line 389
aload 3 /* newKey */
iload 6 /* i */
iload 7 /* i1 */
ldc 16515072
iand
bipush 6
ishl
iload 7 /* i1 */
sipush 4032
iand
bipush 10
ishl
ior
52: .line 390
iload 8 /* i2 */
ldc 16515072
iand
bipush 10
iushr
ior
iload 8 /* i2 */
sipush 4032
iand
bipush 6
iushr
ior
53: .line 389
iastore
54: .line 392
aload 3 /* newKey */
iload 6 /* i */
iconst_1
iadd
iload 7 /* i1 */
ldc 258048
iand
bipush 12
ishl
iload 7 /* i1 */
bipush 63
iand
bipush 16
ishl
ior
55: .line 393
iload 8 /* i2 */
ldc 258048
iand
iconst_4
iushr
ior
iload 8 /* i2 */
bipush 63
iand
ior
56: .line 392
iastore
end local 8 // int i2
end local 7 // int i1
57: .line 382
iinc 6 /* i */ 2
StackMap locals:
StackMap stack:
58: iload 6 /* i */
bipush 32
if_icmpne 49
end local 6 // int i
59: .line 396
aload 3 /* newKey */
areturn
end local 5 // boolean[] pcr
end local 4 // boolean[] pc1m
end local 3 // int[] newKey
end local 2 // byte[] key
end local 1 // boolean encrypting
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 60 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
0 60 1 encrypting Z
0 60 2 key [B
1 60 3 newKey [I
2 60 4 pc1m [Z
3 60 5 pcr [Z
4 11 6 j I
6 9 7 l I
12 47 6 i I
22 27 7 l I
31 36 7 l I
15 16 8 m I
17 45 8 m I
18 45 9 n I
20 28 10 j I
29 37 10 j I
38 45 10 j I
48 59 6 i I
50 57 7 i1 I
51 57 8 i2 I
MethodParameters:
Name Flags
encrypting
key
protected void desFunc(int[], byte[], int, byte[], int);
descriptor: ([I[BI[BI)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=11, args_size=6
start local 0 // org.bouncycastle.crypto.engines.DESEngine this
start local 1 // int[] wKey
start local 2 // byte[] in
start local 3 // int inOff
start local 4 // byte[] out
start local 5 // int outOff
0: .line 411
aload 2 /* in */
iload 3 /* inOff */
invokestatic org.bouncycastle.util.Pack.bigEndianToInt:([BI)I
istore 8 /* left */
start local 8 // int left
1: .line 412
aload 2 /* in */
iload 3 /* inOff */
iconst_4
iadd
invokestatic org.bouncycastle.util.Pack.bigEndianToInt:([BI)I
istore 7 /* right */
start local 7 // int right
2: .line 414
iload 8 /* left */
iconst_4
iushr
iload 7 /* right */
ixor
ldc 252645135
iand
istore 6 /* work */
start local 6 // int work
3: .line 415
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
4: .line 416
iload 8 /* left */
iload 6 /* work */
iconst_4
ishl
ixor
istore 8 /* left */
5: .line 417
iload 8 /* left */
bipush 16
iushr
iload 7 /* right */
ixor
ldc 65535
iand
istore 6 /* work */
6: .line 418
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
7: .line 419
iload 8 /* left */
iload 6 /* work */
bipush 16
ishl
ixor
istore 8 /* left */
8: .line 420
iload 7 /* right */
iconst_2
iushr
iload 8 /* left */
ixor
ldc 858993459
iand
istore 6 /* work */
9: .line 421
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
10: .line 422
iload 7 /* right */
iload 6 /* work */
iconst_2
ishl
ixor
istore 7 /* right */
11: .line 423
iload 7 /* right */
bipush 8
iushr
iload 8 /* left */
ixor
ldc 16711935
iand
istore 6 /* work */
12: .line 424
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
13: .line 425
iload 7 /* right */
iload 6 /* work */
bipush 8
ishl
ixor
istore 7 /* right */
14: .line 426
iload 7 /* right */
iconst_1
ishl
iload 7 /* right */
bipush 31
iushr
ior
istore 7 /* right */
15: .line 427
iload 8 /* left */
iload 7 /* right */
ixor
ldc -1431655766
iand
istore 6 /* work */
16: .line 428
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
17: .line 429
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
18: .line 430
iload 8 /* left */
iconst_1
ishl
iload 8 /* left */
bipush 31
iushr
ior
istore 8 /* left */
19: .line 432
iconst_0
istore 9 /* round */
start local 9 // int round
20: goto 46
21: .line 436
StackMap locals: org.bouncycastle.crypto.engines.DESEngine int[] byte[] int byte[] int int int int int
StackMap stack:
iload 7 /* right */
bipush 28
ishl
iload 7 /* right */
iconst_4
iushr
ior
istore 6 /* work */
22: .line 437
iload 6 /* work */
aload 1 /* wKey */
iload 9 /* round */
iconst_4
imul
iconst_0
iadd
iaload
ixor
istore 6 /* work */
23: .line 438
getstatic org.bouncycastle.crypto.engines.DESEngine.SP7:[I
iload 6 /* work */
bipush 63
iand
iaload
istore 10 /* fval */
start local 10 // int fval
24: .line 439
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP5:[I
iload 6 /* work */
bipush 8
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
25: .line 440
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP3:[I
iload 6 /* work */
bipush 16
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
26: .line 441
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP1:[I
iload 6 /* work */
bipush 24
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
27: .line 442
iload 7 /* right */
aload 1 /* wKey */
iload 9 /* round */
iconst_4
imul
iconst_1
iadd
iaload
ixor
istore 6 /* work */
28: .line 443
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP8:[I
iload 6 /* work */
bipush 63
iand
iaload
ior
istore 10 /* fval */
29: .line 444
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP6:[I
iload 6 /* work */
bipush 8
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
30: .line 445
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP4:[I
iload 6 /* work */
bipush 16
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
31: .line 446
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP2:[I
iload 6 /* work */
bipush 24
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
32: .line 447
iload 8 /* left */
iload 10 /* fval */
ixor
istore 8 /* left */
33: .line 448
iload 8 /* left */
bipush 28
ishl
iload 8 /* left */
iconst_4
iushr
ior
istore 6 /* work */
34: .line 449
iload 6 /* work */
aload 1 /* wKey */
iload 9 /* round */
iconst_4
imul
iconst_2
iadd
iaload
ixor
istore 6 /* work */
35: .line 450
getstatic org.bouncycastle.crypto.engines.DESEngine.SP7:[I
iload 6 /* work */
bipush 63
iand
iaload
istore 10 /* fval */
36: .line 451
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP5:[I
iload 6 /* work */
bipush 8
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
37: .line 452
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP3:[I
iload 6 /* work */
bipush 16
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
38: .line 453
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP1:[I
iload 6 /* work */
bipush 24
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
39: .line 454
iload 8 /* left */
aload 1 /* wKey */
iload 9 /* round */
iconst_4
imul
iconst_3
iadd
iaload
ixor
istore 6 /* work */
40: .line 455
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP8:[I
iload 6 /* work */
bipush 63
iand
iaload
ior
istore 10 /* fval */
41: .line 456
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP6:[I
iload 6 /* work */
bipush 8
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
42: .line 457
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP4:[I
iload 6 /* work */
bipush 16
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
43: .line 458
iload 10 /* fval */
getstatic org.bouncycastle.crypto.engines.DESEngine.SP2:[I
iload 6 /* work */
bipush 24
iushr
bipush 63
iand
iaload
ior
istore 10 /* fval */
44: .line 459
iload 7 /* right */
iload 10 /* fval */
ixor
istore 7 /* right */
end local 10 // int fval
45: .line 432
iinc 9 /* round */ 1
StackMap locals:
StackMap stack:
46: iload 9 /* round */
bipush 8
if_icmplt 21
end local 9 // int round
47: .line 462
iload 7 /* right */
bipush 31
ishl
iload 7 /* right */
iconst_1
iushr
ior
istore 7 /* right */
48: .line 463
iload 8 /* left */
iload 7 /* right */
ixor
ldc -1431655766
iand
istore 6 /* work */
49: .line 464
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
50: .line 465
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
51: .line 466
iload 8 /* left */
bipush 31
ishl
iload 8 /* left */
iconst_1
iushr
ior
istore 8 /* left */
52: .line 467
iload 8 /* left */
bipush 8
iushr
iload 7 /* right */
ixor
ldc 16711935
iand
istore 6 /* work */
53: .line 468
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
54: .line 469
iload 8 /* left */
iload 6 /* work */
bipush 8
ishl
ixor
istore 8 /* left */
55: .line 470
iload 8 /* left */
iconst_2
iushr
iload 7 /* right */
ixor
ldc 858993459
iand
istore 6 /* work */
56: .line 471
iload 7 /* right */
iload 6 /* work */
ixor
istore 7 /* right */
57: .line 472
iload 8 /* left */
iload 6 /* work */
iconst_2
ishl
ixor
istore 8 /* left */
58: .line 473
iload 7 /* right */
bipush 16
iushr
iload 8 /* left */
ixor
ldc 65535
iand
istore 6 /* work */
59: .line 474
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
60: .line 475
iload 7 /* right */
iload 6 /* work */
bipush 16
ishl
ixor
istore 7 /* right */
61: .line 476
iload 7 /* right */
iconst_4
iushr
iload 8 /* left */
ixor
ldc 252645135
iand
istore 6 /* work */
62: .line 477
iload 8 /* left */
iload 6 /* work */
ixor
istore 8 /* left */
63: .line 478
iload 7 /* right */
iload 6 /* work */
iconst_4
ishl
ixor
istore 7 /* right */
64: .line 480
iload 7 /* right */
aload 4 /* out */
iload 5 /* outOff */
invokestatic org.bouncycastle.util.Pack.intToBigEndian:(I[BI)V
65: .line 481
iload 8 /* left */
aload 4 /* out */
iload 5 /* outOff */
iconst_4
iadd
invokestatic org.bouncycastle.util.Pack.intToBigEndian:(I[BI)V
66: .line 482
return
end local 8 // int left
end local 7 // int right
end local 6 // int work
end local 5 // int outOff
end local 4 // byte[] out
end local 3 // int inOff
end local 2 // byte[] in
end local 1 // int[] wKey
end local 0 // org.bouncycastle.crypto.engines.DESEngine this
LocalVariableTable:
Start End Slot Name Signature
0 67 0 this Lorg/bouncycastle/crypto/engines/DESEngine;
0 67 1 wKey [I
0 67 2 in [B
0 67 3 inOff I
0 67 4 out [B
0 67 5 outOff I
3 67 6 work I
2 67 7 right I
1 67 8 left I
20 47 9 round I
24 45 10 fval I
MethodParameters:
Name Flags
wKey
in
inOff
out
outOff
}
SourceFile: "DESEngine.java"