102350F9
call $
+
5
102350FE
pop eax
102350FF
add eax,
0Fh
10235102
mov ebx, [eax]
10235104
cmp
ebx,
1900190h
; 向下查找特征值
1023510A
jz short loc_1023510F
1023510C
inc eax
1023510D
jmp short loc_10235102
1023510F
mov edx, [eax
+
5
]
10235112
mov ebx, edx
10235114
inc edx
10235115
mov [eax
+
5
], edx ; 设置解码标志
10235118
cmp
ebx,
0
1023511B
jz short loc_10235122
1023511D
jmp loc_1023530A
10235122
push ebp
10235123
mov ebp, eax
10235125
add ebp,
11h
; ebp指向偏移表
10235128
add eax,
9
1023512B
mov ecx, [eax] ; ecx
=
解码区长度
1023512D
add eax,
4
10235130
mov edx, [eax] ; edx
=
偏移表项数
10235132
push eax
10235133
mov eax, edx
10235135
mov edx,
4
1023513A
mul edx
1023513C
mov edx, eax
1023513E
pop eax
1023513F
mov ebx, edx
10235141
add eax,
4
10235144
add eax, edx ; eax指向解码区开始
10235146
mov edi, edx
10235148
add edi,
11h
; edi
=
解码区首偏移
1023514B
xor edx, edx ; edx为解码区字节索引
1023514D
xor esi, esi ; esi为偏移表字节索引
1023514F
cmp
edx, ecx
10235151
jz short loc_10235186
10235153
cmp
ebx,
0
10235156
jz short loc_10235179
10235158
cmp
esi, ebx
1023515A
jz short loc_10235179
1023515C
push ecx
1023515D
mov ecx, [ebp
+
esi
+
0
] ; 取偏移表当前项
10235161
cmp
ecx,
0
10235164
jz short loc_10235178 ; 为零则跳过
4
字节
10235166
sub ecx, edi ; 减去解码区首偏移
10235168
cmp
ecx, edx ; 与解码区字节索引比较
1023516A
jnz short loc_10235178 ; 相等则跳过
4
字节
1023516C
pop ecx
1023516D
add eax,
3
10235170
add edx,
3
10235173
add esi,
4
10235176
jmp short loc_10235182
10235178
pop ecx
10235179
push ebx
1023517A
mov bl, [eax] ; 取一字节
1023517C
xor bl,
0FFh
; 与Key值异或
1023517F
mov [eax], bl ; 回存
10235181
pop ebx
10235182
inc eax
10235183
inc edx
10235184
jmp short loc_1023514F
10235186
pop ebp
10235187
jz loc_1023530A
1023518D
dd
1900190h
; 特征值
10235191
db
1
10235192
dd
0
; 解码标志
10235196
dd
1935h
; 解码区长度
1023519A
dd
5Bh
; 偏移表项数
; 偏移表,每一项是相对于特征值所在位置的偏移
1023519E
dd
204h
,
20Fh
,
242h
,
24Fh
,
26Ah
,
277h
,
2B8h
1023519E
dd
3E9h
,
3F4h
,
427h
,
434h
,
44Fh
,
45Ch
,
49Ah
1023519E
dd
6DCh
,
808h
,
934h
,
0A60h
,
0B8Ch
,
0CB8h
,
0DE4h
1023519E
dd
0DF8h
,
0FE6h
,
1112h
,
1126h
,
15A4h
,
1680h
,
16BDh
1023519E
dd
16E9h
,
1763h
,
1782h
,
17B5h
,
17DBh
,
17F7h
,
17FFh
1023519E
dd
1808h
,
1811h
,
18CAh
,
192Dh