Function at 0x8e113c
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8e1142
pop ebp
sub ebp, 6
sub ebp, 0x4e113c
jmp 0x8e11a0
or dword [esi + 0xf], 0x5a95db20
fcom dword [esi + 0x6a]
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
inc ecx
ljmp 0x4e11
mov dword [0x7e8877e2], eax
invalid
jmp 0x8e11a9
mov eax, 0x4e113c
add eax, ebp
add eax, 0x93
mov ecx, 0x638
add byte [eax], al
add byte [ecx + 0x638], bh
mov edx, 0xbf1cb477
xor byte [eax], dl
inc eax
dec ecx
adc byte [eax + 0x49], al
jne 0x8e11c0
test esi, esi
invalid
idiv bh
invalid
jmp 0x8e11d3
sbb eax, 0x67771f37
ja 0x8e1251
pop ds
ja 0x8e1198
pop ebx
ja 0x8e1224
mov bh, 0x27
mov dl, ah
dec ebx
xor esi, dword es:[edi + 0x27]
cld
mov edx, 0x774bfefc
ja 0x8e1268
div byte [esi + 0x7777778f]
je 0x8e11b3
iretd
jno 0x8e1273
ja 0x8e1275
int 0x5f
ja 0x8e1279
ja 0x8e1184
adc byte [ebp - 0x903408c], 0x7b
ja 0x8e1283
xchg ebp, eax
je 0x8e11c6
mov edi, 0x777bf6fc
cld
idiv byte [ebx + 0x77]
ja 0x8e1284
ja 0x8e1282
je 0x8e11c1
mov dl, 0x27
daa
pop ds
inc ebx
inc eax
jle 0x8e128c
pop ds
jg 0x8e11c5
xor esi, dword [edi + 0x76]
pop ebx
push ebx
pop ds
ja 0x8e1297
ja 0x8e1299
lahf
jb 0x8e129c
ja 0x8e129d
ja 0x8e129e
ja 0x8e11c6
sahf
pop ebp
ja 0x8e12a2
ja 0x8e124f
cli
sbb edx, dword [ebx + 0x77]
cld
push ebx
ja 0x8e122e
bnd jg 0x8e12ac
ja 0x8e12ae
cld
loop 0x8e12b5
ja 0x8e12b3
ja 0x8e123a
cld
cli
ja 0x8e12b9
ja 0x8e12b9
ja 0x8e11fa
sahf
jne 0x8e128d
jne 0x8e123d
mov ch, 0x73
js 0x8e1240
or dword [eax - 0x4ad57778], 0x7b
mov byte [eax + 0x7bb52a88], cl
mov byte [edx], ch
mov ch, 0x7b
ja 0x8e1253
sti
push ebx
jae 0x8e12d2
ja 0x8e12d4
pop ds
inc ebx
inc eax
jle 0x8e12d9
pop ds
jg 0x8e1212
xor esi, dword [edi + 0x76]
pop ebx
push ebx
lahf
jb 0x8e12e5
ja 0x8e12e7
sahf
cmp dh, byte [ebp + 0x77]
ja 0x8e1298
ja 0x8e12ec
and bh, dl
cli
sbb edx, dword [ebx + 0x77]
mov byte [edx], al
jnp 0x8e1206
ja 0x8e1203
add bh, byte [ebx - 0x78]
add bh, byte [edi - 0x61]
or dword [edi + 0x77], esi
ja 0x8e12fb
ja 0x8e12fc
ja 0x8e1282
cld
retf 0x777f
jg 0x8e1300
ja 0x8e1302
test byte [esi - 0x29def17f], 0xf6
xchg byte [ecx - 0x929def2], al
or dword [esi], 0x86f6d621
or dword [esi], 0xbe44d621
xchg byte [ecx + 0x44d6210e], al
inc esp
mov esi, 0x725385f6
test byte [ebp - 0x7e748dad], 0xf6
jb 0x8e1229
mov eax, dword [ecx + 0x725385f6]
xor esi, 0x8b725385
test dword [ebx + 0x72], edx
jb 0x8e122f
mov eax, dword [ecx - 0x600b5abc]
jb 0x8e12ea
add dword [ebp - 0xc], 0x783f729f
js 0x8e12a0
cmp dword [edi + 0x77], esi
cmp dword [edi + 0x77], esi
ja 0x8e1327
ja 0x8e132a
invalid
aas
ja 0x8e132d
ja 0x8e132e
ja 0x8e12c9
adc esp, edi
cld
imul ecx, dword [esi - 9], 0xffffff8c
lahf
js 0x8e12b3
mov word [edi + 0x776df378], ds
ja 0x8e133b
insd dword es:[edi], dx
ja 0x8e133a
ja 0x8e12bc
test dword [esi + ebx*4 + 0x7766f378], 0xf6117777
mov word [esi + 0x7766f378], ds
ja 0x8e1344
js 0x8e12bc
ja 0x8e1343
ja 0x8e12df
adc esi, esi
test byte [eax + ecx*4 + 0x62f37852], 0x77
ja 0x8e134f
mov word [eax + 0x62f37852], cs
ja 0x8e134e
js 0x8e12c7
bound esi, qword [edi + 0x77]
ja 0x8e130f
sahf
sahf
mov ebx, 0x5e888888
cmp ecx, dword [esi + 0x76]
hlt
jbe 0x8e12d7
mov dh, 0x72
hlt
lahf
jae 0x8e1287
retf 0x8888
mov byte [eax + 0x4e235e88], cl
mov byte [esi + 0x23], bl
dec esi
jne 0x8e12e6
mov dh, 0x71
hlt
jae 0x8e12ec
lahf
jb 0x8e1299
fmul qword [eax - 0x4ad57778]
jnp 0x8e137a
mov byte [eax + 0x7bb52a88], cl
mov ch, 0x7b
ja 0x8e1326
and bh, ah
cld
wait
and dword [eax], esp
and bh, ah
cld
add bh, byte [ebx - 4]
jnp 0x8e1309
or bh, byte [edi - 0x75]
invalid
mov eax, ebp
idiv ebp
jno 0x8e130b
mov cl, 0x76
ja 0x8e1390
ja 0x8e131a
push dword [eax - 0xa]
jo 0x8e1313
mov al, 0x76
ja 0x8e1398
ja 0x8e12ef
jne 0x8e139c
ja 0x8e139e
ja 0x8e139d
jne 0x8e12ce
movsd dword es:[edi], dword [esi]
js 0x8e131d
bnd jb 0x8e13a4
jb 0x8e13a4
ja 0x8e13a6
ja 0x8e132d
std
popal
xor dword [ebp - 0x5b], esp
js 0x8e132a
scasd eax, dword es:[edi]
mov byte [eax + 0x78a57588], cl
jne 0x8e12e1
movsd dword es:[edi], dword [esi]
js 0x8e1330
bnd jb 0x8e13b7
jb 0x8e13b7
ja 0x8e13b9
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword gs:[esi]
js 0x8e133d
sbb eax, 0x44777777
mov bh, 0x75
movsd dword es:[edi], dword [esi]
jne 0x8e12f6
js 0x8e1345
bnd jb 0x8e13cc
jb 0x8e13cc
ja 0x8e13ce
std
popal
xor dword [ebp - 0x5b], esp
js 0x8e1352
pop ebp
jbe 0x8e13d8
ja 0x8e13d8
movsd dword es:[edi], dword [esi]
js 0x8e1358
jb 0x8e13df
ja 0x8e13e0
ja 0x8e13e1
ja 0x8e1368
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8e1367
jb 0x8e13ee
ja 0x8e13ef
ja 0x8e13f0
ja 0x8e1377
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8e1376
jb 0x8e13fd
ja 0x8e13fe
ja 0x8e13ff
ja 0x8e1386
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8e1385
jb 0x8e140c
ja 0x8e140e
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x78
mov bh, 0x78
js 0x8e1393
jno 0x8e1419
jno 0x8e1419
ja 0x8e141b
cld
test al, 0x5c
pop esp
scasd eax, dword es:[edi]
std
je 0x8e13aa
push dword [eax + 0x30]
jo 0x8e13dd
int3
sahf
pop es
mov byte [eax + 0x7776cf88], cl
iretd
ja 0x8e1432
ja 0x8e1433
ja 0x8e1432
jne 0x8e1363
movsd dword es:[edi], dword [esi]
js 0x8e13b2
jb 0x8e1439
ja 0x8e143a
ja 0x8e143b
ja 0x8e13c2
std
popal
xor dword [ebp - 0x5b], esp
mov bh, 0x75
movsd dword es:[edi], dword [esi]
js 0x8e13c1
bnd jb 0x8e1448
jb 0x8e1448
ja 0x8e144a
std
popal
xor dword [ebp - 0x5b], esp
js 0x8e13cf
cmc
test eax, 0x5c888888
mov byte [esp + esi*4 - 0x34], bl
mov ah, 0xcc
int3
jbe 0x8e145a
ja 0x8e145c
js 0x8e13d9
inc ebx
inc ebx
ja 0x8e1461
ja 0x8e13ba
jbe 0x8e1465
ja 0x8e1467
ja 0x8e1466
jne 0x8e1397
movsd dword es:[edi], dword [esi]
js 0x8e13e6
jb 0x8e146d
ja 0x8e146e
ja 0x8e146f
ja 0x8e13f6
std
popal
xor dword [ebp - 0x5b], esp
mov esi, 0xf278a575
mov esi, 0xf278a575
jne 0x8e13a6
js 0x8e13f5
jb 0x8e147c
ja 0x8e147e
std
popal
xor dword [ebp - 0x5b], esp
js 0x8e1403
test eax, 0x21888888
cld
sbb byte [edx + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777781], ebx
aas
mov dh, 0x97
jg 0x8e13a5
mov byte [eax + 0x7f97b63f], cl
xchg edi, eax
jg 0x8e1421
std
jno 0x8e1457
cld
lahf
into
jbe 0x8e14a2
ja 0x8e14a4
jne 0x8e13d4
js 0x8e1423
jb 0x8e14aa
ja 0x8e14ab
ja 0x8e14ac
ja 0x8e1433
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
mov esi, 0xf278a575
mov esi, 0xf278a575
jb 0x8e14b9
ja 0x8e14bb
std
popal
xor dword [ebp - 0x5b], esp
movsd dword es:[edi], dword [esi]
js 0x8e1440
cmc
test eax, 0xf6888888
mov dh, dh
invalid
mov byte [eax - 0x70097778], cl
ja 0x8e14d1
mov dh, dh
invalid
ja 0x8e14d8
imul byte [esi - 0x77777778]
mov byte [eax + 0x77f78ff6], cl
ja 0x8e14e4
mov dh, dh
invalid
test byte [edi + 0x777777f7], 0xf6
mul byte [esi + 0x77777777]
cmpsb byte [esi], byte es:[edi]
ja 0x8e14e8
ja 0x8e14ea
test byte [edi + 0x777777f7], 0xf6
cmpsb byte [esi], byte es:[edi]
ja 0x8e14f4
ja 0x8e14f5
ja 0x8e14f6
ja 0x8e14a1
and esp, edi
cld
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub dword [esi - 0x77777614], ebx
std
jno 0x8e14c0
inc esp
mov esi, 0x78769fb7
mov bh, 0x9f
jbe 0x8e150d
rep insd dword es:[edi], dx
ja 0x8e1510
ja 0x8e1491
cmpsb byte [esi], byte es:[edi]
jne 0x8e1515
ja 0x8e1517
cld
lahf
and esp, edi
sbb byte [edi + eax*4 - 0x7c], 0xd3
sub esp, ecx
int3
jbe 0x8e1524
ja 0x8e1525
ja 0x8e1526
ja 0x8e144e
sahf
add al, 0x89
mov byte [eax + 0x7f0a5c2a], cl
cld
mov al, 0x28
sub esp, edi
xchg edx, eax
sub dh, byte [ebp + 0x2928777f]
jg 0x8e1539
sub byte [ecx], ch
sahf
jae 0x8e153e
ja 0x8e1540
imul eax, eax, 0x4bcfadd7
cmp word [edi + 0x74], si
ja 0x8e1547
mov dl, 0xf6
mov bh, 0xc0
je 0x8e1550
ja 0x8e1551
ja 0x8e14a9
into
arpl word [edi + esi*2 + 0x77], si
int 0x7b
dec ecx
je 0x8e1555
ja 0x8e14ad
jnp 0x8e152b
in eax, 0x1e
inc edi
aaa
js 0x8e14dc
js 0x8e14dc
or dword [eax + 0x739e8888], 0xe0777777
hlt
cld
scasd eax, dword es:[edi]
sub eax, 0xbb482c2c
invalid
jnp 0x8e14c9
xchg edx, eax
jns 0x8e149b
fisub word [0x7b47e5f0]
and eax, 0x7b47e5f0
invalid
inc edi
jnp 0x8e1595
jnp 0x8e1596
jnp 0x8e1544
sub byte [esp + eax*8 + 0x27], dh
je 0x8e14e2
daa
dec eax
jge 0x8e1543
cli
mov ecx, 0x7b7b7b83
cmp dword [ebx + 0x7b], 0x7b
jnp 0x8e15a2
jnp 0x8e15a3
jnp 0x8e15a1
js 0x8e14d7
lodsd eax, dword [esi]
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8e15a5
jmp dword [ebx + edi*2 + 0x7b]
stosb byte es:[edi], al
lock sub ch, byte [ebx - 4]
stosb byte es:[edi], al
js 0x8e1542
add dword [edi + 0x78], esi
ja 0x8e15bb
js 0x8e154d
or dword [edi - 0x77], ebp
outsd dx, dword [esi]
mov edi, ebx
fbld tbyte [0x7b53b9fa]
and al, 0x25
cli
mov ecx, 0x7b7b7b53
jnp 0x8e15ca
xor byte [edx - 0x7b7b7b52], dl
xchg edx, eax
scasb al, byte es:[edi]
test byte [esp + eax*4 + 0x7b3b7b13], al
jnp 0x8e156e
adc edi, dword [ebx + 0x3b]
jnp 0x8e15d5
adc edi, dword [ebx - 0x49]
jnp 0x8e1514
push edi
jnp 0x8e158d
test dh, ch
cmp ebp, dword [edx]
aas
sub bh, byte [edi]
jnp 0x8e1563
test esp, edi
invalid
invalid
cmp dl, 0x81
jnp 0x8e160a
jnp 0x8e160c
je 0x8e1592
invalid
cmp eax, 0x787b7b7b
jnp 0x8e1612
jnp 0x8e1610
js 0x8e1546
lodsd eax, dword [esi]
cli
mov esp, 0x7b7b7b73
cli
xchg edx, eax
jae 0x8e161e
jnp 0x8e161f
jnp 0x8e1620
jnp 0x8e15a0
cli
cmp byte [ebx + 0x7b], 0x7b
jnp 0x8e1620
jmp [ebx + 0x1d848484]
cmp dword [eax + 0x7b], 0x7b
jnp 0x8e1635
invalid
wait
test byte [ebx + edi*2 + 0x7b], dh
js 0x8e158a
jp 0x8e1636
xor dh, byte [edx]
clc
mov esp, 0x84b39279
test byte [edx + edx*4 + 0x7b7b7b7f], al
test byte [ebp + 0x27], bl
mov dl, 0xc3
inc edi
push 0x35
jnp 0x8e1664
mov esi, 0x7fabbbfa
jnp 0x8e166e
ret 0x7a80
jnp 0x8e1687
jle 0x8e15cb
xchg esi, eax
aam 0xf9
stc
mov ebp, esi
cmc
or dword [edx - 7], eax
mov ebp, esi
ret 0xfe49
jge 0x8e15a0
cmp ch, 1
jb 0x8e16a2
std
add dword [edx + 0x7e], esi
jno 0x8e1620
jmp 0xf60c94a9
jle 0x8e1636
inc dword [esi + 0x7e7e7e7e]
xchg byte [esi + 0x7e], bh
jle 0x8e16ba
jle 0x8e16b9
jle 0x8e16ae
jno 0x8e1639
sti
jb 0x8e16be
jle 0x8e16c0
cmc
cmp dword [edx + 0x7d], esi
mov eax, 0x2eeb812e
das
cmp bh, byte [esi - 3]
sub ebx, 0x7e3a2f2e
std
add dword [edx + 0x7e], esi
jno 0x8e164e
pop ss
jle 0x8e16d5
jle 0x8e16d6
jle 0x8e1656
std
add dword [esi + 0x7e], edi
jno 0x8e1659
je 0x8e16de
jle 0x8e16e0
std
add dword [esi + 0x7e], ebp
jno 0x8e1662
outsb dx, byte [esi]
jle 0x8e16d8
cli
aaa
jle 0x8e16e9
jle 0x8e1698
sub esp, dword [ecx + edi*8]
and al, 0xf9
xor ebp, 3
outsb dx, byte [esi]
stc
cmp dword [ebp - 0x70], 0xfffffffd
std
add edi, dword [esi + 0x7e]
jno 0x8e1678
dec ebp
jle 0x8e16ff
jle 0x8e1678
cmc
xor edi, dword [esi + 0x2e]
sub al, 0x75
mov bh, 0x71
idiv dword [eax + 0x7e]
jne 0x8e1640
jno 0x8e1682
js 0x8e170b
jle 0x8e170d
das
xchg edi, eax
ja 0x8e1711
jle 0x8e1713
jge 0x8e1647
mov al, 0xff
invalid
mov edi, 0x7e7e7e7c
das
sub esp, 0x7e3a2f36
and al, 0xf7
cmp edi, dword [esi + 0x26]
das
cmp bh, byte [esi + 0x24]
idiv dword [ebx]
jle 0x8e16d0
invalid
jle 0x8e172e
xchg edi, eax
mov ebp, 0x23818181
invalid
jle 0x8e1739
jle 0x8e173a
jle 0x8e1654
xchg edi, eax
and dword [ecx + 0x1a2a8181], eax
or dword [ebx + 0x7e], 0x167e7e7e
add dword [ecx - 0x7ee5d57f], 0x7e7e7e4b
sub dword [edx], 0x7e4b811a
jle 0x8e1746
jle 0x8e16e0
jbe 0x8e1732
xor byte [esi + 0x28], bh
sub ebp, eax
cmc
push cs
inc edx
call 0x6dd11ce
call 0xe8d025ca
cmc
cli
dec esi
push es
jle 0x8e1759
jle 0x8e175a
jle 0x8e175a
jge 0x8e1696
mov eax, 0x7e62beff
jle 0x8e1762
invalid
bound edi, qword [esi + 0x7e]
jle 0x8e16da
cmc
jle 0x8e1765
mov eax, 0x7d7e3ef5
cmc
jle 0x8e176a
mov eax, 0x142eb6f5
jle 0x8e1708
jg 0x8e1721
call 0xe8d025f0
cmc
cli
dec esi
push esi
jle 0x8e177f
jle 0x8e1780
mov eax, 0x2a9e812f
push ss
sbb ebx, dword [esi + 0x3b]
adc byte [edi], dl
cmp edx, dword [eax]
pop ss
sbb dword [ebx], edx
pop ds
pop esi
or al, 0x11
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x5e0c110a
or byte [ebx], bl
or al, 0xd
pop ss
adc dword [eax], edx
pop esi
dec edi
push eax
dec ebp
dec edi
jae 0x8e179e
cmp bl, byte [ebx]
or byte [ebx], bl
adc dl, byte [ecx]
push cs
sbb ecx, dword [esp + eax*2]
or al, 0x44
pop esi
sub byte [edx], dl
pop ds
sbb dl, byte [edi]
pop ss
adc edx, dword [edi]
or al, 0x5e
sub eax, 0x1116150b
or byte [ebx + 0x74], dh
sub eax, 0x5e1b0a17
inc esp
pop esi
push ss
or cl, byte [edx]
push cs
inc esp
push ecx
push ecx
or dword [ecx], ecx
or dword [eax + 0x1b], edx
adc byte [edi], dl
pop ss
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x500c110a
sbb ebx, dword [0x500c110a]
adc dword [eax + edx*2], ecx
sbb eax, 0x73511311
adc edx, dword [ecx + 0x73]
je 0x8e17aa
push ebx
adc ebx, dword [edi]
pop ss
adc bl, byte [esi + 0x44]
pop esi
or eax, 0x110e0e0b
or al, 0xa
sbb edx, dword ds:[eax]
sbb edx, dword [eax]
adc byte [edi], dl
pop ss
sbb dword [ebx], edx
pop ds
push cs
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x500c110a
sbb eax, 0x74731311
sub dl, byte [esi]
pop ss
or eax, 0x110c0e5e
sbb dword [edi + ebx], ecx
pop ds
adc ebx, dword [esi + 0x17]
or eax, 0x110c0e5e
or bl, byte [ebx]
sbb eax, 0x5e1a1b0a
or dword [edi], edx
or bl, byte [ebx]
sbb bl, byte [esi + 9]
pop ss
or dl, byte [esi]
pop esi
sub al, 0x3b
cmp dword [edi], esi
sub eax, 0x3b2c3b2a
cmp bl, byte [esi + 0x28]
cmp ebp, dword [ebp + 0x5e303137]
adc dword [eax], ebx
pop esi
sub dl, byte [esi]
sbb ebx, dword [esi + 0x3b]
adc byte [edi], dl
sbb dword [ebx], edx
pop ds
pop esi
or al, 0x11
or bl, byte [ebx]
sbb eax, 0x731a1b0a
je 0x8e181f
adc dl, byte [edx]
pop esi
or al, 0x17
sbb dword [esi], edx
or cl, byte [0xd1b0c5e]
sbb ecx, dword [eax + ecx]
sbb ebx, dword [edx]
pop edi
jae 0x8e1869
xor dl, byte [edi]
or eax, 0x1b1d101b
pop esi
push ss
adc dword [edx], edx
sbb bl, byte [ebx]
or al, 0x44
pop esi
pop ebx
or eax, 0x57e
add byte [edx + 0xf], ah
add byte [eax], al
mov al, byte [0xc50000ec]
sbb eax, 0x443733f6
daa
push esi
mov word [ecx - 0x30], ss
scasb al, byte es:[edi]
and al, 0x38
not byte [esi + 0x4d]
cdq
invalid
cmp dword [esi], esp
dec edx
pop eax
cmc
cli
retf 0xeebc