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

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov bl, r8b
mov rsi, rdx
mov r13, rcx
lea rax, vtable.ProtocolFilters::AutoLock.0
mov qword [rbp - 0x11], rax
lea r12, [rcx + 0x2d8]
mov qword [rbp - 9], r12
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
xor r15d, r15d
test rsi, rsi
je 0x18007e7e7
test bl, bl
je 0x18007e849
movdqa xmm0, xmmword [0x180283730]
movdqu xmmword [rbp - 0x21], xmm0
mov byte [rbp - 0x31], r15b
mov rdx, rsi
lea rcx, [rbp - 0x31]
call fcn.18005a838
lea rdi, [r13 + 0x138]
lea r8, [rbp - 0x31]
lea rdx, [rbp + 0x67]
mov rcx, rdi
call fcn.180066a24
mov rbx, qword [rbp + 0x67]
cmp rbx, qword [rdi]
je 0x18007e663
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x18007e61e
mov rdx, qword [rbx + 0x20]
lea rcx, [rbp - 0x31]
cmp qword [rbp - 0x19], 0x10
cmovae rcx, qword [rbp - 0x31]
mov r15, qword [rbx + 0x30]
mov r14, qword [rbp - 0x21]
mov r8, r14
cmp r15, r14
cmovb r8, r15
call fcn.1801c2c00
test eax, eax
jne 0x18007e659
cmp r14, r15
jae 0x18007e651
or eax, 0xffffffff
jmp 0x18007e659
xor eax, eax
cmp r14, r15
seta al
shr eax, 0x1f
xor r15d, r15d
test al, al
je 0x18007e666
mov rbx, qword [rdi]
mov rdx, qword [rbp - 0x19]
cmp rdx, 0x10
jb 0x18007e6a1
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007e69c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007e8cf
call fcn.18009e42c
movdqa xmm0, xmmword [0x180283730]
movdqu xmmword [rbp - 0x21], xmm0
mov byte [rbp - 0x31], r15b
mov qword [rbp + 0x6f], r15
mov qword [rbp + 0x67], r15
lea rcx, [rbp + 0x6f]
cmp rbx, qword [rdi]
jne 0x18007e80b
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
lea rcx, [rbp + 0x67]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbp + 0x67]
cqo
idiv qword [rbp + 0x6f]
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], 1
movdqa xmm0, xmmword [0x180283730]
movdqu xmmword [rbp + 0xf], xmm0
mov byte [rbp - 1], r15b
mov rdx, rsi
lea rcx, [rbp - 1]
call fcn.18005a838
nop
lea r8, [rbp - 1]
lea rdx, [rbp + 0x67]
mov rcx, rdi
call fcn.180066a24
mov rbx, qword [rbp + 0x67]
cmp rbx, qword [rdi]
je 0x18007e772
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x18007e732
mov rdx, qword [rbx + 0x20]
lea rcx, [rbp - 1]
cmp qword [rbp + 0x17], 0x10
cmovae rcx, qword [rbp - 1]
mov r14, qword [rbx + 0x30]
mov rsi, qword [rbp + 0xf]
mov r8, rsi
cmp r14, rsi
cmovb r8, r14
call fcn.1801c2c00
test eax, eax
jne 0x18007e76b
cmp rsi, r14
jae 0x18007e765
or eax, 0xffffffff
jmp 0x18007e76b
mov eax, r15d
seta al
shr eax, 0x1f
test al, al
je 0x18007e7a2
lea rax, [rbp - 1]
mov qword [rbp + 0x67], rax
lea r8, [rbp + 0x67]
mov rcx, rdi
call fcn.18008179c
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rbp + 0x67]
mov rcx, rdi
call fcn.180081808
mov rbx, qword [rbp + 0x67]
movups xmm0, xmmword [rbp - 0x31]
movdqu xmmword [rbx + 0x40], xmm0
mov rdx, qword [rbp + 0x17]
cmp rdx, 0x10
jb 0x18007e7e7
inc rdx
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007e7e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007e8c3
call fcn.18009e42c
nop
mov rcx, r12
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
nop
lea rcx, [rbp + 0x67]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbp + 0x67]
cqo
idiv qword [rbp + 0x6f]
mov rcx, rax
sub rcx, qword [rbx + 0x40]
cmp rcx, 0xa
jbe 0x18007e7e7
mov qword [rbx + 0x40], rax
cmp rcx, 0x12c
jae 0x18007e8b7
inc dword [rbx + 0x48]
cmp dword [rbx + 0x48], 2
jbe 0x18007e7e7
movdqa xmm0, xmmword [0x180283730]
movdqu xmmword [rbp + 0xf], xmm0
mov byte [rbp - 1], r15b
mov rdx, rsi
lea rcx, [rbp - 1]
call fcn.18005a838
nop
lea rcx, [r13 + 0x1a8]
lea rdx, [rbp - 1]
call fcn.18007bd38
nop
mov rdx, qword [rbp + 0x17]
cmp rdx, 0x10
jb 0x18007e7e7
inc rdx
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007e7e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007e8c9
jmp 0x18007e7e1
mov dword [rbx + 0x48], 1
jmp 0x18007e7e7
call fcn.1801c897c
int3
call fcn.1801c897c
int3
call fcn.1801c897c
int3