Function at 0x425265
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1468
call fcn.0044c310
push ebx
push esi
push edi
lea eax, [ebp - 0xc48]
push eax
call fcn.004240dc
xor ecx, ecx
cmp dword [str.Crescendo], ecx
mov dword [ebp - 8], ecx
mov esi, 0x104
mov ebx, SysReAllocString
je 0x425597
xor edi, edi
mov dword [ebp - 4], 0x4859a0
cmp byte [edi + 0x4859a8], 0
jne 0x42557b
mov eax, dword [ebp - 4]
push dword [eax]
call fcn.00424109
test al, al
jne 0x42557b
mov edi, dword [edi + 0x4859a4]
push edi
mov dword [ebp - 0xc], edi
push str.SoftwareClasses._s
lea edi, [ebp - 0x428]
call fcn.00417ed8
pop ecx
pop ecx
mov edi, 0x459720
push edi
push 0
lea eax, [ebp - 0x428]
push eax
push ebx
lea eax, [ebp - 0x220]
call fcn.00401071
cmp word [ebp - 0x220], 0
jne 0x4253fe
push edi
push 0
lea eax, [ebp - 0x428]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x220]
call fcn.00401071
cmp word [ebp - 0x220], 0
jne 0x4253fe
push dword [ebp - 0xc]
lea edi, [ebp - 0x1468]
push str.softwaremicrosoftwindowscurrentversionexplorer_fileexts._suserchoice
call fcn.00417ed8
pop ecx
pop ecx
push 0x459720
push str.Progid
mov eax, edi
push eax
push ebx
lea eax, [ebp - 0x838]
call fcn.00401071
cmp word [ebp - 0x838], 0
je 0x4253cd
mov eax, edi
push str.Applications_
push eax
call fcn.0043f155
test eax, eax
pop ecx
pop ecx
jne 0x42557b
lea eax, [ebp - 0x838]
push eax
push str.SoftwareClasses_s
lea edi, [ebp - 0x1260]
call fcn.00417ed8
pop ecx
pop ecx
mov eax, edi
push eax
push ebx
call fcn.0040b935
test al, al
jne 0x4253bb
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0040b935
test al, al
je 0x42557b
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x838]
call fcn.00401016
cmp word [ebp - 0x220], 0
jne 0x4253fe
push dword [ebp - 0xc]
lea edi, [ebp - 0x220]
push str._sfile
call fcn.00417ed8
pop ecx
pop ecx
mov eax, edi
push eax
push 0
lea eax, [ebp - 0x428]
push eax
push ebx
call fcn.0040b88a
lea eax, [ebp - 0x220]
push eax
push str.SoftwareClasses_s
lea edi, [ebp - 0x428]
call fcn.00417ed8
pop ecx
pop ecx
mov edi, 0x459720
push edi
push 0
lea eax, [ebp - 0x428]
push eax
push ebx
lea eax, [ebp - 0xa40]
call fcn.00401071
cmp word [ebp - 0xa40], 0
jne 0x425474
push edi
push 0
lea eax, [ebp - 0x428]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0xa40]
call fcn.00401071
cmp word [ebp - 0xa40], 0
jne 0x425474
push str.Unhandled_Extension_Handler_Finder
push 0
lea eax, [ebp - 0x428]
push eax
push ebx
call fcn.0040b88a
lea eax, [ebp - 0x428]
push eax
push str._s_shell
lea edi, [ebp - 0x630]
call fcn.00417ed8
pop ecx
pop ecx
push 0x459720
push 0
mov eax, edi
push eax
push ebx
lea eax, [ebp - 0xa40]
call fcn.00401071
cmp word [ebp - 0xa40], 0
jne 0x42557b
push 0x459720
push 0
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0xa40]
call fcn.00401071
cmp word [ebp - 0xa40], 0
jne 0x42557b
lea eax, [ebp - 0x428]
push eax
push str._s_shellopen
lea edi, [ebp - 0xe50]
call fcn.00417ed8
pop ecx
pop ecx
mov eax, edi
push eax
push ebx
call fcn.0040b935
test al, al
jne 0x42557b
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0040b935
test al, al
jne 0x42557b
mov eax, dword [ebp - 4]
push dword [eax]
lea eax, [ebp - 0xc48]
push eax
push str.__s___extfind__s____L_
lea edi, [ebp - 0x1058]
call fcn.00417ed8
lea eax, [ebp - 0x428]
push eax
push str._s_shellopencommand
lea edi, [ebp - 0x630]
call fcn.00417ed8
add esp, 0x14
lea eax, [ebp - 0x1058]
push eax
push 0
mov eax, edi
push eax
push ebx
call fcn.0040b88a
lea eax, [ebp - 0x428]
push eax
push str._sDefaultIcon
call fcn.00417ed8
pop ecx
pop ecx
push str._SystemRoot__system32_shell32.dll_19
push 0
mov eax, edi
push eax
push ebx
call fcn.0040b88a
inc dword [ebp - 8]
mov edi, dword [ebp - 8]
imul edi, edi, 9
lea eax, [edi + 0x4859a0]
xor ecx, ecx
cmp dword [eax], ecx
mov dword [ebp - 4], eax
jne 0x4252a5
cmp dword [str.WavePad], ecx
mov dword [ebp - 0x14], ecx
je 0x425909
mov dword [ebp - 0xc], str.WavePad
mov dword [ebp - 0x10], ecx
mov dword [ebp - 8], 0x485a54
mov eax, dword [ebp - 0xc]
push dword [eax]
call fcn.00424109
test al, al
jne 0x4258e7
mov eax, dword [ebp - 8]
cmp dword [eax], 0
je 0x4258e7
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx + 0x485a54]
mov dword [ebp - 0x18], ecx
mov eax, dword [eax]
push eax
push str.SoftwareClasses._s
lea edi, [ebp - 0x220]
mov dword [ebp - 4], eax
call fcn.00417ed8
pop ecx
pop ecx
mov edi, 0x459720
push edi
push 0
lea eax, [ebp - 0x220]
push eax
push ebx
lea eax, [ebp - 0x428]
call fcn.00401071
cmp word [ebp - 0x428], 0
jne 0x42571b
push edi
push 0
lea eax, [ebp - 0x220]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x428]
call fcn.00401071
cmp word [ebp - 0x428], 0
jne 0x42571b
push dword [ebp - 4]
lea edi, [ebp - 0x1058]
push str.softwaremicrosoftwindowscurrentversionexplorer_fileexts._suserchoice
call fcn.00417ed8
pop ecx
pop ecx
push 0x459720
push str.Progid
mov eax, edi
push eax
push ebx
lea eax, [ebp - 0x630]
call fcn.00401071
cmp word [ebp - 0x630], 0
je 0x4256ea
lea eax, [ebp - 0x630]
push str.Applications_
push eax
call fcn.0043f155
test eax, eax
pop ecx
pop ecx
jne 0x4258d5
lea eax, [ebp - 0x630]
push eax
push str.SoftwareClasses_s
lea edi, [ebp - 0xe50]
call fcn.00417ed8
pop ecx
pop ecx
mov eax, edi
push eax
push ebx
call fcn.0040b935
test al, al
jne 0x4256d8
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0040b935
test al, al
je 0x4258d5
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x630]
call fcn.00401016
cmp word [ebp - 0x428], 0
jne 0x42571b
push dword [ebp - 4]
lea edi, [ebp - 0x428]
push str._sfile
call fcn.00417ed8
pop ecx
pop ecx
mov eax, edi
push eax
push 0
lea eax, [ebp - 0x220]
push eax
push ebx
call fcn.0040b88a
mov eax, dword [ebp - 0xc]
push dword [eax]
lea eax, [ebp - 0xc48]
push eax
push str.__s___extfind__s____L_
lea edi, [ebp - 0x1260]
call fcn.00417ed8
mov eax, dword [ebp - 0x10]
push dword [eax + 0x485a50]
lea eax, [ebp - 0x428]
push eax
push str.SoftwareClasses_sShell_scommand
lea edi, [ebp - 0x220]
call fcn.00417ed8
add esp, 0x18
lea eax, [ebp - 0x1260]
push eax
push 0
mov eax, edi
push eax
push ebx
call fcn.0040b88a
mov eax, dword [ebp - 0x10]
push dword [eax + 0x485a50]
lea eax, [ebp - 0x428]
push eax
push str.SoftwareClasses_sShell_s
call fcn.00417ed8
mov eax, dword [ebp - 0x10]
add esp, 0xc
push dword [eax + 0x485a48]
mov eax, edi
push 0
push eax
push ebx
call fcn.0040b88a
lea eax, [ebp - 0x428]
push eax
push str.SoftwareClasses_sShell
call fcn.00417ed8
pop ecx
pop ecx
mov edi, 0x459720
push edi
push 0
lea eax, [ebp - 0x220]
push eax
push ebx
lea eax, [ebp - 0x838]
call fcn.00401071
cmp word [ebp - 0x838], 0
jne 0x425839
push edi
push 0
lea eax, [ebp - 0x220]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x838]
call fcn.00401071
cmp word [ebp - 0x838], 0
jne 0x425839
push 0x4629b0
push dword [ebp - 4]
call fcn.00453969
test eax, eax
pop ecx
pop ecx
je 0x425832
push str.docx
push dword [ebp - 4]
call fcn.00453969
test eax, eax
pop ecx
pop ecx
je 0x425832
push 0x4629e0
push dword [ebp - 4]
call fcn.00453969
test eax, eax
pop ecx
pop ecx
jne 0x425839
push str.open
jmp 0x42589b
lea eax, [ebp - 0x428]
push eax
push str.SoftwareClasses_sDefaultIcon
lea edi, [ebp - 0x220]
call fcn.00417ed8
pop ecx
pop ecx
push 0x459720
push 0
mov eax, edi
push eax
push ebx
lea eax, [ebp - 0x630]
call fcn.00401071
cmp word [ebp - 0x630], 0
jne 0x4258aa
push 0x459720
push 0
mov eax, edi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x630]
call fcn.00401071
cmp word [ebp - 0x630], 0
jne 0x4258aa
push str._SystemRoot__system32_shell32.dll_19
push 0
lea eax, [ebp - 0x220]
push eax
push ebx
call fcn.0040b88a
mov eax, dword [ebp - 0x10]
push dword [eax + 0x485a48]
lea eax, [ebp - 0x428]
push eax
push str.SoftwareClasses_sShell_s
lea edi, [ebp - 0x220]
call fcn.00417ed8
add esp, 0xc
push ebx
mov eax, edi
call fcn.004181ac
mov eax, dword [ebp - 0x18]
add eax, 4
cmp dword [eax], 0
mov dword [ebp - 0x18], eax
jne 0x4255e1
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add dword [ebp - 8], 0x5c
imul eax, eax, 0x5c
mov dword [ebp - 0x10], eax
lea eax, [eax + 0x485a4c]
cmp dword [eax], 0
mov dword [ebp - 0xc], eax
jne 0x4255b7
mov edi, str.Audio_Related_Programs
push edi
call fcn.0042491a
mov esi, 0x46d878
push esi
call fcn.0042491a
call fcn.004011a9
test al, al
je 0x425956
push esi
call fcn.00424ac6
call fcn.004011d6
test al, al
je 0x425948
push str.NCH_Suite
call fcn.00424ac6
push 0x45a760
jmp 0x42596d
lea eax, [ebp - 0xc48]
push eax
call fcn.004249df
jmp 0x42597a
push 0x485e38
push edi
lea eax, [ebp - 0xc48]
push eax
call fcn.00424b64
push 0x485de0
push esi
lea eax, [ebp - 0xc48]
push eax
call fcn.00424b64
xor esi, esi
lea eax, [ebp - 0x838]
push eax
push esi
push esi
push 6
push esi
mov word [ebp - 0x838], si
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
cmp word [ebp - 0x838], si
je 0x4259cc
push str..lnk
push str.NCH_Software_Download_Site
lea eax, [ebp - 0x838]
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.00413e38
push str.https:__www.nch.com.au_index.html
lea eax, [ebp - 0x1058]
push eax
call fcn.00416ec2
push esi
push esi
push 0x2000
push 0x8000000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
pop edi
pop esi
pop ebx
leave
ret