Function at 0x14018b200
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rsi, qword [rcx + 0x28]
mov rbx, rdx
movzx edx, byte [rdx]
xor edi, edi
mov r8, rcx
mov r14, qword [rsi]
cmp edx, 0x37
ja 0x14018b369
je 0x14018b26f
sub edx, 0x14
je 0x14018b903
sub edx, 0x19
je 0x14018b88a
sub edx, 3
je 0x14018b26f
sub edx, 1
je 0x14018b903
sub edx, 1
je 0x14018b2b0
sub edx, 1
je 0x14018b2b0
sub edx, 1
je 0x14018b26f
sub edx, 1
je 0x14018b26f
cmp edx, 1
jne 0x14018ba76
mov rax, qword [r14]
cmp byte [rax + 0x67], dil
jne 0x14018ba76
mov rcx, qword [rbx + 0x10]
call fcn.14018cd74
cmp byte [rbx], 0x30
mov r8d, eax
jne 0x14018ba32
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rdx + 8]
call fcn.14018cd74
cmp eax, r8d
jne 0x14018ba40
mov rcx, qword [rdx + 0x28]
jmp 0x14018ba36
mov rdx, rsi
mov rcx, rdi
mov ebp, 1
cmp rcx, 8
jge 0x14018b2d4
mov eax, dword [rdx + 0x20]
mov rdx, qword [rdx + 0x18]
mov dword [rsp + rcx*4 + 0x48], eax
add rcx, rbp
test rdx, rdx
jne 0x14018b2bb
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14018b2e5
mov rcx, r8
call fcn.140189fe4
mov rcx, qword [rbx + 0x10]
call fcn.14018ee50
test eax, eax
jne 0x14018b581
cmp byte [r14 + 0x124], 2
jae 0x14018b581
cmp byte [rbx], 0x33
mov eax, 0x10000000
mov edx, 0x20000000
mov rcx, rdi
cmovne eax, edx
lea rdx, [0x1404e2ccc]
or dword [rbx + 4], eax
lea rax, [0x1404e0550]
cmp byte [rbx], 0x33
cmovne rax, rdx
mov qword [rbx + 8], rax
mov byte [rbx], 0xaa
cmp rcx, 8
jge 0x14018b34f
mov eax, dword [rsp + rcx*4 + 0x48]
add rcx, rbp
mov dword [rsi + 0x20], eax
mov rsi, qword [rsi + 0x18]
test rsi, rsi
jne 0x14018b336
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14018b360
mov rcx, qword [r14]
call fcn.14018db4c
mov qword [rbx + 0x10], rdi
jmp 0x14018b581
mov ecx, edx
sub ecx, 0x38
je 0x14018b26f
sub ecx, 1
je 0x14018b26f
sub ecx, 2
je 0x14018b97e
sub ecx, 0x10
je 0x14018b957
sub ecx, 0x3f
je 0x14018b903
sub ecx, 3
je 0x14018b97e
sub ecx, 0xf
je 0x14018b8da
sub ecx, 0xf
je 0x14018b88a
cmp ecx, 1
jne 0x14018ba76
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14018b3cf
mov r15d, dword [rax]
jmp 0x14018b3d2
mov r15d, edi
mov rcx, qword [r14]
mov eax, dword [rsi + 0x28]
and eax, 0x4001
mov dword [rsp + 0xd8], edi
test dword [rbx + 4], 0x1000000
mov dl, byte [rcx + 0x64]
mov byte [rsp + 0xc8], dl
mov dword [rsp + 0xd0], edi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x34], eax
je 0x14018b412
mov r12, qword [rbx + 0x40]
cmp byte [r12 + 0x20], 0xa6
jne 0x14018b415
mov r12, rdi
mov rax, qword [rbx + 8]
mov r9b, dl
mov rdx, rax
mov qword [rsp + 0x40], rax
mov r8d, r15d
mov byte [rsp + 0x20], dil
call fcn.1401a10f8
mov r13, rax
mov ebp, 1
test rax, rax
jne 0x14018b474
mov r9b, byte [rsp + 0xc8]
lea r8d, [rax - 2]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [r14]
mov byte [rsp + 0x20], dil
call fcn.1401a10f8
mov r13, rax
mov ecx, edi
test r13, r13
mov eax, edi
sete al
test r13, r13
setne cl
jmp 0x14018b64b
cmp qword [r13 + 0x20], rdi
mov eax, edi
setne al
test dword [r13 + 4], 0x400
mov dword [rsp + 0x30], eax
je 0x14018b549
bts dword [rbx + 4], 0x12
cmp r15d, 2
jne 0x14018b532
mov rax, qword [rsp + 0x38]
or r15, 0xffffffffffffffff
movsd xmm0, qword [0x1404e7bd8]
movsd qword [rsp + 0xc8], xmm0
mov rax, qword [rax + 0x28]
cmp byte [rax], 0x99
jne 0x14018b512
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x14018b4cf
mov r8d, edi
jmp 0x14018b4e2
mov r8, r15
inc r8
cmp byte [rcx + r8], dil
jne 0x14018b4d2
and r8d, 0x3fffffff
mov r9b, bpl
lea rdx, [rsp + 0xc8]
call fcn.14015f360
movsd xmm2, qword [rsp + 0xc8]
comisd xmm2, xmmword [0x1404e7ad8]
ja 0x14018b512
mulsd xmm2, qword [0x1404e7b60]
cvttsd2si r15d, xmm2
mov dword [rbx + 0x2c], r15d
test r15d, r15d
jns 0x14018b549
mov r8, rbx
lea rdx, [0x1404e2cf0]
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
jmp 0x14018b549
mov rax, qword [r13 + 0x38]
mov ecx, 0x7800000
mov edx, 0x800000
cmp byte [rax], 0x75
cmove ecx, edx
mov dword [rbx + 0x2c], ecx
mov r9, qword [r13 + 0x38]
xor r8d, r8d
mov rcx, r14
mov qword [rsp + 0x20], rdi
lea edx, [r8 + 0x1f]
call fcn.14019941c
test eax, eax
je 0x14018b588
cmp eax, ebp
jne 0x14018b57e
mov r8, rbx
lea rdx, [0x1404e2d30]
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
mov byte [rbx], 0x79
mov eax, ebp
jmp 0x14018ba81
test dword [r13 + 4], 0x2800
je 0x14018b597
bts dword [rbx + 4], 0x13
test dword [r13 + 4], 0x800
mov r15d, 0x40000000
jne 0x14018b5c9
test byte [rsi + 0x28], 0x2a
je 0x14018b5de
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, [0x1404e2d58]
mov rdx, rsi
mov rcx, r14
call fcn.14018b170
jmp 0x14018b5de
mov al, byte [rsi + 0x28]
and al, 0x2e
mov byte [rbx + 2], al
test dword [rsi + 0x28], 0x40000
je 0x14018b5de
or dword [rbx + 4], r15d
test dword [r13 + 4], 0x40000
je 0x14018b5fe
cmp byte [r14 + 0x1e], dil
jne 0x14018b5fe
mov rax, qword [r14]
test byte [rax + 0x2c], 0x20
jne 0x14018b5fe
mov eax, ebp
mov r13, rdi
jmp 0x14018b644
test dword [r13 + 4], 0x280000
je 0x14018b63d
cmp byte [r14 + 0x124], 2
jae 0x14018b63d
test dword [rbx + 4], r15d
je 0x14018b63d
test dword [r13 + 4], 0x80000
jne 0x14018b62b
mov rax, qword [r14]
test byte [rax + 0x30], 0x80
jne 0x14018b63d
mov r8, rbx
lea rdx, [0x1404e3040]
mov rcx, r14
call fcn.14015f150
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xd0]
cmp byte [r14 + 0x124], 2
jae 0x14018b765
test r13, r13
je 0x14018b6a4
cmp qword [r13 + 0x28], rdi
jne 0x14018b6a4
test r12, r12
je 0x14018b6a4
mov r8, rbx
lea rdx, [0x1404e2d78]
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
mov r15d, dword [rsp + 0x30]
test r15d, r15d
je 0x14018b775
mov rax, r12
neg rax
sbb ecx, ecx
neg ecx
add ecx, 0xffffbffe
and dword [rsi + 0x28], ecx
jmp 0x14018b775
mov r15d, dword [rsp + 0x30]
test r15d, r15d
je 0x14018b705
mov edx, 0x10000
test byte [rsi + 0x28], bpl
je 0x14018b6d2
test dword [r13 + 4], edx
je 0x14018b6c4
test r12, r12
je 0x14018b6e4
test r12, r12
je 0x14018b705
test dword [rsi + 0x28], 0x4000
jne 0x14018b705
test dword [r13 + 4], edx
jne 0x14018b6e4
lea r8, [0x1404e2db0]
test r12, r12
je 0x14018b6eb
lea r8, [0x1404e2da4]
mov r9, rbx
lea rdx, [0x1404e2dc0]
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
mov r15d, edi
jmp 0x14018b775
test eax, eax
je 0x14018b71e
mov rax, qword [r14]
cmp byte [rax + 0xc5], dil
jne 0x14018b71e
lea rdx, [0x1404e2de0]
jmp 0x14018b729
test ecx, ecx
je 0x14018b73c
lea rdx, [0x1404e2df8]
mov r8, rbx
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
jmp 0x14018b683
test r15d, r15d
jne 0x14018b68c
test dword [rbx + 4], 0x1000000
je 0x14018b775
mov r8, rbx
lea rdx, [0x1404e2e28]
mov rcx, r14
call fcn.14015f150
add dword [rsi + 0x24], ebp
jmp 0x14018b775
test dword [rbx + 4], 0x1000000
mov r15d, dword [rsp + 0x30]
cmovne r15d, ebp
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xc0]
call fcn.14018a094
test r15d, r15d
je 0x14018b581
test r12, r12
je 0x14018b812
cmp byte [r14 + 0x124], 2
mov rbx, qword [rsi + 0x30]
jae 0x14018b7cc
test rbx, rbx
je 0x14018b7ae
mov rdx, qword [rbx + 0x78]
jmp 0x14018b7b1
mov rdx, rdi
mov r9, r13
mov r8, r12
mov rcx, r14
call fcn.1401ce884
mov rax, qword [r14]
cmp byte [rax + 0x67], dil
jne 0x14018ba76
mov r14, qword [rsp + 0xc0]
mov rdx, qword [r12 + 0x10]
mov rcx, r14
call fcn.14018a094
mov rdx, qword [r12 + 0x18]
mov rcx, r14
call fcn.14018a094
mov rdx, qword [r12 + 0x48]
test rdx, rdx
je 0x14018b800
mov rcx, r14
call fcn.140189fe4
mov rdx, r12
mov rcx, rbx
call fcn.1401cf7cc
bts dword [rsi + 0x28], 0xf
jmp 0x14018b87e
test dword [rbx + 4], 0x1000000
mov byte [rbx], 0xa8
mov byte [rbx + 2], dil
je 0x14018b83c
mov rax, qword [rbx + 0x40]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x14018b83c
mov rcx, qword [rsp + 0xc0]
call fcn.140189fe4
mov r15, rsi
mov r8, qword [r15 + 8]
mov rdx, rbx
mov rcx, r14
call fcn.1401937a8
test eax, eax
jne 0x14018b85f
add byte [rbx + 2], bpl
mov r15, qword [r15 + 0x18]
test r15, r15
jne 0x14018b83f
test r15, r15
je 0x14018b87e
test r13, r13
je 0x14018b87e
mov eax, dword [r13 + 4]
xor eax, 0xffffefff
and eax, 0x8001000
or eax, 0x10
or dword [r15 + 0x28], eax
mov eax, dword [rsp + 0x34]
or dword [rsi + 0x28], eax
jmp 0x14018b581
mov rcx, qword [rbx + 0x18]
call fcn.14018c9b8
mov rsi, rax
test rax, rax
je 0x14018b26f
cmp byte [rax], 0x3b
je 0x14018b8ad
cmp byte [rax], 0xaa
jne 0x14018b26f
mov rdx, rsi
mov rcx, r8
call fcn.14018b200
cmp eax, 2
jne 0x14018b8c2
jmp 0x14018ba81
cmp byte [rsi], 0xaa
jne 0x14018b26f
mov al, byte [rbx]
mov byte [rbx + 2], al
xor eax, eax
mov byte [rbx], 0xaf
jmp 0x14018ba81
test byte [rsi + 0x28], 0x2e
je 0x14018ba76
mov r9, rbx
mov qword [rsp + 0x20], rbx
lea r8, [0x1404e2e68]
mov rdx, rsi
mov rcx, r14
call fcn.14018b170
jmp 0x14018ba76
test dword [rbx + 4], 0x800
je 0x14018ba76
test byte [rsi + 0x28], 0x2e
mov edi, dword [rsi + 0x20]
je 0x14018b935
mov r9, rbx
mov qword [rsp + 0x20], rbx
lea r8, [0x1404e2e58]
mov rdx, rsi
mov rcx, r14
call fcn.14018b170
jmp 0x14018b941
mov rdx, qword [rbx + 0x20]
mov rcx, r8
call fcn.14018a0ec
cmp edi, dword [rsi + 0x20]
je 0x14018ba76
or dword [rbx + 4], 0x20
or dword [rsi + 0x28], 0x40
jmp 0x14018ba76
mov rcx, qword [rsi + 8]
or r15, 0xffffffffffffffff
mov byte [rbx], 0xa7
mov rax, qword [rcx + 0x28]
mov qword [rbx + 0x40], rax
mov eax, dword [rcx + 0x4c]
add word [rbx + 0x30], r15w
mov dword [rbx + 0x2c], eax
mov byte [rbx + 1], 0x44
jmp 0x14018ba76
cmp dl, 0x3b
jne 0x14018b992
mov r9, qword [rbx + 8]
mov rdx, rdi
mov r8, rdi
jmp 0x14018ba1e
test byte [rsi + 0x28], 0x28
mov rbp, qword [rbx + 0x10]
je 0x14018b9b6
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, [0x1404e2cd8]
mov rdx, rsi
mov rcx, r14
call fcn.14018b170
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x3b
jne 0x14018b9c4
mov rdx, rdi
jmp 0x14018b9d0
mov rdx, qword [rbp + 8]
mov rbp, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
cmp byte [r14 + 0x124], 2
mov r8, qword [rbp + 8]
mov r9, qword [rax + 8]
jb 0x14018ba1e
mov rcx, qword [r14 + 0x190]
jmp 0x14018b9f4
cmp qword [rcx], rax
je 0x14018b9fb
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x14018b9eb
jmp 0x14018b9fe
mov qword [rcx], rbx
mov rcx, qword [r14 + 0x190]
jmp 0x14018ba10
cmp qword [rcx], rbp
je 0x14018ba17
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x14018ba07
jmp 0x14018ba1e
lea rax, [rbx + 0x40]
mov qword [rcx], rax
mov qword [rsp + 0x28], rbx
mov rcx, r14
mov qword [rsp + 0x20], rsi
call fcn.14018a538
jmp 0x14018ba81
mov rcx, qword [rbx + 0x18]
call fcn.14018cd74
cmp r8d, eax
je 0x14018ba76
lea rdx, [0x1404e2bc0]
mov rcx, r14
call fcn.14015f150
mov rcx, qword [r14]
mov ebp, 1
test byte [rbx + 4], bpl
jne 0x14018ba62
cmp dword [rbx + 0x34], edi
jg 0x14018ba6b
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x14018ba57
test rbx, rbx
je 0x14018ba76
mov eax, dword [rbx + 0x34]
mov dword [rcx + 0x54], eax
mov eax, dword [r14 + 0x30]
neg eax
sbb eax, eax
and eax, 2
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret