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

Disassembly:
push rbx
push rbp
push rsi
sub rsp, 0xa0
cmp qword [rcx + 0x1e0], 0
mov rbp, r8
movzx esi, dl
mov rbx, rcx
jne 0x18000c78b
xor al, al
add rsp, 0xa0
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [sym.imp.FactoryServer_Core.dll_class_UE::Trace::FChannel____ptr64___ptr64_CpuChannel]
mov qword [rsp + 0xc8], rdi
mov rcx, qword [rax]
mov eax, dword [rcx + 0x18]
test eax, eax
js 0x18000c7df
mov eax, dword [0x1800271b4]
mov dil, 1
test eax, eax
jne 0x18000c7d1
mov r8d, 0x398
lea rdx, str.C:BuildAgentwork78a794e88763017dUE4EngineSourceRuntimeAnalyticsAnalyticsPrivateAnalyticsPropertyStore.cpp
lea rcx, str.FAnalyticsPropertyStore::Flush
call qword [sym.imp.FactoryServer_Core.dll_public:_static_unsigned_int___cdecl_FCpuProfilerTrace::OutputEventType_char_const____ptr64__char_const____ptr64__unsigned_int_]
mov dword [0x1800271b4], eax
mov ecx, dword [0x1800271b4]
call qword [sym.imp.FactoryServer_Core.dll_public:_static_void___cdecl_FCpuProfilerTrace::OutputBeginEvent_unsigned_int_]
jmp 0x18000c7e2
xor dil, dil
mov qword [rsp + 0x30], rbx
add rbx, 8
cmp qword [rbp], 0
mov byte [rsp + 0x38], sil
jne 0x18000c821
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
test eax, eax
je 0x18000c821
mov dl, 1
lea rcx, [rsp + 0x30]
call fcn.180008310
mov rcx, rbx
movzx esi, al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x18000ca34
movabs rax, 0x7fffffffffffffff
cmp qword [rbp], rax
jne 0x18000c8b8
test rbx, rbx
jne 0x18000c889
mov r9, qword [rsp + 0xb8]
lea rax, [0x180019acc]
lea r8d, [rbx + 0x26]
mov qword [rsp + 0x20], rax
lea rdx, str.C:BuildAgentwork78a794e88763017dUE4EngineSourceRuntimeCorePublicMiscScopeLock.h
lea rcx, str.SynchObject
call qword [sym.imp.FactoryServer_Core.dll_public:_static_bool___cdecl_FDebug::CheckVerifyFailedImpl_char_const____ptr64__char_const____ptr64__int__void____ptr64__wchar_t_const____ptr64_]
test al, al
je 0x18000c889
nop
int3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.180008310
movzx esi, al
test rbx, rbx
je 0x18000ca34
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x18000ca34
movaps xmmword [rsp + 0x80], xmm7
lea rcx, [rsp + 0xc0]
movaps xmmword [rsp + 0x70], xmm8
movaps xmmword [rsp + 0x60], xmm9
movaps xmmword [rsp + 0x50], xmm10
movaps xmmword [rsp + 0x40], xmm11
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [sym.imp.FactoryServer_Core.dll_double_FGenericPlatformTime::SecondsPerCycle]
lea rsi, str.Loss_of_data_caused_by_narrowing_conversion
movsd xmm9, qword [0x18001f850]
xorps xmm8, xmm8
cvtsi2sd xmm8, qword [rsp + 0xc0]
movsd xmm10, qword [0x18001f810]
mulsd xmm8, qword [rax]
movsd xmm7, qword [0x18001f7f8]
movsd xmm11, qword [0x18001f800]
movaps xmmword [rsp + 0x90], xmm6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
test eax, eax
je 0x18000c95c
mov dl, 1
lea rcx, [rsp + 0x30]
call fcn.180008310
mov rcx, rbx
test al, al
jne 0x18000ca56
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xorps xmm1, xmm1
movsd xmm1, xmm10
roundpd xmm0, xmm1, 1
cvttsd2si rax, xmm0
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
mulsd xmm1, xmm7
cvtpd2ps xmm6, xmm1
cvtps2pd xmm0, xmm6
subsd xmm0, xmm1
andps xmm0, xmm9
comisd xmm0, xmm11
jbe 0x18000c9be
mov r9, qword [rsp + 0xb8]
lea rdx, str.C:BuildAgentwork78a794e88763017dUE4EngineSourceRuntimeCorePublicTemplatesUnrealTemplate.h
mov r8d, 0xb4
mov qword [rsp + 0x20], rsi
lea rcx, str.FloatFitsIn_OutType__In__Precision_
call qword [sym.imp.FactoryServer_Core.dll_public:_static_bool___cdecl_FDebug::CheckVerifyFailedImpl_char_const____ptr64__char_const____ptr64__int__void____ptr64__wchar_t_const____ptr64_]
test al, al
je 0x18000c9be
nop
int3
movaps xmm0, xmm6
call qword [sym.imp.FactoryServer_Core.dll_public:_static_void___cdecl_FWindowsPlatformProcess::Sleep_float_]
lea rcx, [rsp + 0xd8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [sym.imp.FactoryServer_Core.dll_double_FGenericPlatformTime::SecondsPerCycle]
xorps xmm1, xmm1
cvtsi2sd xmm1, qword [rsp + 0xd8]
xorps xmm0, xmm0
mulsd xmm1, qword [rax]
cvtsi2sd xmm0, qword [rbp]
subsd xmm1, xmm8
mulsd xmm0, xmm7
comisd xmm1, xmm0
jb 0x18000c932
xor sil, sil
movaps xmm6, xmmword [rsp + 0x90]
movaps xmm9, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x50]
movaps xmm11, xmmword [rsp + 0x40]
test dil, dil
mov rdi, qword [rsp + 0xc8]
je 0x18000ca47
call qword [sym.imp.FactoryServer_Core.dll_public:_static_void___cdecl_FCpuProfilerTrace::OutputEndEvent_void_]
movzx eax, sil
add rsp, 0xa0
pop rsi
pop rbp
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov sil, 1
jmp 0x18000ca0c