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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push esi
push edi
push ebx
sub esp, 0xf4
mov ebx, eax
mov dword [esp + 0x50], edx
mov esi, ecx
mov eax, dword [0x52cfb4]
xor eax, esp
mov dword [esp + 0xb4], eax
push ebx
call fcn.00415e80
add esp, 4
cmp eax, 1
je 0x439bbf
cmp eax, 4
je 0x439bbf
mov edi, 0x4c1ee0
jmp 0x439bc4
mov edi, 0x4c21e0
mov edx, dword [esp + 0x50]
mov ecx, edx
shl ecx, 6
movss xmm5, dword [ebx + 0xa0]
movss dword [esp + 0x60], xmm5
lea ecx, [ecx + edx*4]
movups xmm4, xmmword [edi + ecx]
mov eax, dword [edi + ecx]
movups xmmword [esp + 0x70], xmm4
movups xmm4, xmmword [edi + ecx + 0x10]
movss xmm5, dword [edi + ecx + 0x14]
movss xmm3, dword [edi + ecx + 0x1c]
movups xmmword [esp + 0x80], xmm4
movss dword [esp + 0x64], xmm3
movups xmm3, xmmword [edi + ecx + 0x20]
movss xmm0, dword [edi + ecx + 0x24]
movss xmm1, dword [edi + ecx + 0x2c]
movups xmmword [esp + 0x90], xmm3
movups xmm6, xmmword [edi + ecx + 0x30]
mov edx, dword [edi + ecx + 0x34]
movss xmm2, dword [edi + ecx + 0x3c]
movups xmmword [esp + 0xa0], xmm6
mov dword [esp + 0x5c], eax
movss xmm7, dword [edi + ecx + 0x40]
mov eax, dword [edi + ecx + 0x40]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x30], xmm1
movss dword [esp + 0x54], xmm2
movups xmmword [esp + 0x10], xmm6
movss dword [esp + 0x34], xmm7
mov dword [esp + 0xb0], eax
movups xmm2, xmmword [ecx + edi + 0x54]
movss xmm1, dword [ecx + edi + 0x58]
movss xmm0, dword [ecx + edi + 0x60]
movss dword [esp + 0x4c], xmm1
movups xmm1, xmmword [ecx + edi + 0x64]
movss xmm6, dword [ecx + edi + 0x68]
movss xmm7, dword [ecx + edi + 0x70]
movss dword [esp + 0x3c], xmm6
movups xmm6, xmmword [ecx + edi + 0x74]
movss dword [esp + 0x44], xmm0
mov eax, dword [ecx + edi + 0x78]
movss xmm0, dword [ecx + edi + 0x80]
movss dword [esp + 0x40], xmm7
movss xmm7, dword [ecx + edi + 0x84]
movss dword [esp + 0x38], xmm0
movups xmmword [esp + 0x20], xmm6
movss dword [esp + 0x48], xmm7
movaps xmm7, xmm4
movaps xmm6, xmm2
movss xmm0, dword [esp + 0x60]
sub eax, edx
unpckhps xmm4, xmm4
subss xmm6, xmm7
mulss xmm6, xmm0
unpckhps xmm2, xmm2
addss xmm7, xmm6
subss xmm2, xmm4
movss xmm6, dword [esp + 0x4c]
mulss xmm2, xmm0
subss xmm6, xmm5
addss xmm4, xmm2
mulss xmm6, xmm0
movss xmm2, dword [esp + 0x64]
addss xmm5, xmm6
movss dword [esp + 0x84], xmm5
movaps xmm6, xmm3
movss xmm5, dword [esp + 0x44]
movss dword [esp + 0x80], xmm7
subss xmm5, xmm2
mulss xmm5, xmm0
movss xmm7, dword [esp + 0x3c]
addss xmm2, xmm5
movss dword [esp + 0x8c], xmm2
pxor xmm5, xmm5
movss xmm2, dword [esp + 0x58]
movss dword [esp + 0x88], xmm4
movaps xmm4, xmm1
unpckhps xmm3, xmm3
subss xmm7, xmm2
subss xmm4, xmm6
cvtsi2ss xmm5, edx
mulss xmm7, xmm0
mulss xmm4, xmm0
addss xmm2, xmm7
addss xmm6, xmm4
unpckhps xmm1, xmm1
pxor xmm4, xmm4
movss dword [esp + 0x94], xmm2
movss xmm2, dword [esp + 0x30]
subss xmm1, xmm3
cvtsi2ss xmm4, eax
mulss xmm1, xmm0
mulss xmm4, xmm0
addss xmm3, xmm1
addss xmm5, xmm4
movss xmm1, dword [esp + 0x40]
movss dword [esp + 0x90], xmm6
subss xmm1, xmm2
cvttss2si eax, xmm5
mulss xmm1, xmm0
movups xmm6, xmmword [esp + 0x10]
addss xmm2, xmm1
movups xmm7, xmmword [esp + 0x20]
movss dword [esp + 0x98], xmm3
movss dword [esp + 0x9c], xmm2
unpckhps xmm6, xmm6
unpckhps xmm7, xmm7
movss xmm1, dword [esp + 0x38]
movss xmm2, dword [esp + 0x54]
subss xmm7, xmm6
subss xmm1, xmm2
mulss xmm7, xmm0
mulss xmm1, xmm0
addss xmm6, xmm7
addss xmm2, xmm1
movss xmm4, dword [esp + 0x34]
movss xmm3, dword [esp + 0x48]
mov dword [esp + 0xa4], eax
subss xmm3, xmm4
mulss xmm3, xmm0
movss dword [esp + 0xa8], xmm6
addss xmm4, xmm3
movss dword [esp + 0xac], xmm2
movss dword [esp + 0xb0], xmm4
push dword [esp + 0x5c]
push ebx
call fcn.00415ea0
add esp, 8
test esi, esi
je 0x439e82
push dword [esp + 0x74]
push ebx
call fcn.00415cf0
push dword [esp + 0x80]
push ebx
call fcn.00415d40
add esp, 0x10
mov eax, dword [esp + 0x7c]
test eax, eax
jne 0x439ee8
jmp 0x439ef6
push ebx
call fcn.00415d20
add esp, 4
inc eax
pxor xmm0, xmm0
cvtsi2ss xmm0, eax
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x439eb1
push dword [esp + 0x74]
push ebx
call fcn.00415cf0
add esp, 8
push ebx
call fcn.00415d70
add esp, 4
inc eax
pxor xmm0, xmm0
cvtsi2ss xmm0, eax
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x439ee0
push dword [esp + 0x78]
push ebx
call fcn.00415d40
add esp, 8
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x439f32
push eax
push ebx
call fcn.00415d90
add esp, 8
test esi, esi
je 0x439f32
push dword [esp + 0x80]
push ebx
call fcn.004164a0
push dword [esp + 0x8c]
push ebx
call fcn.00416500
push dword [esp + 0x98]
push ebx
call fcn.004161d0
push dword [esp + 0xa4]
push ebx
call fcn.00416230
add esp, 0x20
jmp 0x43a00e
push ebx
call fcn.004164d0
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
subss xmm0, dword [0x4c2518]
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x439f6d
push dword [esp + 0x80]
push ebx
call fcn.004164a0
add esp, 8
push ebx
call fcn.00416530
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
subss xmm0, dword [0x4c2518]
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x439fa8
push dword [esp + 0x84]
push ebx
call fcn.00416500
add esp, 8
push ebx
call fcn.00416200
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x439fdb
push dword [esp + 0x88]
push ebx
call fcn.004161d0
add esp, 8
push ebx
call fcn.00416260
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x43a00e
push dword [esp + 0x8c]
push ebx
call fcn.00416230
add esp, 8
push ebx
call fcn.00415e80
add esp, 4
cmp eax, 1
je 0x43a02a
push ebx
call fcn.00415e80
add esp, 4
cmp eax, 4
jne 0x43a035
push 5
push ebx
call fcn.00416290
add esp, 8
test esi, esi
je 0x43a08c
push dword [esp + 0x90]
push ebx
call fcn.00416320
push dword [esp + 0x9c]
push ebx
call fcn.004162c0
push dword [esp + 0xa8]
push ebx
call fcn.00416380
add esp, 0x18
movss xmm1, dword [esp + 0x9c]
pxor xmm0, xmm0
comiss xmm1, xmm0
jbe 0x43a17a
mov dword [esp], ebx
movss dword [esp + 4], xmm1
call fcn.004163e0
jmp 0x43a17a
push ebx
call fcn.00416350
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x43a0bf
push dword [esp + 0x90]
push ebx
call fcn.00416320
add esp, 8
push ebx
call fcn.004162f0
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
subss xmm0, dword [0x4c2518]
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x43a0fa
push dword [esp + 0x94]
push ebx
call fcn.004162c0
add esp, 8
push ebx
call fcn.004163b0
fstp dword [esp + 0x14]
movss xmm1, dword [esp + 0x14]
add esp, 4
andps xmm1, xmmword [0x4c24d0]
pxor xmm0, xmm0
comiss xmm1, xmm0
ja 0x43a12d
push dword [esp + 0x98]
push ebx
call fcn.00416380
add esp, 8
movss xmm0, dword [esp + 0x9c]
pxor xmm1, xmm1
comiss xmm0, xmm1
jbe 0x43a17a
push ebx
call fcn.00416430
fstp dword [esp + 0x14]
movss xmm1, dword [esp + 0x14]
add esp, 4
subss xmm1, dword [0x4c2518]
andps xmm1, xmmword [0x4c24d0]
pxor xmm0, xmm0
comiss xmm1, xmm0
ja 0x43a17a
push dword [esp + 0x9c]
push ebx
call fcn.004163e0
add esp, 8
cmp dword [esp + 0xa0], 0
jle 0x43a197
push ebx
call fcn.00415e20
or eax, 2
push eax
push ebx
call fcn.00415df0
add esp, 0xc
cmp dword [esp + 0xa4], 0
jle 0x43a1c7
push ebx
call fcn.00415e20
add esp, 4
test eax, 0x3f00000
jne 0x43a1c7
mov edx, dword [esp + 0xa4]
shl edx, 0x14
or edx, eax
push edx
push ebx
call fcn.00415df0
add esp, 8
test esi, esi
je 0x43a1e8
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0xa8]
mov dword [esp], ebx
movsd qword [esp + 4], xmm0
call fcn.004169c0
jmp 0x43a246
push ebx
call fcn.004169f0
fstp dword [esp + 0x14]
movss xmm0, dword [esp + 0x14]
add esp, 4
subss xmm0, dword [0x4c2518]
andps xmm0, xmmword [0x4c24d0]
pxor xmm1, xmm1
comiss xmm0, xmm1
ja 0x43a22e
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0xa8]
mov dword [esp], ebx
movsd qword [esp + 4], xmm0
call fcn.004169c0
mov eax, dword [esp + 0x50]
movss xmm0, dword [esp + 0x60]
mov dword [ebx + 0xa4], eax
movss dword [ebx + 0xa0], xmm0
mov edx, dword [ebx + 0x120]
pxor xmm0, xmm0
mov eax, dword [esp + 0xac]
pxor xmm1, xmm1
mov dword [edx + 0x11c], eax
cvtss2sd xmm0, dword [ebx + 0x14]
andps xmm0, xmmword [0x4c24e0]
comisd xmm0, xmm1
jbe 0x43a283
call fcn.00487470
movaps xmm1, xmm0
mulsd xmm1, qword [0x4c2510]
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0xb0]
mov eax, dword [ebx + 0x120]
subsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [eax + 0xe4], xmm0
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0xb4], 0
xor ecx, esp
cmp ecx, dword [0x52cfb4]
jne 0x43a2cf
add esp, 0xf4
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call fcn.00497ce0
nop dword [eax + eax]
nop dword [eax]