Function at 0x1400af980
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rsi, rcx
mov r13, qword [rcx + 8]
mov qword [r13 + 0x28], 0
mov qword [r13 + 0x40], 0
mov rdi, qword [r13 + 0x50]
mov rbx, qword [r13 + 0x58]
mov qword [r13 + 0x58], 0
test rbx, rbx
jne 0x1400af9d9
mov rdi, qword [r13 + 0x130]
test rdi, rdi
jne 0x1400afa04
jmp 0x1400afad9
add rdi, 0x10
dec rbx
je 0x1400af9f0
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x1400af9d0
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
call fcn.14006b7a0
jmp 0x1400af9d0
mov r13, qword [rsi + 8]
mov rdi, qword [r13 + 0x130]
test rdi, rdi
je 0x1400afad9
mov rbx, qword [r13 + 0x118]
movdqa xmm0, xmmword [rbx]
pmovmskb r15d, xmm0
not r15d
lea r14, [rbx + 0x10]
jmp 0x1400afa2f
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
dec rdi
je 0x1400afa8b
test r15w, r15w
jne 0x1400afa61
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add rbx, 0xfffffffffffffe80
add r14, 0x10
cmp r15d, 0xffff
je 0x1400afa40
not r15d
tzcnt eax, r15d
neg rax
lea rax, [rax + rax*2]
mov rcx, qword [rbx + rax*8 - 0x18]
lock dec qword [rcx]
jne 0x1400afa20
lea rax, [rbx + rax*8]
mov rcx, qword [rax - 0x18]
mov rdx, qword [rax - 0x10]
call fcn.14006b7a0
jmp 0x1400afa20
mov rdi, qword [r13 + 0x120]
test rdi, rdi
je 0x1400afaa9
mov rcx, qword [r13 + 0x118]
lea r8, [rdi + 0x11]
mov dl, 0xff
call sub.msvcrt.dll_memset
mov qword [r13 + 0x130], 0
lea rax, [rdi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rdi, 8
cmovb rax, rdi
mov qword [r13 + 0x128], rax
mov r13, qword [rsi + 8]
mov qword [r13 + 0x148], 0
inc qword [r13 + 0x150]
mov qword [r13 + 0x158], 0
cmp qword [r13], 0
je 0x1400afb05
mov rax, qword [r13 + 0x10]
mov qword [r13 + 8], rax
mov rcx, rsi
call fcn.1400ae8d0
mov eax, dword [r13 + 0x100]
mov ebp, dword [r13 + 0x104]
mov rcx, qword [r13 + 0x108]
mov rdi, qword [r13 + 0x110]
mov dword [r13 + 0x100], 0
cmp eax, 1
jne 0x1400affbe
mov qword [rsp + 0x20], rcx
cmp ebp, 0x80000000
je 0x1400affe7
mov rbx, qword [rsi]
mov rcx, qword [rbx + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x1400affe7
mov eax, 1
shl rax, cl
or eax, 0x40000000
cmp eax, ebp
je 0x1400affe7
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x1400affe7
or eax, 0x20000000
cmp eax, ebp
je 0x1400affe7
mov qword [rsp + 0x28], rsi
mov r14, qword [r13 + 0x28]
mov rdx, qword [r13 + 0x58]
mov rax, rdx
shl rax, 4
mov r8, qword [r13 + 0x130]
mov r9, qword [r13 + 0x40]
add r9, r14
add r9, qword [r13 + 0x70]
add r9, qword [r13 + 0x88]
add r9, qword [r13 + 0xa8]
lea r8, [r8 + r8*4]
add r9, qword [r13 + 0xc0]
mov r10d, 4
shl r10, cl
add r9, qword [r13 + 0xd0]
add rax, rdi
lea rax, [rax + r8*4]
add rax, qword [r13 + 0xe8]
add rax, qword [r13 + 0x148]
lea rax, [rax + r9*4]
add rax, r10
add rax, 0x24
cmp rax, qword [rbx + 0x2c0]
jbe 0x1400afc85
cmp dword [rbx + 0x40], 1
mov rcx, qword [rsp + 0x28]
jne 0x1400afc7c
mov rax, qword [r13 + 0x150]
cmp rax, qword [rbx + 0x48]
jb 0x1400afc7c
cmp dword [rbx + 0x50], 1
jne 0x1400affcf
mov rax, qword [rbx + 0x58]
mov r11, qword [r13 + 0x158]
cmp qword [r13], 0
je 0x1400afc5f
mov r9, qword [r13 + 8]
mov r10, qword [r13 + 0x10]
mov r8, r9
sub r8, r10
ja 0x1400afc62
sub r10, r9
mov r8, r10
jmp 0x1400afc62
xor r8d, r8d
add r8, r11
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp r8, rdx
jb 0x1400affcf
call fcn.1400af980
mov r14, qword [r13 + 0x28]
cmp r14, 0x8000000
jb 0x1400afd12
cmp dword [rbx + 0x40], 1
mov rcx, qword [rsp + 0x28]
jne 0x1400afcfc
mov rax, qword [r13 + 0x150]
cmp rax, qword [rbx + 0x48]
jb 0x1400afcfc
cmp dword [rbx + 0x50], 1
jne 0x1400affcf
mov rax, qword [rbx + 0x58]
mov r10, qword [r13 + 0x158]
cmp qword [r13], 0
je 0x1400afcde
mov rdx, qword [r13 + 8]
mov r9, qword [r13 + 0x10]
mov r8, rdx
sub r8, r9
ja 0x1400afce1
sub r9, rdx
mov r8, r9
jmp 0x1400afce1
xor r8d, r8d
add r8, r10
mul qword [r13 + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp r8, rdx
jb 0x1400affcf
call fcn.1400af980
mov r14, qword [r13 + 0x28]
cmp r14, 0x8000000
jae 0x1400affe7
test rdi, rdi
je 0x1400affe7
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x20]
movzx edi, byte [rax + 0x10]
mov r12, qword [rbx + 0x2b8]
and r12d, 0x3f
mov r15d, 1
mov ecx, r12d
shl r15, cl
mov rcx, qword [r13 + 0x18]
sub rcx, r14
mov rax, r14
cmp rcx, r15
jb 0x1400afd75
mov rcx, qword [r13 + 0x20]
cmp r12d, 2
ja 0x1400afd92
nop dword [rax]
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec r15
jne 0x1400afd60
jmp 0x1400afdc7
lea rcx, [r13 + 0x18]
mov rdx, r14
mov r8, r15
call fcn.14006b7f0
mov rax, qword [r13 + 0x28]
mov rcx, qword [r13 + 0x20]
cmp r12d, 2
jbe 0x1400afd60
and r15, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, r15
xor edx, edx
movdqa xmm0, xmmword [0x14021a390]
nop dword [rax + rax]
movdqu xmmword [rcx + rdx*4 - 0x10], xmm0
movdqu xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp r15, rdx
jne 0x1400afdb0
mov rdx, rax
mov qword [r13 + 0x28], rdx
mov rax, qword [rbx + 0x298]
or rax, qword [rbx + 0x2a8]
mov rcx, qword [rbx + 0x290]
or rcx, qword [rbx + 0x2a0]
or rcx, rax
je 0x1400afefd
mov rcx, qword [rbx + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x1400affe7
mov edx, 2
shl rdx, cl
cmp rdx, 0x8000000
jae 0x1400affe7
lea r8, [rbx + 0x290]
mov r9d, edx
or r9d, 0x20000000
xor r10d, r10d
mov r11d, 1
xor eax, eax
cmp rax, 0xff
jbe 0x1400afe5f
jmp 0x1400afefd
inc rax
cmp rax, 0xff
ja 0x1400afefd
xor r15d, r15d
mov ecx, eax
shld r15, r11, cl
mov r12, rax
shr r12, 3
mov esi, 1
shl rsi, cl
and r12, 0xfffffffffffffff0
test al, 0x40
cmovne r15, rsi
cmovne rsi, r10
and r15, qword [r8 + r12 + 8]
and rsi, qword [r8 + r12]
or rsi, r15
je 0x1400afe50
mov r15, qword [r13 + 0x28]
cmp r15, r14
jbe 0x1400affe7
movzx ecx, byte [rbx + 0x2b8]
mov r12, 0xffffffffffffffff
shl r12, cl
mov rcx, r12
not rcx
test r14, rcx
jne 0x1400affe7
cmp r15, rdx
jbe 0x1400affe7
and r12, rdx
je 0x1400affe7
movzx ecx, byte [rbx + rax + 0x190]
add rcx, r14
cmp rcx, r15
jae 0x1400affe7
mov rsi, qword [r13 + 0x20]
mov dword [rsi + rcx*4], r9d
inc rax
cmp rax, 0xff
jbe 0x1400afe5f
mov rax, qword [rsp + 0x30]
add qword [r13 + 0x148], rax
mov rsi, qword [rsp + 0x20]
lock inc qword [rsi]
jle 0x1400affe7
and edi, 1
and ebp, 0x10000000
shl edi, 0x1b
or edi, ebp
or r14d, edi
mov rax, qword [r13 + 0x58]
cmp rax, qword [r13 + 0x48]
jne 0x1400aff40
lea rcx, [r13 + 0x48]
call fcn.14006ba70
mov rax, qword [r13 + 0x58]
mov rcx, qword [r13 + 0x50]
shl rax, 4
mov qword [rcx + rax], rsi
mov r8, qword [rsp + 0x30]
mov qword [rcx + rax + 8], r8
inc qword [r13 + 0x58]
lea rcx, [r13 + 0x118]
mov rdx, rsi
mov r9d, r14d
call fcn.1400a1a80
cmp dword [r13 + 0x100], 1
jne 0x1400aff96
mov rax, qword [r13 + 0x108]
lock dec qword [rax]
jne 0x1400aff96
mov rcx, qword [r13 + 0x108]
mov rdx, qword [r13 + 0x110]
call fcn.14006b7a0
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 8]
mov dword [rax + 0x100], 2
mov dword [rax + 0x104], r14d
movdqu xmm0, xmmword [rsp + 0x38]
movdqu xmmword [rax + 0x108], xmm0
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x20]
lock dec qword [rax]
jne 0x1400affe7
mov rdx, rdi
mov rcx, qword [rsp + 0x20]
call fcn.14006b7a0
ud2