Function at 0x140011430
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rbx
mov rbp, rsp
sub rsp, 0x48
mov rbx, rcx
lea rax, [rbp + 0x30]
mov rcx, 0xffffffff80000001
mov qword [rsp + 0x20], rax
mov r9d, 1
lea rdx, str.SoftwarePkLongUniKey
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14001147a
xor edx, edx
mov rcx, rbx
call fcn.140011ac0
xor eax, eax
add rsp, 0x48
pop rbx
pop rbp
ret
mov rcx, qword [rbp + 0x30]
lea rax, [rbp + 0x20]
mov qword [rsp + 0x40], rsi
lea r9, [rbp + 0x28]
mov qword [rsp + 0x28], rax
lea rdx, str.ShowDlg
mov qword [rsp + 0x38], rdi
xor r8d, r8d
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x30], r14
mov dword [rbp + 0x20], 4
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor r14d, r14d
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 4]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.Vietnamese
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 8]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.CodeTable
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0xc]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SwitchKey
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x10]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.InputMethod
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x14]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.FreeMarking
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x18]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ModernStyle
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x1c]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.VietGUI
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x20]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.InConvCharset
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x24]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.OutConvCharset
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x28]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ClipboardConvert
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x2c]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.MacroEnabled
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x40]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.AutoNonVnRestore
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x3c]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SpellCheckEnabled
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x30]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.UseUnicodeClipboard
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x34]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.AlwaysMacro
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x38]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.UseIME
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140011881
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x20], 4
mov qword [rsp + 0x28], rcx
lea rax, [rbx + 0x44]
mov rcx, qword [rbp + 0x30]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.AutoUpdate
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov edi, r14d
test eax, eax
je 0x140011886
mov edi, 1
mov rcx, qword [rbp + 0x30]
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rsi, [rbx + 0x48]
lea r9, [rbp + 0x28]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov dword [rbp + 0x20], 4
lea rdx, str.Notification
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x1400118be
mov dword [rsi], r14d
mov rcx, qword [rbp + 0x30]
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rsi, [rbx + 0x4c]
lea r9, [rbp + 0x28]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov dword [rbp + 0x20], 4
lea rdx, str.AutoUpcaseMacro
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x1400118f9
mov dword [rsi], 1
mov rcx, qword [rbp + 0x30]
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rsi, [rbx + 0x50]
lea r9, [rbp + 0x28]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov dword [rbp + 0x20], 4
lea rdx, str.SoundOnSwitch
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140011934
mov dword [rsi], 1
mov rcx, qword [rbp + 0x30]
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rsi, [rbx + 0x54]
lea r9, [rbp + 0x28]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov dword [rbp + 0x20], 0x208
lea rdx, str.MacroPath
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140011971
mov rcx, rsi
call fcn.1400113b0
mov rsi, qword [rsp + 0x40]
test edi, edi
mov rdi, qword [rsp + 0x38]
je 0x140011989
xor edx, edx
mov rcx, rbx
call fcn.140011ac0
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.1400119f0
mov ecx, dword [rbx + 8]
mov dword [rbx + 0x264], eax
call fcn.140003af0
cmp eax, 0xffffffff
jne 0x1400119af
mov dword [rbx + 8], r14d
cmp dword [rbx + 0xc], 2
jb 0x1400119b9
mov dword [rbx + 0xc], r14d
mov ecx, dword [rbx + 0x10]
call fcn.140003b20
cmp eax, 0xffffffff
jne 0x1400119ca
mov dword [rbx + 0x10], r14d
cmp dword [rbx + 0x14], 2
jb 0x1400119d4
mov dword [rbx + 0x14], r14d
cmp dword [rbx + 0x1c], 2
jb 0x1400119de
mov dword [rbx + 0x1c], r14d
mov eax, 1
mov r14, qword [rsp + 0x30]
add rsp, 0x48
pop rbx
pop rbp
ret