Function at 0x4f7236
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x290
mov esi, edx
mov ebx, ecx
lea edi, [esp + 0x18]
push 0x88
push edx
push edi
call fcn.00616830
add esp, 0xc
mov eax, dword [ebx + 0x8c]
cmp eax, dword [edi]
jbe 0x4f72b6
push 0x1d
pop edx
mov ecx, str.exceeded_max_validation_depth
call fcn.00489b0b
lea esi, [esp + 0x150]
mov edx, eax
mov ecx, esi
call fcn.004be086
push 8
pop edx
mov ecx, 0x90
call fcn.005086b2
mov ebx, eax
push 0x20
pop ecx
mov edi, eax
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x20]
mov dword [eax + 0x80], 0x80000000
call fcn.004be0c8
mov edx, 0x738de8
jmp 0x4f74e1
cmp byte [esp + 0x99], 0
je 0x4f72eb
mov ecx, ebx
mov edx, esi
call fcn.004f74fd
mov esi, eax
push 8
pop ecx
push 4
pop edx
call fcn.005086b2
mov dword [eax], esi
mov ebx, eax
mov dword [eax + 4], 0x738bf0
mov edx, 0x738db4
jmp 0x4f74e1
mov edx, dword [esp + 0x50]
test edx, edx
je 0x4f72f7
mov edx, dword [esp + 0x4c]
lea esi, [esp + 0x150]
mov ecx, esi
call fcn.004c28e2
cmp word [esi], 2
je 0x4f74eb
push 0x13
pop ecx
lea edi, [esp + 0x1e8]
lea esi, [esp + 0x150]
mov edx, ebx
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x150]
call fcn.004f6fb7
lea eax, [esp + 0x20]
cmp byte [eax + 0x24], 2
jne 0x4f7358
lea esi, [esp + 0xc8]
mov ecx, esi
call fcn.004b6535
lea edi, [esp + 0x20]
mov ecx, edi
call fcn.004be124
push 0xa
pop ecx
rep movsd dword es:[edi], dword [esi]
mov al, 1
lea esi, [esp + 0xc8]
mov byte [esp + 0x44], al
xor eax, eax
mov byte [esi], al
push 8
pop edx
mov ecx, esi
call fcn.004ad771
push 6
pop edx
mov ecx, esi
call fcn.004ad771
push 7
pop edx
mov ecx, esi
call fcn.004ad771
push 4
pop edx
mov ecx, esi
call fcn.004ad771
mov al, byte [esi]
lea edx, [esp + 0xa0]
xor ecx, ecx
lea edi, [esp + 0xb4]
lea esi, [esp + 0x20]
mov dword [esp + 8], 0
mov byte [edx + 1], al
mov byte [edx], cl
mov cl, 1
mov byte [edi + 1], al
mov byte [edi], cl
mov ecx, esi
call fcn.004b654c
mov ecx, esi
mov edx, edi
call fcn.004b654c
mov word [esp + 0x97], 1
cmp dword [esp + 0x50], 0
je 0x4f73f3
mov eax, dword [esp + 0x4c]
movzx ecx, word [eax + 0x44]
movzx eax, word [eax + 0x46]
mov dword [esp + 8], ecx
mov word [esp + 6], ax
jmp 0x4f73f3
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x18]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
push 0x88
push eax
lea esi, [esp + 0xd0]
push esi
call fcn.00616830
add esp, 0xc
mov ecx, ebx
mov edx, esi
call fcn.004f74fd
mov dword [esp + 0xc], eax
lea edi, [esp + 0xd4]
push 0x13
pop ecx
lea esi, [esp + 0x1e8]
rep movsd dword es:[edi], dword [esi]
push 0x16
pop ecx
lea edi, [esp + 0x234]
lea esi, [esp + 0xc8]
rep movsd dword es:[edi], dword [esi]
push 8
pop edx
mov ecx, 0x598
call fcn.005086b2
mov ebx, eax
push 0x98
lea eax, [esp + 0x154]
push eax
push ebx
call fcn.00616830
add esp, 0xc
mov eax, dword [esp + 0x10]
movzx edi, word [esp + 6]
mov ecx, dword [esp + 0xc]
mov dword [ebx + 0x9c], eax
mov eax, dword [esp + 0x14]
mov dword [ebx + 0x98], eax
mov eax, dword [esp + 8]
mov word [ebx + 0xa0], ax
mov word [ebx + 0xa2], di
mov edi, ebx
mov dword [ebx + 0xb0], 0x3b9aca00
mov dword [ebx + 0x4b0], ecx
mov dword [ebx + 0x4b4], 0x738bf0
mov dword [ebx + 0x538], 0x80000002
add edi, 0x53c
push 0x16
pop ecx
lea esi, [esp + 0x234]
mov edx, 0x738da0
rep movsd dword es:[edi], dword [esi]
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x15
pop edx
mov ecx, 0x738d78
push 0x738d90
call fcn.0062d810