Function at 0x10f9355
Capabilities:
Encode data using xor

Disassembly:
adc edi, 2
call fcn.0166e6d1
xchg ebx, eax
inc byte [edi - 0x14]
aam 0xd4
cli
popfd
inc esp
adc dword [eax - 0x329c4c75], ebp
pop edx
add ecx, dword [esi]
aaa
in al, dx
push esp
aam 0xfa
or eax, 0xdb6059d4
jecxz 0xfb2b88
pop ebp
push edx
or edi, esi
dec ebx
or byte [eax + 0x5da3], ah
add ah, bl
mov byte [0x5cac7338], al
add byte [eax], al
add byte [eax], bl
jo 0xfb2b46
pop edx
test eax, 0x42e4352d
add edi, esp
mov ebx, 0xb644c4ae
mov bh, 0xc9
add esi, dword [edx]
xchg edx, eax
inc eax
mov ds, word [ecx + 0x2d]
push edx
cmp esp, dword [edi + 0x52]
push edx
sbb byte [eax], ch
lahf
inc esi
in al, dx
sub eax, 0x3018b8fc
pop ss
add cl, byte [ebx + eax*2]
sbb byte [esi - 0x4eb7fc8d], ch
inc edx
xchg edx, eax
cmpsb byte [esi], byte es:[edi]
push edx
outsd dx, dword [esi]
mov al, 0xd2
imul esp, dword [edx + 0x4a], 0x19
notrack jmp 0xfb87cb
push ecx
mov ebx, 0x85d953cf
push ebx
push ebx
sahf
inc esi
in al, dx
xor eax, 0x924fee7f
sub eax, 0x4f90248d
and al, 0xe3
scasd eax, dword es:[edi]
add al, 0xe9
stc
iretd
or al, ch
xchg esi, eax
insd dword es:[edi], dx
jno fcn.00fb87d1
mov eax, 0xef8ac8b2
lea eax, [eax*2 + 0x27b51d9a]
mov eax, dword [ebp + eax - 0x6caaefe]
call eax
call fcn.00fe1fda
insb byte es:[edi], dx
jecxz 0x10f9345
invalid
fld dword [ebx + 0x54]
wait
push edx
cli
scasd eax, dword es:[edi]
in al, 4
inc ecx
mov cl, 0x8d
push edi
pushal
dec edi
add byte [ecx + 0x1e22b705], bh
movzx ax, byte [ecx + edi - 0x1e22b705]
add ecx, ecx
mov cl, byte [ecx + edi - 0x3c456e08]
jg 0x1670aad
inc ebp
xor ebx, dword [eax + eax]
add byte [eax], al
stosd dword es:[edi], eax
push edx
ret 0x463d
jae 0xfb2aec
salc
test dword [ebx - 0x29], ebp
in eax, dx
jecxz 0x1670b15
mov esi, 0xeae0ad73
rcl dword [esi + 0x2e], 0x67
inc ebx
add al, 0xdd
or ebx, dword [edx - 0x1e2f59c3]
push ecx
inc edi
int1
xchg edi, eax
mov dword [0x67fc2ae5], eax
mov edx, 0x1cba3551
xchg ebx, eax
mov dword [0x240e19ed], eax
arpl word [ecx - 0x2fbb6c60], cx
jbe 0x1670b0c
wait
mov al, byte [0x72a7f692]
loop 0x1670a79
invalid
movsd dword es:[edi], dword [esi]
inc ebx
cmc
mov ch, 0x48
mov ch, 0x48
push edx
jns 0x1670b1b
out dx, al
mov edx, edi
nop
jbe 0x1670b29
lodsb al, byte [esi]
cli
inc edx
stosd dword es:[edi], eax
outsb dx, byte [esi]
push 0x7fa3cefc
jae 0x1670b89
mov dword [0x7a62737f], eax
cli
jp 0x1670b23
out dx, eax
xchg esp, eax
push ebp
jae 0x1670b10
test edx, esp
ljmp 0x8c16
or al, 0xb
call 0x26ac77d7
stosd dword es:[edi], eax
call 0xf549f622
loop 0x1670b4c
mov dl, 0x57
pop ecx
jae 0x1670bc0
invalid
movsb byte es:[edi], byte [esi]
rcl byte [ecx - 0x4686e274], 0xf2
invalid
outsd dx, dword [esi]
sbb al, 0x4b
mov esi, 0x8041460f
mov word [0x47a67380], ds
push ecx
mov word [0xf81a4676], ds
and eax, 0x563b30ce
loopne 0x1670c05
loopne 0x1670b68
and eax, 0xf019822
sub al, 0x76
mov ds, ecx
int3
stc
test dword [ebp + ebx - 0x35516392], 0x8be2739b
wait
jae 0x1670bad
loop 0x1670b57
mov edi, dword [ebx - 0x2e5e2b5d]
mov ebx, 0xd1a1d4a3
mov edi, 0x8c35e9f2
popfd
cdq
mov byte [eax - 0x70495678], dl
rcr bh, 3
mov word [ebp - 0x11ca0e7f], ds
dec edx
xor eax, esi
mov word [0x842cd36c], ds
sbb eax, 0x842cd36c
cwde
stosb byte es:[edi], al
dec ebx
pop ebp
jae 0x1670bd8
invalid
neg byte [edi - 0x74]
popfd
lea ecx, [edi]
ror dword [ebp + ebx*4 - 0x4887c1af], cl
bound ecx, qword [edi]
sal dword [ebx - 0x1e], cl
xlatb
xor eax, 0x156eca80
aam 0x8c
sbb eax, 0x452df822
jg 0x1670c7d
sub bh, byte [edi - 0xce0deb7]
out dx, eax
scasd eax, dword es:[edi]
movsb byte es:[edi], byte [esi]
dec ebp
imul ebp, dword [ebx + 0x1a], 0x5e
mov ebx, dword [ebp - 0x34]
jg 0x1670bca
mov ch, 0x64
jnp 0x1670c76
jl 0x1670beb
je 0x1670bc8
sbb cl, byte [edx + 0x1a]
mov ebx, dword [ebp + 0x15be0901]
xor edx, dword [edx]
arpl word [0x9b55474c], bx
je 0x1670cb7
invalid
or eax, 0x5315e835
scasb al, byte es:[edi]
dec esp
xlatb
mov byte [ecx - 0x67], cl
invalid
add bl, bl
pop esp
out 0x21, eax
add al, 0x16
mov bl, 0x15
add ebp, dword [edx + ebp*2]
int1
retf
mov byte [ebp + 0x24b5ebc1], bl
xchg ebp, eax
adc bl, byte [edx + 0x1965ab02]
das
adc al, 0xe6
bound ebp, qword [eax + ecx*4 - 0x63]
mov edi, 0xa36ce631
dec ebp
jne 0x1670d2c
sub eax, 0x90d9c167
fiadd word [ebx + 5]
push edx
jb 0x1670c87
inc ebp
loop 0x1670d42
pop ecx
js 0x1670cb0
fnstcw word [edx + 0x596a43e0]
invalid
mov edi, 0x574d2d04
dec eax
out 0xb1, al
mov al, byte [0x829616a6]
out 8, al
invalid
jo 0x1670d62
fstp dword [ebx]
jo 0x1670d00
in eax, 0xfd
jne 0x1670d81
aad 0x27
sub al, 0x70
push esp
push edx
sub eax, 0x5dc1b07b
loope 0x1670da5
bound edi, qword [esi]
invalid
invalid
jo 0x1670d67
xor al, byte [edx - 0x114b206c]
insd dword es:[edi], dx
cmpsd dword [esi], dword es:[edi]
add al, 0x97
fbstp tbyte [esi + ebp*8 - 0x68fb5893]
sbb eax, 0xca1d30ba
pop ss
mov esp, 0x75c385aa
std
cmp edi, edx
dec ebp
xchg byte [ebx - 0x36], bl
sti
dec ebx
dec ebp
xchg byte [ebx + 0xb], bl
loopne 0x1670d34
dec esp
dec esi
cwde
loope 0x1670def
mov ah, byte ds:[edx]
sahf
add esp, dword [esi]
hlt
push edi
xor al, 0x6e
add eax, dword [ebx + 0x50f766b0]
mov edi, 0x47c7aa87
or ecx, dword [0x702ac9eb]
invalid
pop ecx
mov esp, 0xc0daa771
jmp 0x1670e5f
push 0xcd92dc9d
mov dword [ebp - 4], eax
test ebx, ebx
lea esp, [esp + 8]
je 0x10f92e5
mov eax, 0xfbaf5938
sub al, al
xor eax, eax
or eax, dword [ebp + ebx*4]
push 0x5f04ed2c
rol dword [esp], 0xdf
mov dword [esp], eax
dec ebx
call fcn.010f92d1