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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 0x44], ecx
mov byte [ebp - 0x40], 0xfc
mov byte [ebp - 0x3f], 0xcf
mov byte [ebp - 0x3e], 0x55
mov byte [ebp - 0x3d], 1
mov byte [ebp - 0x3c], 0
mov byte [ebp - 0x3b], 2
mov byte [ebp - 0x3a], 1
mov byte [ebp - 0x39], 0xcc
mov byte [ebp - 0x38], 0xcf
mov byte [ebp - 0x37], 0xfc
xor eax, eax
mov dword [ebp - 0x36], eax
mov dword [ebp - 0x32], eax
mov word [ebp - 0x2e], ax
mov byte [ebp - 0x2c], 0xa
mov byte [ebp - 0x18], 0
xor ecx, ecx
mov dword [ebp - 0x17], ecx
mov dword [ebp - 0x13], ecx
mov dword [ebp - 0xf], ecx
mov dword [ebp - 0xb], ecx
mov word [ebp - 7], cx
mov byte [ebp - 5], cl
mov byte [ebp - 0x20], 0
mov edx, dword [ebp + 8]
and edx, 0xff
cmp edx, 0x10
jge 0x42170d
mov eax, dword [ebp + 0xc]
and eax, 0xff
cmp eax, 0x10
jl 0x421714
xor al, al
jmp 0x421b25
mov ecx, dword [ebp + 8]
and ecx, 0xff
cmp ecx, 4
je 0x42174b
mov edx, dword [ebp + 8]
and edx, 0xff
cmp edx, 5
je 0x42174b
mov eax, dword [ebp + 0xc]
and eax, 0xff
cmp eax, 4
je 0x42174b
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 5
jne 0x421752
xor al, al
jmp 0x421b25
mov byte [ebp - 0x39], 0
xor edx, edx
mov dl, byte [0x43d770]
cmp edx, 2
jne 0x42184f
mov byte [ebp - 0x3a], 2
mov eax, dword [ebp + 8]
and eax, 0xff
cmp eax, 6
jne 0x421798
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 0xe
jne 0x421798
mov dl, byte [ebp - 0x3a]
or dl, 0x10
mov byte [ebp - 0x3a], dl
mov byte [ebp - 0x39], 0x58
jmp 0x42184a
mov eax, dword [ebp + 8]
and eax, 0xff
cmp eax, 3
jne 0x4217c5
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 8
jne 0x4217c5
mov dl, byte [ebp - 0x3a]
or dl, 0x20
mov byte [ebp - 0x3a], dl
mov byte [ebp - 0x39], 0x64
jmp 0x42184a
mov eax, dword [ebp + 8]
and eax, 0xff
cmp eax, 3
jne 0x4217ef
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 0xb
jne 0x4217ef
mov dl, byte [ebp - 0x3a]
or dl, 0x30
mov byte [ebp - 0x3a], dl
mov byte [ebp - 0x39], 0xc4
jmp 0x42184a
mov eax, dword [ebp + 8]
and eax, 0xff
cmp eax, 0xc
jne 0x421819
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 0xd
jne 0x421819
mov dl, byte [ebp - 0x3a]
or dl, 0x40
mov byte [ebp - 0x3a], dl
mov byte [ebp - 0x39], 0x88
jmp 0x42184a
mov eax, dword [ebp + 8]
and eax, 0xff
cmp eax, 1
jne 0x421843
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
cmp ecx, 9
jne 0x421843
mov dl, byte [ebp - 0x3a]
or dl, 0x50
mov byte [ebp - 0x3a], dl
mov byte [ebp - 0x39], 0xbc
jmp 0x42184a
xor al, al
jmp 0x421b25
jmp 0x421985
mov byte [ebp - 0x3a], 1
mov eax, dword [ebp + 8]
and eax, 0xff
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x48]
sub ecx, 1
mov dword [ebp - 0x48], ecx
cmp dword [ebp - 0x48], 0xe
ja case.0x421870.3
mov edx, dword [ebp - 0x48]
jmp dword [edx*4 + 0x421b2b]
mov byte [ebp - 0x39], 0xc
jmp 0x4218cc
mov byte [ebp - 0x39], 0x14
jmp 0x4218cc
mov byte [ebp - 0x39], 4
jmp 0x4218cc
mov byte [ebp - 0x39], 0x18
jmp 0x4218cc
mov byte [ebp - 0x39], 0x10
jmp 0x4218cc
mov byte [ebp - 0x39], 0x60
jmp 0x4218cc
mov byte [ebp - 0x39], 0xb0
jmp 0x4218cc
mov byte [ebp - 0x39], 0
jmp 0x4218cc
mov byte [ebp - 0x39], 0xc0
jmp 0x4218cc
mov byte [ebp - 0x39], 8
jmp 0x4218cc
mov byte [ebp - 0x39], 0x80
jmp 0x4218cc
mov byte [ebp - 0x39], 0x40
jmp 0x4218cc
mov byte [ebp - 0x39], 0x20
jmp 0x4218cc
xor al, al
jmp 0x421b25
mov eax, dword [ebp + 0xc]
and eax, 0xff
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, 1
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], 0xe
ja case.0x4218ed.3
mov edx, dword [ebp - 0x4c]
jmp dword [edx*4 + 0x421b67]
mov al, byte [ebp - 0x39]
or al, 0xc
mov byte [ebp - 0x39], al
jmp 0x421985
mov cl, byte [ebp - 0x39]
or cl, 0x14
mov byte [ebp - 0x39], cl
jmp 0x421985
mov dl, byte [ebp - 0x39]
or dl, 4
mov byte [ebp - 0x39], dl
jmp 0x421985
mov al, byte [ebp - 0x39]
or al, 0x18
mov byte [ebp - 0x39], al
jmp 0x421985
mov cl, byte [ebp - 0x39]
or cl, 0x10
mov byte [ebp - 0x39], cl
jmp 0x421985
mov dl, byte [ebp - 0x39]
or dl, 0x60
mov byte [ebp - 0x39], dl
jmp 0x421985
mov al, byte [ebp - 0x39]
or al, 0xb0
mov byte [ebp - 0x39], al
jmp 0x421985
mov cl, byte [ebp - 0x39]
mov byte [ebp - 0x39], cl
jmp 0x421985
mov dl, byte [ebp - 0x39]
or dl, 0xc0
mov byte [ebp - 0x39], dl
jmp 0x421985
mov al, byte [ebp - 0x39]
or al, 8
mov byte [ebp - 0x39], al
jmp 0x421985
mov cl, byte [ebp - 0x39]
or cl, 0x80
mov byte [ebp - 0x39], cl
jmp 0x421985
mov dl, byte [ebp - 0x39]
or dl, 0x40
mov byte [ebp - 0x39], dl
jmp 0x421985
mov al, byte [ebp - 0x39]
or al, 0x20
mov byte [ebp - 0x39], al
jmp 0x421985
xor al, al
jmp 0x421b25
mov ecx, dword [ebp - 0x2c]
and ecx, 0xff
push ecx
lea edx, [ebp - 0x40]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.0041e3eb
and eax, 0xff
test eax, eax
jne 0x4219ab
xor al, al
jmp 0x421b25
mov byte [ebp - 0x28], 0
mov word [ebp - 4], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1c], eax
mov eax, 1
test eax, eax
je 0x421a35
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
cmp ecx, 0x3e8
jb 0x4219ed
xor al, al
jmp 0x421b25
push 1
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.0041e45f
and eax, 0xff
test eax, eax
jne 0x421a06
jmp 0x4219be
mov eax, dword [ebp - 4]
and eax, 0xffff
shl eax, 8
mov ecx, dword [ebp - 0x20]
and ecx, 0xff
or eax, ecx
mov word [ebp - 4], ax
mov edx, dword [ebp - 4]
and edx, 0xffff
cmp edx, 0xfccf
jne 0x421a33
jmp 0x421a35
jmp 0x4219be
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1c], eax
mov eax, 1
test eax, eax
je 0x421ae4
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
cmp ecx, 0x3e8
jbe 0x421a71
xor al, al
jmp 0x421b25
push 1
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.0041e45f
and eax, 0xff
test eax, eax
jne 0x421a8a
jmp 0x421a3e
mov eax, dword [ebp - 0x28]
and eax, 0xff
mov cl, byte [ebp - 0x20]
mov byte [ebp + eax - 0x18], cl
mov dl, byte [ebp - 0x28]
add dl, 1
mov byte [ebp - 0x28], dl
mov eax, dword [ebp - 0x28]
and eax, 0xff
cmp eax, 0x14
jl 0x421ab3
xor al, al
jmp 0x421b25
mov ecx, dword [ebp - 4]
and ecx, 0xffff
shl ecx, 8
mov edx, dword [ebp - 0x20]
and edx, 0xff
or ecx, edx
mov word [ebp - 4], cx
mov eax, dword [ebp - 4]
and eax, 0xffff
cmp eax, 0xcffc
jne 0x421adf
jmp 0x421ae4
jmp 0x421a3e
mov ecx, dword [ebp - 0x18]
and ecx, 0xff
cmp ecx, 0x80
jne 0x421b03
mov edx, dword [ebp - 0x17]
and edx, 0xff
cmp edx, 1
je 0x421b07
xor al, al
jmp 0x421b25
mov eax, dword [ebp - 0x16]
and eax, 0xff
test eax, eax
je 0x421b23
mov cl, byte [ebp - 0x16]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.0041fb94
xor al, al
jmp 0x421b25
mov al, 1
mov esp, ebp
pop ebp
ret 8