Function at 0x14004f430
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 [0x14036c038]
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 0x14004f540
lea rbx, [rsp + 0x58]
lea r14, [rsp + 0x1f0]
lea r15, [rsp + 0x218]
jmp 0x14004f4c6
mov r12, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14004f4a1
cmp byte [rsp + 0x6f], 0
jns 0x14004f4bd
mov rcx, qword [rsp + 0x58]
call fcn.14018e000
add r13, 0x18
cmp r13, rbp
je 0x14004f540
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.14012ad90
mov qword [rsp + 0x20], rbx
mov rcx, r15
mov rdx, r14
mov r8, r12
mov r9, rbx
call fcn.1401f41d0
mov rax, qword [rsp + 0x1f0]
test rax, rax
je 0x14004fe3c
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x14004f4a1
mov r12, qword [rax + 0x10]
cmp qword [r12], rax
mov rax, r12
jne 0x14004f52e
jmp 0x14004f4ac
movaps xmm0, xmmword [0x1402fa4a0]
lea rbx, [rsp + 0x1f0]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rcx, rbx
call fcn.140063020
mov rsi, qword [rsp + 0x50]
cmp byte [rsi + 0x17], 0
mov r8, rsi
jns 0x14004f56f
mov r8, qword [rsi]
mov rcx, rbx
mov rdx, rdi
mov r9d, ntohl
call fcn.140062a30
test eax, eax
je 0x14004f793
mov edi, eax
mov ecx, 2
call fcn.14013d6b0
cmp edi, 2
je 0x14004f71f
test al, al
je 0x14004f71f
lea rdx, str.....chromeinstaller_setup_setup_util.cc
lea rbx, [rsp + 0x58]
mov rcx, rbx
mov r8d, 0x192
mov r9d, 2
call fcn.140076540
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_open
mov r8d, 0xf
call fcn.1401c9900
mov rcx, rax
mov rdx, rsi
call fcn.1400770c0
lea rdx, str.__result_
mov r8d, ntohl
mov rcx, rax
call fcn.1401c9900
mov rcx, rax
mov edx, edi
call fcn.140025340
mov rcx, rbx
call fcn.140076a20
jmp 0x14004f71f
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 0x14004fe68
test dl, dl
js 0x14004fe01
cmp rax, 0xb
jb 0x14004f661
cmp rdx, rax
cmova rax, rdx
or rax, 7
mov rdx, rax
mov rcx, rsi
call fcn.14004af10
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.140127d00
cmp byte [rsp + 0x1d7], 0
mov r8, rsi
jns 0x14004f6b9
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 0x14004f769
cmp dword [rsp + 0x1bc], 0x7ffe
jbe 0x14004f613
cmp byte [rsp + 0x1d7], 0
jns 0x14004f70e
mov rcx, qword [rsp + 0x1c0]
call fcn.14018e000
lea rcx, [rsp + 0x1d8]
mov rdx, qword [rcx + 8]
call fcn.140051c20
lea rcx, [rsp + 0x1f0]
call fcn.140063120
lea rcx, [rsp + 0x218]
mov rdx, qword [rcx + 8]
call fcn.140051c20
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.14018f840
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 0x14004fd1b
cmp eax, 0x103
jne 0x14004f6f7
xor ebx, ebx
test r12b, 1
mov r12d, 0
jne 0x14004f667
jmp 0x14004f6f7
movabs r14, 0x7fffffffffffffff
lea rax, [rsp + 0x1e0]
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax - 8], rax
mov ecx, 0x210
call fcn.14018dfc4
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.140191990
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 0x14004f99f
lea rdx, [0x1402fc76a]
lea rcx, [rsp + 0x1f0]
call fcn.140062ae0
test eax, eax
je 0x14004f6f7
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 2
call fcn.14013d6b0
test al, al
je 0x14004f6f7
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.1401ff380
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_delete_key
mov r8d, 0x15
call fcn.1401c9900
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.1400770c0
mov rcx, rdi
call fcn.1401ff400
jmp 0x14004f6f7
and rcx, r14
dec rcx
cmp rcx, rax
jae 0x14004f99b
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 0x14004f993
jmp 0x14004f99b
add r14, 8
mov r14, qword [r14]
test r14, r14
mov rbx, r15
mov r15d, 0xa
je 0x14004fabe
mov r15, rbx
lea rbx, [r14 + 0x20]
mov rsi, rbp
mov rcx, rbp
mov rdx, rdi
mov r8, rbx
call fcn.140123270
cmp byte [rsp + 0x58], 0
js 0x14004f8da
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.140123270
cmp byte [rsp + 0x58], 0
js 0x14004f8d6
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 0x14004f99f
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 0x14004fe68
test dl, dl
js 0x14004f89b
cmp rax, 0xb
jb 0x14004f99b
cmp rdx, rax
cmova rax, rdx
or rax, 7
mov rdx, rax
mov rcx, rdi
call fcn.14004af10
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.140127d00
cmp byte [rsp + 0x1d7], 0
mov r8, rdi
jns 0x14004f9f3
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 0x14004fa8c
cmp eax, 0xea
je 0x14004f949
cmp eax, 0x103
jne 0x14004fa36
xor r13d, r13d
test bpl, 1
mov ebp, 0
jne 0x14004f99f
cmp qword [rsp + 0x1e8], 0
je 0x14004f80b
lea rbp, [rsp + 0x1d8]
mov rdx, qword [rbp + 8]
mov rcx, rbp
call fcn.140051c20
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 0x14004f667
mov dword [rsp + 0x4c], ebp
mov rbp, rsi
mov edx, dword [rsp + 0x1bc]
mov rcx, rdi
xor r8d, r8d
call fcn.140127d00
mov r14, qword [rsp + 0x1e0]
test r14, r14
lea r12, [rsp + 0x237]
jne 0x14004f8ef
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.140064460
test al, al
je 0x14004fb7f
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.14012ad90
mov r14, qword [rsp + 0x220]
test r14, r14
jne 0x14004fbef
xor ebx, ebx
cmp byte [rsp + 0x6f], 0
jns 0x14004fb6e
mov rcx, qword [rsp + 0x58]
call fcn.14018e000
test bl, bl
mov rbx, r15
mov r15d, 0xa
jne 0x14004fcac
cmp byte [rsp + 0x1d7], 0
mov rdx, rdi
mov r12, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
jns 0x14004fb9b
mov rdx, qword [rsp + 0x1c0]
lea rcx, [rsp + 0x1f0]
call fcn.140062ae0
mov cl, 1
test eax, eax
movabs r14, 0x7fffffffffffffff
mov rsi, rbp
je 0x14004f99d
mov ecx, 2
call fcn.14013d6b0
test al, al
jne 0x14004fc40
lea rcx, [rsp + 0x1d8]
mov rdx, rsi
mov r8, rdi
mov r9, rdi
call fcn.140051c70
inc r13d
mov ebp, dword [rsp + 0x4c]
jmp 0x14004f99f
lea rbx, [r14 + 0x20]
mov rcx, r12
mov rsi, rbp
mov rdx, rbp
mov r8, rbx
call fcn.140123270
cmp byte [rsp + 0x237], 0
js 0x14004fc30
mov rcx, r12
mov rdx, rbx
mov r8, rsi
call fcn.140123270
cmp byte [rsp + 0x237], 0
mov bl, 1
jns 0x14004fb5d
add r14, 8
mov r14, qword [r14]
xor ebx, ebx
test r14, r14
je 0x14004fb5d
jmp 0x14004fbef
mov rcx, rsi
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x1cd
mov r9d, 2
call fcn.140076540
mov r8d, 0x18
lea rcx, [rsp + 0x68]
lea rdx, str.Failed_to_delete_subkey
call fcn.1401c9900
mov rcx, rax
mov rdx, rdi
call fcn.1400770c0
mov r8d, ntohl
mov rcx, rax
lea rdx, str._under_path
call fcn.1401c9900
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.1400770c0
mov rcx, rsi
call fcn.140076a20
jmp 0x14004fbcd
lea rcx, [rsp + 0x1d8]
mov rdx, rbp
mov r8, rdi
mov r9, rdi
call fcn.140051c70
inc r13d
jmp 0x14004f92f
lea r13, [rdi + 0x20]
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, r13
call fcn.140123270
cmp byte [rsp + 0x58], 0
js 0x14004fd11
lea rcx, [rsp + 0x58]
mov rdx, r13
mov r8, rsi
call fcn.140123270
cmp byte [rsp + 0x58], 0
js 0x14004fd0d
inc ebx
lea r13, [rsp + 0x68]
mov edi, 0xa
jmp 0x14004f667
add rdi, 8
lea r13, [rsp + 0x68]
mov rdi, qword [rdi]
jmp 0x14004fd35
mov edx, dword [rsp + 0x1bc]
mov rcx, rsi
xor r8d, r8d
call fcn.140127d00
mov rdi, qword [rsp + 0x1e0]
test rdi, rdi
jne 0x14004fcca
cmp byte [rsp + 0x1d7], 0
mov rdx, rsi
mov edi, 0xa
jns 0x14004fd54
mov rdx, qword [rsp + 0x1c0]
lea rcx, [rsp + 0x1f0]
call fcn.140062da0
mov cl, 1
test eax, eax
je 0x14004f664
mov ecx, 2
call fcn.14013d6b0
test al, al
jne 0x14004fd93
mov rcx, rbp
lea rdx, [rsp + 0x58]
mov r8, rsi
mov r9, rsi
call fcn.140051c70
inc ebx
jmp 0x14004f667
lea rcx, [rsp + 0x58]
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x20a
mov r9d, 2
call fcn.140076540
mov r8d, 0x17
mov rcx, r13
lea rdx, str.Failed_to_delete_value
call fcn.1401c9900
mov rcx, rax
mov rdx, rsi
call fcn.1400770c0
mov r8d, 8
mov rcx, rax
lea rdx, str._in_key
call fcn.1401c9900
mov rcx, rax
mov rdx, qword [rsp + 0x50]
call fcn.1400770c0
lea rcx, [rsp + 0x58]
call fcn.140076a20
jmp 0x14004fd79
and rcx, r14
dec rcx
cmp rcx, rax
jae 0x14004f661
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 0x14004f659
jmp 0x14004f661
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.1401cd590
lea rcx, [rsp + 0x1c0]
call fcn.1401c9840
int3