Function at 0x4fbff0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
cmp dword [ebp + 8], 0x34
push ebx
push esi
push edi
mov edi, edx
mov ebx, ecx
jl 0x4fc23f
movzx esi, byte [edi + 3]
movzx eax, byte [edi + 2]
shl esi, 8
or esi, eax
movzx eax, byte [edi + 1]
shl esi, 8
or esi, eax
movzx eax, byte [edi]
shl esi, 8
or esi, eax
mov dword [ebx], esi
movzx ecx, byte [edi + 7]
movzx eax, byte [edi + 6]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 4]
shl ecx, 8
or ecx, eax
mov dword [ebx + 4], ecx
movzx esi, byte [edi + 0xb]
movzx eax, byte [edi + 0xa]
shl esi, 8
or esi, eax
movzx eax, byte [edi + 9]
shl esi, 8
or esi, eax
movzx eax, byte [edi + 8]
shl esi, 8
or esi, eax
mov dword [ebx + 8], esi
je 0x4fc076
cmp esi, 3
jne 0x4fc23f
movzx edx, byte [edi + 0xf]
movzx eax, byte [edi + 0xe]
shl edx, 8
or edx, eax
movzx eax, byte [edi + 0xd]
shl edx, 8
or edx, eax
movzx eax, byte [edi + 0xc]
shl edx, 8
or edx, eax
mov dword [ebx + 0xc], edx
movzx eax, byte [edi + 0x10]
mov dword [ebx + 0x10], eax
mov dword [ebp + 8], eax
movzx eax, byte [edi + 0x11]
mov dword [ebx + 0x14], eax
movzx ecx, byte [edi + 0x13]
shl ecx, 8
mov dword [ebp - 4], eax
movzx eax, byte [edi + 0x12]
or ecx, eax
mov dword [ebx + 0x18], ecx
movzx ecx, byte [edi + 0x17]
movzx eax, byte [edi + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x15]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x14]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x1c], ecx
movzx eax, byte [edi + 0x1a]
mov dword [ebp - 0xc], ecx
movzx ecx, byte [edi + 0x1b]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x19]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x18]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x20], ecx
movzx eax, byte [edi + 0x1e]
mov dword [ebp - 8], ecx
movzx ecx, byte [edi + 0x1f]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x1d]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x1c]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x24], ecx
movzx eax, byte [edi + 0x22]
mov dword [ebp - 0x10], ecx
movzx ecx, byte [edi + 0x23]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x21]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x20]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x28], ecx
movzx ecx, byte [edi + 0x27]
movzx eax, byte [edi + 0x26]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x25]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x24]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x2c], ecx
movzx ecx, byte [edi + 0x2b]
movzx eax, byte [edi + 0x2a]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x29]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x28]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x30], ecx
movzx eax, byte [edi + 0x2e]
mov dword [ebp - 0x14], ecx
movzx ecx, byte [edi + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x2d]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x2c]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x34], ecx
movzx ecx, byte [edi + 0x33]
movzx eax, byte [edi + 0x32]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x31]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x30]
shl ecx, 8
or ecx, eax
lea eax, [edx - 0x7d0]
mov dword [ebx + 0x38], ecx
cmp eax, 0xb3b0
ja 0x4fc23f
mov ecx, dword [ebp + 8]
lea eax, [ecx - 1]
cmp eax, 1
ja 0x4fc23f
cmp dword [ebp - 4], 0x10
jne 0x4fc23f
mov eax, dword [ebp - 8]
test eax, eax
je 0x4fc202
cmp eax, 0x64
jne 0x4fc23f
cdq
idiv ecx
test edx, edx
jne 0x4fc23f
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x4fc215
cmp eax, 1
jne 0x4fc23f
cmp dword [ebp - 0x10], 0
jne 0x4fc221
cmp dword [ebp - 0x14], 0
je 0x4fc23f
cmp ecx, 1
jbe 0x4fc236
neg esi
pop edi
sbb esi, esi
neg esi
lea eax, [esi - 1]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret