Function at 0x140016320
Capabilities:
Query or enumerate registry value

Disassembly:
test rdx, rdx
je 0x1400165c8
push rbp
push rbx
push rsi
mov rbp, rsp
sub rsp, 0x60
mov rsi, rcx
mov rbx, rdx
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r14
xor r14d, r14d
lea rcx, [rbp - 0x28]
lea r8, str.SOFTWAREIntelDisplayigfxcuiMISC
mov r9d, 0x2001f
mov rdx, 0xffffffff80000002
mov dword [rbp + 0x28], r14d
mov dword [rbp + 0x30], r14d
mov qword [rbp - 0x28], r14
mov dword [rbp - 0x20], r14d
mov qword [rbp - 0x18], r14
mov dword [rbp + 0x38], 0x40
call fcn.140005ff0
test eax, eax
jne 0x1400163c0
mov rdi, qword [rbp - 0x28]
lea rax, [rbp - 0x30]
lea r9, [rbp - 0x2c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x30]
lea rdx, str.SmartFrameDisplayHeight
xor r8d, r8d
mov rcx, rdi
mov dword [rbp - 0x30], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test rdi, rdi
je 0x1400163cf
mov rcx, rdi
jmp 0x1400163c9
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400163cf
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea r8, str.SOFTWAREIntelDisplayigfxcuiMISC
lea rcx, [rbp - 0x28]
mov r9d, 0x2001f
mov rdx, 0xffffffff80000002
mov qword [rbp - 0x28], r14
mov dword [rbp - 0x20], r14d
mov qword [rbp - 0x18], r14
call fcn.140005ff0
test eax, eax
jne 0x14001643a
mov rdi, qword [rbp - 0x28]
lea rax, [rbp - 0x30]
lea r9, [rbp - 0x2c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x28]
lea rdx, str.SmartFrameDisplayWidth
xor r8d, r8d
mov rcx, rdi
mov dword [rbp - 0x30], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test rdi, rdi
je 0x140016449
mov rcx, rdi
jmp 0x140016443
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140016449
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea r8, str.SOFTWAREIntelDisplayigfxcuiMISC
lea rcx, [rbp - 0x28]
mov r9d, 0x2001f
mov rdx, 0xffffffff80000002
mov qword [rbp - 0x28], r14
mov dword [rbp - 0x20], r14d
mov qword [rbp - 0x18], r14
call fcn.140005ff0
mov r14, qword [rsp + 0x50]
test eax, eax
jne 0x1400164b9
mov rdi, qword [rbp - 0x28]
lea rax, [rbp - 0x30]
lea r9, [rbp - 0x2c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x38]
lea rdx, str.SmartFrameDisplayScaling
xor r8d, r8d
mov rcx, rdi
mov dword [rbp - 0x30], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test rdi, rdi
je 0x1400164c8
mov rcx, rdi
jmp 0x1400164c2
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400164c8
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, dword [rbp + 0x30]
mov eax, dword [rbp + 0x28]
mov ecx, dword [rbp + 0x38]
test edx, edx
jne 0x1400165b3
test eax, eax
jne 0x1400165b3
test ecx, ecx
jne 0x1400165b3
mov edx, dword [rbx + 0xc]
lea rcx, str.SmartFrameDisplayID
call fcn.140016de0
lea rcx, str.SmartFrameOperation
mov edx, 2
call fcn.140016de0
cmp byte [0x140054010], 0
je 0x1400165bc
lea r8, str.GlobalSmartFrameOperation
xor edx, edx
mov ecx, 0x1f0003
call qword [sym.imp.KERNEL32.dll_OpenEventW]
mov rdi, rax
test rax, rax
je 0x1400165bc
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, 1
lea rdx, [rsi + 0x10]
mov r8d, ecx
mov r9d, 0x1f4
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
jne 0x14001659d
lea rdx, [rbp + 0x30]
lea rcx, str.SmartFrameDisplayHeight
call fcn.140016700
lea rdx, [rbp + 0x28]
lea rcx, str.SmartFrameDisplayWidth
call fcn.140016700
lea rdx, [rbp + 0x38]
lea rcx, str.SmartFrameDisplayScaling
call fcn.140016700
mov eax, dword [rbp + 0x28]
mov dword [rbx + 0x24], eax
mov eax, dword [rbp + 0x30]
mov dword [rbx + 0x28], eax
mov eax, dword [rbp + 0x38]
mov dword [rbx + 0x2c], eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdi, qword [rsp + 0x58]
add rsp, 0x60
pop rsi
pop rbx
pop rbp
ret
mov dword [rbx + 0x24], eax
mov dword [rbx + 0x28], edx
mov dword [rbx + 0x2c], ecx
mov rdi, qword [rsp + 0x58]
add rsp, 0x60
pop rsi
pop rbx
pop rbp
ret