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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm6
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1401f5028]
xor rax, rsp
mov qword [rsp + 0xa8], rax
movabs r13, 0x7fffffffffffffff
mov dword [rsp + 0x94], 4
mov dword [rsp + 0x90], 0xaaaaaaaa
mov rbx, qword [rdx]
movabs rcx, 0xaaaaaaaaaaaaaaaa
cmp rbx, r13
je 0x1400c697e
mov rax, qword [rsi + 8]
mov qword [rsp + 0x60], rcx
test rax, rax
je 0x1400c6a98
sub rbx, rax
lea rax, [rbx + r13]
add rax, 2
cmp rax, 2
jb 0x1400c695b
mov rax, rbx
movabs rcx, 0x20c49ba5e353f7cf
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 7
add rdx, rax
imul rax, rdx, 0x3e8
xor ecx, ecx
cmp rbx, rax
setg cl
add rcx, rdx
mov rbx, rcx
mov rax, rbx
sar rax, 0x3f
not eax
mov rcx, rbx
shr rcx, 0x20
cmovne ebx, eax
mov dword [rsp + 0x90], ebx
test ebx, ebx
jne 0x1400c6989
jmp 0x1400c6a6c
mov dword [rsp + 0x90], 0xffffffff
lea r14, [rsp + 0x90]
lea r12, [rsp + 0x94]
mov rbp, qword [sym.imp.USER32.dll_MsgWaitForMultipleObjectsEx]
movaps xmm6, xmmword [0x1401c8a80]
lea r15, [rsp + 0x60]
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rcx, r14
call fcn.1400bcb60
mov rcx, r12
call fcn.1400bcb60
mov eax, dword [rsp + 0x94]
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x20], eax
xor ecx, ecx
xor edx, edx
mov r9d, 0x1cff
call rbp
test eax, eax
jne 0x1400c6d33
mov rax, qword [rdi + 0x10]
mov rbx, qword [rax]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
test byte [0x1401f7030], 0x19
jne 0x1400c6aae
mov ecx, 0x40
call qword [sym.imp.USER32.dll_GetQueueStatus]
bt eax, 0x16
jb 0x1400c6a5e
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
test byte [0x1401f7030], 0x19
jne 0x1400c6bde
mov dword [rsp + 0x20], 0
mov rcx, r15
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x1400c6d1a
test rbx, rbx
je 0x1400c6a6c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.1400f32c0
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r14, [rsp + 0x60]
mov rcx, r14
call qword [fcn.1400e87b0]
mov rax, qword [r14]
jmp 0x1400c6917
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [rsp + 0x54], eax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa0], rax
mov rax, qword [0x1401f6fa8]
lea rcx, [0x1400eff50]
cmp rax, rcx
jne 0x1400c6dc8
lea rcx, [rsp + 0x60]
mov qword [rcx], 0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rax, [rsp + 0x60]
mov rax, qword [rax]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400c6e52
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401fe650]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1401f7030]
lea r8, str.MessagePumpForUI::WaitForWork_GetQueueStatus
mov cl, 0x58
xor r9d, r9d
call fcn.1400c7aa0
mov qword [rsp + 0x58], rax
mov ecx, 0x40
call qword [sym.imp.USER32.dll_GetQueueStatus]
mov dword [rsp + 0x54], eax
cmp byte [0x1401f7030], 0
je 0x1400c6bcd
mov eax, dword [0x1401fea08]
mov ecx, dword [0x1401f8a8c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400c6de6
lea rcx, [0x1401fe678]
lea rdx, [0x1401f7030]
lea r8, str.MessagePumpForUI::WaitForWork_GetQueueStatus
mov r9, qword [rsp + 0x58]
call fcn.1400d6110
bt dword [rsp + 0x54], 0x16
jae 0x1400c6a1e
jmp 0x1400c6a5e
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [rsp + 0x54], eax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x98], rax
mov rax, qword [0x1401f6fa8]
lea rcx, [0x1400eff50]
cmp rax, rcx
jne 0x1400c6dd7
lea rcx, [rsp + 0xa0]
mov qword [rcx], 0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rax, [rsp + 0xa0]
mov rax, qword [rax]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400c6e79
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401fe650]
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [rsp + 0x48], eax
lea rax, [rsp + 0x98]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x40], 0
lea rdx, [0x1401f7030]
lea r8, str.MessagePumpForUI::WaitForWork_PeekMessage
mov cl, 0x58
xor r9d, r9d
call fcn.1400c7aa0
mov qword [rsp + 0x58], rax
xor eax, eax
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x60]
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.USER32.dll_PeekMessageW]
mov dword [rsp + 0x54], eax
cmp byte [0x1401f7030], 0
je 0x1400c6d0f
mov eax, dword [0x1401fea08]
mov ecx, dword [0x1401f8a8c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400c6e1c
lea rcx, [0x1401fe678]
lea rdx, [0x1401f7030]
lea r8, str.MessagePumpForUI::WaitForWork_PeekMessage
mov r9, qword [rsp + 0x58]
call fcn.1400d6110
cmp dword [rsp + 0x54], 0
jne 0x1400c6a5e
mov dword [rsp + 0x94], 0
test rbx, rbx
je 0x1400c6d33
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
mov rbx, qword [rsi]
mov eax, 0xffffffff
cmp rbx, r13
je 0x1400c6db4
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], rax
mov rcx, r15
call qword [fcn.1400e87b0]
sub rbx, qword [rsp + 0x60]
lea rax, [rbx + r13]
add rax, 2
cmp rax, 2
jb 0x1400c6d9e
mov rax, rbx
movabs rcx, 0x20c49ba5e353f7cf
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 7
add rdx, rax
imul rax, rdx, 0x3e8
xor ecx, ecx
cmp rbx, rax
setg cl
add rcx, rdx
mov rbx, rcx
mov rcx, rbx
shr rcx, 0x20
mov rax, rbx
sar rax, 0x3f
test rcx, rcx
not eax
cmove eax, ebx
mov dword [rsp + 0x90], eax
test eax, eax
jne 0x1400c69ac
jmp 0x1400c6a6c
lea rcx, [rsp + 0xa0]
call rax
jmp 0x1400c6b26
lea rcx, [rsp + 0x98]
call rax
jmp 0x1400c6c5c
lea rcx, [0x1401fea08]
call fcn.1400f0548
cmp dword [0x1401fea08], 0xffffffff
jne 0x1400c6bae
lea rcx, [0x1401fe678]
call fcn.14001abc0
lea rcx, [0x1401fea08]
call fcn.1400f07ac
jmp 0x1400c6bae
lea rcx, [0x1401fea08]
call fcn.1400f0548
cmp dword [0x1401fea08], 0xffffffff
jne 0x1400c6cf0
lea rcx, [0x1401fe678]
call fcn.14001abc0
lea rcx, [0x1401fea08]
call fcn.1400f07ac
jmp 0x1400c6cf0
mov rcx, qword [0x1401fe650]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400c6b1e
mov rcx, qword [0x1401fe650]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400c6c54