Function at 0x473009
Capabilities:
Enumerate pe sections

Disassembly:
cmp byte [0x4a6e8c], 1
jne 0x473403
movzx ebp, word [0x4a6ea0]
test ebp, ebp
je 0x473403
mov cl, byte [0x4a6ed7]
and cl, 1
mov esi, dword [0x4a52e2]
mov edi, dword [0x4a6ea8]
shl ebp, cl
sub ebp, 0x10
test byte [0x4a52c1], 2
jne 0x47327d
test byte [0x4a6ed7], 2
jne 0x473149
test ebp, ebp
js 0x47312e
mov al, byte [esi]
sub al, 0x80
shl eax, 8
add word [edi], ax
mov al, byte [esi + 1]
sub al, 0x80
shl eax, 8
add word [edi + 2], ax
mov al, byte [esi + 2]
sub al, 0x80
shl eax, 8
add word [edi + 4], ax
mov al, byte [esi + 3]
sub al, 0x80
shl eax, 8
add word [edi + 6], ax
mov al, byte [esi + 4]
sub al, 0x80
shl eax, 8
add word [edi + 8], ax
mov al, byte [esi + 5]
sub al, 0x80
shl eax, 8
add word [edi + 0xa], ax
mov al, byte [esi + 6]
sub al, 0x80
shl eax, 8
add word [edi + 0xc], ax
mov al, byte [esi + 7]
sub al, 0x80
shl eax, 8
add word [edi + 0xe], ax
mov al, byte [esi + 8]
sub al, 0x80
shl eax, 8
add word [edi + 0x10], ax
mov al, byte [esi + 9]
sub al, 0x80
shl eax, 8
add word [edi + 0x12], ax
mov al, byte [esi + 0xa]
sub al, 0x80
shl eax, 8
add word [edi + 0x14], ax
mov al, byte [esi + 0xb]
sub al, 0x80
shl eax, 8
add word [edi + 0x16], ax
mov al, byte [esi + 0xc]
sub al, 0x80
shl eax, 8
add word [edi + 0x18], ax
mov al, byte [esi + 0xd]
sub al, 0x80
shl eax, 8
add word [edi + 0x1a], ax
mov al, byte [esi + 0xe]
sub al, 0x80
shl eax, 8
add word [edi + 0x1c], ax
mov al, byte [esi + 0xf]
sub al, 0x80
shl eax, 8
add word [edi + 0x1e], ax
add esi, 0x10
add edi, 0x20
sub ebp, 0x10
jns 0x473061
add ebp, 0x10
je 0x473403
mov al, byte [esi]
inc esi
sub al, 0x80
shl eax, 8
add word [edi], ax
add edi, 2
dec ebp
jne 0x473137
ret
test ebp, ebp
js 0x47325e
xor eax, eax
mov al, byte [esi]
sub eax, 0x80
shl eax, 0x11
add dword [edi], eax
xor eax, eax
mov al, byte [esi + 1]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 4], eax
xor eax, eax
mov al, byte [esi + 2]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 8], eax
xor eax, eax
mov al, byte [esi + 3]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0xc], eax
xor eax, eax
mov al, byte [esi + 4]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x10], eax
xor eax, eax
mov al, byte [esi + 5]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x14], eax
xor eax, eax
mov al, byte [esi + 6]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x18], eax
xor eax, eax
mov al, byte [esi + 7]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x1c], eax
xor eax, eax
mov al, byte [esi + 8]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x20], eax
xor eax, eax
mov al, byte [esi + 9]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x24], eax
xor eax, eax
mov al, byte [esi + 0xa]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x28], eax
xor eax, eax
mov al, byte [esi + 0xb]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x2c], eax
xor eax, eax
mov al, byte [esi + 0xc]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x30], eax
xor eax, eax
mov al, byte [esi + 0xd]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x34], eax
xor eax, eax
mov al, byte [esi + 0xe]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x38], eax
xor eax, eax
mov al, byte [esi + 0xf]
sub eax, 0x80
shl eax, 0x11
add dword [edi + 0x3c], eax
add esi, 0x10
add edi, 0x40
sub ebp, 0x10
jns 0x473151
add ebp, 0x10
je 0x473403
xor eax, eax
mov al, byte [esi]
sub eax, 0x80
inc esi
shl eax, 0x11
add dword [edi], eax
add edi, 4
dec ebp
jne 0x473267
ret
test byte [0x4a6ed7], 2
jne 0x473338
test ebp, ebp
js 0x47331f
mov ax, word [esi]
add word [edi], ax
mov ax, word [esi + 2]
add word [edi + 2], ax
mov ax, word [esi + 4]
add word [edi + 4], ax
mov ax, word [esi + 6]
add word [edi + 6], ax
mov ax, word [esi + 8]
add word [edi + 8], ax
mov ax, word [esi + 0xa]
add word [edi + 0xa], ax
mov ax, word [esi + 0xc]
add word [edi + 0xc], ax
mov ax, word [esi + 0xe]
add word [edi + 0xe], ax
mov ax, word [esi + 0x10]
add word [edi + 0x10], ax
mov ax, word [esi + 0x12]
add word [edi + 0x12], ax
mov ax, word [esi + 0x14]
add word [edi + 0x14], ax
mov ax, word [esi + 0x16]
add word [edi + 0x16], ax
mov ax, word [esi + 0x18]
add word [edi + 0x18], ax
mov ax, word [esi + 0x1a]
add word [edi + 0x1a], ax
mov ax, word [esi + 0x1c]
add word [edi + 0x1c], ax
mov ax, word [esi + 0x1e]
add word [edi + 0x1e], ax
add esi, 0x20
add edi, 0x20
sub ebp, 0x10
jns 0x473292
add ebp, 0x10
je 0x473403
mov ax, word [esi]
add esi, 2
add word [edi], ax
add edi, 2
dec ebp
jne 0x473328
ret
test ebp, ebp
js 0x4733ed
movsx eax, word [esi]
shl eax, 9
add dword [edi], eax
movsx eax, word [esi + 2]
shl eax, 9
add dword [edi + 4], eax
movsx eax, word [esi + 4]
shl eax, 9
add dword [edi + 8], eax
movsx eax, word [esi + 6]
shl eax, 9
add dword [edi + 0xc], eax
movsx eax, word [esi + 8]
shl eax, 9
add dword [edi + 0x10], eax
movsx eax, word [esi + 0xa]
shl eax, 9
add dword [edi + 0x14], eax
movsx eax, word [esi + 0xc]
shl eax, 9
add dword [edi + 0x18], eax
movsx eax, word [esi + 0xe]
shl eax, 9
add dword [edi + 0x1c], eax
movsx eax, word [esi + 0x10]
shl eax, 9
add dword [edi + 0x20], eax
movsx eax, word [esi + 0x12]
shl eax, 9
add dword [edi + 0x24], eax
movsx eax, word [esi + 0x14]
shl eax, 9
add dword [edi + 0x28], eax
movsx eax, word [esi + 0x16]
shl eax, 9
add dword [edi + 0x2c], eax
movsx eax, word [esi + 0x18]
shl eax, 9
add dword [edi + 0x30], eax
movsx eax, word [esi + 0x1a]
shl eax, 9
add dword [edi + 0x34], eax
movsx eax, word [esi + 0x1c]
shl eax, 9
add dword [edi + 0x38], eax
movsx eax, word [esi + 0x1e]
shl eax, 9
add dword [edi + 0x3c], eax
add esi, 0x20
add edi, 0x40
sub ebp, 0x10
jns 0x473340
add ebp, 0x10
je 0x473403
movsx eax, word [esi]
add esi, 2
shl eax, 9
add dword [edi], eax
add edi, 4
dec ebp
jne 0x4733f2
ret