Function at 0x40560a
Capabilities:
Check for time delay via gettickcount
Create process on windows
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc5c
push ebx
push esi
lea eax, [ebp - 0xc5c]
push edi
push eax
push str.INSTALL.EXE
push dword [0x412fa8]
call fcn.00403f0d
cmp dword [0x412b2c], 0
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0xb57]
push eax
lea eax, [ebp - 0x520]
push eax
je 0x40565f
call ebx
lea eax, [ebp - 0x520]
push 0x40f3dc
push eax
call fcn.0040706a
jmp 0x405661
call ebx
lea eax, [ebp - 0x520]
push eax
lea eax, [ebp - 0x830]
push dword [ebp + 8]
push eax
call fcn.00406e97
lea eax, [ebp - 0x830]
push eax
call fcn.00406d7c
push dword [0x412f90]
lea eax, [ebp - 0x418]
push eax
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, 0x40f17c
lea eax, [ebp - 0x418]
push edi
push eax
call esi
cmp dword [0x412b3c], 0
je 0x4056be
lea eax, [ebp - 0x418]
push str.__z1
push eax
call esi
cmp dword [0x4130cc], 0
je 0x4056ce
push str.__cx
jmp 0x4056d3
push 0x40f3c8
lea eax, [ebp - 0x418]
push eax
call esi
lea eax, [ebp - 0x418]
push 0x40f3c4
push eax
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x108]
push eax
call ebx
lea eax, [ebp - 0x108]
push eax
call fcn.00406d7c
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x418]
push eax
call esi
lea eax, [ebp - 0x418]
push edi
push eax
call esi
lea eax, [ebp - 0x418]
push str.__x1_
push eax
call esi
push dword [0x412f98]
lea eax, [ebp - 0x418]
push eax
call esi
lea eax, [ebp - 0x418]
push 0x40f3b8
push eax
call esi
push dword [0x4130f0]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [ebp - 0x108]
push str.__q1_04x
push eax
call edi
add esp, 0xc
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x418]
push eax
call esi
cmp dword [0x412b50], 0
je 0x40580c
cmp dword [0x412b54], 0
jne 0x4057ac
lea eax, [ebp - 0x418]
push 0x40f3a8
push eax
call esi
mov eax, dword [0x4130e4]
cmp byte [eax], 0
je 0x4057ac
push eax
lea eax, [ebp - 0x418]
push eax
call esi
cmp dword [0x412b58], 0
jne 0x4057dc
mov eax, dword [0x4130ec]
cmp byte [eax], 0
je 0x4057dc
lea eax, [ebp - 0x418]
push str.__m1
push eax
call esi
push dword [0x4130ec]
lea eax, [ebp - 0x418]
push eax
call esi
cmp dword [0x412b5c], 0
jne 0x40580c
mov eax, dword [0x4130d0]
cmp byte [eax], 0
je 0x40580c
lea eax, [ebp - 0x418]
push str.__m2
push eax
call esi
push dword [0x4130d0]
lea eax, [ebp - 0x418]
push eax
call esi
lea eax, [ebp - 0x418]
push eax
call fcn.004063d1
pop ecx
lea eax, [ebp - 0x418]
push eax
push dword [ebp + 8]
call fcn.00406c35
pop ecx
lea eax, [ebp - 0xa40]
pop ecx
push eax
call fcn.0040670b
pop ecx
lea eax, [ebp - 0x938]
push eax
call fcn.0040686a
cmp dword [0x412b2c], 0
pop ecx
lea eax, [ebp - 0x830]
push eax
je 0x40586d
push dword [0x4130dc]
lea eax, [ebp - 0x108]
push str._s__s
push eax
call edi
add esp, 0x10
jmp 0x405876
lea eax, [ebp - 0x108]
push eax
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
lea eax, [ebp - 0x108]
push 1
push eax
call esi
mov edi, eax
cmp edi, 0x20
jae 0x4058ed
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
lea ebx, [eax + 0x7d0]
call esi
cmp eax, ebx
jb 0x40589c
xor ebx, ebx
cmp edi, ebx
push ebx
jne 0x4058b0
push 0x1b9c
jmp 0x4058b5
push 0x1b96
call fcn.00405c0b
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
pop ecx
pop ecx
lea eax, [ebp - 0xa40]
push eax
call esi
lea eax, [ebp - 0x938]
push eax
call esi
cmp dword [ebp + 0xc], ebx
je 0x4058e9
push dword [0x412b2c]
push dword [ebp + 8]
call fcn.004064b5
pop ecx
pop ecx
xor eax, eax
jmp 0x405943
cmp dword [0x4130d8], 0
jne 0x405940
push dword [0x4130e8]
lea eax, [ebp - 0x830]
push dword [0x412f98]
push eax
call fcn.00406e97
lea eax, [ebp - 0x830]
push eax
call fcn.00406d45
test eax, eax
je 0x40592b
lea eax, [ebp - 0x830]
push 1
push eax
call esi
jmp 0x405940
cmp dword [0x40f18c], 0
je 0x405940
push dword [0x4130d4]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 1
pop eax
pop edi
pop esi
pop ebx
leave
ret