Function at 0x140104f10
Capabilities:
Get installed programs

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r14
push r15
sub rsp, 0x160
mov rax, qword [0x1402bf5c8]
xor rax, rsp
mov qword [rsp + 0x150], rax
xor r15d, r15d
mov dword [r11 - 0x40], r15d
lea rax, [r11 - 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 0x2001f
xor r8d, r8d
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionUninstall
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov ebx, eax
test eax, eax
jne 0x140105775
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x70], rax
mov byte [rsp + 0x20], 1
lea r9, str.DisplayIcon
lea r8, str.AMD_Catalyst_Install_Manager
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x70]
call fcn.1400772f0
nop
lea rdx, [rsp + 0x130]
cmp qword [rsp + 0x148], 8
cmovae rdx, qword [rsp + 0x130]
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r15w
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x50]
call fcn.140018360
nop
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x60]
lea rdi, [rcx + rax*2]
mov rbx, rdi
mov rdx, rdi
call fcn.140064d10
cmp rax, rdi
je 0x14010504b
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x140105027
cmp cx, 0x2f
jne 0x140105030
add rax, 2
jmp 0x140105013
lea rcx, [rbx - 2]
movzx edx, word [rcx]
cmp dx, 0x5c
je 0x14010504b
cmp dx, 0x2f
je 0x14010504b
mov rbx, rcx
cmp rax, rcx
jne 0x140105030
sub rdi, rbx
sar rdi, 1
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], 7
mov word [rsp + 0x78], r15w
mov r8, rdi
mov rdx, rbx
lea rcx, [rsp + 0x78]
call fcn.140018360
nop
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
lea rbx, [rsp + 0x78]
cmp qword [rsp + 0x90], 8
cmovae rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x88]
lea rcx, [rsp + 0x30]
movabs r14, 0x7ffffffffffffffe
cmp rdi, 8
jae 0x1401050d4
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x48], 7
jmp 0x140105117
mov rsi, rdi
or rsi, 7
cmp rsi, r14
cmova rsi, r14
lea rdx, [rsi + 1]
call fcn.140023c30
mov qword [rsp + 0x30], rax
lea r8, [rdi*2 + 2]
mov rdx, rbx
mov rcx, rax
call fcn.1401cfe40
mov qword [rsp + 0x48], rsi
lea rcx, [rsp + 0x30]
cmp rsi, 8
cmovae rcx, qword [rsp + 0x30]
mov qword [rsp + 0x40], rdi
lea rdx, str.RadeonSoftwarePro.ico
call fcn.1401df7c0
test eax, eax
sete bl
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14010516f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14010516a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401057a8
call fcn.1401a9a50
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], r15w
lea rcx, [rsp + 0x78]
call fcn.1400272a0
nop
lea rcx, [rsp + 0x50]
call fcn.1400272a0
test bl, bl
je 0x14010521b
mov rdx, qword [rsp + 0x148]
cmp rdx, 8
jb 0x1401051e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401051df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401057b4
call fcn.1401a9a50
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], r15w
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140105211
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 3
jmp 0x140105747
lea rdx, [rsp + 0x130]
cmp qword [rsp + 0x148], 8
cmovae rdx, qword [rsp + 0x130]
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r15w
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x50]
call fcn.140018360
nop
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x50]
call fcn.140073250
mov rbx, rax
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
mov rdi, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x140105293
mov rbx, qword [rax]
lea rcx, [rsp + 0x30]
cmp rdi, 8
jae 0x1401052b1
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x48], 7
jmp 0x1401052f4
mov rsi, rdi
or rsi, 7
cmp rsi, r14
cmova rsi, r14
lea rdx, [rsi + 1]
call fcn.140023c30
mov qword [rsp + 0x30], rax
lea r8, [rdi*2 + 2]
mov rdx, rbx
mov rcx, rax
call fcn.1401cfe40
mov qword [rsp + 0x48], rsi
lea rcx, [rsp + 0x30]
cmp rsi, 8
cmovae rcx, qword [rsp + 0x30]
mov qword [rsp + 0x40], rdi
lea rdx, str.Creator.ico
call fcn.1401df7c0
test eax, eax
sete bl
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14010534c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140105347
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401057ae
call fcn.1401a9a50
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], r15w
lea rcx, [rsp + 0x98]
call fcn.1400272a0
nop
lea rcx, [rsp + 0x50]
call fcn.1400272a0
test bl, bl
je 0x1401053fb
mov rdx, qword [rsp + 0x148]
cmp rdx, 8
jb 0x1401053c4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401053bf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401057b4
call fcn.1401a9a50
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], r15w
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1401053f1
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 4
jmp 0x140105747
lea rdx, [rsp + 0x130]
cmp qword [rsp + 0x148], 8
cmovae rdx, qword [rsp + 0x130]
mov qword [rsp + 0x98], r15
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0xb0], 7
mov word [rsp + 0x98], r15w
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x98]
call fcn.140018360
nop
mov dword [rsp + 0x128], 0x3ffc1
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x98]
call fcn.140073250
mov rbx, rax
mov dword [rsp + 0x128], 0x3ffc3
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
mov rsi, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x14010549b
mov rbx, qword [rax]
cmp rsi, 8
jae 0x1401054b9
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x48], 7
mov edi, 7
jmp 0x1401054f2
mov rdi, rsi
or rdi, 7
cmp rdi, r14
cmova rdi, r14
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x30]
call fcn.140023c30
mov qword [rsp + 0x30], rax
lea r8, [rsi*2 + 2]
mov rdx, rbx
mov rcx, rax
call fcn.1401cfe40
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rsi
mov ebx, 0x7ffc7
mov dword [rsp + 0x128], ebx
lea rcx, [rsp + 0x30]
cmp rdi, 8
cmovae rcx, qword [rsp + 0x30]
lea rdx, str.AMDSoftwareConsumer.ico
call fcn.1401df7c0
test eax, eax
je 0x1401055d3
lea rdx, [rsp + 0x130]
cmp qword [rsp + 0x148], 8
cmovae rdx, qword [rsp + 0x130]
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], 7
mov word [rsp + 0x78], r15w
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x78]
call fcn.140018360
nop
mov dword [rsp + 0x128], 0x1fffcf
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x78]
call fcn.140073250
nop
mov dword [rsp + 0x128], 0x1fffdf
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140018e70
mov ebx, 0x3fffff
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rcx, qword [rsp + 0x50]
lea rdx, str.RadeonInstaller.exe
call fcn.1401df7c0
test eax, eax
je 0x1401055d3
xor dil, dil
jmp 0x1401055d6
mov dil, 1
test bl, 0x20
je 0x14010560f
and ebx, 0xffffffdf
mov r8, qword [rsp + 0x68]
cmp r8, 8
jb 0x1401055fb
inc r8
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
call fcn.140023c60
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r15w
test bl, 0x10
je 0x140105625
and ebx, 0xffffffef
lea rcx, [rsp + 0xc0]
call fcn.1400272a0
nop
test bl, 8
je 0x140105638
and ebx, 0xfffffff7
lea rcx, [rsp + 0x78]
call fcn.1400272a0
nop
test bl, 4
je 0x140105671
and ebx, 0xfffffffb
mov r8, qword [rsp + 0x48]
cmp r8, 8
jb 0x14010565d
inc r8
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x30]
call fcn.140023c60
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], r15w
test bl, 2
je 0x140105687
and ebx, 0xfffffffd
lea rcx, [rsp + 0xe0]
call fcn.1400272a0
nop
test bl, 1
je 0x14010569a
lea rcx, [rsp + 0x98]
call fcn.1400272a0
nop
mov r8, qword [rsp + 0x148]
test dil, dil
je 0x1401056f9
cmp r8, 8
jb 0x1401056c5
inc r8
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x130]
call fcn.140023c60
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], r15w
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1401056f2
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
jmp 0x140105747
cmp r8, 8
jb 0x140105717
inc r8
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x130]
call fcn.140023c60
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], r15w
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140105745
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
xor eax, eax
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.1401a9a30
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret
call fcn.140015e70
mov r8, rax
lea r9, str.Unable_to_open_registry_key
mov edx, ebx
lea rcx, [rsp + 0x100]
call fcn.140046020
lea rdx, [0x1402ba948]
lea rcx, [rsp + 0x100]
call fcn.1401cfc8c
nop
call fcn.1401e3dbc
nop
call fcn.1401e3dbc
nop
call fcn.1401e3dbc
int3