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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x5c
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
mov edi, dword [sym.imp.kernel32.dll_QueryPerformanceCounter]
mov dword [esp], eax
call edi
sub esp, 4
mov dword [esp], 0x6f9165a0
call sym._ldap_pvt_thread_mutex_lock
mov eax, dword [0x6f91618c]
or eax, dword [0x6f916188]
je 0x6f8f1cb0
mov eax, dword [ebp - 0x38]
cmp dword [0x6f916198], eax
mov eax, dword [0x6f91619c]
sbb eax, dword [ebp - 0x34]
jl 0x6f8f1c78
inc dword [0x6f9161a0]
mov dword [esp], 0x6f9165a0
call sym._ldap_pvt_thread_mutex_unlock
mov esi, dword [0x6f916188]
mov eax, 0xa
mov ebx, dword [0x6f91618c]
mul esi
imul ecx, ebx, 0xa
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x38]
add edx, ecx
mov dword [esp + 0xc], edx
mov edx, dword [ebp - 0x34]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.___moddi3
mov dword [esp + 8], esi
imul ecx, edx, 0x3b9aca00
mov edx, 0x3b9aca00
mov dword [esp + 0xc], ebx
mul edx
add edx, ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.___divdi3
mov ecx, dword [0x6f916190]
mov ebx, ecx
sar ebx, 0x1f
sub eax, ecx
sbb edx, ebx
mov esi, eax
mov edi, edx
test edx, edx
js 0x6f8f1ca0
mov eax, 0x540be3ff
cmp eax, esi
mov eax, 2
sbb eax, edx
jge 0x6f8f1c2c
add esi, 0xabf41c00
adc edi, 0xfffffffd
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 8], 0x3b9aca00
mov dword [esp + 0xc], 0
call sym.___divdi3
mov edx, dword [ebp - 0x3c]
mov dword [edx], eax
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 8], 0x3b9aca00
mov dword [esp + 0xc], 0
call sym.___moddi3
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [0x6f9161a0], 0
mov dword [0x6f916198], eax
mov dword [0x6f91619c], edx
jmp 0x6f8f1b97
add esi, 0x540be400
adc edi, 2
jmp 0x6f8f1c2c
mov dword [esp], 0x6f916188
lea esi, [ebp - 0x20]
call dword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
lea eax, [ebp - 0x28]
mov ebx, dword [sym.imp.kernel32.dll_GetSystemTimeAsFileTime]
sub esp, 4
mov dword [esp], eax
call ebx
sub esp, 4
lea esi, [esi]
mov dword [esp], esi
call ebx
mov ecx, dword [ebp - 0x20]
sub esp, 4
cmp ecx, dword [ebp - 0x28]
je 0x6f8f1cd8
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x30]
mov dword [esp], eax
call edi
mov eax, dword [0x6f91618c]
mov edi, dword [0x6f916188]
mov esi, dword [ebp - 0x30]
sub esp, 4
imul ebx, eax, 0xa
mov dword [ebp - 0x44], eax
mov eax, 0xa
mul edi
mov dword [ebp - 0x40], edi
mov edi, dword [ebp - 0x2c]
mov dword [esp], esi
mov dword [esp + 4], edi
add edx, ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call sym.___moddi3
imul ebx, edx, 0x3b9aca00
mov edx, 0x3b9aca00
mul edx
add edx, ebx
mov ebx, dword [ebp - 0x40]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov ebx, dword [ebp - 0x44]
mov dword [esp + 0xc], ebx
call sym.___divdi3
mov ecx, dword [ebp - 0x4c]
mov dword [esp + 8], 0xa
mov ebx, eax
mov eax, dword [ebp - 0x48]
mov dword [esp + 0xc], 0
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.___udivdi3
mov dword [esp + 8], 0x540be400
mov dword [esp + 0xc], 2
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.___umoddi3
mov dword [ebp - 0x38], esi
sub ebx, eax
mov dword [ebp - 0x34], edi
mov dword [0x6f916190], ebx
jmp 0x6f8f1b7a