Function at 0x100065e6
Capabilities:
Encode data using xor

Disassembly:
pop ds
fnstsw word [eax]
sub eax, 0x7da63907
push eax
iretd
mov ah, 0x8d
xchg dword [ebx + 0x7abf5cc5], edx
sub edi, dword [esi - 0xb]
jle 0x1000646c
insd dword es:[edi], dx
jne 0x10006416
pop ss
popal
cwde
cmc
jns 0x10006494
sub edx, dword [ebx + eax*2 + 0x2aea0a64]
jge 0x10006508
jbe 0x10006501
fdiv st(1)
invalid
pop ebp
out 0x5b, al
fiadd word [esp + ebx + 0x26e8bdf4]
out 0x5b, eax
pop ebp
aad 0x3d
xchg byte [edx], dh
insd dword es:[edi], dx
push ecx
xor byte [edi - 0x1a], dl
xor esp, dword [ebx + 0x12]
outsd dx, dword [esi]
jae 0x100064eb
or al, 0x46
into
js 0x100064cd
invalid
aam 0x96
mov ebx, 0x31f57651
add dword [edi - 0x57], 7
das
xor sp, word [esi]
push eax
jne 0x10006475
xor edx, dword [eax + 0x432e7c01]
push ebx
scasd eax, dword es:[edi]
fidivr dword [ebx - 0x42301a45]
or al, 0x8e
jb 0x10006526
iretd
xor eax, 0x51e223bf
jbe 0x10006517
mov edi, 0x7651e223
and byte [esi], cl
push cs
test al, 0xaf
imul ecx, dword [edx + 0x3848a10], 0xffffffd9
invalid
ja 0x10006524
ja 0x10006524
ret
jecxz 0x100064a5
sub byte [ebx + 0x12], al
push esp
invalid
invalid
imul eax, ebx, 0x5010007d
jl 0x10006530
adc byte [eax + 0x7c], dl
add dl, byte [ecx + 0x4d]
push ecx
dec ebp
jp 0x100064f0
mov ebp, 0x2294e8d1
adc esp, ecx
jl 0x10006509
or al, 0xff
or ebp, dword [ecx + 0x621ab752]
sub edx, dword [ebp - 0x5e]
lodsb al, byte [esi]
xchg edi, eax
les ebx, [ebx - 0x39]
call 0x388991c4
mov al, byte [0x5a648696]
cmp bh, dh
pop esi
div dword es:[ebx - 0x4e]
cld
mov al, byte [0xa00da51d]
fsubrp st(6)
mov eax, dword [0xf5185faa]
cmpsd dword [esi], dword es:[edi]
in eax, dx
out dx, al
lds ecx, [ecx + 0x5b6995fa]
invalid
and byte [ecx - 0x4c8bbffb], ch
fisubr word [edx + 0x54dfcd71]
jno 0x1000652a
insb byte es:[edi], dx
outsd dx, dword [esi]
ja 0x100065ec
adc eax, 0x859fe7a
daa
xor al, 0x35
pop es
mov byte [esi + edx*4 + 0x7795aca8], bh
sub dword [ebp + 0x4c358219], ecx
ja 0x100065c9
lea ebx, [ecx]
xor byte [0x1052744c], 0x71
dec esp
je 0x100065f9
adc byte [ecx + 0x4c], dh
pushfd
dec ebp
ret
clc
mov dl, 0x2b
add al, 0x7b
fsetpm
ror byte [ecx], 1
or dh, dl
or dword [eax], ecx
salc
mov dl, 0xcf
loope 0x10006628
jbe 0x1000659e
push ss
std
and eax, 0xf4adf7c2
stc
invalid
jne 0x1000657d
wait
mov ah, 0xbd
cmpsb byte [esi], byte es:[edi]
mov esp, 0xf984bb88
in al, dx
mov esp, 0xa013be18
xor cl, byte [ebp + esi + 0x40]
test al, 0x3d
mov eax, dword [0x2f2ed3c2]
jns 0x100065b7
invalid
rcl byte [0xaf09c555]
adc eax, 0xaf09c555
scasd eax, dword es:[edi]
pop es
lodsd eax, dword [esi]
sub dword [eax + 0x7be79078], ecx
dec ecx
jecxz 0x100065f6
or byte [ebx - 0x2c], ch
jo 0x100065b2
imul edx, esp, 0x70
mov ch, 0
xchg edx, eax
js 0x100065af
add byte [edx + 0x47fae78], dl
jg 0x10006607
xchg edi, eax
shl dword [edi - 0x13], cl
push es
stosd dword es:[edi], eax
push eax
adc byte [0x275c3864], dh
daa
rcr edx, 0x64
cdq
cdq
ja 0x100065a5
loop 0x1000667f
adc eax, 0x4400c229
fcmovnb st(0), st(3)
xor edi, dword [0x17a80747]
test dword [esi + ebx*8 + 0x48], edi
dec eax
jl 0x100066a2
les eax, [ecx + 0x7a]
jp 0x10006612
nop
pop ss
cld
jnp 0x1000660f
std
sbb edx, dword [ebx - 0x6463c6b]
lds ebp, [edi + 0xb]
inc edi
pop ecx
jne 0x1000661d
mov byte [edx + 0x62], dl
fnsave dword [edx - 0x2f0423bf]
invalid
mov dword [ecx - 0x3a70aadc], eax
or al, 0x6e
fucomp st(0)
out 9, eax
and al, 0x6d
or al, byte [esi + 0x53]
sbb dword [edx + edx*8 + 0x5b], esi
std
lea ebp, [esi - 0x2b066e05]
ljmp 0xfe7d
or byte [ebx + 0x50], cl
adc dword [ecx + 0x19a79cce], esp
invalid