Function at 0x140040c4c
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2c0
mov qword [rsp + 0xf0], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x14010bfc0]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
mov rsi, rcx
lea r8, str.CUninstallerApp::SetInstallDir
mov edx, 2
lea r15, [0x14010f570]
mov rcx, r15
call fcn.140001000
xor r12d, r12d
mov ebx, r12d
mov qword [rsp + 0x48], r12
lea ebp, [r12 + 0xf]
mov qword [rsp + 0x140], rbp
mov qword [rsp + 0x138], r12
mov byte [rsp + 0x128], r12b
lea rcx, [0x1400c49dc]
call fcn.1400980d0
mov r8, rax
lea rdx, [0x1400c49dc]
lea rcx, [rsp + 0x120]
call fcn.14000352c
nop
mov byte [rsp + 0x1a0], r12b
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x1a1]
call fcn.1400988d0
lea rcx, str.Software_
call fcn.1400980d0
mov r8, rax
lea rdx, str.Software_
lea rcx, [rsp + 0x120]
call fcn.14000352c
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsi + 0x340]
lea rcx, [rsp + 0x120]
call fcn.140006164
lea r14d, [r12 + 1]
mov r9d, r14d
lea r8, str.CheckForCUEInstallFolder
lea rdx, str.Version
mov rcx, rsi
call fcn.14001dd2c
lea r13d, [r12 + 0x10]
cmp eax, r12d
je 0x140040efe
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x110], r12
mov byte [rsp + 0x100], r12b
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0xf8]
call fcn.140002458
nop
lea rcx, str.DigitalImaging
call fcn.1400980d0
mov r8, rax
lea rdx, str.DigitalImaging
lea rcx, [rsp + 0xf8]
call fcn.14000627c
lea r9, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae r9, qword [rsp + 0x100]
lea r8, str.Trying_Installdir_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
lea rdx, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae rdx, qword [rsp + 0x100]
mov dword [rsp + 0x28], r12d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
mov rcx, 0xffffffff80000002
call fcn.14004e070
cmp eax, r12d
jne 0x140040ede
mov dword [rsp + 0x44], r14d
mov dword [rsp + 0x40], 0x104
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x44]
xor r8d, r8d
lea rdx, str.InstallFolder
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
cmp eax, r12d
jne 0x140040ed3
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
cmp rax, r12
jbe 0x140040ed3
lea rax, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae rax, qword [rsp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1a0]
lea r8, str.Got_installDir_s_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
mov ebx, r14d
mov rcx, qword [rsp + 0x48]
call fcn.14004e608
nop
cmp qword [rsp + 0x118], r13
jb 0x140040ef5
mov rcx, qword [rsp + 0x100]
call fcn.14006127c
cmp ebx, r12d
jne 0x140041713
lea r9, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae r9, qword [rsp + 0x128]
lea r8, str.Trying_Installdir_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
lea rdx, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae rdx, qword [rsp + 0x128]
mov dword [rsp + 0x28], r12d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
mov rcx, 0xffffffff80000002
call fcn.14004e070
cmp eax, r12d
jne 0x140041012
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x44], 0x104
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
lea rdx, str.InstallFolder
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
cmp eax, r12d
jne 0x140040fff
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
cmp rax, r12
jbe 0x140040fff
lea rax, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1a0]
lea r8, str.Got_installDir_s_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
mov ebx, r14d
mov rcx, qword [rsp + 0x48]
call fcn.14004e608
cmp ebx, r12d
jne 0x140041713
call fcn.14005c0a8
cmp eax, r12d
je 0x140041397
lea rcx, str.Software_
call fcn.1400980d0
mov r8, rax
lea rdx, str.Software_
lea rcx, [rsp + 0x120]
call fcn.14000352c
lea rcx, str.Wow6432Node_
call fcn.1400980d0
mov r8, rax
lea rdx, str.Wow6432Node_
lea rcx, [rsp + 0x120]
call fcn.14000627c
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsi + 0x340]
lea rcx, [rsp + 0x120]
call fcn.140006164
mov r9d, r14d
lea r8, str.CheckForCUEInstallFolder
lea rdx, str.Version
mov rcx, rsi
call fcn.14001dd2c
cmp eax, r12d
je 0x140041256
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x110], r12
mov byte [rsp + 0x100], r12b
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0xf8]
call fcn.140002458
nop
lea rcx, str.DigitalImaging
call fcn.1400980d0
mov r8, rax
lea rdx, str.DigitalImaging
lea rcx, [rsp + 0xf8]
call fcn.14000627c
lea r9, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae r9, qword [rsp + 0x100]
lea r8, str.Trying_Installdir_from__s_n
mov edx, 0x20
mov rcx, r15
call fcn.140001000
lea rdx, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae rdx, qword [rsp + 0x100]
mov dword [rsp + 0x28], r12d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
mov rcx, 0xffffffff80000002
call fcn.14004e070
cmp eax, r12d
jne 0x14004120a
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x44], 0x104
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
lea rdx, str.InstallFolder
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
cmp eax, r12d
jne 0x1400411fe
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
cmp rax, r12
jbe 0x1400411fe
lea rax, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae rax, qword [rsp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1a0]
lea r8, str.Got_installDir_s_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
mov ebx, r14d
mov rcx, qword [rsp + 0x48]
call fcn.14004e608
jmp 0x140041236
lea r9, [rsp + 0x100]
cmp qword [rsp + 0x118], r13
cmovae r9, qword [rsp + 0x100]
lea r8, str.Failed_to_open_regkey__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
nop
cmp qword [rsp + 0x118], r13
jb 0x14004124d
mov rcx, qword [rsp + 0x100]
call fcn.14006127c
cmp ebx, r12d
jne 0x140041713
lea r9, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae r9, qword [rsp + 0x128]
lea r8, str.trying_Installdir_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
lea rdx, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae rdx, qword [rsp + 0x128]
mov dword [rsp + 0x28], r12d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
mov rcx, 0xffffffff80000002
call fcn.14004e070
cmp eax, r12d
jne 0x140041363
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x44], 0x104
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
lea rdx, str.InstallFolder
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
cmp eax, r12d
jne 0x140041357
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
cmp rax, r12
jbe 0x140041357
lea rax, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1a0]
lea r8, str.Got_installDir_s_from__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
mov ebx, r14d
mov rcx, qword [rsp + 0x48]
call fcn.14004e608
jmp 0x14004138e
lea r9, [rsp + 0x128]
cmp qword [rsp + 0x140], r13
cmovae r9, qword [rsp + 0x128]
lea r8, str.Fail_to_open_the_regkey__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
cmp ebx, r12d
jne 0x140041713
lea rcx, [rsp + 0x40]
movzx eax, word [0x1400d2338]
mov word [rcx], ax
mov al, byte [0x1400d233a]
mov byte [rcx + 2], al
mov r9d, dword [rsi + 0x774]
lea r8, str._2.2d
mov edx, 3
lea rcx, [rsp + 0x40]
call fcn.14009841c
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0x90], r12
mov byte [rsp + 0x80], r12b
lea rcx, str..dat
call fcn.1400980d0
mov r8, rax
lea rdx, str..dat
lea rcx, [rsp + 0x78]
call fcn.14000352c
nop
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x68], r12
mov byte [rsp + 0x58], r12b
lea rcx, [rsp + 0x40]
call fcn.1400980d0
mov r8, rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.14000352c
nop
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x110], r12
mov byte [rsp + 0x100], r12b
lea rcx, [0x1400d2324]
call fcn.1400980d0
mov r8, rax
lea rdx, [0x1400d2324]
lea rcx, [rsp + 0xf8]
call fcn.14000352c
nop
lea rdx, [rsi + 0x7d8]
lea r8, [rsp + 0xf8]
lea rcx, [rsp + 0xa0]
call fcn.14000d234
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000d234
nop
lea r8, [rsp + 0x78]
mov rdx, rax
lea rcx, [rsp + 0x148]
call fcn.14000d234
nop
cmp qword [rsp + 0xe8], r13
jb 0x1400414cd
mov rcx, qword [rsp + 0xd0]
call fcn.14006127c
mov qword [rsp + 0xe8], rbp
mov qword [rsp + 0xe0], r12
mov byte [rsp + 0xd0], r12b
cmp qword [rsp + 0xc0], r13
jb 0x1400414fc
mov rcx, qword [rsp + 0xa8]
call fcn.14006127c
mov qword [rsp + 0xc0], rbp
mov qword [rsp + 0xb8], r12
mov byte [rsp + 0xa8], r12b
cmp qword [rsp + 0x118], r13
jb 0x14004152b
mov rcx, qword [rsp + 0x100]
call fcn.14006127c
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x110], r12
mov byte [rsp + 0x100], r12b
cmp qword [rsp + 0x70], r13
jb 0x140041554
mov rcx, qword [rsp + 0x58]
call fcn.14006127c
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x68], r12
mov byte [rsp + 0x58], r12b
cmp qword [rsp + 0x98], r13
jb 0x14004157a
mov rcx, qword [rsp + 0x80]
call fcn.14006127c
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0x90], r12
mov byte [rsp + 0x80], r12b
lea rdx, [rsp + 0x150]
cmp qword [rsp + 0x168], r13
cmovae rdx, qword [rsp + 0x150]
mov eax, 0x800
mov word [rsp + 0x30], ax
mov dword [rsp + 0x28], 0x104
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, str.INSTALLDIR
lea r8, [0x1400c7664]
lea rcx, [rsi + 0x4e0]
call fcn.14000d388
cmp eax, r12d
je 0x140041624
mov ebx, r14d
lea rax, [rsp + 0x150]
cmp qword [rsp + 0x168], r13
cmovae rax, qword [rsp + 0x150]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x1a0]
lea r8, str.Got_installDir_s_from__MSI__section_in__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
cmp rax, r12
jne 0x1400416f3
mov qword [rsp + 0x190], rbp
mov qword [rsp + 0x188], r12
mov byte [rsp + 0x178], r12b
lea rcx, str._INSTALLDIR_
call fcn.1400980d0
mov r8, rax
lea rdx, str._INSTALLDIR_
lea rcx, [rsp + 0x170]
call fcn.14000352c
nop
mov r9d, 0x800
xor r8d, r8d
lea rdx, [rsp + 0x170]
lea rcx, [rsi + 0x4e0]
call fcn.140015768
lea r8, [rsp + 0x178]
cmp qword [rsp + 0x190], r13
cmovae r8, qword [rsp + 0x178]
mov edx, 0x103
lea rcx, [rsp + 0x1a0]
call fcn.1400986e0
mov ebx, r14d
mov r9, qword [rsi + 0x1c8]
lea r8, str.Expanded_InstallDir_from__Strings__section_in__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
nop
cmp qword [rsp + 0x190], r13
jb 0x1400416f3
mov rcx, qword [rsp + 0x178]
call fcn.14006127c
nop
cmp qword [rsp + 0x168], r13
jb 0x14004170a
mov rcx, qword [rsp + 0x150]
call fcn.14006127c
cmp ebx, r12d
je 0x140041896
lea rcx, [rsp + 0x1a0]
call fcn.1400980d0
mov r8, rax
lea rdx, [rsp + 0x1a0]
lea rcx, [rsi + 0x800]
call fcn.14000352c
mov qword [rsp + 0x168], rbp
mov qword [rsp + 0x160], r12
mov byte [rsp + 0x150], r12b
lea rcx, [0x1400c49dc]
call fcn.1400980d0
mov r8, rax
lea rdx, [0x1400c49dc]
lea rcx, [rsp + 0x148]
call fcn.14000352c
nop
lea rax, [rsp + 0x148]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x28], rax
lea rax, str..._
mov qword [rsp + 0x20], rax
xor r9d, r9d
movzx r8d, word [rsi + 0x200]
mov rdx, qword [rsi + 0x1c8]
lea rcx, [rsi + 0x4e0]
call fcn.140012418
nop
cmp qword [rsp + 0x168], r13
jb 0x1400417cf
mov rcx, qword [rsp + 0x150]
call fcn.14006127c
mov qword [rsp + 0x168], reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x160], r12
mov byte [rsp + 0x150], r12b
lea rcx, [0x1400c49dc]
call fcn.1400980d0
mov r8, rax
lea rdx, [0x1400c49dc]
lea rcx, [rsp + 0x148]
call fcn.14000352c
nop
lea rax, [rsp + 0x148]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x28], rax
lea rax, str..._
mov qword [rsp + 0x20], rax
mov r9d, r14d
movzx r8d, word [rsi + 0x200]
mov rdx, qword [rsi + 0x1c8]
lea rcx, [rsi + 0x4e0]
call fcn.140012418
nop
cmp qword [rsp + 0x168], r13
jb 0x14004186b
mov rcx, qword [rsp + 0x150]
call fcn.14006127c
cmp qword [rsi + 0x820], r13
jb 0x14004187d
mov r9, qword [rsi + 0x808]
jmp 0x140041884
lea r9, [rsi + 0x808]
lea r8, str.Installdir_is__s_n
mov edx, r14d
mov rcx, r15
call fcn.140001000
lea r8, str.CUninstallerApp::SetInstallDir
mov edx, 4
mov rcx, r15
call fcn.140001000
nop
cmp qword [rsp + 0x140], r13
jb 0x1400418c2
mov rcx, qword [rsp + 0x128]
call fcn.14006127c
mov eax, ebx
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.140061100
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret