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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x19
push 0
push 0
dec ecx
jne 0x419d09
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.0040461c
mov eax, dword [ebp - 8]
call fcn.0040461c
mov eax, dword [ebp - 0xc]
call fcn.0040461c
mov eax, dword [ebp + 0x1c]
call fcn.0040461c
mov eax, dword [ebp + 0x18]
call fcn.0040461c
mov eax, dword [ebp + 0x14]
call fcn.0040461c
xor eax, eax
push ebp
push 0x41a4e6
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x61], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x60]
mov edx, dword [ebp - 4]
call fcn.00404220
mov edx, dword [ebp - 0x60]
mov eax, 0x41a500
call fcn.0040bda8
mov ebx, eax
test ebx, ebx
jle 0x419dab
mov eax, dword [ebp - 0x60]
call fcn.0040442c
sub eax, 3
cmp ebx, eax
jne 0x419dab
lea eax, [ebp - 0x60]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x60]
call fcn.0040468c
mov dword [ebp - 0x24], 1
lea eax, [ebp - 0xab]
xor ecx, ecx
mov edx, 0x4a
call fcn.00402d2c
mov eax, dword [ebp + 8]
call fcn.00404188
mov eax, dword [ebp + 0x24]
mov byte [eax], 0
push 0
push 1
push 0
xor ecx, ecx
xor edx, edx
xor eax, eax
call dword [ebp + 0x20]
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
call fcn.00406f04
test al, al
je 0x41a363
lea eax, [ebp - 0xab]
xor ecx, ecx
mov edx, 0x4a
call fcn.00402d2c
lea ecx, [ebp - 0xab]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.004155ac
mov eax, dword [ebp - 0xa7]
xor edx, edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x24], 1
jne 0x419e50
mov eax, dword [ebp - 0xa3]
xor edx, edx
push edx
push eax
mov eax, dword [0x427da8]
mov edx, 0x41a510
call fcn.00404848
call fcn.00404d84
call fcn.004030b0
mov edx, dword [ebp - 0x65]
mov eax, dword [ebp - 4]
call fcn.004152fc
cmp eax, dword [ebp - 0x9b]
je 0x419e6e
cmp eax, 0x4d2
je 0x419e6e
xor eax, eax
jmp 0x419e70
mov al, 1
mov edx, dword [ebp + 0x24]
mov byte [edx], al
mov eax, dword [ebp + 0x24]
cmp byte [eax], 0
je 0x41a44e
mov edx, 0x40
mov eax, dword [ebp - 4]
call fcn.00406dc0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
call fcn.00413068
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x10]
xor eax, eax
call fcn.00415220
test al, al
je 0x419ed7
mov eax, dword [ebp - 0x10]
call fcn.00415534
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0
jne 0x419ec9
cmp dword [ebp - 0x38], 0
jbe 0x419ed7
jmp 0x419ecb
jle 0x419ed7
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
mov eax, dword [0x427da8]
mov edx, 0x41a530
call fcn.00404848
call fcn.00404d84
call fcn.004030b0
mov eax, dword [0x427ee0]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x9f]
jne 0x41a35b
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x10]
call fcn.00412f6c
cmp dword [ebp - 0x24], 1
jne 0x419f32
push 0
push 1
push 0
mov ecx, dword [ebp - 0xa3]
xor edx, edx
xor eax, eax
call dword [ebp + 0x20]
xor eax, eax
push ebp
push 0x419f52
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
call fcn.00406f38
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x419f98
xor eax, eax
call fcn.0040c07c
lea edx, [ebp - 0x14]
mov ecx, 4
mov eax, dword [ebp - 0x10]
call fcn.00406e3c
cmp dword [ebp - 0x14], 0
setg bl
mov eax, dword [ebp - 0x14]
cdq
xor eax, edx
sub eax, edx
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x14]
call fcn.004047b8
lea edx, [ebp - 0x48]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.00419b08
mov eax, dword [ebp - 0x14]
add eax, 4
cdq
add dword [ebp - 0x40], eax
adc dword [ebp - 0x3c], edx
inc dword [ebp - 0x18]
xor eax, eax
mov al, byte [ebp - 0xaa]
cmp eax, dword [ebp - 0x18]
jne 0x419ffd
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x20], edx
cmp eax, dword [ebp - 0x18]
jge 0x41a19a
test bl, bl
je 0x41a019
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, dword [ebp - 0x48]
call fcn.004102c4
jmp 0x41a024
lea eax, [ebp - 0x4c]
mov edx, dword [ebp - 0x48]
call fcn.00404220
mov edx, dword [ebp - 0x4c]
mov eax, 0x41a574
call fcn.00404770
mov ebx, eax
lea eax, [ebp - 0x48]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x4c]
call fcn.0040468c
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x4c]
call fcn.0040442c
mov ecx, eax
lea edx, [ebx + 1]
mov eax, dword [ebp - 0x4c]
call fcn.0040468c
cmp dword [ebp - 0x48], 0
je 0x41a19a
mov edx, dword [ebp - 0x48]
mov eax, 0x41a580
call fcn.00404770
test eax, eax
jle 0x41a086
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x48]
call fcn.004041dc
lea eax, [ebp - 0x50]
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.0040b650
lea eax, [ebp - 0x54]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x48]
call fcn.0040b650
mov edx, dword [ebp - 0x50]
mov eax, 0x41a580
call fcn.00404770
test eax, eax
jle 0x41a0e6
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x50]
call fcn.004041dc
lea eax, [ebp - 0x50]
push eax
mov edx, dword [ebp - 0x50]
mov eax, 0x41a580
call fcn.00404770
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x50]
call fcn.0040468c
push dword [ebp - 8]
push 0x41a58c
push dword [ebp - 0x50]
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.004044ec
mov eax, dword [ebp - 0x5c]
call fcn.00406f04
test al, al
jne 0x41a11c
push 0
push 1
push 0
xor ecx, ecx
xor edx, edx
mov eax, 1
call dword [ebp + 0x20]
mov eax, dword [ebp - 0x5c]
call fcn.00406f04
test al, al
push 0
push 1
xor edx, edx
mov eax, dword [ebp - 0x54]
call fcn.00406d5c
mov ecx, eax
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x5c]
call fcn.00413270
test al, al
jne 0x41a14b
inc dword [0x427c90]
test al, al
jne 0x41a19a
cmp dword [0x427c90], 1
jne 0x41a19a
push 0
push 0
push dword [ebp - 0x5c]
push 0x41a598
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x5c]
call fcn.00419ba0
push dword [ebp - 0xbc]
lea eax, [ebp - 0xb8]
mov edx, 3
call fcn.004044ec
mov edx, dword [ebp - 0xb8]
xor ecx, ecx
xor eax, eax
call fcn.0040c494
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x40]
sbb edx, dword [ebp - 0x3c]
cmp edx, 0
jne 0x41a1b2
cmp eax, 0x4a
jbe 0x41a1c1
jmp 0x41a1b4
jle 0x41a1c1
call fcn.00415074
test al, al
je 0x419f98
cmp dword [ebp - 0x24], 1
jne 0x41a35b
lea edx, [ebp - 0xc0]
mov eax, dword [ebp - 0xc]
call fcn.00407314
mov edx, dword [ebp - 0xc0]
lea eax, [ebp - 0xc]
call fcn.00404220
cmp dword [ebp - 0xc], 0
je 0x41a35b
mov cl, 1
mov edx, dword [ebp - 4]
mov eax, 0x41a5cc
call fcn.0040bf08
test al, al
jne 0x41a21b
mov cl, 1
mov edx, dword [ebp - 4]
mov eax, 0x41a5dc
call fcn.0040bf08
test al, al
je 0x41a35b
lea ecx, [ebp - 0xab]
mov edx, dword [ebp - 0x10]
xor eax, eax
call fcn.004155ac
push 0
push 0
xor edx, edx
mov eax, dword [ebp - 0x10]
call fcn.00412f6c
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
call fcn.004047b8
lea eax, [ebp - 0x48]
call fcn.00404684
mov edx, eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.00406e3c
xor eax, eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x48]
call fcn.00404684
lea edx, [eax + 0xfc]
lea eax, [ebp - 0x1c]
mov ecx, 4
call fcn.00402694
push dword [ebp - 0x93]
push dword [ebp - 0x97]
call fcn.00419a3c
push edx
push eax
call fcn.0040b4f8
mov dword [ebp - 0x97], eax
mov dword [ebp - 0x93], edx
mov byte [ebp - 0x66], 1
mov dword [ebp - 0x65], 0x4a
lea eax, [ebp - 0x4c]
mov edx, 0x4a
call fcn.004047b8
lea eax, [ebp - 0x4c]
call fcn.00404684
mov edx, eax
lea eax, [ebp - 0xab]
mov ecx, 0x4a
call fcn.00402694
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
call fcn.00404434
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.00406e9c
push eax
push dword [ebp - 8]
push 0x41a58c
push dword [ebp - 0xc]
lea eax, [ebp - 0xc4]
mov edx, 3
call fcn.004044ec
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x48]
pop ecx
call fcn.00413270
call sub.kernel32.dll_GetCurrentProcessId
xor edx, edx
push edx
push eax
mov eax, dword [0x427da8]
call fcn.00404d84
mov edx, 0x41a5f0
call fcn.00404848
push eax
push dword [ebp - 8]
push 0x41a58c
push dword [ebp - 0xc]
lea eax, [ebp - 0xc8]
mov edx, 3
call fcn.004044ec
mov edx, dword [ebp - 0xc8]
pop eax
call fcn.00404848
call fcn.004030b0
mov eax, dword [ebp - 0x10]
call fcn.00406e94
lea eax, [ebp - 0xab]
call fcn.00415044
test al, al
je 0x41a435
mov al, 1
call fcn.0040c21c
inc dword [ebp - 0x24]
push dword [ebp - 0x60]
push 0x41a608
lea ecx, [ebp - 0xcc]
mov edx, 3
mov eax, dword [ebp - 0x24]
call fcn.0040c9a8
push dword [ebp - 0xcc]
lea eax, [ebp - 4]
mov edx, 3
call fcn.004044ec
cmp byte [ebp + 0xc], 0
jne 0x41a3c0
mov eax, dword [ebp - 4]
call fcn.00406f04
test al, al
jne 0x41a423
mov eax, dword [ebp - 4]
call fcn.00414310
lea eax, [ebp - 0x44]
push eax
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0x24]
call fcn.00406c48
mov ecx, dword [ebp - 0xd0]
mov edx, 0x41a614
mov eax, dword [ebp + 0x1c]
call fcn.0040cda4
mov eax, dword [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp - 0x44]
xor eax, eax
call fcn.0040c654
mov byte [ebp - 0x61], al
xor edx, edx
mov eax, 0x1f4
call fcn.0040c0b4
mov eax, dword [ebp - 4]
call fcn.00406f04
test al, al
jne 0x41a423
cmp byte [ebp - 0x61], 0
jne 0x41a3c8
push 0
push 1
push 0
xor ecx, ecx
xor edx, edx
mov eax, 1
call dword [ebp + 0x20]
lea eax, [ebp - 0xab]
call fcn.00415044
test al, al
je 0x41a44e
cmp byte [ebp - 0x61], 0
jne 0x419de6
cmp byte [ebp - 0x61], 0
jne 0x41a45c
mov eax, dword [ebp + 8]
call fcn.00404188
mov eax, dword [0x427da8]
call fcn.004030b0
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [ebp - 0x28]
xor edx, edx
push edx
push eax
mov eax, dword [0x427da8]
mov edx, 0x41a628
call fcn.00404848
call fcn.00404d84
mov edx, 0x41a644
call fcn.00404848
call fcn.004030b0
xor edx, edx
mov eax, 0x1f4
call fcn.0040c0b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41a4ed
lea eax, [ebp - 0xd0]
mov edx, 9
call fcn.004041ac
lea eax, [ebp - 0x60]
mov edx, 8
call fcn.004041ac
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.004041ac
lea eax, [ebp + 0x14]
mov edx, 3
call fcn.004041ac
ret