Function at 0x40260b
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3c
subps xmm2, xmm1
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
movaps xmm1, xmm0
mulps xmm1, xmm2
movaps xmm1, xmm0
sqrtss xmm2, xmm2
movq mm3, mm1
shufps xmm2, xmm2, 0
movss xmm0, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
addps xmm2, xmm0
rsqrtps xmm0, xmm0
movss xmm0, xmm2
movq mm2, mm0
sqrtss xmm2, xmm2
movaps xmm3, xmm2
mulps xmm3, xmm1
movhlps xmm2, xmm0
subps xmm2, xmm1
movq mm2, mm0
movss xmm0, xmm2
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0x55
divps xmm1, xmm2
movhlps xmm2, xmm0
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
divps xmm1, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
divps xmm1, xmm2
mov dword [esp], 0x208
call fcn.0040c790
mov ebx, eax
call fcn.0040b5cc
rsqrtps xmm0, xmm0
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
addss xmm2, xmm0
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
movss xmm0, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm2
movq mm2, mm0
divps xmm1, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0
movq mm2, mm0
movaps xmm1, xmm0
subps xmm0, xmm1
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
movhlps xmm2, xmm0
movaps xmm1, xmm0
movq mm4, mm1
sqrtss xmm2, xmm2
test eax, eax
jne 0x402741
subps xmm2, xmm1
addps xmm2, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0
subps xmm2, xmm1
mulps xmm2, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
movhlps xmm2, xmm0
divps xmm1, xmm2
movaps xmm1, xmm0
subps xmm2, xmm1
movq mm4, mm1
subps xmm0, xmm1
test ebx, ebx
jne 0x402800
jmp 0x402945
cmp word [eax], 0x22
jne 0x402816
shufps xmm2, xmm2, 0x55
movq mm3, mm1
mulps xmm1, xmm2
movhlps xmm2, xmm0
movhlps xmm2, xmm0
movq mm4, mm1
addss xmm2, xmm0
mulps xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
divps xmm1, xmm2
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
add eax, 2
mov dword [ebx], eax
jmp 0x4027c2
haddps xmm0, xmm0
movq mm2, mm0
movss xmm0, xmm2
mulps xmm0, xmm0
haddps xmm0, xmm0
mulps xmm3, xmm1
movq mm4, mm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
rsqrtps xmm0, xmm0
haddps xmm0, xmm0
movq mm3, mm1
mulps xmm1, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0x55
sqrtss xmm2, xmm2
add eax, 2
mov dx, word [eax]
cmp dx, 0x22
je 0x4027d2
test dx, dx
jne 0x402785
jmp 0x402800
mov word [eax], 0
add eax, 2
movaps xmm1, xmm0
addss xmm2, xmm0
subps xmm0, xmm1
addps xmm2, xmm0
divps xmm1, xmm2
rsqrtss xmm2, xmm2
rsqrtps xmm0, xmm0
mulps xmm2, xmm0
movaps xmm3, xmm2
addss xmm2, xmm0
mulps xmm1, xmm2
jmp 0x40280f
mov dword [esp], ebx
xor ebx, ebx
call fcn.0040c760
jmp 0x402945
mov edx, ebx
jmp 0x40293b
mov dword [ebx], eax
jmp 0x40281d
add eax, 2
mov dx, word [eax]
cmp dx, 0x20
ja 0x40281a
movhlps xmm2, xmm0
mulps xmm1, xmm2
movaps xmm3, xmm2
subps xmm0, xmm1
movss xmm0, xmm2
movq mm3, mm1
rsqrtps xmm0, xmm0
addss xmm2, xmm0
mulps xmm0, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
haddps xmm0, xmm0
movss xmm0, xmm2
addps xmm2, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
movq mm2, mm0
subps xmm2, xmm1
addps xmm2, xmm0
divps xmm1, xmm2
test dx, dx
je 0x40280f
mov word [eax], 0
add eax, 2
jmp 0x40280f
rsqrtss xmm2, xmm2
mulps xmm2, xmm0
subps xmm0, xmm1
movaps xmm1, xmm0
subps xmm2, xmm1
movaps xmm3, xmm2
mulps xmm3, xmm1
movq mm4, mm1
sqrtss xmm2, xmm2
divps xmm1, xmm2
movss xmm0, xmm2
addss xmm2, xmm0
movq mm4, mm1
mulps xmm1, xmm0
subps xmm2, xmm1
add eax, 2
mov cx, word [eax]
lea esi, [ecx - 1]
cmp si, 0x1f
jbe 0x402877
test cx, cx
jne 0x4028e8
mulps xmm3, xmm1
mulps xmm0, xmm0
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
movss xmm0, xmm2
movhlps xmm2, xmm0
movss xmm0, xmm2
jmp 0x402945
mov dword [edx + 4], eax
jmp 0x4028f0
add eax, 2
mov cx, word [eax]
cmp cx, 0x20
ja 0x4028ed
subps xmm2, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
subps xmm0, xmm1
movhlps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm2, xmm0
haddps xmm0, xmm0
addps xmm2, xmm0
addps xmm2, xmm0
mulps xmm3, xmm1
movq mm2, mm0
movq mm3, mm1
movhlps xmm2, xmm0
movq mm4, mm1
test cx, cx
je 0x402938
mov word [eax], 0
add eax, 2
add edx, 4
cmp word [eax], 0
jne 0x4028ab
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
shufps xmm2, xmm2, 0x55
mulps xmm2, xmm0
mulps xmm0, xmm0
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
addss xmm2, xmm0
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movq mm2, mm0
movq mm4, mm1
subps xmm2, xmm1
mulps xmm3, xmm1
movq mm3, mm1
mulps xmm3, xmm1
mulps xmm3, xmm1
mulps xmm1, xmm0
divps xmm1, xmm2
movq mm4, mm1
addss xmm2, xmm0
mulps xmm1, xmm0
haddps xmm0, xmm0
movhlps xmm2, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm2
movss xmm0, xmm2
movaps xmm1, xmm0
divps xmm1, xmm2
rsqrtps xmm0, xmm0
mulps xmm1, xmm0
subps xmm0, xmm1
mulps xmm3, xmm1
mulps xmm1, xmm2
movq mm4, mm1
movaps xmm3, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
haddps xmm0, xmm0
subps xmm2, xmm1
subps xmm0, xmm1
movss xmm0, xmm2
shufps xmm2, xmm2, 0
rsqrtps xmm0, xmm0
divps xmm1, xmm2
movss xmm0, xmm2
movaps xmm1, xmm0
addps xmm2, xmm0
movq mm2, mm0
movaps xmm1, xmm0
divps xmm1, xmm2
subps xmm2, xmm1
movaps xmm1, xmm0
movss xmm0, xmm2
movq mm2, mm0
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0
subps xmm2, xmm1
divps xmm1, xmm2
movq mm2, mm0
shufps xmm2, xmm2, 0x55
movss xmm0, xmm2
divps xmm1, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
sqrtss xmm2, xmm2
movaps xmm1, xmm0
mulps xmm1, xmm2
movq mm3, mm1
mulps xmm1, xmm0
mov eax, dword [ebx + 4]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x402a40
movhlps xmm2, xmm0
movhlps xmm2, xmm0
movq mm2, mm0
movq mm3, mm1
addss xmm2, xmm0
movq mm3, mm1
rsqrtps xmm0, xmm0
movss xmm0, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
subps xmm2, xmm1
movq mm4, mm1
movhlps xmm2, xmm0
mov eax, dword [0x40e018]
mov dword [ebp - 0x1c], eax
rsqrtss xmm2, xmm2
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
subps xmm2, xmm1
divps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm0, xmm0
mulps xmm2, xmm0
movaps xmm3, xmm2
movhlps xmm2, xmm0
movq mm4, mm1
mulps xmm1, xmm0
movq mm2, mm0
mulps xmm3, xmm1
addps xmm2, xmm0
rsqrtss xmm2, xmm2
addps xmm2, xmm0
divps xmm1, xmm2
call fcn.0040b5d4
mov edx, dword [ebp - 0x1c]
mov dword [esp + 4], 0
shl edx, 3
mov dword [esp + 8], edx
mov dword [esp], eax
call fcn.0040b5dc
sub esp, 0xc
mov edi, eax
subps xmm0, xmm1
mulps xmm2, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
subps xmm2, xmm1
haddps xmm0, xmm0
rsqrtps xmm0, xmm0
addss xmm2, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
movq mm3, mm1
divps xmm1, xmm2
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
movaps xmm1, xmm0
mulps xmm3, xmm1
addss xmm2, xmm0
xor ecx, ecx
xor esi, esi
mov dword [ebp - 0x30], ebx
jmp 0x402c5b
movhlps xmm2, xmm0
haddps xmm0, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
mulps xmm0, xmm0
sqrtss xmm2, xmm2
mulps xmm2, xmm0
divps xmm1, xmm2
rsqrtss xmm2, xmm2
movaps xmm1, xmm0
divps xmm1, xmm2
addps xmm2, xmm0
rsqrtps xmm0, xmm0
subps xmm0, xmm1
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
mulps xmm3, xmm1
movq mm3, mm1
cmp ecx, 2
jne 0x402b73
mov cl, 4
rsqrtps xmm0, xmm0
movss xmm0, xmm2
movq mm3, mm1
mulps xmm1, xmm0
movq mm4, mm1
subps xmm2, xmm1
movq mm4, mm1
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
movaps xmm1, xmm0
haddps xmm0, xmm0
mov eax, esi
mov ebx, 0xff
cdq
idiv ebx
mov ebx, dword [ecx*8 + section..data]
mov eax, edx
xor ebx, eax
cdq
mov dword [edi + esi*8], ebx
mov eax, dword [ecx*8 + 0x40e004]
xor eax, edx
mov dword [edi + esi*8 + 4], eax
movaps xmm3, xmm2
sqrtss xmm2, xmm2
movss xmm0, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
shufps xmm2, xmm2, 0
movhlps xmm2, xmm0
subps xmm0, xmm1
divps xmm1, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
sqrtss xmm2, xmm2
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
subps xmm0, xmm1
addss xmm2, xmm0
subps xmm0, xmm1
sqrtss xmm2, xmm2
mulps xmm1, xmm0
mulps xmm3, xmm1
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movss xmm0, xmm2
mulps xmm1, xmm0
subps xmm2, xmm1
shufps xmm2, xmm2, 0
movhlps xmm2, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0
movq mm4, mm1
mulps xmm1, xmm0
haddps xmm0, xmm0
addss xmm2, xmm0
movaps xmm3, xmm2
movaps xmm1, xmm0
movaps xmm1, xmm0
mulps xmm3, xmm1
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0
shufps xmm2, xmm2, 0x55
divps xmm1, xmm2
addss xmm2, xmm0
haddps xmm0, xmm0
movss xmm0, xmm2
inc esi
inc ecx
cmp esi, dword [ebp - 0x1c]
jl 0x402b20
mov ebx, dword [ebp - 0x30]
subps xmm0, xmm1
rsqrtss xmm2, xmm2
movq mm2, mm0
rsqrtps xmm0, xmm0
subps xmm0, xmm1
rsqrtss xmm2, xmm2
addps xmm2, xmm0
addss xmm2, xmm0
movq mm2, mm0
movss xmm0, xmm2
movaps xmm1, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
movq mm4, mm1
addps xmm2, xmm0
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
shufps xmm2, xmm2, 0x55
movq mm3, mm1
mov esi, dword [ebp - 0x1c]
call fcn.0040b5d4
mov dword [esp + 4], 0
shl esi, 2
mov dword [esp + 8], esi
mov dword [esp], eax
call fcn.0040b5dc
xor edx, edx
sub esp, 0xc
jmp 0x402cd7
mov cl, byte [edi + edx*2]
mov byte [eax + edx], cl
inc edx
cmp edx, esi
jl 0x402cd0
subps xmm0, xmm1
mulps xmm0, xmm0
addps xmm2, xmm0
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
mulps xmm0, xmm0
mulps xmm2, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
mulps xmm1, xmm0
addps xmm2, xmm0
sqrtss xmm2, xmm2
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
mulps xmm1, xmm2
shufps xmm2, xmm2, 0
addss xmm2, xmm0
divps xmm1, xmm2
mulps xmm3, xmm1
movq mm2, mm0
rsqrtps xmm0, xmm0
mov dword [esp], eax
call fcn.00403ac8
shufps xmm2, xmm2, 0x55
addps xmm2, xmm0
mulps xmm3, xmm1
mulps xmm2, xmm0
movaps xmm3, xmm2
divps xmm1, xmm2
mulps xmm2, xmm0
sqrtss xmm2, xmm2
movss xmm0, xmm2
mulps xmm3, xmm1
test eax, eax
je 0x403034
subps xmm2, xmm1
shufps xmm2, xmm2, 0
sqrtss xmm2, xmm2
mulps xmm2, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0
movq mm2, mm0
mulps xmm3, xmm1
movss xmm0, xmm2
mulps xmm0, xmm0
addss xmm2, xmm0
movq mm3, mm1
addps xmm2, xmm0
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.004035f1
mov esi, eax
subps xmm2, xmm1
mulps xmm2, xmm0
shufps xmm2, xmm2, 0x55
rsqrtps xmm0, xmm0
subps xmm2, xmm1
addss xmm2, xmm0
movq mm3, mm1
movss xmm0, xmm2
subps xmm0, xmm1
movq mm4, mm1
mulps xmm1, xmm2
haddps xmm0, xmm0
mulps xmm1, xmm0
addss xmm2, xmm0
movss xmm0, xmm2
movss xmm0, xmm2
rsqrtss xmm2, xmm2
sqrtss xmm2, xmm2
mulps xmm1, xmm2
mulps xmm0, xmm0
subps xmm2, xmm1
subps xmm2, xmm1
haddps xmm0, xmm0
mulps xmm1, xmm0
addss xmm2, xmm0
addss xmm2, xmm0
movaps xmm1, xmm0
shufps xmm2, xmm2, 0x55
subps xmm2, xmm1
mulps xmm0, xmm0
mulps xmm2, xmm0
movq mm4, mm1
haddps xmm0, xmm0
mulps xmm3, xmm1
shufps xmm2, xmm2, 0
movss xmm0, xmm2
sqrtss xmm2, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
shufps xmm2, xmm2, 0x55
shufps xmm2, xmm2, 0x55
mulps xmm1, xmm2
subps xmm2, xmm1
subps xmm2, xmm1
mulps xmm1, xmm0
shufps xmm2, xmm2, 0
movq mm3, mm1
movss xmm0, xmm2
subps xmm2, xmm1
shufps xmm2, xmm2, 0x55
mulps xmm3, xmm1
addss xmm2, xmm0
shufps xmm2, xmm2, 0
subps xmm0, xmm1
mulps xmm2, xmm0
mulps xmm0, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
sqrtss xmm2, xmm2
movhlps xmm2, xmm0
mulps xmm1, xmm0
mulps xmm1, xmm2
movaps xmm1, xmm0
haddps xmm0, xmm0
subps xmm2, xmm1
mulps xmm1, xmm2
sqrtss xmm2, xmm2
movq mm4, mm1
movaps xmm3, xmm2
call fcn.0040b5d4
mov dword [esp + 8], 0x24
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0040b5dc
sub esp, 0xc
rsqrtss xmm2, xmm2
subps xmm0, xmm1
mulps xmm1, xmm2
rsqrtss xmm2, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
rsqrtss xmm2, xmm2
haddps xmm0, xmm0
rsqrtss xmm2, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
movaps xmm1, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
subps xmm2, xmm1
movaps xmm3, xmm2
mulps xmm1, xmm2
movq mm2, mm0
addss xmm2, xmm0
haddps xmm0, xmm0
sqrtss xmm2, xmm2
mulps xmm1, xmm2
movhlps xmm2, xmm0
subps xmm2, xmm1
xor edx, edx
movq mm3, mm1
movq mm2, mm0
shufps xmm2, xmm2, 0x55
addss xmm2, xmm0
subps xmm0, xmm1
subps xmm0, xmm1
sqrtss xmm2, xmm2
subps xmm2, xmm1
addss xmm2, xmm0
movq mm2, mm0
addss xmm2, xmm0
movq mm4, mm1
subps xmm2, xmm1
addss xmm2, xmm0
shufps xmm2, xmm2, 0
divps xmm1, xmm2
mov cl, byte [edx + 0x424286]
xor ecx, 0xffffffcc
mov byte [eax + edx], cl
movq mm4, mm1
movss xmm0, xmm2
mulps xmm1, xmm2
mulps xmm3, xmm1
mulps xmm1, xmm2
rsqrtss xmm2, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
rsqrtss xmm2, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
rsqrtps xmm0, xmm0
addps xmm2, xmm0
addss xmm2, xmm0
movq mm2, mm0
mulps xmm1, xmm0
mulps xmm2, xmm0
movss xmm0, xmm2
subps xmm2, xmm1
movaps xmm3, xmm2
inc edx
cmp edx, 0x23
jne 0x402ef4
addss xmm2, xmm0
movq mm3, mm1
subps xmm2, xmm1
mulps xmm2, xmm0
mulps xmm0, xmm0
addss xmm2, xmm0
divps xmm1, xmm2
movhlps xmm2, xmm0
subps xmm0, xmm1
mulps xmm1, xmm0
movss xmm0, xmm2
mulps xmm3, xmm1
subps xmm2, xmm1
divps xmm1, xmm2
haddps xmm0, xmm0
sqrtss xmm2, xmm2
subps xmm0, xmm1
rsqrtps xmm0, xmm0
movhlps xmm2, xmm0
subps xmm2, xmm1
mov byte [eax + 0x23], 0
shufps xmm2, xmm2, 0
movss xmm0, xmm2
mulps xmm1, xmm0
divps xmm1, xmm2
divps xmm1, xmm2
movq mm2, mm0
movq mm4, mm1
subps xmm0, xmm1
shufps xmm2, xmm2, 0
mulps xmm1, xmm2
mulps xmm1, xmm2
mulps xmm3, xmm1
movaps xmm3, xmm2
test esi, esi
je 0x403002
mov dword [esp + 4], 0x4242ac
mov dword [esp], eax
call esi
subps xmm0, xmm1
movss xmm0, xmm2
mulps xmm2, xmm0
rsqrtss xmm2, xmm2
divps xmm1, xmm2
movq mm2, mm0
subps xmm2, xmm1
movq mm2, mm0
movq mm3, mm1
subps xmm0, xmm1
movq mm3, mm1
movq mm4, mm1
test ebx, ebx
je 0x403034
mov dword [esp], ebx
call fcn.0040c760
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 4