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

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x30]
push ebp
push esi
mov eax, dword [ebx + 0x14c]
lea esi, [ebx + 0xbc]
mov ebp, dword [ebx + 0x150]
movss xmm0, dword [eax + 0x21c]
comiss xmm0, dword [ebx + 0xc0]
jbe 0x1004e90f
movss xmm0, dword [ebx + 0xc8]
comiss xmm0, dword [eax + 0x214]
jbe 0x1004e90f
movss xmm0, dword [eax + 0x218]
comiss xmm0, dword [esi]
jbe 0x1004e90f
movss xmm0, dword [ebx + 0xc4]
comiss xmm0, dword [eax + 0x210]
jbe 0x1004e90f
mov ebp, dword [ebp + 0x264]
mov ecx, dword [ebx + 0x160]
push 0
push ebp
mov dword [esp + 0x18], ebp
call fcn.1003a80e
push 0
lea eax, [ebx + 0x114]
mov ecx, ebp
push eax
lea eax, [ebx + 0x10c]
push eax
call fcn.1003a8b2
movsx eax, word [ebx + 0x4c]
push eax
push ebx
call fcn.1002156f
movss xmm2, dword [ebx + 0xd0]
xor edx, edx
movss xmm3, dword [ebx + 0xd8]
inc edx
cmp byte [ebx + 0x1da], 0
pop ecx
pop ecx
movss dword [esp + 0x14], xmm2
movss dword [esp + 0x18], xmm3
je 0x1004e600
cmp word [ebx + 0x1c8], dx
jl 0x1004e5e7
movaps xmm1, xmm2
jmp 0x1004e5ef
movss xmm1, dword [ebx + 0xe0]
addss xmm1, dword [eax + 8]
minss xmm1, xmm3
movss dword [esp + 0xc], xmm1
jmp 0x1004e609
movaps xmm1, xmm2
movss dword [esp + 0xc], xmm2
test dword [ebx + 4], 0x200
push edi
je 0x1004e791
xor esi, esi
cmp dword [ebx + 0x40], esi
jle 0x1004e78b
mov eax, dword [ebx + 0x28]
mov ecx, esi
and ecx, 0x1f
shl edx, cl
mov ecx, esi
sar ecx, 5
test dword [eax + ecx*4], edx
je 0x1004e772
mov eax, dword [ebx + 0x18]
movsx edx, word [eax + esi*2]
movsx eax, word [ebx + 0x1b2]
imul edi, edx, 0x70
add edi, dword [ebx + 0x10]
cmp eax, edx
jne 0x1004e660
mov ax, word [ebx + 0x4e]
cmp ax, word [ebx + 0x4c]
jne 0x1004e660
mov cl, 1
jmp 0x1004e662
xor cl, cl
mov eax, dword [edi]
movsx ebp, word [ebx + 0x1cc]
and eax, 0x40000020
movss xmm2, dword [edi + 0xc]
comiss xmm2, dword [ebx + 0xf4]
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x14]
jbe 0x1004e68e
test cl, cl
je 0x1004e772
cmp word [edi + 0x58], 0xffff
jne 0x1004e6b9
test eax, eax
je 0x1004e6b9
mov eax, dword [ebx + 4]
and eax, 0xe000
cmp eax, 0x4000
jne 0x1004e772
test dword [ebx + 4], 0x10000
jne 0x1004e772
movss xmm0, dword [edi + 0x20]
comiss xmm0, xmm2
jae 0x1004e772
movsx eax, word [ebx + 0x1ae]
cmp eax, edx
je 0x1004e6f7
test cl, cl
jne 0x1004e6f7
lea eax, [esi + 1]
cmp dword [esp + 0x3c], eax
je 0x1004e6f0
test dword [ebx + 4], 0x1800
jne 0x1004e72d
mov eax, dword [ebx + 0x78]
movaps xmm1, xmm3
jmp 0x1004e730
movsx eax, word [ebx + 0x1ae]
movaps xmm1, xmm3
movss dword [esp + 0x3c], xmm1
test cl, cl
je 0x1004e710
push ecx
mov dword [esp], 0x3f800000
push 0x1d
jmp 0x1004e71e
cmp eax, edx
jne 0x1004e72d
push ecx
mov dword [esp], 0x3f800000
push 0x1c
call fcn.1000b657
movss xmm1, dword [esp + 0x44]
pop ecx
pop ecx
jmp 0x1004e730
mov eax, dword [ebx + 0x74]
movss xmm2, dword [esp + 0x18]
comiss xmm1, xmm2
jbe 0x1004e772
movss xmm0, dword [edi + 0xc]
push ecx
mov dword [esp], 0x3f800000
mov ecx, ebp
push eax
lea eax, [esp + 0x28]
movss dword [esp + 0x28], xmm0
push eax
lea eax, [esp + 0x3c]
movss dword [esp + 0x30], xmm1
push eax
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x44], xmm2
call fcn.1003aa25
movss xmm1, dword [esp + 0x10]
inc esi
movss xmm3, dword [esp + 0x1c]
push 1
pop edx
cmp esi, dword [ebx + 0x40]
jl 0x1004e622
lea esi, [ebx + 0xbc]
mov eax, dword [ebx + 4]
mov ecx, 0x500
and eax, ecx
je 0x1004e892
lea edi, [esp + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebx + 0x74]
cmp eax, ecx
jne 0x1004e7d6
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x2c]
push 0
push ecx
and dword [esp], 0
mov ecx, ebp
push esi
push eax
lea eax, [esp + 0x34]
push eax
call fcn.1003aac5
jmp 0x1004e892
test dword [ebx + 4], 0x400
je 0x1004e825
movss xmm0, dword [esp + 0x20]
lea eax, [esp + 0x30]
push ecx
mov dword [esp], 0x3f800000
mov ecx, ebp
push esi
push eax
movss dword [esp + 0x3c], xmm0
lea eax, [esp + 0x2c]
movss xmm0, dword [esp + 0x38]
push eax
movss dword [esp + 0x44], xmm0
call fcn.1003aa25
movss xmm0, dword [esp + 0x28]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x24]
jmp 0x1004e872
test dword [ebx + 4], 0x100
je 0x1004e892
movss xmm0, dword [esp + 0x28]
lea eax, [esp + 0x30]
push ecx
mov dword [esp], 0x3f800000
mov ecx, ebp
push esi
push eax
movss dword [esp + 0x3c], xmm0
lea eax, [esp + 0x2c]
movss xmm0, dword [esp + 0x30]
push eax
movss dword [esp + 0x44], xmm0
call fcn.1003aa25
movss xmm0, dword [esp + 0x20]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x2c]
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x2c]
push esi
push eax
lea eax, [esp + 0x3c]
movss dword [esp + 0x40], xmm0
push eax
mov ecx, ebp
call fcn.1003aa25
test byte [ebx + 4], 0x80
pop edi
je 0x1004e902
movss xmm1, dword [ebx + 0x54]
movss xmm0, dword [ebx + 0xc8]
comiss xmm0, xmm1
jbe 0x1004e902
comiss xmm1, dword [ebx + 0x100]
jb 0x1004e902
movss xmm0, dword [ebx + 0x108]
comiss xmm0, xmm1
jbe 0x1004e902
movss xmm0, dword [ebx + 0x80]
lea eax, [esp + 0x2c]
push ecx
mov dword [esp], 0x3f800000
mov ecx, ebp
push dword [ebx + 0x78]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [ebx + 0x7c]
push eax
lea eax, [esp + 0x28]
movss dword [esp + 0x3c], xmm1
push eax
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x30], xmm1
call fcn.1003aa25
pop esi
mov ecx, ebp
pop ebp
pop ebx
add esp, 0x28
jmp fcn.1003a9b7
pop esi
pop ebp
pop ebx
add esp, 0x28
ret