Function at 0x14012e6b0
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x20], rbx
push r12
push r14
push r15
sub rsp, 0x30
mov r15d, 0x4000
mov r14, r8
mov r12, rdx
mov rbx, rcx
cmp r8, r15
jae 0x14012e6e5
xor al, al
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rsi
mov esi, 0x3ffc
mov qword [rsp + 0x60], rdi
mov ebp, esi
lea rdi, [r8 - 0x4000]
mov eax, esi
add rdi, r12
cmp dword [rax + rdi], 0x6054b50
je 0x14012e71f
dec ebp
sub rax, 1
jns 0x14012e707
xor al, al
jmp 0x14012e96b
movsxd rax, ebp
mov rcx, r14
movsxd rdx, ebp
sub rcx, rax
add rdx, rdi
cmp rcx, 0x16
jae 0x14012e738
xor cl, cl
jmp 0x14012e79a
mov eax, dword [rdx]
mov dword [rbx + 0x10], eax
cmp eax, 0x6054b50
je 0x14012e748
xor cl, cl
jmp 0x14012e79a
movzx eax, word [rdx + 4]
mov word [rbx + 0x14], ax
movzx eax, word [rdx + 6]
mov word [rbx + 0x16], ax
movzx eax, word [rdx + 8]
mov word [rbx + 0x18], ax
movzx eax, word [rdx + 0xa]
mov word [rbx + 0x1a], ax
mov eax, dword [rdx + 0xc]
mov dword [rbx + 0x1c], eax
mov eax, dword [rdx + 0x10]
mov dword [rbx + 0x20], eax
movzx r8d, word [rdx + 0x14]
mov word [rbx + 0x24], r8w
lea rax, [r8 + 0x16]
cmp rcx, rax
jae 0x14012e78b
xor cl, cl
jmp 0x14012e79a
add rdx, 0x16
lea rcx, [rbx + 0x28]
call fcn.14002d5b0
mov cl, 1
mov eax, dword [rbx + 0x1c]
mov rdx, r14
sub eax, ebp
add eax, r15d
sub rdx, rax
test cl, cl
je 0x14012e957
mov ecx, esi
mov rax, rsi
cmp dword [rax + rdi], 0x7064b50
je 0x14012e7cb
dec ecx
sub rax, 1
jns 0x14012e7b5
jmp 0x14012e8ff
mov eax, r15d
movsxd r8, ecx
sub eax, ecx
add r8, rdi
cdqe
cmp rax, 0x14
jb 0x14012e8ff
mov eax, dword [r8]
mov dword [rbx + 0x48], eax
cmp eax, 0x7064b50
jne 0x14012e8ff
mov eax, dword [r8 + 4]
mov dword [rbx + 0x4c], eax
mov rax, qword [r8 + 8]
mov qword [rbx + 0x50], rax
mov eax, dword [r8 + 0xc]
mov dword [rbx + 0x58], eax
mov rax, rsi
nop dword [rax]
cmp dword [rax + rdi], 0x6064b50
je 0x14012e826
dec esi
sub rax, 1
jns 0x14012e810
jmp 0x14012e8ff
mov eax, r15d
movsxd rcx, esi
sub eax, esi
add rcx, rdi
movsxd r9, eax
cmp r9, 0x38
jae 0x14012e841
xor al, al
jmp 0x14012e8e2
mov eax, dword [rcx]
mov dword [rbx + 0x60], eax
cmp eax, 0x6064b50
je 0x14012e854
xor al, al
jmp 0x14012e8e2
mov rax, qword [rcx + 4]
mov qword [rbx + 0x68], rax
movzx eax, word [rcx + 0xc]
mov r8d, dword [rbx + 0x68]
mov word [rbx + 0x70], ax
add r8d, 0xffffffd4
movzx eax, word [rcx + 0xe]
mov word [rbx + 0x72], ax
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x74], eax
mov eax, dword [rcx + 0x14]
mov dword [rbx + 0x78], eax
mov rax, qword [rcx + 0x18]
mov qword [rbx + 0x80], rax
mov rax, qword [rcx + 0x20]
mov qword [rbx + 0x88], rax
mov rax, qword [rcx + 0x28]
mov qword [rbx + 0x90], rax
mov rax, qword [rcx + 0x30]
mov qword [rbx + 0x98], rax
mov eax, r8d
add rax, 0x38
mov dword [rbx + 0xa8], r8d
cmp r9, rax
jae 0x14012e8c3
xor al, al
jmp 0x14012e8e2
test r8d, r8d
je 0x14012e8d5
lea rax, [rcx + 0x38]
mov qword [rbx + 0xa0], rax
jmp 0x14012e8e0
mov qword [rbx + 0xa0], 0
mov al, 1
mov byte [rbx + 0xd1], al
test al, al
je 0x14012e8ff
sub r15d, esi
mov rdx, r14
movsxd rax, r15d
sub rdx, rax
sub rdx, qword [rbx + 0x90]
cmp byte [rbx + 0xd1], 0
mov r9d, dword [rbx + 0x20]
mov eax, dword [rbx + 0x1c]
movzx r8d, word [rbx + 0x1a]
je 0x14012e929
mov r9, qword [rbx + 0x98]
mov rax, qword [rbx + 0x90]
mov r8, qword [rbx + 0x88]
cmp r9, rdx
je 0x14012e937
sub rdx, r9
add r12, rdx
sub r14, rdx
mov qword [rsp + 0x28], r8
lea rcx, [rbx + 0xb0]
mov r8, r14
mov qword [rsp + 0x20], rax
mov rdx, r12
call fcn.14012e990
test al, al
jne 0x14012e95b
xor al, al
jmp 0x14012e96b
mov qword [rbx], r12
mov al, 1
mov qword [rbx + 8], r14
mov byte [rbx + 0xd0], 1
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret