Function at 0x1400104b4
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov r14, rcx
mov r8d, dword [rcx + 0xc8]
lea rdx, str.CRecorder__d_::GetPersistedConfiguredTuningSpaces
mov ecx, 8
call fcn.140001110
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0x80], r15d
mov dword [rsp + 0x88], r15d
mov rax, qword [r14 + 0xd0]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x88]
xor r8d, r8d
lea rdx, str.ConfiguredTuningspace
mov rcx, qword [rax + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov ecx, dword [rsp + 0x80]
cmp ecx, r15d
je 0x14001b34c
cmp eax, r15d
jne 0x14001b34c
cmp dword [rsp + 0x88], 7
jne 0x14001b34c
shr rcx, 1
lea eax, [r15 + 2]
mul rcx
lea rcx, [r15 - 1]
cmovo rax, rcx
mov rcx, rax
call fcn.1400025a0
mov rbp, rax
mov r8d, dword [rsp + 0x80]
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
cmp rbp, r15
je 0x14001b296
mov rax, qword [r14 + 0xd0]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rbp
xor r9d, r9d
xor r8d, r8d
lea rdx, str.ConfiguredTuningspace
mov rcx, qword [rax + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp eax, r15d
jne 0x14001b2c2
mov eax, dword [rsp + 0x80]
shr eax, 1
mov dword [rsp + 0x80], eax
je 0x14001b2d4
mov r12, rbp
mov r13, r15
cmp eax, r15d
jbe 0x1400106ac
mov rdi, r15
cmp r12, r15
je 0x14001b2f3
mov eax, 0x104
mov rcx, r12
mov esi, r15d
cmp word [rcx], r15w
je 0x14001061d
add rcx, 2
sub rax, 1
jne 0x14001060d
cmp rax, r15
je 0x14001b2e6
mov edi, 0x104
sub rdi, rax
jmp 0x140010630
cmp esi, r15d
cmovl rdi, r15
cmp esi, r15d
jl 0x14001b342
inc rdi
cmp r12, r15
je 0x14001b2fd
mov rcx, r12
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rsp + 0x90], rax
cmp rax, r15
je 0x14001b337
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_VariantInit]
cmp eax, r15d
jbe 0x14001068d
mov rdx, rbx
mov rcx, r14
call fcn.140010c2c
mov esi, eax
cmp eax, r15d
jl 0x14001b30d
add r13, rdi
lea r12, [r12 + rdi*2]
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp r13d, dword [rsp + 0x80]
jae 0x1400106ac
jmp 0x1400105f6
mov rcx, rbp
call sub.msvcrt.dll_free
mov eax, esi
jmp 0x1400106b8
mov rbx, qword [rsp + 0x98]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r9d, dword [rsp + 0x80]
shr r9, 1
mov r8d, dword [r14 + 0xc8]
lea rdx, str.CRecorder__d_::GetPersistedConfiguredTuningSpaces:_new_WCHAR__d__returned_NULL.
lea ecx, [r15 + 1]
call fcn.140001110
mov eax, 0x8007000e
jmp 0x1400106b8
mov rcx, rbp
call sub.msvcrt.dll_free
mov eax, 1
jmp 0x1400106b8
mov rcx, rbp
call sub.msvcrt.dll_free
mov eax, 1
jmp 0x1400106b8
mov esi, 0x80070057
mov rdi, r15
jmp 0x140010630
mov esi, 0x80070057
jmp 0x140010630
mov rbx, r15
mov qword [rsp + 0x90], rbx
jmp 0x140010669
mov r9d, eax
mov r8d, dword [r14 + 0xc8]
lea rdx, str.CRecorder__d_::GetPersistedConfiguredTuningSpaces:_Failed_to_add_configured_TSGUID__0x_x.
mov ecx, 1
call fcn.140001110
nop
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x1400106ac
mov ecx, 0x8007000e
call fcn.140029690
int3
mov esi, 1
jmp 0x1400106ac
mov eax, 1
jmp 0x1400106b8