Function at 0x100841bd
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
cmp esi, 0x14
jb case.0x100842bb.8
mov edi, dword [ebp + 8]
xor ebx, ebx
push 2
movzx edx, word [edi]
mov eax, edx
mov word [ecx], dx
mov dword [ebp + 0xc], eax
mov ax, word [edi + 2]
mov word [ecx + 2], ax
mov ax, word [edi + 4]
mov word [ecx + 4], ax
mov ax, word [edi + 6]
mov word [ecx + 6], ax
pop eax
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x18], ebx
mov dword [ecx + 0x1c], ebx
cmp dx, ax
je 0x10084305
cmp dx, 9
je 0x10084305
cmp dx, 1
jne 0x1008424b
cmp esi, 0x20
jb case.0x100842bb.8
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], ebx
movzx eax, word [edi + 0x18]
cdq
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
movzx eax, word [edi + 0x1a]
push 0x20
mov dword [ecx + 0xc], eax
pop eax
jmp 0x100842e1
push 8
pop eax
cmp dx, ax
jne 0x100842a9
push 0x28
pop edx
cmp esi, edx
jb case.0x100842bb.8
mov eax, dword [edi + 0x14]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], ebx
mov eax, dword [edi + 0x18]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], ebx
movzx eax, word [edi + 0x20]
mov dword [ebp + 0xc], eax
movzx eax, word [edi + 0x22]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x100842a5
lea eax, [edx + 0xc]
cmp eax, esi
ja case.0x100842bb.8
mov eax, dword [edx + edi + 8]
add edx, 0xd
add edx, eax
cmp edx, esi
ja case.0x100842bb.8
cmp eax, 0x400
ja case.0x100842bb.8
inc ebx
cmp ebx, ecx
jb 0x10084285
mov eax, edx
jmp 0x100842e1
movzx eax, dx
add eax, 0xfffffffd
cmp eax, 0xb
ja case.0x100842bb.8
movzx eax, byte [eax + 0x1008439d]
jmp dword [eax*4 + 0x1008438d]
cmp esi, 0x18
jb case.0x100842bb.8
mov edi, dword [edi + 0x14]
mov dword [ecx + 0x10], edi
mov dword [ecx + 0x14], ebx
lea eax, [edi + 0x18]
cmp esi, eax
jb case.0x100842bb.8
cmp edi, 0x40000000
jbe 0x100842f4
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
push 0x18
pop eax
cmp esi, eax
jb case.0x100842bb.8
jmp 0x100842f4
push 0x14
pop eax
push 8
pop ecx
cmp dx, cx
jb 0x100842e1
add eax, 4
cmp esi, eax
jb case.0x100842bb.8
jmp 0x100842e1
cmp dx, ax
jne 0x10084334
push 0x20
pop eax
mov dword [ebp + 0xc], eax
cmp esi, eax
jb case.0x100842bb.8
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], ebx
mov eax, dword [edi + 0x14]
mov dword [ecx + 8], eax
mov eax, dword [edi + 0x18]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0x1c]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], ebx
jmp 0x10084362
push 0x38
pop eax
mov dword [ebp + 0xc], eax
cmp esi, eax
jb case.0x100842bb.8
mov eax, dword [edi + 0x10]
mov dword [ecx + 0x18], eax
mov eax, dword [edi + 0x14]
mov dword [ecx + 0x1c], eax
mov eax, dword [edi + 0x18]
mov dword [ecx + 0x10], eax
mov eax, dword [edi + 0x1c]
mov dword [ecx + 0x14], eax
mov eax, dword [edi + 0x2c]
mov dword [ecx + 8], eax
mov eax, dword [edi + 0x30]
mov dword [ecx + 0xc], eax
push dword [ebp + 0x10]
mov edi, ebx
call fcn.100822d9
mov ecx, eax
shld edx, ecx, 2
shl ecx, 2
add ecx, dword [ebp + 0xc]
adc edx, edi
cmp edx, ebx
ja 0x10084384
jb 0x10084386
cmp ecx, esi
jbe 0x10084386
mov ecx, ebx
mov eax, ecx
jmp 0x100842e1