Function at 0x1400293b0
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
mov esi, dword [rcx + 0x85b0]
mov r11, rcx
lea eax, [rsi - 1]
cmp eax, 1
jbe 0x1400293cf
mov eax, dword [rcx + 0x85d0]
jmp 0x1400293d4
mov eax, 1
mov r10d, 2
mov qword [rsp + 0x18], rdi
sub r10d, dword [rcx + 0x8518]
movsxd rbx, eax
test eax, eax
jle 0x1400295e7
mov qword [rsp + 0x10], rbp
lea r9, [rcx + 0x89b0]
lea rbp, [0x14006d211]
mov rdx, qword [r9]
test r10d, r10d
je 0x140029599
cmp r10d, 1
jne 0x1400295d4
xor edi, edi
mov r8, rbp
nop
movzx ecx, byte [r8 - 1]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 1]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 2]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 3]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 4]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 5]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 6]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 7]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 + 8]
lea r8, [r8 + 0xc]
shl rcx, 6
add edi, 0xc
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 - 3]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
movzx ecx, byte [r8 - 2]
shl rcx, 6
add rcx, rdx
mov eax, dword [rcx - 0x38]
add dword [rcx + 8], eax
mov eax, dword [rcx - 0x18]
add dword [rcx + 0x28], eax
mov eax, dword [rcx - 0x1c]
add dword [rcx + 0x24], eax
cmp edi, 0xc
jb 0x140029420
jmp 0x1400295d4
lea rcx, [rdx + 0x104]
mov edx, 0xc
nop word [rax + rax]
mov eax, dword [rcx - 0x100]
add dword [rcx], eax
mov eax, dword [rcx - 0xf0]
add dword [rcx + 0x10], eax
mov eax, dword [rcx - 0xec]
add dword [rcx + 0x14], eax
lea rcx, [rcx + 0x40]
sub rdx, 1
jne 0x1400295b0
add r9, 8
sub rbx, 1
jne 0x140029404
mov rbp, qword [rsp + 0x10]
cmp esi, 1
jne 0x140029692
mov r9d, 0x10
nop word [rax + rax]
mov eax, r9d
shr rax, 2
mov rcx, qword [r11 + rax*8 + 0x8998]
test r10d, r10d
je 0x140029642
cmp r10d, 1
jne 0x140029678
lea rax, [rcx + 0x48]
lea edx, [r10 + 1]
mov ecx, dword [rax - 0x40]
add dword [rax], ecx
mov ecx, dword [rax - 0x20]
add dword [rax + 0x20], ecx
mov ecx, dword [rax - 0x24]
add dword [rax + 0x1c], ecx
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140029622
jmp 0x140029678
mov eax, dword [rcx + 4]
add dword [rcx + 0x84], eax
mov eax, dword [rcx + 0x14]
add dword [rcx + 0x94], eax
mov eax, dword [rcx + 0x18]
add dword [rcx + 0x98], eax
mov eax, dword [rcx + 0x44]
add dword [rcx + 0xc4], eax
mov eax, dword [rcx + 0x54]
add dword [rcx + 0xd4], eax
mov eax, dword [rcx + 0x58]
add dword [rcx + 0xd8], eax
add r9d, 4
cmp r9d, 0x14
jle 0x140029600
mov rdi, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
pop rsi
ret
cmp esi, 2
jne 0x1400297cd
mov r9d, 0x10
lea rdi, [0x14006cf84]
lea rbx, [0x14006cfa0]
nop
mov eax, r9d
shr rax, 3
mov rdx, qword [r11 + rax*8 + 0x89a8]
test r10d, r10d
je 0x140029791
cmp r10d, 1
jne 0x1400297bf
mov eax, dword [rdx + 0x28]
add dword [rdx + 0x68], eax
mov eax, dword [rdx + 8]
add dword [rdx + 0x48], eax
mov eax, dword [rdx + 0x24]
add dword [rdx + 0x64], eax
mov eax, dword [rdx + 0x128]
add dword [rdx + 0x168], eax
mov eax, dword [rdx + 0x108]
add dword [rdx + 0x148], eax
mov eax, dword [rdx + 0x124]
add dword [rdx + 0x164], eax
mov eax, dword [rdx + 0x68]
add dword [rdx + 0xa8], eax
mov eax, dword [rdx + 0x48]
add dword [rdx + 0x88], eax
mov eax, dword [rdx + 0x64]
add dword [rdx + 0xa4], eax
mov eax, dword [rdx + 0x168]
add dword [rdx + 0x1a8], eax
mov eax, dword [rdx + 0x148]
add dword [rdx + 0x188], eax
mov eax, dword [rdx + 0x164]
add dword [rdx + 0x1a4], eax
mov eax, dword [rdx + 0xa8]
add dword [rdx + 0xe8], eax
mov eax, dword [rdx + 0x88]
add dword [rdx + 0xc8], eax
mov eax, dword [rdx + 0xa4]
add dword [rdx + 0xe4], eax
mov eax, dword [rdx + 0x1a8]
add dword [rdx + 0x1e8], eax
mov eax, dword [rdx + 0x188]
add dword [rdx + 0x1c8], eax
mov eax, dword [rdx + 0x1a4]
add dword [rdx + 0x1e4], eax
jmp 0x1400297bf
mov r8, rdi
movsxd rax, dword [r8]
add r8, 8
lea rcx, [rdx + rax*4]
mov eax, dword [rcx - 0xfc]
add dword [rcx + 4], eax
mov eax, dword [rcx - 0xec]
add dword [rcx + 0x14], eax
mov eax, dword [rcx - 0xe8]
add dword [rcx + 0x18], eax
cmp r8, rbx
jl 0x140029794
add r9d, 8
cmp r9d, 0x20
jl 0x1400296b0
mov rdi, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
pop rsi
ret