Function at 0x401aa0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x800
push esi
push edi
xor eax, eax
mov byte [esp + 8], 0
mov ecx, 0xff
lea edi, [esp + 9]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
mov byte [esp + 0x408], 0
mov ecx, 0xff
lea edi, [esp + 0x409]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x400
lea eax, [esp + 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.Del_Matrox_Imaging_shortcut
push 0
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
push 0
push 0x405
push 0
call dword [sym.imp.USER32.dll_SendMessageA]
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMatrox_Imaging_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMatrox_Imaging_Products_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMatrox_Odyssey_Native_Library_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_2.0_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_2.1_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_2.2_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_3.01_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_3.1_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_3.23_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsGenesis_Native_Library_3.25_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMeteor_II_Digital_2.2_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMeteor_II_Digital_3.0_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMeteor_II_Digital_CL_2.2_
call fcn.00402d3d
push str.rmdir__s__q___C:Documents_and_SettingsAll_UsersStart_MenuProgramsMeteor_II_Digital_CL_3.0_
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x44], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0x40], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x440]
mov byte [esp + 0x4e], dl
add esp, 0x38
mov word [esp + 0x14], cx
mov edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401be0
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401bf0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401c10
mov ecx, 0x10
mov esi, str.ProfilesAll_UsersStart_MenuProgramsMatrox_Imaging_Products_
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 8]
push eax
movsb byte es:[edi], byte [esi]
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x10], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0xc], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x40c]
mov byte [esp + 0x1a], dl
add esp, 4
mov word [esp + 0x14], cx
mov edx, eax
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401c70
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401c80
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401ca0
lea eax, [esp + 8]
mov ecx, 0xe
mov esi, str.ProfilesAll_UsersStart_MenuProgramsMatrox_Imaging_
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x10], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0xc], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x40c]
mov byte [esp + 0x1a], dl
add esp, 4
mov word [esp + 0x14], cx
mov edx, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401d00
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401d10
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401d30
mov ecx, 0x11
mov esi, str.ProfilesAll_UsersStart_MenuProgramsMatrox_Odyssey_Native_Library_
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [esp + 8]
push eax
movsb byte es:[edi], byte [esi]
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x10], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0xc], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x40c]
mov byte [esp + 0x1a], dl
add esp, 4
mov word [esp + 0x14], cx
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401d90
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401da0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401dc0
lea eax, [esp + 8]
mov ecx, 0x11
mov esi, str.ProfilesAll_UsersStart_MenuProgramsGenesis_Native_Library_2.0_
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x10], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0xc], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x40c]
mov byte [esp + 0x1a], dl
add esp, 4
mov word [esp + 0x14], cx
mov edx, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401e20
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401e30
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401e50
lea eax, [esp + 8]
mov ecx, 0x11
mov esi, str.ProfilesAll_UsersStart_MenuProgramsGenesis_Native_Library_2.2_
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00402d3d
mov edx, dword [0x4089c8]
mov ecx, dword [str.rmdir__s__q___]
mov eax, dword [0x4089cc]
mov dword [esp + 0x10], edx
mov dl, byte [0x4089d2]
mov dword [esp + 0xc], ecx
mov cx, word [0x4089d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x40c]
mov byte [esp + 0x1a], dl
add esp, 4
mov word [esp + 0x14], cx
mov edx, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x401eb0
lea edi, [esp + 8]
sub eax, edx
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x401ec0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 8]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x401ee0
lea eax, [esp + 8]
mov ecx, 0x11
mov esi, str.ProfilesAll_UsersStart_MenuProgramsGenesis_Native_Library_3.1_
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00402d3d
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret