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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov eax, dword [ebp + 0xc]
mov ecx, dword [0x1043db14]
xor ecx, ebp
mov dword [esp + 0x78], ecx
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov eax, edi
sub eax, esi
mov ecx, 0x2aaaaaab
imul ecx
mov dword [esp + 0x18], edx
sub edi, esi
je 0x100c0a47
mov dword [esp + 0x1c], edi
mov dword [esp + 0x5c], 0
call fcn.100a12f8
mov ebx, dword [eax]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp ecx, 0xc
jbe 0x100c141c
lea edi, [ebx + 4]
add ebx, 8
mov ecx, dword [eax + 0xc]
call dword [section..00cfg]
lea eax, [esp + 0x5c]
push eax
push dword [ebp + 8]
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x10
jbe 0x100c141c
mov ecx, dword [eax + 0x10]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x5c]
call dword [section..00cfg]
push 2
push edi
call ecx
mov ecx, dword [ebx]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x88
jbe 0x100c141c
mov ecx, dword [eax + 0x88]
mov edi, dword [esp + 0x5c]
call dword [section..00cfg]
push 4
push edi
call ecx
mov dword [esp + 0x58], 0
cmp dword [ebp + 0x10], 0
mov dword [esp + 0x10], ebx
je 0x100c056a
mov ecx, dword [ebx]
mov edi, dword [esp + 0xc]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x7c
jbe 0x100c141c
mov ecx, dword [eax + 0x7c]
mov eax, dword [ebp + 0x10]
movss xmm4, dword [eax + 0x14]
movss xmm5, dword [eax + 0x10]
movups xmm6, xmmword [eax]
call dword [section..00cfg]
sub esp, 0x1c
lea eax, [esp + 0x74]
mov dword [esp + 0x18], eax
movss dword [esp + 0x14], xmm4
movss dword [esp + 0x10], xmm5
movups xmmword [esp], xmm6
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x84
jbe 0x100c141c
mov ecx, dword [eax + 0x84]
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
call dword [section..00cfg]
push edi
push ebx
call ecx
mov ebx, dword [esp + 0x18]
mov eax, ebx
shr eax, 0x1f
sar ebx, 1
add ebx, eax
xor eax, eax
lea ecx, [esp + 0x4c]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
push ebx
call fcn.10010b9c
lea eax, [esp + 0x4c]
mov edi, dword [eax + 4]
lea eax, [ebx*8]
push eax
xor eax, eax
push eax
push edi
call fcn.1023abb0
add esp, 0xc
lea eax, [edi + ebx*8]
lea ecx, [esp + 0x4c]
mov dword [ecx + 4], eax
lea ecx, [esp + 0x40]
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
push ebx
call fcn.100c1442
lea eax, [esp + 0x40]
mov edi, dword [eax + 4]
push ebx
xor eax, eax
push eax
push edi
add edi, ebx
call fcn.1023abb0
xor edx, edx
add esp, 0xc
lea eax, [esp + 0x40]
mov dword [eax + 4], edi
cmp ebx, 1
mov eax, 0
mov dword [esp + 0x18], ebx
sbb eax, ebx
mov dword [esp + 0x30], eax
xor ebx, ebx
inc ebx
movss xmm2, dword [0x102fde0c]
movss xmm3, dword [0x102fde10]
xor ecx, ecx
mov dword [esp + 0x14], 0
mov dword [esp + 8], 0
mov dword [esp + 0x34], 0
mov dword [esp + 4], ecx
lea edi, [ebx - 1]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
movss xmm0, dword [esi]
movss dword [eax + ebx*8 - 8], xmm0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
movss xmm0, dword [esi + 4]
movss dword [eax + ebx*8 - 4], xmm0
movss xmm0, dword [esi]
movss dword [esp + 0x70], xmm0
movss xmm1, dword [esi + 4]
movss dword [esp + 0x74], xmm1
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x100c06c3
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x6c]
push eax
mov dword [esp + 0x28], ebx
mov ebx, edi
mov edi, esi
mov esi, edx
call fcn.100058f8
movss xmm3, dword [0x102fde10]
movss xmm2, dword [0x102fde0c]
mov edx, esi
mov esi, edi
mov edi, ebx
mov ebx, dword [esp + 0x20]
movsd xmm0, qword [esp + 0x68]
movsd qword [esp + 0x70], xmm0
ucomiss xmm0, xmm2
jbe 0x100c06eb
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
mov dword [eax + ebx*8 - 8], 0x47435000
movss xmm0, dword [esp + 0x70]
ucomiss xmm3, xmm0
jbe 0x100c070d
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
mov dword [eax + ebx*8 - 8], 0xc7435000
movss xmm0, dword [esp + 0x74]
ucomiss xmm0, xmm2
jbe 0x100c073b
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
mov dword [eax + ebx*8 - 4], 0x47435000
movss xmm0, dword [esp + 0x74]
ucomiss xmm3, xmm0
jbe 0x100c075d
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
mov dword [eax + ebx*8 - 4], 0xc7435000
movzx eax, byte [esi + 8]
test eax, eax
je 0x100c07bf
cmp eax, 1
je 0x100c079d
cmp eax, 2
jne 0x100c08cb
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
sub ecx, eax
cmp ecx, edi
jbe 0x100c13fe
mov byte [eax + ebx - 1], 0
inc dword [esp + 0x34]
mov dword [esp + 8], 0
mov edx, edi
jmp 0x100c08cb
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
sub ecx, eax
cmp ecx, edi
jbe 0x100c13fe
mov byte [eax + ebx - 1], 3
mov al, 1
mov dword [esp + 0x14], eax
jmp 0x100c08cb
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
sub ecx, eax
cmp ecx, edi
jbe 0x100c13fe
mov byte [eax + ebx - 1], 1
lea eax, [ebx - 2]
cmp dword [esp + 0x18], eax
jbe 0x100c1435
cmp byte [esi - 4], 2
jne 0x100c07ef
cmp byte [esi - 3], 0
je 0x100c084d
test byte [esp + 0x14], 1
jne 0x100c08cb
mov dword [esp + 0x20], esi
mov esi, edx
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
sub edx, ecx
sar edx, 3
cmp edx, edi
jbe 0x100c13fe
cmp edx, eax
jbe 0x100c13fe
movss xmm0, dword [ecx + ebx*8 - 8]
ucomiss xmm0, dword [ecx + ebx*8 - 0x10]
jne 0x100c0830
jnp 0x100c08c5
movss xmm0, dword [ecx + ebx*8 - 4]
ucomiss xmm0, dword [ecx + ebx*8 - 0xc]
mov edx, esi
jne 0x100c0845
jnp 0x100c08c7
mov al, 1
mov dword [esp + 0x14], eax
jmp 0x100c08c7
cmp dword [esp + 0x18], ebx
jne 0x100c09a8
mov dword [esp + 0x20], esi
mov esi, edx
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
sub edx, ecx
sar edx, 3
cmp edx, edi
jbe 0x100c13fe
cmp edx, eax
jbe 0x100c13fe
movss xmm0, dword [ecx + ebx*8 - 4]
ucomiss xmm0, dword [ecx + ebx*8 - 0xc]
mov edx, esi
mov esi, dword [esp + 0x20]
jne 0x100c07ef
jp 0x100c07ef
movss xmm0, dword [ecx + ebx*8 - 8]
ucomiss xmm0, dword [ecx + ebx*8 - 0x10]
jne 0x100c07ef
jp 0x100c07ef
addss xmm0, dword [0x102fd558]
movss dword [ecx + ebx*8 - 8], xmm0
mov ecx, dword [esp + 4]
jmp 0x100c0992
mov edx, esi
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 4]
cmp byte [esi + 9], 0
je 0x100c0992
mov al, 1
test byte [esp + 8], 1
je 0x100c0902
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
sub ecx, eax
cmp ecx, dword [esp + 4]
mov ecx, dword [esp + 4]
jbe 0x100c13fe
and byte [eax + ecx], 0x7f
mov eax, dword [esp + 8]
mov byte [esp + 4], al
mov eax, esi
mov esi, edx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
sub edx, ecx
cmp edx, edi
jbe 0x100c13fe
or byte [ecx + ebx - 1], 0x80
test byte [esp + 0x14], 1
jne 0x100c0978
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
sub edx, ecx
sar edx, 3
cmp edx, edi
jbe 0x100c13fe
cmp edx, esi
jbe 0x100c13fe
mov edx, esi
movss xmm0, dword [ecx + ebx*8 - 8]
ucomiss xmm0, dword [ecx + esi*8]
jne 0x100c0955
jnp 0x100c0986
movss xmm0, dword [ecx + ebx*8 - 4]
ucomiss xmm0, dword [ecx + edx*8 + 4]
mov esi, eax
jne 0x100c0966
jnp 0x100c096c
mov al, 1
mov dword [esp + 0x14], eax
mov al, byte [esp + 4]
mov dword [esp + 8], eax
mov ecx, edi
jmp 0x100c0992
mov cl, byte [esp + 4]
mov dword [esp + 8], ecx
mov ecx, edi
mov edx, esi
jmp 0x100c0990
mov cl, byte [esp + 4]
mov dword [esp + 8], ecx
mov ecx, edi
mov esi, eax
mov eax, dword [esp + 0x30]
add eax, ebx
inc eax
inc ebx
add esi, 0xc
cmp eax, 1
jne 0x100c0622
jmp 0x100c09c7
jbe 0x100c143e
cmp byte [esi + 0x14], 2
jne 0x100c07ef
cmp byte [esi + 0x15], 0
jne 0x100c07ef
jmp 0x100c0857
mov eax, dword [ebp + 0x20]
mov cl, byte [eax]
mov byte [esp + 8], cl
mov al, byte [eax + 1]
test al, 2
jne 0x100c0a4e
test al, 4
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
jne 0x100c0a7b
cmp byte [esp + 8], 0
setne al
mov ecx, dword [esp + 0x14]
or al, cl
test cl, 1
movzx eax, al
movzx ecx, cl
cmove ecx, eax
test cl, 1
jne 0x100c0a23
cmp dword [ebp + 0x14], 0
je 0x100c0a7b
mov eax, dword [ebp + 0x14]
movss xmm0, dword [eax + 0xc]
mov al, 1
ucomiss xmm0, dword [0x10289340]
jbe 0x100c0b5f
mov ecx, dword [edi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x14
jbe 0x100c141c
mov ecx, dword [eax + 0x14]
mov esi, dword [esp + 0x5c]
call dword [section..00cfg]
push 4
jmp 0x100c0a78
mov bl, 1
jmp 0x100c12cc
mov edi, dword [esp + 0x10]
mov ecx, dword [edi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x14
mov ebx, dword [esp + 0x1c]
jbe 0x100c141c
mov ecx, dword [eax + 0x14]
mov esi, dword [esp + 0x5c]
call dword [section..00cfg]
push 3
push esi
call ecx
cmp dword [ebp + 0x14], 0
setne al
jne 0x100c0b5f
cmp ebx, 0x30
jne 0x100c0b5f
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
sub esi, ecx
sar esi, 3
xor ebx, ebx
pcmpeqd xmm2, xmm2
mov dword [esp + 4], ecx
mov edi, dword [ebx*8 + 0x102fe158]
mov eax, dword [ebx*8 + 0x102fe15c]
movq qword [esp + 0x70], xmm2
cmp esi, edi
jbe 0x100c1438
movsd xmm0, qword [ecx + edi*8]
movsd qword [esp + 0x70], xmm0
movq qword [esp + 0x68], xmm2
cmp esi, eax
jbe 0x100c143b
movsd xmm1, qword [ecx + eax*8]
movsd qword [esp + 0x68], xmm1
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x100c0b2c
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x64]
push eax
call fcn.100058f8
movsd xmm0, qword [esp + 0x60]
movsd qword [esp + 0x70], xmm0
mov ecx, dword [ebp + 0x10]
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x64]
push eax
call fcn.100058f8
pcmpeqd xmm2, xmm2
movsd xmm1, qword [esp + 0x60]
movsd xmm0, qword [esp + 0x70]
subps xmm0, xmm1
mulps xmm0, xmm0
haddps xmm0, xmm0
movss xmm1, dword [0x102fde14]
ucomiss xmm1, xmm0
ja 0x100c0d7f
inc ebx
cmp ebx, 3
mov ecx, dword [esp + 4]
jne 0x100c0aa8
xor eax, eax
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov dword [esp + 0x68], 0
xor edx, edx
mov eax, dword [ebp + 0x20]
cmp byte [eax], 1
setne cl
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
cmp dword [edi], eax
je 0x100c141c
mov dl, cl
mov ecx, dword [eax]
mov edi, dword [esp + 0x18]
cmp ebx, 0xfffffff4
mov esi, edx
jle 0x100c142d
mov edx, dword [esp + 0x40]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x4c]
call dword [section..00cfg]
lea eax, [esp + 0x68]
push eax
mov dword [esp + 0x18], esi
push esi
push edi
push dword [esp + 0x10]
push ebx
call ecx
cmp dword [esp + 0x68], 0
setne bl
je 0x100c0d26
mov byte [esp + 0x30], bl
cmp byte [esp + 8], 0
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
je 0x100c0c8f
call fcn.100a12f8
mov ecx, dword [eax]
mov dword [esp + 0x70], 0
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
sub ecx, eax
cmp ecx, 0x18
jbe 0x100c141c
mov ecx, dword [eax + 0x18]
call dword [section..00cfg]
lea eax, [esp + 0x70]
push eax
push dword [ebp + 0x18]
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x5c
jbe 0x100c141c
mov esi, edi
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov ecx, dword [eax + 0x5c]
mov edi, dword [esp + 0x68]
call dword [section..00cfg]
push dword [esp + 0x14]
push edi
call ecx
mov ecx, dword [ebx]
mov eax, dword [esi]
sub ecx, eax
cmp ecx, 0x1c
jbe 0x100c141c
mov ecx, dword [eax + 0x1c]
mov edi, dword [esp + 0x68]
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
call dword [section..00cfg]
push edi
push dword [esp + 8]
push dword [esp + 0x10]
call ecx
mov ecx, dword [ebx]
mov eax, dword [esi]
sub ecx, eax
cmp ecx, 0x20
jbe 0x100c141c
mov edi, esi
mov ecx, dword [eax + 0x20]
call dword [section..00cfg]
push dword [esp + 4]
call ecx
mov esi, dword [ebp + 0x1c]
test esi, esi
sete al
mov ecx, dword [esp + 0x20]
xor cl, 1
or cl, al
jne 0x100c1237
mov eax, dword [ebp + 0x20]
mov bl, byte [eax + 1]
call fcn.100a12f8
mov edi, dword [eax]
mov eax, dword [ebp + 0x14]
movss xmm4, dword [eax + 0xc]
test bl, 0x20
jne 0x100c0eea
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x100c0edb
mov esi, ecx
movaps xmmword [esp + 0x20], xmm4
call fcn.10005670
fstp dword [esp + 0x3c]
movss xmm0, dword [esp + 0x3c]
movss dword [esp + 4], xmm0
mov ecx, esi
mov esi, dword [ebp + 0x1c]
call fcn.100056d0
movaps xmm4, xmmword [esp + 0x20]
fstp dword [esp + 0x38]
movss xmm0, dword [esp + 4]
addss xmm0, dword [esp + 0x38]
mulss xmm0, dword [0x10265c18]
movaps xmm1, xmm0
movss xmm0, dword [0x10265c58]
divss xmm0, xmm1
jmp 0x100c0ee3
mov esi, dword [esp + 0x58]
test esi, esi
mov edi, dword [esp + 0x10]
je 0x100c0d57
mov ecx, dword [edi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x80
jbe 0x100c141c
mov ecx, dword [eax + 0x80]
call dword [section..00cfg]
push esi
call ecx
mov ecx, dword [edi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x38
jbe 0x100c141c
mov ecx, dword [eax + 0x38]
mov esi, dword [esp + 0x5c]
call dword [section..00cfg]
push esi
call ecx
jmp 0x100c12a2
mov dword [esp + 0x70], 0
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x24
jbe 0x100c141c
mov ecx, dword [eax + 0x24]
call dword [section..00cfg]
lea eax, [esp + 0x70]
push eax
push 2
push 0x3f800000
push dword [ebp + 0x18]
call ecx
mov ecx, dword [esi]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x54
jbe 0x100c141c
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
sub edx, ecx
sar edx, 3
cmp edx, edi
jbe 0x100c13fe
mov esi, dword [eax + 0x54]
movss xmm0, dword [ecx + edi*8 + 4]
sub esp, 4
movss dword [esp], xmm0
call fcn.10006d10
add esp, 4
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, edi
jbe 0x100c13fe
movss xmm0, dword [eax + edi*8]
sub esp, 4
movss dword [esp], xmm0
call fcn.10006d10
add esp, 4
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, edx
sar ecx, 3
cmp ecx, ebx
jbe 0x100c13fe
mov dword [esp + 0x14], eax
mov dword [esp + 8], esi
movss xmm0, dword [edx + ebx*8 + 4]
sub esp, 4
movss dword [esp], xmm0
call fcn.10006d10
add esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
sub ecx, eax
sar ecx, 3
cmp ecx, ebx
jbe 0x100c13fe
movss xmm0, dword [eax + ebx*8]
sub esp, 4
movss dword [esp], xmm0
call fcn.10006d10
add esp, 4
mov ebx, eax
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x5c]
mov ecx, dword [esp + 8]
call dword [section..00cfg]
push dword [esp + 4]
push dword [esp + 0x18]
push dword [esp + 0x28]
push ebx
push esi
push edi
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x30
jbe 0x100c141c
mov ecx, dword [eax + 0x30]
mov esi, dword [esp + 0x70]
call dword [section..00cfg]
push esi
call ecx
mov bl, 1
jmp 0x100c12a2
movss xmm0, dword [0x10265c58]
maxss xmm0, xmm4
movaps xmm4, xmm0
mov dword [esp + 0x70], 0
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
sub ecx, eax
cmp ecx, 0x24
jbe 0x100c141c
mov dword [esp + 8], edi
mov ecx, dword [eax + 0x24]
call dword [section..00cfg]
sub esp, 0x10
lea eax, [esp + 0x80]
mov dword [esp + 0xc], eax
movaps xmmword [esp + 0x30], xmm4
movss dword [esp + 4], xmm4
mov dword [esp], esi
mov dword [esp + 8], 0
call ecx
mov eax, dword [ebp + 0x14]
movzx eax, byte [eax]
xor ecx, ecx
cmp eax, 2
je 0x100c0f67
mov edi, 0
mov dword [esp + 4], 0
cmp eax, 1
jne 0x100c0f70
mov al, 1
mov dword [esp + 4], eax
mov edi, 2
mov ecx, 2
jmp 0x100c0f70
mov al, 1
mov dword [esp + 4], eax
xor edi, edi
inc edi
mov dword [esp + 0x1c], ecx
mov esi, dword [esp + 8]
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
sub ecx, eax
cmp ecx, 0x74
jbe 0x100c141c
mov ecx, dword [eax + 0x74]
mov ebx, dword [esp + 0x70]
call dword [section..00cfg]
push dword [esp + 0x1c]
push edi
push edi
push ebx
call ecx
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
sub ecx, eax
cmp ecx, 8
jbe 0x100c141c
mov ecx, dword [ebp + 0x14]
mov cl, byte [ecx + 1]
xor ebx, ebx
cmp cl, 1
sete bl
xor ebx, 3
xor esi, esi
inc esi
cmp cl, 2
cmove ebx, esi
mov ecx, dword [eax + 8]
mov edi, dword [esp + 0x70]
call dword [section..00cfg]
push ebx
push edi
call ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
cmp ecx, eax
mov ebx, dword [esp + 0x10]
je 0x100c119e
sub eax, ecx
sar eax, 2
inc eax
and eax, 0xfffffffe
push 4
push eax
call fcn.10005c5a
add esp, 8
mov edi, eax
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
sub ecx, eax
je 0x100c1105
sar ecx, 2
movsldup xmm0, xmmword [esp + 0x20]
xorps xmm2, xmm2
xor ebx, ebx
movaps xmm3, xmmword [0x102fde20]
movss xmm5, dword [0x10265c58]
xorps xmm6, xmm6
movss xmm4, dword [eax + esi*4 - 4]
movaps xmm7, xmm4
cmp esi, ecx
je 0x100c104f
jae 0x100c141c
movss xmm7, dword [eax + esi*4]
unpcklps xmm4, xmm7
divps xmm4, xmm0
movaps xmm7, xmm4
haddps xmm7, xmm4
xor eax, eax
movss xmm1, dword [0x102fde18]
ucomiss xmm1, xmm7
setb al
movd xmm7, eax
pshufd xmm7, xmm7, 0x50
pslld xmm7, 0x1f
psrad xmm7, 0x1f
andps xmm4, xmm7
andnps xmm7, xmm3
orps xmm7, xmm4
cmp byte [esp + 4], 0
je 0x100c10ad
movshdup xmm4, xmm7
movaps xmm1, xmm4
addss xmm1, dword [0x10287750]
cmpltss xmm4, xmm5
andnps xmm4, xmm1
addss xmm7, xmm5
unpcklps xmm7, xmm4
ucomiss xmm7, xmm6
jne 0x100c10b4
jnp 0x100c10ce
movshdup xmm1, xmm7
ucomiss xmm1, xmm6
jne 0x100c10bf
jnp 0x100c10ce
addps xmm2, xmm7
movlps qword [edi + ebx*4], xmm2
add ebx, 2
xorps xmm2, xmm2
jmp 0x100c10e7
test ebx, ebx
je 0x100c10e2
movsd xmm1, qword [edi + ebx*4 - 8]
addps xmm7, xmm1
movlps qword [edi + ebx*4 - 8], xmm7
jmp 0x100c10e7
addps xmm2, xmm7
xor ebx, ebx
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
sub ecx, eax
sar ecx, 2
lea edx, [esi + 2]
inc esi
cmp esi, ecx
mov esi, edx
jb 0x100c1037
jmp 0x100c1107
xor ebx, ebx
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
sub ecx, eax
cmp ecx, 4
jbe 0x100c141c
mov ecx, dword [eax + 4]
mov esi, dword [esp + 0x70]
call dword [section..00cfg]
push ebx
push edi
push esi
call ecx
mov eax, dword [ebp + 0x14]
movss xmm0, dword [eax + 4]
cmp byte [esp + 4], 0
je 0x100c115e
xorps xmm4, xmm4
movss xmm1, dword [0x10265c18]
ucomiss xmm1, xmm0
mov ebx, dword [esp + 0x10]
ja 0x100c1165
addss xmm0, dword [0x10289798]
movaps xmm4, xmm0
jmp 0x100c1165
movaps xmm4, xmm0
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
sub ecx, eax
cmp ecx, 0x78
jbe 0x100c141c
mov ecx, dword [eax + 0x78]
mov esi, dword [esp + 0x70]
call dword [section..00cfg]
sub esp, 8
movss dword [esp + 4], xmm4
mov dword [esp], esi
call ecx
push edi
call fcn.1000e8f9
add esp, 4
mov ecx, dword [esp + 8]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
sub ecx, eax
cmp ecx, 0x28
jbe 0x100c141c
mov ecx, dword [eax + 0x28]
mov eax, dword [ebp + 0x14]
movss xmm4, dword [eax + 8]
mov esi, dword [esp + 0x70]
call dword [section..00cfg]
sub esp, 8
movss dword [esp + 4], xmm4
mov dword [esp], esi
call ecx
mov eax, dword [esp + 0x70]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x34], 1
mov edi, dword [esp + 0xc]
jne 0x100c12e3
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x2c
jbe 0x100c141c
mov ecx, dword [eax + 0x2c]
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x5c]
call dword [section..00cfg]
push esi
push dword [esp + 0x24]
push edi
call ecx
mov edi, dword [esp + 0xc]
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x30
jbe 0x100c141c
mov ecx, dword [eax + 0x30]
call dword [section..00cfg]
push dword [esp + 0x20]
call ecx
mov esi, dword [esp + 0x58]
test esi, esi
je 0x100c1260
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x80
jbe 0x100c141c
mov ecx, dword [eax + 0x80]
call dword [section..00cfg]
push esi
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x34
jbe 0x100c141c
mov ecx, dword [eax + 0x34]
mov esi, dword [esp + 0x68]
call dword [section..00cfg]
push esi
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x38
jbe 0x100c141c
mov ecx, dword [eax + 0x38]
mov esi, dword [esp + 0x5c]
call dword [section..00cfg]
push esi
call ecx
mov bl, byte [esp + 0x30]
mov eax, dword [esp + 0x40]
test eax, eax
je 0x100c12b7
mov dword [esp + 0x44], eax
push eax
call fcn.102377b1
add esp, 4
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x100c12cc
mov dword [esp + 0x50], eax
push eax
call fcn.102377b1
add esp, 4
mov ecx, dword [esp + 0x78]
xor ecx, ebp
call fcn.102377e8
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c
mov eax, dword [esp + 0x18]
lea ecx, [eax - 1]
mov dword [esp + 8], ecx
cmp eax, 1
adc eax, 0
mov dword [esp + 0x18], eax
xor esi, esi
xor eax, eax
cmp esi, dword [esp + 8]
je 0x100c1328
lea ecx, [esi + 1]
mov edx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
sub edi, edx
cmp edi, ecx
jbe 0x100c13fe
cmp byte [edx + ecx], 0
mov edi, dword [esp + 0xc]
je 0x100c1328
mov esi, ecx
jmp 0x100c13e7
mov dword [esp + 0x70], 0xffffffff
mov ecx, dword [edi]
cmp dword [ebx], ecx
je 0x100c141c
mov ecx, dword [ecx]
mov ebx, esi
sub ebx, eax
inc ebx
js 0x100c13f6
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
sub edx, edi
cmp edx, eax
jbe 0x100c13fe
mov dword [esp + 4], esi
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
sub esi, edx
sar esi, 3
cmp esi, eax
jbe 0x100c13fe
add edi, eax
lea esi, [edx + eax*8]
call dword [section..00cfg]
lea eax, [esp + 0x70]
push eax
push dword [esp + 0x18]
push ebx
push edi
push esi
call ecx
mov ebx, dword [esp + 0x10]
mov ecx, dword [ebx]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
sub ecx, eax
cmp ecx, 0x2c
jbe 0x100c141c
mov ecx, dword [eax + 0x2c]
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x5c]
call dword [section..00cfg]
push esi
push dword [esp + 0x24]
push edi
mov edi, dword [esp + 0x18]
call ecx
mov ecx, dword [ebx]
mov eax, dword [edi]
sub ecx, eax
cmp ecx, 0x34
jbe 0x100c141c
mov esi, dword [esp + 4]
inc esi
mov ecx, dword [eax + 0x34]
mov edi, ebx
mov ebx, dword [esp + 0x70]
call dword [section..00cfg]
push ebx
mov ebx, edi
mov edi, dword [esp + 0x10]
call ecx
mov ecx, esi
mov eax, esi
cmp ecx, dword [esp + 0x18]
jne 0x100c12fc
jmp 0x100c1219
int3
push str.vector___index_out_of_bounds
push str.__n___size__
push 0x5b6
push str..._buildtools_third_partylibc_trunkinclude_vector
push str._s:_d:_assertion__s_failed:__s
call fcn.101e76b7
push str.vector___index_out_of_bounds
push str.__n___size__
push 0x5c0
jmp 0x100c140d
int3
int3
int3
int3
int3