Function at 0x140009500
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
movaps xmmword [rsp + 0xd0], xmm6
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x140231028]
xor rax, rsp
mov qword [rsp + 0xc8], rax
mov ecx, 0x238
call fcn.1401298a8
mov r14, rax
mov rcx, rax
mov rdx, rdi
call fcn.1401637c0
mov ecx, 0x388
call fcn.1401298a8
mov rbx, rax
mov eax, dword [rdi]
mov dword [rsp + 0x48], eax
mov al, byte [rdi + 4]
mov byte [rsp + 0x4c], al
mov rax, qword [rdi + 8]
mov qword [rdi + 8], 0
movzx ecx, word [rdi + 0x10]
movups xmm0, xmmword [rdi + 0x18]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [0x1401fe190]
mov qword [rbx], rdx
lea rdx, [0x1401fe260]
mov qword [rbx + 8], rdx
lea rdx, [0x1401fe2b0]
mov qword [rbx + 0x10], rdx
lea rdx, [0x1401ffba8]
mov qword [rbx + 0x18], rdx
mov rdx, qword [r14 + 8]
mov qword [rbx + 0x20], rdx
test rdx, rdx
je 0x1400095ce
mov r8d, 1
lock xadd dword [rdx], r8d
cmp r8d, 0x7fffffff
je 0x140009c73
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rbx + 0x28], 2
mov qword [rbx + 0x30], r14
mov edx, dword [rsp + 0x48]
mov dword [rbx + 0x38], edx
mov dl, byte [rsp + 0x4c]
mov byte [rbx + 0x3c], dl
mov qword [rbx + 0x40], rax
mov word [rbx + 0x48], cx
movapd xmm0, xmmword [rsp + 0x30]
movupd xmmword [rbx + 0x50], xmm0
test dl, 1
je 0x140009bd5
lea r14, [rsp + 0x40]
mov qword [r14], r15
lea rcx, [rsp + 0x50]
mov qword [rcx], r14
mov qword [rcx + 8], 8
call fcn.1400b7080
movabs rax, 0x1fffffffffffff
and rax, qword [r14]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mov edx, 0xffffffcb
call fcn.14014942c
movsd xmm1, qword [0x1401f2fe8]
xor eax, eax
ucomisd xmm1, xmm0
seta al
lea rcx, [0x140216c10]
movsd xmm6, qword [rcx + rax*8]
mov eax, dword [0x140243994]
mov ecx, dword [0x1402403d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140009bdd
movabs r12, 0xfffffffc00000000
cmp byte [0x140243990], 0
jne 0x1400096a2
xorps xmm6, xmm6
movsd qword [rbx + 0x60], xmm6
mov dword [rbx + 0x68], 2
lea r14, [rbx + 0x70]
mov qword [rbx + 0x70], 0
mov rax, r14
and rax, r12
cmp rax, qword [0x140233688]
jne 0x1400096d1
mov rcx, r14
call fcn.140097e00
lea rcx, [rbx + 0x78]
mov qword [rbx + 0x80], r14
mov byte [rbx + 0x88], 1
call qword [sym.imp.KERNEL32.dll_InitializeConditionVariable]
movzx eax, byte [rbx + 0x48]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x140009c76
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x140009c7d
mov rdx, qword [rbx + 0x20]
mov qword [rbx + 0x98], rax
xorps xmm6, xmm6
movups xmmword [rbx + 0xa0], xmm6
mov r14, qword [rbx + 0x40]
mov dword [rbx + 0xb0], 0
mov byte [rbx + 0x140], 0
movups xmmword [rbx + 0xb8], xmm6
movups xmmword [rbx + 0xc8], xmm6
movups xmmword [rbx + 0xd8], xmm6
movups xmmword [rbx + 0xe8], xmm6
movups xmmword [rbx + 0xf8], xmm6
movups xmmword [rbx + 0x108], xmm6
movups xmmword [rbx + 0x118], xmm6
movups xmmword [rbx + 0x121], xmm6
test rdx, rdx
je 0x140009790
mov eax, 1
lock xadd dword [rdx], eax
cmp eax, 0x7fffffff
je 0x140009c80
lea r8, [rbx + 0x38]
lea rcx, [rbx + 0x148]
call fcn.1400b9040
lea rax, [rbx + 0x1f0]
movups xmmword [rbx + 0x1d8], xmm6
xor ecx, ecx
mov qword [rbx + 0x1e8], rcx
mov qword [rbx + 0x1f0], rax
mov qword [rbx + 0x1f8], rax
mov qword [rbx + 0x200], rcx
mov dword [rbx + 0x208], ecx
lea rax, [rbx + 0x228]
movups xmmword [rbx + 0x210], xmm6
mov qword [rbx + 0x220], rcx
mov qword [rbx + 0x228], rax
mov qword [rbx + 0x230], rax
mov qword [rbx + 0x238], rcx
mov dword [rbx + 0x240], ecx
mov rax, r14
and rax, r12
cmp rax, qword [0x140233688]
je 0x140009c99
mov qword [rbx + 0x248], r14
mov qword [rbx + 0x250], 0
mov ecx, 0x40
call fcn.1401298a8
mov r14, rax
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x140009852
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x140009c83
xorpd xmm0, xmm0
movupd xmmword [r14 + 0x1c], xmm0
movupd xmmword [r14 + 0x10], xmm0
mov qword [r14 + 0x30], rax
lea rax, [0x1401ffca0]
mov qword [r14], rax
mov rax, rbx
and rax, r12
cmp rax, qword [0x140233688]
jne 0x140009887
mov rcx, rbx
call fcn.140097e00
mov qword [r14 + 0x38], rbx
mov qword [rbx + 0x258], r14
mov ecx, 0x38
call fcn.1401298a8
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x1400098ba
mov edx, 1
lock xadd dword [rcx], edx
cmp edx, 0x7fffffff
je 0x140009c86
xorpd xmm0, xmm0
movupd xmmword [rax + 0x1c], xmm0
movupd xmmword [rax + 0x10], xmm0
mov qword [rax + 0x30], rcx
lea rcx, [0x1401ffcc0]
mov qword [rax], rcx
mov qword [rbx + 0x260], rax
xor r14d, r14d
mov byte [rbx + 0x268], r14b
mov qword [rbx + 0x270], r14
lea rax, [rbx + 0x280]
movupd xmmword [rbx + 0x280], xmm0
mov qword [rbx + 0x278], rax
lea rax, [rbx + 0x298]
movupd xmmword [rbx + 0x298], xmm0
mov qword [rbx + 0x290], rax
mov word [rbx + 0x2a8], 0
lea rax, [rbx + 0x300]
movupd xmmword [rbx + 0x2b0], xmm0
movupd xmmword [rbx + 0x2c0], xmm0
movupd xmmword [rbx + 0x2d0], xmm0
movupd xmmword [rbx + 0x2e0], xmm0
movupd xmmword [rbx + 0x2f0], xmm0
mov qword [rbx + 0x300], rax
mov qword [rbx + 0x308], rax
mov qword [rbx + 0x310], r14
mov dword [rbx + 0x318], r14d
lea r13, [rbx + 0x320]
mov qword [rbx + 0x320], r13
mov qword [rbx + 0x328], r13
mov qword [rbx + 0x330], r14
mov byte [rbx + 0x338], r14b
mov qword [rbx + 0x340], r14
mov ecx, 8
call fcn.1401298a8
mov dword [rax], r14d
mov byte [rax + 4], r14b
mov qword [rbx + 0x348], rax
test rax, rax
je 0x1400099ca
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x140009c89
mov qword [rbx + 0x350], r13
lea rax, [rbx + 0x358]
mov qword [rbx + 0x358], rax
mov qword [rbx + 0x360], rax
mov qword [rbx + 0x368], 0
cmp byte [rbx + 0x3c], 1
jne 0x140009a57
lea r13, [rsp + 0x40]
mov qword [r13], r15
lea r14, [rsp + 0x50]
mov qword [r14], r13
mov ebp, 8
mov qword [r14 + 8], rbp
mov rcx, r14
call fcn.1400b7080
mov rax, r15
mov r15, qword [r13]
mov qword [r13], rax
mov qword [r14], r13
mov qword [r14 + 8], rbp
lea rcx, [rsp + 0x50]
call fcn.1400b7080
mov rax, qword [r13]
mov qword [rbx + 0x130], r15
mov qword [rbx + 0x138], rax
cmp byte [rbx + 0x140], 0
jne 0x140009a57
mov byte [rbx + 0x140], 1
mov rax, qword [rbx + 0x40]
mov qword [rbx + 0x370], rax
mov ecx, 8
call fcn.1401298a8
mov dword [rax], 0
mov byte [rax + 4], 0
mov qword [rbx + 0x378], rax
test rax, rax
je 0x140009a97
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x140009c8c
mov qword [rbx + 0x380], rbx
mov qword [rsp + 0x40], 0xe8
mov al, byte [0x140243668]
test al, al
jne 0x140009ca6
lea r15, [rbx + 0x10]
mov rcx, qword [rbx + 0x1d0]
mov rax, qword [0x140233688]
mov rdx, rcx
and rdx, r12
cmp rdx, rax
jne 0x140009ade
call fcn.1400980c0
mov rax, qword [0x140233688]
mov rcx, r15
and rcx, r12
cmp rcx, rax
jne 0x140009af1
mov rcx, r15
call fcn.140097e00
mov r14, rbx
add r14, 8
mov qword [rbx + 0x1d0], r15
mov rax, qword [rbx + 0x370]
mov rax, qword [fcn.1400b3290]
lea rcx, [0x1400b3340]
lea r15, [rsp + 0x50]
cmp rax, rcx
jne 0x140009c62
mov qword [r15], 0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r15]
movabs rcx, 0x8637bd05af6
cmp rax, rcx
jg 0x140009ccf
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402439e0]
add rax, 0x1c9c380
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rbx + 0x270], rcx
mov rcx, qword [rbx + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x28]
mov rdx, r14
call qword [0x140223bc8]
mov qword [rsi], rbx
mov rcx, qword [rdi + 8]
and r12, rcx
cmp r12, qword [0x140233688]
je 0x140009c8f
mov qword [rdi + 8], 0
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.14012c2d0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xorps xmm6, xmm6
jmp 0x140009667
lea rcx, [0x140243994]
call fcn.1401299b4
cmp dword [0x140243994], 0xffffffff
jne 0x14000968c
xorpd xmm0, xmm0
lea r14, [rsp + 0x50]
movupd xmmword [r14 + 0x1f], xmm0
movapd xmmword [r14 + 0x10], xmm0
movapd xmmword [r14], xmm0
mov rax, qword [str.unknown]
mov qword [r14 + 0x2f], rax
mov rax, qword [0x14021970c]
mov qword [r14 + 0x34], rax
movupd xmmword [r14 + 0x3c], xmm0
movupd xmmword [r14 + 0x4c], xmm0
movupd xmmword [r14 + 0x5c], xmm0
mov byte [r14 + 0x6c], 0
mov rcx, r14
xor edx, edx
call fcn.140048010
mov al, byte [r14 + 0x2d]
mov byte [0x140243990], al
lea rcx, [0x140243994]
call fcn.140129a1c
jmp 0x14000968c
mov rcx, r15
call qword [0x140223bc8]
mov rax, qword [r15]
jmp 0x140009b58
int3
xor edx, edx
jmp 0x140009719
int3
int3
int3
int3
int3
int3
call fcn.1400984d0
jmp 0x140009b9e
mov rcx, r14
call fcn.140097e00
jmp 0x140009815
movzx ecx, al
lea rax, str.SequenceManager
lea r8, [rsp + 0x50]
mov qword [r8], rax
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x40]
mov r9b, 0x4e
call fcn.14018eaa0
jmp 0x140009ab5
mov rcx, qword [0x1402439e0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140009b58