Function at 0x417cb0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push edi
mov edi, ecx
mov eax, dword [edi + 0xc]
dec eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], 1
cmp eax, 1
jle 0x417f6b
push ebx
mov ebx, dword [ebp + 8]
push esi
mov ecx, dword [ebp - 0x10]
push ecx
mov ecx, dword [edi + 4]
push 1
call fcn.0040f950
mov edx, dword [ebp - 0x10]
mov ecx, dword [edi]
push edx
push 1
mov esi, eax
call fcn.0040f950
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 8]
dec eax
mov dword [ebp - 0x1c], 1
cmp eax, 1
jle 0x417f56
jmp 0x417d13
mov esi, dword [ebp - 0x20]
mov ecx, esi
sub ecx, dword [edi + 0x10]
mov edi, dword [ebx]
movzx eax, byte [ecx - 2]
movzx edx, byte [ecx - 3]
mov ebx, dword [ebx + 4]
add esi, 3
mov dword [ebp - 0x20], esi
movzx esi, byte [ecx - 1]
mov dword [ebp - 8], eax
mov eax, edi
imul eax, esi
mov esi, edi
imul edi, edx
movzx edx, byte [ecx]
imul esi, dword [ebp - 8]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 1]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 2]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
movzx edx, byte [ecx + 3]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 4]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 5]
add eax, ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 8]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
mov edx, dword [ebp - 0x14]
mov edx, dword [edx + 0x10]
lea ecx, [ecx + edx - 3]
movzx edx, byte [ecx]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 1]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 2]
add eax, ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
movzx edx, byte [ecx + 3]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 4]
add eax, ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x10]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 5]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add eax, ebx
add edi, edx
movzx edx, byte [ecx + 6]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 7]
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x14]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 8]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
mov edx, dword [ebp - 0x14]
mov edx, dword [edx + 0x10]
add ecx, edx
movzx edx, byte [ecx]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 1]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 2]
add eax, ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x18]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
movzx edx, byte [ecx + 3]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 4]
add eax, ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx + 0x1c]
mov dword [ebp - 8], edx
movzx edx, byte [ecx + 5]
mov dword [ebp - 4], ebx
imul ebx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
add esi, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
add edi, edx
movzx edx, byte [ecx + 6]
add eax, ebx
movzx ebx, byte [ecx + 8]
movzx ecx, byte [ecx + 7]
mov dword [ebp - 0xc], edx
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x20]
imul ebx, edx
imul ecx, edx
imul edx, dword [ebp - 0xc]
add eax, ebx
add edi, edx
cdq
add esi, ecx
mov ecx, dword [ebp + 0xc]
idiv ecx
mov ebx, eax
mov eax, esi
cdq
idiv ecx
mov dword [ebp - 0xc], eax
mov eax, edi
cdq
idiv ecx
cmp ebx, 0xff
jle 0x417ef0
mov ebx, 0xff
jmp 0x417ef6
test ebx, ebx
jns 0x417ef6
xor ebx, ebx
mov ecx, dword [ebp - 0xc]
cmp ecx, 0xff
jle 0x417f0a
mov dword [ebp - 0xc], 0xff
jmp 0x417f15
test ecx, ecx
jns 0x417f15
mov dword [ebp - 0xc], 0
cmp eax, 0xff
jle 0x417f23
mov eax, 0xff
jmp 0x417f29
test eax, eax
jns 0x417f29
xor eax, eax
mov ecx, dword [ebp - 0x18]
mov dl, byte [ebp - 0xc]
mov edi, dword [ebp - 0x14]
mov byte [ecx], al
mov eax, dword [ebp - 0x1c]
mov byte [ecx + 1], dl
mov byte [ecx + 2], bl
mov ebx, dword [ebp + 8]
add ecx, 3
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 8]
inc eax
dec ecx
mov dword [ebp - 0x1c], eax
cmp eax, ecx
jl 0x417d10
mov eax, dword [ebp - 0x10]
mov edx, dword [edi + 0xc]
inc eax
dec edx
mov dword [ebp - 0x10], eax
cmp eax, edx
jl 0x417cd5
pop esi
pop ebx
pop edi
mov esp, ebp
pop ebp
ret 8