Function at 0x482304
Capabilities:
Enumerate pe sections

Disassembly:
push edi
push ebp
push esi
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ecx, edx
shr ecx, 0x10
movzx ebp, dx
cmp edi, 1
jne 0x48234e
movzx eax, byte [eax]
add ebp, eax
cmp ebp, 0xfff1
jb 0x482333
add ebp, 0xffff000f
add ecx, ebp
cmp ecx, 0xfff1
jb 0x482343
add ecx, 0xffff000f
shl ecx, 0x10
or ebp, ecx
mov eax, ebp
pop ecx
pop ebp
pop edi
ret
test eax, eax
je 0x482599
cmp edi, 0x10
jae 0x4823aa
lea edx, [edi - 1]
test edi, edi
je 0x482374
movzx edi, byte [eax]
add ebp, edi
add ecx, ebp
add edx, 0xffffffff
add eax, 1
cmp edx, 0xffffffff
jne 0x482362
cmp ebp, 0xfff1
jb 0x482382
add ebp, 0xffff000f
mov eax, 0x80078071
mul ecx
shr edx, 0xf
mov edi, edx
shl edi, 0xc
sub edi, edx
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edx, edi
sub ecx, edx
shl ecx, 0x10
or ebp, ecx
mov eax, ebp
pop ecx
pop ebp
pop edi
ret
cmp edi, 0x15b0
jb 0x48249c
mov dword [esp], esi
mov esi, eax
add edi, 0xffffea50
mov edx, 0x15b
movzx eax, byte [esi]
add ebp, eax
movzx eax, byte [esi + 1]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 2]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 3]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 4]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 5]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 6]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 7]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 8]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 9]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xa]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xb]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xc]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xd]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xe]
add ecx, ebp
add ebp, eax
movzx eax, byte [esi + 0xf]
add ecx, ebp
add ebp, eax
add ecx, ebp
add esi, 0x10
add edx, 0xffffffff
jne 0x4823c6
mov eax, 0x80078071
mul ebp
shr edx, 0xf
mov eax, edx
shl eax, 0xc
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add edx, eax
sub ebp, edx
mov eax, 0x80078071
mul ecx
shr edx, 0xf
mov eax, edx
shl eax, 0xc
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add edx, eax
sub ecx, edx
cmp edi, 0x15b0
jae 0x4823bb
mov eax, esi
mov esi, dword [esp]
test edi, edi
je 0x48258e
cmp edi, 0x10
jb 0x48253b
movzx edx, byte [eax]
add edi, 0xfffffff0
add ebp, edx
movzx edx, byte [eax + 1]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 2]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 3]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 4]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 5]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 6]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 7]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 8]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 9]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xa]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xb]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xc]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xd]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xe]
add ecx, ebp
add ebp, edx
movzx edx, byte [eax + 0xf]
add ecx, ebp
add ebp, edx
add ecx, ebp
add eax, 0x10
cmp edi, 0x10
jae 0x4824ad
lea edx, [edi - 1]
test edi, edi
je 0x482554
movzx edi, byte [eax]
add ebp, edi
add ecx, ebp
add edx, 0xffffffff
add eax, 1
cmp edx, 0xffffffff
jne 0x482542
mov eax, 0x80078071
mul ebp
mov eax, 0x80078071
shr edx, 0xf
mov edi, edx
shl edi, 0xc
sub edi, edx
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edx, edi
sub ebp, edx
mul ecx
shr edx, 0xf
mov edi, edx
shl edi, 0xc
sub edi, edx
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edx, edi
sub ecx, edx
shl ecx, 0x10
or ebp, ecx
mov eax, ebp
pop ecx
pop ebp
pop edi
ret
mov eax, 1
pop ecx
pop ebp
pop edi
ret