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

Disassembly:
sub esp, 0xc
push ebx
push ebp
xor ebp, ebp
push esi
push edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x10], ebp
jmp 0x498f1a
push ebp
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x613abc], ebp
jne 0x498f13
xor ebx, ebx
inc ebx
cmp dword [0x613ab8], ebp
mov dword [0x613ac4], ebx
jne 0x49909c
cmp dword [0x613adc], ebp
mov dword [0x613abc], ebx
jne 0x498f6b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call fcn.004a75bf
pop ecx
call fcn.004a75cc
cdq
mov ecx, 0x36ee80
idiv ecx
mov eax, 0x2932e00
sub eax, edx
mov dword [0x613adc], eax
push 0x613ad0
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
jne 0x498fc0
cmp dword [0x613ad8], ebp
mov dword [0x613ad0], ebp
mov dword [0x613ad4], ebp
jne 0x499025
cmp dword [0x613ae0], ebp
jne 0x499025
mov dword [0x613ae0], ebx
mov dword [0x613abc], ebp
mov dword [0x613ac4], ebx
mov dword [0x613ad8], ebp
call fcn.00498efc
jmp 0x4991d3
cmp dword [0x613ad4], ebp
jg 0x498ff4
jl 0x498fd6
cmp dword [0x613ad0], 0x3e8
jae 0x498fe2
mov dword [0x613ad0], ebp
mov dword [0x613ad4], ebp
cmp dword [0x613ad4], ebp
jl 0x499025
jg 0x498ff4
cmp dword [0x613ad0], ebp
jbe 0x499025
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x499025
cmp dword [0x613ae4], ebp
jne 0x499019
cmp dword [0x613ad8], ebp
mov dword [0x613ae4], ebx
je 0x498fa4
mov dword [0x613ad0], ebp
mov dword [0x613ad4], ebp
mov esi, dword [sym.imp.WINMM.dll_timeBeginPeriod]
mov edi, ebx
push ebx
jmp 0x499043
cmp edi, 0xa
jae 0x499049
cmp dword [0x613ad8], ebp
je 0x498fa4
inc edi
push edi
call esi
test eax, eax
jne 0x499030
cmp dword [0x613ad4], ebp
jl 0x499076
jg 0x49905b
cmp dword [0x613ad0], ebp
jbe 0x499076
push 0x613ac8
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x499076
mov dword [0x613ad0], ebp
mov dword [0x613ad4], ebp
push ebx
call esi
mov dword [0x613ad0], ebp
mov dword [0x613ad4], ebp
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [0x613ac0], eax
mov dword [0x613ab8], ebx
mov dword [0x613abc], ebp
mov edi, dword [0x613ad4]
cmp edi, ebp
jl 0x499194
jg 0x4990ba
mov esi, dword [0x613ad0]
cmp esi, ebp
jbe 0x49919a
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x499108
cmp dword [0x613ae8], ebp
jne 0x4990f6
cmp dword [0x613ad8], ebp
mov dword [0x613ae8], ebx
jne 0x4990e5
mov dword [0x613ad8], ebp
mov dword [0x613ab8], ebp
mov dword [0x613ac4], ebp
jmp 0x498fb6
xor esi, esi
xor edi, edi
mov dword [0x613ad0], esi
mov dword [0x613ad4], edi
jmp 0x499114
mov edi, dword [0x613ad4]
mov esi, dword [0x613ad0]
cmp edi, ebp
jg 0x49915a
jl 0x499122
cmp esi, 0x3e8
jae 0x49915a
mov eax, esi
or eax, edi
je 0x49915a
cmp dword [0x613aec], ebp
jne 0x49914a
cmp dword [0x613ad8], ebp
mov dword [0x613aec], ebx
jne 0x49914a
mov dword [0x613ac4], ebx
mov dword [0x613ad8], ebp
xor esi, esi
xor edi, edi
mov dword [0x613ad0], esi
mov dword [0x613ad4], edi
mov ebx, dword [esp + 0x14]
sub ebx, dword [0x613ac8]
mov eax, dword [esp + 0x18]
sbb eax, dword [0x613acc]
push ebp
push 0x3e8
push edi
push esi
mov dword [esp + 0x20], eax
call fcn.004bf5d0
push edx
push eax
mov eax, dword [esp + 0x18]
push eax
push ebx
call fcn.004bf5d0
mov dword [esp + 0x10], eax
xor ebp, ebp
jmp 0x49919a
mov esi, dword [0x613ad0]
or esi, edi
jne 0x4991c2
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, eax
mov eax, dword [0x613ac0]
cmp eax, ecx
jae 0x4991bc
or edx, 0xffffffff
sub edx, eax
add ecx, edx
mov dword [esp + 0x10], ecx
jmp 0x4991c2
sub eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [0x613adc]
mov ecx, dword [esp + 0x10]
mov dword [0x613ac4], ebp
add eax, ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret