Function at 0x41af70
Capabilities:
Accept command line arguments
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4bc
mov eax, dword [0x459020]
xor eax, esp
mov dword [esp + 0x4b8], eax
mov edx, dword [ebp + 0x10]
mov ecx, edx
push ebx
push esi
push edi
mov dword [esp + 0x4ac], 0
lea esi, [ecx + 2]
mov dword [esp + 0x4bc], 0
mov dword [esp + 0x4c0], 7
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41afb6
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x4b4]
call fcn.00417b70
mov edx, 0x4b
lea ecx, [esp + 0x494]
call fcn.00412330
push ecx
lea eax, [esp + 0x498]
push eax
lea ecx, [esp + 0x4b4]
call fcn.0041b7c0
cmp eax, 0xffffffff
je 0x41b0a2
xorps xmm0, xmm0
mov dword [esp + 0x3e4], 0
lea ecx, [esp + 0x3d4]
mov dword [esp + 0x3e8], 0
movups xmmword [esp + 0x3d4], xmm0
call fcn.00420700
mov edx, dword [esp + 0x3e0]
test edx, edx
je 0x41b08f
mov ecx, dword [esp + 0x3e8]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x41b064
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6e2
push ecx
push edx
call fcn.00423b44
add esp, 8
mov dword [esp + 0x3e0], 0
mov dword [esp + 0x3e4], 0
mov dword [esp + 0x3e8], 0
lea ecx, [esp + 0x3d4]
call fcn.0041b760
xor esi, esi
jmp 0x41b629
lea eax, [esp + 0x3ec]
mov dword [esp + 0x3ec], 0
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov edx, 0x4c
lea ecx, [esp + 0x410]
mov ebx, eax
call fcn.00412330
xor esi, esi
cmp dword [esp + 0x3ec], esi
jle 0x41b1aa
nop dword [eax]
nop dword [eax + eax]
mov edx, dword [ebx + esi*4]
mov ecx, edx
mov dword [esp + 0x3d4], 0
mov dword [esp + 0x3e4], 0
mov dword [esp + 0x3e8], 7
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41b120
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x3dc]
call fcn.00417b70
push ecx
lea eax, [esp + 0x414]
push eax
lea ecx, [esp + 0x3dc]
call fcn.0041b7c0
test eax, eax
je 0x41b358
mov edx, dword [esp + 0x3e8]
cmp edx, 8
jb 0x41b19c
mov ecx, dword [esp + 0x3d4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b192
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6e2
push edx
push ecx
call fcn.00423b44
add esp, 8
inc esi
cmp esi, dword [esp + 0x3ec]
jl 0x41b0f0
xor eax, eax
lea ecx, [esp + 0x3f8]
xor edx, edx
mov word [esp + 0x45e], ax
mov word [esp + 0x465], ax
mov byte [esp + 0x467], al
mov word [esp + 0x485], ax
mov byte [esp + 0x487], al
call fcn.00412330
cmp dword [esp + 0x40c], 8
lea ecx, [esp + 0x3f8]
mov eax, 0x4537b8
mov dword [esp + 0x450], 0
cmovae ecx, dword [esp + 0x3f8]
xorps xmm0, xmm0
test ecx, ecx
movq qword [esp + 0x448], xmm0
movups xmmword [esp + 0x438], xmm0
cmovne eax, ecx
mov dword [esp + 0x430], 0
mov dword [esp + 0x42c], eax
xor eax, eax
push eax
push eax
push 1
push eax
mov dword [esp + 0x444], 0
mov dword [esp + 0x464], 0
mov dword [esp + 0x448], 0x110
mov dword [esp + 0x44c], 2
mov dword [esp + 0x450], 0x185
mov dword [esp + 0x454], 0
mov dword [esp + 0x458], 0
mov dword [esp + 0x45c], 0
mov dword [esp + 0x460], 0
mov dword [esp + 0x468], 0
mov word [esp + 0x46c], ax
mov dword [esp + 0x438], 0x4537c0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
xorps xmm0, xmm0
mov dword [esp + 0x460], eax
mov byte [esp + 0x464], 0
movups xmmword [esp + 0x468], xmm0
mov dword [esp + 0x478], 0
mov dword [esp + 0x47c], 0
mov dword [esp + 0x480], 0
mov byte [esp + 0x484], 0
mov dword [esp + 0x488], 0
call fcn.0041dd70
mov edx, dword [esp + 0x40c]
cmp edx, 8
jb 0x41b570
mov ecx, dword [esp + 0x3f8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b566
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6e7
jmp 0x41b566
mov eax, dword [esp + 0x3e4]
lea ecx, [esp + 0x3d4]
mov edx, dword [esp + 0x420]
cmp eax, edx
cmovb edx, eax
cmp dword [esp + 0x3e8], 8
cmovae ecx, dword [esp + 0x3d4]
sub eax, edx
mov dword [esp + 0x3e4], eax
lea eax, [eax*2 + 2]
push eax
lea eax, [ecx + edx*2]
push eax
push ecx
call fcn.00425460
add esp, 0xc
lea ecx, [esp + 0x3f4]
cmp dword [esp + 0x3e8], 8
lea eax, [esp + 0x3d4]
cmovae eax, dword [esp + 0x3d4]
push ecx
push 0x453794
push eax
call fcn.0041b940
add esp, 0xc
cmp eax, 1
jne 0x41b519
mov ebx, dword [esp + 0x3f4]
lea edx, [eax + 0x21]
lea ecx, [esp + 0x3f8]
lea esi, [eax + 1]
call fcn.00412330
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0xc], eax
nop dword [eax]
xor edi, edi
nop dword [eax]
nop word [eax + eax]
cmp dword [esp + 0x40c], 8
lea eax, [esp + 0x3f8]
push 0
cmovae eax, dword [esp + 0x3fc]
push eax
push edi
push 0
call dword [sym.imp.USER32.dll_FindWindowExW]
mov edi, eax
test edi, edi
je 0x41b4b0
lea eax, [esp + 0x3f0]
mov dword [esp + 0x3f0], 0
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
cmp dword [esp + 0x3f0], ebx
jne 0x41b410
push 0x3b0
lea eax, [esp + 0x20]
push 0
push eax
call fcn.004259e0
add esp, 0xc
mov dword [esp + 0x10], 0x3bc
lea eax, [esp + 0x10]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], 1
push eax
push 2
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
cmp eax, 1
jne 0x41b49d
xor esi, esi
jmp 0x41b410
cmp esi, 2
jne 0x41b410
mov esi, 1
jmp 0x41b410
test esi, esi
je 0x41b4d5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esp + 0xc]
cmp eax, 0x2bf20
ja 0x41b4d5
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x41b400
mov edx, dword [esp + 0x40c]
cmp edx, 8
jb 0x41b51e
mov ecx, dword [esp + 0x3f8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b50d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6ec
push edx
push ecx
call fcn.00423b44
add esp, 8
jmp 0x41b51e
mov esi, 3
mov edx, dword [esp + 0x3e8]
cmp edx, 8
jb 0x41b5c7
mov ecx, dword [esp + 0x3d4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b55a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6f1
push edx
push ecx
call fcn.00423b44
add esp, 8
jmp 0x41b5c7
push edx
push ecx
call fcn.00423b44
add esp, 8
lea eax, [esp + 0x428]
mov dword [esp + 0x3d8], 0x41d810
mov dword [0x45b904], eax
mov eax, dword [esp + 0x42c]
mov dword [esp + 0x3d4], eax
lea eax, [esp + 0x3d4]
push eax
mov dword [esp + 0x3e0], 0
mov dword [esp + 0x3e4], 0
call dword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherW]
lea ecx, [esp + 0x468]
xor esi, esi
call fcn.0041b700
mov edx, dword [esp + 0x424]
cmp edx, 8
jb 0x41b609
mov ecx, dword [esp + 0x410]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b5ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6f6
push edx
push ecx
call fcn.00423b44
add esp, 8
xor eax, eax
mov dword [esp + 0x420], 0
mov dword [esp + 0x424], 7
mov word [esp + 0x410], ax
mov edx, dword [esp + 0x4a8]
cmp edx, 8
jb 0x41b66b
mov ecx, dword [esp + 0x494]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b661
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6f6
push edx
push ecx
call fcn.00423b44
add esp, 8
mov edx, dword [esp + 0x4c0]
xor eax, eax
mov dword [esp + 0x4a4], 0
mov dword [esp + 0x4a8], 7
mov word [esp + 0x494], ax
cmp edx, 8
jb 0x41b6c9
mov ecx, dword [esp + 0x4ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41b6bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41b6f6
push edx
push ecx
call fcn.00423b44
add esp, 8
mov ecx, dword [esp + 0x4c4]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00423b13
mov esp, ebp
pop ebp
ret 0x10
call fcn.0042823f
call fcn.0042823f
call fcn.0042823f
call fcn.0042823f
call fcn.0042823f
int3