Function at 0x140146450
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, 0x2e8
movaps xmmword [rsp + 0x2d0], xmm6
mov rbx, rdx
mov r14, rcx
mov rax, qword [0x14029b028]
xor rax, rsp
mov qword [rsp + 0x2c8], rax
mov rax, qword [rcx + 0x10]
mov r15d, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rsi, qword [rbx + 0x38]
cmp rsi, 2
jae 0x14014726d
mov rdx, qword [rbx]
mov rdi, qword [rbx + 0x30]
lea rcx, [rbx + 8]
mov qword [rbx], 0
test rdi, rdi
jne 0x140146a2b
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
mov dil, byte [rbx + 0x28]
mov bpl, byte [rbx + 0x29]
mov rsi, qword [rbx + 0x48]
xor eax, eax
mov qword [rbx + 0x48], rax
mov r13, qword [rbx + 0x50]
mov qword [rbx + 0x50], rax
mov qword [rsp + 0x60], rdx
test rdx, rdx
je 0x140147272
mov r12, qword [rbx + 0x58]
lea r15, [r14 + 0x20]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140147152
mov rax, qword [r14 + 8]
mov ecx, dword [rax + 0x68]
test ecx, ecx
mov byte [rsp + 0x70], dil
mov qword [rsp + 0x80], r12
je 0x14014695d
mov rax, qword [rax + 0x320]
mov rax, qword [fcn.140105050]
lea rcx, [0x140182e50]
lea rdi, [rsp + 0x1f0]
cmp rax, rcx
jne 0x14014722a
mov qword [rdi], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rdi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140147522
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402b0aa0]
mov rdi, rax
mov r8, qword [rsp + 0x60]
mov rax, qword [r14 + 8]
mov qword [rsp + 0x58], r15
mov r12d, 1
lock xadd qword [rax + 0x28], r12
mov r9, qword [r14 + 0x38]
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
xorps xmm6, xmm6
movups xmmword [rsp + 0x114], xmm6
movups xmmword [rsp + 0x124], xmm6
mov dword [rsp + 0x134], 0
cmp qword [r14 + 0x28], 0
je 0x140146f98
mov r15, qword [r14 + 0x30]
mov rcx, qword [r15]
mov rax, qword [r15 + 0x10]
inc rax
xor edx, edx
cmp rax, rcx
cmovne rdx, rax
cmp qword [r15 + 8], rdx
je 0x140147036
xor edx, edx
cmp rax, rcx
mov ecx, 0
cmovne rcx, rax
mov qword [r15 + 0x10], rcx
mov rax, qword [r15 + 0x18]
imul rcx, rcx, 0xa8
mov qword [rax + rcx], r8
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movups xmmword [rax + rcx + 8], xmm0
movups xmmword [rax + rcx + 0x18], xmm1
mov qword [rax + rcx + 0x28], rdi
xorps xmm0, xmm0
movups xmmword [rax + rcx + 0x30], xmm0
mov dword [rax + rcx + 0x40], 0
movups xmm0, xmmword [rsp + 0x110]
movups xmm1, xmmword [rsp + 0x120]
movups xmmword [rax + rcx + 0x44], xmm0
movups xmmword [rax + rcx + 0x54], xmm1
mov r8, qword [rsp + 0x130]
mov qword [rax + rcx + 0x64], r8
mov qword [rax + rcx + 0x70], 0
mov dword [rax + rcx + 0x78], r12d
mov byte [rax + rcx + 0x7c], dl
mov r8b, byte [rsp + 0x70]
mov byte [rax + rcx + 0x80], r8b
mov byte [rax + rcx + 0x81], dl
mov byte [rax + rcx + 0x82], bpl
mov qword [rax + rcx + 0x88], rsi
mov qword [rax + rcx + 0x90], r12
mov qword [rax + rcx + 0x98], r13
mov rdx, qword [rsp + 0x80]
mov qword [rax + rcx + 0xa0], rdx
mov rax, qword [r14 + 0x38]
inc rax
mov qword [r14 + 0x38], rax
mov rcx, qword [r14 + 0x40]
cmp rcx, rax
cmova rax, rcx
mov qword [r14 + 0x40], rax
mov rax, qword [r14 + 0x30]
imul rdi, qword [rax + 0x10], 0xa8
mov rcx, qword [r14 + 8]
add rdi, qword [rax + 0x18]
mov rcx, qword [rcx + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
lea rdx, [0x140183d90]
cmp rax, rdx
jne 0x140147275
test byte [0x14029e0f0], 0x19
jne 0x1401473ed
cmp qword [rdi + 0x48], 0
jne 0x1401467b8
mov eax, dword [0x1402ab7ac]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x230]
test rax, rax
je 0x14014676c
mov rcx, qword [rax + 0x18]
mov qword [rdi + 0x70], rcx
mov eax, dword [rax + 0x10]
mov dword [rdi + 0x68], eax
mov eax, dword [0x1402ab7ac]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x228]
test rax, rax
je 0x1401467b8
mov rcx, qword [rax + 0x20]
mov qword [rdi + 0x48], rcx
movups xmm0, xmmword [rax + 0x48]
mov rcx, qword [rax + 0x58]
mov qword [rdi + 0x60], rcx
movups xmmword [rdi + 0x50], xmm0
cmp byte [rax + 0x7c], 0
jne 0x140146983
cmp qword [rax + 0x60], 0
setne al
mov byte [rdi + 0x7c], al
mov rax, qword [r14 + 0x30]
mov rsi, qword [rax + 0x18]
imul r15, qword [rax + 0x10], 0xa8
cmp dword [rsi + r15 + 0x68], 0
jne 0x140147289
mov rsi, qword [r14 + 0x60]
mov r15, qword [r14 + 0x68]
cmp rsi, r15
jne 0x1401477da
test r9, r9
jne 0x1401468f8
cmp byte [r14 + 0x50], 0
je 0x1401468f8
mov rax, qword [r14 + 0x1f0]
mov rcx, qword [r14 + 0x1f8]
lock or qword [rax], rcx
mov sil, byte [r14 + 0x51]
mov r15, qword [rsp + 0x58]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test sil, sil
je 0x140146906
mov rax, qword [r14 + 8]
mov rdi, qword [rax + 0x30]
mov rax, qword [rdi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140165f80]
cmp rax, rcx
jne 0x14014754c
mov eax, dword [rdi + 0x1c0]
nop dword [rax + rax]
mov ecx, eax
or ecx, 2
lock cmpxchg dword [rdi + 0x1c0], ecx
jne 0x140146850
cmp eax, 4
jne 0x140146906
mov rax, qword [rdi + 8]
mov esi, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
je 0x140146da0
mov rax, qword [rdi + 0xb0]
test rax, rax
je 0x14014755a
mov rax, qword [rax + 8]
mov esi, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov cl, byte [0x14029e190]
cmp esi, eax
je 0x14014755d
test cl, 0x19
jne 0x1401475f9
mov rdi, qword [rdi + 0x248]
mov rax, qword [rdi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140160a00]
cmp rax, rcx
je 0x14014699b
lea rcx, [0x1401608a0]
cmp rax, rcx
jne 0x140146d07
lea rsi, [rdi + 0x10]
cmp byte [rdi + 0x18], 0
je 0x140146e6b
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_SetEvent]
jmp 0x140146906
mov r15, qword [rsp + 0x58]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x14029e620], 9
jne 0x1401472cc
mov rcx, qword [rbx + 0x50]
test rcx, rcx
jne 0x140146977
mov rcx, qword [rbx + 0x48]
test rcx, rcx
jne 0x140147160
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14014698a
mov rcx, qword [rsp + 0x2c8]
xor rcx, rsp
call fcn.1401874c0
movaps xmm6, xmmword [rsp + 0x2d0]
add rsp, 0x2e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [r14 + 0x202], 0
jne 0x14014652e
xor edi, edi
mov r8, qword [rsp + 0x60]
jmp 0x140146596
lock dec dword [rcx]
jne 0x14014691c
call fcn.14018482c
jmp 0x14014691c
mov al, 1
jmp 0x1401467b5
lock dec dword [rcx]
jne 0x140146931
mov rax, qword [rcx + 0x10]
call qword [case.0x1401eda70.0]
jmp 0x140146931
mov cl, 1
xor eax, eax
lock cmpxchg byte [rdi + 8], cl
jne 0x140146906
mov rcx, qword [rdi + 0x18]
xor edx, edx
mov r8, rdi
mov r9, rdi
call qword [sym.imp.KERNEL32.dll_PostQueuedCompletionStatus]
test eax, eax
jne 0x140146906
xor eax, eax
xchg byte [rdi + 8], al
test byte [0x14029d8b0], 0x19
je 0x140146906
lea rdi, [rsp + 0x1f0]
mov rcx, rdi
call fcn.140105050
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 8
mov qword [rsp + 0x40], 0
lea rdx, [0x14029d8b0]
lea r8, str.Chrome.MessageLoopProblem.COMPLETION_POST_ERROR
mov cl, 0x49
xor r9d, r9d
call fcn.1401589f0
jmp 0x140146906
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
mov rcx, qword [rbx + 0x28]
mov qword [rsp + 0x60], rcx
mov r11d, dword [rbx + 0x40]
mov r12, qword [rbx + 0x48]
xor ecx, ecx
mov qword [rbx + 0x48], rcx
mov r10, qword [rbx + 0x50]
mov qword [rbx + 0x50], rcx
test rdx, rdx
je 0x14014771e
mov rcx, qword [rbx + 0x58]
cmp r15d, eax
jne 0x140147191
mov dword [rsp + 0x80], r11d
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x58], r10
mov r13, rdx
movaps xmm0, xmmword [0x1402724c0]
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmmword [rsp + 0x2a0], xmm0
mov rbp, qword [r14 + 8]
mov rax, qword [rbp + 0x320]
mov byte [rsp + 0x2a0], 0
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0x1f0]
mov r8d, 0xa8
mov dl, 0xaa
call fcn.140189600
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x120], xmm1
mov r15d, 1
lock xadd qword [rbp + 0x28], r15
cmp rsi, 1
jne 0x140146db2
mov rax, qword [fcn.140105050]
lea rcx, [0x140182e50]
cmp rax, rcx
jne 0x14014723b
lea rsi, [rsp + 0x140]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140147721
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402b0aa0]
mov r9, r13
cmp byte [rsp + 0x2a0], 0
mov qword [rsp + 0x2a8], rax
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
jne 0x140146b85
mov byte [rsp + 0x2a0], 1
xor ecx, ecx
cmp rdi, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
mov rcx, rdi
sub rdi, rax
cmovo rdi, rdx
movaps xmm0, xmmword [rsp + 0x110]
movaps xmm1, xmmword [rsp + 0x120]
movups xmmword [rsp + 0x208], xmm1
movups xmmword [rsp + 0x1f8], xmm0
mov qword [rsp + 0x1f0], r9
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], 0
xor edx, edx
test rcx, rcx
jne 0x140146ffc
lea rax, [rsp + 0x218]
xor ecx, ecx
cmp rdi, 0x7d00
mov dword [rax + 0x18], edx
mov qword [rax + 0x48], rcx
mov byte [rax + 0x54], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov dword [rax + 0x40], 0
mov rdx, qword [rsp + 0x60]
mov byte [rax + 0x58], dl
mov byte [rsp + 0x272], dh
mov qword [rax + 0x60], r12
mov qword [rax + 0x68], rcx
mov qword [rax + 0x70], r10
mov qword [rax + 0x78], r11
mov dword [rax + 0x50], r15d
setl byte [rax + 0x59]
lea r8, [rsp + 0x1f8]
mov rdx, qword [r14 + 8]
cmp qword [rdx + 0x230], rcx
jne 0x140146c6c
mov rcx, qword [0x1402ab0f8]
mov qword [rsp + 0x228], rcx
lea rdx, [rsp + 0x168]
mov qword [rdx - 0x28], r9
xor r9d, r9d
lea r15, [rsp + 0x1f0]
mov qword [r15], r9
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rdx - 0x10], xmm1
movups xmmword [rdx - 0x20], xmm0
mov ecx, 0xa
mov rdi, rdx
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rax + 0x50]
mov dword [rdx + 0x50], ecx
mov al, byte [rax + 0x54]
mov byte [rdx + 0x54], al
movzx eax, word [r8 + 0x78]
mov word [rdx + 0x58], ax
mov al, byte [r8 + 0x7a]
mov byte [rdx + 0x5a], al
mov qword [rdx + 0x60], r12
mov qword [r15 + 0x88], r9
mov qword [rdx + 0x68], r9
mov qword [rdx + 0x70], r10
mov qword [r15 + 0x98], r9
mov qword [rdx + 0x78], r11
lea rdx, [rsp + 0x140]
lea r8, [rsp + 0x2a0]
mov rcx, r14
mov r9b, 1
call fcn.14014d6a0
mov rcx, r15
call fcn.1400f2d60
jmp 0x140146913
lea rcx, [fcn.140160ab0]
cmp rax, rcx
jne 0x14014754c
mov cl, 1
xor eax, eax
lock cmpxchg byte [rdi + 8], cl
jne 0x140146906
mov rcx, qword [rdi + 0x20]
mov edx, 0x401
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.USER32.dll_PostMessageW]
test eax, eax
jne 0x140146906
xor eax, eax
xchg byte [rdi + 8], al
test byte [0x14029d8b0], 0x19
je 0x140146906
lea rdi, [rsp + 0x1f0]
mov rcx, rdi
call fcn.140105050
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 8
mov qword [rsp + 0x40], 0
lea rdx, [0x14029d8b0]
lea r8, str.Chrome.MessageLoopProblem.MESSAGE_POST_ERROR
jmp 0x140146a1c
test byte [0x14029e190], 0x19
je 0x1401468b1
jmp 0x140147566
test rsi, rsi
jne 0x140147225
mov rax, qword [fcn.140105050]
lea rcx, [0x140182e50]
cmp rax, rcx
jne 0x140147254
lea rsi, [rsp + 0x140]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14014776d
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402b0aa0]
mov r9, r13
cmp byte [rsp + 0x2a0], 0
mov qword [rsp + 0x2a8], rax
jne 0x140146e2d
mov byte [rsp + 0x2a0], 1
movabs rcx, 0x8000000000000001
lea rdx, [rdi + rcx]
cmp rdx, 2
jb 0x140147748
lea rdx, [rax + rdi]
sar rdx, 0x3f
btc rdx, 0x3f
mov rcx, rax
add rcx, rdi
cmovo rcx, rdx
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
jmp 0x140146ba4
test byte [0x14029e190], 0x19
je 0x1401468ed
mov rax, qword [0x1402aef20]
xor rax, rsi
lea rcx, [fcn.140035920]
mov qword [rsp + 0x2b8], rcx
lea rcx, [0x14027e5d0]
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2a8], rax
movaps xmm0, xmmword [0x1402724c0]
lea rdi, [rsp + 0xf0]
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14029e190]
lea r9, str.WaitableEvent::Signal
mov rcx, rdi
mov dl, 0x49
call fcn.140158780
mov rax, qword [rdi]
test rax, rax
je 0x140146f55
lea rcx, [rsp + 0x2a8]
mov dl, byte [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
xor r15d, r15d
lea rdi, [rsp + 0x140]
mov qword [rdi], r15
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], r8
mov qword [rdi + 0x18], r15
mov byte [rdi + 0x20], dl
mov rdx, rdi
call fcn.140035920
mov rax, qword [rdi]
lea rcx, [rsp + 0x1f0]
mov qword [rcx], rax
mov qword [rdi], r15
movups xmm0, xmmword [rdi + 8]
movups xmmword [rcx + 8], xmm0
movups xmm0, xmmword [rdi + 0x11]
movups xmmword [rcx + 0x11], xmm0
call fcn.140158850
mov rcx, rdi
call fcn.140158850
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x140146f6f
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401eda70.0]
mov rax, qword [rsp + 0x2c0]
mov rax, qword [rax + 8]
test rax, rax
je 0x140146f8e
mov rcx, qword [rsp + 0x2a8]
call qword [case.0x1401eda70.0]
mov r15, qword [rsp + 0x58]
jmp 0x1401468ed
mov qword [rsp + 0x78], r9
mov ecx, 0x28
call fcn.140184834
mov r15, rax
mov qword [rax], 4
movups xmmword [rax + 8], xmm6
mov ecx, 0x2a0
call fcn.140184cf8
movabs rcx, 0xfffffffc00000000
and rcx, rax
cmp rcx, qword [0x1402aaec8]
je 0x1401470fd
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], 0
mov qword [r14 + 0x28], r15
mov r8, qword [rsp + 0x60]
mov qword [r14 + 0x30], r15
mov r9, qword [rsp + 0x78]
jmp 0x1401465f8
xor edx, edx
cmp rcx, rax
setns dl
movabs r8, 0x7fffffffffffffff
add r8, rdx
sub rcx, rax
cmovo rcx, r8
xor edx, edx
cmp rcx, 0x7d00
mov eax, dword [rsp + 0x80]
cmovl edx, eax
cmp eax, 2
cmovne edx, eax
jmp 0x140146bf3
mov qword [rsp + 0x78], r9
mov rax, qword [r14 + 0x38]
lea rcx, [rsp + 0x1f0]
mov qword [rcx], rax
call fcn.1400da320
mov rax, qword [r14 + 0x30]
mov qword [rsp + 0x68], rax
mov rax, qword [rax]
mov rcx, rax
shr rcx, 1
add rax, rcx
add rax, 2
mov qword [rsp + 0x88], rax
mov ecx, 0x28
call fcn.140184834
mov r15, rax
mov rax, qword [rsp + 0x88]
mov qword [r15], rax
imul rcx, rax, 0xa8
xorps xmm0, xmm0
movups xmmword [r15 + 8], xmm0
call fcn.140184cf8
movabs rcx, 0xfffffffc00000000
and rcx, rax
cmp rcx, qword [0x1402aaec8]
mov rdx, qword [rsp + 0x68]
je 0x140147174
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], 0
mov rcx, qword [rdx + 0x20]
mov qword [rdx + 0x20], r15
test rcx, rcx
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x78]
jne 0x14014779f
mov rax, qword [r14 + 0x30]
mov r15, qword [rax + 0x20]
mov qword [r14 + 0x30], r15
mov rcx, qword [r15]
mov rax, qword [r15 + 0x10]
inc rax
jmp 0x140146615
mov rcx, rax
mov qword [rsp + 0x68], rax
call fcn.1400da330
mov rax, qword [r14 + 0x28]
mov rcx, qword [rsp + 0x68]
mov qword [r15 + 0x18], rcx
mov qword [r15 + 0x20], 0
mov qword [r14 + 0x28], r15
test rax, rax
mov r8, qword [rsp + 0x60]
je 0x140146fee
mov r15, rax
mov rcx, rax
call fcn.140141330
mov rcx, r15
call fcn.14018482c
mov r8, qword [rsp + 0x60]
mov r15, qword [r14 + 0x28]
jmp 0x140146fee
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140146512
lock dec dword [rcx + 8]
jne 0x140146929
call fcn.14010a720
jmp 0x140146929
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x68]
call fcn.1400da330
mov rax, qword [rsp + 0x68]
mov rdx, qword [r14 + 0x30]
jmp 0x1401470bb
movaps xmm0, xmmword [0x1402724c0]
lea r9, [rsp + 0x2a0]
movaps xmmword [r9 + 0x10], xmm0
movaps xmmword [r9], xmm0
mov rax, qword [r14 + 8]
mov rax, qword [rax + 0x320]
mov byte [r9], 0
mov qword [r9 + 0x18], rax
lea r8, [rsp + 0x140]
mov qword [r8], rdx
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movups xmmword [r8 + 8], xmm0
movups xmmword [r8 + 0x18], xmm1
mov rax, qword [rsp + 0x60]
mov qword [r8 + 0x28], rax
mov qword [r8 + 0x30], rdi
mov qword [r8 + 0x38], rsi
mov dword [r8 + 0x40], r11d
mov qword [r8 + 0x48], r12
mov qword [r8 + 0x50], r10
mov qword [r8 + 0x58], rcx
lea rsi, [rsp + 0x1f0]
mov rcx, r14
mov rdx, rsi
call fcn.140020810
mov rcx, r14
mov rdx, rsi
call fcn.140020c10
jmp 0x140146913
call fcn.1401c4480
mov rcx, rdi
call qword [case.0x1401eda70.0]
mov rdi, qword [rdi]
jmp 0x14014658d
lea rsi, [rsp + 0xf0]
mov rcx, rsi
call qword [case.0x1401eda70.0]
mov rax, qword [rsi]
jmp 0x140146b5e
lea rsi, [rsp + 0xf0]
mov rcx, rsi
call qword [case.0x1401eda70.0]
mov rax, qword [rsi]
jmp 0x140146e10
call fcn.1401c4480
int3
mov rdx, rdi
mov rsi, r9
call qword [case.0x1401eda70.0]
mov r9, rsi
jmp 0x1401467b8
test byte [0x14029e560], 9
je 0x1401467d4
mov r12, r9
lea rdi, [rsp + 0x140]
mov qword [rdi], 0
mov rcx, r14
mov rdx, rdi
call fcn.140207b50
test al, al
je 0x1401472c4
test byte [0x14029e560], 0x19
jne 0x1401477be
mov r9, r12
jmp 0x1401467d4
mov rax, qword [r14 + 0x10]
mov esi, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140146913
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x1401472f9
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rdi, qword [r14 + 0x38]
mov rax, qword [r14 + 0xb0]
mov rcx, qword [r14 + 0xb8]
mov rsi, qword [rcx + 0x10]
mov r15, qword [rax + 0x10]
mov r12, qword [r14 + 0xd0]
mov r13, qword [r14 + 0xc8]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x14029e620], 0x19
je 0x140146913
sub r12, r13
shr r12, 3
imul eax, r12d, 0x3cf3cf3d
add esi, edi
add r15d, eax
add r15d, esi
mov ecx, dword [r14]
call fcn.140207f70
mov rsi, rax
lea rdi, [rsp + 0x140]
mov rcx, rdi
call fcn.140105050
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
movaps xmm0, xmmword [0x1402724c0]
lea r14, [rsp + 0x1f0]
movaps xmmword [r14], xmm0
movaps xmmword [r14 + 0x10], xmm0
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [r14 + 0x20], rcx
mov word [r14], 0x301
lea rcx, [0x1402744e8]
mov qword [r14 + 8], rcx
movsxd rcx, r15d
mov qword [r14 + 0x18], rcx
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
lea rdx, [0x14029e620]
mov cl, 0x43
mov r8, rsi
xor r9d, r9d
call fcn.1401589f0
mov rcx, r14
call fcn.140105100
jmp 0x140146913
mov r12, r9
add ecx, 0x1e0
mov eax, dword [rdi + 0x78]
shl rax, 0x20
and ecx, 0xfffffff8
or rcx, rax
xor rcx, qword [0x1402aef20]
lea rax, [fcn.140035920]
mov qword [rsp + 0x2b8], rax
lea rax, [0x14027e5d0]
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x2a8], rcx
movaps xmm0, xmmword [0x1402724c0]
lea r15, [rsp + 0xf0]
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14029e0f0]
lea r9, str.SequenceManager_PostTask
mov rcx, r15
mov dl, 0x49
call fcn.140158780
mov rax, qword [r15]
test rax, rax
je 0x1401474e1
lea rcx, [rsp + 0x2a8]
mov dl, byte [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
xor esi, esi
lea r15, [rsp + 0x140]
mov qword [r15], rsi
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], r8
mov qword [r15 + 0x18], rsi
mov byte [r15 + 0x20], dl
mov rdx, r15
call fcn.140035920
mov rax, qword [r15]
lea rcx, [rsp + 0x1f0]
mov qword [rcx], rax
mov qword [r15], rsi
movups xmm0, xmmword [r15 + 8]
movups xmmword [rcx + 8], xmm0
movups xmm0, xmmword [r15 + 0x11]
movups xmmword [rcx + 0x11], xmm0
call fcn.140158850
mov rcx, r15
call fcn.140158850
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x1401474fb
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401eda70.0]
mov rax, qword [rsp + 0x2c0]
mov rax, qword [rax + 8]
test rax, rax
je 0x14014751a
mov rcx, qword [rsp + 0x2a8]
call qword [case.0x1401eda70.0]
mov r9, r12
jmp 0x140146738
mov rcx, qword [0x1402b0aa0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rdi, rax
add rdi, r8
jmp 0x14014658d
mov rcx, rdi
call qword [case.0x1401eda70.0]
jmp 0x140146906
int3
test cl, 0x19
je 0x1401468b1
movaps xmm0, xmmword [0x1402724c0]
lea r15, [rsp + 0x140]
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14029e190]
lea r9, str.ScheduleWorkToSelf
mov rcx, r15
mov dl, 0x49
call fcn.140158780
mov rax, qword [r15]
test rax, rax
je 0x1401475dc
mov dl, byte [rsp + 0x158]
mov r8, qword [rsp + 0x148]
xor r9d, r9d
lea rcx, [rsp + 0x1f0]
mov qword [rcx], r9
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], r8
mov qword [rcx + 0x18], r9
mov byte [rcx + 0x20], dl
call fcn.140158850
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x140147714
mov rax, qword [rcx]
mov rax, qword [rax + 8]
jmp 0x14014770e
lea rax, [rdi + 0x18]
xor rax, qword [0x1402aef20]
lea rcx, [fcn.140035920]
mov qword [rsp + 0x2b8], rcx
lea rcx, [0x14027e5d0]
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2a8], rax
movaps xmm0, xmmword [0x1402724c0]
lea r15, [rsp + 0xf0]
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14029e190]
lea r9, str.ScheduleWork
mov rcx, r15
mov dl, 0x49
call fcn.140158780
mov rax, qword [r15]
test rax, rax
je 0x1401476db
lea rcx, [rsp + 0x2a8]
mov dl, byte [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
xor esi, esi
lea r15, [rsp + 0x140]
mov qword [r15], rsi
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], r8
mov qword [r15 + 0x18], rsi
mov byte [r15 + 0x20], dl
mov rdx, r15
call fcn.140035920
mov rax, qword [r15]
lea rcx, [rsp + 0x1f0]
mov qword [rcx], rax
mov qword [r15], rsi
movups xmm0, xmmword [r15 + 8]
movups xmmword [rcx + 8], xmm0
movups xmm0, xmmword [r15 + 0x11]
movups xmmword [rcx + 0x11], xmm0
call fcn.140158850
mov rcx, r15
call fcn.140158850
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x1401476f5
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401eda70.0]
mov rax, qword [rsp + 0x2c0]
mov rax, qword [rax + 8]
test rax, rax
je 0x140147714
mov rcx, qword [rsp + 0x2a8]
call qword [case.0x1401eda70.0]
mov r15, qword [rsp + 0x58]
jmp 0x1401468b1
int3
mov rcx, qword [0x1402b0aa0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140146b5e
add rcx, rax
cmp rcx, 1
ja 0x140147794
mov rcx, rdi
cmp rax, rdi
mov r9, r13
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x70]
je 0x140146ba4
int3
mov rcx, qword [0x1402b0aa0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140146e10
mov rcx, rdi
mov r9, r13
jmp 0x140146e5c
mov r15, rcx
call fcn.140141330
mov rcx, r15
call fcn.14018482c
mov r9, qword [rsp + 0x78]
mov r8, qword [rsp + 0x60]
jmp 0x1401470e2
add rsi, r15
lea rcx, [rsp + 0x1f0]
mov qword [rcx], rdi
mov qword [rcx + 8], rsi
call fcn.140207bf0
jmp 0x1401472c4
mov r12, r9
mov rax, qword [r14 + 0x30]
imul rdx, qword [rax + 0x10], 0xa8
add rdx, qword [rax + 0x18]
mov rdi, qword [rsi + 8]
test rdi, rdi
je 0x140147832
mov eax, 1
lock xadd dword [rdi], eax
test eax, eax
jle 0x14014784e
cmp eax, 0x7fffffff
je 0x140147851
mov rax, qword [rsi + 8]
mov rax, qword [rax + 8]
mov rcx, rdi
call qword [case.0x1401eda70.0]
lock dec dword [rdi]
je 0x140147844
add rsi, 0x10
cmp rsi, r15
mov r9, r12
je 0x1401467e5
jmp 0x1401477da
mov rax, qword [8]
xor ecx, ecx
call qword [case.0x1401eda70.0]
jmp 0x140147820
mov rcx, rdi
call fcn.1400b61f0
jmp 0x140147820
int3
int3