Function at 0x10f0f228
Capabilities:
Encode data using xor

Disassembly:
jmp 0x10f0f232
pushal
call 0x10f0f238
pop ebp
sub ebp, 0x10
sub ebp, 0xf0f228
mov al, byte [esp + 0x28]
cmp al, 1
je 0x10f0f25c
popal
xor eax, eax
inc eax
ret 0xc
jmp 0x10f0f265
mov eax, 0xf0f228
add eax, ebp
add eax, 0x63
mov ecx, 0x5b0
mov edx, 0x5bed48b0
xor byte [eax], dl
inc eax
dec ecx
jne 0x10f0f27c
jmp 0x10f0f28f
cmp edi, dword [ebp + 0x3b]
jge 0x10f0f2cd
cmp dword [eax + esi*4 + 0x7131b0b0], ecx
dec eax
mov al, 0x31
jno 0x10f0f2e2
xor dword [ecx + 0x48], esi
mov al, 0xb0
mov al, 0xb3
jge 0x10f0f2a8
mov dh, 0xb0
mov al, 0xb0
or bl, byte [eax + 0x47b0b0b0]
mov al, 0x47
push edx
mov bl, 0x78
cmp esi, dword [ecx]
mov esp, 0xb3b0b0b0
jne 0x10f0f296
js 0x10f0f2e9
xor dword [eax + esi*4 + 0x75b3b0b0], edi
loopne 0x10f0f297
loopne 0x10f0f290
fadd st(0)
fcomp dword [eax + esi*4 + 0x743905d8]
mov al, 0xb1
rcr al, 0x9c
mov al, 0xd8
add eax, 0xb1b07439
cmp dword [eax + esi*4 - 0x4f], esi
pushfd
xchg esp, eax
fcom dword [eax]
jno 0x10f0f30f
neg byte [eax - 0x4b]
mov al, 0xb0
mov al, 0x59
xor byte [eax - 0x2bc24f50], 0x94
dec esp
cmp dword [esp + edx*4 - 0x4f6b23c3], ebx
cmp esi, dword [0xb0b0b0b8]
mov al, 0xb0
cmp esp, dword [0xb0b0b0bc]
cmp edi, dword [0xb0b0b0a0]
mov al, 0x3b
cmp eax, 0xb0b0b0a0
jno 0x10f0f34b
mov dl, 0x81
mov dl, 0x33
jb 0x10f0f2ac
stc
mov edi, 0x4f4f4435
dec edi
in eax, dx
jb 0x10f0f2be
mov al, 0x3b
cmp al, 0x94
mov ah, 0xb0
mov al, 0xb0
fadd st(0)
fcomp dword [eax + esi*4 + 0x743905d8]
mov al, 0xb1
fadd dword [0xb1b07439]
pushfd
xchg esp, eax
loope 0x10f0f371
mov ch, 0xb0
mov al, 0xb0
pop ecx
div dword [edx - 0x2bc24f50]
xchg esp, eax
dec esp
cmp dword [esp + edx*4 - 0x4f6b23c3], ebx
dec edi
lds edi, [edi + ecx*2 - 0x3da7473b]
mov al, 0xb0
mov al, 0x3b
or eax, 0xb0b0b0b8
cmp dword [ecx + 0x31], 0x42
add esi, dword [ecx]
adc byte [ecx + esi + 0x42], cl
add esi, dword [ecx]
adc byte [ebx + eax*4 + 0x62], cl
xor ebx, dword [eax - 0x4b]
dec esp
and dword [edx + 0x33], 0x58
mov ch, 0xf8
clc
mov edi, 0xb0b0fe34
mov al, 0xbf
cmp al, bh
mov al, 0xb0
mov al, 0xd6
cmp ebp, dword [ecx + ecx*4 - 0x40a7b4d0]
xor al, 0xaa
mov al, 0xb0
mov edi, 0xb0b0aa34
mov al, 0x30
dec ebx
pop ecx
mov edi, 0xb0b0a134
xor al, 0xa1
mov al, 0xb0
mov al, 0xd6
xor dword [ebx + 0x4f], ecx
dec edi
xchg ebp, eax
mov edi, 0xb0b0a534
mov al, 0xf1
pop ecx
jl 0x10f0f3d2
dec edi
dec edi
cdq
cld
mov dword [ecx + 0x33b57133], esi
pop eax
mov ah, 0x59
or eax, 0x994f4f4f
in al, 0x89
mov dl, 0x33
jno 0x10f0f351
xor ebx, dword [edx - 0x4c]
xor ebx, dword [eax - 0x4b]
pop ecx
sbb ecx, dword [edi + 0x4f]
dec edi
in eax, dx
jb 0x10f0f365
mov al, 0xe5
cmp ebx, dword [esi - 0x19]
in eax, 0x3b
lds edi, [ebx + edi + 0x24cb8cd]
xor byte [edx], bh
mov dh, 0x31
jbe 0x10f0f36f
mov al, 0xb0
mov al, 0x38
mov bh, 0x31
ja 0x10f0f377
mov al, 0xb0
mov al, 0xb
mov dl, 0xb0
mov al, 0xb0
mov dl, 0x62
mov edi, 0xb0b0b535
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx + 0x6833bf62]
dec edi
mov ch, 0xb0
mov al, 0xb0
cmp ah, byte [esi - 0x409d5d0a]
xor ebp, dword [eax + 0x4f]
dec edi
dec edi
mov dl, 0x62
mov edi, 0xb0b0b535
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x25cc409e]
mov al, 0xb0
mov al, 0x83
jo 0x10f0f3a9
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x65cc409e]
mov cl, 0xb0
mov al, 0xb2
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d8f5c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d8f5c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d8f5c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x408f5c9e]
xor al, 0xb6
mov al, 0xb0
mov al, 0x3b
outsd dx, dword [esi]
wait
push 0xb738b33a
test dword [ebx], 0xb0b0b0b2
pop ecx
ror byte [edi + 0x4f], 0x4f
or byte [ecx - 0x4d4f4f50], dh
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d8f5c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx + 0x6e32bf62]
dec edi
dec edi
dec edi
wait
jae 0x10f0f493
mov cl, 0xb0
mov al, 0xb0
mov edi, 0xb0b08435
mov al, 9
mov cl, 0xb0
mov al, 0xb0
mov dl, 0x62
mov edi, 0xb0b0b535
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d865c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx + 0x6e32bf62]
dec edi
dec edi
dec edi
out 0x3b, al
inc edi
wait
inc ebp
inc ebx
adc al, 0xee
pop ecx
mov eax, 0xf84f4f4f
jno 0x10f0f519
mov eax, 0x3bf6b63a
pop eax
or dword [ecx - 0x4d4f4f50], esi
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx - 0x4d865c9e]
bound edi, qword [edi - 0x4f4f4acb]
mov al, 0x3a
cmpsb byte [esi], byte es:[edi]
mul byte [edx + 0x6e32bf62]
dec edi
dec edi
dec edi
xor dword [eax - 0x50], ecx
int 0xb0
mov al, 0x31
imul ecx, dword [edi + 0x4f], 0x48314f4f
mov al, 0xb5
mov al, 0xb0
xor dword [ecx + 0x4f], ebp
dec edi
dec edi
dec edi
xor dword [eax + 0x30], ecx
mov al, 0xb0
mov al, 0x31
popal
mov al, 0xb0
mov al, 0xb0
xor dword [eax + 0x30], ecx
mov al, 0xb0
mov al, 0x31
popal
mov al, 0x31
dec eax
xor byte [eax + 0x6131b0b0], dh
mov al, 0xb0
mov al, 0xb0
out 0x3b, al
inc edi
wait
inc eax
inc ebx
adc al, 0xee
pop ecx
sub ecx, dword [esi + 0x4f]
dec edi
cmp dh, byte [esi + 0x707983f6]
pop eax
mov cl, 0xbf
xor al, 0xaa
mov al, 0xb0
mov al, 0x31
popal
mov dl, 0xb0
mov al, 0xb0
cmp ebx, dword [eax - 0x1a]
cmp eax, dword [edi - 0x65]
inc eax
inc ebx
adc al, 0xee
or esi, dword [ecx + 0x59b0b0b0]
ret