Function at 0x41ec64
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 0x41ec6d
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.00404660
mov eax, dword [ebp - 8]
call fcn.00404660
mov eax, dword [ebp - 0xc]
call fcn.00404660
mov eax, dword [ebp + 0x1c]
call fcn.00404660
mov eax, dword [ebp + 0x18]
call fcn.00404660
mov eax, dword [ebp + 0x14]
call fcn.00404660
xor eax, eax
push ebp
push 0x41f458
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.00404264
mov edx, dword [ebp - 0x60]
mov eax, 0x41f470
call fcn.0040ef20
mov ebx, eax
test ebx, ebx
jle 0x41ed0f
mov eax, dword [ebp - 0x60]
call fcn.00404470
sub eax, 3
cmp ebx, eax
jne 0x41ed0f
lea eax, [ebp - 0x60]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x60]
call fcn.004046d0
mov dword [ebp - 0x24], 1
lea eax, [ebp - 0xab]
xor ecx, ecx
mov edx, 0x4a
call fcn.00402d70
mov eax, dword [ebp + 8]
call fcn.004041cc
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.00407418
test al, al
je 0x41f2cd
lea eax, [ebp - 0xab]
xor ecx, ecx
mov edx, 0x4a
call fcn.00402d70
lea ecx, [ebp - 0xab]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00419df8
mov eax, dword [ebp - 0xa7]
xor edx, edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x24], 1
jne 0x41edb4
mov eax, dword [ebp - 0xa3]
xor edx, edx
push edx
push eax
mov eax, dword [0x42adb4]
mov edx, 0x41f480
call fcn.0040488c
call fcn.00405014
call fcn.004030f4
mov edx, dword [ebp - 0x65]
mov eax, dword [ebp - 4]
call fcn.00419aac
mov edx, dword [ebp - 0x9b]
cmp eax, edx
je 0x41eddc
cmp eax, 0x4d2
je 0x41eddc
cmp edx, 0x4d2
je 0x41eddc
xor eax, eax
jmp 0x41edde
mov al, 1
mov edx, dword [ebp + 0x24]
mov byte [edx], al
mov eax, dword [ebp + 0x24]
cmp byte [eax], 0
je 0x41f3be
mov edx, 0x40
mov eax, dword [ebp - 4]
call fcn.004072d4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
call fcn.0040bd9c
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x10]
xor eax, eax
call fcn.004199d0
test al, al
je 0x41ee45
mov eax, dword [ebp - 0x10]
call fcn.00419d80
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0
jne 0x41ee37
cmp dword [ebp - 0x38], 0
jbe 0x41ee45
jmp 0x41ee39
jle 0x41ee45
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 [0x42adb4]
mov edx, 0x41f4a0
call fcn.0040488c
call fcn.00405014
call fcn.004030f4
mov eax, dword [0x42aef0]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x9f]
jne 0x41f2c5
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x10]
call fcn.0040bca0
cmp dword [ebp - 0x24], 1
jne 0x41eea0
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 0x41eec0
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
call fcn.0040744c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x41ef06
xor eax, eax
call fcn.0040f1f4
lea edx, [ebp - 0x14]
mov ecx, 4
mov eax, dword [ebp - 0x10]
call fcn.00407350
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.004047fc
lea edx, [ebp - 0x48]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.0041ea6c
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 0x41ef6b
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x20], edx
cmp eax, dword [ebp - 0x18]
jge 0x41f104
test bl, bl
je 0x41ef87
lea edx, [ebp - 0x4c]
xor ecx, ecx
mov eax, dword [ebp - 0x48]
call fcn.00416598
jmp 0x41ef92
lea eax, [ebp - 0x4c]
mov edx, dword [ebp - 0x48]
call fcn.00404264
mov edx, dword [ebp - 0x4c]
mov eax, 0x41f4e4
call fcn.004047b4
mov ebx, eax
lea eax, [ebp - 0x48]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x4c]
call fcn.004046d0
lea eax, [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x4c]
call fcn.00404470
mov ecx, eax
lea edx, [ebx + 1]
mov eax, dword [ebp - 0x4c]
call fcn.004046d0
cmp dword [ebp - 0x48], 0
je 0x41f104
mov edx, dword [ebp - 0x48]
mov eax, 0x41f4f0
call fcn.004047b4
test eax, eax
jle 0x41eff4
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x48]
call fcn.00404220
push 0
lea eax, [ebp - 0x50]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0x48]
mov eax, dword [0x413810]
call fcn.004138e0
push 0
lea eax, [ebp - 0x54]
push eax
mov ecx, 1
mov edx, dword [ebp - 0x48]
mov eax, dword [0x413810]
call fcn.004138e0
mov edx, dword [ebp - 0x50]
mov eax, 0x41f4f0
call fcn.004047b4
test eax, eax
jle 0x41f05e
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x50]
call fcn.00404220
lea eax, [ebp - 0x50]
push eax
mov edx, dword [ebp - 0x50]
mov eax, 0x41f4f0
call fcn.004047b4
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x50]
call fcn.004046d0
push dword [ebp - 8]
push 0x41f4fc
push dword [ebp - 0x50]
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00404530
mov eax, dword [ebp - 0x5c]
call fcn.00407418
test al, al
jne 0x41f094
push 0
push 1
push 0
xor ecx, ecx
xor edx, edx
mov eax, 1
call dword [ebp + 0x20]
push 0
push 1
xor edx, edx
mov eax, dword [ebp - 0x54]
call fcn.00407270
mov ecx, eax
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x5c]
call fcn.0040bfa4
test al, al
jne 0x41f104
inc dword [0x42acd8]
cmp dword [0x42acd8], 1
jne 0x41f104
push 0
push 0
push dword [ebp - 0x5c]
push 0x41f508
lea ecx, [ebp - 0xbc]
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x5c]
call fcn.0041eb04
push dword [ebp - 0xbc]
lea eax, [ebp - 0xb8]
mov edx, 3
call fcn.00404530
mov edx, dword [ebp - 0xb8]
xor ecx, ecx
xor eax, eax
call fcn.0040f63c
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x40]
sbb edx, dword [ebp - 0x3c]
cmp edx, 0
jne 0x41f11c
cmp eax, 0x4a
jbe 0x41f12b
jmp 0x41f11e
jle 0x41f12b
call fcn.00419824
test al, al
je 0x41ef06
cmp dword [ebp - 0x24], 1
jne 0x41f2c5
lea edx, [ebp - 0xc0]
mov eax, dword [ebp - 0xc]
call fcn.00407828
mov edx, dword [ebp - 0xc0]
lea eax, [ebp - 0xc]
call fcn.00404264
cmp dword [ebp - 0xc], 0
je 0x41f2c5
mov cl, 1
mov edx, dword [ebp - 4]
mov eax, 0x41f53c
call fcn.0040f080
test al, al
jne 0x41f185
mov cl, 1
mov edx, dword [ebp - 4]
mov eax, 0x41f54c
call fcn.0040f080
test al, al
je 0x41f2c5
lea ecx, [ebp - 0xab]
mov edx, dword [ebp - 0x10]
xor eax, eax
call fcn.00419df8
push 0
push 0
xor edx, edx
mov eax, dword [ebp - 0x10]
call fcn.0040bca0
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
call fcn.004047fc
lea eax, [ebp - 0x48]
call fcn.004046c8
mov edx, eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.00407350
xor eax, eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x48]
call fcn.004046c8
lea edx, [eax + 0xfc]
lea eax, [ebp - 0x1c]
mov ecx, 4
call fcn.004026b4
push dword [ebp - 0x93]
push dword [ebp - 0x97]
call fcn.0041e9a0
push edx
push eax
call fcn.0040e75c
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.004047fc
lea eax, [ebp - 0x4c]
call fcn.004046c8
mov edx, eax
lea eax, [ebp - 0xab]
mov ecx, 0x4a
call fcn.004026b4
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
call fcn.00404478
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.004073b0
push eax
push dword [ebp - 8]
push 0x41f4fc
push dword [ebp - 0xc]
lea eax, [ebp - 0xc4]
mov edx, 3
call fcn.00404530
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x48]
pop ecx
call fcn.0040bfa4
call sub.kernel32.dll_GetCurrentProcessId
xor edx, edx
push edx
push eax
mov eax, dword [0x42adb4]
call fcn.00405014
mov edx, 0x41f560
call fcn.0040488c
push eax
push dword [ebp - 8]
push 0x41f4fc
push dword [ebp - 0xc]
lea eax, [ebp - 0xc8]
mov edx, 3
call fcn.00404530
mov edx, dword [ebp - 0xc8]
pop eax
call fcn.0040488c
call fcn.004030f4
mov eax, dword [ebp - 0x10]
call fcn.004073a8
lea eax, [ebp - 0xab]
call fcn.004197f4
test al, al
je 0x41f3a5
mov al, 1
call fcn.0040f3b4
inc dword [ebp - 0x24]
push dword [ebp - 0x60]
push 0x41f578
lea ecx, [ebp - 0xcc]
mov edx, 3
mov eax, dword [ebp - 0x24]
call fcn.0040fc74
push dword [ebp - 0xcc]
lea eax, [ebp - 4]
mov edx, 3
call fcn.00404530
cmp byte [ebp + 0xc], 0
jne 0x41f32a
mov eax, dword [ebp - 4]
call fcn.00407418
test al, al
jne 0x41f393
mov eax, dword [ebp - 4]
call fcn.0040d178
push 0
push 0
lea eax, [ebp - 0x44]
push eax
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0x24]
call fcn.00407134
mov ecx, dword [ebp - 0xd0]
mov edx, 0x41f584
mov eax, dword [ebp + 0x1c]
call fcn.0041010c
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.0040f800
mov byte [ebp - 0x61], al
push 0
push 0x1f4
xor eax, eax
call fcn.0040f22c
mov eax, dword [ebp - 4]
call fcn.00407418
test al, al
jne 0x41f393
cmp byte [ebp - 0x61], 0
jne 0x41f332
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.004197f4
test al, al
je 0x41f3be
cmp byte [ebp - 0x61], 0
jne 0x41ed4a
cmp byte [ebp - 0x61], 0
jne 0x41f3cc
mov eax, dword [ebp + 8]
call fcn.004041cc
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [ebp - 0x28]
xor edx, edx
push edx
push eax
mov eax, dword [0x42adb4]
mov edx, 0x41f598
call fcn.0040488c
call fcn.00405014
mov edx, 0x41f5b4
call fcn.0040488c
call fcn.004030f4
mov eax, dword [0x42adb4]
call fcn.004030f4
push 0
push 0x1f4
xor eax, eax
call fcn.0040f22c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41f45f
lea eax, [ebp - 0xd0]
mov edx, 9
call fcn.004041f0
lea eax, [ebp - 0x60]
mov edx, 8
call fcn.004041f0
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.004041f0
lea eax, [ebp + 0x14]
mov edx, 3
call fcn.004041f0
ret