Function at 0x140060990
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
movaps xmmword [rsp + 0x240], xmm6
mov qword [rsp + 0x50], rdx
mov rdi, rcx
mov rax, qword [0x14039c038]
xor rax, rsp
mov qword [rsp + 0x238], rax
lea r12, [rsp + 0x220]
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov qword [r12 - 8], r12
mov r13, qword [r8]
mov rbp, qword [r8 + 8]
cmp r13, rbp
je 0x140060aa0
lea rbx, [rsp + 0x58]
lea r14, [rsp + 0x1f0]
lea r15, [rsp + 0x218]
jmp 0x140060a26
mov r12, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140060a01
cmp byte [rsp + 0x6f], 0
jns 0x140060a1d
mov rcx, qword [rsp + 0x58]
call fcn.1401a10a4
add r13, 0x18
cmp r13, rbp
je 0x140060aa0
movzx eax, byte [r13 + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [r13]
cmovns rax, r13
mov qword [rsp + 0x1f0], rax
cmovs rcx, qword [r13 + 8]
mov qword [rsp + 0x1f8], rcx
mov rcx, rbx
mov rdx, r14
call fcn.14013f680
mov qword [rsp + 0x20], rbx
mov rcx, r15
mov rdx, r14
mov r8, r12
mov r9, rbx
call fcn.14020b120
mov rax, qword [rsp + 0x1f0]
test rax, rax
je 0x14006139c
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x140060a01
mov r12, qword [rax + 0x10]
cmp qword [r12], rax
mov rax, r12
jne 0x140060a8e
jmp 0x140060a0c
movaps xmm0, xmmword [0x14032ae20]
lea rbx, [rsp + 0x1f0]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rcx, rbx
call fcn.140074830
mov rsi, qword [rsp + 0x50]
cmp byte [rsi + 0x17], 0
mov r8, rsi
jns 0x140060acf
mov r8, qword [rsi]
mov rcx, rbx
mov rdx, rdi
mov r9d, ntohl
call fcn.140074240
test eax, eax
je 0x140060cf3
mov edi, eax
mov ecx, 2
call fcn.140151cb0
cmp edi, 2
je 0x140060c7f
test al, al
je 0x140060c7f
lea rdx, str.....chromeinstaller_setup_setup_util.cc
lea rbx, [rsp + 0x58]
mov rcx, rbx
mov r8d, 0x192
mov r9d, 2
call fcn.1400882f0
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_open
mov r8d, 0xf
call fcn.1401e2460
mov rcx, rax
mov rdx, rsi
call fcn.140088e60
lea rdx, str.__result_
mov r8d, ntohl
mov rcx, rax
call fcn.1401e2460
mov rcx, rax
mov edx, edi
call fcn.140038850
mov rcx, rbx
call fcn.1400887d0
jmp 0x140060c7f
movzx edx, byte [rsp + 0x1d7]
test dl, dl
mov rcx, qword [rsp + 0x1d0]
lea rax, [rcx + rcx - 2]
mov r8d, 0x14
cmovns rax, r8
cmp rax, r15
ja 0x1400613c8
test dl, dl
js 0x140061361
cmp rax, 0xb
jb 0x140060bc1
cmp rdx, rax
cmova rax, rdx
or rax, 7
mov rdx, rax
mov rcx, rsi
call fcn.14005c470
mov ecx, r12d
mov r12d, ecx
mov rax, qword [rsp + 0x1d0]
and rax, r14
dec rax
cmp byte [rsp + 0x1d7], 0
cmovns rax, rdi
cmp rax, 0x8000
movsx edx, ax
mov eax, 0x7fff
cmovae edx, eax
mov dword [rsp + 0x1bc], edx
mov rcx, rsi
xor r8d, r8d
call fcn.14013c8a0
cmp byte [rsp + 0x1d7], 0
mov r8, rsi
jns 0x140060c19
mov r8, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1f8]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x20], xmm6
mov edx, ebx
lea r9, [rsp + 0x1bc]
call qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
cmp eax, 0xea
jne 0x140060cc9
cmp dword [rsp + 0x1bc], 0x7ffe
jbe 0x140060b73
cmp byte [rsp + 0x1d7], 0
jns 0x140060c6e
mov rcx, qword [rsp + 0x1c0]
call fcn.1401a10a4
lea rcx, [rsp + 0x1d8]
mov rdx, qword [rcx + 8]
call fcn.140063180
lea rcx, [rsp + 0x1f0]
call fcn.140074930
lea rcx, [rsp + 0x218]
mov rdx, qword [rcx + 8]
call fcn.140063180
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.1401a2850
movaps xmm6, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test eax, eax
je 0x14006127b
cmp eax, 0x103
jne 0x140060c57
xor ebx, ebx
test r12b, 1
mov r12d, 0
jne 0x140060bc7
jmp 0x140060c57
movabs r14, 0x7fffffffffffffff
lea rax, [rsp + 0x1e0]
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax - 8], rax
mov ecx, 0x210
call fcn.1401a1068
lea rdi, [rsp + 0x1c0]
mov qword [rdi], rax
lea rcx, [r14 + 0x109]
mov qword [rdi + 0x10], rcx
mov qword [rdi + 8], 0x100
mov r8d, 0x202
mov rcx, rax
xor edx, edx
call fcn.1401a49a0
mov r15d, 0xa
lea rbx, [rsp + 0x1bc]
mov r12, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
lea rsi, [rsp + 0x58]
xor r13d, r13d
xor ebp, ebp
jmp 0x140060eff
lea rdx, [0x14032d09a]
lea rcx, [rsp + 0x1f0]
call fcn.1400742f0
test eax, eax
je 0x140060c57
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 2
call fcn.140151cb0
test al, al
je 0x140060c57
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str.....chromeinstaller_setup_setup_util.cc
lea rdi, [rsp + 0x58]
mov rcx, rdi
mov r8d, 0x1dc
mov r9d, 2
call fcn.140215ce0
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_delete_key
mov r8d, 0x15
call fcn.1401e2460
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.140088e60
mov rcx, rdi
call fcn.140215d60
jmp 0x140060c57
and rcx, r14
dec rcx
cmp rcx, rax
jae 0x140060efb
mov rdx, qword [rsp + 0x1c8]
cmp rdx, rax
cmova rax, rdx
mov rdx, rax
or rdx, 7
cmp rax, 0xb
cmovb rdx, r15
cmp rdx, rcx
jne 0x140060ef3
jmp 0x140060efb
add r14, 8
mov r14, qword [r14]
test r14, r14
mov rbx, r15
mov r15d, 0xa
je 0x14006101e
mov r15, rbx
lea rbx, [r14 + 0x20]
mov rsi, rbp
mov rcx, rbp
mov rdx, rdi
mov r8, rbx
call fcn.140137de0
cmp byte [rsp + 0x58], 0
js 0x140060e3a
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.140137de0
cmp byte [rsp + 0x58], 0
js 0x140060e36
inc r13d
mov rbx, r15
mov r15d, 0xa
mov r12, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
movabs r14, 0x7fffffffffffffff
mov rsi, rbp
mov ebp, dword [rsp + 0x4c]
jmp 0x140060eff
movzx edx, byte [rsp + 0x1d7]
test dl, dl
mov rcx, qword [rsp + 0x1d0]
lea rax, [rcx + rcx - 2]
mov r8d, 0x14
cmovns rax, r8
lea r8, [r14 - 0x10]
cmp rax, r8
ja 0x1400613c8
test dl, dl
js 0x140060dfb
cmp rax, 0xb
jb 0x140060efb
cmp rdx, rax
cmova rax, rdx
or rax, 7
mov rdx, rax
mov rcx, rdi
call fcn.14005c470
mov ecx, ebp
mov ebp, ecx
mov rax, qword [rsp + 0x1d0]
and rax, r14
dec rax
cmp byte [rsp + 0x1d7], 0
cmovns rax, r15
mov rcx, rax
shr rcx, 0x20
neg rcx
mov edx, 0
sbb edx, edx
or edx, eax
mov dword [rsp + 0x1bc], edx
mov rcx, rdi
xor r8d, r8d
call fcn.14013c8a0
cmp byte [rsp + 0x1d7], 0
mov r8, rdi
jns 0x140060f53
mov r8, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1f8]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x20], xmm6
mov edx, r13d
mov r9, rbx
call r12
test eax, eax
je 0x140060fec
cmp eax, 0xea
je 0x140060ea9
cmp eax, 0x103
jne 0x140060f96
xor r13d, r13d
test bpl, 1
mov ebp, 0
jne 0x140060eff
cmp qword [rsp + 0x1e8], 0
je 0x140060d6b
lea rbp, [rsp + 0x1d8]
mov rdx, qword [rbp + 8]
mov rcx, rbp
call fcn.140063180
lea rax, [rsp + 0x1e0]
mov qword [rbp], rax
xorps xmm6, xmm6
movups xmmword [rbp + 8], xmm6
lea r13, [rsp + 0x68]
mov edi, 0xa
lea rsi, [rsp + 0x1c0]
lea r15, [r14 - 0x10]
xor ebx, ebx
xor r12d, r12d
jmp 0x140060bc7
mov dword [rsp + 0x4c], ebp
mov rbp, rsi
mov edx, dword [rsp + 0x1bc]
mov rcx, rdi
xor r8d, r8d
call fcn.14013c8a0
mov r14, qword [rsp + 0x1e0]
test r14, r14
lea r12, [rsp + 0x237]
jne 0x140060e4f
movzx eax, byte [rsp + 0x1d7]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rsp + 0x1c0]
cmovns rax, rdi
mov qword [rsp + 0x1a8], rax
cmovs rcx, qword [rsp + 0x1c8]
mov qword [rsp + 0x1b0], rcx
lea rcx, [rsp + 0x1a8]
call fcn.140075c50
test al, al
je 0x1400610df
mov r15, rbx
movzx eax, byte [rsp + 0x1d7]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rsp + 0x1c0]
cmovns rax, rdi
mov qword [rsp + 0x198], rax
cmovs rcx, qword [rsp + 0x1c8]
mov qword [rsp + 0x1a0], rcx
mov rcx, rbp
lea rdx, [rsp + 0x198]
call fcn.14013f680
mov r14, qword [rsp + 0x220]
test r14, r14
jne 0x14006114f
xor ebx, ebx
cmp byte [rsp + 0x6f], 0
jns 0x1400610ce
mov rcx, qword [rsp + 0x58]
call fcn.1401a10a4
test bl, bl
mov rbx, r15
mov r15d, 0xa
jne 0x14006120c
cmp byte [rsp + 0x1d7], 0
mov rdx, rdi
mov r12, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
jns 0x1400610fb
mov rdx, qword [rsp + 0x1c0]
lea rcx, [rsp + 0x1f0]
call fcn.1400742f0
mov cl, 1
test eax, eax
movabs r14, 0x7fffffffffffffff
mov rsi, rbp
je 0x140060efd
mov ecx, 2
call fcn.140151cb0
test al, al
jne 0x1400611a0
lea rcx, [rsp + 0x1d8]
mov rdx, rsi
mov r8, rdi
mov r9, rdi
call fcn.1400631d0
inc r13d
mov ebp, dword [rsp + 0x4c]
jmp 0x140060eff
lea rbx, [r14 + 0x20]
mov rcx, r12
mov rsi, rbp
mov rdx, rbp
mov r8, rbx
call fcn.140137de0
cmp byte [rsp + 0x237], 0
js 0x140061190
mov rcx, r12
mov rdx, rbx
mov r8, rsi
call fcn.140137de0
cmp byte [rsp + 0x237], 0
mov bl, 1
jns 0x1400610bd
add r14, 8
mov r14, qword [r14]
xor ebx, ebx
test r14, r14
je 0x1400610bd
jmp 0x14006114f
mov rcx, rsi
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x1cd
mov r9d, 2
call fcn.1400882f0
mov r8d, 0x18
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_delete_subkey
call fcn.1401e2460
mov rcx, rax
mov rdx, rdi
call fcn.140088e60
mov r8d, ntohl
mov rcx, rax
lea rdx, str._under_path
call fcn.1401e2460
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.140088e60
mov rcx, rsi
call fcn.1400887d0
jmp 0x14006112d
lea rcx, [rsp + 0x1d8]
mov rdx, rbp
mov r8, rdi
mov r9, rdi
call fcn.1400631d0
inc r13d
jmp 0x140060e8f
lea r13, [rdi + 0x20]
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, r13
call fcn.140137de0
cmp byte [rsp + 0x58], 0
js 0x140061271
lea rcx, [rsp + 0x58]
mov rdx, r13
mov r8, rsi
call fcn.140137de0
cmp byte [rsp + 0x58], 0
js 0x14006126d
inc ebx
lea r13, [rsp + 0x68]
mov edi, 0xa
jmp 0x140060bc7
add rdi, 8
lea r13, [rsp + 0x68]
mov rdi, qword [rdi]
jmp 0x140061295
mov edx, dword [rsp + 0x1bc]
mov rcx, rsi
xor r8d, r8d
call fcn.14013c8a0
mov rdi, qword [rsp + 0x1e0]
test rdi, rdi
jne 0x14006122a
cmp byte [rsp + 0x1d7], 0
mov rdx, rsi
mov edi, 0xa
jns 0x1400612b4
mov rdx, qword [rsp + 0x1c0]
lea rcx, [rsp + 0x1f0]
call fcn.1400745b0
mov cl, 1
test eax, eax
je 0x140060bc4
mov ecx, 2
call fcn.140151cb0
test al, al
jne 0x1400612f3
mov rcx, rbp
lea rdx, [rsp + 0x58]
mov r8, rsi
mov r9, rsi
call fcn.1400631d0
inc ebx
jmp 0x140060bc7
lea rcx, [rsp + 0x58]
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x20a
mov r9d, 2
call fcn.1400882f0
mov r8d, 0x17
mov rcx, r13
lea rdx, str.Failed_to_delete_value
call fcn.1401e2460
mov rcx, rax
mov rdx, rsi
call fcn.140088e60
mov r8d, 8
mov rcx, rax
lea rdx, str._in_key
call fcn.1401e2460
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.140088e60
lea rcx, [rsp + 0x58]
call fcn.1400887d0
jmp 0x1400612d9
and rcx, r14
dec rcx
cmp rcx, rax
jae 0x140060bc1
mov rdx, qword [rsp + 0x1c8]
cmp rdx, rax
cmova rax, rdx
mov rdx, rax
or rdx, 7
cmp rax, 0xb
cmovb rdx, rdi
cmp rdx, rcx
jne 0x140060bb9
jmp 0x140060bc1
lea rax, str.node_shouldnt_be_null
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude__tree
lea r9, str.__x___nullptr
mov r8d, 0xcf
call fcn.1401e44d0
lea rcx, [rsp + 0x1c0]
call fcn.1401e23a0
int3