Function at 0x420379
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
xor ebx, ebx
test byte [0x48ae0e], 0x20
push edi
mov dword [ebp - 0xc], ecx
je 0x4203aa
push ebx
push ebx
push 0x44a
push dword [0x4892b8]
call fcn.0040b531
pop ecx
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push ebx
push 0x44a
push dword [0x48add4]
call esi
cmp byte [0x48add8], bl
mov edi, 0x60000
je 0x4203e9
cmp byte [0x48add9], bl
jne 0x4203e9
mov byte [0x48add9], 1
call fcn.0040b038
cmp eax, edi
jae 0x4203e9
call fcn.0040e4a1
mov eax, dword [0x48af24]
cmp eax, ebx
je 0x4203f7
cmp word [eax], bx
jne 0x420439
mov ecx, dword [ebp - 0xc]
push ebx
call fcn.0041105e
mov eax, dword [0x48af24]
cmp eax, ebx
je 0x42040e
cmp word [eax], bx
jne 0x420418
mov ecx, dword [ebp - 0xc]
push 0x64
call fcn.0040ac88
cmp byte [0x48adc8], bl
je 0x4203e9
cmp byte [0x48b200], bl
jne 0x4203e9
push ebx
push ebx
push 0x44b
push dword [0x48add4]
call esi
jmp 0x4203e9
mov esi, dword [sym.imp.KERNEL32.dll_SleepEx]
push 1
push 0xa
call esi
cmp byte [0x48add8], bl
je 0x42046a
cmp byte [0x48add9], bl
jne 0x42046a
mov byte [0x48add9], 1
call fcn.0040b038
cmp eax, edi
jae 0x42046a
call fcn.0040e4a1
push dword [0x48af24]
lea ecx, [ebp - 8]
call fcn.0042a183
mov eax, dword [ebp - 8]
call fcn.0041151d
push dword [ebp - 8]
call fcn.0040a97d
pop ecx
push 1
push 0xa
mov dword [ebp - 0x18], eax
call esi
mov eax, dword [ebp - 8]
cmp word [eax], bx
mov byte [ebp - 1], 2
je 0x420641
cmp byte [0x48adc8], bl
je 0x4204c5
cmp byte [0x48b200], bl
jne 0x4204c5
push ebx
push ebx
push 0x44b
push dword [0x48add4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 8]
cmp word [eax], bx
je 0x420511
push dword [ebp - 0x18]
call fcn.00409a28
mov edi, eax
push 8
push edi
push str.Explorer
call fcn.004257a3
add esp, 0x10
test al, al
je 0x4204fa
mov ax, word [edi + 0x10]
cmp ax, 0x2e
je 0x4204fc
cmp ax, bx
je 0x4204fc
xor edi, edi
cmp edi, ebx
je 0x420537
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.00410b32
add esp, 0x14
test eax, eax
je 0x420537
push 1
push 0x1f4
call esi
mov ecx, dword [ebp - 0xc]
push 0xffffffffffffffff
call fcn.0041105e
push dword [0x48af24]
lea ecx, [ebp - 8]
call fcn.0042a1b7
jmp 0x4204a2
push 0x209
lea ecx, [ebp - 0x10]
call fcn.0042465d
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x10]
lea eax, [ebp - 0x20]
push eax
push str.Wallpaper
push str.Control_PanelDesktop
push 0x80000001
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], 0x410
call fcn.0042548c
push ebx
push dword [ebp - 0x10]
call fcn.00402b26
add esp, 0x20
lea ecx, [ebp - 0x10]
call fcn.00424686
push ebx
push ebx
push 0x44a
push dword [0x48add4]
call dword [sym.imp.USER32.dll_SendMessageW]
call fcn.00451a91
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
push dword [ebp - 8]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x28], eax
call fcn.0042a183
push dword [0x48af24]
mov dword [ebp - 0x24], 0x24
call fcn.0040b500
test eax, eax
pop ecx
mov ecx, dword [ebp - 0xc]
push ebx
push ebx
push ebx
je 0x4205d6
push dword [ebp - 0x14]
call fcn.0041e84e
jmp 0x4205e3
lea eax, [ebp - 0x24]
push eax
push ecx
push dword [ebp - 0x14]
call fcn.00406b5b
cmp byte [ebp - 1], bl
jle 0x420600
dec byte [ebp - 1]
call edi
sub eax, dword [ebp - 0x28]
cmp eax, 0x7d0
jae 0x420600
push 1
push 0x1f4
call esi
mov ecx, dword [ebp - 0xc]
push ebx
call fcn.0041105e
mov eax, dword [0x48af24]
cmp eax, ebx
je 0x420634
cmp word [eax], bx
je 0x420634
push eax
lea ecx, [ebp - 8]
call fcn.0042a1b7
mov eax, dword [ebp - 8]
call fcn.0041151d
push dword [ebp - 8]
call fcn.0040a97d
pop ecx
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x14]
call fcn.00424686
jmp 0x4204a2
lea ecx, [ebp - 8]
call fcn.00424686
pop edi
pop esi
pop ebx
leave
ret 4