Function at 0x487750
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x268c
call fcn.004a3570
mov eax, dword [0x4f0008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x2688], ecx
mov dword [ebp - 0x2680], str.game
mov dword [ebp - 0x267c], 0xfffffffd
mov dword [ebp - 0x2678], 0x4c0444
mov dword [ebp - 0x2674], str.60FPS
mov dword [ebp - 0x2670], 0xfffffffe
mov dword [ebp - 0x266c], 0x4c0444
mov dword [ebp - 0x2668], str.HighPerf
mov dword [ebp - 0x2664], 0
mov dword [ebp - 0x2660], 0
mov dword [ebp - 0x265c], 0x4d7d48
mov dword [ebp - 0x2658], 0xfffffffe
mov dword [ebp - 0x2654], 0x4c0444
mov dword [ebp - 0x2650], str.WindowMode
mov dword [ebp - 0x264c], 0
mov dword [ebp - 0x2648], 0
mov dword [ebp - 0x2644], 0x4d7da8
mov dword [ebp - 0x2640], 0xfffffffe
mov dword [ebp - 0x263c], 0x4c0444
mov dword [ebp - 0x2638], str.HardwareAcceleration
mov dword [ebp - 0x2634], 0
mov dword [ebp - 0x2630], 0
mov dword [ebp - 0x262c], 0x4d7df8
mov dword [ebp - 0x2628], 0xfffffffe
mov dword [ebp - 0x2624], 0x4c0444
mov dword [ebp - 0x2620], str.HardwareFullScreen
mov dword [ebp - 0x261c], 0
mov dword [ebp - 0x2618], 0
mov dword [ebp - 0x2614], 0x4d7e48
mov dword [ebp - 0x2610], 0xfffffffe
mov dword [ebp - 0x260c], 0x4c0444
mov dword [ebp - 0x2608], str.GamePadDInput
mov dword [ebp - 0x2604], 0
mov dword [ebp - 0x2600], 0
mov dword [ebp - 0x25fc], 0x4d7eb0
mov dword [ebp - 0x25f8], 0xfffffffe
mov dword [ebp - 0x25f4], 0x4c0444
mov dword [ebp - 0x25f0], str.NonActiveMusicPlay
mov dword [ebp - 0x25ec], 0
mov dword [ebp - 0x25e8], 0
mov dword [ebp - 0x25e4], 0x4d7f08
mov dword [ebp - 0x25e0], 0xfffffffe
mov dword [ebp - 0x25dc], 0x4c0444
mov dword [ebp - 0x25d8], str.ResourceErrorNotify
mov dword [ebp - 0x25d4], 0
mov dword [ebp - 0x25d0], 0
mov dword [ebp - 0x25cc], 0x4d7f68
mov dword [ebp - 0x25c8], 0xfffffffe
mov dword [ebp - 0x25c4], 0x4c0444
mov dword [ebp - 0x25c0], str.ScriptErrorTerminate
mov dword [ebp - 0x25bc], 0
mov dword [ebp - 0x25b8], 0
mov dword [ebp - 0x25b4], 0x4d7fb8
mov dword [ebp - 0x25b0], 0xfffffffe
mov dword [ebp - 0x25ac], 0x4c0444
mov dword [ebp - 0x25a8], str.NonActiveAnimationPlay
mov dword [ebp - 0x25a4], 1
mov dword [ebp - 0x25a0], 0
mov dword [ebp - 0x259c], 0x4d8018
mov dword [ebp - 0x2598], 0xfffffffe
mov dword [ebp - 0x2594], 0x4c0444
mov dword [ebp - 0x2590], str.ConfirmGameExit
mov dword [ebp - 0x258c], 1
mov dword [ebp - 0x2588], 0
mov dword [ebp - 0x2584], 0x4d8080
mov dword [ebp - 0x2580], 0xfffffffe
mov dword [ebp - 0x257c], 0x4c0444
mov dword [ebp - 0x2578], str.MemoryErrorNotify
mov dword [ebp - 0x2574], 0
mov dword [ebp - 0x2570], 0
mov dword [ebp - 0x256c], 0x4c0444
mov dword [ebp - 0x2568], 0xfffffffc
mov dword [ebp - 0x2564], 0x4c0444
mov dword [ebp - 0x2560], str.keyboard
mov dword [ebp - 0x255c], 0xfffffffd
mov dword [ebp - 0x2558], 0x4c0444
mov dword [ebp - 0x2554], str.LEFT
mov dword [ebp - 0x2550], 0xffffffff
mov dword [ebp - 0x254c], str.left
mov dword [ebp - 0x2548], 0x4d18fc
mov dword [ebp - 0x2544], 0xffffffff
mov dword [ebp - 0x2540], 0x4d19e0
mov dword [ebp - 0x253c], str.RIGHT
mov dword [ebp - 0x2538], 0xffffffff
mov dword [ebp - 0x2534], str.right
mov dword [ebp - 0x2530], str.DOWN
mov dword [ebp - 0x252c], 0xffffffff
mov dword [ebp - 0x2528], str.down
mov dword [ebp - 0x2524], str.SELECT
mov dword [ebp - 0x2520], 0xffffffff
mov dword [ebp - 0x251c], str.z_enter
mov dword [ebp - 0x2518], str.CANCEL
mov dword [ebp - 0x2514], 0xffffffff
mov dword [ebp - 0x2510], str.x_ctrl
mov dword [ebp - 0x250c], str.OPTION
mov dword [ebp - 0x2508], 0xffffffff
mov dword [ebp - 0x2504], 0x4d1a70
mov dword [ebp - 0x2500], str.OPTION2
mov dword [ebp - 0x24fc], 0xffffffff
mov dword [ebp - 0x24f8], str.shift
mov dword [ebp - 0x24f4], str.L_SWITCH
mov dword [ebp - 0x24f0], 0xffffffff
mov dword [ebp - 0x24ec], 0x4d1a68
mov dword [ebp - 0x24e8], str.R_SWITCH
mov dword [ebp - 0x24e4], 0xffffffff
mov dword [ebp - 0x24e0], 0x4d1a6c
mov dword [ebp - 0x24dc], str.SYSTEM
mov dword [ebp - 0x24d8], 0xffffffff
mov dword [ebp - 0x24d4], str.x_ctrl
mov dword [ebp - 0x24d0], str.SKIP
mov dword [ebp - 0x24cc], 0xffffffff
mov dword [ebp - 0x24c8], str.space_rclick
mov dword [ebp - 0x24c4], 0x4d1a74
mov dword [ebp - 0x24c0], 0xffffffff
mov dword [ebp - 0x24bc], 0x4d1a30
mov dword [ebp - 0x24b8], str.RESET
mov dword [ebp - 0x24b4], 0xffffffff
mov dword [ebp - 0x24b0], 0x4d1a60
mov dword [ebp - 0x24ac], str.EXIT
mov dword [ebp - 0x24a8], 0xffffffff
mov dword [ebp - 0x24a4], 0x4d19b4
mov dword [ebp - 0x24a0], 0x4c0444
mov dword [ebp - 0x249c], 0xfffffffc
mov dword [ebp - 0x2498], 0x4c0444
mov dword [ebp - 0x2494], str.gamepad
mov dword [ebp - 0x2490], 0xfffffffd
mov dword [ebp - 0x248c], 0x4c0444
mov dword [ebp - 0x2488], str.LEFT
mov dword [ebp - 0x2484], 1
mov dword [ebp - 0x2480], 0
mov dword [ebp - 0x247c], 0x4d18fc
mov dword [ebp - 0x2478], 2
mov dword [ebp - 0x2474], 0
mov dword [ebp - 0x2470], str.RIGHT
mov dword [ebp - 0x246c], 3
mov dword [ebp - 0x2468], 0
mov dword [ebp - 0x2464], str.DOWN
mov dword [ebp - 0x2460], 4
mov dword [ebp - 0x245c], 0
mov dword [ebp - 0x2458], str.SELECT
mov dword [ebp - 0x2454], 5
mov dword [ebp - 0x2450], 0
mov dword [ebp - 0x244c], str.CANCEL
mov dword [ebp - 0x2448], 6
mov dword [ebp - 0x2444], 0
mov dword [ebp - 0x2440], str.OPTION
mov dword [ebp - 0x243c], 7
mov dword [ebp - 0x2438], 0
mov dword [ebp - 0x2434], str.OPTION2
mov dword [ebp - 0x2430], 8
mov dword [ebp - 0x242c], 0
mov dword [ebp - 0x2428], str.L_SWITCH
mov dword [ebp - 0x2424], 9
mov dword [ebp - 0x2420], 0
mov dword [ebp - 0x241c], str.R_SWITCH
mov dword [ebp - 0x2418], 0xa
mov dword [ebp - 0x2414], 0
mov dword [ebp - 0x2410], str.SYSTEM
mov dword [ebp - 0x240c], 0xb
mov edi, dword [sym.imp.USER32.dll_wsprintfW]
lea esi, [ebp - 0x2680]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatW]
xor eax, eax
mov dword [ebp - 0x2408], 0
mov dword [ebp - 0x2404], str.SKIP
mov dword [ebp - 0x2400], 0xc
mov dword [ebp - 0x23fc], 0
mov word [ebp - 0x23f8], ax
mov dword [ebp - 0x2684], 0x36
nop dword [eax]
mov eax, dword [esi + 4]
cmp eax, 0xfffffffc
jne 0x487e0c
push 0x4c0444
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x487e73
cmp eax, 0xfffffffd
jne 0x487e26
push dword [esi]
lea eax, [ebp - 0x204]
push 0x4d810c
push eax
call edi
add esp, 0xc
jmp 0x487e73
cmp eax, 0xfffffffe
jne 0x487e4e
push 0x4d8118
lea eax, [ebp - 0x23f8]
push eax
call ebx
push dword [esi]
lea eax, [ebp - 0x204]
push str.___s
push eax
call edi
add esp, 0xc
jmp 0x487e73
cmp eax, 0xffffffff
jne 0x487e5f
push dword [esi + 8]
push dword [esi]
push str._s_s
jmp 0x487e67
push eax
push dword [esi]
push str._s_d
lea eax, [ebp - 0x204]
push eax
call edi
add esp, 0x10
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x23f8]
push eax
call ebx
push 0x4d8118
lea eax, [ebp - 0x23f8]
push eax
call ebx
add esi, 0xc
sub dword [ebp - 0x2684], 1
jne 0x487df0
push str.game.ini
push dword [ebp - 0x2688]
lea eax, [ebp - 0x40c]
push 0x4d0ed4
push eax
call edi
add esp, 0x10
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [ebp - 0x23f8]
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push eax
push 0
push 0
call edi
mov esi, eax
push esi
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
push 0
push 0
push esi
mov ebx, eax
lea eax, [ebp - 0x23f8]
push ebx
push 0xffffffffffffffff
push eax
push 0
push 0
call edi
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
lea eax, [ebp - 0x268c]
push 0
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x487f65
push ebx
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004912f2
mov esp, ebp
pop ebp
ret