Function at 0x48e8a0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0xc
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x20]
sub esi, edx
lea ebx, [eax - 1]
xor edx, edx
cmp ebx, 0x80
push edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x28], edx
jge 0x48eb6c
lea eax, [ebx + 0x70]
lea ebp, [ecx + 6]
shl eax, 4
mov dword [esp + 0x24], eax
cmp edx, esi
jg 0x48eb4e
push edx
push ebx
call fcn.0048ebd0
test eax, eax
je 0x48eb8a
xor ecx, ecx
push ebx
mov cl, byte [ebp + 5]
mov edi, ecx
mov ecx, 0x595800
mov dword [esp + 0x14], edi
call fcn.004907f0
mov esi, eax
cmp esi, 0xffffffff
jne 0x48e927
push ebx
mov ecx, 0x595800
call fcn.00490740
mov esi, eax
cmp esi, 0xffffffff
jne 0x48e927
xor esi, esi
cmp edi, 1
jne 0x48e938
mov edx, dword [ebp]
xor eax, eax
mov al, byte [edx + 4]
mov edi, eax
jmp 0x48e94b
cmp edi, 2
jne 0x48e949
mov ecx, dword [ebp]
xor edx, edx
mov dl, byte [ecx + 4]
mov edi, edx
jmp 0x48e94b
xor edi, edi
mov ecx, 0x595800
call fcn.004912d0
sub edi, esi
add eax, edi
cmp eax, 0x200
jg 0x48eb7b
push 0
push ebx
mov ecx, 0x595800
call fcn.00490bb0
push 0xffff
push ebx
mov ecx, 0x595800
call fcn.004901c0
push ebx
mov ecx, 0x595800
call fcn.00490540
mov edi, eax
mov ax, word [ebp - 2]
push 1
push eax
push edi
push ebx
mov ecx, 0x595800
mov dword [esp + 0x30], edi
call fcn.00490a20
cmp eax, 1
jne 0x48eb34
mov esi, dword [ebp]
xor ecx, ecx
mov cx, word [ebp - 2]
and edi, 0xffff
mov edx, ecx
add edi, 0x5b1c8c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x20]
mov ecx, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
push ebx
mov ecx, 0x595800
call fcn.004901c0
xor ecx, ecx
mov cl, byte [ebp + 4]
push ecx
push ebx
mov ecx, 0x595800
call fcn.004932d0
mov eax, dword [esp + 0x10]
push ebx
cmp eax, 1
mov ecx, 0x595800
jne 0x48ea12
call fcn.004907a0
test eax, eax
je 0x48ea21
mov dl, bl
inc dl
mov byte [eax], dl
jmp 0x48ea21
call fcn.004906f0
test eax, eax
je 0x48ea21
mov cl, bl
inc cl
mov byte [eax], cl
mov eax, dword [0x57ceac]
mov dl, byte [ebp + 0x304]
lea ecx, [ebp + 0x2f4]
xor edi, edi
mov byte [eax + ebx + 0xf00], dl
mov edx, dword [0x57ceac]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x20], edi
add eax, edx
mov edx, dword [ecx]
xor esi, esi
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
push edi
push ebx
mov ecx, 0x595800
call fcn.00490450
test eax, eax
je 0x48eae8
push edi
push ebx
mov ecx, 0x595800
call fcn.00491240
mov dl, byte [esi + ebp + 6]
mov edi, eax
mov eax, dword [0x57ceac]
push edx
push 0x40
add eax, 0x670
push edi
push eax
mov ecx, 0x595800
call fcn.00491bb0
mov cl, byte [esi + ebp + 0x100]
mov edx, dword [0x57ceac]
push ecx
push 0x40
add edx, 0x6b0
push edi
push edx
mov ecx, 0x595800
call fcn.00491bb0
mov al, byte [esi + ebp + 0x1fa]
mov ecx, 0x595800
push eax
mov eax, dword [0x57ceac]
push 0x200
add eax, 0x1000
push edi
push eax
inc esi
call fcn.00491b70
mov edi, dword [esp + 0x20]
inc edi
cmp edi, 0xfa
mov dword [esp + 0x20], edi
jl 0x48ea63
push 0
push ebx
mov ecx, 0x595800
call fcn.00492850
push 0x13
push ebx
mov ecx, 0x595800
call fcn.00492ba0
push ebx
mov ecx, 0x595800
call fcn.00492ff0
push ebx
mov ecx, 0x595800
call fcn.00492160
push ebx
mov ecx, 0x595800
call fcn.0049b3b0
mov ecx, 0x595800
call fcn.00490db0
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
inc ebx
add eax, 0x10
inc edx
add ebp, 0x307
cmp eax, 0xf00
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], edx
jl 0x48e8df
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xc
ret 0x10
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
add esp, 0xc
ret 0x10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret 0x10