Function at 0x1401c6bd0
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], r9
push rbp
push rsi
push rdi
push r14
push r15
mov eax, 0x100
call fcn.1401ddd50
sub rsp, rax
mov r15, rcx
mov rbp, r9
mov rcx, r9
mov r14, r8
mov rsi, rdx
xor edi, edi
call fcn.140104290
mov rcx, rbp
call fcn.140104180
mov rbx, rax
test rax, rax
je 0x1401c7266
mov edx, dword [rsi + 8]
add edx, edx
cmp edx, dword [rax + 0xc]
jle 0x1401c6c2a
mov rcx, rax
call fcn.1400e9d00
test rax, rax
je 0x1401c7266
mov eax, dword [rsi + 8]
sub eax, 1
movsxd r8, eax
js 0x1401c7218
movabs rax, 0x1000000000
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x20], rax
mov r9, r8
movabs rax, 0x2000000000
mov qword [rsp + 0x138], r13
mov qword [rsp + 0x28], rax
mov r10d, 0x80000000
movabs rax, 0x4000000000
shl r9, 4
mov qword [rsp + 0x30], rax
movabs r11, 0x200000000
movabs rax, 0x8000000000
movabs r12, 0x400000000
mov qword [rsp + 0x38], rax
movabs r13, 0x800000000
movabs rax, 0x10000000000
movabs rbp, 0x8000000000000001
mov qword [rsp + 0x40], rax
movabs rax, 0x20000000000
mov qword [rsp + 0x48], rax
movabs rax, 0x40000000000
mov qword [rsp + 0x50], rax
movabs rax, 0x80000000000
mov qword [rsp + 0x58], rax
movabs rax, 0x100000000000
mov qword [rsp + 0x60], rax
movabs rax, 0x200000000000
mov qword [rsp + 0x68], rax
movabs rax, 0x400000000000
mov qword [rsp + 0x70], rax
movabs rax, 0x800000000000
mov qword [rsp + 0x78], rax
movabs rax, 0x1000000000000
mov qword [rsp + 0x80], rax
movabs rax, 0x2000000000000
mov qword [rsp + 0x88], rax
movabs rax, 0x4000000000000
mov qword [rsp + 0x90], rax
movabs rax, 0x8000000000000
mov qword [rsp + 0x98], rax
movabs rax, 0x10000000000000
mov qword [rsp + 0xa0], rax
movabs rax, 0x20000000000000
mov qword [rsp + 0xa8], rax
movabs rax, 0x40000000000000
mov qword [rsp + 0xb0], rax
movabs rax, 0x80000000000000
mov qword [rsp + 0xb8], rax
movabs rax, 0x100000000000000
mov qword [rsp + 0xc0], rax
movabs rax, 0x200000000000000
mov qword [rsp + 0xc8], rax
movabs rax, 0x400000000000000
mov qword [rsp + 0xd0], rax
movabs rax, 0x800000000000000
mov qword [rsp + 0xd8], rax
movabs rax, 0x1000000000000000
mov qword [rsp + 0xe0], rax
movabs rax, 0x2000000000000000
mov qword [rsp + 0xe8], rax
movabs rax, 0x4000000000000000
mov qword [rsp + 0xf0], rax
nop dword [rax]
mov rax, qword [rsi]
mov rcx, qword [rax + r8*8]
mov rdx, rcx
mov rax, rcx
shr rdx, 1
and rax, r11
and rdx, r10
or rdx, rax
mov rax, rcx
and rax, r12
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, r13
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x20]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x28]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x30]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x38]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x40]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x48]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x50]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x58]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x60]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x68]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x70]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x78]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x80]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x88]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x90]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0x98]
shr rdx, 1
or rdx, rax
shr rdx, 1
mov rax, rcx
and rax, qword [rsp + 0xa0]
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xa8]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xb0]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xb8]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xc0]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xc8]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xd0]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xd8]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xe0]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xe8]
shr rdx, 1
or rdx, rax
mov rax, rcx
and rax, qword [rsp + 0xf0]
and rcx, rbp
shr rdx, 1
or rdx, rax
mov rax, qword [rbx]
shr rdx, 1
or rdx, rcx
shr rdx, 1
mov qword [rax + r9 + 8], rdx
mov rax, qword [rsi]
mov rcx, qword [rax + r8*8]
mov rax, rcx
mov rdx, rcx
and rdx, r10
and eax, 0x40000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x20000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x10000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x8000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x4000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x2000000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x1000000
add rdx, rdx
or rdx, rax
add rdx, rdx
mov rax, rcx
and eax, 0x800000
or rdx, rax
mov rax, rcx
and eax, 0x400000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x200000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x100000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x80000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x40000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x20000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x10000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x8000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x4000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x2000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x1000
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x800
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x400
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x200
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x100
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x80
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x40
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x20
add rdx, rdx
or rdx, rax
mov rax, rcx
and eax, 0x10
add rdx, rdx
or rdx, rax
add rdx, rdx
mov rax, rcx
lea r9, [r9 - 0x10]
and eax, 8
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 4
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 2
or rdx, rax
and ecx, 1
mov rax, qword [rbx]
add rdx, rdx
or rdx, rcx
sub r8, 1
mov qword [r9 + rax + 0x10], rdx
jns 0x1401c6e50
mov rbp, qword [rsp + 0x148]
mov r13, qword [rsp + 0x138]
mov r12, qword [rsp + 0x130]
mov eax, dword [rsi + 8]
add eax, eax
mov dword [rbx + 8], eax
test eax, eax
jle 0x1401c7246
lea ecx, [rax - 1]
movsxd rdx, ecx
mov rcx, qword [rbx]
lea r8, [rcx + rdx*8]
mov rcx, qword [r8]
lea r8, [r8 - 8]
test rcx, rcx
jne 0x1401c7243
dec eax
test eax, eax
jg 0x1401c7231
mov dword [rbx + 8], eax
cmp dword [rbx + 8], edi
jne 0x1401c724e
mov dword [rbx + 0x10], edi
mov r8, r14
mov rdx, rbx
mov rcx, r15
call fcn.1401c5a10
test eax, eax
mov ecx, 1
cmovne edi, ecx
mov rcx, rbp
call fcn.1401040c0
mov rbx, qword [rsp + 0x140]
mov eax, edi
add rsp, 0x100
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret