Function at 0x17e59ef
Capabilities:
Encode data using xor

Disassembly:
xadd al, ch
xor ebx, edx
jmp 0x1794988
or al, dl
jae 0x178c1a3
stc
add al, 0x82
out dx, al
and eax, 0xdc0d1dbc
inc esi
push cs
in eax, dx
inc edx
sbb bh, byte [esi - 0x6d607275]
lcall 0x8d4b, 0x7740a960
and al, 0xed
into
add al, 0xb1
cmpsb byte [esi], byte es:[edi]
mov ecx, 0x7476229a
jb 0xf3d2e2
pop edx
rcl byte [esi - 0x22], 0x52
test byte [esi + 0x47026bf3], dl
push cs
in eax, dx
pushfd
xor al, 0x30
mov cl, byte [ebp - 0x5833e361]
mov word [ebp + 0x60], es
lodsb al, byte [esi]
or dword [ebx - 0x74046149], esi
xchg byte fs:[esi], bl
cmp eax, 0x63ef1266
scasb al, byte es:[edi]
push cs
mov dword [edi - 0x7e], esp
add eax, 0x2153b648
test dword [esi - 0x221c08bc], 0xe15207df
mov dl, 0x48
sbb dword [ebx + 0x4e], ebp
sbb cl, byte [eax]
shl dword [edx], 0xa1
aas
xor eax, 0x70f77c7e
retf 0x7ebd
pop esi
insd dword es:[edi], dx
fcmove st(0), st(7)
pop esi
mov al, 0x82
add byte [ecx], al
fnsave dword [ecx + 0x3a60658a]
xor bh, bl
int3
jmp fcn.00f78eac
add ebp, edx
movsx ecx, ax
jmp 0x16b1841
xor bl, cl
lea ecx, [esp + ecx + 4]
call fcn.017d17d8
shr word [esp + 7], 0xe4
xor ebx, ecx
inc al
call fcn.00ceb184
xor ebx, edx
jmp 0x16b3d15
sub byte [esp + ecx*8 - 0x106ff80e], ah
ror word [esp + ecx*4 - 0x837fc03], 0x41
adc ebp, edx
and al, cl
pop edx
pop ecx
pop ecx
jg fcn.0176abf9
not cl
sub cl, 0x20
xor cl, 0x11
mov dword [esp + eax - 0x20000000], edx
and byte [esp + eax - 0x1ffffffe], ah
not cl
jns 0xf3d253
mov ax, word [edi]
movzx edx, byte [ebp]
mov ecx, 0x31a4663a
sal ecx, cl
xor dl, bl
call fcn.00f952fa
push ss
push cs
mov esi, 0xf28e7d0f
adc al, 0x51
imul esi, dword [edx - 0x33], 0x75edac04
stc
outsb dx, byte [esi]
mov al, 0x84
aad 0xcd
jno 0x17e5aa9
mov al, 0x84
pop ebp
popfd
pop ecx
outsb dx, byte [esi]
mov al, 0x84
jne 0x17e5a64
dec esp
ror dword [eax + 0x46], 1
dec eax
inc esi
jb 0x17e5a47
mov ah, 0x1d
pop ebp
int3
cmpsb byte [esi], byte es:[edi]
add eax, 0x9ce1c66f
mov ebp, 0xe59bf7
sub bh, byte [ecx]
mov al, byte [0x9620287a]
sbb ecx, 1
invalid
mul byte [ecx - 0x14fc3569]
pop eax
jl 0x17e5b08
xchg edi, eax
retf 0xeb03
fnstsw word [0x57216dc1]
sub al, 0xf3
pop esi
stc
ret 0xdb0b
and al, byte [ebx - 0x62]
jl 0x17e5aab
cdq
rcr dword [edi], 1
js 0x17e5b55
jl 0x17e5b55
fnstsw word [esi + 0x2d5d7c11]
push 0xffffffffffffff89
dec ebp
js 0x17e5af3
ror ebp, 0x2c
fcom qword [edx - 0x3c]
invalid
loop 0x17e5bba
or ebx, dword [esi]
mov al, 0x3d
xchg ecx, eax
fdiv qword [edi + 0x64d5feb8]
adc dword [edi - 0x2d], edi
enter 0x245b, 0x53
mov cs, word [edx - 0x48]
xchg ebp, eax
cdq
mov al, 0x3d
xchg ecx, eax
int3
add ch, byte [edi]
ljmp 0x5650
out dx, eax
adc ch, byte [esi - 0x4160baf0]
xor byte [0x9aa34de9], 0x4e
push ebx
sub bh, byte [edx + 0x436d342f]
cmpsd dword [esi], dword es:[edi]
out dx, eax
or bh, byte [esi + 0x2910d4fe]
xchg ebx, eax
stosb byte es:[edi], al
inc eax
movsd dword es:[edi], dword [esi]
push gs
cwde
loop 0x17e5bbb
invalid
jae 0x17e5bdf
or al, byte [ebx - 0x59]
out dx, eax
add ah, ch
xchg ebx, eax
cmp bh, byte [edx - 7]
clc
cmp ecx, esi
mov eax, 0x5465c144
mov ebp, 0x31925911
into
xor al, byte [ecx]
stc
fsubr qword [eax]
clc
dec edi
loope 0x17e5c40
jo 0x17e5b97
out 0x4f, al
and al, byte [ecx - 0x4670dcb4]
or eax, 0xd9f6f1f7
js 0x17e5c03
div ecx
imul byte [edx]
adc byte [ebp - 9], ah
int1
not byte [edx + 0x2a]
pop ebp
div ecx
neg byte [eax]
xor cl, 0xc5
loop 0x17e5c47
jg 0x17e5bfb
adc eax, 0xb092ab43
xor dword [edx + 0x44a34297], edi
lea ecx, [edx + 0x5a928839]
jmp 0xe783b4
daa
imul edi, edi, 0x4244c8b
push ecx
neg edx
dec dword [esp + ecx*2 - 0x41ac128]
xchg word [esp + ecx*4 - 0x835825d], cx
not edx
sar byte [esp + ecx*8 - 0x106b780e], 0x66
bswap edx
sbb dword [esp + ecx*4 - 0x835bc01], 0x2862f8d
jns 0xf14680