Function at 0x10012620
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10080007
mov eax, dword fs:[0]
push eax
sub esp, 0x44c
mov eax, dword [0x100afcf0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x400
lea eax, [ebp - 0x410]
push 0
push eax
call fcn.10060c20
add esp, 0xc
lea eax, [ebp - 0x410]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
cmp byte [ebp - 0x410], 0
jne 0x10012682
xor ecx, ecx
jmp 0x10012699
lea ecx, [ebp - 0x410]
lea edx, [ecx + 1]
jmp 0x10012690
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10012690
sub ecx, edx
push ecx
lea eax, [ebp - 0x410]
mov edi, 0x100aede8
push eax
mov ecx, edi
call fcn.10008cc0
push 8
push str.ETS.ini
mov ecx, edi
call fcn.10008aa0
cmp byte [ebp - 0x410], 0
jne 0x100126c8
xor ecx, ecx
jmp 0x100126da
lea ecx, [ebp - 0x410]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100126d1
sub ecx, edx
push ecx
lea eax, [ebp - 0x410]
mov ecx, 0x100aee18
push eax
call fcn.10008cc0
push 0xe
push 0x10088414
mov ecx, 0x100aee18
call fcn.10008aa0
cmp dword [0x100aedfc], 0x10
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
call fcn.10055590
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
add esp, 4
cmp dword [0x100aedfc], 0x10
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 0
push str.Console
push str.Event
call esi
mov dword [0x100b2154], eax
test eax, eax
je 0x10012765
call dword [sym.imp.KERNEL32.dll_AllocConsole]
call fcn.1006468a
add eax, 0x20
push eax
push 0x10087f7c
push 0x10088434
call fcn.10064f76
add esp, 0xc
cmp dword [0x100aedfc], 0x10
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 0
push str.WideScreen
push str.Event
call esi
cmp dword [0x100aedfc], 0x10
mov dword [0x100b4998], eax
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 0
push str.Get_File_Load
push str.Event
call esi
cmp dword [0x100aedfc], 0x10
mov dword [0x100b49a8], eax
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 0
push str.Fog_Click
push str.Event
call esi
cmp dword [0x100aedfc], 0x10
mov dword [0x100b2124], eax
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 1
push str.Remove_Fog_Effect
push str.Event
call esi
cmp dword [0x100aedfc], 0x10
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [0x100ae05c], eax
mov eax, edi
cmovae eax, dword [0x100aede8]
push eax
push 0x104
push 0x100b4ad0
push 0x10087b08
push str.OLDNames
push str.Event
call esi
cmp dword [0x100aedfc], 0x10
cmovae edi, dword [0x100aede8]
push edi
push 0x104
push 0x100b49c8
push 0x10087b08
push str.NewNames
push str.Event
call esi
cmp byte [0x100b4ad0], 0
mov dword [ebp - 0x414], 0xf
mov dword [ebp - 0x418], 0
mov byte [ebp - 0x428], 0
jne 0x10012879
xor ecx, ecx
jmp 0x1001288a
mov ecx, 0x100b4ad0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10012881
sub ecx, edx
push ecx
push 0x100b4ad0
lea ecx, [ebp - 0x428]
call fcn.10008cc0
push 0
lea eax, [ebp - 0x428]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x440]
push eax
call fcn.1000acd0
mov ecx, eax
add esp, 0xc
cmp dword [ecx + 0x14], 0x10
jb 0x100128c4
mov ecx, dword [ecx]
mov edx, 0x100b4ad0
lea esp, [esp]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x100128d0
cmp dword [ebp - 0x42c], 0x10
jb 0x100128f5
push dword [ebp - 0x440]
call fcn.10060d01
add esp, 4
cmp dword [ebp - 0x414], 0x10
mov dword [ebp - 0x42c], 0xf
mov dword [ebp - 0x430], 0
mov byte [ebp - 0x440], 0
mov dword [ebp - 4], 0xffffffff
jb 0x1001292e
push dword [ebp - 0x428]
call fcn.10060d01
add esp, 4
cmp byte [0x100b49c8], 0
mov dword [ebp - 0x414], 0xf
mov dword [ebp - 0x418], 0
mov byte [ebp - 0x428], 0
jne 0x10012956
xor ecx, ecx
jmp 0x10012969
mov ecx, 0x100b49c8
lea edx, [ecx + 1]
mov edi, edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10012960
sub ecx, edx
push ecx
push 0x100b49c8
lea ecx, [ebp - 0x428]
call fcn.10008cc0
push 0
lea eax, [ebp - 0x428]
mov dword [ebp - 4], 1
push eax
lea eax, [ebp - 0x440]
push eax
call fcn.1000acd0
mov ecx, eax
add esp, 0xc
cmp dword [ecx + 0x14], 0x10
jb 0x100129a3
mov ecx, dword [ecx]
mov edx, 0x100b49c8
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x100129a8
cmp dword [ebp - 0x42c], 0x10
jb 0x100129cd
push dword [ebp - 0x440]
call fcn.10060d01
add esp, 4
cmp dword [ebp - 0x414], 0x10
mov dword [ebp - 0x42c], 0xf
mov dword [ebp - 0x430], 0
mov byte [ebp - 0x440], 0
mov dword [ebp - 4], 0xffffffff
jb 0x10012a06
push dword [ebp - 0x428]
call fcn.10060d01
add esp, 4
cmp byte [0x100b49c8], 0
mov dword [ebp - 0x444], 0xf
mov dword [ebp - 0x448], 0
mov byte [ebp - 0x458], 0
jne 0x10012a2e
xor ecx, ecx
jmp 0x10012a3f
mov ecx, 0x100b49c8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10012a36
sub ecx, edx
push ecx
push 0x100b49c8
lea ecx, [ebp - 0x458]
call fcn.10008cc0
push 3
push 0x10088490
lea ecx, [ebp - 0x440]
mov dword [ebp - 4], 2
mov dword [ebp - 0x42c], 0xf
mov dword [ebp - 0x430], 0
mov byte [ebp - 0x440], 0
call fcn.10008cc0
push 8
push str._quatao_
lea ecx, [ebp - 0x428]
mov byte [ebp - 4], 3
mov dword [ebp - 0x414], 0xf
mov dword [ebp - 0x418], 0
mov byte [ebp - 0x428], 0
call fcn.10008cc0
lea eax, [ebp - 0x440]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.1000ca90
add esp, 0xc
cmp dword [ebp - 0x414], 0x10
jb 0x10012aed
push dword [ebp - 0x428]
call fcn.10060d01
add esp, 4
cmp dword [ebp - 0x42c], 0x10
mov dword [ebp - 0x414], 0xf
mov dword [ebp - 0x418], 0
mov byte [ebp - 0x428], 0
mov byte [ebp - 4], 2
jb 0x10012b23
push dword [ebp - 0x440]
call fcn.10060d01
add esp, 4
cmp dword [ebp - 0x444], 0x10
lea ecx, [ebp - 0x458]
mov edx, 0x100b49c8
cmovae ecx, dword [ebp - 0x458]
lea esp, [esp]
mov al, byte [ecx]
lea edx, [edx + 1]
inc ecx
mov byte [edx - 1], al
test al, al
jne 0x10012b40
push ecx
mov dword [esp], 0x453b8000
push str.Camera
push str.Event
call fcn.100551b0
add esp, 8
fstp dword [0x100ae054]
mov dword [esp], 0x469c4000
push str.FogZ
push str.Event
call fcn.100551b0
push 1
push str.Fast_Menu
push str.Event
fstp dword [0x100ae058]
call fcn.10055120
push 0
push str.Hide_Option_Menu
push str.Event
mov byte [0x100b49a2], al
call fcn.10055120
push 1
push str.Show_Noti_Kick_Ban
push str.Event
mov byte [0x100b49a3], al
call fcn.10055120
push 0
push str.Noti_Log_Info_Players_Save_Game
push str.Event
mov byte [0x100ae04e], al
call fcn.10055120
add esp, 0x3c
mov byte [0x100b4f03], al
cmp dword [ebp - 0x444], 0x10
jb 0x10012bfb
push dword [ebp - 0x458]
call fcn.10060d01
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10060c02
mov esp, ebp
pop ebp
ret