Function at 0x14005c5cc
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor ebp, ebp
mov r12, rdx
and dword [rax + 0x20], ebp
mov r13, rcx
mov rcx, qword [0x14009b028]
lea rdi, [0x14009b028]
lea rsi, [0x14008a6b0]
cmp rcx, rdi
je 0x14005c626
test byte [rcx + 0x1c], 4
je 0x14005c626
cmp byte [rcx + 0x19], 5
jb 0x14005c626
mov rcx, qword [rcx + 0x10]
lea edx, [rbp + 0xa]
mov r8, rsi
call fcn.140001024
lea rax, [rsp + 0x98]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x30]
and qword [rsp + 0x20], rbp
lea rdx, str.Devices
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
je 0x14005c699
mov rcx, qword [0x14009b028]
cmp rcx, rdi
je 0x14005c882
test byte [rcx + 0x1c], 4
je 0x14005c882
cmp byte [rcx + 0x19], 2
jb 0x14005c882
mov edx, VariantTimeToDosDateTime
mov r8, rsi
mov rcx, qword [rcx + 0x10]
mov r9d, eax
call fcn.140001050
jmp 0x14005c882
cmp dword [rsp + 0x30], 3
je 0x14005c6d3
mov rcx, qword [0x14009b028]
cmp rcx, rdi
je 0x14005c6c9
test byte [rcx + 0x1c], 4
je 0x14005c6c9
cmp byte [rcx + 0x19], 2
jb 0x14005c6c9
mov rcx, qword [rcx + 0x10]
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r8, rsi
call fcn.140001024
mov ebx, 0x3f1
jmp 0x14005c882
mov eax, dword [rsp + 0x98]
test eax, eax
je 0x14005c882
mov ecx, eax
call fcn.140066e68
mov rbp, rax
test rax, rax
jne 0x14005c72c
lea ebx, [rax + 8]
mov rcx, qword [0x14009b028]
cmp rcx, rdi
je 0x14005c882
test byte [rcx + 0x1c], 4
je 0x14005c882
cmp byte [rcx + 0x19], 2
jb 0x14005c882
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0xd]
mov r8, rsi
call fcn.140001024
jmp 0x14005c882
lea rax, [rsp + 0x98]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x30]
lea rdx, str.Devices
mov qword [rsp + 0x20], rbp
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
je 0x14005c790
mov rcx, qword [0x14009b028]
cmp rcx, rdi
je 0x14005c882
test byte [rcx + 0x1c], 4
je 0x14005c882
cmp byte [rcx + 0x19], 2
jb 0x14005c882
mov edx, 0xe
jmp 0x14005c685
mov edi, dword [rsp + 0x98]
xor esi, esi
shr edi, 2
lea r15d, [rsi + 1]
test edi, edi
je 0x14005c882
mov r14, rbp
mov ecx, dword [r14]
xor edx, edx
call fcn.14004ba54
test rax, rax
je 0x14005c806
mov edx, ecx
mov rcx, r13
call fcn.14005cc84
mov ebx, eax
test eax, eax
je 0x14005c809
mov rcx, qword [0x14009b028]
lea rdx, [0x14009b028]
cmp rcx, rdx
je 0x14005c882
test byte [rcx + 0x1c], 4
je 0x14005c882
cmp byte [rcx + 0x19], 2
jb 0x14005c882
mov edx, 0xf
lea r8, [0x14008a6b0]
jmp 0x14005c688
xor r15d, r15d
inc esi
add r14, 4
cmp esi, edi
jb 0x14005c7ab
test r15d, r15d
jne 0x14005c882
mov rdx, r12
mov rcx, r13
call fcn.14005c920
test eax, eax
je 0x14005c85d
mov rcx, qword [0x14009b028]
lea rdx, [0x14009b028]
cmp rcx, rdx
je 0x14005c85d
test byte [rcx + 0x1c], 4
je 0x14005c85d
cmp byte [rcx + 0x19], 2
jb 0x14005c85d
mov rcx, qword [rcx + 0x10]
lea edx, [r15 + 0x10]
mov r9d, eax
lea r8, [0x14008a6b0]
call fcn.140001050
mov rax, qword [rsp + 0x90]
mov r9d, 0x80007d42
mov qword [rsp + 0x20], rax
mov eax, 1
mov r8d, eax
mov ecx, eax
lea edx, [rax + 1]
call fcn.1400672f0
mov rcx, rbp
call fcn.140066f24
mov eax, ebx
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret