Function at 0x4b4f00
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x20
push ebx
mov ebx, ecx
push ebp
push esi
mov eax, dword [ebx + 0x33]
test eax, eax
je 0x4b514e
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x4b514e
cmp dword [eax + 0x10], 2
jne 0x4b514e
mov eax, dword [ebx + 0x27]
cmp word [eax + 2], 0
je 0x4b514e
call fcn.004d4520
push 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x10], eax
call fcn.004c57f0
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 0x27]
push 0
push ecx
mov ax, word [edx + 2]
push 0
push ebx
push eax
lea ecx, [esp + 0x28]
push 1
push ecx
lea ecx, [esp + 0x28]
call fcn.004d4580
cmp eax, 1
je 0x4b4ffd
mov edx, dword [esp + 0x1a]
mov ecx, dword [esp + 0x14]
call dword [edx*4 + 0x562e04]
test eax, eax
jne 0x4b4ffd
mov ecx, dword [esp + 0x14]
mov edx, 0x555448
call fcn.004c8440
test eax, eax
je 0x4b4ffd
mov eax, dword [esp + 0x14]
mov ecx, dword [0x5c99ec]
push eax
call fcn.004b26d0
mov ecx, dword [ebx + 0xc]
mov esi, eax
mov edx, dword [ecx]
call dword [edx + 0x30]
mov edx, dword [eax]
push 0
push ebx
push esi
mov ecx, eax
call dword [edx + 0x40]
mov ebp, eax
test ebp, ebp
je 0x4b4ffd
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4b4fd0
cmp eax, ebp
jne 0x4b4ffd
cmp word [ebp + 0x33], 0
jne 0x4b4fe0
mov eax, dword [ebp + 0x3a]
cmp dword [eax + 0x2a], 0x30
je 0x4b4ff2
mov ecx, dword [ebx + 0xc]
push 8
push 0x100
push ecx
mov ecx, ebp
call fcn.004a90b0
mov eax, dword [ebp + 0x2b]
test eax, eax
mov dword [esp + 0x10], eax
jne 0x4b501d
mov ebx, dword [ebx + 0x2b]
lea ecx, [esp + 0x14]
call fcn.004c58c0
mov ecx, dword [esp + 0xc]
call fcn.004d4570
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x20
ret 4
push edi
push eax
mov ecx, ebx
call fcn.004b48d0
mov byte [0x5c9b4c], 0x24
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x38]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 0x20
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x5c9b4c
mov eax, ecx
mov esi, edi
mov edi, 0x5c9b4d
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005441a0
mov edx, eax
add esp, 8
test edx, edx
je 0x4b50a0
lea edi, [edx + 1]
or ecx, 0xffffffff
xor eax, eax
push 0x20
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x5c9b4c
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005441a0
mov edx, eax
add esp, 8
test edx, edx
jne 0x4b506b
mov ecx, dword [0x5c99ec]
push 0x5c9b4c
call fcn.004b26d0
mov edi, dword [ebx + 0x2f]
push 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x38], eax
call fcn.004c57f0
mov ecx, ebp
call fcn.004c7b80
mov esi, eax
test esi, esi
je 0x4b5120
mov ecx, dword [esp + 0x34]
mov edx, dword [ebx + 0x37]
push 0
push ebx
push 0
push esi
push ecx
lea eax, [esp + 0x38]
push edx
push eax
lea ecx, [esp + 0x2c]
call fcn.004d4580
test eax, eax
jne 0x4b50fe
lea ecx, [esp + 0x24]
push ecx
mov ecx, edi
call fcn.004c58e0
jmp 0x4b5110
mov eax, dword [ebx + 0x37]
mov ecx, dword [edi + 6]
cmp ecx, eax
je 0x4b5110
push eax
mov ecx, edi
call fcn.004c5880
mov ecx, esi
add edi, 0xa
call fcn.004a8c30
mov esi, eax
test esi, esi
jne 0x4b50cf
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0x24]
mov dword [ebx + 0x2b], esi
call fcn.004c58c0
lea ecx, [esp + 0x18]
call fcn.004c58c0
mov ecx, dword [esp + 0x10]
call fcn.004d4570
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 4
mov eax, dword [ebx + 0x2b]
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 4