Function at 0x1006d7a0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x14
push ebx
mov ebx, dword [eax + 4]
push ebp
mov ebp, dword [eax + 0x2c]
push edi
mov edi, ecx
lea edx, [ebx + ebp]
mov ecx, edx
call fcn.1006d0d0
movzx eax, ax
test ax, ax
mov dword [esp + 0x18], eax
jne 0x1006d7eb
lea ecx, [edx + 2]
call fcn.1006d0d0
movzx eax, ax
sub eax, 6
cmp edi, eax
jge 0x1006d7e2
movzx eax, byte [edx + edi + 6]
pop edi
pop ebp
pop ebx
add esp, 0x14
ret
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret
cmp ax, 6
push esi
jne 0x1006d832
lea ecx, [edx + 6]
call fcn.1006d0d0
movzx esi, ax
cmp edi, esi
jb 0x1006d9b0
lea ecx, [edx + 8]
call fcn.1006d0d0
movzx ecx, ax
add ecx, esi
cmp edi, ecx
jae 0x1006d9b0
sub edi, esi
lea ecx, [ebp + edi*2 + 0xa]
add ecx, ebx
call fcn.1006d0d0
pop esi
pop edi
pop ebp
movzx eax, ax
pop ebx
add esp, 0x14
ret
cmp ax, 2
je 0x1006d9b0
cmp ax, 4
jne 0x1006d98c
lea ecx, [edx + 6]
call fcn.1006d0d0
shr ax, 1
movzx eax, ax
lea ecx, [edx + 8]
mov dword [esp + 0x18], eax
call fcn.1006d0d0
shr ax, 1
movzx ecx, ax
mov dword [esp + 0x14], ecx
lea ecx, [edx + 0xa]
call fcn.1006d0d0
movzx eax, ax
lea ecx, [edx + 0xc]
mov dword [esp + 0x10], eax
call fcn.1006d0d0
shr ax, 1
cmp edi, 0xffff
movzx eax, ax
lea edx, [ebp + 0xe]
jg 0x1006d9b0
movzx ecx, ax
lea esi, [edx + ecx*2]
lea ecx, [esi + ebx]
call fcn.1006d0d0
movzx eax, ax
cmp edi, eax
jl 0x1006d8ad
mov edx, esi
sub edx, 2
cmp word [esp + 0x10], 0
je 0x1006d8f6
jmp 0x1006d8c0
mov ax, word [esp + 0x14]
shr ax, 1
movzx ecx, ax
lea esi, [edx + ecx*2]
lea ecx, [esi + ebx]
mov word [esp + 0x14], ax
call fcn.1006d0d0
movzx eax, ax
cmp edi, eax
jle 0x1006d8e4
mov edx, esi
mov eax, dword [esp + 0x10]
add eax, 0xffff
test ax, ax
mov dword [esp + 0x10], eax
jne 0x1006d8c0
lea eax, [ebp + 0xe]
sub edx, eax
add edx, 2
shr edx, 1
movzx eax, dx
movzx edx, word [esp + 0x18]
movzx esi, ax
lea ecx, [edx + esi]
lea ecx, [ebp + ecx*2 + 0x10]
add ecx, ebx
mov dword [esp + 0x18], edx
call fcn.1006d0d0
movzx eax, ax
movzx eax, ax
cmp edi, eax
mov dword [esp + 0x14], eax
jl 0x1006d9b0
lea edx, [edx + edx*2]
lea eax, [edx + esi]
lea ecx, [ebp + eax*2 + 0x10]
add ecx, ebx
call fcn.1006d0d0
movzx eax, ax
test ax, ax
jne 0x1006d969
mov ecx, dword [esp + 0x18]
lea edx, [esi + ecx*2 + 8]
lea ecx, [ebp + edx*2]
add ecx, ebx
call fcn.1006d0e0
pop esi
add ax, di
pop edi
pop ebp
movzx eax, ax
pop ebx
add esp, 0x14
ret
sub edx, dword [esp + 0x14]
movzx eax, ax
add edx, esi
add edx, edi
add eax, ebp
lea ecx, [eax + edx*2 + 0x10]
add ecx, ebx
call fcn.1006d0d0
pop esi
pop edi
pop ebp
movzx eax, ax
pop ebx
add esp, 0x14
ret
cmp ax, 0xc
je 0x1006d998
cmp ax, 0xd
jne 0x1006d9b0
lea ecx, [edx + 0xc]
mov dword [esp + 0x14], 0
call fcn.1006d0f0
test eax, eax
mov dword [esp + 0x10], eax
jg 0x1006d9c4
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x14
ret
mov eax, dword [esp + 0x10]
mov esi, eax
mov eax, dword [esp + 0x14]
sub esi, eax
sar esi, 1
add esi, eax
lea ecx, [esi + esi*2]
lea edx, [ebp + ecx*4]
lea eax, [edx + ebx]
lea ecx, [eax + 0x10]
mov dword [esp + 0x18], eax
call fcn.1006d0f0
cmp edi, eax
mov dword [esp + 0x20], eax
jae 0x1006d9f4
mov dword [esp + 0x10], esi
jmp 0x1006da0b
mov ecx, dword [esp + 0x18]
add ecx, 0x14
call fcn.1006d0f0
cmp edi, eax
jbe 0x1006da1f
add esi, 1
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x14], eax
jl 0x1006d9c0
pop esi
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret
lea ecx, [esi + esi*2 + 6]
lea ecx, [ebp + ecx*4]
add ecx, ebx
call fcn.1006d0f0
cmp word [esp + 0x1c], 0xc
jne 0x1006d9b2
sub eax, dword [esp + 0x20]
pop esi
add eax, edi
pop edi
pop ebp
pop ebx
add esp, 0x14
ret