Function at 0x140014d80
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x10
mov byte [rcx + 2], 1
lea r8, [0x1400432cc]
mov dword [rcx + 0x18], 1
mov r9, rcx
mov rax, qword [rcx + 0x80]
xor r11d, r11d
bts rax, 4
mov qword [rcx + 0x80], rax
xor eax, eax
xor ecx, ecx
cpuid
mov esi, eax
xor r10d, r10d
cmp dword [r8 - 4], ebx
jne 0x140014de3
cmp dword [r8], edx
jne 0x140014de3
cmp dword [r8 + 4], ecx
je 0x140014df0
inc r10d
add r8, 0x14
cmp r10d, 4
jb 0x140014dd2
lea rax, [r10 + r10*4]
lea r12, [0x140000000]
mov rax, qword [r12 + rax*4 + 0x432c0]
mov qword [r9 + 0x24], rax
cmp esi, 1
jb 0x1400150ae
xor ecx, ecx
mov eax, 1
cpuid
mov edi, edx
mov r8d, eax
shr r8d, 4
mov edx, eax
shr edx, 8
and r8d, 0xf
mov r10d, ecx
and edx, 0xf
mov dword [rsp + 8], r10d
mov ecx, eax
mov dword [rsp + 0xc], edi
cmp edx, 6
je 0x140014e46
cmp edx, 0xf
jne 0x140014e61
shr eax, 0xc
and eax, 0xf0
add r8d, eax
cmp edx, 0xf
jne 0x140014e61
mov eax, ecx
shr eax, 0x14
movzx edx, al
add edx, 0xf
movzx eax, bl
mov dword [r9 + 0xc], eax
mov eax, ecx
shr eax, 0xc
and ecx, 0xf
and eax, 3
mov dword [r9 + 0x10], ecx
mov dword [r9 + 0x14], eax
mov ecx, r10d
shr ecx, 5
mov eax, ebx
shr eax, 0x10
and ecx, 1
movzx eax, al
mov dword [r9 + 0x18], eax
shl rcx, 7
mov dword [r9 + 8], r8d
mov dword [r9 + 4], edx
shr ebx, 8
movzx eax, bl
shl eax, 3
mov dword [r9 + 0x1c], eax
mov eax, r10d
shr eax, 9
mov rbx, qword [rsp + 8]
and eax, 1
or rcx, rax
movzx eax, r10b
and eax, 1
shl rcx, 4
or rcx, rax
mov eax, r10d
shr eax, 6
and eax, 1
shl rcx, 4
or rcx, rax
mov eax, r10d
shr eax, 1
and eax, 1
shl rcx, 0x14
or rcx, rax
mov eax, r10d
shr eax, 3
and eax, 1
shl rcx, 0xb
or rcx, rax
mov eax, r10d
shr eax, 0xd
and eax, 1
shl rcx, 0xc
or qword [r9 + 0x80], rcx
mov ecx, r10d
shl rax, 0x30
or qword [r9 + 0x78], rax
mov eax, r10d
shr eax, 0x13
and eax, 1
shr ecx, 0x14
and ecx, 1
add rcx, rcx
or rcx, rax
mov eax, r10d
shr eax, 0x17
and eax, 1
shl rcx, 0x17
or rcx, rax
mov eax, r10d
shr eax, 0x16
and eax, 1
shl rcx, 0xb
or rcx, rax
mov rax, rbx
shr rax, 0x13
and eax, 0x40
shl rcx, 0xe
or qword [r9 + 0x80], rcx
or qword [r9 + 0x78], rax
mov rax, rbx
shr rax, 0x1a
and eax, 1
or qword [r9 + 0x88], rax
mov rcx, rbx
mov rax, rbx
shr rax, 6
and ecx, 0x40000000
and eax, 0x200000
shl rcx, 3
or rcx, rax
mov r8d, edi
or qword [r9 + 0x80], rcx
mov ecx, edi
shr ecx, 4
and ecx, 1
shr r8, 0x1c
shl rcx, 0x11
and r8d, 1
movzx eax, dil
add r8, r8
and eax, 1
shl rax, 0x38
or qword [r9 + 0x78], rax
mov eax, edi
shr eax, 5
and eax, 1
or rcx, rax
mov eax, edi
shr eax, 0xf
shl rcx, 0x12
and eax, 1
or qword [r9 + 0x80], rcx
mov ecx, edi
shr ecx, 8
and ecx, 1
shl rcx, 3
or rcx, rax
mov eax, edi
shr eax, 0x13
and eax, 1
shl rcx, 4
or rcx, rax
mov eax, edi
shr eax, 0x17
and eax, 1
shl rcx, 0x2a
or qword [r9 + 0x78], rcx
mov ecx, edi
shl rax, 0xa
or qword [r9 + 0x80], rax
mov eax, edi
shr rcx, 0x19
and eax, 0x1000000
shl rax, 0x25
and ecx, 1
or qword [r9 + 0x78], rax
mov eax, ecx
shl rax, 0x2d
shl rcx, 0x2e
or rcx, rax
or qword [r9 + 0x80], rcx
or r8, qword [r9 + 0x78]
mov qword [r9 + 0x78], r8
test byte [r9 + 0x88], 1
je 0x140015074
mov eax, dword [r9 + 0x80]
shr rax, 0x15
test al, 1
je 0x140015074
xor ecx, ecx
xgetbv
shl rdx, 0x20
or rdx, rax
mov r11, rdx
mov eax, r10d
shr eax, 0x1c
test al, 1
je 0x1400150ae
mov eax, r11d
and eax, 6
cmp al, 6
jne 0x1400150ae
shr rbx, 0x1d
bts r8, 0xc
mov eax, r10d
and ebx, 1
shr eax, 0xc
and eax, 1
add rax, rax
or rax, rbx
shl rax, 0x35
or rax, r8
mov qword [r9 + 0x78], rax
mov r10d, r11d
mov edi, r11d
and r10d, 0x60000
and edi, 0xe6
xor r14b, r14b
cmp esi, 7
jb 0x1400155f0
xor ecx, ecx
mov eax, 7
cpuid
mov ebp, ecx
mov r15d, eax
mov r8d, edx
mov dword [rsp + 0xc], edx
mov edx, ebx
movzx eax, bl
and eax, 1
shr edx, 3
shl rax, 0x15
and edx, 1
or rdx, rax
mov dword [rsp + 8], ebp
mov eax, ebx
shl rdx, 0x24
or qword [r9 + 0x78], rdx
mov ecx, ebx
shr ecx, 7
mov r14d, ebx
and ecx, 1
shr eax, 4
shl rcx, 0x28
and eax, 1
or rcx, rax
shr r14d, 0xe
shl rcx, 2
mov eax, ebx
or qword [r9 + 0x80], rcx
and r14b, 1
shr eax, 8
mov ecx, ebx
shr ecx, 9
and eax, 1
and ecx, 1
shl rcx, 0xf
or rcx, rax
mov eax, ebx
shl rcx, 0x25
or qword [r9 + 0x78], rcx
mov ecx, ebx
shr eax, 0x12
shr ecx, 0xb
and eax, 1
and ecx, 1
shl rcx, 3
or rcx, rax
mov eax, ebx
shr eax, 0x13
shl rcx, 0x22
and eax, 1
or qword [r9 + 0x80], rcx
mov ecx, ebx
shl rax, 5
or qword [r9 + 0x78], rax
mov eax, ebx
shr ecx, 0x17
shr eax, 0x14
and ecx, 1
and eax, 1
shl rcx, 0x17
shl rax, 0x29
or qword [r9 + 0x80], rax
mov eax, ebx
and eax, 0x1000000
or rcx, rax
movzx eax, bpl
shl rcx, 0x14
and eax, 1
or qword [r9 + 0x78], rcx
mov ecx, ebp
shr ecx, 5
and ecx, 1
shl rcx, 0x20
or rcx, rax
mov eax, ebp
shr eax, 4
and eax, 1
shl rcx, 6
or rcx, rax
mov rdx, qword [rsp + 8]
mov eax, ebx
and eax, 0x20000000
shl rcx, 0xc
or rcx, rax
mov eax, ebp
shr eax, 7
and eax, 1
shl rcx, 0xa
or qword [r9 + 0x80], rcx
mov ecx, ebp
shl rax, 0x27
or qword [r9 + 0x78], rax
mov eax, ebp
shr eax, 9
and eax, 1
shr ecx, 0xa
and ecx, 1
shl rcx, 2
or rcx, rax
mov eax, ebp
shr eax, 0x16
and eax, 1
shl rcx, 0x1a
or rcx, rax
mov eax, ebp
shr eax, 8
and eax, 1
shl rcx, 0x1e
or rcx, rax
mov rax, rdx
and eax, 0x2000000
add rcx, rcx
or qword [r9 + 0x80], rcx
mov rcx, rdx
shl rax, 0x10
or qword [r9 + 0x78], rax
mov rax, rdx
and eax, 0x8000000
shr rcx, 2
and ecx, 0x4000000
and edx, 0x20000000
or rcx, rax
mov eax, r8d
shr eax, 4
and eax, 1
shr rcx, 0xb
or qword [r9 + 0x80], rcx
mov ecx, r8d
shl rax, 0x24
or rax, rdx
shr ecx, 5
shl rax, 0x16
and ecx, 1
or qword [r9 + 0x78], rax
add rcx, rcx
mov eax, r8d
shr eax, 0x10
and eax, 1
or rcx, rax
mov eax, r8d
shr eax, 0xe
and eax, 1
shl rcx, 0x11
or rcx, rax
mov eax, r8d
shr eax, 0x12
and eax, 1
shl rcx, 0xe
or rcx, rax
mov eax, r8d
shr eax, 0x14
and eax, 1
shl rcx, 0x18
or qword [r9 + 0x80], rcx
shl rax, 0x26
or qword [r9 + 0x78], rax
mov rcx, qword [r9 + 0x80]
movzx eax, cl
shr al, 2
test al, 1
jne 0x140015305
mov rax, rcx
shr rax, 0x25
test al, 1
je 0x140015311
bts rcx, 0x36
mov qword [r9 + 0x80], rcx
mov eax, ebx
shr eax, 5
test al, 1
je 0x140015332
mov rcx, qword [r9 + 0x78]
mov rax, rcx
shr rax, 0xc
test al, 1
je 0x140015332
bts rcx, 0xd
mov qword [r9 + 0x78], rcx
cmp edi, 0xe6
jne 0x14001544c
mov eax, ebx
shr eax, 0x10
test al, 1
je 0x14001544c
mov eax, ebp
mov edx, r8d
shr eax, 0xb
mov ecx, ebp
and eax, 1
shr edx, 8
and edx, 1
shr ecx, 0xe
add rdx, rdx
and ecx, 1
or rdx, rax
shl rcx, 0x1f
shl rdx, 2
mov eax, ebp
shr eax, 6
and eax, 1
or rdx, rax
mov eax, ebp
shr eax, 1
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr rax, 0x1a
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr eax, 0x15
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, r8d
shr eax, 0x17
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr rax, 0x1b
and eax, 1
shl rdx, 2
or rdx, rax
mov eax, ebx
shr eax, 0x11
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr rax, 0x1c
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr rax, 0x1e
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebp
shr eax, 0xc
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, r8d
shr eax, 2
and eax, 1
shl rdx, 2
or rdx, rax
mov eax, r8d
shr eax, 3
add rdx, rdx
and eax, 1
or rdx, rax
mov eax, ebx
shr rax, 3
or rcx, rax
shl rdx, 0xe
movabs rax, 0x1ffffffff0000000
and rcx, rax
mov rax, qword [r9 + 0x78]
or rdx, rcx
bts rax, 0x16
or rdx, rax
mov qword [r9 + 0x78], rdx
cmp r10d, 0x60000
jne 0x140015485
mov eax, r8d
mov ecx, r8d
shr ecx, 0x16
and eax, 0x1000000
and ecx, 1
mov edx, r8d
shr rdx, 2
and edx, 0x800000
shl rcx, 8
or rdx, rax
shr rdx, 0xd
or rdx, rcx
or qword [r9 + 0x78], rdx
cmp r15d, 1
jb 0x1400155f0
mov eax, 7
mov ecx, 1
cpuid
mov edi, edx
mov dword [rsp], eax
mov r8d, eax
mov dword [rsp + 8], ecx
mov ecx, eax
mov dword [rsp + 4], ebx
shr ecx, 3
and ecx, 1
shl rcx, 0x1e
or qword [r9 + 0x80], rcx
mov ecx, eax
shr eax, 0xb
and eax, 1
shr ecx, 0xa
movzx edx, cl
mov rcx, qword [rsp]
shl rdx, 3
or rdx, rax
mov eax, r8d
add rdx, rdx
shr eax, 0xc
and eax, 1
or rdx, rax
mov eax, r8d
shl rdx, 0xc
shr eax, 7
and eax, 1
or rdx, rax
mov eax, edi
shl rdx, 0x2f
or qword [r9 + 0x78], rdx
mov edx, r8d
shr edx, 0x13
and edx, 1
shr eax, 0xe
shl rdx, 0x24
and eax, 1
or rdx, rax
mov rax, rcx
shl rdx, 7
shr rax, 0x1b
and eax, 1
shr rcx, 0x1a
or rdx, rax
and ecx, 1
shl rdx, 0xd
mov eax, r8d
or rdx, rcx
shr eax, 0x16
shl rdx, 3
and eax, 1
or rdx, rax
shl rdx, 3
or qword [r9 + 0x80], rdx
mov edx, edi
shr edx, 0x12
and edx, 1
shl rdx, 0x28
or rdx, qword [r9 + 0x78]
mov rax, rdx
mov qword [r9 + 0x78], rdx
shr rax, 0xd
test al, 1
je 0x1400155b1
mov eax, r8d
mov ecx, edi
shr eax, 4
and eax, 1
shr ecx, 4
and ecx, 1
add rcx, rcx
or rcx, rax
mov eax, edi
shr eax, 5
add rcx, rcx
and eax, 1
or rcx, rax
mov eax, r8d
shr eax, 0x17
add rcx, rcx
and eax, 1
or rcx, rax
shl rcx, 0x20
or rcx, rdx
mov rdx, rcx
mov qword [r9 + 0x78], rcx
mov rax, rdx
shr rax, 0x16
test al, 1
je 0x1400155d3
mov eax, r8d
shr eax, 5
and eax, 1
shl rax, 0x10
or rax, rdx
mov rdx, rax
mov qword [r9 + 0x78], rax
cmp r10d, 0x60000
jne 0x1400155f0
mov eax, r8d
shr eax, 0x15
and eax, 1
shl rax, 9
or rax, rdx
mov qword [r9 + 0x78], rax
cmp esi, 0xd
jb 0x140015668
xor ecx, ecx
mov eax, 0xd
cpuid
and r11d, eax
mov dword [rsp + 8], ecx
and r11d, 0x18
mov dword [rsp + 0xc], edx
cmp r11b, 0x18
jne 0x14001562b
test r14b, r14b
je 0x14001562b
mov rdx, qword [r9 + 0x80]
bts rdx, 0x11
mov qword [r9 + 0x80], rdx
mov eax, 0xd
mov ecx, 1
cpuid
mov dword [rsp + 0xc], edx
mov edx, eax
shr edx, 3
and edx, 1
mov dword [rsp + 8], ecx
add rdx, rdx
movzx ecx, al
shr eax, 1
and ecx, 1
or rdx, rcx
and eax, 1
add rdx, rdx
or rdx, rax
add rdx, rdx
or qword [r9 + 0x88], rdx
cmp esi, 0xe
jb 0x140015691
mov eax, 0xe
xor ecx, ecx
cpuid
mov eax, ebx
mov dword [rsp + 8], ecx
shr eax, 4
and eax, 1
mov dword [rsp + 0xc], edx
shl rax, 0x1d
or qword [r9 + 0x80], rax
mov esi, 0x80000000
lea r14, [r9 + 0x34]
mov r10d, esi
lea rbp, [0x140043324]
mov r15d, 0x8000001f
movabs r13, 0xffffffff8000000
xor ecx, ecx
mov eax, r10d
cpuid
mov r11d, ecx
lea ecx, [r10 - 0x80000000]
mov edi, edx
mov dword [rsp + 8], r11d
mov dword [rsp + 0xc], edi
cmp ecx, 0x1f
ja case.0x1400156ed.2147483643
movzx ecx, byte [r12 + rcx + 0x15990]
mov edx, dword [r12 + rcx*4 + 0x15978]
add rdx, r12
jmp rdx
cmp eax, r15d
mov esi, eax
cmova esi, r15d
jmp case.0x1400156ed.2147483643
mov eax, r11d
mov ecx, r11d
shr eax, 2
mov rdx, rdi
and eax, 1
shr ecx, 0x15
and ecx, 1
shr rdx, 4
add rcx, rcx
and rdx, r13
or rcx, rax
mov eax, r11d
shr eax, 6
and eax, 1
shl rcx, 2
or rcx, rax
mov eax, r11d
shr eax, 0xc
and eax, 1
shl rcx, 0xa
or rcx, rax
mov eax, r11d
shr eax, 8
and eax, 1
shl rcx, 0xd
or rcx, rax
mov eax, r11d
shr eax, 7
shl rcx, 7
and eax, 1
or rcx, rax
mov eax, r11d
shl rcx, 0xc
shr eax, 5
and eax, 1
or rcx, rax
mov eax, r11d
add rcx, rcx
shr eax, 0xf
and eax, 1
or rcx, rax
movzx eax, r11b
shl rcx, 2
and eax, 1
or rcx, rax
mov rax, qword [rsp + 8]
shl rcx, 5
shr rax, 0x10
and eax, 0x2000
or rcx, rax
mov eax, edi
or qword [r9 + 0x80], rcx
mov ecx, edi
shr ecx, 0x15
and ecx, 1
shr eax, 0x14
shl rcx, 0x3c
and eax, 1
or rcx, rax
mov eax, edi
shl rcx, 2
and eax, 0x8000000
or qword [r9 + 0x78], rcx
mov ecx, edi
shr ecx, 0x16
and ecx, 1
shl rcx, 2
or rcx, rax
mov eax, edi
shr rax, 2
shl rcx, 9
and eax, 0x8000000
or rcx, rax
or qword [r9 + 0x80], rcx
mov ecx, edi
shr rcx, 0x1e
and ecx, 1
mov eax, ecx
shl rax, 4
or qword [r9 + 0x78], rax
shl rcx, 0xb
or rdx, rcx
or rdx, qword [r9 + 0x80]
mov qword [r9 + 0x80], rdx
mov rbx, qword [r9 + 0x78]
mov rax, rbx
shr rax, 0xc
test al, 1
je 0x140015859
mov eax, r11d
shr eax, 0xb
movzx ecx, al
mov eax, r11d
shr eax, 0x10
shl rcx, 0x3f
and eax, 1
or rcx, rdx
shl rax, 0x37
mov qword [r9 + 0x80], rcx
or qword [r9 + 0x78], rax
mov rbx, qword [r9 + 0x78]
xor eax, eax
nop dword [rax + rax]
movzx ecx, byte [r9 + rax + 0x24]
inc rax
cmp cl, byte [rax + rbp - 1]
jne case.0x1400156ed.2147483643
cmp rax, 4
jne 0x140015860
mov eax, r11d
shr eax, 4
and eax, 1
shl rax, 7
or rax, rbx
mov qword [r9 + 0x78], rax
jmp case.0x1400156ed.2147483643
mov dword [r14], eax
mov dword [r14 + 4], ebx
mov dword [r14 + 8], r11d
mov dword [r14 + 0xc], edi
add r14, 0x10
cmp r10d, 0x80000004
jne case.0x1400156ed.2147483643
mov r10d, 0x80000007
jmp case.0x1400156ed.2147483643
movzx ecx, bl
mov edx, ebx
shr edx, 9
and ecx, 1
and edx, 1
mov eax, ecx
shl rax, 0x2d
mov r10d, 0x8000001e
or qword [r9 + 0x78], rax
mov eax, ebx
shl rdx, 0x1d
or rdx, rcx
shr eax, 8
shl rdx, 0x17
and eax, 1
or rdx, rax
shl rdx, 9
or qword [r9 + 0x80], rdx
jmp case.0x1400156ed.2147483643
shr eax, 4
and eax, 1
shl rax, 0x2c
or qword [r9 + 0x80], rax
inc r10d
cmp r10d, esi
jbe 0x1400156b4
movzx ecx, byte [r9 + 0x34]
add r9, 0x34
xor bl, bl
mov rdx, r9
mov byte [r9], bl
test cl, cl
je 0x140015957
cmp cl, 0x20
jne 0x14001593b
cmp bl, 0x40
je 0x140015943
movzx eax, byte [r9 + 1]
sub al, cl
test al, 0xdf
je 0x140015943
mov byte [rdx], cl
movzx ebx, cl
inc rdx
movzx ecx, byte [r9 + 1]
inc r9
mov byte [r9], 0
test cl, cl
jne 0x140015926
mov byte [rdx], cl
jmp 0x14001595a
mov byte [r9], bl
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x10
pop r15
pop r14
pop r13
pop r12
pop rdi
ret