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

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x30]
push edi
mov eax, dword [ebx + 0x14c]
mov edi, dword [ebx + 0x150]
movss xmm0, dword [eax + 0x21c]
comiss xmm0, dword [ebx + 0xc0]
jbe 0x1004ab87
movss xmm0, dword [ebx + 0xc8]
comiss xmm0, dword [eax + 0x214]
jbe 0x1004ab87
movss xmm0, dword [eax + 0x218]
comiss xmm0, dword [ebx + 0xbc]
jbe 0x1004ab87
movss xmm0, dword [ebx + 0xc4]
comiss xmm0, dword [eax + 0x210]
jbe 0x1004ab87
mov edi, dword [edi + 0x264]
mov ecx, dword [ebx + 0x160]
push 0
push edi
mov dword [esp + 0x3c], edi
call fcn.10036c48
push 0
lea eax, [ebx + 0x114]
mov ecx, edi
push eax
lea eax, [ebx + 0x10c]
push eax
call fcn.10036cec
movsx eax, word [ebx + 0x4c]
push eax
push ebx
call fcn.1001cfec
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 + 0x10], xmm2
movss dword [esp + 0x14], xmm3
je 0x1004a86b
cmp word [ebx + 0x1c8], dx
jl 0x1004a852
movaps xmm1, xmm2
jmp 0x1004a85a
movss xmm1, dword [ebx + 0xe0]
addss xmm1, dword [eax + 8]
minss xmm1, xmm3
movss dword [esp + 0xc], xmm1
jmp 0x1004a874
movaps xmm1, xmm2
movss dword [esp + 0xc], xmm2
lea eax, [ebx + 4]
test dword [eax], 0x200
push ebp
push esi
mov ebp, eax
je 0x1004a9ff
xor esi, esi
cmp dword [ebx + 0x40], esi
jle 0x1004a9ff
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 0x1004a9e3
mov eax, dword [ebx + 0x18]
movsx edx, word [eax + esi*2]
movsx eax, word [ebx + 0x1b2]
imul ebp, edx, 0x70
add ebp, dword [ebx + 0x10]
cmp eax, edx
jne 0x1004a8d0
mov ax, word [ebx + 0x4e]
cmp ax, word [ebx + 0x4c]
jne 0x1004a8d0
mov cl, 1
jmp 0x1004a8d2
xor cl, cl
mov eax, dword [ebp]
movsx edi, word [ebx + 0x1cc]
and eax, 0x40000020
movss xmm2, dword [ebp + 0xc]
comiss xmm2, dword [ebx + 0xf4]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x3c]
jbe 0x1004a8ff
test cl, cl
je 0x1004a9e3
cmp word [ebp + 0x58], 0xffff
jne 0x1004a92a
test eax, eax
je 0x1004a92a
mov eax, dword [ebx + 4]
and eax, 0xe000
cmp eax, 0x4000
jne 0x1004a9e3
test dword [ebx + 4], 0x10000
jne 0x1004a9e3
movss xmm0, dword [ebp + 0x20]
comiss xmm0, xmm2
jae 0x1004a9e3
movsx eax, word [ebx + 0x1ae]
cmp eax, edx
je 0x1004a968
test cl, cl
jne 0x1004a968
lea eax, [esi + 1]
cmp dword [esp + 0x10], eax
je 0x1004a961
test dword [ebx + 4], 0x1800
jne 0x1004a99e
mov eax, dword [ebx + 0x78]
movaps xmm1, xmm3
jmp 0x1004a9a1
movsx eax, word [ebx + 0x1ae]
movaps xmm1, xmm3
movss dword [esp + 0x10], xmm1
test cl, cl
je 0x1004a981
push ecx
mov dword [esp], 0x3f800000
push 0x1d
jmp 0x1004a98f
cmp eax, edx
jne 0x1004a99e
push ecx
mov dword [esp], 0x3f800000
push 0x1c
call fcn.10007296
movss xmm1, dword [esp + 0x18]
pop ecx
pop ecx
jmp 0x1004a9a1
mov eax, dword [ebx + 0x74]
movss xmm2, dword [esp + 0x18]
comiss xmm1, xmm2
jbe 0x1004a9e3
movss xmm0, dword [ebp + 0xc]
push ecx
mov dword [esp], 0x3f800000
mov ecx, edi
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.10036e5f
movss xmm1, dword [esp + 0x14]
inc esi
movss xmm3, dword [esp + 0x1c]
push 1
pop edx
cmp esi, dword [ebx + 0x40]
jl 0x1004a892
lea ebp, [ebx + 4]
mov eax, dword [ebp]
mov ecx, 0x500
and eax, ecx
je 0x1004ab0a
lea esi, [ebx + 0xbc]
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]
mov edi, dword [esp + 0x3c]
cmp eax, ecx
jne 0x1004aa4e
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x2c]
push 0
push ecx
and dword [esp], 0
mov ecx, edi
push esi
push eax
lea eax, [esp + 0x34]
push eax
call fcn.10036eff
jmp 0x1004ab0a
test dword [ebp], 0x400
je 0x1004aa9d
movss xmm0, dword [esp + 0x20]
lea eax, [esp + 0x30]
push ecx
mov dword [esp], 0x3f800000
mov ecx, edi
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.10036e5f
movss xmm0, dword [esp + 0x28]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x24]
jmp 0x1004aaea
test dword [ebp], 0x100
je 0x1004ab0a
movss xmm0, dword [esp + 0x28]
lea eax, [esp + 0x30]
push ecx
mov dword [esp], 0x3f800000
mov ecx, edi
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.10036e5f
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, edi
call fcn.10036e5f
test byte [ebp], 0x80
pop esi
pop ebp
je 0x1004ab7b
movss xmm1, dword [ebx + 0x54]
movss xmm0, dword [ebx + 0xc8]
comiss xmm0, xmm1
jbe 0x1004ab7b
comiss xmm1, dword [ebx + 0x100]
jb 0x1004ab7b
movss xmm0, dword [ebx + 0x108]
comiss xmm0, xmm1
jbe 0x1004ab7b
movss xmm0, dword [ebx + 0x80]
lea eax, [esp + 0x28]
push ecx
mov dword [esp], 0x3f800000
mov ecx, edi
push dword [ebx + 0x78]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [ebx + 0x7c]
push eax
lea eax, [esp + 0x24]
movss dword [esp + 0x38], xmm1
push eax
movss dword [esp + 0x28], xmm0
movss dword [esp + 0x2c], xmm1
call fcn.10036e5f
mov ecx, edi
pop edi
pop ebx
add esp, 0x28
jmp fcn.10036df1
pop edi
pop ebx
add esp, 0x28
ret