Function at 0x55d094
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1698
call fcn.0060f180
push ebx
push esi
push edi
lea eax, [ebp - 0xc70]
push eax
call fcn.0055bd85
xor edi, edi
cmp dword [str.Crescendo], edi
mov dword [ebp - 8], edi
mov ebx, 0x104
mov esi, SysReAllocString
je 0x55d3e1
mov dword [ebp - 4], str.Crescendo
cmp byte [edi + 0x6a57f8], 0
jne 0x55d3c6
mov eax, dword [ebp - 4]
push dword [eax]
call fcn.0055bdb2
test al, al
jne 0x55d3c6
mov edi, dword [edi + 0x6a57f4]
push edi
mov dword [ebp - 0xc], edi
push str.SoftwareClasses._s
mov eax, ebx
lea edi, [ebp - 0x248]
call fcn.005383cd
pop ecx
pop ecx
mov edi, 0x631a7c
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push esi
lea eax, [ebp - 0x450]
call fcn.00401162
cmp word [ebp - 0x450], 0
jne 0x55d233
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x450]
call fcn.00401162
cmp word [ebp - 0x450], 0
jne 0x55d233
push dword [ebp - 0xc]
mov eax, ebx
push str.softwaremicrosoftwindowscurrentversionexplorer_fileexts._suserchoice
lea edi, [ebp - 0x1490]
call fcn.005383cd
pop ecx
pop ecx
push 0x631a7c
push str.Progid
mov eax, edi
push eax
push esi
lea eax, [ebp - 0x860]
call fcn.00401162
cmp word [ebp - 0x860], 0
je 0x55d200
mov eax, edi
push str.Applications_
push eax
call fcn.005f9fba
test eax, eax
pop ecx
pop ecx
jne 0x55d3c6
lea eax, [ebp - 0x860]
push eax
push str.SoftwareClasses_s
mov eax, ebx
lea edi, [ebp - 0x1698]
call fcn.005383cd
pop ecx
pop ecx
mov eax, edi
push eax
push esi
call fcn.004cb7b5
test al, al
jne 0x55d1ee
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004cb7b5
test al, al
je 0x55d3c6
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x860]
call fcn.00401050
cmp word [ebp - 0x450], 0
jne 0x55d233
push dword [ebp - 0xc]
mov eax, ebx
push str._sfile
lea edi, [ebp - 0x450]
call fcn.005383cd
pop ecx
pop ecx
mov eax, edi
push eax
push 0
lea eax, [ebp - 0x248]
push eax
push esi
call fcn.004011af
lea eax, [ebp - 0x450]
push eax
push str.SoftwareClasses_s
mov eax, ebx
lea edi, [ebp - 0x248]
call fcn.005383cd
pop ecx
pop ecx
mov edi, 0x631a7c
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push esi
lea eax, [ebp - 0xa68]
call fcn.00401162
cmp word [ebp - 0xa68], 0
jne 0x55d2ab
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0xa68]
call fcn.00401162
cmp word [ebp - 0xa68], 0
jne 0x55d2ab
push str.Unhandled_Extension_Handler_Finder
push 0
lea eax, [ebp - 0x248]
push eax
push esi
call fcn.004011af
lea eax, [ebp - 0x248]
push eax
push str._s_shell
mov eax, ebx
lea edi, [ebp - 0x658]
call fcn.005383cd
pop ecx
pop ecx
push 0x631a7c
push 0
mov eax, edi
push eax
push esi
lea eax, [ebp - 0xa68]
call fcn.00401162
cmp word [ebp - 0xa68], 0
jne 0x55d3c6
push 0x631a7c
push 0
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0xa68]
call fcn.00401162
cmp word [ebp - 0xa68], 0
jne 0x55d3c6
lea eax, [ebp - 0x248]
push eax
push str._s_shellopen
mov eax, ebx
lea edi, [ebp - 0xe78]
call fcn.005383cd
pop ecx
pop ecx
mov eax, edi
push eax
push esi
call fcn.004cb7b5
test al, al
jne 0x55d3c6
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004cb7b5
test al, al
jne 0x55d3c6
mov eax, dword [ebp - 4]
push dword [eax]
lea eax, [ebp - 0xc70]
push eax
push str.__s___extfind__s____L_
mov eax, ebx
lea edi, [ebp - 0x1288]
call fcn.005383cd
lea eax, [ebp - 0x248]
push eax
push str._s_shellopencommand
mov eax, ebx
lea edi, [ebp - 0x658]
call fcn.005383cd
add esp, 0x14
lea eax, [ebp - 0x1288]
push eax
push 0
mov eax, edi
push eax
push esi
call fcn.004011af
lea eax, [ebp - 0x248]
push eax
push str._sDefaultIcon
mov eax, ebx
lea edi, [ebp - 0x1080]
call fcn.005383cd
pop ecx
pop ecx
push str._SystemRoot__system32_shell32.dll_19
push 0
mov eax, edi
push eax
push esi
call fcn.004011af
inc dword [ebp - 8]
mov edi, dword [ebp - 8]
imul edi, edi, 9
lea eax, [edi + 0x6a57f0]
cmp dword [eax], 0
mov dword [ebp - 4], eax
jne 0x55d0d2
call fcn.00545427
neg al
sbb eax, eax
neg eax
xor edi, edi
add eax, esi
cmp dword [str.WavePad], edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], edi
je 0x55d75e
mov dword [ebp - 0xc], str.WavePad
mov dword [ebp - 8], edi
mov dword [ebp - 0x14], 0x6a588c
mov eax, dword [ebp - 0xc]
push dword [eax]
call fcn.0055bdb2
test al, al
jne 0x55d73d
mov eax, dword [ebp - 0x14]
cmp dword [eax], edi
je 0x55d73d
mov ecx, dword [ebp - 8]
lea ecx, [ecx + 0x6a588c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [eax]
push eax
mov dword [ebp - 4], eax
push str.SoftwareClasses._s
mov eax, ebx
lea edi, [ebp - 0x248]
call fcn.005383cd
pop ecx
pop ecx
mov edi, 0x631a7c
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push esi
lea eax, [ebp - 0x450]
call fcn.00401162
cmp word [ebp - 0x450], 0
jne 0x55d57e
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x450]
call fcn.00401162
cmp word [ebp - 0x450], 0
jne 0x55d57e
push dword [ebp - 4]
mov eax, ebx
push str.softwaremicrosoftwindowscurrentversionexplorer_fileexts._suserchoice
lea edi, [ebp - 0x1080]
call fcn.005383cd
pop ecx
pop ecx
push 0x631a7c
push str.Progid
mov eax, edi
push eax
push esi
lea eax, [ebp - 0x658]
call fcn.00401162
cmp word [ebp - 0x658], 0
je 0x55d54b
lea eax, [ebp - 0x658]
push str.Applications_
push eax
call fcn.005f9fba
test eax, eax
pop ecx
pop ecx
jne 0x55d729
lea eax, [ebp - 0x658]
push eax
push str.SoftwareClasses_s
mov eax, ebx
lea edi, [ebp - 0xe78]
call fcn.005383cd
pop ecx
pop ecx
mov eax, edi
push eax
push esi
call fcn.004cb7b5
test al, al
jne 0x55d539
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004cb7b5
test al, al
je 0x55d729
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x658]
call fcn.00401050
cmp word [ebp - 0x450], 0
jne 0x55d57e
push dword [ebp - 4]
mov eax, ebx
push str._sfile
lea edi, [ebp - 0x450]
call fcn.005383cd
pop ecx
pop ecx
mov eax, edi
push eax
push 0
lea eax, [ebp - 0x248]
push eax
push esi
call fcn.004011af
mov eax, dword [ebp - 0xc]
push dword [eax]
lea eax, [ebp - 0xc70]
push eax
push str.__s___extfind__s____L_
mov eax, ebx
lea edi, [ebp - 0x1288]
call fcn.005383cd
mov eax, dword [ebp - 8]
push dword [eax + 0x6a5888]
mov eax, ebx
push dword [ebp - 4]
lea edi, [ebp - 0x248]
push str.SoftwareClassesSystemFileAssociations._sShell_scommand
call fcn.005383cd
add esp, 0x18
lea eax, [ebp - 0x1288]
push eax
push 0
mov eax, edi
push eax
push dword [ebp - 0x18]
call fcn.004011af
mov eax, dword [ebp - 8]
push dword [eax + 0x6a5888]
mov eax, ebx
push dword [ebp - 4]
push str.SoftwareClassesSystemFileAssociations._sShell_s
call fcn.005383cd
mov eax, dword [ebp - 8]
add esp, 0xc
push dword [eax + 0x6a5880]
mov eax, edi
push 0
push eax
push dword [ebp - 0x18]
call fcn.004011af
lea eax, [ebp - 0x450]
push eax
push str.SoftwareClasses_sShell
mov eax, ebx
call fcn.005383cd
pop ecx
pop ecx
mov edi, 0x631a7c
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push esi
lea eax, [ebp - 0x860]
call fcn.00401162
cmp word [ebp - 0x860], 0
jne 0x55d6b6
push edi
push 0
lea eax, [ebp - 0x248]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x860]
call fcn.00401162
xor edi, edi
cmp word [ebp - 0x860], di
jne 0x55d6b6
mov eax, 0x63c7f8
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], str.docx
mov dword [ebp - 0x38], 0x676180
mov dword [ebp - 0x34], 0x689e88
mov dword [ebp - 0x30], str.xlsx
mov dword [ebp - 0x2c], 0x64f5b8
mov dword [ebp - 0x28], 0x689e9c
mov dword [ebp - 0x24], str.pptx
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 4]
call fcn.0040106b
test eax, eax
je 0x55d81b
mov eax, dword [ebp + edi*4 - 0x3c]
inc edi
test eax, eax
jne 0x55d69d
lea eax, [ebp - 0x450]
push eax
push str.SoftwareClasses_sDefaultIcon
mov eax, ebx
lea edi, [ebp - 0x248]
call fcn.005383cd
pop ecx
pop ecx
push 0x631a7c
push 0
mov eax, edi
push eax
push esi
lea eax, [ebp - 0x658]
call fcn.00401162
cmp word [ebp - 0x658], 0
jne 0x55d729
push 0x631a7c
push 0
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x658]
call fcn.00401162
cmp word [ebp - 0x658], 0
jne 0x55d729
push str._SystemRoot__system32_shell32.dll_19
push 0
lea eax, [ebp - 0x248]
push eax
push esi
call fcn.004011af
mov eax, dword [ebp - 0x1c]
add eax, 4
cmp dword [eax], 0
mov dword [ebp - 0x1c], eax
jne 0x55d43c
xor edi, edi
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
add dword [ebp - 0x14], 0x5c
imul eax, eax, 0x5c
mov dword [ebp - 8], eax
lea eax, [eax + 0x6a5884]
cmp dword [eax], edi
mov dword [ebp - 0xc], eax
jne 0x55d413
call fcn.004012fd
test al, al
je 0x55d788
lea eax, [ebp - 0xc70]
push eax
call fcn.0055c6c8
call fcn.0040132a
test al, al
je 0x55d788
lea eax, [ebp - 0xc70]
push eax
call fcn.0055c849
lea eax, [ebp - 0xc70]
push eax
call fcn.0055c90b
lea eax, [ebp - 0x860]
push eax
push edi
push edi
push 6
push edi
mov word [ebp - 0x860], di
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
cmp word [ebp - 0x860], di
je 0x55d7e3
push str..lnk
push str.NCH_Software_Download_Site
lea eax, [ebp - 0x860]
push eax
lea eax, [ebp - 0x1080]
call fcn.0053768f
push str.https:__www.nchsoftware.com_index.html
lea eax, [ebp - 0x1080]
push eax
call fcn.00545a9b
mov esi, dword [sym.imp.SHELL32.dll_SHChangeNotify]
push edi
push edi
push 0x2000
mov ebx, 0x8000000
push ebx
call esi
call fcn.004cbba7
test al, al
je 0x55d816
push edi
push edi
push edi
push ebx
call esi
call fcn.005828eb
call fcn.00582b1b
call fcn.005829f7
pop edi
pop esi
pop ebx
leave
ret
push 0x665b90
jmp 0x55d71a