Function at 0x43eed0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov edx, 0x3f
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x10
mov esi, dword [ecx + 0x10]
mov eax, dword [ecx + 0x58]
mov ebp, dword [esp + 0x24]
shr esi, 3
and esi, 0x3f
add eax, esi
sub edx, esi
mov byte [eax], pe_nt_image_headers32
lea ecx, [eax + 1]
cmp edx, 7
ja 0x43f010
xor esi, esi
cmp edx, 4
jb 0x43f1d8
mov dword [eax + 1], 0
add eax, 5
and eax, 0xfffffffc
mov dword [ecx + edx - 4], 0
sub ecx, eax
add edx, ecx
and edx, 0xfffffffc
cmp edx, 4
jb 0x43ef78
lea ecx, [edx - 1]
mov edi, edx
shr ecx, 2
and edi, 0xfffffffc
and ecx, 1
mov dword [esp + 8], ecx
mov ecx, 4
mov dword [eax], 0
cmp ecx, edx
jae 0x43ef78
mov edx, dword [esp + 8]
test edx, edx
je 0x43ef66
mov ecx, 8
mov dword [eax + 4], 0
cmp ecx, edi
jae 0x43ef78
mov dword [eax + ecx], esi
mov dword [eax + ecx + 4], esi
add ecx, 8
cmp ecx, edi
jb 0x43ef66
lea esi, [esi]
cmp byte [ebx + 0x5c], 0
jne 0x43f350
lea esi, [ebx + 0x18]
mov dword [esp], ebx
lea edi, [ebx + 0x1c]
mov dword [esp + 4], esi
and edi, 0xfffffffc
call fcn.0043dea0
mov ecx, esi
xor eax, eax
mov dword [ebx + 0x18], 0
sub ecx, edi
mov dword [esi + 0x34], 0
add ecx, 0x38
shr ecx, 2
rep stosd dword es:[edi], eax
cmp byte [ebx + 0x5c], 0
jne 0x43f090
mov eax, dword [ebx + 0x58]
mov edx, dword [ebx + 0x10]
mov dword [eax + 0x38], edx
mov eax, dword [ebx + 0x58]
mov edx, dword [ebx + 0x14]
mov dword [eax + 0x3c], edx
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.0043dea0
cmp byte [ebx + 0x5c], 0
jne 0x43f200
mov eax, dword [ebx]
mov dword [ebp], eax
mov eax, dword [ebx + 4]
mov dword [ebp + 4], eax
mov eax, dword [ebx + 8]
mov dword [ebp + 8], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0xc], eax
add esp, 0x10
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov edx, 0x37
sub edx, esi
xor esi, esi
cmp edx, 4
jb 0x43f1b0
mov dword [eax + 1], 0
add eax, 5
and eax, 0xfffffffc
mov dword [ecx + edx - 4], 0
sub ecx, eax
add edx, ecx
and edx, 0xfffffffc
cmp edx, 4
jb 0x43f082
and edx, 0xfffffffc
mov dword [eax], 0
lea ecx, [edx - 1]
shr ecx, 2
mov edi, ecx
mov ecx, 4
and edi, 1
cmp ecx, edx
jae 0x43f082
test edi, edi
je 0x43f074
mov ecx, 8
mov dword [eax + 4], 0
cmp ecx, edx
jae 0x43f082
mov dword [eax + ecx], esi
mov dword [eax + ecx + 4], esi
add ecx, 8
cmp ecx, edx
jb 0x43f074
cmp byte [ebx + 0x5c], 0
lea esi, [ebx + 0x18]
je 0x43efbd
nop
cmp byte [ebx + 0x5d], 0
mov eax, dword [ebx + 0x58]
je 0x43f230
movzx ecx, byte [eax]
movzx edx, byte [eax + 3]
rol word [eax + 1], 8
rol word [eax + 5], 8
mov byte [eax], dl
movzx edx, byte [eax + 7]
mov byte [eax + 3], cl
movzx ecx, byte [eax + 4]
mov byte [eax + 4], dl
movzx edx, byte [eax + 0xb]
mov byte [eax + 7], cl
movzx ecx, byte [eax + 8]
mov byte [eax + 8], dl
movzx edx, byte [eax + 0xf]
mov byte [eax + 0xb], cl
movzx ecx, byte [eax + 0xc]
mov byte [eax + 0xc], dl
movzx edx, byte [eax + 0x13]
mov byte [eax + 0xf], cl
movzx ecx, byte [eax + 0x10]
mov byte [eax + 0x10], dl
movzx edx, byte [eax + 0x17]
mov byte [eax + 0x13], cl
movzx ecx, byte [eax + 0x14]
rol word [eax + 9], 8
rol word [eax + 0xd], 8
rol word [eax + 0x11], 8
mov byte [eax + 0x14], dl
movzx edx, byte [eax + 0x1b]
mov byte [eax + 0x17], cl
movzx ecx, byte [eax + 0x18]
mov byte [eax + 0x18], dl
movzx edx, byte [eax + 0x1f]
mov byte [eax + 0x1b], cl
movzx ecx, byte [eax + 0x1c]
mov byte [eax + 0x1c], dl
movzx edx, byte [eax + 0x23]
mov byte [eax + 0x1f], cl
movzx ecx, byte [eax + 0x20]
mov byte [eax + 0x20], dl
movzx edx, byte [eax + 0x27]
mov byte [eax + 0x23], cl
movzx ecx, byte [eax + 0x24]
mov byte [eax + 0x24], dl
movzx edx, byte [eax + 0x2b]
mov byte [eax + 0x27], cl
movzx ecx, byte [eax + 0x28]
rol word [eax + 0x15], 8
mov byte [eax + 0x28], dl
mov byte [eax + 0x2b], cl
rol word [eax + 0x19], 8
rol word [eax + 0x1d], 8
rol word [eax + 0x21], 8
rol word [eax + 0x25], 8
rol word [eax + 0x29], 8
movzx ecx, byte [eax + 0x2c]
movzx edx, byte [eax + 0x2f]
rol word [eax + 0x2d], 8
mov byte [eax + 0x2f], cl
movzx ecx, byte [eax + 0x30]
mov byte [eax + 0x2c], dl
movzx edx, byte [eax + 0x33]
mov byte [eax + 0x33], cl
movzx ecx, byte [eax + 0x34]
mov byte [eax + 0x30], dl
movzx edx, byte [eax + 0x37]
rol word [eax + 0x31], 8
mov byte [eax + 0x34], dl
mov byte [eax + 0x37], cl
rol word [eax + 0x35], 8
jmp 0x43efbd
lea esi, [ebx + 0x18]
test edx, edx
je 0x43efb3
mov byte [eax + 1], 0
test dl, 2
je 0x43efb3
xor edi, edi
mov word [ecx + edx - 2], di
jmp 0x43efb3
test edx, edx
je 0x43ef78
mov byte [eax + 1], 0
test dl, 2
je 0x43ef78
xor eax, eax
mov word [ecx + edx - 2], ax
jmp 0x43ef78
cmp byte [ebx + 0x5d], 0
je 0x43f2c0
mov esi, dword [ebx]
mov ecx, dword [ebx + 4]
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
bswap esi
bswap ecx
mov dword [ebx], esi
bswap edx
bswap eax
mov dword [ebx + 4], ecx
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], eax
jmp 0x43efe5
rol word [eax], 8
rol word [eax + 2], 8
rol word [eax + 4], 8
rol word [eax + 6], 8
rol word [eax + 8], 8
rol word [eax + 0xa], 8
rol word [eax + 0xc], 8
rol word [eax + 0xe], 8
rol word [eax + 0x10], 8
rol word [eax + 0x12], 8
rol word [eax + 0x14], 8
rol word [eax + 0x16], 8
rol word [eax + 0x18], 8
rol word [eax + 0x1a], 8
rol word [eax + 0x1c], 8
rol word [eax + 0x1e], 8
rol word [eax + 0x20], 8
rol word [eax + 0x22], 8
rol word [eax + 0x24], 8
rol word [eax + 0x26], 8
rol word [eax + 0x28], 8
rol word [eax + 0x2a], 8
rol word [eax + 0x2c], 8
rol word [eax + 0x2e], 8
rol word [eax + 0x30], 8
rol word [eax + 0x32], 8
rol word [eax + 0x34], 8
rol word [eax + 0x36], 8
jmp 0x43efbd
movzx ecx, byte [ebx + 5]
movzx edx, byte [ebx + 7]
mov ch, byte [ebx + 4]
movzx eax, byte [ebx + 6]
shl edx, 0x10
movzx esi, byte [ebx + 0xb]
movzx edi, byte [ebx + 0xf]
movzx ecx, cx
shl eax, 0x18
shl esi, 0x10
or ecx, edx
movzx edx, byte [ebx + 9]
mov dh, byte [ebx + 8]
or ecx, eax
movzx eax, byte [ebx + 0xa]
shl edi, 0x10
movzx edx, dx
mov dword [ebx + 4], ecx
shl eax, 0x18
or edx, esi
movzx esi, byte [ebx + 0xe]
or edx, eax
movzx eax, byte [ebx + 0xd]
mov ah, byte [ebx + 0xc]
shl esi, 0x18
mov dword [ebx + 8], edx
movzx eax, ax
or eax, edi
movzx edi, byte [ebx + 3]
or eax, esi
mov dword [esp + 8], eax
movzx eax, byte [ebx + 1]
shl edi, 0x10
mov ah, byte [ebx]
mov dword [esp + 0xc], edi
movzx edi, byte [ebx + 2]
movzx esi, ax
mov eax, dword [esp + 0xc]
shl edi, 0x18
or esi, eax
mov eax, dword [esp + 8]
or esi, edi
mov dword [ebx], esi
mov dword [ebx + 0xc], eax
jmp 0x43efe5
cmp byte [ebx + 0x5d], 0
mov eax, dword [ebx + 0x58]
je 0x43f490
movzx ecx, byte [eax]
movzx edx, byte [eax + 3]
rol word [eax + 1], 8
rol word [eax + 5], 8
mov byte [eax], dl
movzx edx, byte [eax + 7]
mov byte [eax + 3], cl
movzx ecx, byte [eax + 4]
mov byte [eax + 4], dl
movzx edx, byte [eax + 0xb]
mov byte [eax + 7], cl
movzx ecx, byte [eax + 8]
mov byte [eax + 8], dl
movzx edx, byte [eax + 0xf]
mov byte [eax + 0xb], cl
movzx ecx, byte [eax + 0xc]
mov byte [eax + 0xc], dl
movzx edx, byte [eax + 0x13]
mov byte [eax + 0xf], cl
movzx ecx, byte [eax + 0x10]
mov byte [eax + 0x10], dl
movzx edx, byte [eax + 0x17]
mov byte [eax + 0x13], cl
movzx ecx, byte [eax + 0x14]
rol word [eax + 9], 8
rol word [eax + 0xd], 8
rol word [eax + 0x11], 8
mov byte [eax + 0x14], dl
movzx edx, byte [eax + 0x1b]
mov byte [eax + 0x17], cl
movzx ecx, byte [eax + 0x18]
mov byte [eax + 0x18], dl
movzx edx, byte [eax + 0x1f]
mov byte [eax + 0x1b], cl
movzx ecx, byte [eax + 0x1c]
mov byte [eax + 0x1c], dl
movzx edx, byte [eax + 0x23]
mov byte [eax + 0x1f], cl
movzx ecx, byte [eax + 0x20]
mov byte [eax + 0x20], dl
movzx edx, byte [eax + 0x27]
mov byte [eax + 0x23], cl
movzx ecx, byte [eax + 0x24]
mov byte [eax + 0x24], dl
movzx edx, byte [eax + 0x2b]
mov byte [eax + 0x27], cl
movzx ecx, byte [eax + 0x28]
rol word [eax + 0x15], 8
mov byte [eax + 0x28], dl
mov byte [eax + 0x2b], cl
rol word [eax + 0x19], 8
rol word [eax + 0x1d], 8
rol word [eax + 0x21], 8
rol word [eax + 0x25], 8
rol word [eax + 0x29], 8
movzx ecx, byte [eax + 0x2c]
movzx edx, byte [eax + 0x2f]
rol word [eax + 0x2d], 8
mov byte [eax + 0x2f], cl
movzx ecx, byte [eax + 0x30]
mov byte [eax + 0x2c], dl
movzx edx, byte [eax + 0x33]
mov byte [eax + 0x33], cl
movzx ecx, byte [eax + 0x34]
mov byte [eax + 0x30], dl
movzx edx, byte [eax + 0x37]
mov byte [eax + 0x37], cl
movzx ecx, byte [eax + 0x38]
mov byte [eax + 0x34], dl
movzx edx, byte [eax + 0x3b]
mov byte [eax + 0x3b], cl
movzx ecx, byte [eax + 0x3c]
mov byte [eax + 0x38], dl
movzx edx, byte [eax + 0x3f]
rol word [eax + 0x31], 8
mov byte [eax + 0x3c], dl
mov byte [eax + 0x3f], cl
rol word [eax + 0x35], 8
rol word [eax + 0x39], 8
rol word [eax + 0x3d], 8
jmp 0x43ef82
rol word [eax], 8
rol word [eax + 2], 8
rol word [eax + 4], 8
rol word [eax + 6], 8
rol word [eax + 8], 8
rol word [eax + 0xa], 8
rol word [eax + 0xc], 8
rol word [eax + 0xe], 8
rol word [eax + 0x10], 8
rol word [eax + 0x12], 8
rol word [eax + 0x14], 8
rol word [eax + 0x16], 8
rol word [eax + 0x18], 8
rol word [eax + 0x1a], 8
rol word [eax + 0x1c], 8
rol word [eax + 0x1e], 8
rol word [eax + 0x20], 8
rol word [eax + 0x22], 8
rol word [eax + 0x24], 8
rol word [eax + 0x26], 8
rol word [eax + 0x28], 8
rol word [eax + 0x2a], 8
rol word [eax + 0x2c], 8
rol word [eax + 0x2e], 8
rol word [eax + 0x30], 8
rol word [eax + 0x32], 8
rol word [eax + 0x34], 8
rol word [eax + 0x36], 8
rol word [eax + 0x38], 8
rol word [eax + 0x3a], 8
rol word [eax + 0x3c], 8
rol word [eax + 0x3e], 8
jmp 0x43ef82