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

Disassembly:
push esi
push edi
push ebx
push ebp
sub esp, 0x54
mov esi, dword [esp + 0x6c]
mov eax, dword [esp + 0x70]
mov ebp, dword [esp + 0x68]
mov edx, dword [esi + 8]
add edx, 3
lea edi, [eax + 3]
shr edx, 2
and edi, 0xfffffffc
shl edx, 6
mov ebx, dword [esi]
add edx, edi
mov dword [esp + 0x2c], edx
cmp ebx, 8
jne 0x1000fbf8
mov dword [ebp + 0x3734], 3
mov dword [ebp + 0x3738], 0
jmp 0x1000fc11
cmp ebx, 6
jne 0x1000fc11
mov dword [ebp + 0x3734], 2
mov dword [ebp + 0x3738], 0
mov edx, dword [esp + 0x7c]
lea eax, [ebp + 0x322c]
mov dword [esp + 4], edx
call fcn.10010434
mov eax, dword [esp + 0x78]
cmp dword [esi + 4], 0
jbe 0x1000ff93
xor edx, edx
lea ecx, [ebp + 0x3234]
mov dword [esp + 0x28], ecx
lea ecx, [ebp + 0x34b4]
mov dword [esp + 0x24], ecx
mov ecx, ebx
shr ecx, 1
movss xmm0, dword [0x10343260]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x30], ebx
mov ebx, edx
mov dword [esp + 0x3c], edi
mov edi, dword [esi + 8]
cmp dword [esp + 0x30], 0
jbe 0x1000fcbc
mov ecx, dword [esi + 0xc]
cmp dword [esp + 0x10], 0
jbe 0x1000ffac
mov esi, dword [esp + 0x10]
xor eax, eax
mov edx, dword [ecx + eax*8]
mov edx, dword [edx + ebx*4]
mov dword [ebp + eax*8 + 0x373c], edx
mov edx, dword [ecx + eax*8 + 4]
mov edx, dword [edx + ebx*4]
mov dword [ebp + eax*8 + 0x3740], edx
inc eax
cmp eax, esi
jb 0x1000fc80
mov esi, dword [esp + 0x6c]
lea eax, [eax + eax + 1]
dec eax
cmp eax, dword [esp + 0x30]
jae 0x1000fcbc
mov ecx, dword [ecx + eax*4]
mov ecx, dword [ecx + ebx*4]
mov dword [ebp + eax*4 + 0x373c], ecx
mov dword [esp + 0xc], edi
mov eax, ebp
mov edx, dword [esp + 0x30]
mov ecx, dword [ebp + 0x3738]
call fcn.100102cc
mov eax, dword [esp + 0x3c]
xor ecx, ecx
push dword [esp + 0x74]
push ecx
mov edi, dword [esi + 8]
add edi, 3
push dword [ebp + 0x374c]
shr edi, 2
push ecx
shl edi, 5
push eax
add edi, eax
call fcn.10013070
push dword [esp + 0x88]
xor ecx, ecx
push ecx
push dword [ebp + 0x3750]
push ecx
push edi
call fcn.10013070
add esp, 0x28
mov edi, dword [esi + 8]
mov eax, ebp
mov dword [esp + 0xc], edi
mov edx, ebp
mov ecx, dword [esp + 0x2c]
call fcn.1000ffcc
push dword [esi + 8]
push dword [esp + 0x28]
push dword [esp + 0x30]
push dword [ebp + 0x3750]
push dword [ebp + 0x374c]
call fcn.1001b9d0
add esp, 0x14
mov eax, dword [esi + 8]
mov edi, dword [ebp + 0x374c]
mov dword [esp + 0x38], edi
mov edi, dword [ebp + 0x3750]
lea ecx, [eax + 3]
shr ecx, 2
shl ecx, 5
add ecx, dword [esp + 0x3c]
cmp dword [esp + 0x74], 0
jbe 0x1000fe3b
xor edx, edx
mov ebp, 0xffffffff
mov dword [esp + 0x40], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], ebx
mov ebx, edx
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
pxor xmm3, xmm3
mov eax, dword [esp + 0x40]
cvtss2sd xmm3, dword [ecx + ebx*8]
movss xmm0, dword [ecx + ebx*8 + 4]
movss xmm1, dword [eax + ebx*8]
movss xmm2, dword [eax + ebx*8 + 4]
movss dword [esp + 0x44], xmm0
movss dword [esp + 0x48], xmm1
movss dword [esp + 0x4c], xmm2
movsd qword [esp], xmm3
mov dword [esp + 8], ebp
call fcn.10009ad0
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0x44]
movsd qword [esp], xmm0
fstp dword [esi + ebx*8]
mov dword [esp + 8], ebp
call fcn.10009ad0
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0x48]
movsd qword [esp], xmm0
fstp dword [esi + ebx*8 + 4]
mov dword [esp + 8], ebp
call fcn.10009ad0
pxor xmm0, xmm0
cvtss2sd xmm0, dword [esp + 0x4c]
movsd qword [esp], xmm0
fstp dword [edi + ebx*8]
mov dword [esp + 8], ebp
call fcn.10009ad0
fstp dword [edi + ebx*8 + 4]
inc ebx
cmp ebx, dword [esp + 0x74]
jb 0x1000fd88
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
test eax, eax
jbe 0x1000ff11
mov ecx, dword [ebp + 0x373c]
mov edx, dword [ebp + 0x3744]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], 0
mov ecx, dword [ebp + 0x3740]
mov dword [esp + 0x34], ebx
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x38]
movss xmm6, dword [edi + edx*8 + 4]
movss dword [esp + 0x50], xmm6
movss xmm5, dword [ebx + edx*8]
movss xmm6, dword [0x10343260]
mulss xmm5, xmm6
movss xmm7, dword [ebp + edx*8]
movss xmm0, dword [ebx + edx*8 + 4]
addss xmm7, xmm5
mulss xmm0, xmm6
addss xmm7, dword [esi + edx*8]
movss xmm3, dword [esi + edx*8 + 4]
movss xmm1, dword [ecx + edx*8]
movss xmm4, dword [ecx + edx*8 + 4]
addss xmm5, xmm1
movss xmm2, dword [edi + edx*8]
movss dword [ebp + edx*8], xmm7
addss xmm5, xmm2
movss xmm7, dword [ebp + edx*8 + 4]
addss xmm7, xmm0
addss xmm0, xmm4
addss xmm7, xmm3
addss xmm0, dword [esp + 0x50]
movss dword [ebp + edx*8 + 4], xmm7
movss dword [ecx + edx*8], xmm5
movss dword [ecx + edx*8 + 4], xmm0
inc edx
cmp edx, eax
jb 0x1000fe79
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp dword [esp + 0x78], 0
je 0x1000ff38
cmp dword [esp + 0x30], 2
je 0x1000ff38
push eax
xor ecx, ecx
push ecx
push dword [ebp + 0x3748]
push ecx
push dword [ebp + 0x3744]
call fcn.10013070
add esp, 0x14
mov dword [esp + 0x34], ebx
xor edi, edi
mov eax, dword [ebp + 0x3738]
mov edx, dword [ebp + edi*4 + 0x373c]
inc eax
mov ebx, dword [esi + 8]
lea ecx, [edx + 0xf]
and ecx, 0xfffffff0
cmp edx, ecx
jne 0x1000ff69
test bl, 3
jne 0x1000ff69
push ebx
push eax
push edx
push edx
call fcn.1002a5f0
jmp 0x1000ff72
push ebx
push eax
push edx
push edx
call fcn.1002a6d0
add esp, 0x10
inc edi
cmp edi, 2
jb 0x1000ff3e
nop word [eax + eax]
mov ebx, dword [esp + 0x34]
inc ebx
cmp ebx, dword [esi + 4]
jb 0x1000fc62
mov eax, dword [esp + 0x78]
mov edx, 3
test eax, eax
mov eax, 2
cmovne eax, edx
mov dword [esi], eax
add esp, 0x54
pop ebp
pop ebx
pop edi
pop esi
ret
mov eax, 1
jmp 0x1000fca8