Function at 0x48c020
Capabilities:
Enumerate pe sections

Disassembly:
push edi
push esi
push ebp
push ebx
mov edi, dword [esp + 0x14]
sub esp, 0x5c
mov eax, edi
call fcn.0048bf44
mov ebp, dword [esp + 0x74]
mov dword [esp + 8], eax
mov dword [esp + 4], 0xf
mov dword [esp], ebp
mov dword [esp + 0xc], 0x33001
mov dword [esp + 0x10], 0xffff
call fcn.0045df80
test eax, eax
je 0x48c482
mov eax, dword [edi + 8]
mov edx, 0x1c
test eax, 0x1000000
jne 0x48c0f8
mov ebx, dword [edi + 0x14]
test ebx, ebx
je 0x48c0a0
test al, 8
je 0x48c08c
mov eax, ebx
mov edx, eax
add edx, edx
lea edx, [edx + eax*2 + 0x1c]
jmp 0x48c08e
mov eax, ebx
add eax, eax
mov ecx, dword [edi + 0x10]
add eax, eax
add eax, eax
imul eax, dword [edi + 0x1c]
add eax, edx
lea edx, [eax + ecx*8]
mov eax, dword [edi + 0x18]
test eax, eax
jle 0x48c0fd
imul esi, eax, 0x1c
mov eax, dword [edi + 0x68]
xor ecx, ecx
mov dword [esp + 0x58], ebp
mov ebp, eax
lea esi, [esi]
lea edi, [edi]
add edx, 0x18
mov eax, dword [ecx + ebp + 0x14]
add ecx, 0x1c
test eax, eax
je 0x48c0da
lea eax, [ebx*8]
lea eax, [eax + ebx*4]
add edx, eax
mov eax, dword [ecx + ebp - 4]
test eax, eax
je 0x48c0ee
lea eax, [ebx*8]
lea eax, [eax + ebx*4]
add edx, eax
cmp ecx, esi
jl 0x48c0c0
mov ebp, dword [esp + 0x58]
jmp 0x48c0fd
mov edx, 0x34
mov dword [esp], ebp
mov dword [esp + 8], edx
mov dword [esp + 4], 1
mov dword [esp + 0xc], 0x33001
mov dword [esp + 0x10], 0xffff
call fcn.0045df80
test eax, eax
je 0x48c482
movzx eax, byte [edi + 0x1c]
mov edx, dword [edi + 8]
lea ecx, [esp + 0x28]
shl eax, 0x10
or edx, eax
mov dword [esp + 0x18], edx
mov eax, dword [edi + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x18]
mov dword [esp], ecx
mov dword [esp + 0x24], eax
mov eax, dword [edi + 0x54]
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x58]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 0x5c]
mov dword [esp + 4], 0xc
mov dword [esp + 0x30], eax
call fcn.0045e260
lea eax, [esp + 0x18]
mov dword [esp + 4], 0x1c
mov dword [esp], eax
call fcn.00464470
lea eax, [esp + 0x18]
mov dword [esp], ebp
mov dword [esp + 8], 0x1c
mov dword [esp + 4], eax
call fcn.0045d700
test eax, eax
je 0x48c482
mov eax, dword [edi + 8]
test eax, 0x1000000
jne 0x48c2ac
mov edx, dword [edi + 0x14]
test edx, edx
je 0x48c2ac
test al, 8
je 0x48c1e7
mov dword [esp], ebp
mov eax, dword [edi + 0x30]
add edx, edx
mov dword [esp + 4], eax
add edx, edx
mov dword [esp + 8], edx
call fcn.0045d700
test eax, eax
je 0x48c482
mov eax, dword [edi + 0x1c]
test eax, eax
jle 0x48c224
mov esi, dword [edi + 0x14]
xor ebx, ebx
add esi, esi
add esi, esi
add esi, esi
test eax, eax
jle 0x48c224
lea esi, [esi]
mov dword [esp], ebp
mov eax, dword [edi + ebx*4 + 0x34]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
call fcn.0045e280
test eax, eax
je 0x48c478
inc ebx
mov eax, dword [edi + 0x1c]
cmp ebx, eax
jl 0x48c200
mov eax, dword [edi + 0x10]
test eax, eax
je 0x48c2ac
mov ebx, dword [edi + 0x2c]
je 0x48c2ac
mov esi, eax
mov dword [esp + 0x54], esi
mov eax, esi
mov esi, 8
mov edi, esi
mov esi, eax
lea esi, [esi]
movzx eax, word [ebx]
movzx edx, word [ebx + 2]
shl eax, 0x10
lea ecx, [esp + 0x34]
or edx, eax
mov dword [esp + 0x34], edx
movzx eax, word [ebx + 4]
movzx edx, word [ebx + 6]
shl eax, 0x10
mov dword [esp], ecx
mov dword [esp + 4], edi
add ebx, 8
or edx, eax
mov dword [esp + 0x38], edx
call fcn.00464470
lea eax, [esp + 0x34]
mov edx, 8
mov dword [esp], ebp
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.0045d700
test eax, eax
je 0x48c46e
dec esi
jne 0x48c250
mov edi, dword [esp + 0x70]
xor esi, esi
mov eax, dword [edi + 0x18]
test eax, eax
jle 0x48c3f0
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x54], eax
mov eax, dword [edi + 0x68]
mov edx, dword [ebx + eax + 4]
mov dword [esp + 0x3c], edx
mov edx, dword [ebx + eax + 8]
mov dword [esp + 0x40], edx
mov edx, dword [ebx + eax + 0xc]
mov dword [esp + 0x44], edx
mov eax, dword [ebx + eax + 0x10]
mov dword [esp + 0x48], eax
mov eax, dword [edi + 8]
test eax, 0x1000000
je 0x48c300
xor eax, eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], eax
jmp 0x48c330
mov eax, dword [edi + 0x68]
mov eax, dword [ebx + eax + 0x14]
test eax, eax
je 0x48c440
mov eax, 1
mov dword [esp + 0x4c], eax
mov eax, dword [edi + 0x68]
mov eax, dword [ebx + eax + 0x18]
test eax, eax
je 0x48c429
mov eax, 1
mov dword [esp + 0x50], eax
lea eax, [esp + 0x3c]
mov edx, 0x10
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0045e260
lea eax, [esp + 0x3c]
mov edx, 0x18
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00464470
lea eax, [esp + 0x3c]
mov edx, 0x18
mov dword [esp], ebp
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.0045d700
test eax, eax
je 0x48c464
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x48c3af
mov dword [esp], ebp
mov eax, dword [edi + 0x68]
mov eax, dword [ebx + eax + 0x14]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x14]
lea edx, [eax*8]
lea edx, [edx + eax*4]
mov dword [esp + 8], edx
call fcn.0045e280
test eax, eax
je 0x48c45a
mov eax, dword [esp + 0x50]
test eax, eax
je 0x48c3e3
mov dword [esp], ebp
mov eax, dword [edi + 0x68]
mov eax, dword [ebx + eax + 0x18]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x14]
lea edx, [eax*8]
lea edx, [edx + eax*4]
mov dword [esp + 8], edx
call fcn.0045e280
test eax, eax
je 0x48c450
inc esi
add ebx, 0x1c
cmp esi, dword [edi + 0x18]
jl 0x48c2c1
lea eax, [edi + 0x20]
mov dword [esp + 4], ebp
mov dword [esp], eax
call fcn.00494ee0
test eax, eax
je 0x48c482
mov dword [esp], 0x4f7a40
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
call fcn.00477160
test eax, eax
je 0x48c482
add esp, 0x5c
mov eax, edi
pop ebx
pop ebp
pop esi
pop edi
ret
xor eax, eax
mov dword [esp + 0x50], eax
jmp 0x48c330
mov eax, dword [esp + 0x54]
mov dword [esp + 0x4c], eax
jmp 0x48c318
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop ebp
pop esi
pop edi
ret