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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x78
mov eax, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
mov dword [esp + 0x60], eax
movss xmm0, dword [esp + 0x60]
subss xmm0, dword [ebp + 0x14]
mov dword [esp + 0x5c], esi
movss xmm1, dword [esp + 0x5c]
subss xmm1, dword [ebp + 0x10]
push edi
movss dword [esp + 0x5c], xmm0
mov edi, ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xc], eax
movss dword [esp + 0x58], xmm1
mov eax, dword [esp + 0x58]
mov dword [esp + 0x60], eax
mulss xmm1, dword [esp + 0x60]
mov dword [esp + 0x64], ecx
mulss xmm0, dword [esp + 0x64]
mov dword [esp + 0x14], esi
addss xmm0, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x627da7
sqrtsd xmm0, xmm0
jmp 0x627dac
call fcn.00649080
mov eax, dword [esp + 0x14]
xorps xmm5, xmm5
mov edx, dword [esp + 0xc]
movss xmm1, dword [0x67ed80]
cvtsd2ss xmm0, xmm0
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x20], esi
mov esi, dword [ebp + 0x14]
movss xmm4, dword [esp + 0x60]
addss xmm0, dword [0x67b0b4]
mov dword [esp + 0x24], edx
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x64], eax
movss xmm3, dword [esp + 0x64]
mov dword [esp + 0x58], edx
subss xmm4, dword [esp + 0x58]
mov dword [esp + 0x5c], esi
subss xmm3, dword [esp + 0x5c]
cvttss2si ecx, xmm0
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], esi
movaps xmm2, xmm4
movaps xmm0, xmm3
andps xmm2, xmm1
mov dword [esp + 0x38], ecx
andps xmm0, xmm1
comiss xmm2, xmm0
jbe 0x627e48
comiss xmm5, xmm4
mov ecx, 0xffffffe0
mov dword [esp + 0x18], 0
mov eax, 0x20
cmovbe ecx, eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x38]
jmp 0x627e65
comiss xmm5, xmm3
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0xffffffe0
ja 0x627e65
mov dword [esp + 0x18], 0x20
xor eax, eax
mov dword [esp + 0x34], eax
test ecx, ecx
js 0x6282fb
movd xmm7, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0xc]
movss xmm2, dword [esp + 0x5c]
mov dword [esp + 0x58], edx
movss xmm1, dword [esp + 0x58]
mov dword [esp + 0x60], ecx
movss xmm4, dword [esp + 0x60]
mov dword [esp + 0x64], esi
subss xmm1, xmm4
movss xmm6, dword [esp + 0x64]
cvtdq2ps xmm7, xmm7
subss xmm2, xmm6
movss dword [esp + 0x3c], xmm1
movss dword [esp + 0x44], xmm7
movss dword [esp + 0x40], xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss xmm3, dword [0x67b0b0]
divss xmm0, xmm7
mulss xmm1, xmm0
mulss xmm2, xmm0
addss xmm1, xmm4
addss xmm2, xmm6
comiss xmm1, xmm5
movss dword [esp + 0x48], xmm1
movss dword [esp + 0x4c], xmm2
jbe 0x627efe
addss xmm1, xmm3
jmp 0x627f02
subss xmm1, xmm3
comiss xmm2, xmm5
cvttss2si eax, xmm1
mov dword [esp + 0x10], eax
jbe 0x627f15
addss xmm2, xmm3
jmp 0x627f19
subss xmm2, xmm3
mov eax, dword [esp + 0x48]
sub esp, 8
mov dword [esp + 0x70], eax
mov ecx, edi
mov eax, dword [esp + 0x54]
cvttss2si esi, xmm2
mov dword [esp + 0x74], eax
movss xmm0, dword [esp + 0x74]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0x70]
mov dword [esp + 0x38], esi
movss dword [esp], xmm0
call fcn.006271e0
mov edx, dword [ebp + 0x20]
test edx, edx
je 0x627fa0
cmp dword [0x781080], 0
je 0x627f7a
test eax, eax
js 0x627f92
mov ecx, dword [edi + 0x2c]
test ecx, ecx
je 0x627f92
cmp byte [ecx + eax*2 + 1], 0x1a
jne 0x627f92
movzx eax, byte [ecx + eax*2]
jmp 0x627f94
test eax, eax
js 0x627f92
mov ecx, dword [edi + 0x2c]
test ecx, ecx
je 0x627f92
cmp byte [ecx + eax*2 + 1], 0xf
jne 0x627f92
movzx eax, byte [ecx + eax*2]
jmp 0x627f94
xor eax, eax
mov ecx, edx
mov dword [ecx], eax
test eax, eax
jne 0x6282be
movd xmm1, dword [esp + 0x10]
xorps xmm3, xmm3
movss xmm2, dword [0x67b0b0]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm3
jbe 0x627fc6
addss xmm0, xmm2
jmp 0x627fca
subss xmm0, xmm2
comiss xmm1, xmm3
cvttss2si eax, xmm0
movaps xmm0, xmm1
jbe 0x627fdc
addss xmm0, xmm2
jmp 0x627fe0
subss xmm0, xmm2
push eax
cvttss2si eax, xmm0
mov ecx, edi
push eax
call fcn.006273c0
cmp eax, 1
je 0x62812e
cmp eax, 3
je 0x62812e
mov eax, dword [esp + 0x28]
sub esp, 8
movd xmm0, esi
mov ecx, edi
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x14]
movss dword [esp + 4], xmm0
movd xmm0, dword [esp + 0x18]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x84], eax
movss dword [esp], xmm0
call fcn.006271e0
mov esi, dword [edi]
mov ecx, eax
mov dl, byte [esi + ecx*4]
cmp dl, 0x42
je 0x6280f5
mov eax, dword [edi + 0x34]
test eax, eax
je 0x62806b
cmp byte [eax + ecx*4], 0x42
je 0x6280f5
movss xmm0, dword [esp + 0x74]
movss xmm2, dword [esp + 0x70]
movss xmm1, dword [esp + 0x7c]
movss xmm3, dword [esp + 0x78]
cmp dl, 0x43
jne 0x6280b0
mov al, byte [esi + ecx*4 + 1]
test al, al
jne 0x628095
comiss xmm0, xmm1
jmp 0x6280ae
cmp al, 8
jne 0x62809e
comiss xmm3, xmm2
jmp 0x6280ae
cmp al, 3
jne 0x6280a7
comiss xmm1, xmm0
jmp 0x6280ae
cmp al, 0xb
jne 0x6280b0
comiss xmm2, xmm3
ja 0x6280f5
mov eax, dword [edi + 0x34]
test eax, eax
je 0x628279
cmp byte [eax + ecx*4], 0x43
jne 0x628279
mov al, byte [eax + ecx*4 + 1]
test al, al
jne 0x6280d2
comiss xmm0, xmm1
ja 0x6280f5
cmp al, 8
jne 0x6280db
comiss xmm3, xmm2
ja 0x6280f5
cmp al, 3
jne 0x6280e4
comiss xmm1, xmm0
ja 0x6280f5
cmp al, 0xb
jne 0x628279
comiss xmm2, xmm3
jbe 0x628279
mov eax, 3
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x62810e
mov edx, dword [esp + 0x48]
mov dword [ecx], edx
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
je 0x628315
mov edx, dword [esp + 0x20]
mov dword [ecx], edx
mov edx, dword [esp + 0x24]
mov dword [ecx + 4], edx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x1c
mov eax, dword [esp + 0x28]
sub esp, 8
movd xmm0, esi
mov ecx, edi
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
movss dword [esp + 4], xmm0
movd xmm0, dword [esp + 0x18]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x5c], eax
movss dword [esp], xmm0
call fcn.006271e0
mov esi, dword [edi + 0x34]
test esi, esi
je 0x6281e0
mov cl, byte [esi + eax*4]
cmp cl, 0x42
je 0x628279
cmp cl, 5
je 0x628279
cmp cl, 0x43
jne 0x6281e0
mov al, byte [esi + eax*4 + 1]
test al, al
jne 0x6281a9
movss xmm0, dword [esp + 0x54]
comiss xmm0, dword [esp + 0x5c]
jmp 0x6281da
cmp al, 8
jne 0x6281ba
movss xmm0, dword [esp + 0x58]
comiss xmm0, dword [esp + 0x50]
jmp 0x6281da
cmp al, 3
jne 0x6281cb
movss xmm0, dword [esp + 0x5c]
comiss xmm0, dword [esp + 0x54]
jmp 0x6281da
cmp al, 0xb
jne 0x6281e0
movss xmm0, dword [esp + 0x50]
comiss xmm0, dword [esp + 0x58]
ja 0x628279
mov eax, dword [esp + 0x30]
sub esp, 8
add eax, dword [esp + 0x20]
mov ecx, edi
movd xmm0, eax
mov eax, dword [esp + 0x18]
add eax, dword [esp + 0x24]
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
call fcn.006271e0
mov ecx, dword [edi]
cmp byte [ecx + eax*4], 6
je 0x628279
test esi, esi
je 0x628225
cmp byte [esi + eax*4], 6
je 0x628279
movd xmm0, dword [esp + 0x30]
xorps xmm3, xmm3
movd xmm1, dword [esp + 0x10]
movss xmm2, dword [0x67b0b0]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm3
jbe 0x62824d
addss xmm0, xmm2
jmp 0x628251
subss xmm0, xmm2
comiss xmm1, xmm3
cvttss2si eax, xmm0
jbe 0x628260
addss xmm1, xmm2
jmp 0x628264
subss xmm1, xmm2
push eax
cvttss2si eax, xmm1
mov ecx, edi
push eax
call fcn.006273c0
test eax, eax
jne 0x6280fa
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x48]
inc eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x34], eax
cmp eax, dword [esp + 0x38]
jg 0x6282f3
movss xmm1, dword [esp + 0x3c]
xorps xmm5, xmm5
movss xmm2, dword [esp + 0x40]
movss xmm4, dword [esp + 0x60]
movss xmm6, dword [esp + 0x64]
movss xmm7, dword [esp + 0x44]
jmp 0x627ec4
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x6282d2
mov edx, dword [esp + 0x48]
mov dword [eax], edx
mov edx, dword [esp + 0x4c]
mov dword [eax + 4], edx
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x6282e6
mov edx, dword [esp + 0x20]
mov dword [eax], edx
mov edx, dword [esp + 0x24]
mov dword [eax + 4], edx
mov eax, 0xf
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x1c
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x628307
mov dword [eax], edx
mov dword [eax + 4], esi
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x628313
mov dword [eax], edx
mov dword [eax + 4], esi
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x1c