Function at 0x4f6110
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x24
mov ecx, dword [esp + 0x28]
push ebx
push ebp
push esi
movzx ebx, word [ecx + 0x12]
movzx edx, word [ecx + 0x18]
movzx eax, byte [ecx + 9]
mov ebp, dword [ecx + 0x38]
mov dword [esp + 0x1c], edx
lea edx, [ebx + edx*2]
mov dword [esp + 0x24], ebx
push edi
mov edi, dword [ecx + 0x34]
mov dword [esp + 0x18], edx
lea edx, [eax + ebp]
movzx eax, byte [edx + 7]
mov dword [esp + 0x24], edi
mov ecx, dword [edi + 0x28]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
cmp eax, dword [esp + 0x3c]
jg 0x4f61e9
movzx esi, byte [edx + 1]
lea ebx, [ecx - 4]
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
mov dword [esp + 0x1c], esi
cmp esi, ebx
jle 0x4f619f
push 0x6214bc
push 0x11826
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.004d4a30
add esp, 0x14
mov eax, 0xb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
test esi, esi
je 0x4f61e9
movzx edi, byte [esi + ebp]
movzx eax, byte [esi + ebp + 1]
shl edi, 8
or edi, eax
cmp edi, ebx
jle 0x4f61ca
push 0x11829
call fcn.00548fb0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
test edi, edi
je 0x4f62f7
cmp byte [edi + ebp], 0
lea ebx, [edi + ebp]
jne 0x4f61e5
cmp byte [ebx + 1], 0
je 0x4f62fa
mov edi, dword [esp + 0x24]
movzx esi, byte [edx + 5]
lea eax, [ecx - 4]
mov dword [esp + 0x30], eax
mov ebx, ecx
movzx eax, byte [edx + 6]
shl esi, 8
or esi, eax
cmp dword [esp + 0x20], 0
mov dword [esp + 0x2c], esi
jbe 0x4f62ad
mov eax, dword [edi]
push ecx
push ebp
mov eax, dword [eax + 0xe0]
push eax
mov dword [esp + 0x48], eax
call fcn.00430da0
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [esp + 0x24], 0
add edi, ebp
movzx esi, byte [edi]
movzx eax, byte [edi + 1]
shl esi, 8
or esi, eax
cmp esi, dword [esp + 0x30]
jg 0x4f64a2
mov eax, dword [esp + 0x3c]
add eax, esi
push eax
mov eax, dword [esp + 0x3c]
push eax
mov eax, dword [eax + 0x4c]
call eax
movzx ecx, ax
add esp, 8
sub ebx, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4f6477
lea eax, [ecx + esi]
cmp eax, dword [esp + 0x10]
jg 0x4f6477
mov eax, ebx
mov byte [edi + 1], bl
sar eax, 8
mov byte [edi], al
mov eax, dword [esp + 0x3c]
push ecx
add eax, esi
push eax
lea eax, [ebx + ebp]
push eax
call fcn.00430da0
mov ecx, dword [esp + 0x30]
add esp, 0xc
inc ecx
add edi, 2
mov dword [esp + 0x24], ecx
cmp ecx, dword [esp + 0x20]
jl 0x4f6233
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
add ebp, esi
mov byte [edx + 7], 0
movzx eax, byte [edx + 7]
mov ecx, dword [esp + 0x38]
sub eax, esi
add eax, ebx
cmp eax, dword [ecx + 0x14]
je 0x4f64cd
push 0x6214bc
push 0x1186f
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.004d4a30
add esp, 0x14
mov eax, 0xb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
lea ebx, [edi + ebp]
mov eax, dword [esp + 0x18]
movzx edx, byte [esi + ebp + 2]
add eax, ebp
mov dword [esp + 0x30], eax
movzx eax, byte [esi + ebp + 3]
shl edx, 8
or edx, eax
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
movzx ecx, byte [eax + 5]
movzx eax, byte [eax + 6]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x20], ecx
cmp ecx, esi
mov ecx, dword [esp + 0x10]
jb 0x4f6351
push 0x11831
call fcn.00548fb0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
lea eax, [edx + esi]
mov dword [esp + 0x2c], eax
test edi, edi
je 0x4f6434
cmp eax, edi
jbe 0x4f6379
push 0x11834
call fcn.00548fb0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
movzx ecx, byte [ebx + 2]
movzx eax, byte [ebx + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x24], ecx
lea eax, [ecx + edi]
cmp eax, dword [esp + 0x10]
jle 0x4f63a8
push 0x11836
call fcn.00548fb0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
lea esi, [edx + ecx]
mov eax, edi
mov ecx, dword [esp + 0x1c]
sub eax, edx
sub eax, ecx
push eax
mov eax, dword [esp + 0x30]
add eax, ebp
push eax
lea eax, [esi + ecx]
add eax, ebp
push eax
call fcn.004397c0
mov edx, esi
add esp, 0xc
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x20]
mov eax, esi
sub eax, ecx
push eax
lea eax, [ecx + ebp]
lea ebx, [ecx + edx]
push eax
lea eax, [ebx + ebp]
mov dword [esp + 0x34], ebx
push eax
call fcn.004397c0
mov edx, dword [esp + 0x34]
add esp, 0xc
add edx, ebp
mov ebp, dword [esp + 0x30]
cmp edx, ebp
jae 0x4f646a
mov ebx, dword [esp + 0x24]
nop word [eax + eax]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
shl eax, 8
or eax, ecx
cmp eax, esi
jae 0x4f644d
mov ecx, dword [esp + 0x3c]
add ecx, eax
shr ecx, 8
add al, byte [esp + 0x3c]
mov byte [edx], cl
mov byte [edx + 1], al
jmp 0x4f645f
cmp eax, ecx
jle 0x4f63d5
push 0x1183a
call fcn.00548fb0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
cmp eax, edi
jae 0x4f645f
lea ecx, [eax + ebx]
shr ecx, 8
mov byte [edx], cl
lea ecx, [eax + ebx]
mov byte [edx + 1], cl
add edx, 2
cmp edx, ebp
jb 0x4f6410
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
jmp 0x4f62b7
push 0x6214bc
push 0x11861
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.004d4a30
add esp, 0x14
mov eax, 0xb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
push 0x6214bc
push 0x1185b
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.004d4a30
add esp, 0x14
mov eax, 0xb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
mov byte [edx + 6], bl
mov eax, ebx
sub ebx, esi
sar eax, 8
push ebx
push 0
mov byte [edx + 5], al
push ebp
mov word [edx + 1], 0
call fcn.0042d620
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret