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

Disassembly:
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.0041e976
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
call ebx
mov edi, eax
add edi, 0x9c40
jmp 0x41efc6
call ebx
cmp eax, edi
jae 0x41efcf
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x457e18], 0
je 0x41efb5
call ebx
push eax
call fcn.004201d8
pop ecx
call fcn.004201e2
push 3
cdq
pop ecx
idiv ecx
mov edi, edx
inc edi
xor ebp, ebp
cmp edi, 1
jne 0x41effb
mov ecx, esi
call fcn.0041ed3a
test al, al
mov byte [esi + 0x27], al
jne 0x41f031
cmp edi, 2
jne 0x41f00e
mov ecx, esi
call fcn.0041ec14
test al, al
mov byte [esi + 0x27], al
jne 0x41f031
cmp edi, 3
jne 0x41f023
mov ecx, esi
call fcn.0041ee67
test al, al
mov byte [esi + 0x27], al
jne 0x41f031
cmp edi, edi
jl 0x41f02a
xor edi, edi
inc edi
jmp 0x41f02b
inc edi
inc ebp
cmp ebp, 3
jl 0x41efe8
cmp byte [esi + 0x27], 0
jne 0x41f16c
mov eax, dword [esi]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [esi + 0x27], 1
mov eax, dword [eax + 8]
test eax, eax
push 5
pop ebp
je 0x41f06c
push eax
call edi
cmp eax, ebp
jl 0x41f06c
mov eax, dword [esi]
push dword [eax + 8]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 4]
test eax, eax
je 0x41f090
push eax
call edi
cmp eax, ebp
jl 0x41f090
mov eax, dword [esi]
push dword [eax + 4]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x41f0b4
push eax
call edi
cmp eax, ebp
jl 0x41f0b4
mov eax, dword [esi]
push dword [eax + 0x20]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x48]
test eax, eax
je 0x41f0d8
push eax
call edi
cmp eax, ebp
jl 0x41f0d8
mov eax, dword [esi]
push dword [eax + 0x48]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x41f0f8
push eax
call edi
cmp eax, ebp
jl 0x41f0f8
mov eax, dword [esi]
push dword [eax + 0x1c]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
test eax, eax
je 0x41f118
push eax
call edi
cmp eax, ebp
jl 0x41f118
mov eax, dword [esi]
push dword [eax + 0x28]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
test eax, eax
je 0x41f138
push eax
call edi
cmp eax, ebp
jl 0x41f138
mov eax, dword [esi]
push dword [eax + 0x2c]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov eax, dword [esi]
mov eax, dword [eax + 0x24]
test eax, eax
je 0x41f158
push eax
call edi
cmp eax, ebp
jl 0x41f158
mov eax, dword [esi]
push dword [eax + 0x24]
mov ecx, esi
call fcn.0041e8d3
test al, al
jne 0x41f15c
mov byte [esi + 0x27], 0
cmp byte [esi + 0x27], 0
jne 0x41f16c
mov ecx, esi
call fcn.0041e9d0
mov byte [esi + 0x27], al
xor eax, eax
cmp dword [esi + 8], eax
jne 0x41f190
push eax
push eax
mov eax, dword [esi]
movzx eax, byte [eax + 0x10]
push eax
push 3
call fcn.0041daaf
add esp, 0xc
push eax
mov ecx, esi
call fcn.0041e743
jmp 0x41f197
mov ecx, esi
call fcn.0041e817
call ebx
mov ebp, eax
add ebp, 0x2710
xor edi, edi
mov ecx, esi
call fcn.0041dc43
cmp dword [esi + 8], 0
jne 0x41f1bf
call ebx
cmp edi, eax
jbe 0x41f1bf
cmp byte [esi + 0xa9], 0
jne 0x41f1a3
mov ecx, esi
mov byte [esi + 0x27], 0
call fcn.0041e817
test al, al
jne 0x41f2a2
call fcn.004201e2
push 3
cdq
pop ecx
idiv ecx
mov edi, edx
inc edi
xor ebx, ebx
cmp edi, 1
jne 0x41f1f5
mov ecx, esi
call fcn.0041ed3a
test al, al
mov byte [esi + 0x27], al
jne 0x41f22b
cmp edi, 2
jne 0x41f208
mov ecx, esi
call fcn.0041ec14
test al, al
mov byte [esi + 0x27], al
jne 0x41f22b
cmp edi, 3
jne 0x41f21d
mov ecx, esi
call fcn.0041ee67
test al, al
mov byte [esi + 0x27], al
jne 0x41f22b
cmp edi, edi
jl 0x41f224
xor edi, edi
inc edi
jmp 0x41f225
inc edi
inc ebx
cmp ebx, 3
jl 0x41f1e2
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp byte [esi + 0x27], 0
jne 0x41f259
mov eax, dword [esi + 0x20]
cmp eax, 1
jb 0x41f24a
push 6
xor edx, edx
pop ecx
div ecx
test edx, edx
jne 0x41f259
mov ecx, esi
call fcn.0041e9d0
test al, al
je 0x41f259
mov byte [esi + 0x27], 1
cmp dword [esi + 0x20], 2
jb 0x41f277
cmp byte [esi + 0xa9], 0
je 0x41f277
call ebx
sub eax, dword [esi + 0xac]
cmp eax, 0x493e0
jbe 0x41f27e
mov ecx, esi
call fcn.0041e976
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp ebp, 0x1b7740
jae 0x41f297
add ebp, 0x1d4c0
call ebx
mov edi, eax
add edi, ebp
jmp 0x41f1a3
mov byte [esi + 0x27], 1
jmp 0x41f231