Function at 0x401260
Capabilities:
Check if file exists
Create process on windows
Get common file path

Disassembly:
sub esp, 0x300
lea eax, [esp]
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
jne 0x401289
mov cl, byte [eax + str.c:windows_system32]
mov byte [esp + eax], cl
inc eax
test cl, cl
jne 0x40127a
push ebx
push esi
lea ecx, [esp + 8]
push edi
push ecx
lea edx, [esp + 0x110]
push str._smpg4c32.dll
push edx
call fcn.00401561
push str.mpg4c32.dll
push str.vidc.mpg4
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call section..text
mov edi, dword [sym.imp.USER32.dll_MessageBoxA]
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
add esp, 0x18
test eax, eax
je 0x401312
push str.mpg4c32.dll
push str.vidc.mp42
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call section..text
add esp, 0xc
test eax, eax
je 0x401312
push str.mpg4c32.dll
push str.vidc.mp43
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call section..text
add esp, 0xc
test eax, eax
je 0x401312
lea eax, [esp + 0x10c]
push eax
call ebx
test eax, eax
jne 0x401397
push str.MPG4C32.DLL
call fcn.00401130
push str.mpg4c32.dll
push str.vidc.mpg4
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call fcn.004010d0
add esp, 0x10
test eax, eax
jne 0x401345
push eax
push str.ERROR
push str.Registry_MPEG4_codec_v1_failed_
push eax
call edi
push str.mpg4c32.dll
push str.vidc.mp42
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call fcn.004010d0
add esp, 0xc
test eax, eax
jne 0x40136e
push eax
push str.ERROR
push str.Registry_MPEG4_codec_v2_failed_
push eax
call edi
push str.mpg4c32.dll
push str.vidc.mp43
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call fcn.004010d0
add esp, 0xc
test eax, eax
jne 0x401397
push eax
push str.ERROR
push str.Registry_MPEG4_codec_v3_failed_
push eax
call edi
lea ecx, [esp + 0xc]
lea edx, [esp + 0x10c]
push ecx
push str._sxvidvfw.dll
push edx
call fcn.00401561
push 0x407168
push str.vidc.XVID
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call section..text
add esp, 0x18
test eax, eax
je 0x4013db
lea eax, [esp + 0x10c]
push eax
call ebx
test eax, eax
jne 0x401499
push 0x407168
push str.vidc.XVID
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call fcn.004010d0
add esp, 0xc
test eax, eax
jne 0x401411
push eax
push str.ERROR
push str.Registry_XVID_codec_failed_
push eax
call edi
pop edi
pop esi
or eax, 0xffffffff
pop ebx
add esp, 0x300
ret
push str.XviDcore.dll
call fcn.00401130
push str.XviDvfw.dll
call fcn.00401130
push str.XviD.ax
call fcn.00401130
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
add esp, 0xc
test eax, eax
je 0x401462
lea ecx, [esp + 0xc]
lea edx, [esp + 0x20c]
push ecx
push str.regsvr32.exe__s__sxvid.ax
push edx
call fcn.00401561
add esp, 0xc
lea eax, [esp + 0x20c]
push 0
push eax
call esi
push str.XviD.reg
call fcn.00401130
add esp, 4
test eax, eax
je 0x401499
lea ecx, [esp + 0xc]
lea edx, [esp + 0x20c]
push ecx
push str.regedit.exe__s__sxvid.reg
push edx
call fcn.00401561
add esp, 0xc
lea eax, [esp + 0x20c]
push 0
push eax
call esi
lea ecx, [esp + 0xc]
lea edx, [esp + 0x10c]
push ecx
push str._swmv9vcm.dll
push edx
call fcn.00401561
push str.wmv9vcm.dll
push str.vidc.WMV3
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call section..text
add esp, 0x18
test eax, eax
je 0x4014d9
lea eax, [esp + 0x10c]
push eax
call ebx
test eax, eax
jne 0x40151c
push 0x4070a8
push str.vidc.WMV3
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionDrivers32
call fcn.004010d0
add esp, 0xc
test eax, eax
jne 0x40150f
push eax
push str.ERROR
push str.Registry_Microsoft_WMV9_VCM_codec_failed_
push eax
call edi
pop edi
pop esi
or eax, 0xffffffff
pop ebx
add esp, 0x300
ret
push str.wmv9vcm.dll
call fcn.00401130
add esp, 4
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x300
ret