Function at 0x140064628
Capabilities:
Query or enumerate registry key

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x3e8]
sub rsp, 0x4d0
mov rax, qword [0x1400ae768]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
mov r15d, 1
call fcn.14006036c
lea rax, [rbp - 0x70]
mov dword [rsp + 0x64], 0x104
mov qword [rsp + 0x58], rax
lea r8, [rsp + 0x64]
lea rax, [rsp + 0x78]
xor r9d, r9d
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x1b0]
lea rax, [rsp + 0x7c]
mov rcx, 0xffffffff80000003
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x74]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryInfoKeyW]
nop dword [rax + rax]
test eax, eax
je 0x1400646f4
mov ecx, eax
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
xor eax, eax
jmp 0x1400648a3
cmp dword [rsp + 0x60], r15d
jb 0x1400648a0
imul ecx, dword [rsp + 0x60], 0x438
call sym.spoolsv.exe_PrvDllAllocSplMem
mov rdi, rax
test rax, rax
je 0x1400646ed
xor esi, esi
xor ebx, ebx
mov r14, rax
cmp dword [rsp + 0x60], ebx
jbe 0x1400647db
lea rax, [rbp - 0x70]
mov dword [rsp + 0x68], 0x104
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x68]
and qword [rsp + 0x30], 0
lea r8, [rbp - 0x60]
and qword [rsp + 0x28], 0
mov edx, esi
and qword [rsp + 0x20], 0
mov rcx, 0xffffffff80000003
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegEnumKeyExW]
nop dword [rax + rax]
test eax, eax
je 0x14006477a
mov ecx, eax
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
jmp 0x1400647cf
lea rdx, str..Default
lea rcx, [rbp - 0x60]
call qword [sym.imp.msvcrt.dll__wcsicmp]
nop dword [rax + rax]
test eax, eax
je 0x1400647cf
mov edx, 0x5f
lea rcx, [rbp - 0x60]
call qword [sym.imp.msvcrt.dll_wcschr]
nop dword [rax + rax]
lea rcx, [rbp - 0x60]
test rax, rax
je 0x1400647ba
call fcn.14000c470
jmp 0x1400647cf
mov rdx, r14
call fcn.14000fa48
test eax, eax
je 0x1400647cf
add r14, 0x438
inc ebx
inc esi
cmp esi, dword [rsp + 0x60]
jb 0x140064725
and qword [rsp + 0x70], 0
lea rax, [rsp + 0x70]
mov r9d, r15d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, str.SystemCurrentControlSetControlPrintPostSPUpgrade
mov rcx, 0xffffffff80000002
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x14006483f
mov rcx, qword [0x1400ae2f8]
lea rax, [0x1400ae2f8]
cmp rcx, rax
je 0x14006484c
test byte [rcx + 0x44], 0x80
je 0x14006484c
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a2d80]
mov edx, 0xb
call fcn.140027d9c
jmp 0x14006484c
mov edx, ebx
mov rcx, rdi
call fcn.14000c538
mov r15d, eax
test ebx, ebx
je 0x140064868
mov rsi, rdi
mov rcx, rsi
call fcn.14000f9cc
add rsi, 0x438
sub rbx, 1
jne 0x140064853
and qword [rsp + 0x20], 0
xor edx, edx
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 5]
call sym.spoolsv.exe_PrvRouterBroadcastMessage
mov rcx, qword [0x1400affe8]
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
lea rcx, [rsp + 0x70]
call fcn.140011588
mov eax, r15d
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.140011ad0
lea r11, [rsp + 0x4d0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret