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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0xe0
mov rax, qword [0x180066008]
xor rax, rsp
mov qword [rsp + 0xd0], rax
test byte [0x180067c71], 0x40
mov rbx, rdx
mov rsi, rcx
jne 0x18003ae0a
cmp dword [rbx + 0xb08], 0
je 0x180006a65
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [rsp + 0x20]
movabs r11, 0xd6bf94d5e57a42bd
mov r10, qword [0x180067c48]
mov rax, rcx
shr rax, 0x20
imul r9, rax, 0xf4240
cmp r10, 0x989680
jne 0x180006c3e
mov rax, r11
mul r9
shr rdx, 0x17
imul rax, rdx, 0x989680
sub r9, rax
mov ecx, ecx
imul rcx, rcx, 0xf4240
shl r9, 0x20
add rcx, r9
cmp r10, 0x989680
jne 0x180006c4e
mov rax, r11
mul rcx
mov rax, rdx
shr rax, 0x17
imul r9d, dword [rsi + 0x10], 7
add r9d, eax
sub r9d, dword [rbx + 0xb08]
shr r9d, 3
mov dword [rsi + 0x10], r9d
test byte [0x180067c70], 0x80
jne 0x18003ae25
mov eax, dword [rsi + 0xc]
mov rbp, 0xffffffffffffffff
inc qword [rbx + 0xb10]
mov dword [rbx + 0xe8], eax
movzx eax, byte [rbx + 0xe2]
test al, 0x40
jne 0x180006bfa
mov rcx, rbx
call fcn.180012c80
movzx ecx, byte [rbx + 0xe2]
movzx edi, al
shr cl, 6
or dil, cl
mov dword [rbx + 0xe8], 0
lea rcx, [rsi + 0x48]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
and dil, 1
add dil, dil
or dil, byte [rbx + 0xf8]
and dil, 0xfe
test byte [rbx + 0xe2], 0x40
mov byte [rbx + 0xf8], dil
jne 0x180006aec
test dil, 2
jne 0x180006b3c
test byte [0x180067c71], 0x40
jne 0x18003ae88
lea rcx, [rsi + 0x48]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rbx + 0xe2], 0x40
jne 0x180006bc8
lock xadd dword [rbx + 0xd8], ebp
cmp ebp, 1
je 0x180006bbb
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.180028c10
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [rsp + 0x20]
lea r9, [rbx + 0x20]
xor edx, edx
lea r8, [rsi + 0x70]
mov rax, rcx
mov ecx, ecx
shr rax, 0x20
imul rax, rax, 0xf4240
div qword [0x180067c48]
mov rax, rdx
shl rax, 0x20
imul rdx, rcx, 0xf4240
add rax, rdx
xor edx, edx
div qword [0x180067c48]
mov dword [rbx + 0xb08], eax
mov rax, qword [r8 + 8]
mov qword [r9], r8
mov qword [r9 + 8], rax
mov qword [rax], r9
mov qword [r8 + 8], r9
test byte [0x180067c71], 0x40
jne 0x18003ae6d
lea rcx, [rsi + 0x48]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x180006b14
mov rcx, rbx
call fcn.180019ff4
jmp 0x180006b14
lea rcx, [rsi + 0x18]
mov rdx, rbx
call fcn.18001b284
mov rcx, qword [rbx + 0x48]
test rcx, rcx
je 0x18003aea0
mov rdx, rbx
call fcn.18001dd68
mov rcx, qword [rbx + 0x40]
mov rdx, rbx
call fcn.1800256b8
jmp 0x180006b03
and al, 0xbf
lea rcx, [rsi + 0x18]
mov rdx, rbx
mov byte [rbx + 0xe2], al
call fcn.18000c170
test byte [0x180067c73], 8
movzx eax, word [rsi + 0xa]
mov word [rsp + 0x30], ax
mov dword [rsp + 0x28], 9
jne 0x18003ae3a
lea rdx, [rsp + 0x28]
mov rcx, rbx
call fcn.18001d4b4
jmp 0x180006a8b
mov rax, r9
xor edx, edx
div r10
mov r9, rdx
jmp 0x180006a17
xor edx, edx
mov rax, rcx
div r10
jmp 0x180006a41
mov r9d, 2
lea rdx, [0x18004e8d0]
mov r8, rbx
call fcn.1800421f0
nop
jmp 0x1800069ba
mov r8, rsi
lea rdx, [0x180056b88]
call fcn.1800421f0
nop
jmp 0x180006a65
lea r9, str.Indicating_QUIC_CONNECTION_EVENT_IDEAL_PROCESSOR_CHANGED
mov r8, rbp
mov edx, 0x80
lea rcx, [rsp + 0x50]
call fcn.180042088
lea r9, [rsp + 0x50]
mov r8, rbx
lea rdx, [0x180056c18]
call fcn.180041678
nop
jmp 0x180006c2c
mov r9d, 1
lea rdx, [0x18004e8d0]
mov r8, rbx
call fcn.1800421f0
nop
jmp 0x180006bac
xor r9d, r9d
lea rdx, [0x18004e8d0]
mov r8, rbx
call fcn.1800421f0
nop
jmp 0x180006aec
lea r8, str.Connection__Registration_____void__0_
mov edx, 0x217
lea rcx, str.D:workspace_work1_s_srcmsquic_srccoreworker.c
call fcn.18004b2ec
int 0x2c
mov rcx, qword [rbx + 0x48]
jmp 0x180006be1