Function at 0x4a2390
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xdc
push ebx
mov ebx, ecx
cmp dword [ebx], 0
push esi
push edi
je 0x4a2680
mov al, byte [ebx + 8]
cmp al, 0x64
jne 0x4a23c1
xor eax, eax
mov ax, word [ebx + 6]
push 1
mov ecx, 0x86de80
push eax
jmp 0x4a23ce
xor ecx, ecx
mov cx, word [ebx + 6]
push eax
push ecx
mov ecx, 0x86de50
call fcn.004609e0
mov edi, eax
test edi, edi
je 0x4a2680
mov edx, dword [0x864e88]
mov esi, dword [0x709a10]
push edx
push edi
mov ecx, ebx
call fcn.004a1af0
mov ecx, dword [0x71c2a4]
mov edx, dword [0x71c2a8]
add eax, 0x20
sub ecx, esi
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
jns 0x4a241e
mov ecx, dword [0x71c2a4]
add ecx, 0x10
mov dword [esp + 0x10], ecx
lea edx, [ecx + esi]
mov ecx, dword [0x70859c]
cmp edx, ecx
jle 0x4a2431
sub ecx, esi
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0xc]
test ecx, ecx
jge 0x4a2441
mov dword [esp + 0xc], 0
mov ecx, dword [esp + 0xc]
lea edx, [ecx + eax]
mov ecx, dword [0x7085a0]
cmp edx, ecx
jle 0x4a2458
sub ecx, eax
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
push eax
mov eax, dword [esp + 0x14]
add ecx, 0xa
push esi
push ecx
push eax
mov dword [esp + 0x1c], ecx
push edi
mov ecx, ebx
call fcn.004a21e0
mov bl, byte [ebp + 8]
xor eax, eax
test bl, bl
mov ecx, 0x19
lea edi, [esp + 0x80]
rep stosd dword es:[edi], eax
mov ecx, 0x19
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
je 0x4a24f8
movzx ecx, bl
push ecx
lea edx, [esp + 0x84]
push str._d__
push edx
call fcn.005cd489
add esp, 0xc
cmp bl, 0xa
jae 0x4a24c9
lea edi, [esp + 0x18]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4a24b8
mov ax, word [0x6bfb24]
mov word [edi], ax
lea eax, [esp + 0x80]
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a24d2
lea edi, [esp + 0x18]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4a24e0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov bl, byte [ebp + 0xc]
movzx ecx, bl
push ecx
lea edx, [esp + 0x84]
push 0x6c1bac
push edx
call fcn.005cd489
add esp, 0xc
cmp bl, 0xa
jae 0x4a2531
lea edi, [esp + 0x18]
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4a2520
mov ax, word [0x6bfb24]
mov word [edi], ax
lea eax, [esp + 0x80]
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a2540
lea edi, [esp + 0x18]
sub eax, esi
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4a2550
mov bl, byte [ebp + 0x10]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movzx ecx, bl
push ecx
lea edx, [esp + 0x84]
push 0x6c1bac
push edx
call fcn.005cd489
add esp, 0xc
cmp bl, 0xa
jae 0x4a25a1
lea edi, [esp + 0x18]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4a2590
mov ax, word [0x6bfb24]
mov word [edi], ax
lea eax, [esp + 0x80]
mov edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a25b0
lea edi, [esp + 0x18]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4a25c0
mov bl, byte [ebp + 0x14]
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movzx ecx, bl
push ecx
lea edx, [esp + 0x84]
push 0x6bcafc
push edx
call fcn.005cd489
add esp, 0xc
cmp bl, 0xa
jae 0x4a2611
lea edi, [esp + 0x18]
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4a2600
mov ax, word [0x6bfb24]
mov word [edi], ax
lea eax, [esp + 0x80]
mov esi, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a2620
lea edi, [esp + 0x18]
sub eax, esi
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4a2630
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x2209408
call fcn.005bfb50
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push ecx
lea ecx, [edx + eax - 0xf]
mov edx, dword [esp + 0x14]
push 0xffffffffffffffff
push ecx
add edx, 0xa
push edx
mov ecx, 0x2209408
call fcn.00541b70
mov ecx, 0x2209408
call fcn.005bfb50
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10