Function at 0x1018eb50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x828
mov eax, dword [0x10411ce0]
xor eax, esp
mov dword [esp + 0x824], eax
movsd xmm4, qword [0x103d5688]
xorps xmm3, xmm3
movsd xmm5, qword [0x10359370]
xor edx, edx
push esi
push edi
mov esi, 0x100
mov eax, esi
movapd xmm1, xmm4
imul eax, edx
mov ecx, 0x64
movd xmm2, eax
cvtdq2pd xmm2, xmm2
mulsd xmm2, xmm5
mulsd xmm2, xmm5
mov eax, ecx
mulsd xmm1, xmm2
imul eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
addsd xmm1, xmm4
dec ecx
jne 0x1018eba4
addsd xmm1, xmm3
dec esi
movapd xmm3, xmm1
movsd qword [esp + edx*8 + 0x28], xmm3
inc edx
test esi, esi
jg 0x1018eb86
addsd xmm3, xmm4
xor eax, eax
unpcklpd xmm3, xmm3
mov edi, edi
movupd xmm0, xmmword [esp + eax + 0x28]
divpd xmm0, xmm3
sqrtpd xmm0, xmm0
movupd xmmword [eax + 0x10446020], xmm0
add eax, 0x10
cmp eax, 0x800
jl 0x1018ebe0
xor edi, edi
lea esi, [edi + 1]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10359388]
call fcn.102df500
movsd qword [edi*8 + 0x10444c60], xmm0
mov edi, esi
cmp edi, 3
jl 0x1018ec02
xor edi, edi
lea esp, [esp]
lea esi, [edi + 1]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10359380]
call fcn.102df500
movsd qword [edi*8 + 0x10444c78], xmm0
mov edi, esi
cmp edi, 7
jl 0x1018ec30
xor esi, esi
mov edi, 0x10444cb0
nop
movd xmm0, esi
pshufd xmm0, xmm0, 0
paddd xmm0, xmmword [0x103d56a0]
paddd xmm0, xmmword [0x10359390]
cvtdq2pd xmm0, xmm0
mulpd xmm0, xmmword [0x103593d0]
call fcn.102df890
movupd xmmword [edi], xmm0
add edi, 0x10
add esi, 2
cmp edi, 0x10444d20
jl 0x1018ec60
cmp esi, 0xf
jge 0x1018ecd5
lea edi, [esi + 1]
lea esi, [esi*8 + 0x10444cb0]
jmp 0x1018ecb0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10359378]
call fcn.102df500
movsd qword [esi], xmm0
inc edi
add esi, 8
cmp esi, 0x10444d28
jl 0x1018ecb0
xor esi, esi
mov edi, 0x10444d28
lea esp, [esp]
movd xmm0, esi
pshufd xmm0, xmm0, 0
paddd xmm0, xmmword [0x103d56a0]
paddd xmm0, xmmword [0x10359390]
cvtdq2pd xmm0, xmm0
mulpd xmm0, xmmword [0x103593c0]
call fcn.102df890
movupd xmmword [edi], xmm0
add edi, 0x10
add esi, 2
cmp edi, 0x10444e18
jl 0x1018ece0
cmp esi, 0x1f
jge 0x1018ed55
lea edi, [esi + 1]
lea esi, [esi*8 + 0x10444d28]
jmp 0x1018ed30
movd xmm0, edi
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x10359368]
call fcn.102df500
movsd qword [esi], xmm0
inc edi
add esi, 8
cmp esi, 0x10444e20
jl 0x1018ed30
xor edi, edi
mov esi, 0x10444e28
lea esp, [esp]
movzx eax, byte [edi + 0x103fd468]
shr eax, 1
add eax, 0x40
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [0x1033d2b8]
mulsd xmm0, qword [0x10359358]
movsd qword [esp + 0x10], xmm0
call fcn.102df500
movsd qword [esi - 8], xmm0
movsd xmm0, qword [esp + 0x10]
call fcn.102df6c0
movsd qword [esi], xmm0
inc edi
add esi, 0x10
cmp esi, 0x10445228
jl 0x1018ed60
mov edi, 0x40
mov esi, 0x10445228
lea esp, [esp]
movzx eax, byte [edi + 0x103fd468]
shr eax, 1
add eax, 0x40
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [0x1033d2b8]
mulsd xmm0, qword [0x10359358]
movsd qword [esp + 0x10], xmm0
call fcn.102df500
xorpd xmm0, xmmword [0x103592e0]
movsd qword [esi - 8], xmm0
movsd xmm0, qword [esp + 0x10]
call fcn.102df6c0
xorpd xmm0, xmmword [0x103592e0]
inc edi
movsd qword [esi], xmm0
add esi, 0x10
cmp esi, 0x10445628
jl 0x1018edc0
xor edi, edi
mov esi, 0x10445630
movd xmm0, edi
pshufd xmm0, xmm0, 0
paddd xmm0, xmmword [0x103d56a0]
cvtdq2pd xmm0, xmm0
addpd xmm0, xmmword [0x103593e0]
mulpd xmm0, xmmword [0x103593a0]
movaps xmmword [esp + 0x10], xmm0
call fcn.102df890
movlpd qword [esi - 0x10], xmm0
movhpd qword [esi], xmm0
movaps xmm0, xmmword [esp + 0x10]
call fcn.102df8a0
movlpd qword [esi - 8], xmm0
add edi, 2
movhpd qword [esi + 8], xmm0
add esi, 0x20
cmp esi, 0x10445a30
jl 0x1018ee26
xor edi, edi
mov esi, 0x10445a28
jmp 0x1018ee90
movzx eax, byte [edi + 0x103fd468]
shr eax, 2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [0x1033d2b8]
mulsd xmm0, qword [0x10359360]
movsd qword [esp + 0x10], xmm0
call fcn.102df500
movsd qword [esi - 8], xmm0
movsd xmm0, qword [esp + 0x10]
call fcn.102df6c0
movsd qword [esi], xmm0
inc edi
add esi, 0x10
cmp esi, 0x10445e28
jl 0x1018ee90
xor edi, edi
mov esi, 0x10445e30
movd xmm0, edi
pshufd xmm0, xmm0, 0
paddd xmm0, xmmword [0x103d56a0]
cvtdq2pd xmm0, xmm0
addpd xmm0, xmmword [0x103593e0]
mulpd xmm0, xmmword [0x103593b0]
movaps xmmword [esp + 0x10], xmm0
call fcn.102df890
movlpd qword [esi - 0x10], xmm0
movhpd qword [esi], xmm0
movaps xmm0, xmmword [esp + 0x10]
call fcn.102df8a0
movlpd qword [esi - 8], xmm0
add edi, 2
movhpd qword [esi + 8], xmm0
add esi, 0x20
cmp esi, 0x10446030
jl 0x1018eee4
mov ecx, dword [esp + 0x82c]
pop edi
pop esi
xor ecx, esp
mov dword [0x10446820], 0x1018ef70
mov dword [0x10446824], 0x1018fc50
call fcn.102d6d23
mov esp, ebp
pop ebp
ret