Function at 0x140203f90
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, 0x288
movaps xmmword [rsp + 0x270], xmm6
mov r15, rdx
mov r14, rcx
mov rax, qword [0x1403a0028]
xor rax, rsp
mov qword [rsp + 0x268], rax
lea rax, [rsp + 0x248]
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax - 8], rax
xor eax, eax
lea rdx, [rsp + 0x23c]
mov dword [rdx], eax
lea rbp, [rsp + 0x238]
mov dword [rbp], eax
lea rbx, [rsp + 0x234]
mov dword [rbx], eax
lea rdi, [rsp + 0x230]
mov dword [rdi], eax
lea rsi, [rsp + 0x22c]
mov dword [rsi], eax
mov rcx, qword [r15]
movups xmmword [rsp + 0x50], xmm6
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x30], 0
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
je 0x14020409b
mov esi, eax
mov ecx, 2
call fcn.140160660
test al, al
jne 0x140204915
lea rcx, [rsp + 0x240]
mov rdx, qword [rcx + 8]
call fcn.14004f540
xor ebx, ebx
mov rcx, qword [rsp + 0x268]
xor rcx, rsp
call fcn.1401bb0d0
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x270]
add rsp, 0x288
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x68], r15
mov ecx, dword [rsp + 0x238]
mov eax, dword [rsp + 0x230]
cmp ecx, eax
cmova eax, ecx
movaps xmmword [rsp + 0xd0], xmm6
mov qword [rsp + 0xe0], 0
inc eax
je 0x140204102
mov edi, eax
lea rsi, [rdi + rdi]
mov rcx, rsi
call fcn.1401b9cac
mov qword [rsp + 0xd0], rax
lea rdi, [rax + rdi*2]
mov qword [rsp + 0xe0], rdi
mov rcx, rax
xor edx, edx
mov r8, rsi
call fcn.1401bd200
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0x80], r14
mov eax, dword [rsp + 0x234]
xor r15d, r15d
test rax, rax
je 0x14020445d
movabs r12, 0x492492492492492
imul rsi, rax, 0x38
mov rcx, rsi
call fcn.1401b9cac
mov r14, rax
mov rbx, rax
add rbx, rsi
mov eax, dword [rsp + 0x22c]
test eax, eax
mov esi, 1
cmovne esi, eax
mov rcx, rsi
call fcn.1401b9cac
lea rbp, [rsp + 0x90]
mov qword [rbp], rax
lea rdi, [rax + rsi]
mov qword [rbp + 0x10], rdi
mov rcx, rax
xor edx, edx
mov r8, rsi
call fcn.1401bd200
mov qword [rbp + 8], rdi
lea rbp, [rsp + 0x88]
mov dword [rbp], 0
xorps xmm6, xmm6
mov r13, r14
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xd8]
sub rax, r8
shr rax, 1
mov dword [rsp + 0x258], eax
mov eax, dword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
sub eax, edx
mov dword [rsp + 0xcc], eax
mov rcx, qword [rsi]
lea rax, [rsp + 0xcc]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], 0
mov edx, r15d
lea r9, [rsp + 0x258]
call qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
je 0x140204223
mov edi, eax
cmp eax, 0xea
je 0x140204264
cmp edi, 0x103
jne 0x140204861
mov dword [rsp + 0x234], r15d
jmp 0x140204429
movaps xmmword [rsp + 0xf0], xmm6
mov qword [rsp + 0x100], 0
lea rax, [rsp + 0x108]
movups xmmword [rax + 0xc], xmm6
movups xmmword [rax], xmm6
cmp r14, rbx
jae 0x1402042ca
mov rcx, r14
lea rdx, [rsp + 0xf0]
call fcn.14004f5b0
add r14, 0x38
jmp 0x1402043ab
mov edx, dword [rsp + 0xcc]
mov rax, qword [rsp + 0x98]
sub rax, qword [rsp + 0x90]
cmp rax, rdx
jae 0x140204290
sub rdx, rax
lea rcx, [rsp + 0x90]
call fcn.1401569e0
mov edx, dword [rsp + 0x258]
inc edx
mov rax, qword [rsp + 0xd8]
sub rax, qword [rsp + 0xd0]
sar rax, 1
cmp rax, rdx
jae 0x140204429
sub rdx, rax
lea rcx, [rsp + 0xd0]
call fcn.14004f650
jmp 0x140204429
mov rdi, r14
sub rdi, r13
sar rdi, 3
movabs rax, 0x6db6db6db6db6db7
imul rdi, rax
lea rsi, [rdi + 1]
cmp rsi, r12
ja 0x140204ac5
sub rbx, r13
sar rbx, 3
imul rbx, rax
lea rax, [rbx + rbx]
cmp rax, rsi
cmova rsi, rax
movabs rax, 0x249249249249249
cmp rbx, rax
cmovae rsi, r12
test rsi, rsi
je 0x140204439
cmp rsi, r12
ja 0x140204aca
imul rcx, rsi, 0x38
call fcn.1401b9cac
mov r12, rax
imul rbp, rdi, 0x38
lea rdi, [r12 + rbp]
imul rbx, rsi, 0x38
mov rcx, rdi
lea rdx, [rsp + 0xf0]
call fcn.14004f5b0
mov rax, r14
mov rsi, r14
cmp r14, r13
je 0x140204386
add r14, 0xffffffffffffffc8
add rdi, 0xffffffffffffffc8
mov rcx, rdi
mov rdx, r14
call fcn.14004f5b0
cmp r14, r13
jne 0x14020435b
jmp 0x140204381
add rsi, 0xffffffffffffffc8
mov rcx, rsi
call fcn.140204ad0
cmp rsi, r13
jne 0x140204375
add rbx, r12
lea r14, [r12 + rbp]
add r14, 0x38
test r13, r13
je 0x14020439e
mov rcx, r13
call fcn.1401b9ce8
mov r13, rdi
movabs r12, 0x492492492492492
mov rcx, qword [rsp + 0x108]
test rcx, rcx
je 0x1402043bd
call fcn.1401b9ce8
cmp byte [rsp + 0x107], 0
jns 0x1402043d4
mov rcx, qword [rsp + 0xf0]
call fcn.1401b9ce8
lea rcx, [r14 - 0x38]
mov edi, dword [rsp + 0xcc]
mov rbp, qword [rsp + 0x90]
mov esi, dword [rsp + 0x88]
mov r8d, dword [rsp + 0x258]
mov rdx, qword [rsp + 0xd0]
call fcn.14005cc60
mov dword [r14 - 8], esi
lea rcx, [r14 - 0x20]
add rdi, rbp
mov rdx, rbp
mov r8, rdi
call fcn.14004f0c0
inc r15d
mov rsi, qword [rsp + 0x68]
lea rbp, [rsp + 0x88]
cmp r15d, dword [rsp + 0x234]
jb 0x140204194
jmp 0x140204441
xor r12d, r12d
jmp 0x140204334
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x14020446a
mov qword [rsp + 0x98], rcx
call fcn.1401b9ce8
jmp 0x14020446a
xor r13d, r13d
xor r14d, r14d
xor ebx, ebx
mov rsi, qword [rsp + 0x68]
cmp dword [rsp + 0x23c], 0
je 0x140204735
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], rbx
lea r15, [rsp + 0xb0]
xor ebx, ebx
xorps xmm6, xmm6
lea rbp, [rsp + 0xcc]
mov r14, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
lea r12, [rsp + 0xf0]
mov r8, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xd8]
sub rax, r8
shr rax, 1
mov dword [rsp + 0xcc], eax
mov rcx, qword [rsi]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x20], xmm6
mov edx, ebx
mov r9, rbp
call r14
test eax, eax
je 0x140204501
mov edi, eax
cmp eax, 0xea
je 0x140204627
cmp edi, 0x103
jne 0x140204894
mov dword [rsp + 0x23c], ebx
jmp 0x140204618
movaps xmmword [rsp + 0x90], xmm6
mov qword [rsp + 0xa0], 0
movups xmmword [r15], xmm6
mov qword [rsp + 0xa8], r15
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x88], rax
mov rcx, r12
lea rdx, [rsp + 0x88]
lea r8, [rsp + 0x90]
call fcn.14004f200
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x258]
mov r8, r12
call fcn.14004f770
mov rdx, qword [rsp + 0x118]
lea rcx, [rsp + 0x110]
call fcn.14004f540
mov rsi, qword [rsp + 0xf8]
test rsi, rsi
je 0x1402045b9
mov rdi, qword [rsp + 0x100]
mov rcx, rsi
cmp rdi, rsi
je 0x1402045ac
add rdi, 0xffffffffffffffc8
mov rcx, rdi
call fcn.140204ad0
cmp rdi, rsi
jne 0x140204593
mov rcx, qword [rsp + 0xf8]
mov qword [rsp + 0x100], rsi
call fcn.1401b9ce8
mov rdx, qword [rsp + 0xb0]
lea rcx, [rsp + 0xa8]
call fcn.14004f540
mov rsi, qword [rsp + 0x90]
test rsi, rsi
je 0x140204611
mov rdi, qword [rsp + 0x98]
mov rcx, rsi
cmp rdi, rsi
je 0x140204604
add rdi, 0xffffffffffffffc8
mov rcx, rdi
call fcn.140204ad0
cmp rdi, rsi
jne 0x1402045eb
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x98], rsi
call fcn.1401b9ce8
inc ebx
mov rsi, qword [rsp + 0x68]
cmp ebx, dword [rsp + 0x23c]
jb 0x1402044a6
jmp 0x14020466d
mov edx, dword [rsp + 0xcc]
inc edx
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd8]
sub rcx, rax
sar rcx, 1
cmp rcx, rdx
jae 0x14020465d
sub rdx, rcx
lea rcx, [rsp + 0xd0]
call fcn.14004f650
jmp 0x140204618
jbe 0x140204618
lea rax, [rax + rdx*2]
mov qword [rsp + 0xd8], rax
jmp 0x140204618
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x90]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [0x14032f5c0]
movaps xmmword [rcx], xmm0
call fcn.140085af0
mov rbp, qword [rsp + 0x240]
lea rax, [rsp + 0x248]
cmp rbp, rax
je 0x14020471e
lea r14, [rsp + 0x90]
lea rbx, [rbp + 0x20]
cmp byte [rbp + 0x37], 0
mov r8, rbx
jns 0x1402046bf
mov r8, qword [rbx]
mov rdx, qword [rsi]
mov rcx, r14
mov r9d, 0x20009
call fcn.140085c90
test eax, eax
jne 0x140204821
lea rcx, [rbp + 0x38]
mov rdx, r14
call fcn.140203f90
test al, al
je 0x140204969
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x140204702
mov rax, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1402046f5
jmp 0x14020470e
mov rax, qword [rbp + 0x10]
cmp qword [rax], rbp
mov rbp, rax
jne 0x140204702
mov rbp, rax
lea rcx, [rsp + 0x248]
cmp rax, rcx
jne 0x1402046af
lea rcx, [rsp + 0x90]
call fcn.140085db0
mov rbx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x70]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax]
mov r8, qword [rax + 8]
mov qword [rax], r13
mov qword [rax + 8], r14
mov qword [rax + 0x10], rbx
mov rdx, qword [rax + 0x18]
mov rbp, qword [rsp + 0x240]
mov qword [rax + 0x18], rbp
mov qword [rsp + 0x240], rdx
lea rbx, [rax + 0x20]
mov rdx, qword [rax + 0x20]
mov rdi, qword [rsp + 0x248]
mov qword [rax + 0x20], rdi
mov qword [rsp + 0x248], rdx
mov rbp, qword [rax + 0x28]
mov rsi, qword [rsp + 0x250]
mov qword [rax + 0x28], rsi
mov qword [rsp + 0x250], rbp
test rsi, rsi
je 0x14020484b
mov qword [rdi + 0x10], rbx
mov rbp, qword [rsp + 0x250]
lea rbx, [rsp + 0x248]
test rbp, rbp
je 0x140204854
mov qword [rdx + 0x10], rbx
mov bl, 1
mov r13, rcx
mov r14, r8
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x1402047e7
mov qword [rsp + 0xd8], rcx
call fcn.1401b9ce8
lea rcx, [rsp + 0x240]
mov rdx, qword [rcx + 8]
call fcn.14004f540
test r13, r13
je 0x14020406d
cmp r14, r13
je 0x140204814
add r14, 0xffffffffffffffc8
mov rcx, r14
call fcn.140204ad0
jmp 0x140204801
mov rcx, r13
call fcn.1401b9ce8
jmp 0x14020406d
mov edi, eax
mov ecx, 2
call fcn.140160660
test al, al
jne 0x1402049dd
lea rcx, [rsp + 0x90]
call fcn.140085db0
xor ebx, ebx
mov r14, qword [rsp + 0x70]
jmp 0x1402047cd
mov qword [rax + 0x18], rbx
jmp 0x1402047b0
mov qword [rsp + 0x240], rbx
jmp 0x1402047c5
mov ecx, 2
call fcn.140160660
test al, al
jne 0x140204a51
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x14020488d
mov qword [rsp + 0x98], rcx
call fcn.1401b9ce8
xor ebx, ebx
jmp 0x1402047cd
mov ecx, 2
call fcn.140160660
test al, al
je 0x140204842
lea rdx, str.....chromeinstallerutil_registry_key_backup.cc
lea rbp, [rsp + 0xf0]
mov rcx, rbp
mov r8d, 0xc8
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x100]
lea rdx, str.Failed_getting_name_of_subkey
mov r8d, 0x1e
call fcn.1401f9cc0
mov rcx, rax
mov edx, ebx
call fcn.14003a1d0
lea rdx, str._for_backup__result:
mov r8d, 0x15
mov rcx, rax
call fcn.1401f9cc0
mov rcx, rax
mov edx, edi
call fcn.140039f90
mov rcx, rbp
call fcn.140076510
jmp 0x140204842
lea rdx, str.....chromeinstallerutil_registry_key_backup.cc
lea rdi, [rsp + 0xf0]
mov rcx, rdi
mov r8d, 0x82
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x100]
lea rdx, str.Failed_getting_info_of_key_to_backup__result:
mov r8d, 0x2e
call fcn.1401f9cc0
mov rcx, rax
mov edx, esi
call fcn.140039f90
mov rcx, rdi
call fcn.140076510
jmp 0x14020405a
mov ecx, 2
call fcn.140160660
test al, al
je 0x140204835
lea rdx, str.....chromeinstallerutil_registry_key_backup.cc
lea rdi, [rsp + 0xf0]
mov rcx, rdi
mov r8d, 0xdd
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x100]
lea rdx, str.Failed_backing_up_subkey__
mov r8d, 0x1a
call fcn.1401f9cc0
mov rcx, rax
mov rdx, rbx
call fcn.140076a50
lea rdx, [0x14033135f]
mov r8d, 1
mov rcx, rax
call fcn.1401f9cc0
mov rcx, rdi
jmp 0x140204a47
lea rdx, str.....chromeinstallerutil_registry_key_backup.cc
lea rbp, [rsp + 0xf0]
mov rcx, rbp
mov r8d, 0xd8
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x100]
lea rdx, str.Failed_opening_subkey__
mov r8d, 0x17
call fcn.1401f9cc0
mov rcx, rax
mov rdx, rbx
call fcn.140076a50
lea rdx, str.__for_backup__result:
mov r8d, 0x16
mov rcx, rax
call fcn.1401f9cc0
mov rcx, rax
mov edx, edi
call fcn.140039f90
mov rcx, rbp
call fcn.140076510
jmp 0x140204835
lea rdx, str.....chromeinstallerutil_registry_key_backup.cc
lea rbp, [rsp + 0xf0]
mov rcx, rbp
mov r8d, 0xa8
mov r9d, 2
call fcn.140076020
lea rcx, [rsp + 0x100]
lea rdx, str.Failed_backing_up_value
mov r8d, 0x18
call fcn.1401f9cc0
mov rcx, rax
mov edx, r15d
call fcn.14003a1d0
lea rdx, str.__result:
mov r8d, 0xa
mov rcx, rax
call fcn.1401f9cc0
mov rcx, rax
mov edx, edi
call fcn.140039f90
mov rcx, rbp
call fcn.140076510
jmp 0x140204873
call fcn.1401f9cb0
call fcn.1401f9cb0
int3