Function at 0x4663d0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x1c
push ebp
mov ebp, dword [esp + 0x24]
cmp ebp, dword [esp + 0x28]
jb 0x4667fe
movzx ecx, word [eax]
mov edx, ecx
shl edx, 5
mov dword [esp + 0x10], edx
movzx edx, word [eax + 2]
push ebx
push esi
mov esi, edx
shl esi, 5
mov dword [esp + 0x1c], esi
movzx esi, word [eax + 4]
push edi
mov edi, esi
shl edi, 5
mov dword [esp + 0x24], edi
movzx edi, word [eax + 6]
mov eax, edi
shl eax, 5
mov dword [esp + 0x28], eax
jmp 0x466424
mov ebp, dword [esp + 0x30]
mov ax, word [ebp]
movzx ebx, word [ebp - 2]
sub ebp, 2
sar bx, 2
sar ax, 2
movzx ebx, bx
movzx eax, ax
mov dword [esp + 0x18], ebx
sub ebp, 2
and ebx, 0xfffffffe
add ebx, ebx
mov dword [esp + 0x30], ebp
mov ebp, eax
and eax, 1
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
movzx ebx, bx
and ebp, 0xfffffffe
and eax, 1
add ebp, ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], eax
movsx ebx, bx
movzx ebp, bp
movsx eax, bp
lea eax, [ebx + eax*8]
mov ebx, dword [esp + 0x38]
lea eax, [ebx + eax*2]
movzx ebx, word [esp + 0x1c]
add word [eax], bx
movzx ebx, word [esp + 0x20]
add word [eax + 2], bx
movzx ebx, word [esp + 0x24]
add eax, 2
add word [eax + 2], bx
movzx ebx, word [esp + 0x28]
add eax, 2
add word [eax + 2], bx
mov ebx, dword [esp + 0x10]
add eax, 2
test bx, bx
jne 0x466585
mov ebx, dword [esp + 0x18]
test bx, bx
jne 0x46664b
cmp word [esp + 0x14], bx
jle 0x466574
sub eax, 8
mov ebx, edi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x18], ebx
sub eax, 2
mov ebx, esi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x10], ebx
sub eax, 2
mov ebx, edx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x14], ebx
mov ebx, ecx
sub eax, 2
shl ebx, 4
add word [eax], bx
test bp, bp
jle 0x4667ed
sub eax, 0x40
add eax, 2
lea ebp, [ecx*8]
add word [eax - 2], bp
add eax, 2
lea ebp, [edx*8]
add word [eax - 2], bp
lea ebp, [esi*8]
add word [eax], bp
add eax, 2
lea ebp, [edi*8]
add word [eax], bp
add word [eax + 2], bx
movzx ebx, word [esp + 0x14]
add eax, 2
add word [eax + 2], bx
movzx ebx, word [esp + 0x10]
add eax, 2
add word [eax + 2], bx
movzx ebx, word [esp + 0x18]
add eax, 2
add eax, 2
jmp 0x4667ea
test bp, bp
jle 0x4667ed
sub eax, 0x40
jmp 0x4667c4
cmp bx, 1
jne 0x4667ed
mov ebx, dword [esp + 0x18]
test bx, bx
jne 0x466704
cmp word [esp + 0x14], bx
jle 0x4667bb
sub eax, 8
mov ebx, edi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x18], ebx
sub eax, 2
mov ebx, esi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x10], ebx
sub eax, 2
mov ebx, edx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x14], ebx
mov ebx, ecx
sub eax, 2
shl ebx, 4
add word [eax], bx
cmp bp, 0x1c
jge 0x4667ed
add eax, 0x40
add eax, 2
lea ebp, [ecx*8]
add word [eax - 2], bp
add eax, 2
lea ebp, [edx*8]
add word [eax - 2], bp
lea ebp, [esi*8]
add word [eax], bp
add eax, 2
lea ebp, [edi*8]
add word [eax], bp
add word [eax + 2], bx
movzx ebx, word [esp + 0x14]
add eax, 2
add word [eax + 2], bx
movzx ebx, word [esp + 0x10]
add eax, 2
add word [eax + 2], bx
movzx ebx, word [esp + 0x18]
add eax, 2
add eax, 2
jmp 0x4667ea
cmp bx, 1
jne 0x4667ed
cmp word [esp + 0x14], 0x1c
jge 0x466574
add eax, 2
mov ebx, ecx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x18], ebx
add eax, 2
mov ebx, edx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x14], ebx
add eax, 2
mov ebx, esi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x10], ebx
mov ebx, edi
add eax, 2
shl ebx, 4
add word [eax], bx
test bp, bp
jle 0x4667ed
sub eax, 0x40
sub eax, 2
lea ebp, [edi*8]
add word [eax + 2], bp
sub eax, 2
lea ebp, [esi*8]
add word [eax + 2], bp
lea ebp, [edx*8]
add word [eax], bp
sub eax, 2
lea ebp, [ecx*8]
add word [eax], bp
add word [eax - 2], bx
movzx ebx, word [esp + 0x10]
sub eax, 2
add word [eax - 2], bx
movzx ebx, word [esp + 0x14]
sub eax, 2
add word [eax - 2], bx
movzx ebx, word [esp + 0x18]
sub eax, 2
sub eax, 2
jmp 0x4667ea
cmp bx, 1
jne 0x4667ed
cmp word [esp + 0x14], 0x1c
jge 0x4667bb
add eax, 2
mov ebx, ecx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x18], ebx
add eax, 2
mov ebx, edx
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x14], ebx
add eax, 2
mov ebx, esi
shl ebx, 4
add word [eax], bx
mov dword [esp + 0x10], ebx
mov ebx, edi
add eax, 2
shl ebx, 4
add word [eax], bx
cmp bp, 0x1c
jge 0x4667ed
add eax, 0x40
sub eax, 2
lea ebp, [edi*8]
add word [eax + 2], bp
sub eax, 2
lea ebp, [esi*8]
add word [eax + 2], bp
lea ebp, [edx*8]
add word [eax], bp
sub eax, 2
lea ebp, [ecx*8]
add word [eax], bp
add word [eax - 2], bx
movzx ebx, word [esp + 0x10]
sub eax, 2
add word [eax - 2], bx
movzx ebx, word [esp + 0x14]
sub eax, 2
add word [eax - 2], bx
movzx ebx, word [esp + 0x18]
sub eax, 2
sub eax, 2
jmp 0x4667ea
cmp bp, 0x1c
jge 0x4667ed
add eax, 0x40
mov ebx, edi
shl ebx, 4
add word [eax], bx
sub eax, 2
mov ebx, esi
shl ebx, 4
add word [eax], bx
mov ebx, edx
sub eax, 2
shl ebx, 4
add word [eax], bx
mov ebx, ecx
sub eax, 2
shl ebx, 4
add word [eax], bx
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x30], eax
jae 0x466420
pop edi
pop esi
pop ebx
pop ebp
add esp, 0x1c
ret