Function at 0x100cf170
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
xorps xmm0, xmm0
push ebx
mov ebx, dword [esp + 0x24]
push ebp
mov eax, dword [eax + 0x14]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
movups xmmword [ebp + 0x10], xmm0
push esi
movq qword [ebp + 0x20], xmm0
mov byte [ebp + 0xa], al
mov ebx, dword [ebx]
mov eax, ebx
shr eax, 0x10
and eax, 3
push edi
sub eax, 1
je 0x100cf1cb
sub eax, 1
je 0x100cf1c1
mov dword [esp + 0x18], 0
jmp 0x100cf1d3
mov dword [esp + 0x18], 2
jmp 0x100cf1d3
mov dword [esp + 0x18], 1
mov edi, dword [esp + 0x2c]
mov ecx, ebx
mov eax, dword [edi]
nop dword [eax + eax]
movzx esi, cx
shl esi, 4
add esi, eax
mov ecx, dword [esi]
mov edx, ecx
shr edx, 0x1c
cmp edx, 8
je 0x100cf1e0
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x100cf564
and ecx, 0xf4000000
cmp ecx, 0x34000000
je 0x100cf22f
cmp edx, 1
je 0x100cf22f
cmp ecx, 0x4000000
jne 0x100cf291
cmp dword [esi + 4], 4
setne al
inc al
mov byte [ebp + 0xa], al
jmp 0x100cf291
mov edi, dword [esi + 4]
mov eax, dword [esp + 0x2c]
lea edx, [edi + 8]
mov ecx, dword [eax + 0xc]
call fcn.10094d10
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 0x28]
mov word [eax + 6], bx
lea ebx, [eax + 8]
mov byte [eax + 5], 0xa
mov edx, dword [ecx + 0x14]
lea ecx, [edx + 8]
mov dword [ebp + 0x14], ecx
mov ebp, dword [esp + 0x34]
mov dword [edx], eax
mov dword [edx + 4], 0xfffffff5
mov eax, dword [esi]
and eax, 0xf0000000
cmp eax, 0x10000000
cmp edi, 8
mov edi, dword [esp + 0x2c]
seta al
mov byte [ebp + 9], al
jbe 0x100cf291
mov eax, 1
mov dword [ebp + 0x28], ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x30]
movzx ebx, word [eax + 8]
test ebx, ebx
je 0x100cf2c0
mov edx, dword [edi]
nop
mov ecx, ebx
add ecx, ecx
mov eax, dword [edx + ecx*8]
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x100cf2bc
movzx ebx, word [edx + ecx*8 + 8]
test ebx, ebx
jne 0x100cf2a0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1c], 1
mov ebp, dword [ecx + 0x10]
add ebp, 8
cmp ebp, dword [esp + 0x20]
jae 0x100cf52f
nop dword [eax]
test ebx, ebx
je 0x100cf2f7
shl ebx, 4
add ebx, dword [edi]
mov eax, ebx
movzx ebx, word [eax + 8]
movzx esi, word [eax]
jmp 0x100cf3bf
test dword [eax], 0x800000
je 0x100cf572
mov eax, dword [ebp + 4]
cmp eax, 0xfffffff2
ja 0x100cf315
mov esi, 0xe
jmp 0x100cf3bf
cmp eax, 0xfffffff5
jne 0x100cf39f
mov eax, dword [ebp]
movzx esi, word [eax + 6]
mov edx, esi
shl edx, 4
add edx, dword [edi]
mov ecx, dword [edx]
mov eax, ecx
and eax, 0xfc000000
cmp eax, 0x30000000
jne 0x100cf359
movzx eax, cx
or eax, 0x20000
push 4
add eax, 0x20000000
push eax
push edi
call fcn.1009f9a0
add esp, 0xc
mov esi, eax
jmp 0x100cf3bf
mov eax, ecx
shr eax, 0x1c
cmp eax, 1
je 0x100cf383
cmp eax, 6
je 0x100cf383
and ecx, 0xf4000000
cmp ecx, 0x4000000
jne 0x100cf3bf
cmp dword [edx + 4], 4
jne 0x100cf3bf
mov esi, 0xe
jmp 0x100cf3bf
or esi, 0x20000
push 4
add esi, 0x20000000
push esi
push edi
call fcn.1009f9a0
add esp, 0xc
mov esi, eax
jmp 0x100cf3bf
cmp eax, 0xfffffffb
jne 0x100cf3ab
mov esi, 0x13
jmp 0x100cf3bf
cmp eax, 0xfffffffe
je 0x100cf3ba
mov esi, 0x11
cmp eax, 0xfffffffd
jne 0x100cf3bf
mov esi, 3
mov edx, dword [edi]
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x100cf3ee
movzx esi, cx
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x100cf3d6
mov edx, dword [esi + 4]
mov edi, ecx
shr edi, 0x1c
test edi, edi
jne 0x100cf48a
cmp edx, 8
ja 0x100cf564
mov eax, dword [esp + 0x10]
add edx, 3
shr edx, 2
mov dword [esp + 0x10], eax
test ecx, 0x4000000
je 0x100cf4af
mov edi, dword [esp + 0x14]
lea eax, [edx + edi]
cmp eax, 0x20
ja 0x100cf564
mov ecx, dword [esp + 0x34]
add edi, 0xa
mov dword [esp + 0x14], eax
lea edi, [ecx + edi*4]
mov eax, dword [esp + 0x1c]
shl eax, 8
push eax
mov eax, dword [esp + 0x30]
push ebp
push edi
push esi
push eax
call fcn.100c9660
mov ecx, dword [esi]
add esp, 0x14
test ecx, 0xf4000000
jne 0x100cf512
mov eax, dword [esi + 4]
cmp eax, 4
jae 0x100cf512
test ecx, 0x800000
je 0x100cf503
cmp eax, 1
jne 0x100cf4fe
movzx eax, byte [edi]
jmp 0x100cf510
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x100cf564
cmp edi, 1
jne 0x100cf4bc
mov eax, dword [esp + 0x18]
add edx, 3
mov dword [esp + 0x10], eax
shr edx, 2
mov ecx, eax
cmp edx, 1
ja 0x100cf421
jmp 0x100cf4e0
and ecx, 0xf4000000
cmp ecx, 0x34000000
jne 0x100cf4d5
add edx, 3
shr edx, 2
jmp 0x100cf421
mov eax, dword [esp + 0x10]
mov edx, 1
mov ecx, eax
inc eax
cmp eax, dword [esp + 0x18]
ja 0x100cf421
mov edi, dword [esp + 0x34]
add edi, 0x20
add dword [esp + 0x10], edx
lea edi, [edi + ecx*4]
jmp 0x100cf43f
movzx eax, word [edi]
jmp 0x100cf510
cmp eax, 1
jne 0x100cf50d
movsx eax, byte [edi]
jmp 0x100cf510
movsx eax, word [edi]
mov dword [edi], eax
inc dword [esp + 0x1c]
add ebp, 8
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
cmp ebp, dword [esp + 0x20]
jb 0x100cf2e0
mov ecx, dword [esp + 0x28]
test ebx, ebx
jne 0x100cf576
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x14]
mov byte [ecx + 8], al
mov dword [ecx + 4], 4
cmp eax, 1
jbe 0x100cf55a
lea eax, [eax*4 + 0xb]
and eax, 0xfffffff0
add eax, 4
mov dword [ecx + 4], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret
push 0xf22
push dword [esp + 0x2c]
call fcn.100936f0
mov ecx, dword [esp + 0x28]
push 0xe03
push ecx
call fcn.100936f0
int3