Function at 0x140018490
Capabilities:
Inspect section memory permissions

Disassembly:
push rdx
push rcx
push rbx
push r8
push r10
push r11
push r12
push r14
push r15
push rbp
sub rsp, 0x38
mov r15d, eax
xor eax, eax
cpuid
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], ebx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x2c], edx
xor bpl, bpl
cmp dword [rsp + 0x20], 0
je 0x1400188bc
cmp r15d, 1
je 0x1400188dc
mov eax, 1
cpuid
mov r10d, edx
mov r11d, eax
and r10d, 1
mov r8d, ecx
lea r10, [r10*2 + 1]
mov rax, r10
or rax, 4
test edx, 0x8000
cmovne r10, rax
mov rcx, r10
or rcx, 8
test edx, 0x800000
cmovne r10, rcx
test edx, 0x1000000
je 0x140018614
or r10, 0x10
mov r12, r10
or r12, 0x20
test edx, 0x2000000
cmovne r10, r12
mov r14, r10
or r14, 0x40
test edx, 0x4000000
cmovne r10, r14
mov rbp, r10
or rbp, 0x80
test r8d, 1
cmovne r10, rbp
mov bpl, 1
mov r12, r10
or r12, 0x100
test r8d, 0x200
cmovne r10, r12
mov r14, r10
or r14, 0x800
test r8d, 0x400000
cmovne r10, r14
mov rax, r10
or rax, 0x200
test r8d, 0x80000
cmovne r10, rax
mov rcx, r10
or rcx, 0x400
test r8d, 0x100000
cmovne r10, rcx
mov rbx, r10
or rbx, 0x1000
test r8d, 0x800000
cmovne r10, rbx
mov rdx, r10
or rdx, 0x2000
test r8d, 2
cmovne r10, rdx
mov r12, r10
or r12, 0x4000
test r8d, 0x2000000
cmovne r10, r12
mov eax, 7
xor ecx, ecx
cpuid
mov r12d, ecx
mov r14d, ebx
movabs rcx, 0x800000000
or rcx, r10
test r14d, 0x20000000
cmovne r10, rcx
mov rax, r10
or rax, 0x20000
test r8d, 0x40000000
cmovne r10, rax
test bpl, bpl
jne 0x14001863c
mov eax, 7
xor ecx, ecx
cpuid
mov r12d, ecx
mov r14d, ebx
mov ebp, r14d
mov rcx, r10
and ebp, 0x108
or rcx, 0x80000
cmp ebp, 0x108
cmove r10, rcx
mov eax, 0x80000001
cpuid
mov rdx, r10
or rdx, 0x100000
test cl, 0x20
cmovne r10, rdx
mov rcx, r10
or rcx, 0x200000
test r14d, 0x10
cmovne r10, rcx
mov rbx, r10
or rbx, 0x400000
test r14d, 0x800
cmovne r10, rbx
mov rbp, r10
or rbp, 0x10000000
test r14d, 0x80000
cmovne r10, rbp
mov rax, r10
or rax, 0x20000000
test r14d, 0x40000
cmovne r10, rax
test r8d, 0x8000000
je 0x14001884d
xor ecx, ecx
xgetbv
or r10, 1
mov edx, eax
and edx, 6
cmp edx, 6
jne 0x14001884d
mov rdx, r10
or rdx, 0x10000
test r8d, 0x10000000
cmovne r10, rdx
mov rcx, r10
or rcx, 0x8000
test r8d, 0x20000000
cmovne r10, rcx
mov rbx, r10
or rbx, 0x800000
test r14d, 0x20
cmovne r10, rbx
mov rbp, r10
or rbp, 0x40000
test r8d, 0x1000
mov r8d, eax
cmovne r10, rbp
and r8d, 0x18
cmp r8d, 0x18
jne 0x140018765
or r10, 1
movabs rdx, 0x1000000000
or rdx, r10
test r14d, 0x4000
cmovne r10, rdx
and eax, 0xe0
cmp eax, 0xe0
jne 0x14001884d
or r10, 1
movabs rdx, 0x400000000
mov rax, r10
movabs rcx, 0x100000000
or rax, 0x8000000
test r14d, 0x10000
movabs rbx, 0x200000000
movabs r8, 0x2000000000
cmovne r10, rax
mov eax, r14d
or rdx, r10
test r14d, 0x10000000
cmovne r10, rdx
movabs rdx, 0x4000000000
or rcx, r10
test r14d, 0x8000000
cmovne r10, rcx
and eax, 0x80000000
or rbx, r10
test r14d, 0x4000000
cmovne r10, rbx
mov rbp, r10
or rbp, 0x1000000
test r14d, 0x20000
cmovne r10, rbp
or r8, r10
test r14d, 0x40000000
cmovne r10, r8
or rdx, r10
cmp eax, 0x80000000
cmove r10, rdx
mov rcx, r10
or rcx, 0x40000000
test r14d, 0x200000
movabs r14, 0x8000000000
cmovne r10, rcx
or r14, r10
test r12d, 2
cmovne r10, r14
mov eax, r11d
shr eax, 0xc
shr r11d, 4
and eax, 0xf0
and r11d, 0xf
add eax, r11d
cmp eax, 0x1c
je 0x140018872
cmp eax, 0x26
je 0x140018872
cmp eax, 0x27
jne 0x140018877
bts r10, 0x1f
cmp r15d, 1
je 0x140018899
mov qword [0x140036548], r10
add rsp, 0x38
pop rbp
pop r15
pop r14
pop r12
pop r11
pop r10
pop r8
pop rbx
pop rcx
pop rdx
ret
mov qword [0x140036540], r10
mov qword [0x140036548], r10
add rsp, 0x38
pop rbp
pop r15
pop r14
pop r12
pop r11
pop r10
pop r8
pop rbx
pop rcx
pop rdx
ret
mov qword [0x140036540], 1
add rsp, 0x38
pop rbp
pop r15
pop r14
pop r12
pop r11
pop r10
pop r8
pop rbx
pop rcx
pop rdx
ret
cmp dword [rsp + 0x24], 0x756e6547
jne 0x1400188bc
cmp dword [rsp + 0x2c], 0x49656e69
jne 0x1400188bc
cmp dword [rsp + 0x28], 0x6c65746e
jne 0x1400188bc
jmp 0x1400184d3