Function at 0x41df75
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
xor ebx, ebx
push esi
push edi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 8], ebx
jmp 0x41df92
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x61d328], ebx
jne 0x41df8b
xor edi, edi
inc edi
mov dword [0x61d340], edi
cmp dword [0x61d324], ebx
jne 0x41e119
mov dword [0x61d328], edi
cmp dword [0x61d348], ebx
jne 0x41dfe3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call fcn.0040236d
pop ecx
call fcn.0040237f
cdq
mov ecx, 0x36ee80
idiv ecx
mov eax, 0x2932e00
sub eax, edx
mov dword [0x61d348], eax
push 0x61d338
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
jne 0x41e038
mov dword [0x61d338], ebx
mov dword [0x61d33c], ebx
cmp dword [0x61d344], ebx
jne 0x41e09c
cmp dword [0x61d34c], ebx
jne 0x41e09c
mov dword [0x61d34c], edi
mov dword [0x61d328], ebx
mov dword [0x61d340], edi
mov dword [0x61d344], ebx
call fcn.0041df75
jmp 0x41e243
cmp dword [0x61d33c], ebx
jg 0x41e06c
jl 0x41e04e
cmp dword [0x61d338], 0x3e8
jae 0x41e05a
mov dword [0x61d338], ebx
mov dword [0x61d33c], ebx
cmp dword [0x61d33c], ebx
jl 0x41e09c
jg 0x41e06c
cmp dword [0x61d338], ebx
jbe 0x41e09c
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x41e09c
cmp dword [0x61d350], ebx
jne 0x41e090
mov dword [0x61d350], edi
cmp dword [0x61d344], ebx
je 0x41e01c
mov dword [0x61d338], ebx
mov dword [0x61d33c], ebx
mov esi, dword [sym.imp.WINMM.dll_timeBeginPeriod]
mov dword [ebp - 4], edi
push edi
jmp 0x41e0c0
cmp dword [ebp - 4], 0xa
jae 0x41e0c6
cmp dword [0x61d344], ebx
je 0x41e01c
inc dword [ebp - 4]
push dword [ebp - 4]
call esi
test eax, eax
jne 0x41e0a8
cmp dword [0x61d33c], ebx
jl 0x41e0f3
jg 0x41e0d8
cmp dword [0x61d338], ebx
jbe 0x41e0f3
push 0x61d330
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x41e0f3
mov dword [0x61d338], ebx
mov dword [0x61d33c], ebx
push edi
call esi
mov dword [0x61d338], ebx
mov dword [0x61d33c], ebx
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x61d32c], eax
mov dword [0x61d324], edi
mov dword [0x61d328], ebx
cmp dword [0x61d33c], ebx
jl 0x41e206
jg 0x41e135
mov esi, dword [0x61d338]
cmp esi, ebx
jbe 0x41e20c
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x41e181
cmp dword [0x61d354], ebx
jne 0x41e170
mov dword [0x61d354], edi
cmp dword [0x61d344], ebx
jne 0x41e15f
mov dword [0x61d344], ebx
mov dword [0x61d324], ebx
mov dword [0x61d340], ebx
jmp 0x41e02e
xor esi, esi
xor eax, eax
mov dword [0x61d338], esi
mov dword [0x61d33c], eax
jmp 0x41e18c
mov eax, dword [0x61d33c]
mov esi, dword [0x61d338]
cmp eax, ebx
jg 0x41e1d1
jl 0x41e19a
cmp esi, 0x3e8
jae 0x41e1d1
mov ecx, esi
or ecx, eax
je 0x41e1d1
cmp dword [0x61d358], ebx
jne 0x41e1c2
mov dword [0x61d358], edi
cmp dword [0x61d344], ebx
jne 0x41e1c2
mov dword [0x61d340], edi
mov dword [0x61d344], ebx
xor esi, esi
xor eax, eax
mov dword [0x61d338], esi
mov dword [0x61d33c], eax
mov edi, dword [ebp - 0x10]
sub edi, dword [0x61d330]
mov ecx, dword [ebp - 0xc]
sbb ecx, dword [0x61d334]
push ebx
push 0x3e8
push eax
push esi
mov dword [ebp - 8], ecx
call fcn.004c68d0
push edx
push eax
mov eax, dword [ebp - 8]
push eax
push edi
call fcn.004c68d0
mov dword [ebp - 8], eax
xor ebx, ebx
jmp 0x41e20c
mov esi, dword [0x61d338]
or esi, dword [0x61d33c]
jne 0x41e235
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [0x61d32c]
cmp ecx, eax
jae 0x41e230
or edx, 0xffffffff
sub edx, ecx
add eax, edx
mov dword [ebp - 8], eax
jmp 0x41e235
sub ecx, eax
mov dword [ebp - 8], ecx
mov eax, dword [0x61d348]
add eax, dword [ebp - 8]
mov dword [0x61d340], ebx
pop edi
pop esi
pop ebx
leave
ret