Function at 0x40187b
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x354
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
xor ebx, ebx
push 0x41
xor eax, eax
mov byte [ebp - 0x11c], bl
pop ecx
lea edi, [ebp - 0x11b]
rep stosd dword es:[edi], eax
mov eax, dword [esi + 4]
cmp dword [eax + 0x14], ebx
je 0x401b2b
push ebx
lea eax, [ebp - 0x11c]
push 0x411374
push eax
call fcn.004077a3
add esp, 0xc
test eax, eax
je 0x401b2b
push 0x41
pop ecx
xor eax, eax
mov byte [ebp - 0x354], bl
lea edi, [ebp - 0x353]
rep stosd dword es:[edi], eax
push 0x104
lea eax, [ebp - 0x354]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [esi + 4]
push dword [eax + 0x14]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x10], 0x415d1c
mov dword [ebp - 0xc], ebx
mov dword [ebp - 8], ebx
call fcn.00409691
lea eax, [ebp - 0x24c]
call fcn.00405d66
push ebx
mov edi, 0x10000000
push edi
push 3
push 3
push 0x80000000
lea eax, [ebp - 0x354]
push eax
lea ecx, [ebp - 0x24c]
call fcn.00405e06
test eax, eax
je 0x40195e
mov eax, dword [esi + 4]
push ebx
push dword [ebp - 8]
lea ecx, [ebp - 0x24c]
push dword [ebp - 0xc]
push ebx
push dword [eax + 0x10]
call fcn.0040606e
lea ecx, [ebp - 0x24c]
call fcn.00405fcb
push ebx
push edi
push 2
push 3
push 0x40000000
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x24c]
call fcn.00405e06
test eax, eax
je 0x40199e
push ebx
push dword [ebp - 8]
lea ecx, [ebp - 0x24c]
push dword [ebp - 0xc]
push ebx
push ebx
call fcn.0040602a
lea ecx, [ebp - 0x24c]
call fcn.00405fcb
lea eax, [ebp - 0x11c]
push eax
push ebx
push str.NATIONDEFAUT
mov esi, str.GENERAL
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edi, dword [ebp + 8]
add edi, 0x430
push eax
lea ebx, [ebp - 0x11c]
mov eax, edi
call fcn.00409929
push 0x13e
call fcn.0040998f
push 0x13f
call fcn.0040998f
push 0x140
call fcn.0040998f
push 0x141
call fcn.0040998f
push 0x142
call fcn.0040998f
mov eax, ebx
push eax
push 0
push str.MODEPATCH
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x220], eax
lea eax, [ecx + 0x224]
mov ecx, ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push ecx
push 0x104
push eax
push 0x4112ea
push str.APPPATCH
push esi
mov dword [ebp - 0x14], eax
call ebx
lea eax, [ebp - 0x11c]
push eax
mov eax, dword [ebp + 8]
push 0x104
add eax, 0x329
push eax
push 0x4112ea
push str.FICLICENCE
push esi
call ebx
and dword [ebp - 4], 0
push 0x13e
mov eax, edi
call fcn.00409956
mov ebx, eax
lea eax, [ebp - 4]
call fcn.00409ca5
push 0
mov ebx, 0x411334
push ebx
lea esi, [ebp - 4]
call fcn.00409e3e
test eax, eax
jle 0x401a9b
push dword [ebp - 0x14]
mov eax, esi
push ebx
push eax
call fcn.00409e6a
mov eax, dword [ebp - 4]
test eax, eax
jne 0x401aa7
mov eax, 0x4112ea
mov ebx, dword [ebp + 8]
push eax
push dword [ebx + 0xc]
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0x13f
mov eax, edi
call fcn.00409956
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
push eax
push 0x3e8
push dword [ebx + 0xc]
call esi
push 0x140
mov eax, edi
call fcn.00409956
push eax
push 0x3eb
push dword [ebx + 0xc]
call esi
push 0x141
mov eax, edi
call fcn.00409956
push eax
push 1
push dword [ebx + 0xc]
call esi
push 0x142
mov eax, edi
call fcn.00409956
push eax
push 2
push dword [ebx + 0xc]
call esi
lea eax, [ebp - 4]
call fcn.00409c66
lea ecx, [ebp - 0x24c]
call fcn.00405dc0
lea ecx, [ebp - 0x10]
call fcn.0040967b
pop edi
pop esi
pop ebx
leave
ret 4