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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xc8
push esi
push edi
mov edi, ecx
movss dword [esp + 0x20], xmm1
mov dword [esp + 0x10], edx
movss dword [esp + 0x38], xmm2
imul esi, dword [edi + 0x224c], 0x110
mov dword [esp + 0x18], esi
movss xmm1, dword [esi + edi + 4]
movss xmm0, dword [esi + edi - 4]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x456e88
sqrtsd xmm0, xmm0
jmp 0x456e8d
call fcn.004b21d0
movss xmm1, dword [esi + edi + 8]
cvtsd2ss xmm0, xmm0
mulss xmm1, xmm1
movss dword [esp + 0xc], xmm0
movss xmm0, dword [esi + edi]
mulss xmm0, xmm0
addss xmm0, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x456ec0
sqrtsd xmm0, xmm0
jmp 0x456ec5
call fcn.004b21d0
movss xmm2, dword [esp + 0xc]
xor esi, esi
cvtsd2ss xmm0, xmm0
mov dword [esp + 0xc], esi
addss xmm2, xmm0
movss xmm0, dword [0xea15f0]
mulss xmm2, dword [0xea15a0]
divss xmm2, dword [0xea1538]
addss xmm2, dword [0xea15a0]
cvttss2si eax, xmm2
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mov eax, dword [esp + 0x18]
cmp dword [eax + edi + 0x48], 0xffffffff
mulss xmm2, dword [0xea1538]
minss xmm2, dword [0xea16a8]
mulss xmm2, dword [edi + 0x2260]
divss xmm0, xmm2
movss dword [esp + 0x3c], xmm0
je 0x4571be
mov edx, dword [esp + 0x10]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x1c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x456f42
sub ecx, dword [esp + 0x1c]
lea eax, [ecx + edx]
mov dword [esp + 0x1c], eax
cmp edx, eax
je 0x4571be
mov ecx, dword [edi + 0x2264]
movaps xmm0, xmm2
mov edx, dword [esp + 0x18]
movaps xmm3, xmm2
mulss xmm3, dword [esp + 0x38]
push 1
mov eax, dword [ecx + 0x523c]
mulss xmm0, dword [edx + edi + 0x34]
push dword [esp + 0x20]
lea eax, [eax + eax*2]
movss dword [ecx + eax*8 + 0x504c], xmm0
movaps xmm0, xmm2
mov ecx, dword [edi + 0x2264]
mulss xmm0, dword [edx + edi + 0x38]
mov eax, dword [ecx + 0x523c]
add eax, 0x359
lea eax, [eax + eax*2]
movss dword [ecx + eax*8], xmm0
movaps xmm0, xmm2
mov ecx, dword [edi + 0x2264]
mulss xmm0, dword [edx + edi + 0x40]
mulss xmm2, dword [esp + 0x28]
mov eax, dword [ecx + 0x523c]
lea eax, [eax + eax*2]
movss dword [ecx + eax*8 + 0x5054], xmm0
mov edx, dword [edi + 0x2264]
mov eax, dword [edx + 0x523c]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi + 0x44]
mov dword [edx + ecx*8 + 0x5048], eax
mov edx, dword [edi + 0x2264]
mov eax, dword [edx + 0x523c]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi + 0x48]
mov dword [edx + ecx*8 + 0x5044], eax
mov edx, dword [esp + 0x18]
mov ecx, dword [edi + 0x2264]
push edx
lea edx, [esp + 0x4c]
call fcn.00451440
movaps xmm0, xmmword [esp + 0x4c]
lea edx, [esp + 0x4c]
mov eax, dword [esp + 0x84]
add esp, 0xc
mov ecx, dword [edi + 0x2264]
movaps xmmword [esp + 0x80], xmm0
movaps xmm0, xmmword [esp + 0x50]
movaps xmmword [esp + 0x90], xmm0
movaps xmm0, xmmword [esp + 0x60]
mov dword [esp + 0x10], eax
lea eax, [esp + 0xb0]
movaps xmmword [esp + 0xa0], xmm0
movq xmm0, qword [esp + 0x70]
push eax
movq qword [esp + 0x24], xmm0
call fcn.00451610
add esp, 4
test eax, eax
je 0x4571b6
mov esi, dword [ebp + 0xc]
add esi, 8
cmp dword [esp + 0x64], 0
jge 0x4570f9
mov ecx, edi
call fcn.00456130
test eax, eax
je 0x4570f9
movaps xmm0, xmmword [esp + 0x80]
lea edx, [esp + 0x40]
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0x2264]
movaps xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [esp + 0x90]
movaps xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [esp + 0xa0]
mov dword [esp + 0x78], eax
lea eax, [esp + 0xb0]
movaps xmmword [esp + 0x60], xmm0
movq xmm0, qword [esp + 0x20]
push eax
movq qword [esp + 0x74], xmm0
call fcn.00451610
add esp, 4
movaps xmm0, xmmword [esp + 0x50]
movaps xmm1, xmmword [esp + 0x40]
movq xmm2, qword [esp + 0x70]
movaps xmmword [esp + 0x90], xmm0
movaps xmm0, xmmword [esp + 0x60]
movaps xmmword [esp + 0xa0], xmm0
psrldq xmm0, 8
movd dword [esi - 8], xmm0
movaps xmm0, xmm1
movq qword [esp + 0x20], xmm2
movss xmm2, dword [esp + 0x3c]
mulss xmm0, xmm2
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc]
movss dword [esi - 4], xmm0
inc eax
movaps xmm0, xmm1
movaps xmmword [esp + 0x80], xmm1
minss xmm0, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
mulss xmm0, xmm2
movss dword [esi], xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xaa
maxss xmm0, dword [esp + 0xc0]
mulss xmm0, xmm2
movss dword [esi + 4], xmm0
add esi, 0x10
cmp eax, 0x400
jge 0x4571b2
mov ecx, dword [edi + 0x2264]
lea eax, [esp + 0xb0]
push eax
lea edx, [esp + 0x44]
call fcn.00451610
add esp, 4
test eax, eax
jne 0x457092
mov esi, dword [esp + 0xc]
mov eax, esi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret