Function at 0x40b679
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x41c7ee
call fcn.00412df4
mov eax, 0x1188
call fcn.00412fd0
push ebx
push esi
mov esi, ecx
push edi
push esi
push 0x452
lea ecx, [ebp - 0x2c]
call fcn.00401754
xor ebx, ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], ebx
call fcn.00401797
test eax, eax
je 0x40bb1a
cmp dword [0x426168], ebx
jne 0x40bb1a
and byte [ebp - 0x994], bl
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0x993]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, esi
stosb byte es:[edi], al
call fcn.0040bbc3
test eax, eax
je 0x40b6eb
push 0x4253a4
jmp 0x40b6f1
push dword [esi + 0x2cbc]
lea eax, [ebp - 0x994]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [esi + 0x141c], ebx
lea edi, [esi + 0x141c]
lea eax, [ebp - 0x994]
lea ebx, [esi + 0x1010]
push eax
jne 0x40b732
push dword [esi + 0xc]
push ebx
push edi
push 0x65
push 0xbba
push dword [esi + 0x2cd4]
call fcn.00405fb5
jmp 0x40b753
push 0
lea eax, [ebp - 0x10]
push ebx
push eax
push 0x65
push 0xbba
push dword [esi + 0x2cd4]
call fcn.00405fb5
mov ecx, dword [edi]
mov dword [0x42679c], ecx
xor ecx, ecx
cmp eax, ecx
jne 0x40bb1a
cmp dword [0x427050], ecx
jne 0x40b82a
cmp dword [esi + 0x1418], ecx
jne 0x40b82a
and byte [ebp - 0x490], cl
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0x48f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x490]
mov ecx, esi
push eax
push dword [0x42679c]
call fcn.0040c168
test eax, eax
jne 0x40b7ff
lea eax, [ebp - 0x490]
xor edi, edi
push eax
push edi
mov ecx, esi
call fcn.0040c168
test eax, eax
jne 0x40b801
mov ecx, esi
call fcn.0040bbc3
test eax, eax
je 0x40b7da
push edi
push edi
push dword [0x41d694]
mov ecx, esi
call fcn.0040be0e
test eax, eax
jne 0x40b801
jmp 0x40b815
push dword [0x41d694]
lea eax, [ebp - 0x490]
push 0x426c4c
push eax
call fcn.0040dae4
lea eax, [ebp - 0x490]
push eax
call fcn.0040dc1c
jmp 0x40b7d4
xor edi, edi
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x490]
push eax
call fcn.00401087
cmp eax, edi
je 0x40b81a
mov dword [ebp - 0x10], edi
jmp 0x40b82d
lea eax, [ebp - 0x40]
mov ecx, esi
push eax
call fcn.0040c26d
mov dword [ebp - 0x10], eax
jmp 0x40b82d
mov dword [ebp - 0x10], ecx
and dword [ebp - 0x14], 0
lea eax, [ebp - 0x14]
push eax
push dword [0x42679c]
call fcn.0040e134
pop ecx
pop ecx
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
test eax, eax
jne 0x40b881
lea eax, [ebp - 0x594]
push eax
push dword [0x42679c]
call fcn.0040e38b
pop ecx
mov eax, 0x4b8
pop ecx
mov dword [0x42704c], eax
lea ecx, [ebp - 0x594]
push ecx
push eax
call fcn.0040d394
pop ecx
pop ecx
jmp 0x40b91b
mov edi, 0x400
lea eax, [esi + 0xc10]
push edi
push 0
push eax
call fcn.00412770
add esp, 0xc
cmp dword [ebx], 1
jbe 0x40b94d
cmp dword [esi + 0x1420], 5
je 0x40b94d
push edi
lea eax, [ebp - 0x490]
push 0
push eax
call fcn.00412770
lea eax, [ebp - 0x490]
push 0xa
push eax
push dword [esi + 0x141c]
call fcn.00413cac
push dword [0x421c38]
lea eax, [ebp - 0x490]
push eax
call fcn.00412870
add esp, 0x20
lea eax, [ebp - 0x490]
mov ecx, esi
push eax
call fcn.0040bbe0
test eax, eax
lea eax, [ebp - 0x490]
push eax
je 0x40b93f
lea ebx, [esi + 0xc10]
push 0x4253a4
push ebx
call fcn.0040dae4
mov ecx, esi
call fcn.0040bda0
test eax, eax
jne 0x40b92e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.0040178c
xor eax, eax
jmp 0x40bb2a
push 1
push ebx
push str._LangTransform
mov ecx, esi
call fcn.0040bfed
jmp 0x40b94d
lea eax, [esi + 0xc10]
push eax
call fcn.00412860
pop ecx
pop ecx
cmp dword [ebp - 0x10], 0
mov ebx, 0x3e8
jne 0x40b99e
push 0x426180
push 0x3e9
push dword [0x41d69c]
push dword [0x41d690]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push 4
mov ebx, eax
call fcn.00412977
pop ecx
mov dword [ebp - 0x30], eax
test eax, eax
mov byte [ebp - 4], 1
je 0x40b992
mov ecx, eax
call fcn.00405869
jmp 0x40b994
xor eax, eax
and byte [ebp - 4], 0
mov dword [esi + 0x289c], eax
push dword [ebp - 0x10]
mov ecx, dword [esi + 0x289c]
push ebx
push esi
push dword [esi + 0x2cd4]
call fcn.00405895
lea eax, [ebp - 0xd94]
push edi
push eax
push 0x44e
call fcn.0040d474
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
lea eax, [ebp - 0xd94]
push eax
call edi
test eax, eax
je 0x40ba0f
mov ebx, 0x421170
lea eax, [ebp - 0xd94]
push ebx
push eax
call fcn.004138e0
pop ecx
test eax, eax
pop ecx
je 0x40ba0f
inc eax
inc eax
push eax
mov dword [ebp - 0x10], eax
call edi
test eax, eax
je 0x40ba0f
push ebx
push dword [ebp - 0x10]
call fcn.004138e0
pop ecx
test eax, eax
pop ecx
jne 0x40ba25
mov eax, 0x486
push eax
mov dword [0x42704c], eax
call fcn.0040d394
pop ecx
jmp 0x40bb1a
lea eax, [ebp - 0x90]
push eax
push 1
pop ebx
push ebx
call fcn.0040e41d
pop ecx
lea eax, [ebp - 0x90]
pop ecx
push eax
lea eax, [esi + 0x410]
push eax
lea eax, [ebp - 0xd94]
push eax
lea eax, [ebp - 0x1194]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x1194]
mov ecx, esi
push eax
call fcn.0040bba0
mov ecx, dword [esi + 0x289c]
mov edi, 0x3e8
push edi
call fcn.00405b5e
test eax, eax
je 0x40ba86
mov esi, ebx
jmp 0x40bb1c
push esi
push 0x44f
lea ecx, [ebp - 0x20]
call fcn.0040a59c
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.0040a5df
test eax, eax
je 0x40bb0e
cmp dword [0x426168], 0
jne 0x40bb0e
mov ecx, esi
call fcn.0040bfa4
test eax, eax
je 0x40bb0e
mov ecx, dword [esi + 0x289c]
push edi
call fcn.00405b5e
test eax, eax
jne 0x40bb53
push esi
push 0x451
lea ecx, [ebp - 0x78]
call fcn.00406caf
mov ecx, dword [esi + 0x289c]
push edi
mov byte [ebp - 4], 3
call fcn.00405b5e
test eax, eax
jne 0x40bb47
cmp dword [0x426168], eax
jne 0x40bb47
lea ecx, [ebp - 0x78]
call fcn.00406d0c
test eax, eax
jne 0x40bb39
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 2
call fcn.00406d01
and byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.0040a5d4
xor esi, esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.0040178c
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x2ce0], eax
call fcn.004058f3
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 2
call fcn.00406d01
and byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.0040a5d4
jmp 0x40ba7f