Function at 0x14012f1d0
Capabilities:
Enumerate pe sections

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rdx
mov r15, rcx
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
mov r13, rcx
sub r13, rax
cmp r13, 0xffffffffffffffe0
je 0x14012f3d4
sar r13, 5
add r13, 1
mov r12, qword [r15 + 0x10]
sub r12, rax
mov rcx, r12
sar rcx, 5
cmp rcx, r13
jae 0x14012f276
lea rax, [rcx + rcx*4]
mov rcx, rax
shr rcx, 2
cmp rax, 4
mov r14d, 0x10
cmovae r14, rcx
cmp r14, r13
cmovb r14, r13
shl r14, 5
mov rcx, r14
xor edx, edx
xor r8d, r8d
call fcn.1400d6480
mov rbx, rax
test r12, r12
je 0x14012f3bc
mov rax, qword [r15]
cmp r12, 8
jb 0x14012f26f
lea rcx, [rax + r12]
cmp rbx, rcx
jae 0x14012f289
lea rcx, [rbx + r12]
cmp rax, rcx
jae 0x14012f289
xor ecx, ecx
jmp 0x14012f3a3
shl r13, 5
add rax, r13
mov qword [r15 + 8], rax
mov rcx, rax
jmp 0x14012f3d4
cmp r12, 0x20
jae 0x14012f296
xor ecx, ecx
jmp 0x14012f37a
mov rcx, r12
and rcx, 0xffffffffffffffe0
lea rdx, [rcx - 0x20]
mov r9, rdx
shr r9, 5
add r9, 1
mov r8d, r9d
and r8d, 3
cmp rdx, 0x60
jae 0x14012f2bd
xor edx, edx
jmp 0x14012f328
and r9, 0xfffffffffffffffc
xor edx, edx
nop word cs:[rax + rax]
nop dword [rax]
movups xmm0, xmmword [rax + rdx]
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rbx + rdx], xmm0
movups xmmword [rbx + rdx + 0x10], xmm1
movups xmm0, xmmword [rax + rdx + 0x20]
movups xmm1, xmmword [rax + rdx + 0x30]
movups xmmword [rbx + rdx + 0x20], xmm0
movups xmmword [rbx + rdx + 0x30], xmm1
movups xmm0, xmmword [rax + rdx + 0x40]
movups xmm1, xmmword [rax + rdx + 0x50]
movups xmmword [rbx + rdx + 0x40], xmm0
movups xmmword [rbx + rdx + 0x50], xmm1
movups xmm0, xmmword [rax + rdx + 0x60]
movups xmm1, xmmword [rax + rdx + 0x70]
movups xmmword [rbx + rdx + 0x60], xmm0
movups xmmword [rbx + rdx + 0x70], xmm1
sub rdx, 0xffffffffffffff80
add r9, 0xfffffffffffffffc
jne 0x14012f2d0
test r8, r8
je 0x14012f36f
lea r9, [rbx + rdx]
add r9, 0x10
lea r10, [rax + rdx]
add r10, 0x10
shl r8, 5
xor edx, edx
nop word cs:[rax + rax]
nop dword [rax]
movups xmm0, xmmword [r10 + rdx - 0x10]
movups xmm1, xmmword [r10 + rdx]
movups xmmword [r9 + rdx - 0x10], xmm0
movups xmmword [r9 + rdx], xmm1
add rdx, 0x20
cmp r8, rdx
jne 0x14012f350
cmp r12, rcx
je 0x14012f3b2
test r12b, 0x18
je 0x14012f3a3
mov rdx, rcx
mov rcx, r12
and rcx, 0xfffffffffffffff8
nop word cs:[rax + rax]
nop
mov rdi, qword [rax + rdx]
mov qword [rbx + rdx], rdi
add rdx, 8
cmp rcx, rdx
jne 0x14012f390
jmp 0x14012f3ad
mov dl, byte [rax + rcx]
mov byte [rbx + rcx], dl
add rcx, 1
cmp r12, rcx
jne 0x14012f3a3
mov rcx, qword [r15]
xor edx, edx
call fcn.1400d6650
mov qword [r15], rbx
shl r13, 5
add r13, rbx
mov qword [r15 + 8], r13
add r14, rbx
mov qword [r15 + 0x10], r14
mov rcx, r13
lea rax, [rcx - 0x20]
mov dl, byte [rsi]
mov byte [rcx - 0x20], dl
mov dl, byte [rsi + 1]
mov byte [rcx - 0x1f], dl
mov dl, byte [rsi + 2]
mov byte [rcx - 0x1e], dl
mov dl, byte [rsi + 3]
mov byte [rcx - 0x1d], dl
mov dl, byte [rsi + 4]
mov byte [rcx - 0x1c], dl
mov dl, byte [rsi + 5]
mov byte [rcx - 0x1b], dl
mov dl, byte [rsi + 6]
mov byte [rcx - 0x1a], dl
mov dl, byte [rsi + 7]
mov byte [rcx - 0x19], dl
mov dl, byte [rsi + 8]
mov byte [rcx - 0x18], dl
mov dl, byte [rsi + 9]
mov byte [rcx - 0x17], dl
mov dl, byte [rsi + 0xa]
mov byte [rcx - 0x16], dl
mov dl, byte [rsi + 0xb]
mov byte [rcx - 0x15], dl
mov dl, byte [rsi + 0xc]
mov byte [rcx - 0x14], dl
mov dl, byte [rsi + 0xd]
mov byte [rcx - 0x13], dl
mov dl, byte [rsi + 0xe]
mov byte [rcx - 0x12], dl
mov dl, byte [rsi + 0xf]
mov byte [rcx - 0x11], dl
mov dl, byte [rsi + 0x10]
mov byte [rcx - 0x10], dl
mov dl, byte [rsi + 0x11]
mov byte [rcx - 0xf], dl
mov dl, byte [rsi + 0x12]
mov byte [rcx - 0xe], dl
mov dl, byte [rsi + 0x13]
mov byte [rcx - 0xd], dl
mov dl, byte [rsi + 0x14]
mov byte [rcx - 0xc], dl
mov dl, byte [rsi + 0x15]
mov byte [rcx - 0xb], dl
mov dl, byte [rsi + 0x16]
mov byte [rcx - 0xa], dl
mov dl, byte [rsi + 0x17]
mov byte [rcx - 9], dl
mov dl, byte [rsi + 0x18]
mov byte [rcx - 8], dl
mov dl, byte [rsi + 0x19]
mov byte [rcx - 7], dl
mov dl, byte [rsi + 0x1a]
mov byte [rcx - 6], dl
mov dl, byte [rsi + 0x1b]
mov byte [rcx - 5], dl
mov dl, byte [rsi + 0x1c]
mov byte [rcx - 4], dl
mov dl, byte [rsi + 0x1d]
mov byte [rcx - 3], dl
mov dl, byte [rsi + 0x1e]
mov byte [rcx - 2], dl
mov dl, byte [rsi + 0x1f]
mov byte [rcx - 1], dl
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret