Function at 0x461524
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x524c97
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x30
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x2c], 0
lea ecx, [ebp - 0x14]
call fcn.004046f0
mov dword [ebp - 4], 0
mov eax, dword [0x56c3b4]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x2b8], 0
mov edx, dword [ebp - 0x3c]
mov dword [edx + 0xf58], 0
push 0x5fd
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0xaf0], 0
jne 0x4615a3
push 0x55bc38
mov ecx, dword [ebp - 0x18]
call fcn.0050c36b
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x3c]
cmp dword [ecx + 0xaf0], 0
je 0x4616dc
mov dword [0x56cc5c], 0
mov edx, dword [ebp - 0x3c]
mov dword [edx + 0xaf0], 0
push 0x479
mov ecx, dword [ebp - 0x3c]
call fcn.00404750
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x2b8], 0
je 0x46162e
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x2b8]
push edx
push 0x55bc50
lea eax, [ebp - 0x14]
push eax
call fcn.00502a32
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00404710
push eax
push 0x5fd
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov ecx, eax
call fcn.0050c36b
push 0x996
mov ecx, dword [ebp - 0x3c]
call fcn.00404750
mov ecx, dword [ebp - 0x3c]
cmp dword [ecx + 0xaf4], 0
je 0x461654
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x46163b
mov dword [0x56c114], 1
mov ecx, dword [ebp - 0x3c]
call fcn.0046318c
push 0
push 1
mov ecx, dword [ebp - 0x3c]
call fcn.0047956c
push 0x790
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov dword [ebp - 0x30], eax
push str.Start_n_r_Space_Key_
mov ecx, dword [ebp - 0x30]
call fcn.0050c36b
push 0x54d
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov dword [ebp - 0x30], eax
push 0x55bc6c
mov ecx, dword [ebp - 0x30]
call fcn.0050c36b
push 0
push 3
mov edx, dword [ebp - 0x3c]
add edx, 0xf2c
push edx
mov ecx, dword [ebp - 0x3c]
add ecx, 0xd4
call fcn.0047daf0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
cmp dword [0x56cc5c], 0
je 0x46170d
push 0
push 0x56d2b0
push str.Thread_is_running
mov ecx, dword [ebp - 0x3c]
call fcn.0050a80e
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov dword [ebp - 0x28], 0
jmp 0x46171f
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x11
jge 0x461747
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
cmp dword [edx + ecx*4 + 0x3d40], 0
je 0x461745
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + eax*4 + 0x3d40]
mov byte [edx], 0xfe
jmp 0x461716
cmp dword [0x56c220], 0
je 0x461778
mov dword [0x56cc5c], 1
push 1
mov ecx, dword [ebp - 0x3c]
call fcn.00479632
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x14fc], 0
je 0x4617ac
mov dword [0x56cc5c], 1
push 3
mov ecx, dword [ebp - 0x3c]
call fcn.00479632
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov ecx, dword [ebp - 0x3c]
cmp dword [ecx + 0x14f0], 0
je 0x4617e0
mov dword [0x56cc5c], 1
push 2
mov ecx, dword [ebp - 0x3c]
call fcn.00479632
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov ecx, dword [ebp - 0x3c]
call fcn.00460d16
test eax, eax
jne 0x461800
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov edx, dword [ebp - 0x3c]
add edx, 0x8e4
push edx
push 0
push str.SNRULE
push 0x55bc94
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xf24], eax
mov edx, dword [ebp - 0x3c]
add edx, 0x8e4
push edx
push 0
push str.AUTODATEADJUST
push 0x55bcb0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xf28], eax
push 0x15
push 0
mov edx, dword [ebp - 0x3c]
add edx, 0xf41
push edx
call fcn.004e8440
add esp, 0xc
cmp dword [0x56ce74], 0
je 0x461890
mov eax, dword [ebp - 0x3c]
add eax, 0x8e4
push eax
push 0x15
mov ecx, dword [ebp - 0x3c]
add ecx, 0xf41
push ecx
push 0
push str.SERIALMASK
push 0x55bcc8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x3c]
movsx eax, byte [edx + 0xf41]
test eax, eax
jne 0x4618c6
mov ecx, dword [ebp - 0x3c]
add ecx, 0x8e4
push ecx
push 0x15
mov edx, dword [ebp - 0x3c]
add edx, 0xf41
push edx
push 0
push str.MASKSN
push 0x55bcd8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0xf28], 0
je 0x46196a
mov ecx, dword [ebp - 0x10]
call fcn.0041f5dd
mov ecx, dword [ebp - 0x3c]
add ecx, 0x8e4
push ecx
mov edx, dword [ebp - 0x10]
add edx, 0x5c
push edx
push 0x55bce4
push 0x55bcec
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [ebp - 0x3c]
add eax, 0x8e4
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x71
push ecx
push 0x55bcf8
push 0x55bd00
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
cmp dword [0x56ce74], 0
je 0x46196a
mov edx, dword [ebp - 0x3c]
add edx, 0x8e4
push edx
mov eax, dword [ebp - 0x10]
add eax, 0x5c
push eax
push 0x55bd0c
push 0x55bd14
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov ecx, dword [ebp - 0x3c]
add ecx, 0x8e4
push ecx
mov edx, dword [ebp - 0x10]
add edx, 0x71
push edx
push 0x55bd1c
push 0x55bd28
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x15
push 0
mov eax, dword [ebp - 0x3c]
add eax, 0xf2c
push eax
call fcn.004e8440
add esp, 0xc
push 0x15
mov ecx, dword [ebp - 0x10]
add ecx, 0x5c
push ecx
mov edx, dword [ebp - 0x3c]
add edx, 0xf2c
push edx
call fcn.004e8ae0
add esp, 0xc
mov eax, dword [ebp - 0x3c]
add eax, 0x8e4
push eax
push 0
push str.SNLEN
push 0x55bd38
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xf5c], eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + 0xf5c]
add eax, 0xc
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xf5c], eax
mov edx, dword [ebp - 0x3c]
mov dword [edx + 0xf60], 0
mov dword [ebp - 0x28], 0
jmp 0x4619f2
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0xf5c]
add edx, 1
cmp dword [ebp - 0x28], edx
jge 0x461a2c
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0xf41]
cmp ecx, 0x23
jne 0x461a2a
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + 0xf60]
add eax, 1
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xf60], eax
jmp 0x4619e9
mov edx, dword [ebp - 0x3c]
cmp dword [edx + 0x14f8], 0
je 0x461a98
mov dword [0x56cc5c], 1
push 0xa
push 0
lea eax, [ebp - 0x24]
push eax
call fcn.004e8440
add esp, 0xc
push 0xa
lea ecx, [ebp - 0x24]
push ecx
push 0x898
mov ecx, dword [ebp - 0x3c]
call fcn.0050c15e
lea edx, [ebp - 0x24]
push edx
call fcn.004e8897
add esp, 4
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x14f4], eax
push 4
mov ecx, dword [ebp - 0x3c]
call fcn.00479632
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
push 0
push 0x3e8
push 0x479
mov ecx, dword [ebp - 0x3c]
call fcn.00404720
mov edx, dword [ebp - 0x3c]
cmp dword [edx + 0xaec], 0
je 0x461d5c
mov dword [0x56cc5c], 1
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0x21c], 0xffff
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x220], 0
mov ecx, dword [ebp - 0x3c]
call fcn.00478554
mov edx, dword [ebp - 0x3c]
xor eax, eax
mov al, byte [edx + 0x118]
test eax, eax
je 0x461b30
push 6
push 0
lea ecx, [ebp - 0x38]
push ecx
call fcn.004e8440
add esp, 0xc
mov byte [ebp - 0x38], pe_nt_image_headers32
mov byte [ebp - 0x37], 0x50
mov byte [ebp - 0x36], 1
mov byte [ebp - 0x35], 0
mov byte [ebp - 0x34], 0
lea edx, [ebp - 0x38]
push edx
mov eax, dword [ebp - 0x3c]
add eax, 0x119
push eax
call fcn.004b8484
add esp, 8
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xaf0], 1
push 1
push 0
mov ecx, dword [ebp - 0x3c]
call fcn.0047956c
push 0x790
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov dword [ebp - 0x30], eax
push 0x55bd44
mov ecx, dword [ebp - 0x30]
call fcn.0050c36b
push 0x54d
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov dword [ebp - 0x30], eax
push 0x56d2b4
mov ecx, dword [ebp - 0x30]
call fcn.0050c36b
mov ecx, dword [ebp - 0x3c]
call fcn.00461e36
push 6
push 0
push 0x56ccf0
call fcn.004e8440
add esp, 0xc
push 0x44
push 0
mov edx, dword [ebp - 0x3c]
add edx, 0xb00
push edx
call fcn.004e8440
add esp, 0xc
push 0x44
push 0
mov eax, dword [ebp - 0x3c]
add eax, 0xb44
push eax
call fcn.004e8440
add esp, 0xc
push 0x11
push 0xff
mov ecx, dword [ebp - 0x3c]
add ecx, 0xb88
push ecx
call fcn.004e8440
add esp, 0xc
mov dword [ebp - 0x28], 0
jmp 0x461bf2
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x11
jge 0x461c99
mov eax, dword [ebp - 0x28]
imul eax, eax, 0x35
mov dword [eax + 0x56cf0c], 0
mov ecx, dword [ebp - 0x28]
imul ecx, ecx, 0x35
mov edx, dword [ebp - 0x3c]
mov dword [ecx + 0x56cf39], edx
mov eax, dword [ebp - 0x28]
imul eax, eax, 0x35
mov dword [eax + 0x56cf10], 0
mov ecx, dword [ebp - 0x28]
imul ecx, ecx, 0x35
mov dword [ecx + 0x56cf1c], 0
mov edx, dword [ebp - 0x28]
imul edx, edx, 0x35
mov dword [edx + 0x56cf20], 0
mov eax, dword [ebp - 0x28]
imul eax, eax, 0x35
mov dword [eax + 0x56cf18], 0
push 0x15
push 0
mov ecx, dword [ebp - 0x28]
imul ecx, ecx, 0x35
add ecx, 0x56cf24
push ecx
call fcn.004e8440
add esp, 0xc
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
cmp dword [eax + edx*4 + 0x3d40], 0
je 0x461c94
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx + ecx*4 + 0x3d40]
mov byte [eax], 0xfe
jmp 0x461be9
cmp dword [0x56ce30], 0
je 0x461cfd
mov dword [ebp - 0x28], 1
jmp 0x461cb4
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], 0x11
jge 0x461cfd
mov edx, dword [ebp - 0x28]
add edx, 0x608
push edx
mov ecx, dword [ebp - 0x3c]
call fcn.0050c0d4
mov ecx, eax
call fcn.00406530
test eax, eax
je 0x461cea
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + eax*4 + 0x270], 1
jmp 0x461cfb
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
mov dword [eax + edx*4 + 0x270], 0
jmp 0x461cab
mov dword [0x56c114], 0
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0xaf4], 1
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x3c]
push edx
push 0x463043
call fcn.0050d655
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0xafc], 0
push 0
push 0x3e8
push 0x996
mov ecx, dword [ebp - 0x3c]
call fcn.00404720
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
jmp 0x461d7d
mov dword [0x56cc5c], 1
mov ecx, dword [ebp - 0x3c]
call fcn.00478f6a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0050ce61
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret