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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
movsd xmm7, qword [0x53ec70]
sub esp, 0x20
movss xmm5, dword [0x53e7c0]
push esi
push edi
mov edi, ecx
mov esi, edx
movss xmm0, dword [edi + 0x32e8]
cvtps2pd xmm0, xmm0
andps xmm0, xmm7
cvtpd2ps xmm0, xmm0
comiss xmm0, xmm5
jb 0x4bb949
movss xmm0, dword [esi + 0x74]
push ecx
movss dword [esp], xmm0
call fcn.005238b2
movss xmm0, dword [esi + 0x70]
fstp dword [esp + 0x14]
movss dword [esp], xmm0
call fcn.005238b2
movss xmm0, dword [esi + 0x6c]
fstp dword [esp + 0x1c]
movss dword [esp], xmm0
call fcn.005238b2
movss xmm0, dword [esi + 0x68]
fstp dword [esp + 0x20]
movss dword [esp], xmm0
call fcn.005238b2
movss xmm0, dword [edi + 0x32e0]
fstp dword [esp + 0x24]
movss dword [esp], xmm0
call fcn.005238b2
movss xmm0, dword [edi + 0x32dc]
fstp dword [esp + 0x18]
movss dword [esp], xmm0
call fcn.005238b2
cvttss2si eax, dword [esp + 0x24]
add esp, 4
fstp dword [esp + 0x24]
cvttss2si ecx, dword [esp + 0x24]
mov dword [esp + 0x24], ecx
cmp ecx, eax
jl 0x4bb939
cvttss2si ecx, dword [esp + 0x1c]
cvttss2si edx, dword [esp + 0x14]
cmp edx, ecx
jl 0x4bb939
cvttss2si edx, dword [esp + 0x18]
add eax, edx
cvttss2si edx, dword [esp + 0x14]
cmp dword [esp + 0x24], eax
jge 0x4bb939
cvttss2si eax, dword [esp + 0x10]
add eax, ecx
cmp edx, eax
jge 0x4bb939
cmp dword [esi + 0x78], 1
xorps xmm6, xmm6
movss xmm2, dword [edi + 0x1316dd0]
mov edx, esi
mulss xmm2, dword [0x53e940]
mov ecx, edi
mulss xmm2, dword [0x53e9e4]
mulss xmm2, dword [edi + 0x32e8]
jne 0x4bb934
movaps xmm3, xmm2
movaps xmm2, xmm6
call fcn.004bb3b0
movss xmm5, dword [0x53e7c0]
movsd xmm7, qword [0x53ec70]
jmp 0x4bb94c
movaps xmm3, xmm6
jmp 0x4bb91d
movsd xmm7, qword [0x53ec70]
movss xmm5, dword [0x53e7c0]
xorps xmm6, xmm6
cmp byte [esi], 0
mov al, byte [edi + 0x339c]
jne 0x4bbf86
test al, al
je 0x4bb9ba
cmp al, byte [edi + 0x3c78]
jbe 0x4bb9ba
movss xmm2, dword [esi + 0x68]
xor ecx, ecx
movss xmm3, dword [esi + 0x6c]
movzx edx, al
test al, al
je 0x4bb9ba
lea eax, [edi + 0x32f4]
lea eax, [eax + edx*8]
movss xmm1, dword [eax]
comiss xmm2, xmm1
ja 0x4bb9b2
movss xmm0, dword [esi + 0x70]
addss xmm0, xmm2
comiss xmm1, xmm0
ja 0x4bb9b2
movss xmm1, dword [eax + 4]
comiss xmm3, xmm1
ja 0x4bb9b2
movss xmm0, dword [esi + 0x74]
addss xmm0, xmm3
comiss xmm1, xmm0
jbe 0x4bba19
inc ecx
sub eax, 8
cmp ecx, edx
jl 0x4bb983
cmp byte [esi + 0x30], 0
je 0x4bbd6e
movss xmm7, dword [edi + 0x40c8]
mov ecx, esi
subss xmm7, dword [esi + 0x2c]
movss dword [esp + 0x24], xmm7
call fcn.004bb6c0
movss xmm2, dword [esi + 0x34]
comiss xmm7, xmm2
jbe 0x4bbab8
movss xmm3, dword [esi + 0x38]
movaps xmm0, xmm3
addss xmm0, xmm2
comiss xmm0, xmm7
jbe 0x4bbab8
movaps xmm1, xmm7
subss xmm1, xmm2
divss xmm1, xmm3
comiss xmm6, xmm1
jbe 0x4bba6c
movaps xmm5, xmm6
jmp 0x4bbaa2
mov ecx, esi
call fcn.004bb510
movss xmm0, dword [eax]
movss dword [esi + 0xc], xmm0
movss dword [esi + 4], xmm0
movss xmm0, dword [eax + 4]
movss dword [esi + 0x10], xmm0
movss dword [esi + 8], xmm0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x28], 0
movss xmm0, dword [edi + 0x40c8]
movss dword [esi + 0x18], xmm0
movss dword [esi + 0x14], xmm0
mov byte [esi], 1
mov word [esi + 0x64], 0x100
pop edi
pop esi
mov esp, ebp
pop ebp
ret
comiss xmm1, xmm5
ja 0x4bbaa2
movaps xmm0, xmm5
subss xmm0, xmm1
movsd xmm1, qword [0x53e880]
cvtss2sd xmm0, xmm0
call fcn.00534de0
movsd xmm1, qword [0x53e840]
xorps xmm6, xmm6
movss xmm7, dword [esp + 0x24]
subsd xmm1, xmm0
cvtpd2ps xmm5, xmm1
movss xmm1, dword [0x53e7c0]
subss xmm1, xmm5
mulss xmm1, dword [esi + 0x1c]
movss dword [esi + 0x1c], xmm1
comiss xmm6, dword [esi + 0x1c]
ja 0x4bbacd
movss xmm0, dword [esi + 0x38]
addss xmm0, dword [esi + 0x34]
comiss xmm7, xmm0
jbe 0x4bbad4
mov dword [esi + 0x3c], 0
movss xmm4, dword [esi + 0x94]
movaps xmm0, xmm6
comiss xmm4, xmm6
jbe 0x4bbaf0
movss xmm0, dword [esi + 0x9c]
divss xmm0, xmm4
movss xmm1, dword [esi + 0x98]
movaps xmm2, xmm6
comiss xmm1, xmm6
jbe 0x4bbb0c
movss xmm2, dword [esi + 0xa0]
divss xmm2, xmm1
movss xmm7, dword [0x53ec80]
addss xmm2, xmm0
mulss xmm2, dword [0x53e8ac]
comiss xmm2, xmm6
jbe 0x4bbb4f
movss xmm0, dword [esi + 0xac]
comiss xmm0, xmm6
jb 0x4bbb4f
cmp dword [esi + 0x78], 1
jne 0x4bbb3f
movss xmm0, dword [esi + 0x74]
jmp 0x4bbb44
movss xmm0, dword [esi + 0x70]
xorps xmm0, xmm7
movss dword [esi + 0xac], xmm0
movss xmm3, dword [esi + 0xac]
comiss xmm6, xmm3
movss xmm0, dword [esi + 0x1c]
movaps xmm1, xmm3
mulss xmm0, dword [esi + 0x3c]
movss xmm5, dword [esi + 0x88]
mulss xmm1, xmm2
xorps xmm5, xmm7
subss xmm5, xmm4
addss xmm1, xmm0
movss xmm0, dword [esi + 0x80]
addss xmm0, xmm4
movss xmm4, dword [esi + 0x8c]
xorps xmm4, xmmword [0x53ec80]
movss dword [esi + 0x1c], xmm1
movss xmm2, dword [edi + 0x1316dd0]
mulss xmm2, xmm1
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esi + 0x20]
movss xmm7, dword [esp + 0x1c]
movaps xmm1, xmm0
mulss xmm1, xmm2
movss dword [esp + 0x14], xmm0
movaps xmm0, xmm5
addss xmm1, dword [esi + 0x40]
maxss xmm0, xmm1
movss xmm1, dword [esi + 0x84]
minss xmm7, xmm0
movss xmm0, dword [esi + 0x98]
addss xmm1, xmm0
subss xmm4, xmm0
movss xmm0, dword [esi + 0x24]
movss dword [esp + 0x18], xmm0
movss dword [esp + 0x10], xmm1
movaps xmm1, xmm0
mulss xmm1, xmm2
movaps xmm0, xmm4
addss xmm1, dword [esi + 0x44]
maxss xmm0, xmm1
movss xmm1, dword [esp + 0x10]
movaps xmm2, xmm1
minss xmm2, xmm0
jbe 0x4bbd0b
movss xmm3, dword [esi + 0xa4]
comiss xmm3, xmm6
jb 0x4bbc56
movss xmm0, dword [esi + 0x20]
comiss xmm0, dword [0x53e684]
jbe 0x4bbc5c
cvtps2pd xmm0, xmm3
cvtps2pd xmm1, xmm7
addsd xmm0, qword [0x53e7c8]
comisd xmm0, xmm1
ja 0x4bbc82
movss xmm0, dword [esp + 0x14]
comiss xmm6, xmm3
jbe 0x4bbc96
movss xmm1, dword [0x53ebc8]
comiss xmm1, xmm0
jbe 0x4bbc96
cvtps2pd xmm0, xmm3
cvtps2pd xmm1, xmm7
subsd xmm0, qword [0x53e7c8]
comisd xmm1, xmm0
jbe 0x4bbc96
movaps xmm7, xmm3
mov dword [esi + 0x9c], 0
mov dword [esi + 0x3c], 0
movss xmm3, dword [esi + 0xa8]
comiss xmm3, xmm6
jb 0x4bbcc5
movss xmm0, dword [esi + 0x24]
comiss xmm0, dword [0x53e684]
jbe 0x4bbccb
cvtps2pd xmm0, xmm3
cvtps2pd xmm1, xmm2
addsd xmm0, qword [0x53e7c8]
comisd xmm0, xmm1
ja 0x4bbcf1
movss xmm0, dword [esp + 0x18]
comiss xmm6, xmm3
jbe 0x4bbd05
movss xmm1, dword [0x53ebc8]
comiss xmm1, xmm0
jbe 0x4bbd05
cvtps2pd xmm0, xmm3
cvtps2pd xmm1, xmm2
subsd xmm0, qword [0x53e7c8]
comisd xmm1, xmm0
jbe 0x4bbd05
movaps xmm2, xmm3
mov dword [esi + 0xa0], 0
mov dword [esi + 0x3c], 0
movss xmm1, dword [esp + 0x10]
comiss xmm5, xmm7
ja 0x4bbd1a
movss xmm5, dword [esp + 0x1c]
minss xmm5, xmm7
comiss xmm4, xmm2
movss dword [esi + 0x40], xmm5
ja 0x4bbd2b
movaps xmm4, xmm1
minss xmm4, xmm2
movss xmm0, dword [0x53e648]
comiss xmm0, dword [esi + 0x1c]
movss dword [esi + 0x44], xmm4
jb 0x4bc2f5
mov ecx, esi
call fcn.004bb6c0
comiss xmm6, dword [esi + 0x9c]
jb 0x4bc2f5
comiss xmm6, dword [esi + 0xa0]
jb 0x4bc2f5
call fcn.004bb510
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x48], 0
je 0x4bc2f5
movss xmm1, dword [edi + 0x40c8]
subss xmm1, dword [esi + 0x5c]
divss xmm1, dword [0x53e6b0]
comiss xmm6, xmm1
jbe 0x4bbd97
movaps xmm0, xmm6
jmp 0x4bbdcc
comiss xmm1, xmm5
movaps xmm0, xmm5
jbe 0x4bbda7
movss dword [esp + 0x10], xmm5
jmp 0x4bbdd2
subss xmm0, xmm1
movsd xmm1, qword [0x53e880]
cvtss2sd xmm0, xmm0
call fcn.00534de0
movsd xmm1, qword [0x53e840]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0x10], xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x53e838]
comisd xmm0, xmm1
jbe 0x4bbed5
movss xmm1, dword [esi + 0x54]
movss xmm0, dword [esi + 0x58]
subss xmm0, dword [esi + 0x44]
subss xmm1, dword [esi + 0x40]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
cvtps2pd xmm0, xmm0
call fcn.00535b00
cvtsd2ss xmm0, xmm0
cvtss2sd xmm0, xmm0
comisd xmm0, xmmword [0x53e6f8]
jbe 0x4bbed5
movss xmm2, dword [esp + 0x10]
movss xmm1, dword [0x53e7c0]
movaps xmm0, xmm2
mulss xmm0, dword [esi + 0x54]
subss xmm1, xmm2
movss xmm4, dword [esi + 0x4c]
movss xmm3, dword [esi + 0x50]
mulss xmm4, xmm1
mulss xmm3, xmm1
movss xmm1, dword [esi + 0x94]
addss xmm4, xmm0
movss xmm0, dword [esi + 0x58]
mulss xmm0, xmm2
movss xmm2, dword [0x53ec80]
addss xmm3, xmm0
movss xmm0, dword [esi + 0x88]
xorps xmm0, xmm2
subss xmm0, xmm1
comiss xmm0, xmm4
ja 0x4bbe9a
movss xmm0, dword [esi + 0x80]
addss xmm0, xmm1
minss xmm0, xmm4
movss xmm1, dword [esi + 0x98]
movss dword [esi + 0x40], xmm0
movss xmm0, dword [esi + 0x8c]
xorps xmm0, xmm2
subss xmm0, xmm1
comiss xmm0, xmm3
ja 0x4bbecb
movss xmm0, dword [esi + 0x84]
addss xmm0, xmm1
minss xmm0, xmm3
movss dword [esi + 0x44], xmm0
jmp 0x4bc2f5
mov ecx, esi
call fcn.004bb6c0
cmp byte [esi + 0x90], 0
je 0x4bbf08
movss xmm3, dword [esi + 0xa8]
mov edx, esi
movss xmm2, dword [esi + 0xa4]
mov ecx, edi
push 1
call fcn.004bb2a0
add esp, 4
jmp 0x4bc2f5
movss xmm0, dword [esi + 0x88]
movss xmm4, dword [0x53ec80]
movss xmm3, dword [esi + 0x94]
xorps xmm0, xmm4
movss xmm1, dword [esi + 0x54]
subss xmm0, xmm3
movss xmm2, dword [esi + 0x58]
comiss xmm0, xmm1
ja 0x4bbf46
movss xmm0, dword [esi + 0x80]
addss xmm0, xmm3
minss xmm0, xmm1
movss xmm1, dword [esi + 0x98]
movss dword [esi + 0x40], xmm0
movss xmm0, dword [esi + 0x8c]
xorps xmm0, xmm4
subss xmm0, xmm1
comiss xmm0, xmm2
ja 0x4bbf77
movss xmm0, dword [esi + 0x84]
addss xmm0, xmm1
minss xmm0, xmm2
movss dword [esi + 0x44], xmm0
call fcn.004bb510
jmp 0x4bc2f5
cmp al, byte [edi + 0x3c78]
jae 0x4bc0d6
mov ecx, esi
mov byte [esi], 0
call fcn.004bb6c0
mov dl, byte [esi + 0x90]
movss xmm4, dword [esi + 0x1c]
movss xmm1, dword [0x53ea64]
movss dword [esi + 0x28], xmm4
test dl, dl
je 0x4bbfc4
comiss xmm1, xmm4
jbe 0x4bbfc4
mov dword [esi + 0x28], 0x42c80000
movss xmm0, dword [esi + 0x28]
xor al, al
movss xmm2, dword [0x53eb74]
comiss xmm1, xmm0
movzx ecx, al
mov eax, 1
cmova ecx, eax
mov eax, dword [edi + 0x40c8]
comiss xmm0, xmm2
mov dword [esi + 0x2c], eax
mov byte [esi + 0x30], 1
jbe 0x4bbffa
mov dword [esi + 0x28], 0x457a0000
movss xmm1, dword [esi + 0x28]
movss xmm3, dword [0x53e830]
movss xmm0, dword [esi + 0x20]
movss xmm5, dword [esi + 0x40]
movss xmm6, dword [esi + 0x44]
divss xmm1, xmm2
movss xmm2, dword [esi + 0x24]
mulss xmm1, xmm3
movss dword [esi + 0x34], xmm1
mulss xmm1, dword [esi + 0x28]
mulss xmm0, xmm1
mulss xmm2, xmm1
addss xmm0, xmm5
addss xmm2, xmm6
test cl, cl
je 0x4bc04e
mov ecx, esi
call fcn.004bb510
pop edi
pop esi
mov esp, ebp
pop ebp
ret
subss xmm0, xmm5
subss xmm2, xmm6
divss xmm0, xmm4
divss xmm2, xmm4
cvtps2pd xmm1, xmm0
cvtps2pd xmm0, xmm2
andps xmm1, xmm7
andps xmm0, xmm7
maxsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
subss xmm3, xmm0
movss dword [esi + 0x34], xmm0
movss xmm0, dword [0x53e6b0]
comiss xmm0, xmm3
movss dword [esi + 0x38], xmm3
jbe 0x4bc094
mov dword [esi + 0x38], 0x3e4ccccd
mov dword [esi + 0x3c], 0x3f800000
mov dword [esi + 0xac], 0
test dl, dl
je 0x4bc0ca
cmp dword [esi + 0x78], 1
jne 0x4bc0b6
movss xmm0, dword [esi + 0x74]
jmp 0x4bc0bb
movss xmm0, dword [esi + 0x70]
xorps xmm0, xmmword [0x53ec80]
movss dword [esi + 0xac], xmm0
mov byte [esi + 0x90], 0
jmp 0x4bc2f5
movss xmm0, dword [edi + 0x40c8]
xor edx, edx
mov byte [esp + 0xf], 0
movaps xmm2, xmm6
movss dword [esp + 0x24], xmm0
movzx ecx, al
test al, al
je 0x4bc2f5
movss xmm3, dword [esi + 0xc]
lea eax, [edi + 0x32fc]
movss xmm4, dword [esi + 0x10]
movss xmm5, dword [0x53eb78]
movaps xmm0, xmm3
movaps xmm1, xmm4
subss xmm1, dword [eax + 4]
subss xmm0, dword [eax]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
comiss xmm1, xmm5
ja 0x4bc13f
test edx, edx
je 0x4bc13a
comiss xmm2, xmm1
jbe 0x4bc13f
movaps xmm2, xmm1
mov edx, eax
add eax, 8
sub ecx, 1
jne 0x4bc111
mov dword [esp + 0x1c], edx
test edx, edx
je 0x4bc2f5
movaps xmm5, xmm6
mov byte [esi + 0x65], 1
movaps xmm7, xmm6
movss dword [esp + 0x10], xmm5
mov ecx, esi
movss dword [esp + 0x14], xmm7
movss dword [esp + 0x18], xmm6
movss dword [esp + 0x20], xmm6
call fcn.004bb6c0
mov eax, dword [esi + 0x78]
test eax, eax
jne 0x4bc1d1
movss xmm2, dword [edx]
movaps xmm0, xmm2
subss xmm0, dword [esi + 4]
cvtps2pd xmm0, xmm0
andps xmm0, xmmword [0x53ec70]
comisd xmm0, xmmword [0x53e890]
jbe 0x4bc224
movss xmm0, dword [esi + 0x9c]
movaps xmm5, xmm2
divss xmm0, dword [esi + 0x94]
subss xmm5, dword [esi + 0xc]
mulss xmm0, xmm5
movss dword [esp + 0x10], xmm5
movss dword [esp + 0x18], xmm0
jmp 0x4bc21f
cmp eax, 1
jne 0x4bc224
movss xmm2, dword [edx + 4]
movaps xmm0, xmm2
subss xmm0, dword [esi + 8]
cvtps2pd xmm0, xmm0
andps xmm0, xmmword [0x53ec70]
comisd xmm0, xmmword [0x53e890]
jbe 0x4bc224
movss xmm0, dword [esi + 0xa0]
movaps xmm7, xmm2
divss xmm0, dword [esi + 0x98]
subss xmm7, dword [esi + 0x10]
mulss xmm0, xmm7
movss dword [esp + 0x14], xmm7
movss dword [esp + 0x20], xmm0
mov byte [esp + 0xf], 1
movss xmm3, dword [esp + 0x24]
movaps xmm2, xmm7
movaps xmm1, xmm5
call fcn.004bb550
cmp byte [esi + 0x90], 0
mov ecx, dword [esp + 0x1c]
movss xmm1, dword [esi + 0x40]
movss xmm2, dword [esi + 0x44]
addss xmm1, dword [esp + 0x10]
mov eax, dword [ecx]
addss xmm2, dword [esp + 0x14]
mov dword [esi + 0xc], eax
mov eax, dword [ecx + 4]
mov dword [esi + 0x10], eax
je 0x4bc26f
subss xmm1, dword [esp + 0x18]
subss xmm2, dword [esp + 0x20]
movss xmm0, dword [esp + 0x24]
movss xmm4, dword [0x53ec80]
movss xmm3, dword [esi + 0x94]
movss dword [esi + 0x18], xmm0
movss xmm0, dword [esi + 0x88]
xorps xmm0, xmm4
subss xmm0, xmm3
comiss xmm0, xmm1
ja 0x4bc2ae
movss xmm0, dword [esi + 0x80]
addss xmm0, xmm3
minss xmm0, xmm1
movss xmm1, dword [esi + 0x98]
movss dword [esi + 0x40], xmm0
movss xmm0, dword [esi + 0x8c]
xorps xmm0, xmm4
subss xmm0, xmm1
comiss xmm0, xmm2
ja 0x4bc2df
movss xmm0, dword [esi + 0x84]
addss xmm0, xmm1
minss xmm0, xmm2
cmp byte [esp + 0xf], 0
movss dword [esi + 0x44], xmm0
je 0x4bc2f5
cmp byte [esi + 0x64], 0
jne 0x4bc2f5
mov byte [esi + 0x64], 1
xorps xmm0, xmm0
comiss xmm0, dword [esi + 0x8c]
jb 0x4bc308
mov dword [esi + 0x44], 0
pop edi
pop esi
mov esp, ebp
pop ebp
ret