Function at 0x4c61c0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x38
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
movzx ebx, ax
shr eax, 0x10
test ecx, ecx
je 0x4c6517
mov edx, dword [esp + 0x54]
mov ebp, eax
test edx, edx
je 0x4c6365
mov dword [esp + 0x30], eax
mov ebp, ebx
cmp dword [esp + 0x54], 0x15b0
mov eax, 0x15b0
cmovbe eax, dword [esp + 0x54]
sub dword [esp + 0x54], eax
cmp eax, 0xf
mov dword [esp + 0x34], eax
jbe 0x4c6374
mov dword [esp], eax
mov eax, dword [esp + 0x50]
nop
lea esi, [esi]
movzx edx, byte [eax]
add eax, 0x10
lea edi, [ebp + edx]
movzx edx, byte [eax - 0xf]
mov dword [esp + 4], edi
add edx, edi
mov esi, edx
movzx edx, byte [eax - 0xe]
mov dword [esp + 8], esi
mov edi, edx
movzx edx, byte [eax - 0xd]
add edi, esi
mov dword [esp + 0xc], edi
mov ebx, edx
movzx edx, byte [eax - 0xc]
add ebx, edi
mov dword [esp + 0x10], ebx
mov ecx, edx
movzx edx, byte [eax - 0xb]
add ecx, ebx
mov dword [esp + 0x14], ecx
mov ebp, edx
movzx edx, byte [eax - 0xa]
add ebp, ecx
mov dword [esp + 0x18], ebp
add edx, ebp
movzx ebp, byte [eax - 1]
mov esi, edx
movzx edx, byte [eax - 9]
mov dword [esp + 0x1c], esi
add edx, esi
movzx esi, byte [eax - 4]
mov edi, edx
movzx edx, byte [eax - 8]
mov dword [esp + 0x20], edi
add edx, edi
movzx edi, byte [eax - 5]
mov ebx, edx
movzx edx, byte [eax - 7]
mov dword [esp + 0x24], ebx
add edx, ebx
movzx ebx, byte [eax - 3]
mov ecx, edx
movzx edx, byte [eax - 6]
mov dword [esp + 0x28], ecx
add edx, ecx
movzx ecx, byte [eax - 2]
add edi, edx
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 8]
add edx, dword [esp + 4]
add esi, edi
add edx, dword [esp + 0xc]
add ebx, esi
add edx, dword [esp + 0x10]
add ecx, ebx
add edx, dword [esp + 0x14]
add ebp, ecx
add edx, dword [esp + 0x18]
add edx, dword [esp + 0x1c]
sub dword [esp], 0x10
add edx, dword [esp + 0x20]
add edx, dword [esp + 0x24]
add edx, dword [esp + 0x28]
add edx, dword [esp + 0x2c]
add edx, edi
add edx, esi
mov esi, dword [esp]
add ebx, edx
add ecx, ebx
add ecx, ebp
add dword [esp + 0x30], ecx
cmp esi, 0xf
jg 0x4c6220
mov eax, dword [esp + 0x34]
sub eax, 0x10
mov edx, eax
shr edx, 4
lea ecx, [edx + 1]
shl edx, 4
shl ecx, 4
add dword [esp + 0x50], ecx
sub eax, edx
jne 0x4c6374
mov eax, 0x80078071
mov esi, dword [esp + 0x30]
mul ebp
mov eax, 0x80078071
shr edx, 0xf
imul edx, edx, 0xfff1
sub ebp, edx
mul esi
mov eax, dword [esp + 0x54]
shr edx, 0xf
imul edx, edx, 0xfff1
sub esi, edx
test eax, eax
mov dword [esp + 0x30], esi
jne 0x4c61f1
mov ebx, ebp
mov ebp, esi
mov eax, ebp
add esp, 0x38
shl eax, 0x10
or eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [esp + 0x50]
movzx edx, byte [ebx]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 1
je 0x4c648b
movzx edx, byte [ebx + 1]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 2
je 0x4c650d
movzx edx, byte [ebx + 2]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 3
je 0x4c6503
movzx edx, byte [ebx + 3]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 4
je 0x4c64f9
movzx edx, byte [ebx + 4]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 5
je 0x4c64ef
movzx edx, byte [ebx + 5]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 6
je 0x4c64e5
movzx edx, byte [ebx + 6]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 7
je 0x4c64db
movzx edx, byte [ebx + 7]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 8
je 0x4c64d1
movzx edx, byte [ebx + 8]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 9
je 0x4c64c7
movzx edx, byte [ebx + 9]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 0xa
je 0x4c64bd
movzx edx, byte [ebx + 0xa]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 0xb
je 0x4c64b3
movzx edx, byte [ebx + 0xb]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 0xc
je 0x4c64a9
movzx edx, byte [ebx + 0xc]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 0xd
je 0x4c649f
movzx edx, byte [ebx + 0xd]
add ebp, edx
add dword [esp + 0x30], ebp
cmp eax, 0xe
je 0x4c6495
movzx eax, byte [ebx + 0xe]
add ebp, eax
mov eax, dword [esp + 0x50]
add dword [esp + 0x30], ebp
add eax, 0xf
mov dword [esp + 0x50], eax
jmp 0x4c6329
add dword [esp + 0x50], 1
jmp 0x4c6329
add dword [esp + 0x50], 0xe
jmp 0x4c6329
add dword [esp + 0x50], 0xd
jmp 0x4c6329
add dword [esp + 0x50], 0xc
jmp 0x4c6329
add dword [esp + 0x50], 0xb
jmp 0x4c6329
add dword [esp + 0x50], 0xa
jmp 0x4c6329
add dword [esp + 0x50], 9
jmp 0x4c6329
add dword [esp + 0x50], 8
jmp 0x4c6329
add dword [esp + 0x50], 7
jmp 0x4c6329
add dword [esp + 0x50], 6
jmp 0x4c6329
add dword [esp + 0x50], 5
jmp 0x4c6329
add dword [esp + 0x50], 4
jmp 0x4c6329
add dword [esp + 0x50], 3
jmp 0x4c6329
add dword [esp + 0x50], 2
jmp 0x4c6329
add esp, 0x38
mov eax, 1
pop ebx
pop esi
pop edi
pop ebp
ret