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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe70
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov byte [ebp - 1], 0
call sub.KERNEL32.dll_GetTickCount
mov dword [ebp - 8], eax
xor ebx, ebx
mov byte [ebp - 9], 0
mov dword [ebp - 0x18], 0x402d62
mov dword [ebp - 0x14], 0x40f4a5
push 0xb0610b
lea eax, [ebp - 0x18]
push eax
call fcn.0040208a
add esp, 8
xor eax, eax
mov al, byte [edi + 1]
cdq
push edx
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00402141
add esp, 0xc
push dword [0x442074]
lea eax, [ebp - 0x18]
push eax
call fcn.00402599
add esp, 8
push edi
call fcn.0041664b
pop ecx
test al, al
je 0x41cac5
xor edx, edx
mov dword [ebp - 0x1c], edx
push 0x21
push 0
lea ecx, [ebp - 0xa8]
push ecx
call fcn.00435974
add esp, 0xc
cmp byte [edi], 0
jne 0x41c6fc
mov dword [ebp - 0x28], 0x402d62
mov dword [ebp - 0x24], 0x40f4e3
push 0xb06121
lea eax, [ebp - 0x28]
push eax
call fcn.0040208a
add esp, 8
mov byte [edi], 1
mov dx, word [0xb0207a]
push edx
call fcn.004126db
pop ecx
jmp 0x41c83c
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cmp eax, 0x2710
ja 0x41c844
push 1
push 0x64
call sub.KERNEL32.dll_SleepEx
lea ecx, [ebp - 0x1c]
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00418c85
add esp, 8
test al, al
je 0x41c83c
xor esi, esi
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x10], eax
cmp esi, dword [ebp - 0x10]
jg 0x41c83c
mov dl, byte [ebp + esi - 0xa8]
cmp dl, byte [edi + 1]
jne 0x41c832
push 0x73
push 0
lea ecx, [ebp - 0x11c]
push ecx
call fcn.00435974
add esp, 0xc
mov byte [ebp - 0x11c], 1
mov al, byte [ebp + esi - 0xa8]
mov byte [ebp - 0x11b], al
lea edx, [ebp - 0x11c]
push edx
call fcn.004143b5
pop ecx
test al, al
je 0x41c7e2
lea ecx, [ebp - 0x11c]
push ecx
call fcn.00414663
pop ecx
lea eax, [ebp - 0x11c]
push eax
call fcn.00414b30
pop ecx
mov dl, byte [ebp - 0xeb]
cmp dl, byte [edi + 0x31]
jne 0x41c7e2
mov cl, byte [ebp - 0xec]
cmp cl, byte [edi + 0x30]
jne 0x41c7e2
push edi
lea eax, [ebp - 0x11c]
push eax
call fcn.00412f9d
add esp, 8
mov bl, 1
lea eax, [ebp - 0xfb]
push eax
call fcn.00433d9e
pop ecx
lea edx, [ebp - 0xb5]
push edx
call fcn.00433d9e
pop ecx
lea ecx, [ebp - 0xb1]
push ecx
call fcn.00433d9e
pop ecx
jmp 0x41c83c
inc esi
cmp esi, dword [ebp - 0x10]
jle 0x41c758
test bl, bl
je 0x41c70f
mov ax, word [0xb0207c]
push eax
call fcn.004126db
pop ecx
jmp 0x41cab8
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cmp eax, 0xea60
jbe 0x41c88c
cmp byte [ebp - 9], 0
je 0x41ccd6
mov dword [ebp - 0x2c], 0x402d2a
push 0xb0617a
lea edx, [ebp - 0x2c]
push edx
call fcn.0040208a
add esp, 8
jmp 0x41ccd6
lea ecx, [ebp - 0x1c]
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00418c85
add esp, 8
test al, al
je 0x41ca8b
mov byte [ebp - 0x1d], 0
xor esi, esi
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x10], eax
cmp esi, dword [ebp - 0x10]
jg 0x41ca8b
push 0x73
push 0
lea edx, [ebp - 0x190]
push edx
call fcn.00435974
add esp, 0xc
mov dword [ebp - 0x34], 0x402d62
mov dword [ebp - 0x30], 0x40f4e3
push 0xb0617d
lea ecx, [ebp - 0x34]
push ecx
call fcn.0040208a
add esp, 8
xor eax, eax
mov al, byte [ebp + esi - 0xa8]
cdq
push edx
push eax
lea ecx, [ebp - 0x34]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb06196
lea eax, [ebp - 0x34]
push eax
call fcn.0040208a
add esp, 8
mov byte [ebp - 0x190], 1
mov dl, byte [ebp + esi - 0xa8]
mov byte [ebp - 0x18f], dl
lea ecx, [ebp - 0x190]
push ecx
call fcn.004143b5
pop ecx
test al, al
je 0x41ca5a
lea eax, [ebp - 0x190]
push eax
call fcn.00414663
pop ecx
lea edx, [ebp - 0x190]
push edx
call fcn.00414b30
pop ecx
mov cl, byte [ebp - 0x15f]
cmp cl, byte [edi + 0x31]
jne 0x41ca5a
mov al, byte [ebp - 0x160]
cmp al, byte [edi + 0x30]
jne 0x41ca5a
cmp byte [ebp + esi - 0xa8], 0x3c
jne 0x41c9bb
cmp byte [ebp - 0x15f], 1
jne 0x41c9bb
mov edx, dword [ebp - 0x181]
cmp edx, dword [edi + 0xf]
je 0x41c9bb
mov dword [ebp - 0x3c], 0x402d62
mov dword [ebp - 0x38], 0x40f4e3
push 0xb06199
lea ecx, [ebp - 0x3c]
push ecx
call fcn.0040208a
add esp, 8
jmp 0x41ca5a
cmp byte [ebp - 0x1d], 0
je 0x41c9cc
push 0xb061b6
call fcn.0040e95c
pop ecx
mov dword [ebp - 0x44], 0x402d62
mov dword [ebp - 0x40], 0x40f4e3
push 0xb06208
lea eax, [ebp - 0x44]
push eax
call fcn.0040208a
add esp, 8
xor eax, eax
mov al, byte [ebp + esi - 0xa8]
cdq
push edx
push eax
lea ecx, [ebp - 0x44]
push ecx
call fcn.00402141
add esp, 0xc
push 0xb06221
lea eax, [ebp - 0x44]
push eax
call fcn.0040208a
add esp, 8
cmp dword [edi + 0xf], 0
je 0x41ca44
mov edx, dword [edi + 0xf]
cmp edx, dword [ebp - 0x181]
je 0x41ca44
mov dword [ebp - 0x4c], 0x402d62
mov dword [ebp - 0x48], 0x40f4a5
push 0xb06224
lea ecx, [ebp - 0x4c]
push ecx
call fcn.0040208a
add esp, 8
push edi
lea eax, [ebp - 0x190]
push eax
call fcn.00412f9d
add esp, 8
mov byte [ebp - 0x1d], 1
mov bl, 1
lea eax, [ebp - 0x16f]
push eax
call fcn.00433d9e
pop ecx
lea edx, [ebp - 0x129]
push edx
call fcn.00433d9e
pop ecx
lea ecx, [ebp - 0x125]
push ecx
call fcn.00433d9e
pop ecx
inc esi
cmp esi, dword [ebp - 0x10]
jle 0x41c8bd
test bl, bl
jne 0x41caab
mov byte [ebp - 9], 1
mov dword [ebp - 0x50], 0x402d2a
push 0xb0624f
lea eax, [ebp - 0x50]
push eax
call fcn.0040208a
add esp, 8
cmp byte [0xb0f5f8], 0
jne 0x41ccd6
test bl, bl
je 0x41c856
jmp 0x41cc7c
mov dx, word [0xb0207a]
push edx
call fcn.004126db
pop ecx
mov dword [ebp - 0x58], 0x402d62
mov dword [ebp - 0x54], 0x40f4e3
push 0xb06251
lea ecx, [ebp - 0x58]
push ecx
call fcn.0040208a
add esp, 8
jmp 0x41cb5d
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cmp eax, 0x1388
ja 0x41cc74
mov al, byte [edi + 1]
push eax
call fcn.00413b64
pop ecx
test al, al
je 0x41cb5d
mov dl, byte [edi + 1]
push edx
push edi
call fcn.00414265
add esp, 8
test al, al
je 0x41cb5d
mov dword [ebp - 0x60], 0x402d62
mov dword [ebp - 0x5c], 0x40f4e3
push 0xb0626f
lea ecx, [ebp - 0x60]
push ecx
call fcn.0040208a
add esp, 8
mov byte [edi], 1
push edi
call fcn.00414663
pop ecx
push edi
call fcn.00414b30
pop ecx
mov bl, 1
jmp 0x41cc74
test bl, bl
je 0x41caf4
jmp 0x41cc74
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 8]
cmp eax, 0xea60
jbe 0x41cb9c
cmp byte [ebp - 9], 0
je 0x41ccd6
mov dword [ebp - 0x64], 0x402d2a
push 0xb0627a
lea eax, [ebp - 0x64]
push eax
call fcn.0040208a
add esp, 8
jmp 0x41ccd6
push edi
call fcn.0041a5bc
pop ecx
mov ebx, eax
test bl, bl
je 0x41cc4b
xor ebx, ebx
mov ax, word [0xb0207a]
push eax
call fcn.004126db
pop ecx
mov dword [ebp - 0x6c], 0x402d62
mov dword [ebp - 0x68], 0x40f4e3
push 0xb0627d
lea edx, [ebp - 0x6c]
push edx
call fcn.0040208a
add esp, 8
xor esi, esi
jmp 0x41cc33
mov al, byte [edi + 1]
push eax
call fcn.00413b64
pop ecx
test al, al
je 0x41cc32
mov dl, byte [edi + 1]
push edx
push edi
call fcn.00414265
add esp, 8
test al, al
je 0x41cc32
mov dword [ebp - 0x74], 0x402d62
mov dword [ebp - 0x70], 0x40f4e3
push 0xb0629b
lea ecx, [ebp - 0x74]
push ecx
call fcn.0040208a
add esp, 8
mov byte [edi], 1
push edi
call fcn.00414663
pop ecx
push edi
call fcn.00414b30
pop ecx
mov bl, 1
jmp 0x41cc4b
inc esi
movsx eax, word [0xb0207a]
push eax
mov eax, 0x7d0
pop edx
mov ecx, edx
cdq
idiv ecx
cmp si, ax
jl 0x41cbdf
test bl, bl
jne 0x41cc6b
mov byte [ebp - 9], 1
mov dword [ebp - 0x78], 0x402d2a
push 0xb062a6
lea eax, [ebp - 0x78]
push eax
call fcn.0040208a
add esp, 8
cmp byte [0xb0f5f8], 0
jne 0x41ccd6
test bl, bl
je 0x41cb66
cmp byte [ebp - 9], 0
je 0x41cc9a
mov dword [ebp - 0x7c], 0x402d2a
push 0xb062a8
lea eax, [ebp - 0x7c]
push eax
call fcn.0040208a
add esp, 8
cmp byte [edi], 0
jne 0x41ccc4
mov dword [ebp - 0x84], 0x402d62
mov dword [ebp - 0x80], 0x40f4e3
push 0xb062ab
lea edx, [ebp - 0x84]
push edx
call fcn.0040208a
add esp, 8
mov cx, word [0xb0207c]
push ecx
call fcn.004126db
pop ecx
mov byte [ebp - 1], 1
mov al, byte [ebp - 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret