Function at 0x4361cf
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x45f1b8
call fcn.0045dac0
sub esp, 0x954
push ebx
and byte [ebp - 0x44c], 0
push esi
push edi
push 0x40
mov dword [ebp - 0x30], ecx
pop edx
xor eax, eax
mov ecx, edx
lea edi, [ebp - 0x44b]
rep stosd dword es:[edi], eax
and byte [ebp - 0x348], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x347]
rep stosd dword es:[edi], eax
and byte [ebp - 0x140], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x13f]
rep stosd dword es:[edi], eax
and byte [ebp - 0x960], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x95f]
rep stosd dword es:[edi], eax
and byte [ebp - 0x758], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x757]
rep stosd dword es:[edi], eax
and byte [ebp - 0x244], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x243]
rep stosd dword es:[edi], eax
and byte [ebp - 0x654], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x653]
rep stosd dword es:[edi], eax
and byte [ebp - 0x550], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x54f]
rep stosd dword es:[edi], eax
and byte [ebp - 0x85c], 0
mov ecx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x85b]
rep stosd dword es:[edi], eax
push dword [ebp + 8]
mov ebx, 0x45fc38
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x44c]
push 0x103
push eax
push ebx
push 0xbc
call fcn.00424eff
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
pop ecx
push eax
push 0x40b8a0
call esi
lea edi, [ebp - 0x44c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x43630d
push dword [ebp + 8]
lea eax, [ebp - 0x44c]
mov edi, 0x40b8a0
push 0x103
push eax
push ebx
push 0x40b9d4
push edi
call esi
jmp 0x436312
mov edi, 0x40b8a0
push dword [ebp + 8]
lea eax, [ebp - 0x348]
push 0x103
push eax
push ebx
push 0x40b9c8
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x140]
push 0x103
push eax
push ebx
push 0x40b9c0
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x758]
push 0x103
push eax
push ebx
push 0x40b9b4
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x654]
push 0x103
push eax
push ebx
push 0x40b0dc
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x550]
push 0x103
push eax
push ebx
push 0x40b0d4
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x85c]
push 0x103
push eax
push ebx
push 0x40b8a8
push edi
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x960]
push 0x103
push eax
push ebx
push 0x40b0ec
push edi
call esi
push dword [ebp + 8]
xor ebx, ebx
push ebx
push 0x40b9a8
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x244]
push eax
push dword [ebp + 8]
call fcn.004427eb
mov esi, dword [sym.imp.MSVCRT.dll__stricmp]
lea eax, [ebp - 0x140]
push 0x40b994
push eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], ebx
call esi
pop ecx
test eax, eax
pop ecx
je 0x436498
lea eax, [ebp - 0x140]
push 0x40b98c
push eax
call esi
pop ecx
test eax, eax
pop ecx
je 0x436498
lea eax, [ebp - 0x140]
push 0x40b97c
push eax
call esi
pop ecx
test eax, eax
pop ecx
je 0x43648f
lea eax, [ebp - 0x140]
push 0x40b974
push eax
call esi
pop ecx
test eax, eax
pop ecx
je 0x43648f
lea eax, [ebp - 0x140]
push 0x40b964
push eax
call esi
pop ecx
test eax, eax
pop ecx
je 0x43648f
lea eax, [ebp - 0x140]
push 0x40b954
push eax
call esi
pop ecx
test eax, eax
pop ecx
jne 0x436472
mov dword [ebp - 0x24], 5
jmp 0x43649f
lea eax, [ebp - 0x140]
push 0x40b948
push eax
call esi
pop ecx
test eax, eax
pop ecx
jne 0x43649f
mov dword [ebp - 0x24], 4
jmp 0x43649f
mov dword [ebp - 0x24], 2
jmp 0x43649f
mov dword [ebp - 0x24], 1
mov ecx, dword [ebp - 0x30]
push dword [ebp - 0x24]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x348]
push 0x40b944
push eax
call esi
pop ecx
test eax, eax
pop ecx
jne 0x4364ca
mov dword [ebp - 0x28], 2
jmp 0x436502
lea eax, [ebp - 0x348]
push 0x40b93c
push eax
call esi
pop ecx
test eax, eax
pop ecx
jne 0x4364e7
mov dword [ebp - 0x28], 1
jmp 0x436502
lea eax, [ebp - 0x348]
push 0x40b938
push eax
call esi
pop ecx
test eax, eax
pop ecx
jne 0x436502
mov dword [ebp - 0x28], 3
lea eax, [ebp - 0x758]
lea ecx, [ebp - 0x20]
push eax
call fcn.004144da
push dword [0x46343c]
mov dword [ebp - 4], ebx
mov ebx, 0x40b930
lea ecx, [ebp - 0x20]
push ebx
call fcn.00414da1
push dword [0x463434]
mov esi, 0x40b928
lea ecx, [ebp - 0x20]
push esi
call fcn.00414da1
cmp dword [ebp - 0x10], 0
je 0x4368ab
lea edi, [ebp - 0x654]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x43656c
lea edi, [ebp - 0x550]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x436684
mov eax, dword [0x40a0f8]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x654]
lea ecx, [ebp - 0x18]
push eax
mov byte [ebp - 4], 2
call fcn.0041463c
push dword [0x46343c]
lea ecx, [ebp - 0x18]
push ebx
call fcn.00414da1
push dword [0x463434]
lea ecx, [ebp - 0x18]
push esi
call fcn.00414da1
push 0
push dword [ebp - 0x18]
call fcn.0042653d
pop ecx
mov edi, 0x40aa14
test eax, eax
pop ecx
jne 0x4365d6
push dword [ebp - 0x18]
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x1c]
push edi
push eax
call fcn.00414a85
add esp, 0x10
jmp 0x4365e2
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x1c]
push eax
call fcn.004145c2
push ecx
lea eax, [ebp - 0x1c]
mov ecx, esp
mov dword [ebp - 0x34], esp
push eax
call fcn.0041d731
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.00436d55
mov ebx, eax
test ebx, ebx
je 0x43661a
push ebx
mov ecx, esi
call fcn.00436196
push ebx
mov edi, eax
call dword [sym.imp.USER32.dll_DestroyIcon]
mov ecx, dword [ebp - 0x10]
push edi
mov eax, dword [ecx]
jmp 0x436667
lea eax, [ebp - 0x550]
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x1c]
push edi
push eax
call fcn.00414a85
add esp, 0xc
lea eax, [ebp - 0x1c]
mov ecx, esp
mov dword [ebp - 0x34], esp
push eax
call fcn.0041d731
mov ecx, esi
call fcn.00436d55
mov edi, eax
test edi, edi
je 0x43666a
push edi
mov ecx, esi
call fcn.00436196
push edi
mov ebx, eax
call dword [sym.imp.USER32.dll_DestroyIcon]
mov ecx, dword [ebp - 0x10]
push ebx
mov eax, dword [ecx]
call dword [eax + 0x3c]
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call fcn.00411e66
and byte [ebp - 4], 0
lea ecx, [ebp - 0x1c]
call fcn.00411e66
jmp 0x436687
mov esi, dword [ebp - 0x30]
lea eax, [ebp - 0x85c]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
pop ecx
push 1
pop ecx
cmp eax, ecx
jne 0x4366a2
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x4c], ecx
push dword [ebp - 0x24]
mov ecx, dword [ebp - 0x10]
call fcn.00435929
mov ecx, dword [esi + 8]
lea ebx, [esi + 4]
xor edi, edi
cmp ecx, edi
jne 0x4366bd
xor eax, eax
jmp 0x4366c5
mov eax, dword [ebx + 8]
sub eax, ecx
sar eax, 2
mov ecx, dword [ebp - 0x10]
inc eax
push eax
call fcn.00435989
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x44c]
push eax
call fcn.00435933
mov eax, dword [ebp - 0x10]
push dword [ebp - 0x20]
lea ecx, [eax + 0x34]
call fcn.0041463c
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x244]
push eax
call fcn.00435942
push ecx
lea eax, [ebp - 0x960]
mov ecx, esp
mov dword [ebp - 0x34], esp
push eax
call fcn.004144da
mov ecx, dword [ebp - 0x10]
call fcn.00435951
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0x24], esi
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x50], ecx
lea eax, [ebp - 0x244]
push eax
lea ecx, [ebp - 0x14]
call fcn.004144da
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
mov eax, dword [eax - 8]
dec eax
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.004149e2
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call fcn.004145c2
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
call fcn.00411e66
push 0x5c
push dword [ebp - 0x14]
call dword [sym.imp.MSVCRT.dll_strrchr]
pop ecx
inc eax
pop ecx
push eax
lea ecx, [ebp - 0x14]
call fcn.0041463c
mov eax, dword [ebp - 0x14]
push ecx
mov dword [ebp - 0x34], esp
mov ecx, esp
cmp dword [eax - 0xc], edi
jl 0x43679d
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x4367ac
mov eax, dword [0x40a0f8]
mov dword [ecx], eax
push dword [ebp - 0x14]
call fcn.0041463c
mov ecx, dword [ebp - 0x10]
call fcn.00437d24
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x3c], edi
push SysReAllocStringLen
mov dword [eax + 0x40], 1
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x14]
push 0x40ad48
call fcn.004248cf
add esp, 0x10
test eax, eax
je 0x4367f2
cmp dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x10]
je 0x4367ef
mov dword [eax + 0x40], 1
jmp 0x4367f2
mov dword [eax + 0x40], edi
push dword [ebp + 8]
push edi
push 0x40b91c
push 0x40b8a0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x3c], eax
cmp eax, edi
mov eax, dword [ebp - 0x10]
je 0x436819
mov dword [eax + 0x44], 1
jmp 0x43681c
mov dword [eax + 0x44], edi
mov eax, dword [0x40a0f8]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00419a6a
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 6
call fcn.004145c2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 5
call fcn.00411e66
cmp esi, 3
jne 0x436888
push edi
push dword [ebp - 0x20]
call fcn.0042653d
pop ecx
test eax, eax
pop ecx
jne 0x436888
push edi
push dword [ebp - 0x38]
call fcn.0042653d
pop ecx
test eax, eax
pop ecx
jne 0x436888
mov ecx, dword [ebp - 0x10]
cmp ecx, edi
je 0x436893
mov eax, dword [ecx]
push 1
call dword [eax + 0x4c]
jmp 0x436893
lea eax, [ebp - 0x10]
mov ecx, ebx
push eax
call fcn.00437cd8
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 3
call fcn.00411e66
and byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00411e66
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00411e66
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 4