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

Disassembly:
mov eax, 0x2009cd3f
call fcn.2007d394
sub esp, 0x14
push ebx
push esi
push edi
mov esi, ecx
xor ebx, ebx
push 0x3a8
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], ebx
call fcn.2008f9ce
pop ecx
mov dword [ebp - 0x18], eax
xor edi, edi
inc edi
mov dword [ebp - 4], edi
cmp eax, ebx
je 0x20021d9c
mov ecx, eax
call fcn.20021b53
jmp 0x20021d9e
xor eax, eax
mov byte [ebp - 4], bl
push eax
lea ecx, [ebp - 0x20]
call fcn.20021d2d
mov dword [ebp - 4], 2
cmp dword [ebp - 0x20], ebx
jne 0x20021dca
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x20]
push eax
call fcn.20020cb6
mov dword [ebp - 0x14], edi
jmp 0x200220d2
lea ecx, [esi + 4]
mov eax, dword [ecx + 4]
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.200217a3
mov esi, dword [ebp - 0x20]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esi + 0x1c], ebx
mov word [esi + 0x64], bx
mov word [esi + 0x66], bx
call edi
fld1
fstp dword [esi + 0x94]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x10]
fldz
mov dword [esi + 0x8c], eax
lea eax, [esi + 0xb4]
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x60], 0x2710
mov dword [esi + 0x84], ebx
mov dword [esi], ebx
mov byte [esi + 4], bl
mov byte [esi + 5], bl
mov dword [esi + 0x88], ebx
mov byte [esi + 0x68], bl
mov byte [esi + 0x69], bl
mov byte [esi + 0x80], bl
mov word [esi + 0x90], bx
mov dword [eax], ebx
mov word [eax + 4], bx
fstp dword [esi + 0xd8]
fldz
lea ecx, [esi + 0x28]
fstp dword [esi + 0xdc]
push 0x80
fldz
mov word [esi + 0xba], bx
fstp dword [esi + 0xe0]
mov byte [esi + 0xbc], bl
fldz
mov byte [esi + 0xbd], bl
mov byte [esi + 0xbe], 1
fstp dword [esi + 0xe4]
mov byte [esi + 0xbf], bl
mov byte [esi + 0xcc], 0xff
mov byte [esi + 0xcd], bl
mov dword [esi + 0xd0], ebx
mov dword [esi + 0xd4], ebx
mov dword [esi + 0xc4], ebx
mov dword [esi + 0xc8], ebx
mov dword [esi + 0x20], ebx
call fcn.2003ab2e
push ebx
lea ecx, [esi + 0x28]
call fcn.2003ac10
fldz
or word [esi + 0x1e8], 0xffff
fstp dword [esi + 0xec]
fldz
mov dword [esi + 0x24], ebx
fstp dword [esi + 0xf0]
mov word [esi + 0xe8], bx
mov word [esi + 0xea], bx
mov byte [esi + 0xf4], bl
mov byte [esi + 0xf5], bl
mov byte [esi + 0xf6], bl
mov byte [esi + 0xf7], bl
mov byte [esi + 0xf8], bl
mov byte [esi + 0xf9], bl
mov byte [esi + 0xfa], bl
mov byte [esi + 0xfb], bl
mov dword [esi + 0x108], ebx
mov byte [esi + 0xfc], bl
mov dword [esi + 0x100], ebx
call edi
mov dword [esi + 0x210], eax
mov al, byte [ebp + 0xc]
push 8
mov byte [esi + 0x1e4], al
lea eax, [esi + 0x1dc]
push ebx
push eax
mov byte [esi + 0x1e5], bl
mov byte [esi + 0x1e6], bl
mov byte [esi + 0x1e7], bl
call fcn.2007e690
add esp, 0xc
call edi
cmp dword [ebp + 0xc], ebx
mov ecx, dword [ebp - 0x10]
mov dword [esi + 0x208], eax
lea eax, [ebp - 0x20]
mov dword [esi + 0x20c], ebx
mov byte [esi + 0xc0], 3
mov dword [esi + 0x214], ebx
mov dword [esi + 0x218], ebx
mov dword [esi + 0x21c], ebx
push eax
je 0x20021fa1
add ecx, 0x10
jmp 0x20021fa4
add ecx, 0x18
call fcn.20020cef
mov eax, dword [ebp + 0xc]
neg eax
sbb eax, eax
and eax, 0xfffffffb
add eax, 6
mov dword [esi + 0x78], ebx
mov dword [esi + 0x7c], eax
mov dword [esi + 0x220], ebx
mov dword [esi + 0x248], ebx
mov dword [esi + 0x24c], ebx
mov dword [esi + 0x250], ebx
mov dword [esi + 0x254], ebx
call edi
mov edi, 0x200a4a9c
push edi
lea ecx, [esi + 0x288]
mov dword [esi + 0x258], eax
mov dword [esi + 0x25c], ebx
mov dword [esi + 0x260], ebx
mov dword [esi + 0x264], ebx
mov dword [esi + 0x268], ebx
mov dword [esi + 0x26c], ebx
mov dword [esi + 0x270], ebx
mov byte [esi + 0x274], bl
mov byte [esi + 0x275], bl
mov byte [esi + 0x81], bl
mov byte [esi + 0x276], bl
mov word [esi + 0x278], bx
mov dword [esi + 0x2a4], ebx
mov dword [esi + 0x2a8], ebx
mov dword [esi + 0x2ac], ebx
call fcn.20003a20
lea eax, [esi + 0x2b0]
mov dword [eax], ebx
mov dword [eax + 4], ebx
push edi
lea ecx, [esi + 0x118]
mov dword [esi + 0x37c], ebx
mov dword [esi + 0x10c], ebx
mov dword [esi + 0x110], ebx
mov dword [esi + 0x114], ebx
call fcn.20003a20
push edi
lea ecx, [esi + 0x134]
call fcn.20003a20
push edi
lea ecx, [esi + 0x150]
call fcn.20003a20
push edi
lea ecx, [esi + 0x16c]
call fcn.20003a20
push edi
lea ecx, [esi + 0x188]
call fcn.20003a20
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x20]
push eax
mov byte [esi + 0xfd], bl
mov dword [esi + 0x100], ebx
mov byte [esi + 0xfe], bl
mov dword [esi + 0x104], ebx
call fcn.20020cb6
mov dword [ebp - 0x14], 1
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x20]
call fcn.20001efb
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 8