Function at 0x140245fe0
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
cmp dword [rcx + 0x78], 0
mov rdi, qword [rcx + 0x58]
mov r8, rcx
je 0x140246020
mov dword [rcx + 0x78], 0
movzx eax, word [rdi + 4]
mov dword [rcx + 0x28], eax
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
lea rcx, [rax + rcx*8]
mov qword [r8 + 0x18], rcx
jmp 0x1402460b2
inc dword [r8 + 0x34]
mov r9d, dword [r8 + 0x34]
cmp r9d, dword [r8]
jge 0x14024603a
movzx eax, word [rdi + 8]
cmp r9d, eax
jl 0x1402462ca
inc dword [r8 + 0x2c]
add qword [r8 + 0x20], 0x20
mov r11, qword [r8 + 0x18]
mov ecx, dword [r8 + 0x2c]
mov r10d, dword [r11]
cmp ecx, r10d
jge 0x14024605f
movzx eax, byte [rdi + 2]
cmp ecx, eax
jl 0x14024619f
mov r9d, dword [r8 + 0x38]
mov eax, r9d
cdq
idiv dword [r8 + 0x40]
sub r9d, edx
add r9d, dword [r8 + 0x40]
mov dword [r8 + 0x38], r9d
mov eax, dword [r8 + 0x50]
cmp dword [r8 + 0x38], eax
jl 0x140246180
mov r9d, dword [r8 + 0x3c]
mov eax, r9d
cdq
idiv dword [r8 + 0x44]
sub r9d, edx
add r9d, dword [r8 + 0x44]
mov dword [r8 + 0x3c], r9d
mov eax, dword [r8 + 0x54]
cmp dword [r8 + 0x3c], eax
jl 0x140246173
inc dword [r8 + 0x28]
add qword [r8 + 0x18], 0x18
movzx eax, word [rdi + 6]
cmp dword [r8 + 0x28], eax
jge 0x1402462f9
mov r9, qword [r8 + 0x18]
mov r10d, 1
mov ebx, 1
mov rdx, qword [r9 + 8]
mov eax, dword [r9]
mov ecx, dword [rdx + 0x10]
dec eax
add ecx, eax
shl r10d, cl
imul r10d, dword [r9 + 0x10]
mov dword [r8 + 0x40], r10d
mov ecx, dword [rdx + 0x14]
mov eax, dword [r9]
dec eax
mov edx, 1
add ecx, eax
shl edx, cl
imul edx, dword [r9 + 0x14]
mov dword [r8 + 0x44], edx
mov rax, qword [r9 + 8]
cmp dword [r9], ebx
jle 0x140246166
lea r11, [rax + 0x34]
mov ecx, dword [r11 - 4]
mov eax, dword [r9]
lea r11, [r11 + 0x20]
dec eax
sub ecx, ebx
add ecx, eax
mov eax, 1
shl eax, cl
imul eax, dword [r9 + 0x10]
cmp r10d, eax
cmovl eax, r10d
mov dword [r8 + 0x40], eax
mov ecx, dword [r11 - 0x20]
mov r10d, eax
mov eax, dword [r9]
sub ecx, ebx
dec eax
add ecx, eax
mov eax, 1
shl eax, cl
imul eax, dword [r9 + 0x14]
cmp edx, eax
cmovl eax, edx
inc ebx
mov dword [r8 + 0x44], eax
mov edx, eax
cmp ebx, dword [r9]
jl 0x140246110
mov eax, dword [r8 + 0x4c]
mov dword [r8 + 0x3c], eax
jmp 0x14024609b
mov eax, dword [r8 + 0x48]
mov dword [r8 + 0x38], eax
jmp 0x140246076
movzx eax, byte [rdi + 1]
mov dword [r8 + 0x2c], eax
mov ecx, eax
mov rax, qword [r8 + 0x18]
shl rcx, 5
add rcx, qword [rax + 8]
mov qword [r8 + 0x20], rcx
jmp 0x140246043
mov rbx, qword [r8 + 0x20]
cmp dword [rbx], 0
je 0x14024603a
mov ebp, dword [r11 + 0x10]
mov r9d, dword [r8 + 0x48]
mov r15d, dword [r8 + 0x4c]
mov r14d, dword [rbx + 0x14]
mov r12d, dword [r8 + 0x38]
sub r10d, ecx
dec r10d
mov esi, ebp
lea eax, [r9 - 1]
mov ecx, r10d
add r14d, r10d
shl esi, cl
add eax, esi
mov dword [rsp + 0x50], esi
cdq
idiv esi
mov esi, dword [r11 + 0x14]
mov r11d, esi
shl r11d, cl
mov dword [rsp + 0x48], r11d
mov dword [rsp + 0x40], eax
lea eax, [r15 - 1]
add eax, r11d
cdq
idiv r11d
mov r11d, dword [rbx + 0x10]
add r11d, r10d
mov r13d, eax
cmp r12d, r9d
jne 0x140246228
mov eax, dword [rsp + 0x40]
mov ecx, r11d
xor edx, edx
mov r9d, 1
shl r9d, cl
mov ecx, r10d
shl eax, cl
div r9d
test edx, edx
jne 0x14024623b
mov ecx, r11d
mov eax, r12d
shl ebp, cl
cdq
idiv ebp
test edx, edx
jne 0x14024603a
mov r11d, dword [r8 + 0x3c]
cmp r11d, r15d
jne 0x140246261
mov ecx, r14d
xor edx, edx
mov r9d, 1
shl r9d, cl
mov ecx, r10d
mov eax, r13d
shl eax, cl
div r9d
test edx, edx
jne 0x140246274
mov ecx, r14d
mov eax, r11d
shl esi, cl
cdq
idiv esi
test edx, edx
jne 0x14024603a
mov r9d, dword [rsp + 0x48]
mov ecx, dword [rbx + 0x14]
mov r10d, dword [rsp + 0x50]
lea eax, [r9 - 1]
shr r13d, cl
add eax, r11d
cdq
idiv r9d
mov r9d, eax
lea eax, [r10 - 1]
add eax, r12d
sar r9d, cl
mov ecx, dword [rbx + 0x10]
cdq
sub r9d, r13d
imul r9d, dword [rbx + 0x18]
idiv r10d
mov dword [r8 + 0x34], 0
sar eax, cl
add r9d, eax
mov eax, dword [rsp + 0x40]
shr eax, cl
sub r9d, eax
mov dword [r8 + 0x30], r9d
jmp 0x140246024
mov rax, qword [r8 + 0x20]
movsxd rdx, dword [r8 + 0x30]
mov rcx, qword [rax + 8]
cmp r9d, dword [rcx + rdx*4]
lea rax, [rcx + rdx*4]
jl 0x140246020
inc dword [rax]
xor eax, eax
mov rbx, qword [rsp + 0x58]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, 1
mov rbx, qword [rsp + 0x58]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret