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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
push ebx
mov ebx, dword [0x5af950]
push esi
mov esi, dword [ebp + 8]
push edi
push esi
mov edi, ecx
mov dword [esp + 0x38], ebx
call fcn.00482c90
test al, al
je 0x4733b1
movss xmm0, dword [edi + 0x2c]
movss xmm3, dword [edi + 0x38]
movaps xmm1, xmm0
mulss xmm0, dword [0x573524]
mov ecx, dword [edi + 0xac]
mulss xmm1, dword [0x5734d4]
mov eax, dword [0x5ad2c8]
movss xmm4, dword [edi + 0x28]
subss xmm3, xmm0
movaps xmm2, xmm4
addss xmm2, xmm1
subss xmm4, xmm1
push 0
movaps xmm0, xmm3
subss xmm3, xmm1
addss xmm0, xmm1
movss xmm1, dword [eax + 4]
push ecx
movss dword [esp + 0x34], xmm2
movss dword [esp + 0x18], xmm4
movss dword [esp + 0x30], xmm3
movss dword [esp + 0x5c], xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [ecx + 0xc]
movss dword [esp + 0x20], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [ebx + 0x3798]
mov dword [esp], 0x40800000
movss dword [esp + 0x68], xmm3
movss xmm3, dword [ecx + 0x10]
mulss xmm0, dword [ecx + 0x18]
movss dword [esp + 0x44], xmm3
movss xmm3, dword [ecx + 0x14]
mov ecx, 7
movss dword [esp + 0x6c], xmm4
movss dword [esp + 0x74], xmm2
movss dword [esp + 0x4c], xmm3
movss dword [esp + 0x54], xmm0
call fcn.00421320
push eax
lea eax, [esp + 0x74]
mov ecx, esi
push eax
lea eax, [esp + 0x70]
push eax
call fcn.0044c000
mov eax, dword [0x5ad2c8]
push ecx
mov dword [esp], 0x3f800000
mov ecx, 5
push 0
movss xmm1, dword [eax + 4]
sub esp, 8
mov dword [esp + 4], 0x40800000
call fcn.00421320
add esp, 4
mov ecx, esi
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x74]
push eax
call fcn.0044bf10
movss xmm1, dword [0x5734f8]
xorps xmm0, xmm0
comiss xmm0, dword [esp + 0x18]
movaps xmm2, xmm1
minss xmm2, dword [esp + 0x18]
movss dword [esp + 0x38], xmm2
jbe 0x472c76
xorps xmm4, xmm4
jmp 0x472c7f
movaps xmm4, xmm2
movss dword [esp + 0x38], xmm2
movss xmm3, dword [0x573674]
movss xmm2, dword [0x5734b0]
movss xmm6, dword [esp + 0x3c]
comiss xmm0, xmm6
mulss xmm4, xmm3
addss xmm4, xmm2
cvttss2si ecx, xmm4
jbe 0x472cb8
movaps xmm4, xmm1
xorps xmm5, xmm5
minss xmm4, xmm6
movss dword [esp + 0x40], xmm4
jmp 0x472cc5
movaps xmm5, xmm1
minss xmm5, xmm6
movss dword [esp + 0x40], xmm5
movss xmm6, dword [esp + 0x44]
mulss xmm5, xmm3
addss xmm5, xmm2
cvttss2si eax, xmm5
shl eax, 8
or ecx, eax
comiss xmm0, xmm6
jbe 0x472cf3
movaps xmm4, xmm1
xorps xmm5, xmm5
minss xmm4, xmm6
movss dword [esp + 0x48], xmm4
jmp 0x472d00
movaps xmm5, xmm1
minss xmm5, xmm6
movss dword [esp + 0x48], xmm5
mulss xmm5, xmm3
addss xmm5, xmm2
cvttss2si eax, xmm5
movss xmm5, dword [esp + 0x4c]
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm5
jbe 0x472d2b
minss xmm1, xmm5
xorps xmm4, xmm4
movss dword [esp + 0x50], xmm1
jmp 0x472d38
movaps xmm4, xmm1
minss xmm4, xmm5
movss dword [esp + 0x50], xmm4
movss xmm1, dword [edi + 0x2c]
mulss xmm1, dword [0x573494]
push 0
movss xmm0, dword [esp + 0x58]
mulss xmm4, xmm3
push ecx
subss xmm0, xmm1
mov dword [esp], 0x40800000
addss xmm4, xmm2
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x34]
cvttss2si eax, xmm4
subss xmm0, xmm1
shl eax, 0x18
or eax, ecx
mov ecx, esi
push eax
lea eax, [esp + 0x64]
movss dword [esp + 0x68], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x34]
addss xmm1, dword [esp + 0x1c]
push eax
lea eax, [esp + 0x2c]
push eax
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x34], xmm1
call fcn.0044c000
xorps xmm0, xmm0
mov dword [esp + 0x1c], 0
comiss xmm0, dword [esp + 0x18]
mov dword [esp + 0x20], 0
jbe 0x472dcc
xorps xmm3, xmm3
jmp 0x472dd2
movss xmm3, dword [esp + 0x38]
comiss xmm0, dword [esp + 0x3c]
movss xmm2, dword [0x573674]
movss xmm1, dword [0x5734b0]
mulss xmm3, xmm2
addss xmm3, xmm1
cvttss2si ecx, xmm3
jbe 0x472dfa
xorps xmm3, xmm3
jmp 0x472e00
movss xmm3, dword [esp + 0x40]
mulss xmm3, xmm2
addss xmm3, xmm1
cvttss2si eax, xmm3
shl eax, 8
or ecx, eax
comiss xmm0, dword [esp + 0x44]
jbe 0x472e1d
xorps xmm3, xmm3
jmp 0x472e23
movss xmm3, dword [esp + 0x48]
mulss xmm3, xmm2
addss xmm3, xmm1
cvttss2si eax, xmm3
shl eax, 0x10
or ecx, eax
comiss xmm0, dword [esp + 0x4c]
ja 0x472e41
movss xmm0, dword [esp + 0x50]
movss xmm3, dword [esp + 0x54]
lea eax, [esp + 0x1c]
addss xmm3, dword [esp + 0x28]
mulss xmm0, xmm2
sub esp, 8
movss xmm2, dword [edi + 0x2c]
mulss xmm2, xmm1
push eax
addss xmm0, xmm1
mulss xmm3, xmm1
push ecx
mov dword [esp], 0x42000000
movss dword [esp + 0x68], xmm3
movss xmm3, dword [esp + 0x3c]
addss xmm3, dword [esp + 0x20]
cvttss2si eax, xmm0
mulss xmm3, xmm1
shl eax, 0x18
or eax, ecx
mov ecx, esi
push eax
lea eax, [esp + 0x6c]
movss dword [esp + 0x70], xmm3
push eax
call fcn.0044e6a0
cmp dword [edi + 0x1c], 0xf
lea ebx, [edi + 8]
mov dword [esp + 0x18], ebx
jbe 0x472eb7
mov eax, dword [ebx]
mov dword [esp + 0x18], eax
mov esi, dword [0x5af950]
xor edx, edx
mov eax, dword [esi + 0x3e60]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
mov ecx, dword [esp + 0x1c]
call fcn.00420b60
add esp, 4
mov dword [esp + 0x10], eax
cmp dword [esi + 0x3e94], eax
jne 0x472f05
push ecx
push dword [esp + 0x1c]
mov edx, 0xb
mov ecx, eax
call fcn.00435960
mov eax, dword [esp + 0x18]
add esp, 8
push 0
lea ecx, [esp + 0x37]
mov edx, eax
push ecx
lea ecx, [esp + 0x1f]
push ecx
lea ecx, [esp + 0x6c]
call fcn.004385d0
mov cl, byte [edi + 0xa8]
add esp, 0xc
test cl, cl
jne 0x472f38
test al, al
je 0x472f38
mov byte [edi + 0xa8], 1
mov al, 1
jmp 0x472f64
mov al, cl
test cl, cl
je 0x472f64
mov edx, dword [esp + 0x34]
cmp byte [edx + 0x36f8], 0
je 0x472f64
cmp byte [edi + 0xa9], 0
jne 0x472f64
cmp byte [esp + 0x17], 0
jne 0x472f64
mov byte [edi + 0xa8], 0
xor al, al
mov ecx, dword [edi + 0xac]
xorps xmm0, xmm0
movzx eax, al
movss xmm2, dword [0x5734f8]
movd xmm5, eax
mov eax, dword [0x5ad2c8]
cvtdq2ps xmm5, xmm5
subss xmm5, dword [edi + 0x20]
mulss xmm5, dword [0x5735b0]
mulss xmm5, dword [eax + 0x460]
addss xmm5, dword [edi + 0x20]
movss dword [edi + 0x20], xmm5
movss xmm1, dword [ecx + 0xc]
comiss xmm0, xmm1
movss xmm6, dword [ecx + 0x10]
movss xmm7, dword [ecx + 0x14]
movss dword [esp + 0x10], xmm5
jbe 0x472fc2
xorps xmm4, xmm4
jmp 0x472fc9
movaps xmm4, xmm2
minss xmm4, xmm1
comiss xmm0, xmm6
movss xmm3, dword [0x573674]
movss xmm1, dword [0x5734b0]
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si edx, xmm4
jbe 0x472fef
xorps xmm4, xmm4
jmp 0x472ff6
movaps xmm4, xmm2
minss xmm4, xmm6
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si eax, xmm4
shl eax, 8
or edx, eax
comiss xmm0, xmm7
jbe 0x473011
xorps xmm4, xmm4
jmp 0x473018
movaps xmm4, xmm2
minss xmm4, xmm7
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si eax, xmm4
movss xmm4, dword [ecx + 0x18]
shl eax, 0x10
or edx, eax
comiss xmm0, xmm4
jbe 0x473038
xorps xmm2, xmm2
jmp 0x47303c
minss xmm2, xmm4
mulss xmm2, xmm3
addss xmm2, xmm1
cvttss2si esi, xmm2
shl esi, 0x18
or esi, edx
comiss xmm5, dword [0x57346c]
mov dword [esp + 0x28], esi
jbe 0x4732ef
mov esi, dword [0x5af950]
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x20], 0
movss xmm0, dword [esi + 0x3798]
lea ecx, [esi + 0x477c]
movss dword [esp + 0x24], xmm0
call fcn.00435fb0
mov eax, dword [esp + 0x34]
movss xmm0, dword [esp + 0x10]
movss dword [esi + 0x3798], xmm0
mov esi, dword [0x5af950]
movss xmm0, dword [eax + 0x37ec]
addss xmm0, dword [0x573560]
mov dword [esp + 0x1c], 2
movss xmm1, dword [esi + 0x37a0]
lea ecx, [esi + 0x477c]
movss dword [esp + 0x20], xmm1
movss dword [esp + 0x10], xmm0
movss xmm0, dword [eax + 0x37f0]
lea eax, [esp + 0x1c]
addss xmm0, dword [0x573560]
push eax
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esi + 0x37a4]
movss dword [esp + 0x28], xmm0
call fcn.00435fb0
movss xmm0, dword [esp + 0x10]
mov edx, dword [esp + 0x34]
mov eax, dword [0x5af950]
movss dword [esi + 0x37a0], xmm0
movss xmm0, dword [esp + 0x2c]
movss dword [esi + 0x37a4], xmm0
movss xmm1, dword [edi + 0x38]
movss xmm0, dword [edx + 0x37e8]
subss xmm1, dword [0x57366c]
mulss xmm0, dword [0x5734b0]
subss xmm1, dword [edi + 0x2c]
addss xmm0, dword [edi + 0x3c]
or dword [eax + 0x4710], 1
mov dword [eax + 0x4728], 0
mov dword [eax + 0x472c], 0
movss dword [eax + 0x4720], xmm1
movss dword [eax + 0x4724], xmm0
mov dword [eax + 0x4714], 1
cmp dword [ebx + 0x14], 0xf
jbe 0x47318b
mov ebx, dword [ebx]
push 0x11f
xor edx, edx
mov ecx, ebx
call fcn.00429380
add esp, 4
test al, al
je 0x4732ce
mov esi, dword [0x5af950]
mov edx, dword [esi + 0x3e64]
test edx, edx
jne 0x4731b8
xor al, al
jmp 0x473230
cmp edx, dword [esi + 0x3e60]
je 0x4731c4
xor al, al
jmp 0x473230
mov ecx, dword [esi + 0x47e0]
test ecx, ecx
je 0x473212
mov ecx, dword [ecx + 0x2fc]
test ecx, ecx
je 0x473212
cmp byte [ecx + 0xa7], 0
je 0x473212
mov eax, dword [edx + 0x2fc]
cmp ecx, eax
je 0x473212
test dword [ecx + 8], 0xc000000
je 0x473212
cmp dword [eax + 0x2fc], ecx
je 0x473212
nop dword [eax]
cmp eax, ecx
je 0x473212
mov eax, dword [eax + 0x2f8]
test eax, eax
jne 0x473200
xor al, al
jmp 0x473230
mov eax, dword [esi + 0x3eac]
test eax, eax
je 0x47322e
cmp byte [esi + 0x3eb9], 0
jne 0x47322e
cmp eax, dword [edx + 0x6c]
je 0x47322e
xor al, al
jmp 0x473230
mov al, 1
mov byte [edi + 0xa9], al
lea ecx, [esi + 0x477c]
movss xmm0, dword [esi + 0x37a8]
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x20], 3
movss dword [esp + 0x24], xmm0
call fcn.00435fb0
mov dword [esi + 0x37a8], 0x41200000
lea eax, [esp + 0x1c]
mov esi, dword [0x5af950]
push eax
mov dword [esp + 0x20], 7
movss xmm0, dword [esi + 0x37c4]
lea ecx, [esi + 0x477c]
movss dword [esp + 0x24], xmm0
call fcn.00435fb0
movss xmm3, dword [0x5734f8]
mov ecx, str.picker
mov dword [esi + 0x37c4], 0x41200000
mov edx, dword [edi + 0xac]
push 0x410118
add edx, 0xc
call fcn.0043ec00
add esp, 4
mov ecx, 2
call fcn.004214d0
call fcn.0042bb90
mov ecx, 2
call fcn.004214d0
movss xmm1, dword [0x5734b0]
xorps xmm0, xmm0
movss xmm3, dword [0x573674]
mov esi, dword [esp + 0x28]
mov ecx, dword [edi + 0xac]
movss xmm2, dword [0x5734f8]
movss xmm5, dword [ecx + 0xc]
comiss xmm0, xmm5
movss xmm6, dword [ecx + 0x10]
movss xmm7, dword [ecx + 0x14]
jbe 0x473316
xorps xmm4, xmm4
jmp 0x47331d
movaps xmm4, xmm2
minss xmm4, xmm5
comiss xmm0, xmm6
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si edx, xmm4
jbe 0x473333
xorps xmm4, xmm4
jmp 0x47333a
movaps xmm4, xmm2
minss xmm4, xmm6
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si eax, xmm4
shl eax, 8
or edx, eax
comiss xmm0, xmm7
jbe 0x473355
xorps xmm4, xmm4
jmp 0x47335c
movaps xmm4, xmm2
minss xmm4, xmm7
mulss xmm4, xmm3
addss xmm4, xmm1
cvttss2si eax, xmm4
movss xmm4, dword [ecx + 0x18]
shl eax, 0x10
or edx, eax
comiss xmm0, xmm4
ja 0x47337e
minss xmm2, xmm4
movaps xmm0, xmm2
mulss xmm0, xmm3
addss xmm0, xmm1
cvttss2si ecx, xmm0
shl ecx, 0x18
or ecx, edx
cmp esi, ecx
setne al
mov byte [edi + 0x40], al
je 0x4733a5
mov ecx, dword [edi + 0x6c]
test ecx, ecx
je 0x4733a5
mov eax, dword [ecx]
call dword [eax + 8]
mov al, byte [edi + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 8