Function at 0x180094740
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rsi
push r12
lea rbp, [rsp - 0x3f0]
sub rsp, 0x4f0
movdqa xmm0, xmmword [0x1800f28b0]
lea rdx, str.Path
mov r12, rcx
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
mov r8d, 4
movdqu xmmword [rsp + 0x40], xmm0
call fcn.1800a7f50
movdqa xmm0, xmmword [0x1800f28b0]
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionApp_Paths_firefox.exe
mov r8d, 0x3f
mov byte [rsp + 0x50], 0
lea rcx, [rsp + 0x50]
movdqu xmmword [rsp + 0x60], xmm0
call fcn.1800a7f50
xor edx, edx
lea rcx, [rbp - 0x50]
mov r8d, 0x400
call fcn.1800b2d40
cmp qword [rsp + 0x68], 0x10
lea rax, [rbp + 0x420]
lea rdx, [rsp + 0x50]
mov dword [rbp + 0x418], 0x400
cmovae rdx, qword [rsp + 0x50]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x180094836
cmp qword [rsp + 0x48], 0x10
lea rax, [rbp + 0x418]
mov rcx, qword [rbp + 0x420]
lea rdx, [rsp + 0x30]
cmovae rdx, qword [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rcx, qword [rbp + 0x420]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
mov qword [rbp - 0x78], 0xf
mov qword [rbp - 0x80], rsi
lea rax, [rbp - 0x50]
mov byte [rsp + 0x70], sil
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], sil
jne 0x180094861
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x70]
call fcn.1800a7f50
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x1800948b5
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800948b0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180094d44
call fcn.1800afef0
mov rdx, qword [rsp + 0x48]
movdqa xmm0, xmmword [0x1800f28b0]
mov byte [rsp + 0x50], sil
movdqu xmmword [rsp + 0x60], xmm0
cmp rdx, 0x10
jb 0x180094905
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180094900
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180094d44
call fcn.1800afef0
mov qword [rsp + 0x510], rbx
movabs rax, 0x7fffffffffffffff
mov rbx, qword [rbp - 0x80]
mov qword [rsp + 0x4e8], rdi
mov rdi, qword [rsp + 0x70]
mov qword [rsp + 0x4d8], r14
mov r14, qword [rbp - 0x78]
cmp r14, 0x10
mov qword [rsp + 0x4d0], r15
lea r15, [rsp + 0x70]
cmovae r15, rdi
cmp rbx, 0x10
jae 0x180094963
movups xmm0, xmmword [r15]
mov qword [rsp + 0x48], 0xf
movups xmmword [rsp + 0x30], xmm0
jmp 0x1800949d6
mov rsi, rbx
or rsi, 0xf
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x1800949ad
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180094d4a
mov rcx, rax
call fcn.1800afef8
mov rcx, rax
test rax, rax
je 0x180094d50
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800949bb
test rcx, rcx
je 0x1800949b9
call fcn.1800afef8
jmp 0x1800949bb
xor eax, eax
lea r8, [rbx + 1]
mov qword [rsp + 0x30], rax
mov rdx, r15
mov rcx, rax
call fcn.1800b2f60
mov qword [rsp + 0x48], rsi
xor esi, esi
mov qword [rsp + 0x4e0], r13
lea rcx, [rsp + 0x50]
lea r13, [0x180104178]
movaps xmmword [rsp + 0x4c0], xmm6
mov rdx, r13
mov qword [rsp + 0x40], rbx
movaps xmmword [rsp + 0x4b0], xmm7
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.18008c1a0
test eax, eax
jg 0x180094c72
cmp r14, 0x10
lea r15, [rsp + 0x70]
cmovae r15, rdi
cmp rbx, 0x10
jae 0x180094a43
movups xmm0, xmmword [r15]
mov qword [rsp + 0x48], 0xf
movups xmmword [rsp + 0x30], xmm0
jmp 0x180094ac0
movabs rax, 0x7fffffffffffffff
mov rsi, rbx
or rsi, 0xf
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180094a97
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180094d56
mov rcx, rax
call fcn.1800afef8
mov rcx, rax
test rax, rax
je 0x180094d5c
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180094aa5
test rcx, rcx
je 0x180094aa3
call fcn.1800afef8
jmp 0x180094aa5
xor eax, eax
lea r8, [rbx + 1]
mov qword [rsp + 0x30], rax
mov rdx, r15
mov rcx, rax
call fcn.1800b2f60
mov qword [rsp + 0x48], rsi
xor esi, esi
mov rdx, r12
mov qword [rsp + 0x40], rbx
lea rcx, [rbp - 0x70]
call fcn.1800a79d0
mov r8, rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.180093760
cmp qword [0x180104270], 0x10
lea r8, [0x180104258]
mov r9, qword [0x180104268]
mov rcx, rax
cmovae r8, qword [0x180104258]
call fcn.1800a9670
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [0x180104270]
cmp rdx, 0x10
jb 0x180094b60
mov rcx, qword [0x180104258]
inc rdx
cmp rdx, 0x1000
jb 0x180094b5b
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180094d5c
mov rcx, r8
call fcn.1800afef0
mov rdx, qword [rsp + 0x68]
movups xmmword [0x180104258], xmm6
movups xmmword [0x180104268], xmm7
cmp rdx, 0x10
jb 0x180094bab
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180094ba6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180094d5c
call fcn.1800afef0
mov rdx, qword [0x180104188]
lea rcx, [rsp + 0x30]
add rdx, rbx
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 0xf
mov byte [rsp + 0x30], 0
call fcn.1800a9410
cmp qword [0x180104190], 0x10
lea rcx, [rsp + 0x30]
mov r8, qword [0x180104188]
cmovae r13, qword [0x180104178]
mov rdx, r13
call fcn.1800a7730
cmp r14, 0x10
lea rdx, [rsp + 0x70]
mov r8, rbx
lea rcx, [rsp + 0x30]
cmovae rdx, rdi
call fcn.1800a7730
mov rdx, qword [0x180104190]
cmp rdx, 0x10
jb 0x180094c51
mov rcx, qword [0x180104178]
inc rdx
cmp rdx, 0x1000
jb 0x180094c4c
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180094d38
mov rcx, r8
call fcn.1800afef0
movups xmm0, xmmword [rsp + 0x30]
mov r14, qword [rbp - 0x78]
movups xmm1, xmmword [rsp + 0x40]
mov rdi, qword [rsp + 0x70]
movups xmmword [0x180104178], xmm0
movups xmmword [0x180104188], xmm1
cmp r14, 0x10
jb 0x180094ca9
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180094ca1
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180094d3e
mov rcx, rdi
call fcn.1800afef0
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x180094ce1
mov rcx, qword [r12]
inc rdx
cmp rdx, 0x1000
jb 0x180094cdc
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180094d3e
mov rcx, r8
call fcn.1800afef0
movaps xmm6, xmmword [rsp + 0x4c0]
mov r13, qword [rsp + 0x4e0]
movaps xmm7, xmmword [rsp + 0x4b0]
mov r14, qword [rsp + 0x4d8]
mov rdi, qword [rsp + 0x4e8]
mov rbx, qword [rsp + 0x510]
mov r15, qword [rsp + 0x4d0]
mov qword [r12 + 0x10], rsi
mov qword [r12 + 0x18], 0xf
mov byte [r12], 0
add rsp, 0x4f0
pop r12
pop rsi
pop rbp
ret
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800893c0
int3
call fcn.1800bb0c0
int3
call fcn.1800893c0
int3
call fcn.1800bb0c0
int3