Function at 0x401610
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1228
call fcn.00409320
mov eax, dword [0x40f084]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
lea eax, [ebp - 0x1218]
push eax
push ebx
call dword [sym.imp.USER32.dll_GetClientRect]
push str.Verdana
push 0
push 0
push 0
push 0
push 1
push 0
push 0
push 0
push 0x12c
push 0
push 0
push 0
push 0xd
call dword [sym.imp.GDI32.dll_CreateFontW]
mov ecx, dword [0x422c3c]
push 0
push ecx
push 0x70
push ebx
push 0x88
push 0x124
push 0xa
push 0xa
push 0x5080020e
push 0
push str.STATIC
push 0x20000
mov dword [ebp - 0x121c], eax
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov edi, dword [0x422c40]
mov esi, eax
test edi, edi
jne 0x4016a6
xor eax, eax
jmp 0x4016f2
push 0
push 0
lea edx, [ebp - 0x1220]
push edx
push 0
lea eax, [edi + 0xe]
push eax
push 0
mov dword [ebp - 0x1220], 0
call dword [sym.imp.GDI32.dll_CreateDIBSection]
mov dword [ebp - 0x1224], eax
test eax, eax
je 0x4016f2
mov eax, dword [edi + 0x22]
mov ecx, dword [edi + 0xa]
mov edx, dword [ebp - 0x1220]
push eax
add ecx, edi
push ecx
push edx
call fcn.004088d0
mov eax, dword [ebp - 0x1224]
add esp, 0xc
push eax
push 0
push 0x172
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
mov eax, dword [0x422c3c]
push 0
push eax
push 0xffffffffffffffff
push ebx
push 0x14
push 0x64
push 0xa0
push 0x14
push 0x50000000
push 0
push str.STATIC
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov ecx, dword [ebp - 0x121c]
push 0
push ecx
mov edi, eax
push 0x30
push edi
call esi
push str.Language:
push edi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov edx, dword [0x422c3c]
push 0
push edx
push 0x6e
push ebx
push 0x64
push 0xbe
push 0x9e
push 0x64
push 0x50200d03
push 0
push str.COMBOBOX
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov ecx, dword [ebp - 0x121c]
push 0
push ecx
push 0x30
push eax
mov dword [0x422c34], eax
call esi
xor edx, edx
push 0x7fe
push edx
lea eax, [ebp - 0xa06]
push eax
mov word [ebp - 0xa08], dx
call fcn.00407f30
add esp, 0xc
push 0x400
lea ecx, [ebp - 0xa08]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea edx, [ebp - 0xa08]
push 0x5c
push edx
call fcn.00404690
xor ecx, ecx
xor edx, edx
mov word [eax], cx
push 0x7fe
push edx
lea eax, [ebp - 0x1206]
push eax
mov word [ebp - 0x1208], dx
call fcn.00407f30
lea ecx, [ebp - 0xa08]
push ecx
push str._sSkidrow.ini
lea edx, [ebp - 0x1208]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
push 0x1fc
push eax
lea ecx, [ebp - 0x206]
push ecx
mov word [ebp - 0x208], ax
call fcn.00407f30
add esp, 0x2c
lea edx, [ebp - 0x1208]
push edx
push 0xff
lea eax, [ebp - 0x208]
push eax
push 0x40d1e4
push str.Language
push str.Game
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov edi, dword [0x422c50]
cmp edi, dword [0x422c54]
je 0x40187f
cmp dword [edi + 0x14], 8
jb 0x401861
mov eax, dword [edi]
jmp 0x401863
mov eax, edi
mov ecx, dword [0x422c34]
push eax
push 0
push 0x143
push ecx
call esi
add edi, 0x38
cmp edi, dword [0x422c54]
jne 0x401857
mov eax, dword [0x422c34]
lea edx, [ebp - 0x208]
push edx
push 0
push 0x14d
push eax
call esi
mov edx, dword [0x422c3c]
mov ecx, dword [ebp - 0x1210]
sub ecx, dword [ebp - 0x1218]
push 0
push edx
push 0x6f
push ebx
push 0x16
lea eax, [ecx - 0x14]
push eax
cdq
sub eax, edx
mov edi, eax
mov eax, ecx
cdq
sub eax, edx
push 0xbe
sar eax, 1
sar edi, 1
sub eax, edi
push eax
push 0x50018300
push str.Save_and_Launch
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov ecx, dword [ebp - 0x121c]
push 0
push ecx
push 0x30
push eax
call esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
xor eax, eax
pop esi
call fcn.0040453c
mov esp, ebp
pop ebp
ret