Function at 0x40e0d1
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x400
push ebx
push esi
push edi
mov edi, dword [0x42ead0]
xor ebx, ebx
cmp byte [edi], bl
je 0x40e612
mov dword [ebp - 0x10], ebx
cmp byte [0x42cfa0], bl
jne 0x40e612
cmp dword [0x42b594], ebx
jne 0x40e612
push 0x7c
push edi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 0x14], eax
je 0x40e612
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [0x42b5d0]
jge 0x40e130
inc dword [ebp - 0x10]
jmp 0x40e47a
mov esi, dword [ebp - 0x14]
inc dword [0x42b5d0]
inc dword [ebp - 0x10]
sub esi, edi
lea eax, [esi + 1]
push eax
call fcn.0041b1a2
push esi
push edi
push eax
mov dword [ebp - 4], eax
call fcn.0041bd20
mov eax, dword [ebp - 4]
push 0x3b
push eax
mov byte [eax + esi], bl
call fcn.0041c440
mov esi, eax
add esp, 0x18
cmp esi, ebx
je 0x40e5fd
mov edi, dword [ebp - 4]
inc esi
movsx eax, byte [edi]
sub eax, 0x30
je 0x40e39b
dec eax
je 0x40e226
dec eax
je 0x40e54d
dec eax
je 0x40e1d0
dec eax
je 0x40e48b
dec eax
jne 0x40e477
mov edi, 0x42d0c0
push edi
push esi
call fcn.004040a8
pop ecx
test eax, eax
pop ecx
je 0x40e477
push edi
push ebx
push 0x42cfa0
mov dword [0x42b594], 1
call fcn.00403bc9
add esp, 0xc
jmp 0x40e477
cmp dword [0x42e4a8], ebx
jne 0x40e477
push 0x3b
push esi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e53b
mov byte [eax], bl
inc eax
push ebx
push 0x40f85d
mov dword [0x42eca0], esi
mov dword [0x42cc2c], eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0x6a
push dword [0x42ea04]
call dword [sym.imp.USER32.dll_DialogBoxParamA]
cmp eax, 2
je 0x40e531
push edi
jmp 0x40e471
push 0x3b
push esi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e53b
mov byte [eax], bl
inc eax
push 0x3b
push eax
mov dword [ebp - 0x18], eax
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e53b
mov byte [eax], bl
inc eax
push 0x3b
push eax
mov dword [ebp - 0xc], eax
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e53b
mov byte [eax], bl
inc eax
push 0x3c
push esi
mov dword [ebp - 8], eax
call fcn.0041c440
pop ecx
pop ecx
test eax, eax
push esi
je 0x40e2bc
call fcn.00405803
push eax
lea eax, [ebp - 0x400]
push eax
call fcn.0041bb30
push 0x5c
push esi
call fcn.0041c440
add esp, 0x14
cmp eax, ebx
jne 0x40e2ac
push 0x3e
push esi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e2ca
inc eax
push eax
lea eax, [ebp - 0x400]
push eax
call fcn.00405453
jmp 0x40e2c8
lea eax, [ebp - 0x400]
push eax
call fcn.0041bb30
pop ecx
pop ecx
lea eax, [ebp - 0x400]
push eax
call fcn.004060d0
pop ecx
push 1
pop edi
cmp eax, edi
jne 0x40e46e
lea eax, [ebp - 0x400]
mov byte [ebp - 0x20c], bl
push eax
lea eax, [ebp - 0x20c]
push 0x1f4
push eax
push 0x42ab8c
push dword [ebp - 0xc]
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [ebp - 0x20c], bl
je 0x40e46e
mov eax, dword [ebp - 8]
cmp byte [eax], 0x32
je 0x40e5a8
cmp byte [ebp - 0x20c], 0x22
jne 0x40e363
lea eax, [ebp - 0x20b]
push 0x22
push eax
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e5c5
mov byte [eax], bl
lea eax, [ebp - 0x20b]
mov esi, 0x42cfa0
push eax
push esi
call fcn.0041bb30
pop ecx
mov dword [0x42b594], edi
pop ecx
jmp 0x40e393
lea eax, [ebp - 0x20c]
push 0x20
push eax
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e379
mov byte [eax], bl
lea eax, [ebp - 0x20c]
mov esi, 0x42cfa0
push eax
push esi
mov dword [0x42b594], edi
call fcn.0041bb30
pop ecx
pop ecx
mov eax, dword [ebp - 8]
jmp 0x40e459
push 0x5c
push esi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 0xc], eax
je 0x40e53b
inc dword [ebp - 0xc]
push 0x3b
push dword [ebp - 0xc]
mov byte [eax], bl
call fcn.0041c440
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
je 0x40e5c5
mov byte [edi], bl
inc edi
push 0x3b
push edi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 8], eax
je 0x40e5c5
inc dword [ebp - 8]
push esi
mov byte [eax], bl
call fcn.0040b257
cmp eax, ebx
pop ecx
je 0x40e5c5
mov ecx, dword [ebp - 8]
push edi
push dword [ebp - 0xc]
cmp byte [ecx], 0x32
push eax
jne 0x40e416
call fcn.00403d9d
add esp, 0xc
test eax, eax
jne 0x40e5dc
jmp 0x40e46e
call fcn.00403d24
mov esi, eax
add esp, 0xc
cmp esi, ebx
je 0x40e46e
cmp byte [esi], 0x22
jne 0x40e43e
inc esi
push 0x22
push esi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
je 0x40e5c5
mov byte [eax], bl
push esi
mov esi, 0x42cfa0
push esi
call fcn.0041bb30
mov eax, dword [ebp - 8]
pop ecx
pop ecx
mov dword [0x42b594], 1
cmp byte [eax], 0x31
jne 0x40e46e
push 0x5c
push esi
call fcn.0041bb00
pop ecx
cmp eax, ebx
pop ecx
je 0x40e46e
mov byte [eax], bl
push dword [ebp - 4]
call fcn.0041b254
pop ecx
mov eax, dword [ebp - 0x14]
cmp byte [eax + 1], bl
lea edi, [eax + 1]
jne 0x40e0f0
jmp 0x40e612
push 0x3b
push esi
call fcn.0041c440
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
je 0x40e5c5
mov byte [edi], bl
inc edi
push 0x3b
push edi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 8], eax
mov dword [0x42d344], edi
je 0x40e5c5
inc dword [ebp - 8]
push 0x3b
push dword [ebp - 8]
mov byte [eax], bl
call fcn.0041c440
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
je 0x40e5c5
push dword [ebp - 8]
mov byte [edi], bl
call fcn.0041c910
mov dword [0x42b4fc], eax
inc edi
push 0x3b
push edi
call fcn.0041c440
add esp, 0xc
cmp eax, ebx
je 0x40e5c5
push dword [ebp - 4]
mov byte [eax], bl
inc eax
mov dword [0x42b5a4], edi
push 0x40f65a
mov dword [0x42b5a0], eax
mov dword [0x42cd4c], esi
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0x6a
push dword [0x42ea04]
call dword [sym.imp.USER32.dll_CreateDialogParamA]
jmp 0x40e620
mov dword [0x42ab7c], 1
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push edi
jmp 0x40e5d4
push 0x3b
push esi
call fcn.0041c440
mov edi, eax
pop ecx
cmp edi, ebx
pop ecx
je 0x40e5c5
mov byte [edi], bl
inc edi
push 0x3b
push edi
call fcn.0041c440
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 8], eax
je 0x40e5c5
push edi
mov byte [eax], bl
call fcn.0041c910
inc dword [ebp - 8]
push 0x3b
push dword [ebp - 8]
mov dword [0x42b4f4], eax
call fcn.0041c440
mov edi, eax
add esp, 0xc
cmp edi, ebx
je 0x40e5c5
push dword [ebp - 8]
mov byte [edi], bl
call fcn.0041c910
mov dword [0x42b4f8], eax
jmp 0x40e4e7
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push dword [ebp - 4]
call fcn.0041b254
pop ecx
mov dword [0x42b594], edi
jmp 0x40e61e
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push dword [ebp - 4]
call fcn.0041b254
pop ecx
jmp 0x40e61e
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push dword [ebp - 4]
call fcn.0041b254
pop ecx
mov dword [0x42b594], 1
jmp 0x40e61e
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push dword [ebp - 4]
call fcn.0041b254
pop ecx
push dword [0x42b54c]
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret