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

Disassembly:
sub esp, 0x60
mov eax, dword [0x10120140]
xor eax, esp
mov dword [esp + 0x5c], eax
push ebx
mov ebx, dword [esp + 0x70]
push ebp
mov ebp, dword [esp + 0x6c]
push esi
push edi
mov edi, edx
mov esi, ecx
lea edx, [ebx + 8]
mov dword [esp + 0x20], edi
push ebp
lea ecx, [esp + 0x18]
mov dword [esp + 0x20], esi
call fcn.1005f9a0
mov edx, edi
lea ecx, [esp + 0x18]
push dword [eax + 4]
push dword [eax]
push ebx
call fcn.1005fa90
mov eax, dword [esp + 0x94]
add esp, 0x10
cmp eax, 1
jne 0x1006ee91
mov ecx, dword [esp + 0x78]
movaps xmm0, xmmword [0x101175f0]
mov ebx, dword [esp + 0x80]
movups xmmword [esp + 0x2c], xmm0
mov edi, dword [ecx]
inc edi
neg edi
sbb edi, edi
mov eax, dword [ecx]
cmp edi, 0xffffffff
jne 0x1006ed30
mov esi, eax
jmp 0x1006ed3c
mov esi, dword [esp + edi*4 + 0x2c]
cmp esi, eax
je 0x1006ede4
lea ecx, [esp + 0x14]
call fcn.10047790
cmp esi, 3
jne 0x1006ed59
movss xmm2, dword [ebx + 0xc]
lea ecx, [esp + 0x3c]
movss xmm1, dword [ebx]
jmp 0x1006ed9e
cmp esi, 1
jne 0x1006ed68
movss xmm1, dword [ebx]
lea ecx, [esp + 0x44]
jmp 0x1006ed94
test esi, esi
jne 0x1006ed81
movss xmm1, dword [ebx + 8]
lea ecx, [esp + 0x4c]
subss xmm1, dword [ebp]
movss xmm2, dword [ebx + 0xc]
jmp 0x1006ed9e
cmp esi, 2
jne 0x1006edb0
movss xmm1, dword [ebx + 8]
lea ecx, [esp + 0x54]
subss xmm1, dword [ebp]
movss xmm2, dword [ebx + 4]
subss xmm2, dword [ebp + 4]
call fcn.1005f470
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ecx
push ebp
lea edx, [esp + 0x18]
lea ecx, [esp + 0x28]
call fcn.1005f980
add esp, 4
lea ecx, [esp + 0x5c]
push eax
mov eax, edx
push eax
call fcn.1005fc70
mov ecx, dword [esp + 0x7c]
push eax
call fcn.1005fdc0
test al, al
jne 0x1006ee65
mov ecx, dword [esp + 0x78]
inc edi
cmp edi, 4
jl 0x1006ed25
mov ebx, dword [esp + 0x7c]
mov dword [ecx], 0xffffffff
mov eax, dword [esp + 0x20]
movss xmm0, dword [ebp]
movss xmm1, dword [ebx + 8]
addss xmm0, dword [eax]
call fcn.100748f0
subss xmm0, dword [ebp]
movss xmm1, dword [ebx]
call fcn.10074900
movss xmm1, dword [ebx + 0xc]
movaps xmm3, xmm0
movss xmm0, dword [ebp + 4]
addss xmm0, dword [eax + 4]
call fcn.100748f0
subss xmm0, dword [ebp + 4]
movss xmm1, dword [ebx + 4]
call fcn.10074900
mov edx, dword [esp + 0x1c]
movss dword [edx], xmm3
movss dword [edx + 4], xmm0
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5c]
xor ecx, esp
call fcn.100c0eca
add esp, 0x60
ret
mov edx, dword [esp + 0x78]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [edx], esi
mov edx, dword [esp + 0x1c]
mov dword [edx], eax
mov eax, edx
mov dword [edx + 4], ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5c]
xor ecx, esp
call fcn.100c0eca
add esp, 0x60
ret
cmp eax, 2
je 0x1006ee9e
test eax, eax
jne 0x1006ef3b
mov edx, dword [esp + 0x78]
movaps xmm0, xmmword [0x101175d0]
mov edi, dword [esp + 0x80]
movups xmmword [esp + 0x2c], xmm0
mov edx, dword [edx]
lea eax, [edx + 1]
neg eax
sbb eax, eax
nop
cmp eax, 0xffffffff
jne 0x1006eec9
mov esi, edx
jmp 0x1006eed1
mov esi, dword [esp + eax*4 + 0x2c]
cmp esi, edx
je 0x1006ef2d
lea ecx, [ebx + 8]
test esi, esi
jne 0x1006ef89
movss xmm0, dword [edi]
subss xmm0, dword [ebx]
movaps xmm2, xmm0
cmp esi, 2
jne 0x1006efa5
movss xmm1, dword [edi + 4]
movss xmm3, dword [ebx + 4]
movss xmm2, dword [ebp]
subss xmm1, xmm3
comiss xmm2, xmm0
jbe 0x1006ef11
test esi, esi
je 0x1006ef2d
cmp esi, 1
je 0x1006ef2d
movss xmm0, dword [ebp + 4]
comiss xmm0, xmm1
jbe 0x1006efc0
cmp esi, 2
je 0x1006ef2d
cmp esi, 3
jne 0x1006efc0
inc eax
cmp eax, 4
jl 0x1006eec0
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x20]
cmp dword [esp + 0x84], 2
mov eax, dword [esp + 0x78]
mov dword [eax], 0xffffffff
jne 0x1006edf8
movss xmm2, dword [0x10117170]
lea ecx, [esp + 0x24]
movaps xmm1, xmm2
call fcn.1005f470
push eax
mov edx, edi
mov ecx, esi
call fcn.1005f980
mov ecx, dword [esp + 0x70]
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.100c0eca
add esp, 0x60
ret
movss xmm0, dword [ecx]
cmp esi, 1
jne 0x1006eee0
subss xmm0, dword [edi + 8]
movss xmm1, dword [ecx + 4]
jmp 0x1006eef5
movss xmm1, dword [ecx + 4]
movaps xmm0, xmm2
cmp esi, 3
jne 0x1006eef5
movss xmm3, dword [edi + 0xc]
jmp 0x1006eefa
lea ecx, [esp + 0x24]
call fcn.10047790
test esi, esi
jne 0x1006f008
movss xmm0, dword [edi]
subss xmm0, dword [ebp]
movss xmm3, dword [esp + 0x18]
movss xmm1, dword [ebx]
call fcn.10074900
movss xmm1, dword [ebx + 4]
movaps xmm2, xmm0
movaps xmm0, xmm3
call fcn.10074900
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x1c]
mov dword [eax], esi
movss dword [edx], xmm2
jmp 0x1006ee4b
cmp esi, 1
jne 0x1006f014
movss xmm0, dword [edi + 8]
jmp 0x1006efd6
movss xmm0, dword [esp + 0x14]
cmp esi, 2
jne 0x1006f02b
movss xmm3, dword [edi + 4]
subss xmm3, dword [ebp + 4]
jmp 0x1006efdc
cmp esi, 3
jne 0x1006efd6
movss xmm3, dword [edi + 0xc]
jmp 0x1006efdc