Function at 0x1003a1e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x28
movaps xmm0, xmm3
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
push esi
mov esi, ecx
push edi
movss dword [esp + 0x10], xmm0
movaps xmm0, xmm1
mulsd xmm0, qword [0x1008b910]
mulsd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x1003a21b
sqrtsd xmm0, xmm0
jmp 0x1003a220
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
mulsd xmm0, qword [0x1008b890]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_log_precise
mulsd xmm0, qword [0x1008ba20]
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x1003a244
sqrtsd xmm0, xmm0
jmp 0x1003a249
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm2, dword [esp + 0x10]
xorps xmm3, xmm3
cvtps2pd xmm1, xmm2
mulsd xmm0, xmm1
movss xmm1, dword [0x1008b888]
cvtsd2ss xmm3, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, esi
shr esi, 0x1f
movss dword [esp + 0x18], xmm3
addsd xmm0, qword [esi*8 + 0x1008bb80]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x1008b840]
mulss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x1008b96c]
movss dword [esp + 0x1c], xmm1
xorps xmm1, xmm1
mulss xmm0, xmm2
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x1003a2bc
sqrtsd xmm0, xmm0
jmp 0x1003a2c1
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [0x1008b888]
cvtsd2ss xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [esp + 0x10]
movss dword [esp + 0x14], xmm1
movaps xmm1, xmm0
addss xmm1, xmm0
mulss xmm1, xmm0
movss xmm0, dword [0x1008ba0c]
divss xmm0, xmm1
movss dword [esp + 0x10], xmm1
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_exp_precise
cvtsd2ss xmm0, xmm0
mov dword [esp + 0x2c], 0x3f800000
mov esi, 1
mov dword [0x101f4398], 0
mov edi, 0x101f4930
xorps xmm1, xmm1
mulss xmm0, dword [esp + 0x14]
mulss xmm0, dword [ebp + 0xc]
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x28], xmm0
movups xmm0, xmmword [esp + 0x20]
mov dword [esp + 0x2c], 0x3f800000
movups xmmword [0x101f4920], xmm0
nop word [eax + eax]
xorps xmm0, xmm0
cvtsi2ss xmm0, esi
mulss xmm0, dword [esp + 0x18]
mulss xmm0, dword [0x1008b840]
mulss xmm0, xmm0
addss xmm0, xmm1
xorps xmm0, xmmword [0x1008bbe0]
divss xmm0, dword [esp + 0x10]
cvtss2sd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_exp_precise
cvtsd2ss xmm0, xmm0
xorps xmm1, xmm1
mulss xmm0, dword [esp + 0x14]
cvtsi2ss xmm1, esi
mulss xmm0, dword [ebp + 0xc]
mulss xmm1, dword [esp + 0x1c]
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x28], xmm0
movups xmm0, xmmword [esp + 0x20]
movss dword [esi*4 + 0x101f4398], xmm1
inc esi
movups xmmword [edi], xmm0
add edi, 0x10
xorps xmm1, xmm1
cmp esi, 8
jl 0x1003a360
movups xmm0, xmmword [0x101f4930]
xor eax, eax
movss xmm1, dword [0x1008bbe0]
movups xmmword [0x101f49a0], xmm0
pop edi
movss xmm0, dword [0x101f439c]
xorps xmm0, xmm1
movss dword [0x101f43b8], xmm0
movups xmm0, xmmword [0x101f4940]
pop esi
movups xmmword [0x101f49b0], xmm0
movss xmm0, dword [0x101f43a0]
xorps xmm0, xmm1
movss dword [0x101f43bc], xmm0
movups xmm0, xmmword [0x101f4950]
movups xmmword [0x101f49c0], xmm0
movss xmm0, dword [0x101f43a4]
xorps xmm0, xmm1
movss dword [0x101f43c0], xmm0
movups xmm0, xmmword [0x101f4960]
movups xmmword [0x101f49d0], xmm0
movss xmm0, dword [0x101f43a8]
xorps xmm0, xmm1
movss dword [0x101f43c4], xmm0
movups xmm0, xmmword [0x101f4970]
movups xmmword [0x101f49e0], xmm0
movss xmm0, dword [0x101f43ac]
xorps xmm0, xmm1
movss dword [0x101f43c8], xmm0
movups xmm0, xmmword [0x101f4980]
movups xmmword [0x101f49f0], xmm0
movss xmm0, dword [0x101f43b0]
xorps xmm0, xmm1
movss dword [0x101f43cc], xmm0
movups xmm0, xmmword [0x101f4990]
movups xmmword [0x101f4a00], xmm0
movss xmm0, dword [0x101f43b4]
xorps xmm0, xmm1
movss dword [0x101f43d0], xmm0
mov esp, ebp
pop ebp
ret