Function at 0x1403850c0
Capabilities:
Inspect section memory permissions

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
mov eax, 0x20
call fcn.1403cb200
sub rsp, rax
mov r15, rcx
mov rbp, r9
mov rcx, r9
mov r14, r8
mov rsi, rdx
xor ebx, ebx
call fcn.14027ad90
mov rcx, rbp
call fcn.14027ac10
mov rdi, rax
test rax, rax
je 0x1403855ee
mov edx, dword [rsi + 8]
mov rcx, rax
add edx, edx
call fcn.14027aab0
test rax, rax
je 0x1403855ee
mov ecx, dword [rsi + 8]
lea r12d, [rbx + 1]
lea eax, [rcx - 1]
movsxd r8, eax
test eax, eax
js 0x1403855cc
mov r9, r8
mov r11d, 0x80000000
shl r9, 4
mov rax, qword [rsi]
movabs r10, 0x200000000
mov rcx, qword [rax + r8*8]
mov rdx, rcx
mov rax, rcx
and rax, r10
shr rdx, 1
and rdx, r11
movabs r10, 0x400000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x800000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x1000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x2000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x4000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x8000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x10000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x20000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x40000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x80000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x100000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x200000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x400000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x800000000000
shr rdx, 1
mov rax, rcx
and rax, r10
or rdx, rax
mov rax, rcx
shr rdx, 1
movabs r10, 0x1000000000000
and rax, r10
movabs r10, 0x2000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x4000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x8000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x10000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x20000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x40000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x80000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x100000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x200000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x400000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x800000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x1000000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
movabs r10, 0x2000000000000000
or rdx, rax
mov rax, rcx
and rax, r10
shr rdx, 1
or rdx, rax
movabs r10, 0x4000000000000000
shr rdx, 1
mov rax, rcx
and rax, r10
or rdx, rax
movabs rax, 0x8000000000000001
and rcx, rax
shr rdx, 1
mov rax, qword [rdi]
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, r11
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
mov rax, rcx
and eax, 0x800000
add rdx, rdx
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
add rdx, rdx
and eax, 0x800
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x400
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x200
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x100
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x80
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x40
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x20
or rdx, rax
mov rax, rcx
add rdx, rdx
and eax, 0x10
or rdx, rax
mov rax, rcx
add rdx, rdx
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 rcx, r12
mov rax, qword [rdi]
add rdx, rdx
or rdx, rcx
sub r8, r12
mov qword [r9 + rax], rdx
lea r9, [r9 - 0x10]
jns 0x140385148
mov ecx, dword [rsi + 8]
lea eax, [rcx + rcx]
mov rcx, rdi
mov dword [rdi + 8], eax
call fcn.14027a8a0
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140384080
test eax, eax
cmovne ebx, r12d
mov rcx, rbp
call fcn.14027aae0
mov rbp, qword [rsp + 0x48]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
ret