Function at 0x8e0fbc
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8e0fc2
pop ebp
sub ebp, 6
sub ebp, 0x4e0fbc
jmp 0x8e1020
fist dword [ebp + 0x6a56d85a]
mov ebx, dword [esi + 0x486ebe51]
fisub word [edx]
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
popfd
sar byte [ebx - 0x5d], cl
jmp 0x8e1029
mov eax, 0x4e0fbc
add eax, ebp
add eax, 0x93
mov ecx, 0x61b
mov edx, 0x485ec573
xor byte [eax], dl
inc eax
dec ecx
jne 0x8e1040
test esi, esi
invalid
invalid
jmp 0x8e1053
sbb dword [ebx], esi
sbb esi, dword [ebx + 0x63]
jae 0x8e10cd
sbb esi, dword [ebx - 0x41]
pop edi
jae 0x8e10a0
mov bl, 0x23
mov esi, fs
dec edi
and dh, byte [edi]
jae 0x8e108c
clc
mov esi, 0x734ffaf8
jae 0x8e10e4
mov dl, 0x8b
jae 0x8e10e9
jae 0x8e10e8
mov esi, 0x737375cb
jae 0x8e1048
pop ebx
jae 0x8e10f5
jae 0x8e1008
xchg ecx, eax
jo 0x8e1042
mov ebx, 0x737ff2f8
clc
bnd jg 0x8e10fe
jae 0x8e1100
jae 0x8e10fe
jo 0x8e1045
mov dh, 0x23
sbb ecx, dword [edi + 0x46]
and ebx, dword [ebx]
dec edi
inc esi
jp 0x8e1108
sbb ecx, dword [0x727337a9]
aaa
jae 0x8e110d
pop edi
push edi
sbb esi, dword [ebx + 0x73]
jae 0x8e1115
wait
jbe 0x8e1118
jae 0x8e111a
lcall 0xf826, 0x7373735b
lahf
clc
idiv byte [ebx + 0x73]
jae 0x8e1128
jae 0x8e10ae
clc
out 0x7f, al
jae 0x8e112d
jae 0x8e10b4
invalid
mov word [esp + ecx*4 + 0x737fb12e], cs
clc
call dword [edi + 0x77]
jae 0x8e114d
jae 0x8e10f7
dec edi
inc esi
jp 0x8e1153
sbb ecx, dword [0x727337a9]
jae 0x8e1158
pop edi
push edi
and bl, byte [ebx + 0x73737376]
wait
jbe 0x8e115f
jae 0x8e1161
lcall 0x2726, 0x73737140
mov word cs:[esi], es
push es
jg 0x8e1086
push es
jnp 0x8e1098
adc eax, 0xf8737373
jae 0x8e1173
jae 0x8e10fa
into
jnp 0x8e1178
jae 0x8e117a
inc eax
mov edx, 0x9bf0a140
jbe 0x8e114a
jl 0x8e1108
cmp eax, 0x7c737373
jae 0x8e1187
jae 0x8e1192
jl 0x8e1112
sti
cmp esi, dword [ebx + 0x73]
jae 0x8e118d
jae 0x8e1131
clc
outsd dx, dword [esi]
dec edx
mov byte [ebx + 0x7369f77c], bl
jae 0x8e119b
mov byte [edx + 0x7362f77c], bl
bound esi, qword [ebx + 0x73]
jae 0x8e11a3
jae 0x8e11a4
jae 0x8e1147
adc eax, 0x568c88f2
jl 0x8e112f
mov byte [esi + edx*2 + 0x7366f77c], cl
mul dword [esi + 0x73]
jae 0x8e11ae
jae 0x8e11af
jae 0x8e116f
xor bl, byte [edx - 0x73737341]
pop edx
aas
lcall 0x3f5a, 0x8c8c8cbf
dec edx
jb 0x8e1137
invalid
mov dl, 0x76
invalid
wait
ja 0x8e10e7
into
mov word [esp + ecx*4 + 0x714a275a], cs
invalid
mov word [edx + ebx*2 - 0xf8eb5d9], cs
dec edx
jno 0x8e1146
mov dl, 0x75
invalid
fmul dword [esp + ecx*4 + 0x7fb12e8c]
jae 0x8e118e
mov word [esi + ebp + 0x26737fb1], cs
clc
lahf
and eax, 0x6f82624
and al, 0x26
clc
push es
jg 0x8e1169
push cs
jnp 0x8e1103
pop ecx
stc
sal ebx, 0xf9
jne 0x8e116b
mov ch, 0x72
mov ch, 0x72
jb 0x8e11ef
jae 0x8e11f0
jae 0x8e11f1
jae 0x8e117a
sti
je 0x8e1173
mov ah, 0x72
jae 0x8e11f8
jae 0x8e114f
jno 0x8e11fc
jae 0x8e11fe
jae 0x8e11fd
jno 0x8e112e
mov eax, dword [0x7376f67c]
jl 0x8e1185
div byte [esi + 0x73]
jbe 0x8e1204
jae 0x8e1206
jae 0x8e118d
stc
xor eax, 0xf07ca161
popal
mov eax, dword [0x8cabf07c]
mov word [ecx + esi*2 + 0x76f67ca1], cs
jl 0x8e118a
stosd dword es:[edi], eax
mov word [esp + ecx*4 - 0x9835e8f], cs
jl 0x8e1198
jbe 0x8e1217
jae 0x8e1218
jae 0x8e1219
jae 0x8e11a0
stc
xor eax, 0xf07ca161
sbb dword [ebx + 0x73], esi
jae 0x8e1223
jae 0x8e1224
jae 0x8e11f2
inc eax
mov bl, 0x71
mov eax, dword [0x7376f67c]
jae 0x8e122e
stc
xor eax, 0xf07ca161
pop ecx
jb 0x8e1238
jae 0x8e1238
mov eax, dword [0x7376f67c]
jae 0x8e1241
stc
xor eax, 0xb360a161
jno 0x8e1178
mov eax, dword [0xa171b360]
jl 0x8e11cf
jbe 0x8e124e
jae 0x8e1250
stc
xor eax, 0xb360a161
jno 0x8e1187
jl 0x8e11de
jbe 0x8e125d
jae 0x8e125f
stc
xor eax, 0xb360a161
jno 0x8e1196
popal
mov eax, dword [0xa171b360]
pushal
mov bl, 0x71
mov eax, dword [0x7376f67c]
jl 0x8e11ed
jbe 0x8e126c
jae 0x8e126d
jae 0x8e126e
jae 0x8e11f5
stc
xor eax, 0xb360a161
xor eax, 0xb360a161
popal
mov eax, dword [0xf77cb360]
jl 0x8e11fb
jne 0x8e1279
jae 0x8e127b
clc
lodsb al, byte [esi]
pop eax
stosd dword es:[edi], eax
stc
jo 0x8e120a
je 0x8e1245
enter 0x7371, 0x73
jae 0x8e11b1
add ecx, dword [esp + ecx*4 + 0x7372cb8c]
mov word [esp + ecx*4 + 0x737372cb], cs
jae 0x8e1292
mov word [ebx + ecx*8 + 0x73737372], cs
mov ebx, cs
jb 0x8e1291
jae 0x8e1293
jno 0x8e11c3
mov eax, dword [0x7376f67c]
jl 0x8e121a
div byte [esi + 0x73]
jbe 0x8e1299
jae 0x8e129b
stc
xor eax, 0xb360a161
jno 0x8e11d2
mov bl, 0x71
mov eax, dword [0x7376f67c]
jl 0x8e1229
jbe 0x8e12a8
jae 0x8e12a9
jae 0x8e12aa
jae 0x8e1231
stc
xor eax, 0xf17ca161
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0x72c8b058], cs
jae 0x8e12bb
mov word [eax - 0x50], ds
enter 0x7372, 0x73
mov al, 0xc8
jb 0x8e12ba
jae 0x8e12bc
jae 0x8e12c6
jl 0x8e1241
test byte [edi + 0x73], 0x73
inc edi
jae 0x8e12c1
jae 0x8e121a
jb 0x8e12c5
jae 0x8e12c7
jno 0x8e11f7
jl 0x8e124e
jbe 0x8e12cd
jae 0x8e12cf
stc
xor eax, 0xba60a161
jno 0x8e1206
popal
mov eax, dword [0xa171ba60]
jl 0x8e125d
jbe 0x8e12dc
jae 0x8e12de
stc
xor eax, 0xf17ca161
xor eax, 0xf17ca161
popal
mov eax, dword [0x8cadf17c]
mov word [ebp - 0x79a77b08], cs
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0x5884f825], cs
pop eax
xchg byte [eax + 0x7b9a2dd7], al
mov word [esp + ecx*4 + 0x7b93b23b], cs
stc
adc bh, 0x2d
lcall 0xb23b, 0x8c8c8c7b
xchg ebx, eax
jnp 0x8e1281
mov word [ebx + edi - 0x6846c4e], cs
jne 0x8e12bf
clc
wait
retf 0x7372
jno 0x8e1234
mov eax, dword [0x7376f67c]
jl 0x8e128b
jbe 0x8e130a
jae 0x8e130c
stc
xor eax, 0xba60a161
xor eax, 0xba60a161
jno 0x8e1243
jl 0x8e129a
jbe 0x8e1319
jae 0x8e131b
stc
xor eax, 0xf17ca161
xor eax, 0xf17ca161
mov eax, dword [0x8cadf17c]
mov word [edx + esi*8 + 0x730e738b], cs
int1
lodsd eax, dword [esi]
mov word [esp + ecx*4 + 0xe738bf2], cs
jae 0x8e132c
jae 0x8e12ac
repne stosb byte es:[edi], al
stosb byte es:[edi], al
mov word [esp + ecx*4 + 0x738bf28c], cs
jbe 0x8e1337
mov word [esp + ecx*4 + 0x76738bf2], cs
mov esi, dword [ebx + 0x76]
jae 0x8e1339
jae 0x8e1338
jae 0x8e12b8
repne stosb byte es:[edi], al
stosb byte es:[edi], al
mov word [esp + ecx*4 - 0xc740d74], cs
jae 0x8e1343
jae 0x8e1343
jae 0x8e1344
jae 0x8e12c4
mov byte [0x73737373], al
mov byte [0x73737373], al
mov esi, ebx
jae 0x8e134f
jae 0x8e12d0
mov byte [0x73737373], al
and eax, 0x835884f8
adc bh, 0x2d
lcall 0x75f9, 0x8c8c8de8
xor eax, 0x9bb3ba40
jb 0x8e1375
mov edx, 0x7c729bb3
imul dword [ecx + 0x73]
jae 0x8e1371
mov byte [0x73737371], al
clc
wait
and eax, 0x835884f8
clc
test byte [eax - 0x7d], bl
pop eax
add dword [eax + 0x72c82dd7], 0x73
jae 0x8e1386
adc bh, 0x2d
enter 0x7372, 0x73
xlatb
sub eax, 0x737372c8
jae 0x8e12ae
lcall 0x582e, 0x8c8c8d00
add byte [ebp + 0x582e8c8c], cl
lea ecx, [esp + ecx*4 + 0x7b0e582e]
clc
pop eax
push cs
jnp 0x8e1315
mov ah, 0x2c
sub eax, 0xb12e96f8
jnp 0x8e1399
sub al, 0x2d
lcall 0xa8d9, 0x73737377
or eax, ebx
retf
jae 0x8e1307
test al, 9
fmul st(3)
iretd
mov dh, 0xf2
mov bl, 0xe8
mov bl, 0xe8
jo 0x8e13b0
jae 0x8e1309
pushal
jo 0x8e13b5
jae 0x8e130d
leave
retf
mov word [esp + ecx*4 + 0x7373779a], cs
jae 0x8e12f4
mov ebp, 0x9c9d23c9
pushfd
clc
or eax, dword [eax + 0x45]
wait
retf 0xcbcb
retf
cmp dword [esi - 0x6c], ebp
xchg ebp, eax
inc eax
push ebp
test ebx, 0xc498cbcb
je 0x8e131a
clc
int 0x91
dec edx
or dword [ebx], esi
retf
retf
retf
push ds
xor al, 0x34
xor al, 0xa3
retf