Function at 0x523160
Capabilities:
Inspect section memory permissions

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x5238b3
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, qword [0x006e1938]
mov rcx, qword [rdx]
nop
xor eax, eax
nop
call rcx
mov dword [rsp + 0x24], eax
call sym.github.com_klauspost_cpuid.vendorID
mov ecx, dword [rsp + 0x24]
test ecx, ecx
je 0x5238ab
mov qword [rsp + 0x28], rax
mov rdx, qword [0x006e1938]
mov rcx, qword [rdx]
mov eax, 1
call rcx
mov dword [rsp + 0x20], ecx
bt edi, 0xf
setb bl
movzx ebx, bl
mov rsi, rbx
or rbx, 0x10
test edi, 0x800000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x20
test edi, 0x2000000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x40
test edi, 0x2000000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x80
test edi, 0x4000000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x100
test ecx, 1
cmovne rsi, rbx
mov rbx, rsi
bts rsi, 0x3b
test ecx, 0x20
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x200
test ecx, 0x200
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x400
test ecx, 0x80000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x1000
test ecx, 0x100000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x1000000
test ecx, 0x2000000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x2000000
test ecx, 2
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x800000
test ecx, 0x800000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x20000000
test ecx, 0x40000000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x40000
test ecx, 0x20000000
cmovne rbx, rsi
mov rsi, rbx
bts rbx, 0x36
test ecx, 0x2000
cmovne rsi, rbx
mov rbx, qword [rsp + 0x28]
nop
cmp rbx, 1
jne 0x523337
bt edi, 0x1c
jae 0x523330
mov r8d, dword [rsp + 0x24]
cmp r8d, 4
jb 0x523340
mov dword [rsp + 0x1c], edi
mov qword [rsp + 0x30], rsi
call sym.github.com_klauspost_cpuid.threadsPerCore
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
or rcx, 0x4000000
cmp rax, 1
cmovg rsi, rcx
mov ecx, dword [rsp + 0x20]
mov rbx, qword [rsp + 0x28]
mov edi, dword [rsp + 0x1c]
mov r8d, dword [rsp + 0x24]
jmp 0x523340
mov r8d, dword [rsp + 0x24]
jmp 0x523340
mov r8d, dword [rsp + 0x24]
nop dword [rax]
cmp rbx, 2
jne 0x523381
bt edi, 0x1c
jae 0x523381
cmp r8d, 4
jb 0x523381
mov qword [rsp + 0x58], rsi
call sym.github.com_klauspost_cpuid.threadsPerCore
mov rsi, qword [rsp + 0x58]
mov rcx, rsi
or rcx, 0x4000000
cmp rax, 1
cmovg rsi, rcx
mov ecx, dword [rsp + 0x20]
mov rbx, qword [rsp + 0x28]
mov r8d, dword [rsp + 0x24]
bt ecx, 0x1a
jae 0x5233ec
bt ecx, 0x1b
jae 0x5233ec
bt ecx, 0x1c
jae 0x5233ec
mov qword [rsp + 0x50], rsi
mov rdx, qword [0x006e1948]
mov rcx, qword [rdx]
xor eax, eax
call rcx
and eax, 6
cmp eax, 6
jne 0x5233d4
mov rsi, qword [rsp + 0x50]
mov rcx, rsi
or rcx, 0x2000
or rsi, 0xa000
mov edi, dword [rsp + 0x20]
test edi, 0x1000
cmovne rcx, rsi
jmp 0x5233dd
mov edi, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x28]
mov r8d, dword [rsp + 0x24]
mov rsi, rcx
mov ecx, edi
cmp r8d, 7
jb 0x52370c
mov qword [rsp + 0x48], rsi
mov rdx, qword [0x006e1940]
mov rcx, qword [rdx]
mov eax, 7
xor ebx, ebx
call rcx
mov dword [rsp + 0x14], ebx
mov dword [rsp + 0x10], ecx
mov dword [rsp + 0xc], edi
mov rdx, qword [0x006e1940]
mov rsi, qword [rdx]
mov eax, 7
mov ebx, 1
call rsi
mov rcx, qword [rsp + 0x48]
bt ecx, 0xd
jae 0x52344e
mov ebx, dword [rsp + 0x14]
bt ebx, 5
jae 0x523452
or rcx, 0x4000
jmp 0x523452
mov ebx, dword [rsp + 0x14]
bt ebx, 3
jae 0x523475
mov rsi, rcx
or rsi, 0x80000
or rcx, 0x180000
test ebx, 0x100
cmovne rsi, rcx
jmp 0x523478
mov rsi, rcx
mov rcx, rsi
bts rsi, 0x37
mov edi, dword [rsp + 0x20]
and edi, 0xc000000
test ebx, 4
cmovne rcx, rsi
mov rsi, rcx
or rcx, 0x8000000
test ebx, 0x10
cmovne rsi, rcx
mov rcx, rsi
bts rsi, 0x34
test ebx, 0x200
cmovne rcx, rsi
mov rsi, rcx
or rcx, 0x10000000
test ebx, 0x800
cmovne rsi, rcx
mov rcx, rsi
bts rsi, 0x33
test ebx, 0x4000
cmovne rcx, rsi
mov rsi, rcx
or rcx, 0x40000000
test ebx, 0x40000
cmovne rsi, rcx
mov rcx, rsi
bts rsi, 0x1f
test ebx, 0x80000
cmovne rcx, rsi
mov rsi, rcx
bts rcx, 0x20
test ebx, 0x20000000
cmovne rsi, rcx
mov rcx, rsi
bts rsi, 0x39
mov r8d, dword [rsp + 0xc]
test r8d, 0x4000000
cmovne rcx, rsi
mov rsi, rcx
bts rcx, 0x38
mov r9d, dword [rsp + 0x10]
test r9d, 0x40000000
cmovne rsi, rcx
mov rcx, rsi
bts rsi, 0x3a
test r8d, 0x8000000
cmovne rcx, rsi
nop dword [rax + rax]
cmp edi, 0xc000000
jne 0x523709
mov dword [rsp + 0x18], eax
mov qword [rsp + 0x40], rcx
mov rdx, qword [0x006e1948]
mov rcx, qword [rdx]
xor eax, eax
call rcx
mov ecx, eax
shr eax, 5
and eax, 7
cmp eax, 7
jne 0x523704
shr ecx, 1
and ecx, 3
nop dword [rax]
cmp ecx, 3
jne 0x523704
mov rcx, qword [rsp + 0x40]
mov rbx, rcx
bts rbx, 0x21
mov esi, dword [rsp + 0x14]
test esi, 0x10000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x22
test esi, 0x20000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x23
test esi, 0x200000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x24
test esi, 0x4000000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x25
test esi, 0x8000000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x26
test esi, 0x10000000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x27
test esi, 0x40000000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x28
test esi, 0x80000000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x29
mov esi, dword [rsp + 0x10]
test esi, 2
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2a
test esi, 0x40
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2d
test esi, 0x100
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2e
test esi, 0x200
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x30
test esi, 0x400
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2b
test esi, 0x800
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2f
test esi, 0x1000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x2c
test esi, 0x4000
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x32
mov esi, dword [rsp + 0xc]
test esi, 0x100
cmovne rcx, rbx
mov rbx, rcx
bts rbx, 0x31
mov esi, dword [rsp + 0x18]
test esi, 0x20
cmovne rcx, rbx
jmp 0x523709
mov rcx, qword [rsp + 0x40]
mov rsi, rcx
mov qword [rsp + 0x30], rsi
mov rdx, qword [0x006e1938]
mov rcx, qword [rdx]
mov eax, 0x80000000
call rcx
cmp eax, 0x80000001
jae 0x523733
mov rbx, qword [rsp + 0x30]
jmp 0x5238a2
mov rdx, qword [0x006e1938]
mov rcx, qword [rdx]
mov eax, 0x80000001
call rcx
mov rbx, qword [rsp + 0x30]
mov rsi, rbx
or rbx, 0xc00000
mov r8d, ecx
and ecx, 0x40
test r8d, 0x20
cmovne rsi, rbx
mov rbx, rsi
or rsi, 4
test edi, 0x80000000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 8
test edi, 0x40000000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x10
test edi, 0x800000
cmovne rbx, rsi
mov rsi, rbx
or rbx, 0x20
test edi, 0x400000
cmovne rsi, rbx
mov rbx, rsi
or rsi, 0x800
test ecx, ecx
cmovne rbx, rsi
mov rsi, rbx
or rbx, 2
test edi, 0x100000
cmovne rsi, rbx
mov rbx, rsi
bts rsi, 0x35
test edi, 0x8000000
cmovne rbx, rsi
mov rsi, qword [rsp + 0x28]
cmp rsi, 1
je 0x5237f5
bt ebx, 7
jae 0x5237f5
test ecx, ecx
jne 0x5237f5
bts rbx, 0x3c
bt ebx, 0xd
jae 0x52382b
mov rcx, rbx
or rcx, 0x20000
test r8d, 0x800
cmovne rbx, rcx
mov rcx, rbx
or rcx, 0x10000
test r8d, 0x10000
cmovne rbx, rcx
cmp rsi, 1
jmp 0x52382f
cmp rsi, 1
jne 0x5238a2
mov qword [rsp + 0x38], rbx
call sym.github.com_klauspost_cpuid.familyModel
nop dword [rax + rax]
cmp rax, 6
jne 0x52388d
cmp rbx, 9
je 0x523858
cmp rbx, 0xd
je 0x523858
cmp rbx, 0xe
jne 0x523889
mov rcx, qword [rsp + 0x38]
mov rdx, rcx
bts rcx, 0x3c
test rdx, 0x80
cmovne rdx, rcx
mov rcx, rdx
bts rdx, 0x3d
test rcx, 0x100
cmovne rcx, rdx
cmp rax, 6
jmp 0x523892
cmp rax, 6
mov rcx, qword [rsp + 0x38]
jne 0x52389f
cmp rbx, 0x1c
jne 0x52389f
bts rcx, 0x3e
mov rbx, rcx
mov rax, rbx
add rsp, 0x60
pop rbp
ret
xor eax, eax
add rsp, 0x60
pop rbp
ret
call sym.runtime.morestack_noctxt.abi0
jmp sym.github.com_klauspost_cpuid.support