Function at 0x41e489
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44d9d0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x218
mov dword [ebp - 0x21c], ecx
call dword [sym.imp.KERNEL32.dll_GetVersion]
and eax, 0xff
cmp eax, 4
sbb eax, eax
inc eax
mov ecx, dword [ebp - 0x21c]
mov dword [ecx + 0x150], eax
mov edx, dword [ebp - 0x21c]
cmp dword [edx + 0x150], 0
jne 0x41e4e0
xor eax, eax
jmp 0x41eb3c
push 0xfe
lea eax, [ebp - 0x10c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x41e50c
push 0x5c
lea ecx, [ebp - 0x10c]
push ecx
call fcn.0042a810
add esp, 8
mov byte [eax], 0
lea ecx, [ebp - 0x214]
call fcn.00404590
mov dword [ebp - 4], 0
push 0x46af14
call fcn.0042a790
add esp, 4
test eax, eax
jne 0x41e54c
lea edx, [ebp - 0x10c]
push edx
push 0x4633bc
lea eax, [ebp - 0x214]
push eax
call fcn.0043ceb7
add esp, 0xc
jmp 0x41e56c
push 0x46af14
lea ecx, [ebp - 0x10c]
push ecx
push 0x4633d4
lea edx, [ebp - 0x214]
push edx
call fcn.0043ceb7
add esp, 0x10
mov eax, dword [ebp - 0x214]
push eax
push 0x4633ec
call fcn.00414290
add esp, 8
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea ecx, [ebp - 0x20c]
push ecx
push 0x46cf44
push 0x463400
push 0x46340c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e5c3
lea edx, [ebp - 0x20c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x64
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea eax, [ebp - 0x20c]
push eax
push 0x46cf48
push 0x463414
push 0x463420
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e606
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x68
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea edx, [ebp - 0x20c]
push edx
push 0x46cf4c
push 0x463428
push 0x463434
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e649
lea eax, [ebp - 0x20c]
push eax
mov ecx, dword [ebp - 0x21c]
add ecx, 0x6c
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea ecx, [ebp - 0x20c]
push ecx
push 0x46cf50
push 0x46343c
push 0x46344c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e68c
lea edx, [ebp - 0x20c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x70
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea eax, [ebp - 0x20c]
push eax
push 0x46cf54
push 0x463454
push 0x463468
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e6cf
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x74
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea edx, [ebp - 0x20c]
push edx
push 0x46cf58
push 0x463470
push 0x463480
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e712
lea eax, [ebp - 0x20c]
push eax
mov ecx, dword [ebp - 0x21c]
add ecx, 0x60
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea ecx, [ebp - 0x20c]
push ecx
push 0x46cf5c
push 0x463488
push 0x463498
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e755
lea edx, [ebp - 0x20c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x5c
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea eax, [ebp - 0x20c]
push eax
push 0x46cf60
push 0x4634a0
push 0x4634ac
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e798
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x54
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea edx, [ebp - 0x20c]
push edx
push 0x46cf64
push 0x4634b4
push 0x4634bc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e7db
lea eax, [ebp - 0x20c]
push eax
mov ecx, dword [ebp - 0x21c]
add ecx, 0x58
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea ecx, [ebp - 0x20c]
push ecx
push 0x46cf68
push 0x4634c4
push 0x4634d8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e81e
lea edx, [ebp - 0x20c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x50
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0x7d
lea eax, [ebp - 0x20c]
push eax
push 0x46cf6c
push 0x4634e0
push 0x4634ec
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e861
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x4c
call fcn.0043e01c
mov edx, dword [ebp - 0x21c]
mov eax, dword [edx + 0x4c]
push eax
lea ecx, [ebp - 0x20c]
push ecx
push 0x4634f4
call fcn.00414290
add esp, 0xc
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0xff
lea edx, [ebp - 0x20c]
push edx
push 0x46cf70
push 0x463510
push 0x463520
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e8c5
lea eax, [ebp - 0x20c]
push eax
mov ecx, dword [ebp - 0x21c]
add ecx, 0x48
call fcn.0043e01c
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ecx + 0x48]
push edx
lea eax, [ebp - 0x20c]
push eax
push 0x463528
call fcn.00414290
add esp, 0xc
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0xff
lea ecx, [ebp - 0x20c]
push ecx
push 0x46cf74
push 0x463548
push 0x46355c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e929
lea edx, [ebp - 0x20c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x3c
call fcn.0043e01c
lea ecx, [ebp - 0x214]
call fcn.00404600
push eax
push 0xff
lea eax, [ebp - 0x20c]
push eax
push 0x46cf78
push 0x463564
push 0x46357c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x41e96f
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x40
call fcn.0043e01c
push 0
push 0
push 0
push 0xa
push 0xa
push 0
push 0
push SysReAllocStringLen
push 0x46cf7c
push 0
push 0
push 0
push 0
call fcn.0043fec9
push eax
push 0
mov ecx, dword [ebp - 0x21c]
call fcn.0043f82d
call fcn.00404650
mov dword [ebp - 0x210], eax
mov edx, dword [ebp - 0x21c]
mov dword [edx + 0x158], 0x1e8
mov ecx, dword [ebp + 8]
call fcn.00414040
test eax, eax
je 0x41e9d9
mov ecx, dword [ebp + 8]
call fcn.00414040
mov dword [ebp - 0x220], eax
jmp 0x41e9e8
mov eax, dword [ebp - 0x21c]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x220], ecx
mov edx, dword [ebp - 0x21c]
mov eax, dword [ebp - 0x220]
mov dword [edx + 0x15c], eax
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ebp + 0x18]
mov dword [ecx + 0x160], edx
mov eax, dword [ebp - 0x210]
cmp dword [eax + 0x108], 0
je 0x41ea32
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ebp - 0x21c]
mov eax, dword [edx + 0x388]
mov dword [ecx + 0x16c], eax
jmp 0x41ea4a
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ebp - 0x21c]
mov eax, dword [edx + 0x378]
mov dword [ecx + 0x16c], eax
mov ecx, dword [ebp - 0x21c]
mov dword [ecx + 0x164], 7
mov edx, dword [ebp - 0x21c]
mov eax, dword [ebp + 0xc]
mov dword [edx + 0x168], eax
push 0x80
push 0
mov ecx, dword [ebp - 0x21c]
add ecx, 0x170
push ecx
call fcn.0042aa90
add esp, 0xc
mov edx, dword [ebp + 0x10]
push edx
call fcn.0042a790
add esp, 4
cmp eax, 0x80
jae 0x41eaac
mov eax, dword [ebp + 0x10]
push eax
call fcn.0042a790
add esp, 4
mov dword [ebp - 0x224], eax
jmp 0x41eab6
mov dword [ebp - 0x224], 0x7f
mov ecx, dword [ebp - 0x224]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp - 0x21c]
add eax, 0x170
push eax
call fcn.00414010
add esp, 0xc
mov ecx, dword [ebp - 0x21c]
add ecx, 0x158
push ecx
push 0
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
mov edx, dword [ebp - 0x21c]
mov dword [edx + 0x150], eax
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp - 0x21c]
mov edx, dword [ecx + 0x1c]
push edx
mov ecx, dword [ebp - 0x21c]
add ecx, 0x78
call fcn.004218d1
mov eax, dword [ebp - 0x21c]
mov ecx, dword [eax + 0x150]
mov dword [ebp - 0x218], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x214]
call fcn.0043de93
mov eax, dword [ebp - 0x218]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x14