Function at 0x140061a10
Capabilities:
Delete registry value

Disassembly:
push rbx
push rsi
push r12
push r13
sub rsp, 0xd8
lea r13, [0x1400e4130]
xor r12d, r12d
mov rsi, rcx
mov rdx, r13
mov ebx, r12d
lea r9, [0x1400e4134]
cmp dword [rdx], r12d
je 0x140061a68
mov eax, ebx
imul rax, rax, 0x128
mov r8, qword [rax + r9]
cmp r8, qword [rcx]
jne 0x140061a5f
mov r8d, dword [rax + r9 + 8]
cmp r8d, dword [rcx + 8]
jne 0x140061a5f
mov eax, r12d
jmp 0x140061a64
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x140061a85
add ebx, 1
add rdx, 0x128
cmp ebx, 5
jb 0x140061a38
add rsp, 0xd8
pop r13
pop r12
pop rsi
pop rbx
ret
mov qword [rsp + 0xd0], rdi
mov edi, ebx
imul rdi, rdi, 0x128
cmp dword [rdi + r13 + 0x20], 2
jne 0x140061b82
lea rax, [rsp + 0x108]
mov qword [rsp + 0x100], rbp
lea rbp, [rdi + r13 + 4]
lea r9, [rsp + 0x110]
lea rdx, str.DALCurrentObjectData
mov r8d, 3
mov rcx, rbp
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x110], r12d
mov dword [rsp + 0x108], 4
mov qword [rsp + 0x20], rax
call fcn.14006ba20
test eax, eax
jne 0x140061b61
lea rax, [rsp + 0x118]
lea rdx, [rdi + r13 + 0x24]
mov r9d, 0x2001f
xor r8d, r8d
mov rcx, 0xffffffff80000002
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x140061b7a
mov rcx, qword [rsp + 0x118]
lea rdx, str.DALCurrentObjectData
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
test eax, eax
jne 0x140061b51
lea rcx, str.RemoveLassoLastSelectedSettings:_Success_deleted__DALCurrentObjectData
call fcn.14000cbb0
mov rcx, qword [rsp + 0x118]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140061b7a
mov r9d, dword [rdi + r13 + 0xc]
mov r8d, dword [rdi + r13 + 8]
mov edx, dword [rbp]
lea rcx, str.PnPRemoveAdapter:_Ati_AccessRegistryValue_deletes_DALCurrentObjectData_for_b__d_d__d_f__d_
call fcn.14000cbb0
mov rbp, qword [rsp + 0x100]
cmp dword [0x1400e4a0c], r12d
jne 0x140061b9b
lea rcx, [0x1400e0890]
call fcn.14003d2c0
test eax, eax
je 0x140061bb6
mov rcx, rsi
call fcn.140063bc0
test eax, eax
je 0x140061bb6
mov rcx, rsi
mov dword [0x1400e4a0c], r12d
call fcn.140063b60
xor eax, eax
lea rcx, [rdi + r13 + 0x24]
xor edx, edx
mov dword [rdi + r13 + 4], eax
mov dword [rdi + r13 + 8], eax
mov r8d, 0x100
mov dword [rdi + r13 + 0xc], eax
call fcn.14007cd30
cmp ebx, 5
mov dword [rdi + r13], r12d
mov dword [rdi + r13 + 0x10], r12d
mov dword [rdi + r13 + 0x20], r12d
mov rdi, qword [rsp + 0xd0]
jae 0x140061cab
lea rcx, [0x1400e0890]
mov edx, 0x14
call fcn.140040770
mov ebx, dword [0x1400e1a8c]
cmp ebx, 0xffffffff
je 0x140061cab
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x9c
call fcn.14007cd30
lea rcx, [0x1400e0890]
mov edx, ebx
mov word [rsp + 0x54], 0x9c
call fcn.14003a1c0
lea r8, [rsp + 0x30]
lea rcx, [rax + 4]
mov edx, 0xfffffffe
call qword [sym.imp.USER32.dll_EnumDisplaySettingsA]
test eax, eax
je 0x140061cab
cmp dword [rsp + 0x5c], r12d
jne 0x140061c65
cmp dword [rsp + 0x60], r12d
je 0x140061cab
or dword [rsp + 0x58], 0x20
lea rcx, [0x1400e0890]
mov edx, ebx
mov dword [rsp + 0x60], r12d
mov dword [rsp + 0x5c], r12d
call fcn.14003a1c0
lea rdx, [rsp + 0x30]
lea rcx, [rax + 4]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x20], r12
call qword [sym.imp.USER32.dll_ChangeDisplaySettingsExA]
lea rcx, str.Remove_Adapter:__Primary_device_position_corrected_
call fcn.14000cbb0
add rsp, 0xd8
pop r13
pop r12
pop rsi
pop rbx
ret