Function at 0x14005de10
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rbx
push rdi
mov rbp, rsp
sub rsp, 0x40
mov rbx, rcx
mov ecx, 0x48
call fcn.140064e98
mov rdi, rax
lea rdx, str.SourceInfo
xorps xmm0, xmm0
xor eax, eax
mov r9d, 0xf003f
xor r8d, r8d
mov rcx, rbx
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
mov dword [rbp + 0x30], eax
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x28], 4
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov r9d, 0x6d
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
mov rcx, qword [rbp - 0x10]
lea rax, [rbp + 0x28]
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x20], rdi
lea rdx, str.width
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x70
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 4]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.height
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x73
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 8]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.colorDepth
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x76
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 0xc]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.colorFormat
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x79
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 0x10]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.posx
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x7c
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 0x14]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.posy
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x7f
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
lea rcx, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea rax, [rdi + 0x18]
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
lea rdx, str.spanning
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x82
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0x30]
mov dword [rbp + 0x38], eax
lea rdx, str.GDIPrimary
lea rax, [rbp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x86
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
mov eax, dword [rdi + 0x1c]
lea r9, [rbp + 0x30]
xor eax, dword [rbp + 0x38]
lea rdx, str.SLIFocus
and eax, 1
xor r8d, r8d
xor dword [rdi + 0x1c], eax
lea rax, [rbp + 0x28]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, 0x8a
lea r8, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewDisplayControlSourceModeInfo.cpp
mov ecx, eax
lea rdx, str.SourceModeInfo::restore
call fcn.14004ed00
test eax, eax
jne 0x14005e171
mov eax, dword [rbp + 0x38]
add eax, eax
xor eax, dword [rdi + 0x1c]
and eax, 2
xor dword [rdi + 0x1c], eax
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rax, rdi
add rsp, 0x40
pop rdi
pop rbx
pop rbp
ret
xor eax, eax
add rsp, 0x40
pop rdi
pop rbx
pop rbp
ret