Function at 0x140166260
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x7b0]
sub rsp, 0x8b0
mov rax, qword [0x1414b0148]
xor rax, rsp
mov qword [rbp + 0x7a0], rax
mov rax, rdx
mov rdi, rcx
mov qword [rsp + 0x38], rcx
xor r15d, r15d
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x40], r15b
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x80], r15b
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.140165a00
test al, al
jne 0x140166392
mov qword [rdi], r15
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rdi], al
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14016632c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166326
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016667e
call fcn.1402b82bc
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140166369
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166364
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016668a
call fcn.1402b82bc
mov rax, rdi
mov rcx, qword [rbp + 0x7a0]
xor rcx, rsp
call fcn.1402b83d0
mov rbx, qword [rsp + 0x8f0]
add rsp, 0x8b0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
movups xmm0, xmmword [str.SYSTEMCurrentControlSetControlClass_]
movaps xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [0x14039b7b8]
movaps xmmword [rbp - 0x50], xmm1
movsd xmm0, qword [0x14039b7c8]
movsd qword [rbp - 0x40], xmm0
lea r8, [rbp - 0x80]
mov rsi, qword [rbp - 0x80]
mov r14, qword [rbp - 0x68]
cmp r14, 0x10
cmovae r8, rsi
lea rcx, [rbp - 0x60]
dec rcx
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x1401663d0
xor edx, edx
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
mov byte [rcx + rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x1401663e0
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp - 0x60]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x140166465
mov qword [rdi], r15
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rdi], 0
cmp r14, 0x10
jb 0x14016632c
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14016645d
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016667e
mov rcx, rsi
jmp 0x140166326
mov dword [rsp + 0x30], 0x3ff
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x34]
xor r8d, r8d
lea rdx, str.OpenCLDriverName
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ebx, eax
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
jne 0x1401665f7
cmp dword [rsp + 0x34], 1
jne 0x1401665f7
mov eax, dword [rsp + 0x30]
cmp rax, 0x400
jae 0x14016669c
mov byte [rbp + rax + 0x3a0], bl
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x60], bl
lea rax, [rbp + 0x3a0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140166500
lea rdx, [rbp + 0x3a0]
lea rcx, [rsp + 0x60]
call fcn.140002000
nop
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.140121c10
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x140166567
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166562
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140166690
call fcn.1402b82bc
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x60], 0
cmp r14, 0x10
jb 0x1401665b2
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1401665a9
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140166696
mov rcx, rsi
call fcn.1402b82bc
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140166369
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166364
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140166684
jmp 0x140166364
mov qword [rdi], r15
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rdi], 0
cmp r14, 0x10
jb 0x14016663d
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140166634
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016667e
mov rcx, rsi
call fcn.1402b82bc
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140166369
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166364
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016668a
jmp 0x140166364
call fcn.1402befbc
nop
call fcn.1402befbc
int3
call fcn.1402befbc
nop
call fcn.1402befbc
nop
call fcn.1402befbc
nop
call fcn.1402b8ce8
int3