Function at 0x180111350
Capabilities:
Query or enumerate registry value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersionProductNameWindows_10_CurrentBuildNumber_no_name__Process
lea rcx, [rsp + 0x88]
mov r8d, 0x2c
call fcn.18007dcf0
lea rcx, [rsp + 0x70]
mov rdx, rbx
mov r8, rsi
call fcn.18007dcf0
mov rsi, qword [rsp + 0x88]
mov qword [rsp + 0x40], 0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov rcx, 0xffffffff80000002
mov rdx, rsi
xor r8d, r8d
mov r9d, 0x20019
call sub.ADVAPI32.dll_RegOpenKeyExW
test eax, eax
je 0x1801113e5
mov qword [rdi], 0
cmp qword [rsp + 0x78], 0
jne 0x1801115a2
jmp 0x1801115b6
mov rbx, qword [rsp + 0x40]
mov dword [rsp + 0x3c], 0x800
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x180111417
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1801115e8
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x800
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1801115e8
mov r15, rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 0x800
mov qword [rsp + 0x68], 0
mov r14, qword [rsp + 0x70]
lea rbp, [rsp + 0x3c]
lea r12, [rsp + 0x40]
lea r13, [rsp + 0x58]
nop dword [rax]
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov rdx, r14
xor r8d, r8d
mov r9, r12
call sub.ADVAPI32.dll_RegQueryValueExW
cmp eax, 0xea
jne 0x1801114b0
mov r8d, dword [rsp + 0x3c]
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
sub rax, rdx
cmp rax, r8
jae 0x180111460
mov rcx, r13
call fcn.18017fd30
mov r15, qword [rsp + 0x58]
jmp 0x180111460
test eax, eax
jne 0x180111571
mov eax, dword [rsp + 0x3c]
and eax, 0xfffffffe
add rax, r15
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xa8], rax
mov word [rsp + 0xb0], 0
mov qword [rsp + 0x40], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0xa0]
call fcn.18010bad0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x18011152c
nop word cs:[rax + rax]
cmp byte [rax + rdx - 1], 0
jne 0x18011152e
dec rdx
jne 0x180111520
xor edx, edx
mov qword [rdi], rax
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], rdx
cmp qword [rsp + 0x60], 0
je 0x180111553
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, rbx
call sub.ADVAPI32.dll_RegCloseKey
cmp qword [rsp + 0x78], 0
je 0x1801115b6
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, r14
jmp 0x1801115b0
mov qword [rdi], 0
cmp qword [rsp + 0x60], 0
je 0x180111592
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, rbx
call sub.ADVAPI32.dll_RegCloseKey
cmp qword [rsp + 0x78], 0
je 0x1801115b6
mov r8, qword [rsp + 0x70]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x90], 0
je 0x1801115d3
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, 1
mov edx, 0x800
call fcn.18017ea70
ud2