Function at 0x1400123b0
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x70
xor ebx, ebx
movaps xmmword [rsp + 0x60], xmm6
mov dword [rbp + 0x38], ebx
mov r14, r9
mov r10, rdx
mov rsi, rcx
xorps xmm6, xmm6
mov edi, ebx
test r9, r9
jne 0x1400123e9
xor eax, eax
jmp 0x140012692
sub r8d, 3
je 0x1400125f3
sub r8d, 1
je 0x14001254a
sub r8d, 7
je 0x1400124a4
cmp r8d, 8
jne 0x140012690
mov qword [rbp - 0x38], rbx
cmp qword [rcx], rbx
je 0x14001247f
lea rdx, [rbp - 0x38]
mov rcx, r10
call fcn.140011f10
test eax, eax
js 0x14001247f
mov rdi, qword [rbp - 0x38]
lea rax, [rbp - 0x40]
mov rcx, qword [rsi]
lea r9, [rbp - 0x3c]
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp + 0x38]
mov dword [rbp - 0x40], 4
mov rdx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
test eax, eax
jne 0x14001246e
cmp dword [rbp - 0x3c], 4
mov esi, ebx
mov eax, SafeArrayGetDim
cmovne esi, eax
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test esi, esi
mov edi, ebx
sete dil
mov ecx, 4
call fcn.1401ee8b4
mov qword [r14], rax
test rax, rax
je 0x140012690
mov ecx, dword [rbp + 0x38]
mov dword [rax], ecx
mov eax, 1
jmp 0x140012692
xor eax, eax
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
cmp qword [rcx], rax
je 0x140012527
lea rdx, [rbp - 0x38]
mov rcx, r10
call fcn.140011f10
test eax, eax
js 0x140012520
mov rdi, qword [rbp - 0x38]
lea rax, [rbp - 0x3c]
mov rcx, qword [rsi]
lea r9, [rbp - 0x40]
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x30]
mov dword [rbp - 0x3c], reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
test eax, eax
jne 0x14001250f
cmp dword [rbp - 0x40], 3
mov esi, ebx
mov eax, SafeArrayGetDim
cmovne esi, eax
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test esi, esi
mov edi, ebx
sete dil
test edi, edi
cmovne bx, word [rbp - 0x28]
mov ecx, 2
call fcn.1401ee8b4
mov qword [r14], rax
test rax, rax
je 0x140012690
mov word [rax], bx
mov eax, 1
jmp 0x140012692
xor eax, eax
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
cmp qword [rcx], rax
je 0x1400125cf
lea rdx, [rbp - 0x38]
mov rcx, r10
call fcn.140011f10
test eax, eax
js 0x1400125c6
mov rdi, qword [rbp - 0x38]
lea rax, [rbp - 0x3c]
mov rcx, qword [rsi]
lea r9, [rbp - 0x40]
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x30]
mov dword [rbp - 0x3c], reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
test eax, eax
jne 0x1400125b5
cmp dword [rbp - 0x40], 3
mov esi, ebx
mov eax, SafeArrayGetDim
cmovne esi, eax
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test esi, esi
mov edi, ebx
sete dil
test edi, edi
je 0x1400125cf
movss xmm6, dword [rbp - 0x28]
mov ecx, 4
call fcn.1401ee8b4
mov qword [r14], rax
test rax, rax
je 0x140012690
movss dword [rax], xmm6
mov eax, 1
jmp 0x140012692
xor eax, eax
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
cmp qword [rcx], rax
je 0x140012675
lea rdx, [rbp - 0x38]
mov rcx, r10
call fcn.140011f10
test eax, eax
js 0x14001266f
mov rdi, qword [rbp - 0x38]
lea rax, [rbp - 0x3c]
mov rcx, qword [rsi]
lea r9, [rbp - 0x40]
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x30]
mov dword [rbp - 0x3c], reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
test eax, eax
jne 0x14001265e
cmp dword [rbp - 0x40], 3
mov esi, ebx
mov eax, SafeArrayGetDim
cmovne esi, eax
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test esi, esi
mov edi, ebx
sete dil
test edi, edi
cmovne ebx, dword [rbp - 0x28]
mov ecx, 4
call fcn.1401ee8b4
mov qword [r14], rax
test rax, rax
je 0x140012690
mov dword [rax], ebx
mov eax, 1
jmp 0x140012692
mov eax, edi
movaps xmm6, xmmword [rsp + 0x60]
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret