Function at 0x48a220
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword [0xb0bc30]
sub esp, 0xc
push ebx
push esi
movzx esi, word [eax + 4]
push edi
movzx edi, word [eax]
test di, di
je 0x48a266
movzx ebx, word [eax + 2]
test si, si
je 0x48a260
movzx edx, word [eax + 6]
cmp di, si
mov eax, esi
mov ecx, edi
cmovge ecx, eax
mov eax, edx
movzx esi, cx
cmp bx, dx
mov ecx, ebx
cmovle ecx, eax
movzx eax, cx
jmp 0x48a26a
mov esi, edi
mov eax, ebx
jmp 0x48a26a
movzx eax, word [eax + 6]
movsx edx, si
cwde
sub eax, edx
mov dword [0xc275fc], eax
je 0x48a635
lea edi, [eax + 1]
mov esi, edx
mov al, dl
shl esi, 5
add esi, dword [0xb080a4]
add al, al
add al, byte [0xc27630]
mov byte [0xc27632], al
movzx eax, al
shl edx, 8
add edx, dword [0xc27628]
push ebp
lea eax, [eax + edi*2]
mov dword [0xc275fc], edi
mov dword [0xc27620], edx
cmp eax, 0x100
jl 0x48a47b
test edi, edi
jle 0x48a634
nop word [eax + eax]
movzx eax, word [0xc27632]
mov ecx, eax
and eax, 0xfe
shr ecx, 1
and ecx, 0x7f00
or ecx, eax
mov eax, dword [0xc27624]
shr ecx, 1
imul ebp, ecx, 0x1a
mov dword [esi + 8], eax
mov dword [esi], edx
mov dword [esi + 0x18], 0
movzx eax, byte [ebp + 0x5d76a7]
and eax, 0xf
lea ecx, [eax*8]
sub ecx, eax
mov al, byte [ecx*2 + 0x593270]
test al, 1
jne 0x48a3f9
test al, 0x3c
je 0x48a337
movzx eax, byte [ecx*2 + 0x59327d]
and eax, 0x80
jne 0x48a3f9
mov eax, 0x4ec4ec4f
imul ebp
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
and ecx, 0x7f
and eax, 0xff80
add eax, eax
or eax, ecx
lea edx, [eax + eax]
movzx eax, byte [0x5cfe88]
imul ebx, eax, 0x101
movzx ecx, dx
and ecx, 0xffffff00
movzx eax, dl
add ecx, eax
mov dword [esp + 0x14], edx
shl ecx, 3
sub ecx, ebx
mov word [esp + 0x10], dx
mov edx, dword [0xc280c0]
add ecx, 0x4c
movzx eax, cx
movzx edi, byte [eax + edx]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx ecx, al
mov eax, dword [esp + 0x14]
movzx eax, al
shl ecx, 8
add ecx, eax
lea eax, [ebx + ecx*8]
movzx eax, ax
movzx eax, byte [eax + edx]
add edi, eax
mov eax, edi
shr edi, 4
add edi, 0x10
shr eax, 3
mov dword [esi + 4], eax
mov dword [esi + 0x14], edi
cmp edi, 1
jae 0x48a3df
mov dword [esi + 0x14], 1
mov ecx, 0xc0
mov dword [esi + 0x18], 0x80
jmp 0x48a415
cmp edi, 0x20
jbe 0x48a3eb
mov dword [esi + 0x14], 0x20
mov dword [esi + 0x18], 0x80
mov ecx, 0xc0
jmp 0x48a415
movsx eax, word [ebp + 0x5d7696]
mov ecx, 0x40
mov dword [esi + 4], eax
movsx eax, byte [ebp + 0x5d76a8]
add eax, 0x20
mov dword [esi + 0x14], eax
cmp word [ebp + 0x5d7698], 0xffff
je 0x48a426
mov dword [esi + 0x14], 0
mov eax, dword [ebp + 0x5d7692]
and eax, 0x100200
cmp eax, 0x200
jne 0x48a43b
mov dword [esi + 0x18], ecx
push esi
call fcn.0048aa50
mov eax, dword [0xc275fc]
add esp, 4
mov edx, dword [0xc27620]
dec eax
add byte [0xc27632], 2
add edx, 0x100
add esi, 0x20
mov dword [0xc27620], edx
mov dword [0xc275fc], eax
test eax, eax
jg 0x48a2d0
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xc
ret
movzx eax, word [0xc27632]
mov ecx, eax
and eax, 0xfe
shr ecx, 1
and ecx, 0x7f00
or ecx, eax
shr ecx, 1
imul ebx, ecx, 0x1a
mov dword [esp + 0x10], ebx
lea ebp, [ebx + 0x5d7692]
test edi, edi
jle 0x48a634
nop word [eax + eax]
mov eax, dword [0xc27624]
mov dword [esi + 8], eax
mov dword [esi], edx
mov dword [esi + 0x18], 0
movzx eax, byte [ebp + 0x15]
and eax, 0xf
lea ecx, [eax*8]
sub ecx, eax
mov al, byte [ecx*2 + 0x593270]
test al, 1
jne 0x48a5c3
test al, 0x3c
je 0x48a4f7
movzx eax, byte [ecx*2 + 0x59327d]
and eax, 0x80
jne 0x48a5c3
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
and ecx, 0x7f
and eax, 0xff80
add eax, eax
or eax, ecx
add eax, eax
movzx edx, ax
mov word [esp + 0x14], ax
movzx eax, byte [0x5cfe88]
imul ebx, eax, 0x101
movzx ecx, dx
and ecx, 0xffffff00
movzx eax, dl
add ecx, eax
mov dword [esp + 0x18], edx
mov edx, dword [0xc280c0]
shl ecx, 3
sub ecx, ebx
add ecx, 0x4c
movzx eax, cx
movzx edi, byte [eax + edx]
mov eax, dword [esp + 0x14]
shr eax, 8
movzx ecx, al
mov eax, dword [esp + 0x18]
movzx eax, al
shl ecx, 8
add ecx, eax
lea eax, [ebx + ecx*8]
movzx eax, ax
movzx eax, byte [eax + edx]
add edi, eax
mov eax, edi
shr edi, 4
add edi, 0x10
shr eax, 3
mov dword [esi + 4], eax
mov dword [esi + 0x14], edi
cmp edi, 1
jae 0x48a5a5
mov ebx, dword [esp + 0x10]
mov ecx, 0xc0
mov dword [esi + 0x14], 1
mov dword [esi + 0x18], 0x80
jmp 0x48a5d9
cmp edi, 0x20
jbe 0x48a5b1
mov dword [esi + 0x14], 0x20
mov ebx, dword [esp + 0x10]
mov ecx, 0xc0
mov dword [esi + 0x18], 0x80
jmp 0x48a5d9
movsx eax, word [ebp + 4]
mov ecx, 0x40
mov dword [esi + 4], eax
movsx eax, byte [ebp + 0x16]
add eax, 0x20
mov dword [esi + 0x14], eax
cmp word [ebp + 6], 0xffff
je 0x48a5e7
mov dword [esi + 0x14], 0
mov eax, dword [ebp]
and eax, 0x100200
cmp eax, 0x200
jne 0x48a5f9
mov dword [esi + 0x18], ecx
push esi
call fcn.0048aa50
mov eax, dword [0xc275fc]
add ebx, 0x1a
mov edx, dword [0xc27620]
dec eax
add edx, 0x100
mov dword [0xc275fc], eax
add esp, 4
mov dword [0xc27620], edx
add esi, 0x20
mov dword [esp + 0x10], ebx
add ebp, 0x1a
test eax, eax
jg 0x48a4b0
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xc
ret