Function at 0x14002cb50
Capabilities:
Get common file path
Get program files directory

Disassembly:
push rdi
sub rsp, 0x250
mov rax, qword [0x1401c1050]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov rdi, rdx
cmp ecx, 0x2f
ja case.0x14002cb8b.16
movsxd rax, ecx
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0x2d080]
add rcx, rdx
jmp rcx
mov rdx, rdi
mov ecx, 0x26
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x2a
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x2b
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x2c
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x24
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x25
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x29
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x14
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x17
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x28
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 5
call fcn.14002c3d0
jmp 0x14002cd31
xor eax, eax
lea r9, [rsp + 0x28]
xor r8d, r8d
mov qword [rsp + 0x28], rax
xor edx, edx
lea rcx, [0x14017a4d8]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
test eax, eax
js case.0x14002cb8b.16
mov rdx, qword [rsp + 0x28]
mov rcx, rdi
call fcn.140006390
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov al, 1
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x1a
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x1c
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x23
call fcn.14002c3d0
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x2e
call fcn.14002c3d0
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c5f0
jmp 0x14002cd31
mov r8d, 0x104
lea rdx, [rsp + 0x30]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je case.0x14002cb8b.16
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.140006390
mov al, 1
jmp 0x14002cd31
mov r8d, 0x104
lea rdx, [rsp + 0x30]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je case.0x14002cb8b.16
lea rcx, [rsp + 0x30]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x14002ccf8
xor al, al
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14007bb60
add rsp, 0x250
pop rdi
ret
mov rcx, rdi
call fcn.14002c7b0
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c6d0
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c8b0
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c6d0
mov r8d, 4
lea rdx, str.CEP
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c8b0
mov r8d, 4
lea rdx, str.CEP
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c990
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x23
call fcn.14002c3d0
lea rdx, str.Adobe
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c7b0
test al, al
je case.0x14002cb8b.16
lea rdx, str.OOBE
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c990
test al, al
je case.0x14002cb8b.16
lea rdx, str.OOBE
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rdx, rdi
mov ecx, 0x23
call fcn.14002c3d0
lea rdx, str.Adobe
mov rcx, rdi
call fcn.140006480
lea rdx, str.OOBE
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c7b0
test al, al
je case.0x14002cb8b.16
lea rdx, str.OOBEPDApp
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c990
test al, al
je case.0x14002cb8b.16
lea rdx, str.OOBEPDApp
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c7b0
test al, al
je case.0x14002cb8b.16
lea rdx, str.AdobeApplicationManagerAAMRefs
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c7b0
jmp 0x14002cedc
mov rcx, rdi
call fcn.14002c6d0
test al, al
je case.0x14002cb8b.16
lea rdx, str.ADCRefs
mov rcx, rdi
call fcn.140006480
mov al, 1
jmp 0x14002cd31
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.1400243f0
cmp dword [rsp + 0x20], 2
jne 0x14002cf3c
mov rcx, rdi
call fcn.14002c6d0
test al, al
je case.0x14002cb8b.16
mov r8d, 0x15
lea rdx, str.Adobe_Desktop_Common
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
xor r9d, r9d
lea rdx, [rsp + 0x30]
xor ecx, ecx
lea r8d, [r9 + 0x2c]
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je case.0x14002cb8b.16
lea rax, [rsp + 0x30]
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rax + rdx*2], 0
jne 0x14002cf64
mov rax, qword [rdi + 0x18]
cmp rdx, rax
ja 0x14002cfc3
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x270], rsi
mov rsi, rdi
cmp rax, 8
jb 0x14002cf93
mov rsi, qword [rdi]
lea rbx, [rdx + rdx]
mov qword [rdi + 0x10], rdx
mov r8, rbx
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.14007e1c0
xor eax, eax
mov word [rbx + rsi], ax
mov rsi, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x260]
jmp 0x14002cfd0
lea r9, [rsp + 0x30]
mov rcx, rdi
call fcn.140006cd0
mov r8d, 0x1b
lea rdx, str.AdobeAdobe_Desktop_Common
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.1400243f0
cmp dword [rsp + 0x20], 2
je case.0x14002cb8b.38
xor r9d, r9d
lea rdx, [rsp + 0x30]
xor ecx, ecx
lea r8d, [r9 + 0x2a]
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je case.0x14002cb8b.16
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.140006390
mov r8d, 0x1b
lea rdx, str.AdobeAdobe_Creative_Cloud
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002c6d0
test al, al
je case.0x14002cb8b.16
mov r8d, 0x15
lea rdx, str.Adobe_Desktop_Common
mov rcx, rdi
call fcn.1400065c0
mov al, 1
jmp 0x14002cd31
mov rcx, rdi
call fcn.14002ca70
jmp 0x14002cd31