Function at 0x140018060
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
mov eax, 0x3648
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.14006c750
sub rsp, rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x48], rcx
mov rsi, rcx
mov r11d, edx
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.140017990
mov rdi, qword [0x140121540]
movzx ebx, byte [rdi + 0x1c]
or bl, byte [rdi + 0x223]
test r11w, r11w
jle 0x140018394
test bl, bl
movsx r11, r11w
setne byte [rsp + 0x3f]
lea rsi, [rsi + r11*8]
nop dword [rax + rax]
mov r15, qword [rsp + 0x48]
lea r13, [rsp + 0x50]
xor ebp, ebp
xor r12d, r12d
lea r14, [rsp + 0x60]
jmp 0x1400181b9
cmp r9w, ax
jl 0x140018210
imul eax, edx, 0x64
lea edx, [rdx + rdx*2]
shl edx, 2
add r8d, eax
movsxd rax, edx
sar edx, 0x1f
imul rax, rax, 0x66666667
mov dword [rbx + 0x10], r8d
sar rax, 0x22
sub eax, edx
test ecx, ecx
mov word [rbx + 8], ax
je 0x14001812e
mov edx, dword [rdi + 0xa8]
sub edx, 1
cmp ecx, edx
jb 0x140018210
movsxd rdx, r8d
mov r10d, r8d
imul rdx, rdx, 0x10624dd3
sar r10d, 0x1f
sar rdx, 0x26
sub edx, r10d
test ax, ax
jle 0x140018330
cmp r9w, dx
jl 0x140018210
mov rax, qword [rbx]
test ecx, ecx
mov r9, qword [rax]
mov r10, qword [rax + 8]
mov rax, qword [rax + 0x10]
movdqu xmm0, xmmword [r9]
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], r10
movaps xmmword [rsp + 0x50], xmm0
movzx r10d, word [rbx + 8]
movzx r9d, word [rbx + 0xa]
mov qword [rsp + 0x70], rax
je 0x140018290
mov eax, dword [rdi + 0xa8]
sub eax, 1
cmp ecx, eax
jae 0x140018290
mov ebp, 1
nop dword [rax + rax]
add r15, 8
cmp r15, rsi
je 0x140018229
mov rbx, qword [r15]
test rbx, rbx
je 0x1400181b0
mov ecx, dword [rbx + 0x14]
movsx edx, word [rbx + 8]
movzx r9d, word [rbx + 0xa]
mov r8d, dword [rbx + 0x10]
test ecx, ecx
je 0x1400181e2
mov eax, dword [rdi + 0xa8]
sub eax, 1
cmp ecx, eax
jb 0x140018210
movsxd rax, r8d
mov r10d, r8d
imul rax, rax, 0x10624dd3
sar r10d, 0x1f
sar rax, 0x26
sub eax, r10d
test dx, dx
jg 0x1400180e8
cmp r9w, ax
jle 0x1400180f2
nop dword [rax]
mov rcx, rbx
add r15, 8
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [r15 - 8], 0
cmp r15, rsi
jne 0x1400181b9
call fcn.14005e2e0
xor ecx, ecx
mov edx, 1
call fcn.140007600
cmp byte [rsp + 0x3f], 0
jne 0x140018350
or r12b, byte [rdi + 0x225]
mov byte [rsp + 0x3f], r12b
je 0x140018350
test bpl, bpl
jne 0x140018370
call fcn.1400170c0
mov rcx, qword [rsp + 0x40]
call fcn.1400179f0
mov edx, 1
xor ecx, ecx
add rsp, 0x3648
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140007600
test r10w, r10w
jle 0x140018340
cmp r9w, dx
jl 0x1400181a3
movsx eax, word [rsp + 0x68]
movsx edx, dx
mov ebp, 1
imul eax, r8d
movsxd rcx, eax
sar eax, 0x1f
imul rcx, rcx, 0x14f8b589
sar rcx, 0x2d
sub ecx, eax
movsx eax, word [rsp + 0x6a]
movzx ecx, cx
imul r8d, eax
movsxd rax, r8d
sar r8d, 0x1f
imul rax, rax, 0x14f8b589
sar rax, 0x2d
sub eax, r8d
shl eax, 0x10
or eax, ecx
mov rcx, r13
mov dword [rsp + 0x68], eax
call fcn.14003fa60
movsx r8d, word [rbx + 0xe]
xor r9d, r9d
mov rcx, r14
movsx edx, word [rbx + 0xc]
mov dword [rsp + 0x20], 1
mov qword [rsp + 0x60], r13
call fcn.140017260
test al, al
mov eax, 1
cmovne r12d, eax
jmp 0x1400181b0
cmp r9w, dx
jg 0x140018210
jmp 0x140018159
cmp r9w, dx
jle 0x1400182a4
jmp 0x1400181a3
call fcn.1400170c0
mov rcx, qword [rsp + 0x40]
call fcn.1400179f0
test bpl, bpl
jne 0x1400180c8
jmp 0x14001826f
xor edx, edx
mov ecx, 0xa
call fcn.140043650
mov byte [rsp + 0x3f], al
call fcn.1400170c0
mov rcx, qword [rsp + 0x40]
call fcn.1400179f0
jmp 0x1400180c8
call fcn.14005e2e0
mov edx, 1
xor ecx, ecx
call fcn.140007600
jmp 0x140018260