Function at 0x10061ed0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
mov eax, dword [0x1012be80]
xor eax, esp
mov dword [esp + 0x70], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
xorps xmm1, xmm1
movss xmm0, dword [0x10083120]
mov ebx, dword [0x1012d2f0]
mov esi, dword [0x1012d2f4]
movss dword [esp + 0x28], xmm1
mov dword [eax], 0
mov dword [eax + 4], 0
movss dword [esp + 0xc], xmm1
movss dword [esp + 0x10], xmm1
mov dword [esp + 0x14], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
movss dword [esp + 0x30], xmm1
movss dword [esp + 0x34], xmm1
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x6c], xmm0
mov dword [esp + 0x70], 0
mov dword [esp + 0x5c], esi
cmp ebx, esi
je 0x100623fe
movq xmm0, qword [esp + 0xc]
lea esi, [ebx + 0xa0]
mov eax, dword [esp + 0x5c]
movq qword [esp + 0x18], xmm0
nop word [eax + eax]
cmp byte [0x1012d9d6], 1
jne 0x10061f96
comiss xmm1, dword [esi - 0x90]
ja 0x100623de
cmp byte [0x1012d9d7], 1
jne 0x10061fa8
cmp byte [ebx], 1
je 0x100623de
movq xmm0, qword [esi]
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x64]
push eax
mov eax, dword [esi + 8]
sub esp, 0xc
mov ecx, esp
sub esp, 0x40
movq qword [ecx], xmm0
movups xmm0, xmmword [0x1012d570]
mov dword [ecx + 8], eax
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x1012d580]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x1012d590]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x1012d5a0]
movups xmmword [eax + 0x30], xmm0
call fcn.100080f0
add esp, 0x54
test eax, eax
je 0x100623d7
cmp byte [0x1012da13], 0
je 0x10062160
call fcn.10062770
mov eax, dword [0x1012d514]
movss xmm1, dword [esp + 0x64]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
movsd xmm1, qword [0x10083118]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_pow_precise
mov eax, dword [0x1012d518]
movss xmm2, dword [esp + 0x60]
cdq
sub eax, edx
movsd qword [esp + 0x28], xmm0
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm2, xmm1
movsd xmm1, qword [0x10083118]
cvtps2pd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_pow_precise
addsd xmm0, qword [esp + 0x28]
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x10062088
sqrtsd xmm0, xmm0
jmp 0x1006208d
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [esp + 0x6c]
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
comiss xmm1, xmm2
jbe 0x10062323
mov eax, dword [0x1012da18]
test eax, eax
jne 0x100620e3
mov eax, dword [esi - 4]
movq xmm1, qword [esi - 0xc]
mov dword [esp + 0x14], eax
movss xmm0, dword [esp + 0x14]
addss xmm0, dword [0x100cb224]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
movss dword [esp + 0x6c], xmm2
movss dword [esp + 0x14], xmm0
jmp 0x10062311
cmp eax, 1
jne 0x1006210a
movq xmm1, qword [esi]
mov eax, dword [esi + 8]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
mov dword [esp + 0x14], eax
movss dword [esp + 0x6c], xmm2
jmp 0x10062311
cmp eax, 2
jne 0x10062132
movq xmm1, qword [esi + 0xc]
mov eax, dword [esi + 0x14]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
mov dword [esp + 0x14], eax
movss dword [esp + 0x6c], xmm2
jmp 0x10062311
cmp eax, 3
jne 0x10062155
movq xmm0, qword [esi + 0x9c]
mov eax, dword [esi + 0xa4]
movq qword [esp + 0x18], xmm0
movq qword [esp + 0xc], xmm0
mov dword [esp + 0x14], eax
movss dword [esp + 0x6c], xmm2
jmp 0x10062311
call fcn.10062770
cmp byte [0x1012d9d6], 1
xorps xmm1, xmm1
jne 0x1006217e
comiss xmm1, dword [esi - 0x90]
ja 0x100623da
cmp byte [0x1012d9d7], 1
jne 0x10062190
cmp byte [ebx], 1
je 0x100623da
movq xmm0, qword [esi]
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x64]
push eax
mov eax, dword [esi + 8]
sub esp, 0xc
mov ecx, esp
sub esp, 0x40
movq qword [ecx], xmm0
movups xmm0, xmmword [0x1012d570]
mov dword [ecx + 8], eax
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x1012d580]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x1012d590]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x1012d5a0]
movups xmmword [eax + 0x30], xmm0
call fcn.100080f0
add esp, 0x54
test eax, eax
je 0x10062323
mov eax, dword [0x1012d514]
movss xmm1, dword [esp + 0x64]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
movsd xmm1, qword [0x10083118]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_pow_precise
mov eax, dword [0x1012d518]
movss xmm2, dword [esp + 0x60]
cdq
sub eax, edx
movsd qword [esp + 0x28], xmm0
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm2, xmm1
movsd xmm1, qword [0x10083118]
cvtps2pd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_pow_precise
addsd xmm0, qword [esp + 0x28]
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x1006225e
sqrtsd xmm0, xmm0
jmp 0x10062263
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [esp + 0x6c]
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
comiss xmm1, xmm2
jbe 0x10062323
mov eax, dword [0x1012da18]
test eax, eax
jne 0x100622b0
mov eax, dword [esi - 4]
movq xmm1, qword [esi - 0xc]
mov dword [esp + 0x14], eax
movss xmm0, dword [esp + 0x14]
addss xmm0, dword [0x100cb224]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
movss dword [esp + 0x14], xmm0
jmp 0x10062308
cmp eax, 1
jne 0x100622ca
movq xmm1, qword [esi]
mov eax, dword [esi + 8]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
jmp 0x10062304
cmp eax, 2
jne 0x100622e5
movq xmm1, qword [esi + 0xc]
mov eax, dword [esi + 0x14]
movq qword [esp + 0x18], xmm1
movq qword [esp + 0xc], xmm1
jmp 0x10062304
cmp eax, 3
jne 0x10062308
movq xmm0, qword [esi + 0x9c]
mov eax, dword [esi + 0xa4]
movq qword [esp + 0x18], xmm0
movq qword [esp + 0xc], xmm0
mov dword [esp + 0x14], eax
movaps xmm0, xmm2
movss dword [esp + 0x6c], xmm0
movq xmm0, qword [esi - 0x1c]
mov eax, dword [esi - 0x14]
mov dword [esp + 0x38], eax
movq qword [esp + 0x30], xmm0
cmp byte [0x1012da13], 0
je 0x100623d7
movq xmm0, qword [esp + 0x18]
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x64]
push eax
mov eax, dword [esp + 0x1c]
sub esp, 0xc
mov ecx, esp
sub esp, 0x40
movq qword [ecx], xmm0
movups xmm0, xmmword [0x1012d570]
mov dword [ecx + 8], eax
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x1012d580]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x1012d590]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x1012d5a0]
movups xmmword [eax + 0x30], xmm0
call fcn.100080f0
add esp, 0x54
test eax, eax
je 0x100623d2
movss xmm0, dword [0x1012b0c0]
push ecx
movss dword [esp], xmm0
push dword [esp + 0x68]
movd xmm0, dword [0x1012d514]
push dword [esp + 0x68]
cvtdq2ps xmm0, xmm0
sub esp, 8
movss dword [esp + 4], xmm0
movd xmm0, dword [0x1012d518]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
call fcn.10006ca0
add esp, 0x14
test al, al
jne 0x100623d7
call fcn.100634b0
xorps xmm1, xmm1
mov eax, dword [esp + 0x5c]
add ebx, 0x148
add esi, 0x148
cmp ebx, eax
jne 0x10061f80
movss xmm0, dword [esp + 0xc]
movss dword [esp + 0x28], xmm0
mov edi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [esp + 0x6c]
push 0
push 4
push eax
mov eax, dword [0x1012d2c4]
add eax, 0x378
push eax
push dword [0x1012d274]
call edi
mov esi, dword [esp + 0x6c]
lea eax, [esp + 0x5c]
push 0
push 4
push eax
lea eax, [esi + 0x6e4]
push eax
push dword [0x1012d274]
call edi
mov eax, dword [esp + 0x5c]
add eax, 0x120
push eax
lea eax, [esi + 0x150]
push eax
lea eax, [esp + 0x50]
push eax
call fcn.100079a0
mov ecx, eax
add esp, 0xc
movq xmm0, qword [ecx]
mov eax, dword [ecx + 8]
movq qword [esp + 0x3c], xmm0
movq xmm0, xmm0
movq qword [esp + 0x18], xmm0
movss xmm1, dword [esp + 0x18]
movss xmm2, dword [esp + 0x1c]
subss xmm2, dword [esp + 0x10]
subss xmm1, dword [esp + 0x28]
mov dword [esp + 0x20], eax
movss xmm0, dword [esp + 0x20]
subss xmm0, dword [esp + 0x14]
mulss xmm2, xmm2
mov dword [esp + 0x44], eax
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
xorps xmm1, xmm1
addss xmm2, xmm0
cvtps2pd xmm0, xmm2
ucomisd xmm1, xmm0
ja 0x100624c5
sqrtsd xmm0, xmm0
jmp 0x100624ca
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
cvtsd2ss xmm0, xmm0
push 0
push 4
lea eax, [esp + 0x74]
push eax
push 0x2288
divss xmm0, dword [0x10083154]
push dword [0x1012d274]
movss dword [esp + 0x2c], xmm0
call edi
push 0
push 4
lea eax, [esp + 0x64]
push eax
mov eax, dword [esp + 0x78]
add eax, 0xcf8
push eax
push dword [0x1012d274]
call edi
push 0
push 4
lea eax, [esp + 0x74]
push eax
mov eax, dword [esp + 0x68]
add eax, 0x420
push eax
push dword [0x1012d274]
call edi
movss xmm1, dword [esp + 0x18]
movss xmm0, dword [0x100cb23c]
movaps xmm4, xmm1
comiss xmm0, xmm1
divss xmm4, dword [0x100cb238]
jbe 0x10062553
movss xmm0, dword [0x100cb220]
jmp 0x10062631
movss xmm0, dword [0x100cb240]
comiss xmm0, xmm1
jbe 0x1006256d
movss xmm0, dword [0x100cb21c]
jmp 0x10062631
movss xmm0, dword [0x100cb244]
comiss xmm0, xmm1
jbe 0x10062587
movss xmm0, dword [0x100cb204]
jmp 0x10062631
movss xmm0, dword [0x100cb248]
comiss xmm0, xmm1
jbe 0x100625a1
movss xmm0, dword [0x100cb208]
jmp 0x10062631
movss xmm0, dword [0x100cb24c]
comiss xmm0, xmm1
jbe 0x100625b8
movss xmm0, dword [0x100c6854]
jmp 0x10062631
movss xmm0, dword [0x100cb250]
comiss xmm0, xmm1
jbe 0x100625cf
movss xmm0, dword [0x100cb20c]
jmp 0x10062631
movss xmm0, dword [0x100cb254]
comiss xmm0, xmm1
jbe 0x100625e6
movss xmm0, dword [0x100cb210]
jmp 0x10062631
movss xmm0, dword [0x100cb258]
comiss xmm0, xmm1
jbe 0x100625fd
movss xmm0, dword [0x100cb214]
jmp 0x10062631
movss xmm0, dword [0x100cb25c]
comiss xmm0, xmm1
jbe 0x10062614
movss xmm0, dword [0x100cb218]
jmp 0x10062631
movss xmm0, dword [0x100cb260]
comiss xmm0, xmm1
jbe 0x1006262b
movss xmm0, dword [0x100c6964]
jmp 0x10062631
movss xmm0, dword [esp + 0x18]
movaps xmm1, xmm4
movaps xmm3, xmm4
mulss xmm1, dword [esp + 0x38]
movaps xmm2, xmm4
mulss xmm3, dword [esp + 0x30]
mulss xmm1, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [0x100cb230]
mulss xmm2, dword [esp + 0x34]
addss xmm3, dword [esp + 0x28]
mulss xmm0, xmm4
addss xmm2, dword [esp + 0x10]
subss xmm3, dword [esp + 0x3c]
addss xmm1, xmm0
subss xmm2, dword [esp + 0x40]
movss dword [esp + 0x28], xmm3
addss xmm1, dword [esp + 0x14]
movss dword [esp + 0x18], xmm2
subss xmm1, dword [esp + 0x44]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm2
movsd qword [esp + 0x70], xmm0
movaps xmm0, xmm3
mulss xmm1, xmm2
mulss xmm0, xmm3
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x100626c0
sqrtsd xmm0, xmm0
jmp 0x100626c5
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
fld qword [esp + 0x70]
cvtsd2ss xmm0, xmm0
cvtss2sd xmm0, xmm0
movsd qword [esp + 0x60], xmm0
fld qword [esp + 0x60]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIatan2
fstp qword [esp + 0x60]
movsd xmm0, qword [esp + 0x60]
cvtpd2ps xmm0, xmm0
mov ebx, dword [ebp + 8]
mulss xmm0, dword [0x100cb22c]
divss xmm0, dword [0x100ca43c]
movss dword [ebx], xmm0
movss xmm0, dword [esp + 0x18]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x28]
fld qword [esp + 0x60]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x60], xmm0
fld qword [esp + 0x60]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIatan2
fstp qword [esp + 0x60]
movsd xmm0, qword [esp + 0x60]
mov eax, ebx
cvtpd2ps xmm0, xmm0
mov ecx, dword [esp + 0x7c]
pop edi
pop esi
mulss xmm0, dword [0x100cb22c]
divss xmm0, dword [0x100ca43c]
movss dword [ebx + 4], xmm0
pop ebx
xor ecx, esp
call fcn.1007c8ec
mov esp, ebp
pop ebp
ret