Function at 0x106cf48b
Capabilities:
Encode data using xor

Disassembly:
push edi
xchg dword [esp + 0xc], ebx
call fcn.1062da86
mov bl, cl
cmp bl, cl
cmp dword [edi], edi
sub eax, 0x5b2b77b2
dec eax
lodsb al, byte [esi]
adc esi, dword [eax - 0x21]
xchg dword [edi + 0x474e9f6f], esp
fsub dword [ebx + edx*4 + 0x61e71bb]
xchg ebx, eax
outsb dx, byte [esi]
mov word [ecx], ds
xor al, 0x58
mov ch, 0x87
adc eax, 0x6712ae77
xor byte [ebp - 0x2f], dh
salc
rcl esi, 1
jge 0x106cf518
call 0xfd6daa56
sub dword [eax - 0x3677bc52], ebp
sub ebx, edi
xchg byte [ebp + 0x4b], cl
pop es
fisttp dword [edi + eax + 0x2c1bf0ec]
pop eax
out 0x67, eax
push cs
xor dword [ebx + 0x5b], 0xffffffd3
jg 0x106cf4c1
loope 0x106cf53f
rep stosb byte es:[edi], al
daa
out 0x20, al
enter 0x430d, 0xffffffffffffffbe
mov byte [esi], bh
cli
fcom qword [eax - 0x652246ba]
dec ecx
xor edi, 0x77001138
and al, 0xe4
mov byte [0xbbe2189b], al
push ds
xor al, 0x8e
inc sp
jmp 0x106cf573
invalid
inc esp
jmp 0x106cf5a5
in al, 0xd0
in al, dx
dec esp
test al, 0x45
outsb dx, byte [esi]
mov dh, 0x7e
and ah, ch
cli
or dl, byte [eax]
in al, dx
test byte [edi], cl
mul dword [0x2f00a284]
inc esp
mov dh, 0x21
stosd dword es:[edi], eax
xchg esi, eax
dec ecx
add bl, bl
fdivr qword [ebp + 0x765649a0]
imul esi, dword [esi + 0x2730bdcd], 0x4b
mov dh, 0x15
je 0x106cf5fd
mov dh, 0xdf
cmpsd dword [esi], dword es:[edi]
stc
ret 0xb658
dec ebp
cmp dword [0xec57cbb9], ebp
in al, dx
xchg edx, eax
pop esp
jl 0x106cf65a
popfd
push ebp
pushfd
les esp, [ebx]
pop ebx
inc ecx
cmp byte [edx - 0x120e731f], cl
ja 0x106cf5f7
dec edx
bound ebp, qword [edi]
add al, 0xee
mov byte [eax + ebx - 0x1c], bh
retf
add edi, dword [esi - 0x6cbcade4]
pushal
enter 0xffffffffffffb0c5, 0x68
and eax, 0x95085854
adc byte [ecx + 0x28b1de84], ch
mov ecx, 0xa18b7be7
js 0x106cf6a8
cmp al, 0x33
mov ds, word [ecx - 0x61b47bcc]
push ebp
arpl word [esi - 0x7a], di
add byte [edi], bh
fnstenv [ebp + ebx + 0x3033db9c]
push esi
inc esp
push ds
inc edx
scasb al, byte es:[edi]
push cs
aas
shrd dword [edi], esi, 0xa
sub dl, byte [ebx]
dec ecx
mov dl, 0xfb
lcall 0x70a3, 0x254ef6d7
out dx, al
push 0xe0399161
cmp eax, esp
arpl word [ecx - 0x74], bx
mov byte [eax], al
aas
fxtract
das
pop es
or bl, byte [ecx]
ror dword [0x3ee524c5], 0xee
lds eax, [esi + 0x2e0bc129]
cmp dword [esi + 0x25], 0x3de2264c
mov ah, 0x81
add eax, 0x954cde84
add ecx, ecx
sbb ebp, eax
fucomi st(0)
pop ebp
mov eax, dword [0x94a793e]
test byte [ebx + 0x110fa3e], ah
les eax, [edx]
fild qword [edi + 0x30]
jns 0x106cf754
mov byte [0xfe2dd28], al
push 0xcdcf6d5
cmpsd dword [esi], dword es:[edi]
and eax, 0x3f75c5aa
mov esi, 0x68031e21
jmp 0x106cf725
imul eax, dword [ecx - 0xdc3d7bc], 0xe4b58c1f
dec esp
inc eax
das
sahf
xor eax, 0xb01dba9a
push 0xffffffffffffff89
xlatb
fcmovnb st(0), st(6)
and edi, dword [ebx]
dec eax
pushal
mov eax, dword [0x8d251ea5]
push edi
mov cl, 0xc3
xchg esi, eax
aad 0x3f
fnsave dword [edx]
push 0x820b51a
arpl word [eax], bp
cmp eax, 0xcfdb1f42
sub byte [0xcfdb1f42], bh
loopne 0x106cf740
popal
not ebp
mov word [esi + 0x46], cs
stosb byte es:[edi], al
dec edx
and eax, 0x79ca90a4
stc
xchg edi, eax
shl dl, cl
jbe 0x106cf7e5
inc esi
dec esp
idiv dword [ecx - 0x48]
iretd
fmul qword [edx + esi*4]
jge 0x106cf81f
push esi
fisubr word [ebx - 0x226097a0]
popal
and bh, byte [ecx]
mov ah, 0x2a
ja 0x106cf7f2
cdq
clc
and dword [esi - 0x17], ebx
push esi
adc bh, byte [eax + 0x7666c831]
inc ebx
lcall 0x1b2d, 0x50ea3795
loopne 0x106cf7eb
scasb al, byte es:[edi]
or dword [ecx], 0xffffffc5
push edx
push esp
jp 0x106cf868
cmp eax, 0xe62aae9b
scasb al, byte es:[edi]
jne 0x106cf860
jmp 0x106cf861
push esp
les ecx, [edi + 0x69]
and eax, edx
xchg dh, cl
cli
iretd