Function at 0x14000f6c0
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x15c0]
mov eax, 0x1730
call fcn.14002bb20
sub rsp, rax
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rsp + 0x1760], rbx
mov qword [rsp + 0x1768], rsi
mov qword [rsp + 0x1770], rdi
movaps xmmword [rsp + 0x1720], xmm6
movaps xmmword [rsp + 0x1710], xmm7
movaps xmmword [rsp + 0x1700], xmm8
movaps xmmword [rsp + 0x16f0], xmm9
movaps xmmword [rsp + 0x16e0], xmm10
movaps xmmword [rsp + 0x16d0], xmm11
movaps xmmword [rsp + 0x16c0], xmm12
movaps xmmword [rsp + 0x16b0], xmm13
movaps xmmword [rsp + 0x16a0], xmm14
movaps xmmword [rsp + 0x1690], xmm15
mov rax, qword [0x140064d98]
xor rax, rsp
mov qword [rbp + 0x1510], rax
mov r9d, 6
xor r8d, r8d
lea rdx, str.DISPLAY
xor ecx, ecx
call qword [sym.imp.SETUPAPI.dll_SetupDiGetClassDevsW]
mov rdi, rax
mov qword [rbp - 0x48], rax
cmp rax, 0xffffffffffffffff
je 0x140010032
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0x1110]
call fcn.14002d420
xor eax, eax
mov qword [rbp + 0x10d0], rax
mov qword [rbp + 0x10d8], rax
mov qword [rbp + 0x10e0], rax
mov qword [rbp + 0x10e8], rax
mov qword [rbp + 0x10f0], rax
mov qword [rbp + 0x10f8], rax
mov qword [rbp + 0x1100], rax
mov qword [rbp + 0x1108], rax
xor r15d, r15d
mov dword [rbp - 0x14], r15d
xor edx, edx
mov r8d, 0x100
lea rcx, [0x14006d27c]
call fcn.14002d420
lea rcx, [0x14006dd60]
call fcn.1400290a0
mov dword [rbp + 0x10], 0x20
xor eax, eax
mov qword [rbp + 0x14], rax
mov qword [rbp + 0x1c], rax
mov qword [rbp + 0x24], rax
mov dword [rbp + 0x2c], eax
mov esi, r15d
mov dword [rbp - 0x80], r15d
lea r8, [rbp + 0x10]
xor edx, edx
mov rcx, rdi
call qword [sym.imp.SETUPAPI.dll_SetupDiEnumDeviceInfo]
cmp eax, 1
jne 0x140010029
lea r12d, [r15 + 0xc]
movsd xmm13, qword [0x1400520e0]
movsd xmm14, qword [0x1400520e8]
movsd xmm15, qword [0x1400520f0]
movsd xmm7, qword [0x140045958]
nop dword [rax]
nop dword [rax + rax]
mov dword [rsp + 0x28], 0xf003f
mov dword [rsp + 0x20], 1
xor r9d, r9d
lea r8d, [r9 + 1]
lea rdx, [rbp + 0x10]
mov rcx, rdi
call qword [sym.imp.SETUPAPI.dll_SetupDiOpenDevRegKey]
mov rbx, rax
mov qword [rbp - 0x50], rax
cmp rax, 0xffffffffffffffff
je 0x14001000c
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0xb0]
call fcn.14002d420
mov dword [rbp - 0x14], 0x200
mov edx, 0x2a
lea rcx, [0x14006bf80]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov rdx, rax
lea rax, [rbp - 0x14]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140010003
mov dword [rbp + 0x10b0], 0xffffff00
mov dword [rbp + 0x10b4], 0xffffff
mov rax, qword [rbp + 0xb0]
cmp rax, qword [rbp + 0x10b0]
jne 0x14001000c
movzx edx, byte [rbp + 0xb8]
movzx eax, dl
sar al, 2
and al, 0x1f
add al, 0x40
mov byte [rbp - 0x18], al
and dl, 3
add dl, 8
shl dl, 3
movzx ecx, byte [rbp + 0xb9]
movzx eax, cl
sar al, 5
and al, 7
add dl, al
mov byte [rbp - 0x17], dl
and cl, 0x1f
add cl, 0x40
mov byte [rbp - 0x16], cl
mov byte [rbp - 0x15], 0
mov qword [rbp + 0x10c8], r15
mov r8d, 3
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x10c8]
call fcn.14000acb0
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x30]
call fcn.140004dd0
nop
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.140009330
nop
lea rcx, [rbp + 0x30]
call fcn.140004e80
lea rcx, [rbp + 0x50]
call fcn.1400056d0
lea rcx, [rbp - 0x10]
call fcn.140001e50
nop
lea rcx, [rbp + 0x90]
call fcn.140001e50
nop
mov edx, 0x26
lea rcx, [0x14006de90]
call fcn.14000b480
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.140007b70
nop
mov r14, r15
lea rsi, [rbp + 0xe8]
nop dword [rax + rax]
cmp word [rsi - 2], 0
jne 0x14000faf3
cmp byte [rsi], 0
jne 0x14000faf3
xor eax, eax
mov qword [rbp + 0x10b8], rax
mov dword [rbp + 0x10c0], eax
mov word [rbp + 0x10c4], ax
movzx ebx, r15w
nop
movsx rdi, bx
movzx ecx, byte [rdi + rsi + 3]
call fcn.140032ac8
test eax, eax
je 0x14000fa57
movzx eax, byte [rdi + rsi + 3]
mov byte [rbp + rdi + 0x10b8], al
inc bx
cmp bx, 0xd
jl 0x14000fa30
movzx ecx, r12w
nop dword [rax + rax]
movsx rax, cx
cmp byte [rbp + rax + 0x10b8], 0x30
jge 0x14000fa86
cmp rax, 0xe
jae 0x14001009a
mov byte [rbp + rax + 0x10b8], 0
sub cx, 1
jne 0x14000fa60
lea rdx, [rbp + 0x10b8]
lea rcx, [rbp - 0x38]
call fcn.140004dd0
nop
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0x30]
call fcn.140009330
nop
lea rcx, [rbp - 0x38]
call fcn.140004e80
movzx ecx, byte [rsi + 1]
sub ecx, 0xfc
je 0x14000fadc
sub ecx, 2
je 0x14000fad3
cmp ecx, 1
jne 0x14000faea
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x70]
call fcn.140001fc0
jmp 0x14000faea
lea rcx, [rbp + 0x90]
jmp 0x14000fae0
lea rcx, [rbp - 0x10]
lea rdx, [rbp + 0x30]
call fcn.14000b3f0
nop
lea rcx, [rbp + 0x30]
call fcn.140001e70
inc r14
add rsi, 0x12
cmp r14, 4
jl 0x14000fa00
movzx ecx, byte [rbp + 0xea]
mov eax, ecx
and eax, 0xf
sub ecx, eax
shl ecx, 4
movzx eax, byte [rbp + 0xe8]
add ecx, eax
movd xmm11, ecx
cvtdq2pd xmm11, xmm11
movzx ecx, byte [rbp + 0xed]
mov eax, ecx
and eax, 0xf
sub ecx, eax
shl ecx, 4
movzx eax, byte [rbp + 0xeb]
add ecx, eax
movd xmm12, ecx
cvtdq2pd xmm12, xmm12
movzx ecx, byte [rbp + 0xf4]
mov edx, ecx
and edx, 0xf
sub ecx, edx
shl ecx, 4
movzx eax, byte [rbp + 0xf2]
add ecx, eax
movd xmm8, ecx
cvtdq2pd xmm8, xmm8
shl edx, 8
movzx eax, byte [rbp + 0xf3]
add edx, eax
movd xmm9, edx
cvtdq2pd xmm9, xmm9
movaps xmm1, xmm9
mulsd xmm1, xmm9
movaps xmm0, xmm8
mulsd xmm0, xmm8
addsd xmm1, xmm0
sqrtpd xmm10, xmm1
mulsd xmm10, qword [0x1400520c8]
movzx ebx, byte [rbp + 0xc5]
movzx ecx, byte [rbp + 0xc6]
imul ecx, ecx
mov eax, ebx
imul eax, ebx
add ecx, eax
call fcn.14000aca0
movaps xmm5, xmm0
movaps xmm4, xmm0
mulsd xmm4, qword [0x1400520d8]
movaps xmm6, xmm10
movaps xmm1, xmm10
addsd xmm1, xmm13
comisd xmm4, xmm1
jbe 0x14000fc6f
movaps xmm2, xmm12
mulsd xmm2, xmm12
movaps xmm1, xmm11
mulsd xmm1, xmm11
addsd xmm2, xmm1
sqrtpd xmm3, xmm2
movaps xmm0, xmm14
divsd xmm0, xmm5
mulsd xmm0, xmm3
movaps xmm1, xmm11
divsd xmm1, xmm0
mulsd xmm1, xmm14
xorps xmm0, xmm0
cvtsi2sd xmm0, ebx
comisd xmm1, xmm0
jbe 0x14000fc36
subsd xmm6, qword [0x1400520d0]
jmp 0x14000fc39
movaps xmm6, xmm4
divsd xmm3, xmm6
movaps xmm0, xmm13
divsd xmm0, xmm3
movaps xmm8, xmm11
mulsd xmm8, xmm15
mulsd xmm8, xmm0
subsd xmm8, xmm7
movaps xmm9, xmm12
mulsd xmm9, xmm15
mulsd xmm9, xmm0
subsd xmm9, xmm7
movaps xmm10, xmm6
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.140007c60
cmp word [rax], 0
jne 0x14000fc90
lea rdx, [rbp + 0x90]
lea rcx, [rbp - 0x10]
call fcn.14000b3f0
movaps xmm1, xmm12
mulsd xmm1, xmm12
movaps xmm0, xmm11
mulsd xmm0, xmm11
addsd xmm1, xmm0
sqrtpd xmm7, xmm1
movaps xmm0, xmm13
divsd xmm0, xmm6
mulsd xmm7, xmm0
movzx eax, byte [rbp + 0xc7]
add eax, 0x64
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mulss xmm6, dword [0x1400520c0]
movzx eax, word [rbp + 0xba]
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x10c8]
lea r8, str._hs_04X
mov rdx, 0xffffffffffffffff
lea rcx, [rbp + 0x10d0]
call fcn.14000a970
mov edx, 0x2c
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov qword [rbp - 0x70], rax
mov edx, 0x2b
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov qword [rbp - 0x68], rax
mov edx, 0x5f
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov qword [rbp - 0x60], rax
mov edx, 0x5e
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov qword [rbp - 0x58], rax
lea rcx, [rbp + 0x70]
call fcn.140005da0
mov r13, rax
movzx eax, byte [rbp + 0xc1]
add eax, 0x7c6
mov dword [rbp - 0x7c], eax
movzx eax, byte [rbp + 0xc0]
and eax, 0x7f
mov dword [rbp - 0x78], eax
mov edx, 0x2a
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov r12, rax
lea rcx, [rbp - 0x10]
call fcn.140005da0
mov r15, rax
mov edx, 0x29
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov r14, rax
mov edx, 0x28
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
mov rsi, rax
lea rcx, [rbp - 0x10]
call fcn.140005da0
mov rdi, rax
lea rcx, [rbp + 0x50]
call fcn.140005da0
mov rbx, rax
mov edx, 0x27
lea rcx, [0x14006de90]
call fcn.14000b480
mov rcx, rax
call fcn.140005da0
cvtps2pd xmm0, xmm6
movsd qword [rsp + 0xe0], xmm0
mov rcx, qword [rbp - 0x70]
mov qword [rsp + 0xd8], rcx
movsd qword [rsp + 0xd0], xmm7
mov rcx, qword [rbp - 0x68]
mov qword [rsp + 0xc8], rcx
movsd qword [rsp + 0xc0], xmm12
movsd qword [rsp + 0xb8], xmm11
lea rcx, [0x140050040]
mov qword [rsp + 0xb0], rcx
mov rcx, qword [rbp - 0x60]
mov qword [rsp + 0xa8], rcx
movsd qword [rsp + 0xa0], xmm10
movsd qword [rsp + 0x98], xmm9
movsd qword [rsp + 0x90], xmm8
lea rdx, reloc.OLEAUT32.dll_VariantCopy
mov qword [rsp + 0x88], rdx
mov rcx, qword [rbp - 0x58]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x78], r13
mov ecx, dword [rbp - 0x7c]
mov dword [rsp + 0x70], ecx
lea rcx, [0x140050050]
mov qword [rsp + 0x68], rcx
mov ecx, dword [rbp - 0x78]
mov dword [rsp + 0x60], ecx
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], r14
lea rcx, [rbp + 0x10d0]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdx
mov r9, rax
lea r8, str._s_s_s__s_n_s_s_n_s_s_n_s_u_s_u_n_s_n_s_s_.f_mm_x__.f_mm___.1f___n_s_s_.f_x__.f_n_s_.f_ppi_n_s_.2f_n_n
mov rdx, 0xffffffffffffffff
lea rcx, [rbp + 0x1110]
call fcn.14000a9a0
lea rdx, [rbp + 0x1110]
lea rcx, [0x14006dd60]
call fcn.140001fd0
mov rax, 0xffffffffffffffff
lea r14, [0x14006ce94]
nop dword [rax]
inc rax
cmp word [r14 + rax*2], 0
jne 0x14000ff50
test rax, rax
je 0x14000ff76
lea rdx, [rbp + 0x10d0]
mov rcx, r14
call fcn.140029c70
test rax, rax
je 0x14000ffbf
jmp 0x14000ff80
cmp word [0x14006d27c], 0
jne 0x14000ffbf
lea rcx, [rbp - 0x10]
call fcn.140005da0
mov rbx, rax
lea rcx, [rbp + 0x50]
call fcn.140005da0
movsd qword [rsp + 0x28], xmm10
mov qword [rsp + 0x20], rbx
mov r9, rax
lea r8, str._s__s__.1f_
mov rdx, 0xffffffffffffffff
lea rcx, [0x14006d27c]
call fcn.14000aa60
nop
lea rcx, [rbp + 0x70]
call fcn.140001e70
nop
lea rcx, [rbp + 0x90]
call fcn.140001e70
nop
lea rcx, [rbp - 0x10]
call fcn.140001e70
nop
lea rcx, [rbp + 0x50]
call fcn.140001e70
movsd xmm7, qword [0x140045958]
mov rbx, qword [rbp - 0x50]
mov rdi, qword [rbp - 0x48]
mov esi, dword [rbp - 0x80]
xor r15d, r15d
lea r12d, [r15 + 0xc]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc esi
mov dword [rbp - 0x80], esi
lea r8, [rbp + 0x10]
mov edx, esi
mov rcx, rdi
call qword [sym.imp.SETUPAPI.dll_SetupDiEnumDeviceInfo]
cmp eax, 1
je 0x14000f870
mov rcx, rdi
call qword [sym.imp.SETUPAPI.dll_SetupDiDestroyDeviceInfoList]
mov rcx, qword [rbp + 0x1510]
xor rcx, rsp
call fcn.14002ba20
lea r11, [rsp + 0x1730]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14002bdbc
nop