Function at 0x4f35f0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x20
push esi
push edi
mov edi, dword [ebp + 8]
mov eax, dword [edi - 0xbc]
mov dword [esp + 8], eax
mov edx, dword [eax]
mov eax, dword [ebp + 0x10]
movzx esi, word [eax + 6]
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x4f363e
movzx esi, cx
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x4f3626
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x20000000
jne 0x4f3668
nop dword [eax]
movzx esi, cx
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x4f3650
and ecx, 0xf0000000
cmp ecx, 0x60000000
jne 0x4f3a5f
mov eax, dword [edi + 0x64]
mov ecx, edi
movzx eax, word [eax]
mov dword [edi + 0x7a], 0x45050015
mov word [edi + 0x78], ax
call fcn.004e9100
mov edx, dword [esi]
mov edi, dword [esp + 8]
mov dword [esp + 0x10], eax
nop dword [eax]
movzx ecx, dx
shl ecx, 4
add ecx, dword [edi]
mov dword [esp + 0x14], ecx
mov edx, dword [ecx]
mov eax, edx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x4f36a0
push ecx
push edi
call fcn.004f41a0
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x2c], 0
mov ecx, dword [eax + 8]
lea eax, [esp + 0x28]
push eax
mov eax, edi
shr ecx, 2
mov edi, dword [ebp + 8]
mov dword [esp + 0x2c], ecx
push dword [eax + 0x18]
push dword [edi + 0x54]
call fcn.004a61c0
add esp, 0x14
cmp dword [eax + 4], 0xfffffffd
je 0x4f3a67
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
shr eax, 0x1c
cmp eax, 4
jne 0x4f3720
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], 0
mov dword [eax + 4], 0
jmp 0x4f373d
test eax, eax
je 0x4f3732
cmp eax, 2
je 0x4f3732
cmp eax, 5
jne 0x4f3a6f
cmp dword [esp + 0xc], 0xa
je 0x4f3a6f
test dword [esi], 0x830000
je 0x4f377a
mov eax, dword [esp + 8]
mov edx, esi
mov ecx, edi
sub edx, dword [eax]
sar edx, 4
call fcn.004e5930
mov ecx, 0x6400
movzx eax, ax
mov word [edi + 0x7c], cx
mov ecx, dword [esp + 0x10]
mov word [edi + 0x78], cx
mov ecx, edi
mov word [edi + 0x7a], ax
call fcn.004e9100
mov dword [esp + 0x10], eax
push esi
push dword [esp + 0xc]
push dword [ebp + 0xc]
push edi
call fcn.004f3a80
movzx ecx, ax
add esp, 0x10
mov eax, dword [esp + 0xc]
movzx eax, ax
mov word [edi + 0x78], cx
mov ecx, dword [esp + 0x10]
mov dword [esp + 8], eax
or eax, 0x6300
mov word [edi + 0x7a], cx
mov ecx, edi
mov word [edi + 0x7c], ax
call fcn.004e9100
mov edx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x10], edx
mov eax, dword [eax]
mov ecx, eax
and ecx, 0xf8000000
mov dword [esp + 0x1c], eax
cmp ecx, 0x8000000
jne 0x4f390a
mov edx, dword [edi + 0x54]
mov dword [esp + 0xc], edx
mov eax, dword [edx + 0x10]
mov dword [esp + 0x14], eax
mov esi, dword [eax - 4]
mov ecx, esi
and ecx, 3
jne 0x4f3817
mov eax, dword [esi - 4]
and eax, 0xff000000
cmp eax, 0x1000000
jne 0x4f3817
mov eax, dword [edi + 0x64]
mov edx, 0x7fff
mov dword [eax], edx
lea eax, [ecx + 1]
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x14]
mov dword [esp + 8], eax
mov eax, dword [edi + 0x58]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0x64]
mov eax, dword [eax - 4]
mov dword [esp + 0x18], eax
test ecx, ecx
jne 0x4f3a6f
cmp dword [edi + 0xb8], ecx
jle 0x4f3a6f
mov ecx, dword [esp + 0x14]
mov dword [edi + 0x58], esi
movzx edi, byte [esi - 3]
inc edi
mov dword [edx + 0x14], ecx
lea eax, [edi*8]
sub ecx, eax
lea esi, [edi*4]
mov dword [edx + 0x10], ecx
mov ecx, dword [ebp + 8]
push ecx
mov eax, dword [ecx + 0x64]
mov dword [eax - 4], 0x1007ffe
sub dword [ecx + 0x64], esi
sub dword [ecx + 0x70], edi
dec dword [ecx + 0xb8]
mov dword [ecx + 0x6c], edi
call fcn.004cb9f0
mov eax, dword [esp + 0x10]
add esp, 4
mov ecx, dword [esp + 0x14]
xor edx, edx
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 8]
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp + 8]
add dword [ecx + 0x64], esi
mov eax, dword [ecx + 0x64]
add dword [ecx + 0x70], edi
inc dword [ecx + 0xb8]
mov edi, dword [ebp + 8]
mov dword [ecx + 0x6c], 1
mov ecx, dword [esp + 0x18]
mov dword [eax - 4], ecx
mov ecx, edi
mov eax, dword [esp + 0x1c]
mov dword [edi + 0x58], eax
call fcn.004e5930
movzx eax, ax
mov ecx, 0x990
mov word [edi + 0x7a], ax
mov edx, 0x2007ffd
mov eax, dword [edi + 0x64]
mov word [edi + 0x7c], cx
mov ecx, dword [esp + 0x10]
mov word [edi + 0x78], cx
mov dword [edi + 0x130], 3
mov dword [eax], edx
mov eax, 1
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0xc]
cmp eax, 5
je 0x4f3a0e
cmp eax, 0x15
je 0x4f3a0e
cmp eax, 0x16
je 0x4f3a0e
mov ecx, dword [esp + 0x1c]
and ecx, 0xf0000000
cmp ecx, 0x50000000
je 0x4f3a0e
cmp eax, 0xd
je 0x4f39d7
cmp eax, 0x14
je 0x4f39d7
cmp eax, 0xf
je 0x4f39a0
cmp eax, 0x11
je 0x4f39a0
cmp eax, 0x10
je 0x4f3969
cmp eax, 0x12
jne 0x4f3a4b
mov eax, 0x5b13
mov word [edi + 0x78], dx
mov word [edi + 0x7c], ax
mov ecx, edi
mov eax, dword [esp + 8]
or eax, 0x260
mov word [edi + 0x7a], ax
call fcn.004e9100
mov edx, eax
mov eax, dword [edi + 0x64]
mov dword [eax], edx
mov eax, 1
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, 0x5b13
mov word [edi + 0x78], dx
mov word [edi + 0x7c], ax
mov ecx, edi
mov eax, dword [esp + 8]
or eax, 0xa60
mov word [edi + 0x7a], ax
call fcn.004e9100
mov edx, eax
mov eax, dword [edi + 0x64]
mov dword [eax], edx
mov eax, 1
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, 0x5b0e
mov word [edi + 0x78], dx
mov word [edi + 0x7c], ax
mov ecx, edi
mov eax, dword [esp + 8]
or eax, 0x1c0
mov word [edi + 0x7a], ax
call fcn.004e9100
mov edx, eax
mov eax, dword [edi + 0x64]
mov dword [eax], edx
mov eax, 1
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
movzx edx, word [esi]
mov ecx, edi
call fcn.004e5930
mov ecx, 0x548a
mov word [edi + 0x78], ax
mov word [edi + 0x7c], cx
mov ecx, dword [esp + 0x10]
mov word [edi + 0x7a], cx
mov ecx, edi
call fcn.004e9100
mov edx, eax
mov eax, dword [esp + 0xc]
cmp eax, 0x15
je 0x4f3a44
cmp eax, 0x16
jne 0x4f3a4b
mov byte [edi + 0x134], 1
mov eax, dword [edi + 0x64]
mov dword [eax], edx
mov eax, 1
mov byte [edi + 0x75], 1
pop edi
pop esi
mov esp, ebp
pop ebp
ret
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push 5
push edi
call fcn.004aaa80
push 0x17
push edi
call fcn.004aaa80
int3