Function at 0x14006a980
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, 0x268
movaps xmmword [rsp + 0x250], xmm6
mov qword [rsp + 0x48], rdx
mov rsi, rcx
mov rax, qword [0x1403a0028]
xor rax, rsp
mov qword [rsp + 0x248], rax
lea rax, [rsp + 0x238]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax - 8], rax
lea rcx, [rsp + 0x230]
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], rax
mov rbx, qword [r8]
mov rbp, qword [r8 + 8]
cmp rbx, rbp
je 0x14006aa57
lea rdi, [rsp + 0x68]
lea r14, [rsp + 0x200]
lea r15, [rsp + 0x220]
movzx eax, byte [rbx + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rbx]
cmovns rax, rbx
mov qword [rsp + 0x200], rax
cmovs rcx, qword [rbx + 8]
mov qword [rsp + 0x208], rcx
mov rcx, rdi
mov rdx, r14
call fcn.14016dc50
mov rcx, r15
mov rdx, rdi
call fcn.140222230
cmp byte [rsp + 0x7f], 0
jns 0x14006aa4e
mov rcx, qword [rsp + 0x68]
call fcn.1401b9ce8
add rbx, 0x18
cmp rbx, rbp
jne 0x14006aa00
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x200]
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [0x14032f5c0]
movaps xmmword [rdi], xmm0
mov rcx, rdi
call fcn.140085af0
mov r8, qword [rsp + 0x48]
cmp byte [r8 + 0x17], 0
jns 0x14006aa93
mov rax, qword [rsp + 0x48]
mov r8, qword [rax]
mov rcx, rdi
mov rdx, rsi
mov r9d, ntohl
call fcn.140085c90
test eax, eax
je 0x14006ab39
mov esi, eax
mov ecx, 2
call fcn.140160660
cmp esi, 2
je 0x14006b44d
test al, al
je 0x14006b44d
lea rdx, str.....chromeinstaller_setup_setup_util.cc
lea rdi, [rsp + 0x68]
mov rcx, rdi
mov r8d, 0x196
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x78]
lea rdx, str.Failed_to_open
mov r8d, 0xf
call fcn.1401f9cc0
mov rcx, rax
mov rdx, qword [rsp + 0x48]
call fcn.140076a50
lea rdx, str.__result_
mov r8d, ntohl
mov rcx, rax
call fcn.1401f9cc0
mov rcx, rax
mov edx, esi
call fcn.140039f90
mov rcx, rdi
call fcn.140076510
jmp 0x14006b44d
movabs rbx, 0x7fffffffffffffff
lea rax, [rsp + 0x1f0]
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax - 8], rax
mov ecx, 0x210
call fcn.1401b9cac
lea rdi, [rsp + 0x1d0]
mov qword [rdi], rax
lea rsi, [rbx + 0x109]
mov qword [rdi + 0x10], rsi
mov qword [rdi + 8], 0x100
mov r8d, 0x202
mov rcx, rax
xor edx, edx
call fcn.1401bd200
mov al, 0x80
mov r13d, 0xa
lea r15, [rsp + 0x1cc]
mov r14, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
xor r12d, r12d
mov dword [rsp + 0x50], 0
and rsi, rbx
dec rsi
test al, al
cmovns rsi, r13
mov rax, rsi
shr rax, 0x20
neg rax
mov edx, 0
sbb edx, edx
or edx, esi
mov dword [rsp + 0x1cc], edx
mov rcx, rdi
xor r8d, r8d
call fcn.14015d060
cmp byte [rsp + 0x1e7], 0
mov r8, rdi
jns 0x14006abf5
mov r8, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x200]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x20], xmm6
mov edx, r12d
mov r9, r15
call r14
test eax, eax
je 0x14006ac51
cmp eax, 0x103
je 0x14006ac97
cmp eax, 0xea
jne 0x14006b08c
cmp byte [rsp + 0x1e7], 0
mov rax, qword [rsp + 0x1e0]
lea rdx, [rax + rax - 2]
mov eax, 0x14
cmovns rdx, rax
mov rcx, rdi
call fcn.14005cdf0
jmp 0x14006aef2
mov edx, dword [rsp + 0x1cc]
mov rcx, rdi
xor r8d, r8d
call fcn.14015d060
mov rbp, qword [rsp + 0x1f0]
movzx esi, byte [rsp + 0x1e7]
test rbp, rbp
mov dword [rsp + 0x44], r12d
jne 0x14006acb2
mov r13, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x1d8]
mov ecx, esi
and ecx, 0x7f
jmp 0x14006add7
xor r12d, r12d
test byte [rsp + 0x50], 1
mov dword [rsp + 0x50], 0
jne 0x14006aef2
jmp 0x14006b08c
mov ecx, esi
and ecx, 0x7f
test sil, sil
mov rax, qword [rsp + 0x1d8]
mov rdx, rcx
cmovs rdx, rax
mov qword [rsp + 0x58], rdx
mov r13, qword [rsp + 0x1d0]
cmovs rdi, r13
mov r10, rsi
mov qword [rsp + 0x60], rax
cmovs r10, rax
lea r14, [rbp + 0x20]
movzx r15d, byte [rbp + 0x37]
mov edx, r15d
and edx, 0x7f
test r15b, r15b
mov rbx, qword [rbp + 0x20]
mov r12, qword [rbp + 0x28]
cmovs rdx, r12
mov r11, r14
cmovs r11, rbx
cmp rdx, r10
mov rax, r10
cmovb rax, rdx
test rax, rax
je 0x14006ad33
xor r8d, r8d
movzx r9d, word [r11 + r8*2]
cmp word [rdi + r8*2], r9w
ja 0x14006ad4e
jb 0x14006ad38
inc r8
cmp rax, r8
jne 0x14006ad1d
cmp r10, rdx
jae 0x14006ad4e
lea r15, [rsp + 0x1cc]
mov r14, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov r12d, dword [rsp + 0x44]
jmp 0x14006adaa
mov r8, rsi
test r15b, r15b
jns 0x14006adb8
mov rax, qword [rsp + 0x58]
cmp rax, r12
mov rdx, r12
cmovb rdx, rax
test rdx, rdx
lea r15, [rsp + 0x1cc]
mov r14, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
je 0x14006ad93
xor eax, eax
movzx esi, word [rdi + rax*2]
cmp word [rbx + rax*2], si
ja 0x14006afee
jb 0x14006ad9e
inc rax
cmp rdx, rax
jne 0x14006ad7b
cmp r12, qword [rsp + 0x58]
jae 0x14006afee
add rbp, 8
mov r12d, dword [rsp + 0x44]
mov rsi, r8
mov rbp, qword [rbp]
test rbp, rbp
je 0x14006adc0
jmp 0x14006ace6
mov r12, r15
mov rbx, r14
jmp 0x14006ad56
movabs rbx, 0x7fffffffffffffff
lea rdi, [rsp + 0x1d0]
mov rax, qword [rsp + 0x60]
test sil, sil
cmovns r13, rdi
mov qword [rsp + 0x1b8], r13
cmovs rcx, rax
mov qword [rsp + 0x1c0], rcx
lea rcx, [rsp + 0x1b8]
call fcn.140084ea0
test al, al
mov r13d, 0xa
je 0x14006ae97
movzx eax, byte [rsp + 0x1e7]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rsp + 0x1d0]
cmovns rax, rdi
mov qword [rsp + 0x1a8], rax
cmovs rcx, qword [rsp + 0x1d8]
mov qword [rsp + 0x1b0], rcx
lea rdi, [rsp + 0x68]
mov rcx, rdi
lea rdx, [rsp + 0x1a8]
call fcn.14016dc50
mov r12, qword [rsp + 0x238]
movzx r8d, byte [rsp + 0x7f]
test r12, r12
jne 0x14006af06
xor edi, edi
test r8b, r8b
mov r14, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
jns 0x14006ae85
mov rcx, qword [rsp + 0x68]
call fcn.1401b9ce8
test dil, dil
lea rdi, [rsp + 0x1d0]
mov r12d, dword [rsp + 0x44]
jne 0x14006aecf
cmp byte [rsp + 0x1e7], 0
mov rdx, rdi
jns 0x14006aeac
mov rdx, qword [rsp + 0x1d0]
lea rcx, [rsp + 0x200]
call fcn.140085e30
test eax, eax
je 0x14006aeec
mov ecx, 2
call fcn.140160660
test al, al
jne 0x14006b01b
lea rcx, [rsp + 0x1e8]
lea rdx, [rsp + 0x68]
mov r8, rdi
mov r9, rdi
call fcn.14006d230
inc r12d
jmp 0x14006aef2
mov al, 1
mov dword [rsp + 0x50], eax
mov al, byte [rsp + 0x1e7]
mov rsi, qword [rsp + 0x1e0]
jmp 0x14006abaf
mov r9d, r8d
and r9d, 0x7f
test r8b, r8b
mov r14, qword [rsp + 0x70]
cmovs r9, r14
mov rsi, qword [rsp + 0x68]
cmovns rsi, rdi
cmovns r14, r8
lea r10, [r12 + 0x20]
movzx r15d, byte [r12 + 0x37]
mov ebx, r15d
and ebx, 0x7f
test r15b, r15b
mov rdi, qword [r12 + 0x20]
mov r11, qword [r12 + 0x28]
cmovs rbx, r11
mov rax, r10
cmovs rax, rdi
cmp rbx, r14
mov rbp, r14
cmovb rbp, rbx
test rbp, rbp
je 0x14006af74
xor edx, edx
movzx ecx, word [rax + rdx*2]
cmp word [rsi + rdx*2], cx
ja 0x14006af8d
jb 0x14006af79
inc rdx
cmp rbp, rdx
jne 0x14006af60
cmp r14, rbx
jae 0x14006af8d
movabs rbx, 0x7fffffffffffffff
lea r15, [rsp + 0x1cc]
jmp 0x14006afd2
test r15b, r15b
jns 0x14006afe6
cmp r9, r11
mov rax, r11
cmovb rax, r9
test rax, rax
movabs rbx, 0x7fffffffffffffff
lea r15, [rsp + 0x1cc]
je 0x14006afc9
xor edx, edx
movzx ecx, word [rsi + rdx*2]
cmp word [rdi + rdx*2], cx
ja 0x14006b013
jb 0x14006afce
inc rdx
cmp rax, rdx
jne 0x14006afb5
cmp r11, r9
jae 0x14006b013
add r12, 8
mov r12, qword [r12]
xor edi, edi
test r12, r12
je 0x14006ae6f
jmp 0x14006af26
mov r11, r15
mov rdi, r10
jmp 0x14006af92
mov r12d, dword [rsp + 0x44]
inc r12d
movabs rbx, 0x7fffffffffffffff
lea rdi, [rsp + 0x1d0]
mov r13d, 0xa
jmp 0x14006aef2
mov dil, 1
jmp 0x14006ae6f
lea rsi, [rsp + 0x68]
mov rcx, rsi
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x1d1
mov r9d, 2
call fcn.140076020
mov r8d, 0x18
lea rcx, [rsp + 0x78]
lea rdx, str.Failed_to_delete_subkey
call fcn.1401f9cc0
mov rcx, rax
mov rdx, rdi
call fcn.140076a50
mov r8d, ntohl
mov rcx, rax
lea rdx, str._under_path
call fcn.1401f9cc0
mov rcx, rax
mov rdx, qword [rsp + 0x48]
call fcn.140076a50
mov rcx, rsi
call fcn.140076510
jmp 0x14006aecf
cmp qword [rsp + 0x1f8], 0
je 0x14006b3f7
lea rsi, [rsp + 0x1e8]
mov rdx, qword [rsi + 8]
mov rcx, rsi
call fcn.14006d1e0
lea rax, [rsp + 0x1f0]
mov qword [rsi], rax
xorps xmm6, xmm6
movups xmmword [rsi + 8], xmm6
mov r15d, 0xa
mov edi, 0x7fff
lea r12, [rsp + 0x1d0]
lea rbp, [rsp + 0x1cc]
mov rsi, qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
xor r14d, r14d
xor r13d, r13d
mov rax, qword [rsp + 0x1e0]
and rax, rbx
dec rax
cmp byte [rsp + 0x1e7], 0
cmovns rax, r15
cmp rax, 0x8000
movsx edx, ax
cmovae edx, edi
mov dword [rsp + 0x1cc], edx
mov rcx, r12
xor r8d, r8d
call fcn.14015d060
cmp byte [rsp + 0x1e7], 0
mov r8, r12
jns 0x14006b136
mov r8, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x200]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x20], xmm6
mov edx, r14d
mov r9, rbp
call rsi
test eax, eax
je 0x14006b1a2
cmp eax, 0x103
je 0x14006b1d6
cmp eax, 0xea
jne 0x14006b425
cmp dword [rsp + 0x1cc], 0x7ffe
ja 0x14006b425
cmp byte [rsp + 0x1e7], 0
mov rax, qword [rsp + 0x1e0]
lea rdx, [rax + rax - 2]
mov eax, 0x14
cmovns rdx, rax
mov rcx, r12
call fcn.14005cdf0
jmp 0x14006b0e9
mov edx, dword [rsp + 0x1cc]
mov rcx, r12
xor r8d, r8d
call fcn.14015d060
mov rcx, qword [rsp + 0x1f0]
movzx eax, byte [rsp + 0x1e7]
test rcx, rcx
jne 0x14006b1ee
mov rdx, qword [rsp + 0x1d0]
jmp 0x14006b303
xor r14d, r14d
test r13b, 1
mov r13d, 0
jne 0x14006b0e9
jmp 0x14006b425
mov r9d, eax
and r9d, 0x7f
test al, al
mov rdx, qword [rsp + 0x1d0]
mov r15, qword [rsp + 0x1d8]
cmovs r9, r15
mov rbx, r12
cmovs rbx, rdx
mov qword [rsp + 0x50], rax
cmovns r15, rax
mov dword [rsp + 0x44], r13d
lea r12, [rcx + 0x20]
movzx eax, byte [rcx + 0x37]
mov edi, eax
and edi, 0x7f
test al, al
mov rsi, qword [rcx + 0x20]
mov r11, qword [rcx + 0x28]
cmovs rdi, r11
mov r10, r12
cmovs r10, rsi
cmp rdi, r15
mov rbp, r15
cmovb rbp, rdi
test rbp, rbp
je 0x14006b26a
xor r13d, r13d
movzx r8d, word [r10 + r13*2]
cmp word [rbx + r13*2], r8w
ja 0x14006b27e
jb 0x14006b26f
inc r13
cmp rbp, r13
jne 0x14006b254
cmp r15, rdi
jae 0x14006b27e
lea r12, [rsp + 0x1d0]
mov r13d, dword [rsp + 0x44]
jmp 0x14006b2c5
test al, al
jns 0x14006b2d2
cmp r9, r11
mov rax, r11
cmovb rax, r9
test rax, rax
lea r12, [rsp + 0x1d0]
mov r13d, dword [rsp + 0x44]
je 0x14006b2b8
xor ebp, ebp
movzx edi, word [rbx + rbp*2]
cmp word [rsi + rbp*2], di
ja 0x14006b350
jb 0x14006b2c1
inc rbp
cmp rax, rbp
jne 0x14006b2a0
cmp r11, r9
jae 0x14006b350
add rcx, 8
mov rcx, qword [rcx]
test rcx, rcx
je 0x14006b2da
jmp 0x14006b220
mov r11, rax
mov rsi, r12
jmp 0x14006b282
movabs rbx, 0x7fffffffffffffff
mov r15d, 0xa
mov edi, 0x7fff
lea rbp, [rsp + 0x1cc]
mov rsi, qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
mov rax, qword [rsp + 0x50]
test al, al
cmovns rdx, r12
lea rcx, [rsp + 0x200]
call fcn.1400860f0
test eax, eax
je 0x14006b348
mov ecx, 2
call fcn.140160660
test al, al
jne 0x14006b37c
lea rcx, [rsp + 0x1e8]
lea rdx, [rsp + 0x68]
mov r8, r12
mov r9, r12
call fcn.14006d230
inc r14d
jmp 0x14006b0e9
mov r13b, 1
jmp 0x14006b0e9
inc r14d
movabs rbx, 0x7fffffffffffffff
mov r15d, 0xa
mov edi, 0x7fff
lea rbp, [rsp + 0x1cc]
mov rsi, qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
jmp 0x14006b0e9
mov dword [rsp + 0x44], r13d
lea r13, [rsp + 0x68]
mov rcx, r13
lea rdx, str.....chromeinstaller_setup_setup_util.cc
mov r8d, 0x20e
mov r9d, 2
call fcn.140076020
mov r8d, 0x17
lea rcx, [rsp + 0x78]
lea rdx, str.Failed_to_delete_value
call fcn.1401f9cc0
mov rcx, rax
mov rdx, r12
call fcn.140076a50
mov r8d, 8
mov rcx, rax
lea rdx, str._in_key
call fcn.1401f9cc0
mov rcx, rax
mov rdx, qword [rsp + 0x48]
call fcn.140076a50
mov rcx, r13
mov r13d, dword [rsp + 0x44]
call fcn.140076510
jmp 0x14006b328
lea rdx, [0x14033127a]
lea rcx, [rsp + 0x200]
call fcn.140085e30
test eax, eax
je 0x14006b425
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 2
call fcn.140160660
test al, al
jne 0x14006b497
cmp byte [rsp + 0x1e7], 0
jns 0x14006b43c
mov rcx, qword [rsp + 0x1d0]
call fcn.1401b9ce8
lea rcx, [rsp + 0x1e8]
mov rdx, qword [rcx + 8]
call fcn.14006d1e0
lea rcx, [rsp + 0x200]
call fcn.140085db0
lea rcx, [rsp + 0x230]
mov rdx, qword [rcx + 8]
call fcn.14006d1e0
mov rcx, qword [rsp + 0x248]
xor rcx, rsp
call fcn.1401bb0d0
movaps xmm6, xmmword [rsp + 0x250]
add rsp, 0x268
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str.....chromeinstaller_setup_setup_util.cc
lea rsi, [rsp + 0x68]
mov rcx, rsi
mov r8d, 0x1e0
mov r9d, 2
call fcn.140224610
lea rcx, [rsp + 0x78]
lea rdx, str.Failed_to_delete_key
mov r8d, 0x15
call fcn.1401f9cc0
mov rcx, rax
mov rdx, qword [rsp + 0x48]
call fcn.140076a50
mov rcx, rsi
call fcn.140224690
jmp 0x14006b425