Function at 0x513bf4
Capabilities:
Check if file exists
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
cmp byte [ebp + 0xc], 0
mov eax, ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
je 0x513c2a
push str.set_chkbox_playtime
lea ecx, [eax + 0x20]
call fcn.005cfc5e
mov ebx, dword [ebp + 8]
mov ecx, eax
push 1
push ebx
mov edx, dword [eax]
call dword [edx + 0x3b4]
mov eax, dword [ebp - 4]
jmp 0x513c2d
mov ebx, dword [ebp + 8]
test bl, bl
je 0x513dae
lea ecx, [ebp - 0x34]
call fcn.00417833
push ecx
mov ecx, esp
push str.sounddefault.snd
call fcn.004177e7
mov eax, dword [0x735a88]
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
call fcn.00418dea
add eax, 0x10
pop ecx
mov dword [esi], eax
lea ecx, [ebp - 0x34]
lea eax, [ebp + 0xc]
push eax
call fcn.0041934b
mov esi, dword [ebp + 0xc]
push esi
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
xor ebx, ebx
test eax, eax
jne 0x513ce4
lea ecx, [ebp - 0x1c]
call fcn.00417833
push ebx
push ebx
push str._sound_def__notice__silent__from:_Pcmaster_LunarCalendar
push ecx
mov ecx, esp
push str._rmup.exe
call fcn.004177e7
mov eax, dword [0x735a80]
push ecx
add eax, 0xfffffff0
mov edi, esp
push eax
call fcn.00418dea
add eax, 0x10
pop ecx
mov dword [edi], eax
lea ecx, [ebp - 0x1c]
lea eax, [ebp + 0xc]
push eax
call fcn.0041934b
push dword [eax]
push ebx
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx - 0x10]
call fcn.00419521
lea ecx, [ebp - 0x1c]
call fcn.00418dd0
mov ecx, dword [ebp - 0xc]
lea ecx, [ecx - 0x10]
call fcn.00419521
mov edi, dword [ebp - 4]
add edi, 0x20
push str.set_chkbox_playtimezheng
mov ecx, edi
call fcn.005cfc5e
test eax, eax
je 0x513d06
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x18c]
push str.set_chkbox_playtimeban
mov ecx, edi
call fcn.005cfc5e
test eax, eax
je 0x513d22
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x18c]
push str.set_soundplan_path
mov ecx, edi
call fcn.005cfc5e
test eax, eax
je 0x513d3a
add eax, 0xfffffff8
mov dword [ebp + 0xc], eax
jmp 0x513d3f
mov eax, ebx
mov dword [ebp + 0xc], ebx
test eax, eax
je 0x513d91
push 0x6b3cbc
mov ecx, 0x735bd4
call fcn.004334a5
test eax, eax
jne 0x513d5d
mov ecx, dword [ebp + 0xc]
push ebx
push ebx
jmp 0x513d76
push 0x6b3cd4
mov ecx, 0x735bd4
call fcn.004334a5
mov ecx, dword [ebp + 0xc]
test eax, eax
jne 0x513d83
push ebx
push 1
add ecx, 0x368
mov eax, dword [ecx]
call dword [eax + 8]
jmp 0x513d91
push dword [0x735bd4]
add ecx, 8
mov eax, dword [ecx]
call dword [eax + 0x3c]
lea ecx, [esi - 0x10]
call fcn.00419521
lea ecx, [ebp - 0x34]
call fcn.00418dd0
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00419521
jmp 0x513de9
lea edi, [eax + 0x20]
push str.set_chkbox_playtimezheng
mov ecx, edi
call fcn.005cfc5e
xor ebx, ebx
test eax, eax
je 0x513dce
mov edx, dword [eax]
mov ecx, eax
push ebx
call dword [edx + 0x18c]
push str.set_chkbox_playtimeban
mov ecx, edi
call fcn.005cfc5e
test eax, eax
je 0x513de9
mov edx, dword [eax]
mov ecx, eax
push ebx
call dword [edx + 0x18c]
push str.set_soundplan
mov ecx, edi
call fcn.005cfc5e
mov ebx, dword [ebp + 8]
test eax, eax
je 0x513e36
mov edx, dword [eax]
mov ecx, eax
push ebx
call dword [edx + 0x180]
push str.set_soundset
mov ecx, edi
call fcn.005cfc5e
mov ecx, eax
test ecx, ecx
je 0x513e36
test bl, bl
je 0x513e2c
mov edx, dword [ecx]
push 0x92
call dword [edx + 0xf8]
jmp 0x513e36
mov eax, dword [ecx]
push 0x74
call dword [eax + 0xf8]
mov ecx, str.false
mov byte [0x735a4b], bl
test bl, bl
mov eax, str.true
push ecx
cmove eax, ecx
mov ecx, esp
push eax
call fcn.004177e7
push ecx
mov ecx, esp
push str.OpenSound
call fcn.004177e7
push ecx
mov ecx, esp
push str.Timekeeping
call fcn.004177e7
mov ecx, 0x735bd8
call fcn.004fdb1b
cmp byte [0x735a4b], 0
mov ecx, 0x6870d0
push 1
push ecx
mov eax, 0x68c308
cmove eax, ecx
mov ecx, esp
push eax
call fcn.004177e7
push ecx
mov ecx, esp
push 0x6b4090
call fcn.004177e7
mov ecx, 0x736918
call fcn.004ef41e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8