Function at 0x4073b0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x808
mov eax, dword [0x55154c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 0x10]
push edi
mov edi, dword [ebp + 8]
test edi, edi
je 0x407967
push 0x515cdc
push esi
call fcn.00401820
add esp, 8
lea eax, [ebp - 0x804]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
jne 0x407401
push 0x515664
jmp 0x40797e
lea eax, [ebp - 0x804]
push eax
call fcn.0045bdf0
add esp, 4
test eax, eax
je 0x40741e
push 0x517b00
jmp 0x40797e
lea ecx, [edi + 0x182d8]
mov edx, ecx
push ebx
lea ebx, [edx + 2]
nop word [eax + eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x407430
sub edx, ebx
sar edx, 1
pop ebx
jne 0x40744c
push 0x517b08
jmp 0x40797e
mov eax, dword [ebp + 0xc]
cmp eax, 1
jne 0x407475
push ecx
push str._sHelpindex.html
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x40749b
push ecx
push str._sBanners_banner.avi
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x4074c1
push ecx
push str._sBanners_banner.bmp
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 4
jne 0x4074f2
push str.trace_on.txt
lea eax, [edi + 0x17ad8]
push eax
push str._sTmp_s
push esi
call fcn.00401820
add esp, 0x10
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x13
jne 0x407523
push str.recording.raw
lea eax, [edi + 0x17ad8]
push eax
push str._sTmp_s
push esi
call fcn.00401820
add esp, 0x10
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 5
jne 0x407559
push str.dfx_skin.txt
push str.Skins
lea eax, [edi + 0x18ad8]
push eax
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 6
jne 0x407590
push str.dfx_skin.txt
push dword [edi + 0x1b2dc]
lea eax, [edi + 0x17ad8]
push eax
push str._sVersion_d_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 8
jne 0x4075c0
push str.splash_skin_definition.txt
push str.Splash
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0xe
jne 0x4075eb
push str.DFX_Manual.chm
push ecx
push str._sHelp_s
push esi
call fcn.00401820
add esp, 0x10
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x11
jne 0x407601
push str.archive.cab
lea eax, [edi + 0x1a2d8]
push eax
jmp 0x407959
cmp eax, 0x12
jne 0x407631
push str.CABARC.exe
push str.Apps
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x14
jne 0x407661
push str.powertech_sm.exe
push str.Apps
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x15
jne 0x407691
push str.DfxSharedApp32.exe
push str.Apps
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x16
jne 0x4076c1
push str.DfxSharedApp64.exe
push str.Apps
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x17
jne 0x4076f1
push str.dfxItunesSong.exe
push str.Apps
push ecx
push str._s_s_s
push esi
call fcn.00401820
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 7
jne 0x40772c
push str.vocals_skin_definition.txt
push str.Skin
push str.Vocals
lea eax, [edi + 0x18ad8]
push eax
push str._s_s_s_s
push esi
call fcn.00401820
add esp, 0x18
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 9
jne 0x40776e
push str.skin_definition.txt
lea eax, [edi + 0x14ee0]
push eax
push str.Plugin
push str.Skins
lea eax, [edi + 0x18ad8]
push eax
push str._s_s_s_s_s
push esi
call fcn.00401820
add esp, 0x1c
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0xa
jne 0x407785
push 0x517e5c
push dword [edi + 0x1b2dc]
push str.cached_preset
jmp 0x4077b1
cmp eax, 0xb
jne 0x40779c
push 0x517eac
push dword [edi + 0x1b2dc]
push str.cached_section
jmp 0x4077b1
cmp eax, 0xc
jne 0x4077dd
push 0x517eac
push dword [edi + 0x1b2dc]
push str.cached_sounds
push str.Cache
lea eax, [edi + 0x17ad8]
push eax
push str._s_s_s__d._s
push esi
call fcn.00401820
add esp, 0x1c
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0xd
jne 0x407808
push str.MP3_Remix_Manual.chm
push ecx
push str._sHelp_s
push esi
call fcn.00401820
add esp, 0x10
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0xf
jne 0x40783d
push 0x517eac
push str.tmp_section
push 0x517f34
push ecx
push str._s_s_s._s
push esi
call fcn.00401820
add esp, 0x18
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x10
jne 0x407853
push str.p5M83ps4.hwv
lea eax, [ebp - 0x804]
push eax
jmp 0x407959
cmp eax, 0x64
jne 0x40787f
lea eax, [edi + 0x17ad8]
push eax
push str._sTmp
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x6c
jne 0x4078b1
push dword [edi + 0x1b2dc]
lea eax, [edi + 0x17ad8]
push eax
push str._sVersion_d
push esi
call fcn.00401820
add esp, 0x10
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x65
jne 0x4078d7
push ecx
push str._sPresetsFactsoft
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x66
jne 0x407903
lea eax, [edi + 0x17ad8]
push eax
push str._sPresetsUser
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x68
jne 0x40792f
lea eax, [ebp - 0x804]
push eax
push 0x51568c
push esi
call fcn.00401820
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
cmp eax, 0x69
jne 0x407942
push str.SongPreset
lea eax, [edi + 0x17ad8]
push eax
jmp 0x407959
cmp eax, 0x6a
jne 0x40794e
push str.Apps
jmp 0x407958
cmp eax, 0x6b
jne 0x407979
push str.EqSkin
push ecx
push 0x517cd0
push esi
call fcn.00401820
add esp, 0x10
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e19a5
mov esp, ebp
pop ebp
ret
push 0x54af20
push str.dfxgdfxgPathsCalc.cpp
call fcn.004688c0
mov ecx, dword [ebp - 4]
add esp, 8
xor ecx, ebp
pop edi
pop esi
call fcn.004e19a5
mov esp, ebp
pop ebp
ret