Function at 0x180152120
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.1800f84e0
sub rsp, rax
mov r15, rcx
mov rbp, r9
mov rcx, r9
mov r14, r8
mov rsi, rdx
xor edi, edi
call fcn.1801089c0
mov rcx, rbp
call fcn.180108ac0
mov rbx, rax
test rax, rax
je 0x1801527b7
mov edx, dword [rsi + 8]
add edx, edx
cmp edx, dword [rax + 0xc]
jle 0x18015217a
mov rcx, rax
call fcn.1800f6df0
test rax, rax
je 0x1801527b7
mov ecx, dword [rsi + 8]
lea eax, [rcx - 1]
movsxd r8, eax
test eax, eax
js 0x18015276b
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 + 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 0x1801523a0
mov ecx, dword [rsi + 8]
mov rbp, qword [rsp + 0x148]
mov r13, qword [rsp + 0x138]
mov r12, qword [rsp + 0x130]
lea eax, [rcx + rcx]
mov dword [rbx + 8], eax
test eax, eax
jle 0x18015279a
mov rcx, qword [rbx]
sub rcx, 8
movsxd r8, eax
lea r8, [rcx + r8*8]
mov rcx, qword [r8]
lea r8, [r8 - 8]
test rcx, rcx
jne 0x180152795
dec eax
test eax, eax
jg 0x180152783
mov dword [rbx + 8], eax
test eax, eax
jne 0x18015279f
mov dword [rbx + 0x10], edi
mov r8, r14
mov rdx, rbx
mov rcx, r15
call fcn.180151b20
test eax, eax
mov ecx, 1
cmovne edi, ecx
mov rcx, rbp
call fcn.180108c30
mov rbx, qword [rsp + 0x140]
mov eax, edi
add rsp, 0x100
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret