Function at 0x408159
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x41accb
call fcn.00411544
mov eax, 0x166c
call fcn.00411720
push ebx
push esi
push edi
mov esi, ecx
call fcn.00408500
test eax, eax
jne 0x408191
mov eax, 0x66b
push eax
mov dword [0x424d80], eax
call fcn.0040bd91
pop ecx
jmp 0x40848f
mov ecx, esi
call fcn.00401046
mov esi, 0xff
mov dword [ebp - 0x10], eax
xor ebx, ebx
mov ecx, esi
xor eax, eax
lea edi, [ebp - 0x1277]
mov byte [ebp - 0x1278], bl
mov byte [ebp - 0x1678], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, esi
xor eax, eax
lea edi, [ebp - 0x1677]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x1278]
push eax
lea eax, [ebp - 0x1678]
push eax
push dword [ebp + 8]
call fcn.0040c334
lea eax, [ebp - 0x1278]
push eax
push 0x4230e4
push dword [ebp + 0x10]
call fcn.0040c475
push 0x7c
xor eax, eax
pop ecx
lea edi, [ebp - 0x28f]
mov byte [ebp - 0x290], bl
push 0x7c
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
pop ecx
xor eax, eax
lea edi, [ebp - 0x483]
mov byte [ebp - 0x484], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x484]
push 0x1f4
push eax
push 0x64d
call fcn.0040be05
add esp, 0xc
lea eax, [ebp - 0x484]
push dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x290]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 0x3eb
lea eax, [ebp - 0x290]
push dword [0x423eac]
push eax
call fcn.0040cc9a
add esp, 0x18
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x84], 0x41b5b4
call fcn.004091e8
mov dword [ebp - 0x84], 0x41b5a0
mov dword [ebp - 4], ebx
push dword [ebp + 0x10]
lea ecx, [ebp - 0x84]
push dword [ebp + 8]
call fcn.00401d87
test eax, eax
jne 0x40832c
push 0x7c
lea edi, [ebp - 0x677]
pop ecx
mov byte [ebp - 0x678], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x678]
push 0x1f4
push eax
push 0x64e
call fcn.0040be05
add esp, 0xc
lea eax, [ebp - 0x678]
push dword [ebp + 8]
push eax
lea eax, [ebp - 0x290]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [ebp - 0x9c]
push eax
push ebx
call fcn.0040cda2
add esp, 0x14
lea eax, [ebp - 0x9c]
push 5
push eax
lea eax, [ebp - 0x290]
push eax
push dword [0x423eac]
call dword [sym.imp.USER32.dll_MessageBoxA]
push dword [ebp + 0x10]
mov edi, eax
call fcn.0040c621
cmp edi, 4
je 0x40828b
jmp 0x408479
lea ecx, [ebp - 0x1c]
call fcn.004013aa
push dword [ebp + 0x10]
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 1
call fcn.00401505
cmp dword [0x423ea8], ebx
je 0x408352
xor esi, esi
jmp 0x4084a2
mov ecx, esi
xor eax, eax
lea edi, [ebp - 0xa77]
mov byte [ebp - 0xa78], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x423eb8
lea eax, [ebp - 0xa78]
push 0x400
mov edi, 0x4230e0
push eax
push edi
push dword [0x41b58c]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0xa78]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x40849f
mov ecx, esi
xor eax, eax
lea edi, [ebp - 0xe77]
mov byte [ebp - 0xe78], bl
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x10]
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.0040a416
test eax, eax
je 0x4083eb
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0xa78]
push 1
push eax
call fcn.0040a5a4
test eax, eax
je 0x40846e
lea eax, [ebp - 0xa78]
push eax
push 0x4230e4
jmp 0x4083f7
lea eax, [ebp - 0xa78]
push eax
push 0x42497c
lea eax, [ebp - 0xe78]
push eax
call fcn.0040c475
lea ecx, [ebp + 8]
call fcn.0040379c
lea eax, [ebp - 0xe78]
lea ecx, [ebp + 8]
push eax
mov byte [ebp - 4], 2
push dword [ebp + 0x10]
call fcn.00403898
test eax, eax
jne 0x408493
cmp dword [0x424d84], ebx
jne 0x408458
push dword [0x423eac]
lea ecx, [ebp + 8]
push dword [ebp + 0x10]
call fcn.004037be
cmp eax, ebx
je 0x408493
lea ecx, [ebp - 0x1278]
mov dword [0x424d80], eax
push ecx
push eax
call fcn.0040bd91
pop ecx
pop ecx
jmp 0x408462
mov dword [0x424d80], 0x655
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call fcn.004037b0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], bl
call fcn.004013d7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x84], 0x41b5a0
call fcn.004093f0
xor eax, eax
jmp 0x4084c5
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call fcn.004037b0
push 1
pop esi
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], bl
call fcn.004013d7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x84], 0x41b5a0
call fcn.004093f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0xc