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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x4506f4
sub esp, 0x9c
xorps xmm0, xmm0
movsd xmm1, qword [esp + 0xa8]
ucomisd xmm0, xmm1
jne 0x450068
jnp 0x4506ea
movsd xmm2, qword [0x91eb80]
movsd xmm3, qword [esp + 0xa0]
ucomisd xmm2, xmm3
jne 0x450085
jnp 0x4506da
ucomisd xmm2, xmm1
jne 0x450091
jnp 0x4506ca
ucomisd xmm3, xmm3
jne 0x4506b2
jp 0x4506b2
ucomisd xmm1, xmm1
jne 0x4506b2
jp 0x4506b2
ucomisd xmm0, xmm3
jne 0x4504d6
jp 0x4504d6
ucomisd xmm0, xmm1
ja 0x45041e
ucomisd xmm1, xmm0
ja 0x4503df
ucomisd xmm0, xmm1
jbe 0x4503d6
movsd xmm4, qword [0x91ec58]
pxor xmm4, xmm1
movsd qword [esp], xmm4
call fcn.004507b0
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
xorps xmm2, xmm2
ucomisd xmm1, xmm2
jne 0x450110
jnp 0x4503c8
movsd xmm3, qword [esp + 0xa0]
ucomisd xmm2, xmm3
ja 0x4503b0
movsd xmm4, qword [0x91ec30]
ucomisd xmm0, xmm4
jae 0x4502f0
ucomisd xmm1, xmm2
jne 0x450141
jnp 0x4502df
movsd xmm4, qword [0x91eb50]
ucomisd xmm1, xmm4
jbe 0x4502d6
movsd xmm5, qword [0x91eb80]
subsd xmm1, xmm5
addsd xmm5, xmm0
movsd qword [esp + 0x24], xmm1
movsd qword [esp + 0x1c], xmm5
movsd qword [esp], xmm3
call fcn.004507a0
movsd xmm0, qword [esp + 0x24]
mulsd xmm0, qword [esp + 8]
movsd qword [esp], xmm0
call fcn.00450700
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x1c]
movsd qword [esp + 0x1c], xmm1
movsd qword [esp + 0x94], xmm0
movsd xmm2, qword [esp + 0xa0]
movsd qword [esp], xmm2
call fcn.00450740
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x2c], xmm0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x18], eax
movsd xmm1, qword [esp + 0x1c]
movsd qword [esp], xmm1
call fcn.00447f00
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x94]
movsd xmm1, qword [esp + 0x2c]
mov edx, dword [esp + 0x18]
xor ebx, ebx
jmp 0x450211
mov esi, ecx
shl ecx, 0x1f
shr ebp, 1
or ebp, ecx
sar esi, 1
mov ecx, esi
mov ebx, eax
mov eax, ebp
test ecx, ecx
xchg ebp, ebx
setne bl
xchg ebp, ebx
test eax, eax
xchg esi, ebx
setne bl
xchg esi, ebx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4502c2
lea ebp, [edx + 0x1000]
cmp ebp, 0x2000
ja 0x450275
mov ebp, eax
and eax, 1
cmp eax, 1
sete al
and eax, 1
test al, al
je 0x450271
mulsd xmm0, xmm1
lea eax, [edx + ebx]
mulsd xmm1, xmm1
shl edx, 1
movsd xmm2, qword [0x91eb50]
ucomisd xmm2, xmm1
jbe 0x450200
addsd xmm1, xmm1
dec edx
jmp 0x450200
mov eax, ebx
jmp 0x450256
lea eax, [edx + ebx]
xorps xmm1, xmm1
movsd xmm2, qword [esp + 0xa8]
ucomisd xmm1, xmm2
jbe 0x4502bc
movsd xmm1, qword [0x91eb80]
divsd xmm1, xmm0
neg eax
movsd qword [esp], xmm1
mov dword [esp + 8], eax
call fcn.00450770
movsd xmm0, qword [esp + 0xc]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm1, xmm0
jmp 0x450298
xorps xmm1, xmm1
movsd xmm2, qword [esp + 0xa8]
ucomisd xmm1, xmm2
mov eax, ebx
jmp 0x450288
movsd xmm5, xmm0
jmp 0x450163
movsd xmm1, xmm0
movsd xmm0, qword [0x91eb80]
jmp 0x45019b
movsd xmm0, qword [0x91ec98]
ucomisd xmm0, xmm3
jne 0x450304
jnp 0x450398
movsd qword [esp + 0x44], xmm3
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov edx, eax
shr eax, 0x1f
shl ecx, 1
or ecx, eax
shl edx, 1
mov eax, ecx
shl ecx, 0x1f
shr edx, 1
or edx, ecx
mov dword [esp + 0x84], edx
shr eax, 1
mov dword [esp + 0x88], eax
movsd xmm0, qword [esp + 0x84]
movsd xmm1, qword [0x91eb80]
ucomisd xmm1, xmm0
seta al
movsd xmm0, qword [esp + 0xa8]
ucomisd xmm0, xmm2
seta cl
cmp al, cl
jne 0x450372
movsd qword [esp + 0xb0], xmm2
add esp, 0x9c
ret
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0x7ff00000
movsd xmm0, qword [esp + 0x74]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm0, qword [0x91eb80]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm0, qword [0x91ec50]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm3, qword [esp + 0xa0]
jmp 0x450123
movsd xmm4, xmm1
jmp 0x4500eb
movsd qword [esp], xmm1
call fcn.0044ffc0
movzx eax, byte [esp + 8]
test al, al
je 0x45040b
movsd xmm0, qword [esp + 0xa0]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
xorps xmm0, xmm0
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd qword [esp], xmm1
call fcn.0044ffc0
movzx eax, byte [esp + 8]
test al, al
je 0x4504ad
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0x7ff00000
movsd xmm0, qword [esp + 0x54]
movsd qword [esp + 0x4c], xmm0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
movsd xmm0, qword [esp + 0xa0]
movsd qword [esp + 0x3c], xmm0
mov edx, dword [esp + 0x40]
mov ebx, eax
shr eax, 0x1f
shl ecx, 1
or ecx, eax
shl ebx, 1
shr ebx, 1
mov eax, ecx
shl ecx, 0x1f
or ebx, ecx
mov dword [esp + 0x8c], ebx
shr eax, 1
shr edx, 0x1f
shl edx, 0x1f
or edx, eax
mov dword [esp + 0x90], edx
movsd xmm0, qword [esp + 0x8c]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0x7ff00000
movsd xmm0, qword [esp + 0x7c]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm4, qword [0x91ec48]
ucomisd xmm1, xmm4
jbe 0x45069e
mov eax, 1
test al, al
jne 0x450604
ucomisd xmm3, xmm4
jbe 0x4505f0
mov eax, 1
test al, al
je 0x45059b
movsd xmm4, qword [0x91ecb8]
ucomisd xmm4, xmm3
ja 0x450565
ucomisd xmm0, xmm1
ja 0x450555
ucomisd xmm1, xmm0
ja 0x45052f
ucomisd xmm0, xmm1
jmp 0x4500d9
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0x7ff00000
movsd xmm0, qword [esp + 0x5c]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
divsd xmm2, xmm3
movsd qword [esp], xmm2
movsd xmm0, qword [0x91ec58]
pxor xmm1, xmm0
movsd qword [esp + 8], xmm1
call fcn.00450810
movsd xmm0, qword [esp + 0x10]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm4, qword [0x91eb50]
ucomisd xmm4, xmm1
jne 0x4505ab
jnp 0x4505dc
movsd xmm5, qword [0x91ec88]
ucomisd xmm5, xmm1
jne 0x4505bb
jnp 0x4505c4
ucomisd xmm0, xmm1
jmp 0x4500d9
sqrtsd xmm0, xmm3
divsd xmm2, xmm0
movsd qword [esp + 0xb0], xmm2
add esp, 0x9c
ret
sqrtsd xmm0, xmm3
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd xmm4, qword [0x91ecb8]
ucomisd xmm4, xmm3
seta al
jmp 0x450504
movsd xmm5, qword [0x91ec98]
ucomisd xmm5, xmm3
jne 0x450614
jnp 0x45068e
movsd qword [esp + 0x34], xmm3
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, eax
shr eax, 0x1f
shl ecx, 1
or ecx, eax
shl edx, 1
shr edx, 1
mov eax, ecx
shl ecx, 0x1f
or edx, ecx
mov dword [esp + 0x64], edx
shr eax, 1
mov dword [esp + 0x68], eax
movsd xmm3, qword [esp + 0x64]
ucomisd xmm2, xmm3
seta al
ucomisd xmm1, xmm4
seta cl
cmp cl, al
jne 0x450668
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0x7ff00000
movsd xmm0, qword [esp + 0x6c]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd qword [esp + 0xb0], xmm2
add esp, 0x9c
ret
movsd xmm5, qword [0x91ecb8]
ucomisd xmm5, xmm1
seta al
jmp 0x4504ed
movsd xmm0, qword [0x91ec50]
movsd qword [esp + 0xb0], xmm0
add esp, 0x9c
ret
movsd qword [esp + 0xb0], xmm3
add esp, 0x9c
ret
movsd qword [esp + 0xb0], xmm2
add esp, 0x9c
ret
movsd xmm2, qword [0x91eb80]
jmp 0x4506da
call fcn.0044b100
jmp 0x450030
jmp 0x450030