Function at 0x14016ac60
Capabilities:
Check for time delay via queryperformancecounter
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, 0x418
movaps xmmword [rsp + 0x400], xmm6
mov rax, qword [0x1402b7040]
xor rax, rsp
mov qword [rsp + 0x3f8], rax
mov rdi, qword [rdx]
test rdi, rdi
je 0x14016d113
mov r13, rdx
test r8d, r8d
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x68], rdx
jne 0x14016c387
movabs rdx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x140], rdx
movaps xmm0, xmmword [0x140275a70]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rcx + 0x10]
mov rax, qword [rax + 0x370]
mov byte [rsp + 0x130], 0
mov byte [rsp + 0x138], 0
mov qword [rsp + 0x140], rax
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x2e0], xmm0
movaps xmmword [rsp + 0x2f0], xmm0
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x300], rdx
mov qword [r13], 0
movups xmm0, xmmword [r13 + 8]
movups xmm1, xmmword [r13 + 0x18]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov r15, qword [r13 + 0x28]
mov r14, qword [r13 + 0x30]
mov rax, qword [r13 + 0x38]
mov r12d, dword [r13 + 0x40]
mov rbp, qword [r13 + 0x48]
xorps xmm0, xmm0
mov rdx, qword [r13 + 0x50]
movups xmmword [r13 + 0x48], xmm0
mov r8, qword [r13 + 0x58]
mov rcx, qword [rcx + 0x10]
mov ebx, 1
lock xadd qword [rcx + 0x28], rbx
test rax, rax
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x60], r8
je 0x14016ae47
cmp rax, 1
jne 0x14016d13a
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
cmp rax, rcx
jne 0x14016c0a5
lea rsi, [rsp + 0x350]
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 0x14016d4c6
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
mov qword [rsp + 0x350], rax
movabs r11, 0x8000000000000001
mov al, byte [rsp + 0x138]
mov rcx, qword [rsp + 0x350]
mov qword [rsp + 0x130], rcx
test al, al
jne 0x14016ae1e
mov byte [rsp + 0x138], 1
mov al, 1
xor edx, edx
cmp r14, rcx
setns dl
movabs r8, 0x7fffffffffffffff
add r8, rdx
mov r13, r14
sub r14, rcx
cmovo r14, r8
mov r10, qword [rsp + 0x48]
jmp 0x14016aefd
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
cmp rax, rcx
jne 0x14016c070
lea rsi, [rsp + 0x350]
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 0x14016d43a
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
mov qword [rsp + 0x350], rax
movabs r11, 0x8000000000000001
mov al, byte [rsp + 0x138]
mov rcx, qword [rsp + 0x350]
mov qword [rsp + 0x130], rcx
test al, al
jne 0x14016aed3
mov byte [rsp + 0x138], 1
mov al, 1
lea rdx, [r14 + r11]
cmp rdx, 2
mov r10, qword [rsp + 0x48]
jb 0x14016d419
lea rdx, [rcx + r14]
sar rdx, 0x3f
btc rdx, 0x3f
mov r13, rcx
add r13, r14
cmovo r13, rdx
cmp r14, 0x8ca0
setge dl
cmp r12d, 2
sete r8b
test r8b, dl
jne 0x14016cbcd
test al, al
jne 0x14016afb1
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
cmp rax, rcx
jne 0x14016c0b8
lea rsi, [rsp + 0x350]
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 0x14016d4ed
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
mov qword [rsp + 0x350], rax
mov r10, qword [rsp + 0x48]
movabs r11, 0x8000000000000001
mov al, byte [rsp + 0x138]
mov rcx, qword [rsp + 0x350]
test al, al
jne 0x14016afa9
mov byte [rsp + 0x138], 1
mov al, 1
mov qword [rsp + 0x130], rcx
test al, al
je 0x14016d055
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x120], xmm1
movaps xmmword [rsp + 0x110], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x2e4], xmm0
movups xmmword [rsp + 0x2f4], xmm0
mov dword [rsp + 0x304], 0
mov r9d, r15d
shr r9d, 8
mov r8, qword [r10 + 0x10]
cmp qword [r8 + 0x250], 0
jne 0x14016d18d
mov rax, qword [0x1402b9778]
shr rax, 1
mov edx, 0x3e8
mul rdx
jo 0x14016d116
mov rdx, qword [rsp + 0x50]
test rax, rax
js 0x14016d122
movaps xmm0, xmmword [rsp + 0x110]
movaps xmm1, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x240], xmm1
movaps xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x258], r13
mov qword [rsp + 0x260], rax
mov dword [rsp + 0x268], r12d
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movups xmmword [rsp + 0x26c], xmm0
movups xmmword [rsp + 0x27c], xmm1
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x28c], rax
mov dword [rsp + 0x294], 0xaaaaaaaa
mov qword [rsp + 0x298], 0
mov dword [rsp + 0x2a0], ebx
mov byte [rsp + 0x2a4], 0
mov qword [rsp + 0x2a8], rdi
mov byte [rsp + 0x2b0], r15b
mov byte [rsp + 0x2b1], 0
mov byte [rsp + 0x2b2], r9b
mov qword [rsp + 0x2b8], rbp
mov qword [rsp + 0x2c0], 0
mov qword [rsp + 0x2c8], rdx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x2d0], rax
mov rcx, qword [r8 + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
lea rdx, [0x14019ba40]
cmp rax, rdx
jne 0x14016c083
mov qword [rsp + 0x150], reloc.WLDAP32.dll_Ordinal_145
mov al, byte [0x1402c92e1]
test al, al
jne 0x14016d461
cmp qword [rsp + 0x270], 0
jne 0x14016b1ea
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x220]
test rax, rax
je 0x14016b18e
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x298], rcx
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x290], eax
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x218]
test rax, rax
je 0x14016b1ea
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x270], rcx
movups xmm0, xmmword [rax + 0x40]
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0x288], rcx
movups xmmword [rsp + 0x278], xmm0
cmp byte [rax + 0x74], 0
jne 0x14016bf57
cmp qword [rax + 0x58], 0
setne al
mov byte [rsp + 0x2a4], al
cmp dword [rsp + 0x290], 0
jne 0x14016d2d3
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016cf38
mov rsi, qword [rsp + 0x250]
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x268]
mov dword [rsp + 0x80], eax
mov edi, dword [rsp + 0x2a0]
movzx edx, byte [rsp + 0x2a4]
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2a8], 0
movzx ebx, byte [rsp + 0x2b0]
movzx r8d, byte [rsp + 0x2b1]
movzx r9d, byte [rsp + 0x2b2]
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x2b8], 0
mov rcx, qword [rsp + 0x2c0]
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x2c8]
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x2c8], 0
mov qword [rsp + 0xb8], rax
test rax, rax
je 0x14016d12b
mov qword [rsp + 0x98], rsi
mov byte [rsp + 0x5b], bl
mov byte [rsp + 0x5c], r9b
mov byte [rsp + 0x5e], dl
lea rax, [rsp + 0x26c]
mov byte [rsp + 0x5d], r8b
test r8b, 1
jne 0x14016d12e
mov rsi, qword [rsp + 0x2d0]
movaps xmm0, xmmword [rsp + 0x230]
movaps xmm1, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x160], xmm1
movaps xmmword [rsp + 0x150], xmm0
mov ecx, dword [rax + 0x30]
mov dword [rsp + 0x340], ecx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x330], xmm2
movaps xmmword [rsp + 0x320], xmm1
movaps xmmword [rsp + 0x310], xmm0
lea r9, [r10 + 0xb8]
mov rbx, qword [r10 + 0xb8]
mov rax, qword [r10 + 0xc0]
mov r13, rax
movabs r15, 0xcf3cf3cf3cf3cf3d
sub r13, rbx
mov qword [rsp + 0x50], r9
je 0x14016ce22
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
lea rax, [rcx + rdx]
sar rax, 0x3f
movabs r8, 0x8000000000000000
xor rax, r8
mov r8, rcx
add r8, rdx
cmovo r8, rax
sar r13, 3
imul r13, r15
lea rax, [r11 + rdx]
add rax, 0xfffffffffffffffe
cmp rax, 0xfffffffffffffffe
setb al
cmp dword [rsp + 0x80], 0
cmovne r8, rcx
mov qword [rsp + 0xc8], r8
setne cl
or cl, al
mov byte [rsp + 0x5f], cl
mov r14, r13
dec r13
mov qword [rsp + 0xc0], r13
shr r13, 1
mov rbx, qword [r10 + 0xb8]
mov rax, qword [r10 + 0xc0]
mov rcx, rax
sub rcx, rbx
sar rcx, 3
imul rcx, r15
cmp r13, rcx
jae 0x14016d055
mov rbp, r15
imul rdx, r13, 0xa8
lea r12, [rbx + rdx]
cmp dword [rbx + rdx + 0x38], 0
jne 0x14016bf76
mov r8, qword [r12 + 0x28]
mov rdx, qword [r12 + 0x30]
mov r15, r11
lea r9, [rdx + r11]
cmp r9, 2
jb 0x14016d145
lea r9, [r8 + rdx]
sar r9, 0x3f
movabs r11, 0x8000000000000000
xor r9, r11
add r8, rdx
cmovo r8, r9
mov rdx, r8
mov r8, qword [rsp + 0xc8]
cmp byte [rsp + 0x5f], 0
je 0x14016d164
cmp rdx, r8
mov r11, r15
je 0x14016cbd5
mov r9, qword [rsp + 0x50]
jl 0x14016b6a2
cmp r14, rcx
mov r15, rbp
je 0x14016c0cb
mov dword [rsp + 0x8c], edi
mov qword [rsp + 0x90], rsi
jae 0x14016d055
imul rbp, r14, 0xa8
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
lea rax, [rbx + rbp]
add rax, 0x20
movups xmmword [rax - 0x10], xmm1
movups xmmword [rax - 0x20], xmm0
lea rsi, [r12 + 0x20]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [r12 + 0x70]
mov dword [rax + 0x50], ecx
mov cl, byte [r12 + 0x74]
mov byte [rax + 0x54], cl
mov rdx, qword [r12 + 0x78]
mov qword [r12 + 0x78], 0
mov rcx, qword [rax + 0x58]
mov qword [rax + 0x58], rdx
test rcx, rcx
jne 0x14016c253
add rbx, rbp
mov al, byte [r12 + 0x82]
mov byte [rbx + 0x82], al
movzx eax, word [r12 + 0x80]
mov word [rbx + 0x80], ax
mov rax, qword [r12 + 0x88]
mov qword [r12 + 0x88], 0
mov rcx, qword [rbx + 0x88]
mov qword [rbx + 0x88], rax
test rcx, rcx
jne 0x14016d199
mov rax, qword [r12 + 0x90]
mov qword [rbx + 0x90], rax
mov rax, qword [r12 + 0x98]
mov qword [r12 + 0x98], 0
mov rcx, qword [rbx + 0x98]
mov qword [rbx + 0x98], rax
test rcx, rcx
mov rsi, qword [rsp + 0x90]
mov edi, dword [rsp + 0x8c]
jne 0x14016cb8e
mov rax, qword [r12 + 0xa0]
mov qword [rbx + 0xa0], rax
mov rax, qword [r10 + 0xc0]
mov r9, qword [rsp + 0x50]
mov rcx, qword [r9]
sub rax, rcx
sar rax, 3
imul rax, r15
cmp r14, rax
jae 0x14016d055
imul rax, r14, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x14016b625
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016b625
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14016b625
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x14016d10d
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016d10d
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], r14
mov rcx, qword [r10 + 0xb8]
mov rdx, qword [r10 + 0xc0]
sub rdx, rcx
sar rdx, 3
imul rdx, r15
cmp r14, rdx
jae 0x14016d055
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x14016b683
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016b683
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14016b683
mov rax, qword [rcx + 0x98]
test rax, rax
je 0x14016d110
mov al, byte [rax + 4]
test al, al
jne 0x14016d110
cmp qword [rsp + 0xc0], 1
ja 0x14016b3db
mov rbx, qword [r10 + 0xb8]
mov rax, qword [r10 + 0xc0]
jmp 0x14016b6a8
mov r13, r14
mov r15, rbp
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x360], xmm1
movaps xmmword [rsp + 0x350], xmm0
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x370], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x378], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x380], rcx
mov ecx, dword [rsp + 0x80]
mov dword [rsp + 0x388], ecx
mov ecx, dword [rsp + 0x340]
mov dword [rsp + 0x3bc], ecx
movaps xmm0, xmmword [rsp + 0x310]
movaps xmm1, xmmword [rsp + 0x320]
movaps xmm2, xmmword [rsp + 0x330]
movups xmmword [rsp + 0x38c], xmm0
movups xmmword [rsp + 0x39c], xmm1
movups xmmword [rsp + 0x3ac], xmm2
mov dword [rsp + 0x3c0], edi
movzx ecx, byte [rsp + 0x5e]
mov byte [rsp + 0x3c4], cl
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x3c8], rdx
movzx ecx, byte [rsp + 0x5b]
mov byte [rsp + 0x3d0], cl
lea r12, [rsp + 0x370]
movzx ecx, byte [rsp + 0x5d]
mov byte [rsp + 0x3d1], cl
movzx ecx, byte [rsp + 0x5c]
mov byte [rsp + 0x3d2], cl
mov r8, qword [rsp + 0xb0]
mov qword [rsp + 0x3d8], r8
mov r9, qword [rsp + 0xa8]
mov qword [rsp + 0x3e0], r9
mov r11, qword [rsp + 0xa0]
mov qword [rsp + 0x3e8], r11
mov qword [rsp + 0x3f0], rsi
mov rcx, rax
sub rcx, rbx
sar rcx, 3
imul rcx, r15
cmp r13, rcx
je 0x14016bfbc
jae 0x14016d055
imul rax, r13, 0xa8
lea r14, [rbx + rax]
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
add rax, rbx
add rax, 0x20
movups xmmword [rax - 0x10], xmm1
movups xmmword [rax - 0x20], xmm0
mov ecx, 0xa
mov rdi, rax
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [r12 + 0x50]
mov dword [rax + 0x50], ecx
mov cl, byte [r12 + 0x54]
mov byte [rax + 0x54], cl
mov qword [rsp + 0x3c8], 0
mov rcx, qword [rax + 0x58]
mov qword [rax + 0x58], rdx
test rcx, rcx
mov rdx, qword [rsp + 0x50]
jne 0x14016c28d
mov al, byte [r12 + 0x62]
mov byte [r14 + 0x82], al
movzx eax, word [r12 + 0x60]
mov word [r14 + 0x80], ax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x3d8], 0
mov rcx, qword [r14 + 0x88]
mov qword [r14 + 0x88], rax
test rcx, rcx
jne 0x14016d1bc
mov rax, qword [rsp + 0x3e0]
mov qword [r14 + 0x90], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x3e8], 0
mov rcx, qword [r14 + 0x98]
mov qword [r14 + 0x98], rax
test rcx, rcx
jne 0x14016cbb0
mov rax, qword [rsp + 0x3f0]
mov qword [r14 + 0xa0], rax
mov rax, qword [r10 + 0xc0]
mov rcx, qword [rdx]
sub rax, rcx
sar rax, 3
imul rax, r15
cmp r13, rax
jae 0x14016d055
imul rax, r13, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x14016b946
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016b946
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14016b946
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x14016d13f
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016d13f
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], r13
mov rcx, qword [r10 + 0xb8]
mov rdx, qword [r10 + 0xc0]
sub rdx, rcx
sar rdx, 3
imul rdx, r15
cmp r13, rdx
jae 0x14016d055
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
mov r13, qword [rsp + 0x68]
je 0x14016b9a9
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14016b9a9
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14016b9a9
mov rax, qword [rcx + 0x98]
test rax, rax
je 0x14016d142
mov al, byte [rax + 4]
test al, al
jne 0x14016d142
mov rcx, qword [rsp + 0x3e8]
test rcx, rcx
jne 0x14016bf5e
mov rsi, qword [rsp + 0x3d8]
test rsi, rsi
jne 0x14016c1d1
mov rcx, qword [rsp + 0x3c8]
test rcx, rcx
jne 0x14016bf83
mov rax, qword [r10]
lea rcx, [fcn.140148c30]
cmp qword [rax + 0x98], rcx
jne 0x14016bd46
mov ecx, 0xaaaaaaaa
mov dword [rsp + 0x153], ecx
mov dword [rsp + 0x150], ecx
lea rcx, [fcn.14003a810]
mov rdx, qword [r10 + 0x18]
cmp qword [rax + 0x30], rcx
mov esi, dword [rdx + 8]
jne 0x14016bd81
test esi, esi
jne 0x14016cf8f
movabs r15, 0xaaaaaaaaaaaaaa
mov rax, qword [r10 + 0xb8]
mov ebp, 0xaaaaaaaa
cmp rax, qword [r10 + 0xc0]
je 0x14016bd71
mov rax, qword [r10]
mov rcx, qword [r10 + 0x18]
lea rdx, [0x14019ba10]
cmp qword [rax + 0x10], rdx
mov esi, dword [rcx + 8]
jne 0x14016bd5b
test esi, esi
jne 0x14016cfd1
cmp byte [r10 + 0x118], 1
jne 0x14016bd71
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016cfa5
mov rsi, qword [r10 + 0xb8]
cmp rsi, qword [r10 + 0xc0]
je 0x14016d055
mov rax, qword [r10 + 0x18]
mov edi, dword [rax + 8]
test edi, edi
jne 0x14016cfbb
xor ebx, ebx
cmp dword [r10 + 0xd0], 0
jne 0x14016d2b5
mov edi, dword [rsi + 0x38]
mov rax, qword [r10]
mov rcx, qword [r10 + 0x18]
lea rdx, [fcn.14019b9d0]
cmp qword [rax + 0x48], rdx
mov ebp, dword [rcx + 8]
jne 0x14016be51
test ebp, ebp
jne 0x14016cfe7
mov rax, qword [r10 + 0x10]
mov rcx, qword [r10 + 0xa8]
mov al, byte [rax + 0x51]
xor ebp, ebp
cmp edi, 2
cmovne ebp, edi
cmp al, byte [rcx + 0x38]
cmovae ebp, edi
mov r12, qword [rsi + 0x28]
mov rax, qword [rsi + 0x30]
mov qword [rsp + 0x70], rax
mov r15, r12
shr r15, 8
mov r14b, 1
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016cf1c
cmp qword [r10 + 0x98], 0
jne 0x14016be7a
mov ecx, dword [rsp + 0x150]
mov edx, dword [rsp + 0x153]
mov dword [rsp + 0x17b], edx
mov dword [rsp + 0x178], ecx
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016cf58
shl r15, 8
movzx esi, r12b
or rsi, r15
mov al, byte [r10 + 0x190]
mov ecx, r14d
and cl, al
cmp cl, 1
jne 0x14016bd02
cmp qword [r10 + 0x178], rsi
mov r15, qword [rsp + 0x70]
jne 0x14016bba6
cmp qword [r10 + 0x180], r15
jne 0x14016bba6
cmp dword [r10 + 0x188], ebx
jne 0x14016bba6
cmp dword [r10 + 0x18c], ebp
je 0x14016bc4c
mov rax, qword [r10 + 0x18]
mov edi, dword [rax + 8]
test edi, edi
jne 0x14016cf6e
mov qword [r10 + 0x178], rsi
mov qword [r10 + 0x180], r15
mov dword [r10 + 0x188], ebx
mov dword [r10 + 0x18c], ebp
mov byte [r10 + 0x190], r14b
mov ecx, dword [rsp + 0x178]
mov edx, dword [rsp + 0x17b]
mov dword [r10 + 0x191], ecx
mov dword [r10 + 0x194], edx
mov edi, dword [rax + 8]
test edi, edi
jne 0x14016cffd
mov rcx, qword [r10 + 0x90]
lea r9, [rsp + 0x350]
mov qword [r9], rsi
mov qword [r9 + 8], r15
mov dword [r9 + 0x10], ebx
mov dword [r9 + 0x14], ebp
mov byte [r9 + 0x18], r14b
mov eax, dword [rsp + 0x178]
mov edx, dword [rsp + 0x17b]
mov dword [r9 + 0x19], eax
mov dword [r9 + 0x1c], edx
lea r8, [rsp + 0x130]
mov rdx, r10
call fcn.1401492f0
mov r10, qword [rsp + 0x48]
movzx eax, byte [0x1402c9336]
test al, al
jne 0x14016d1da
mov rcx, qword [rsp + 0x2c8]
test rcx, rcx
jne 0x14016bccb
mov rsi, qword [rsp + 0x2b8]
test rsi, rsi
jne 0x14016bcf3
mov rcx, qword [rsp + 0x2a8]
test rcx, rcx
jne 0x14016bd2e
mov rcx, qword [r13 + 0x50]
test rcx, rcx
jne 0x14016bcbf
mov rcx, qword [r13 + 0x48]
test rcx, rcx
jne 0x14016be6b
mov rcx, qword [r13]
test rcx, rcx
jne 0x14016bd1a
mov rcx, qword [rsp + 0x3f8]
xor rcx, rsp
cmp rcx, qword [0x1402b7040]
je 0x14016bcd7
call fcn.14019f290
int3
lock dec dword [rcx]
jne 0x14016bc8f
call fcn.14019cac4
jmp 0x14016bc8f
lock dec dword [rcx]
jne 0x14016bc68
call fcn.14019cac4
jmp 0x14016bc68
movaps xmm6, xmmword [rsp + 0x400]
add rsp, 0x418
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lock dec dword [rsi + 8]
jne 0x14016bc75
jmp 0x14016cdac
mov ecx, r14d
and cl, 1
cmp cl, al
mov r15, qword [rsp + 0x70]
je 0x14016bc4c
jmp 0x14016bba6
lock dec dword [rcx]
jne 0x14016bca5
mov rax, qword [rcx + 0x10]
call qword [0x1402a7b00]
jmp 0x14016bca5
lock dec dword [rcx]
jne 0x14016bc86
mov rax, qword [rcx + 0x10]
call qword [0x1402a7b00]
jmp 0x14016bc86
lea rdx, [rsp + 0x130]
mov rcx, r10
call fcn.140148c30
jmp 0x14016bc47
test esi, esi
jne 0x14016d057
cmp byte [r10 + 0x118], 0
jne 0x14016ba7a
xor r14d, r14d
mov ebx, 0xaaaaaaaa
xor r12d, r12d
jmp 0x14016bb15
test esi, esi
jne 0x14016d013
movabs r15, 0xaaaaaaaaaaaaaa
mov rax, qword [r10 + 0xb8]
mov ebp, 0xaaaaaaaa
cmp rax, qword [r10 + 0xc0]
je 0x14016bd71
mov rax, qword [r10]
mov rcx, qword [r10 + 0x18]
lea rdx, [0x14019ba10]
cmp qword [rax + 0x10], rdx
mov esi, dword [rcx + 8]
jne 0x14016be3a
test esi, esi
jne 0x14016d083
cmp byte [r10 + 0x118], 1
jne 0x14016bd71
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016d029
mov rsi, qword [r10 + 0xb8]
cmp rsi, qword [r10 + 0xc0]
je 0x14016d055
mov rax, qword [r10 + 0x18]
mov edi, dword [rax + 8]
test edi, edi
jne 0x14016d03f
xor ebx, ebx
cmp dword [r10 + 0xd0], 0
jne 0x14016d523
mov edi, dword [rsi + 0x38]
mov rax, qword [r10]
mov rcx, qword [r10 + 0x18]
lea rdx, [fcn.14019b9d0]
cmp qword [rax + 0x48], rdx
mov ebp, dword [rcx + 8]
jne 0x14016be5e
test ebp, ebp
je 0x14016bae2
jmp 0x14016d099
test esi, esi
jne 0x14016d0cb
cmp byte [r10 + 0x118], 0
jne 0x14016bdd1
jmp 0x14016bd71
test ebp, ebp
je 0x14016bae2
jmp 0x14016d06d
test ebp, ebp
je 0x14016bae2
jmp 0x14016d0e1
lock dec dword [rcx + 8]
jne 0x14016bc9c
jmp 0x14016d541
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016d0af
cmp byte [r10 + 0x118], 1
jne 0x14016bb32
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016d0f7
mov rsi, qword [r10 + 0x98]
mov rcx, r10
call fcn.14000aff0
shl r15, 8
movzx ecx, r12b
or rcx, r15
lea r9, [rsp + 0x310]
mov qword [r9], rcx
mov rcx, qword [rsp + 0x70]
mov qword [r9 + 8], rcx
mov dword [r9 + 0x10], ebx
mov dword [r9 + 0x14], ebp
mov byte [r9 + 0x18], r14b
mov ecx, dword [rsp + 0x150]
mov edx, dword [rsp + 0x153]
mov dword [r9 + 0x19], ecx
mov dword [r9 + 0x1c], edx
mov rcx, qword [rsi]
mov r10, qword [rcx + 0x10]
mov byte [rsp + 0x20], al
lea rdi, [rsp + 0x350]
lea r8, [rsp + 0x130]
mov rcx, rsi
mov rdx, rdi
mov rax, r10
call qword [0x1402a7b00]
mov r10, qword [rsp + 0x48]
mov r12, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x70], rax
mov r15, r12
shr r15, 8
mov ebx, dword [rdi + 0x10]
mov ebp, dword [rdi + 0x14]
mov r14b, byte [rdi + 0x18]
mov eax, dword [rdi + 0x19]
mov dword [rsp + 0x150], eax
mov eax, dword [rdi + 0x1c]
mov dword [rsp + 0x153], eax
mov rax, qword [r10 + 0x18]
jmp 0x14016bb32
mov al, 1
jmp 0x14016b1e3
lock dec dword [rcx]
jne 0x14016b9ba
call fcn.14019cac4
mov r10, qword [rsp + 0x48]
jmp 0x14016b9ba
mov r15, r11
mov rdx, qword [r12 + 0x28]
jmp 0x14016b464
lock dec dword [rcx]
jne 0x14016b9dc
mov rax, qword [rcx + 0x10]
call qword [0x1402a7b00]
mov r10, qword [rsp + 0x48]
jmp 0x14016b9dc
lea rdx, [rsp + 0x350]
mov rcx, qword [rsp + 0x50]
call fcn.14016db80
mov r10, qword [rsp + 0x48]
jmp 0x14016c05f
cmp rax, qword [r10 + 0xc8]
jae 0x14016bfa0
test rax, rax
je 0x14016d055
mov rbx, rsi
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
mov ecx, 0xa
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [r12 + 0x50]
mov dword [rax + 0x70], ecx
mov cl, byte [r12 + 0x54]
mov byte [rax + 0x74], cl
mov qword [rax + 0x78], rdx
xor ecx, ecx
mov qword [rsp + 0x3c8], rcx
mov dl, byte [r12 + 0x62]
mov byte [rax + 0x82], dl
movzx edx, word [r12 + 0x60]
mov word [rax + 0x80], dx
mov qword [rax + 0x88], r8
mov qword [rsp + 0x3d8], rcx
mov qword [rax + 0x90], r9
mov qword [rax + 0x98], r11
mov qword [rsp + 0x3e8], rcx
mov qword [rax + 0xa0], rbx
add rax, 0xa8
mov qword [r10 + 0xc0], rax
mov rdx, qword [rsp + 0x50]
jmp 0x14016b8e1
lea rcx, [rsp + 0x350]
call qword [0x1402a7b00]
jmp 0x14016aea4
lea rdx, [rsp + 0x230]
call qword [0x1402a7b00]
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
jmp 0x14016b1ea
lea rcx, [rsp + 0x350]
call qword [0x1402a7b00]
jmp 0x14016adef
lea rcx, [rsp + 0x350]
call qword [0x1402a7b00]
jmp 0x14016af7d
cmp rax, qword [r10 + 0xc8]
jae 0x14016c1af
test rax, rax
je 0x14016d055
mov r8d, edi
mov rdx, rsi
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
lea rsi, [r12 + 0x20]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [r12 + 0x70]
mov dword [rax + 0x70], ecx
mov cl, byte [r12 + 0x74]
mov byte [rax + 0x74], cl
mov rcx, qword [r12 + 0x78]
mov qword [rax + 0x78], rcx
mov esi, 0
mov qword [r12 + 0x78], rsi
movzx ecx, word [r12 + 0x80]
mov word [rax + 0x80], cx
mov cl, byte [r12 + 0x82]
mov byte [rax + 0x82], cl
mov rcx, qword [r12 + 0x88]
mov qword [rax + 0x88], rcx
mov qword [r12 + 0x88], rsi
mov rcx, qword [r12 + 0x90]
mov qword [rax + 0x90], rcx
mov rcx, qword [r12 + 0x98]
mov qword [rax + 0x98], rcx
mov qword [r12 + 0x98], rsi
mov rcx, qword [r12 + 0xa0]
mov qword [rax + 0xa0], rcx
add rax, 0xa8
mov rsi, rdx
mov edi, r8d
mov qword [r10 + 0xc0], rax
jmp 0x14016b5c0
mov rcx, r9
mov rdx, r12
mov rbx, r9
call fcn.14016db80
mov r9, rbx
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
jmp 0x14016c1a3
lock dec dword [rsi + 8]
jne 0x14016b9cb
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1402036e0]
cmp qword [rcx + 0x10], rdx
jne 0x14016c1fb
lea rcx, [0x14000be10]
cmp rax, rcx
je 0x14016c213
mov rcx, rsi
mov edx, 1
call qword [0x1402a7b00]
mov r10, qword [rsp + 0x48]
jmp 0x14016b9cb
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x14016c221
lock dec dword [rcx]
je 0x14016c24c
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14016c22f
lock dec dword [rdi]
je 0x14016c239
mov rcx, rsi
call fcn.14019cac4
jmp 0x14016c209
lea rcx, [rdi + 8]
call fcn.14014ddd0
mov rcx, rdi
call fcn.14019cac4
jmp 0x14016c22f
call fcn.14019cac4
jmp 0x14016c221
lock dec dword [rcx]
jne 0x14016b510
mov rax, qword [rcx + 0x10]
lea rdx, [0x1400630f0]
cmp rax, rdx
je 0x14016c286
call qword [0x1402a7b00]
mov r10, qword [rsp + 0x48]
movabs r11, 0x8000000000000001
jmp 0x14016b510
call fcn.14019cac4
jmp 0x14016c272
lock dec dword [rcx]
jne 0x14016b84c
mov rax, qword [rcx + 0x10]
lea rdx, [0x1400630f0]
cmp rax, rdx
je 0x14016c2bb
call qword [0x1402a7b00]
mov r10, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
jmp 0x14016b84c
call fcn.14019cac4
jmp 0x14016c2ac
mov rcx, rsi
call qword [0x1402a7b00]
mov rax, qword [rsi]
jmp 0x14016c32e
cmp rax, 1
jne 0x14016d13a
mov r13, rdx
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
lea rsi, [rsp + 0x350]
cmp rax, rcx
jne 0x14016c2c2
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 0x14016d6e8
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
mov r9, qword [rsp + 0x48]
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
mov rcx, r14
sub r14, rax
cmovo r14, rdx
jmp 0x14016c48e
mov rcx, rsi
call qword [0x1402a7b00]
mov rax, qword [rsi]
jmp 0x14016c45a
lea rdx, [rsp + 0x180]
call qword [0x1402a7b00]
mov r9, qword [rsp + 0x48]
jmp 0x14016c628
mov al, 1
jmp 0x14016c621
mov rax, qword [rcx + 0x10]
mov rax, qword [rax + 0x370]
mov rbp, qword [r13]
mov qword [r13], 0
movups xmm0, xmmword [r13 + 0x18]
movaps xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [r13 + 8]
movaps xmmword [rsp + 0xd0], xmm0
mov r15b, byte [r13 + 0x28]
mov r12b, byte [r13 + 0x29]
mov r14, qword [r13 + 0x30]
mov rax, qword [r13 + 0x38]
mov ebx, dword [r13 + 0x40]
mov rdx, qword [r13 + 0x48]
xorps xmm0, xmm0
mov r8, qword [r13 + 0x50]
movups xmmword [r13 + 0x48], xmm0
mov r9, qword [r13 + 0x58]
mov rcx, qword [rcx + 0x10]
mov edi, 1
lock xadd qword [rcx + 0x28], rdi
test rax, rax
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x60], r9
jne 0x14016c2d0
mov r13, rdx
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
lea rsi, [rsp + 0x350]
cmp rax, rcx
jne 0x14016c357
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 0x14016d6c1
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
movabs rcx, 0x8000000000000001
lea rdx, [r14 + rcx]
cmp rdx, 2
mov r9, qword [rsp + 0x48]
jb 0x14016d679
lea rdx, [rax + r14]
sar rdx, 0x3f
btc rdx, 0x3f
mov rcx, rax
add rcx, r14
cmovo rcx, rdx
xor edx, edx
cmp r14, 0x8ca0
mov r8d, ebx
cmovge r8d, edx
cmp ebx, 2
cmovne r8d, ebx
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], rcx
mov qword [rsp + 0x1b0], rdx
mov dword [rsp + 0x1b8], r8d
mov qword [rsp + 0x1e8], rdx
mov byte [rsp + 0x1f4], dl
xorps xmm0, xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1d0], xmm0
mov dword [rsp + 0x1e0], edx
mov qword [rsp + 0x1f8], rbp
mov byte [rsp + 0x200], r15b
mov byte [rsp + 0x202], r12b
mov qword [rsp + 0x208], r13
mov qword [rsp + 0x210], rdx
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x220], rax
mov dword [rsp + 0x1f0], edi
mov byte [rsp + 0x201], dl
mov rax, qword [r9 + 0x10]
mov rcx, qword [rax + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
lea r14, [0x14019ba40]
cmp rax, r14
jne 0x14016c368
mov qword [rsp + 0x2e0], reloc.WLDAP32.dll_Ordinal_145
mov al, byte [0x1402c92e1]
test al, al
jne 0x14016d70f
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x220]
test rax, rax
je 0x14016c5cc
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x1e8], rcx
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x1e0], eax
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x218]
test rax, rax
je 0x14016c628
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x1c0], rcx
movups xmm0, xmmword [rax + 0x40]
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0x1d8], rcx
movups xmmword [rsp + 0x1c8], xmm0
cmp byte [rax + 0x74], 0
jne 0x14016c380
cmp qword [rax + 0x58], 0
setne al
mov byte [rsp + 0x1f4], al
cmp dword [rsp + 0x1e0], 0
jne 0x14016d7dd
mov rbp, qword [rsp + 0x208]
test rbp, rbp
je 0x14016c658
mov eax, 1
lock xadd dword [rbp + 8], eax
cmp eax, 0x7fffffff
je 0x14016d514
lea r12, [rsp + 0x1a0]
mov bl, byte [r12 + 0x62]
lea rdx, str.PushOntoDelayedIncomingQueue
lea r8, str....._base_task_sequence_manager_task_queue_impl.cc
lea r13, [rsp + 0x150]
mov rcx, r13
mov r9d, 0x230
call fcn.140133460
mov ecx, reloc.WLDAP32.dll_Ordinal_216
call fcn.14019ca88
mov r15, rax
mov dword [rax], 1
lea rax, [0x140038700]
mov qword [r15 + 8], rax
lea rax, [0x14006b2c0]
mov qword [r15 + 0x10], rax
lea rax, [method.std::__Cr::ctype_char_.virtual_56]
mov qword [r15 + 0x18], rax
lea rax, [0x140038800]
mov qword [r15 + 0x20], rax
mov rdx, qword [rsp + 0x48]
mov qword [r15 + 0x28], rdx
movaps xmm0, xmmword [r12 - 0x20]
movaps xmm1, xmmword [r12 - 0x10]
movups xmmword [r15 + 0x40], xmm1
movups xmmword [r15 + 0x30], xmm0
lea rdi, [r15 + 0x50]
mov ecx, 0xa
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
mov eax, dword [r12 + 0x50]
mov dword [r15 + 0xa0], eax
mov al, byte [r12 + 0x54]
mov byte [r15 + 0xa4], al
mov rax, qword [r12 + 0x58]
mov qword [r15 + 0xa8], rax
xor eax, eax
mov qword [r12 + 0x58], rax
mov cl, byte [r12 + 0x62]
mov byte [r15 + 0xb2], cl
movzx ecx, word [r12 + 0x60]
mov word [r15 + 0xb0], cx
mov rcx, qword [r12 + 0x68]
mov qword [r15 + 0xb8], rcx
mov qword [r12 + 0x68], rax
mov rcx, qword [r12 + 0x70]
mov qword [r15 + 0xc0], rcx
mov rcx, qword [r12 + 0x78]
mov qword [r15 + 0xc8], rcx
mov qword [r12 + 0x78], rax
mov rax, qword [r12 + 0x80]
mov qword [r15 + 0xd0], rax
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x2e0], xmm0
test r15, r15
je 0x14016d517
lea rsi, [rdx + 0x28]
mov rcx, rsi
mov rdi, rdx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016cb80
mov rax, qword [rdi + 0x10]
mov ecx, dword [rax + 0x90]
test ecx, ecx
je 0x14016cae2
mov rax, qword [rax + 0x370]
mov rax, qword [fcn.14019b0e0]
lea rcx, [0x1401869b0]
lea rdi, [rsp + 0x350]
cmp rax, rcx
jne 0x14016cb6f
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 0x14016d697
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c9700]
mov rdi, rax
mov r8, qword [rsp + 0x48]
mov r13, r14
mov rax, qword [r8 + 0x10]
mov r14d, 1
lock xadd qword [rax + 0x28], r14
mov r9, qword [r8 + 0x40]
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movaps xmmword [rsp + 0x320], xmm1
movaps xmmword [rsp + 0x310], xmm0
xorps xmm6, xmm6
movups xmmword [rsp + 0x354], xmm6
movups xmmword [rsp + 0x364], xmm6
mov dword [rsp + 0x374], 0
cmp qword [r8 + 0x30], 0
je 0x14016cbea
mov r12, qword [r8 + 0x38]
mov rax, qword [r12 + 8]
inc rax
mov rcx, qword [r12 + 0x20]
xor edx, edx
cmp rax, rcx
cmovne rdx, rax
cmp qword [r12], rdx
je 0x14016cca5
xor edx, edx
cmp rax, rcx
cmovne rdx, rax
mov qword [r12 + 8], rdx
cmp rdx, rcx
jae 0x14016d51a
mov rax, qword [r12 + 0x18]
imul rcx, rdx, 0xa8
movaps xmm0, xmmword [rsp + 0x310]
movaps xmm1, xmmword [rsp + 0x320]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
mov qword [rax + rcx + 0x20], rdi
xorps xmm0, xmm0
movups xmmword [rax + rcx + 0x28], xmm0
mov dword [rax + rcx + 0x38], 0
movups xmm1, xmmword [rsp + 0x350]
movups xmm2, xmmword [rsp + 0x360]
movups xmmword [rax + rcx + 0x3c], xmm1
movups xmmword [rax + rcx + 0x4c], xmm2
mov rdx, qword [rsp + 0x370]
mov qword [rax + rcx + 0x5c], rdx
mov qword [rax + rcx + 0x68], 0
mov dword [rax + rcx + 0x70], r14d
mov byte [rax + rcx + 0x74], 0
mov qword [rax + rcx + 0x78], r15
mov word [rax + rcx + 0x80], 0
mov byte [rax + rcx + 0x82], bl
mov qword [rax + rcx + 0x88], rbp
mov qword [rax + rcx + 0x90], r14
movups xmmword [rax + rcx + 0x98], xmm0
mov rax, qword [r8 + 0x38]
mov rcx, qword [r8 + 0x40]
inc rcx
mov qword [r8 + 0x40], rcx
mov rdx, qword [r8 + 0x48]
cmp rdx, rcx
cmova rcx, rdx
mov qword [r8 + 0x48], rcx
mov rcx, qword [rax + 8]
cmp rcx, qword [rax + 0x20]
jae 0x14016d51d
mov rdx, qword [r8 + 0x10]
imul rdi, rcx, 0xa8
add rdi, qword [rax + 0x18]
mov rcx, qword [rdx + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
cmp rax, r13
jne 0x14016cafc
mov qword [rsp + 0x178], reloc.WLDAP32.dll_Ordinal_145
mov al, byte [0x1402c92e1]
test al, al
jne 0x14016d779
cmp qword [rdi + 0x40], 0
jne 0x14016ca4f
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x220]
test rax, rax
je 0x14016ca03
mov rcx, qword [rax + 0x18]
mov qword [rdi + 0x68], rcx
mov eax, dword [rax + 0x10]
mov dword [rdi + 0x60], eax
mov eax, dword [0x1402c6098]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x218]
test rax, rax
je 0x14016ca4f
mov rcx, qword [rax + 0x18]
mov qword [rdi + 0x40], rcx
movups xmm0, xmmword [rax + 0x40]
mov rcx, qword [rax + 0x50]
mov qword [rdi + 0x58], rcx
movups xmmword [rdi + 0x48], xmm0
cmp byte [rax + 0x74], 0
jne 0x14016cadb
cmp qword [rax + 0x58], 0
setne al
mov byte [rdi + 0x74], al
mov rax, qword [r8 + 0x38]
mov rcx, qword [rax + 8]
cmp rcx, qword [rax + 0x20]
jae 0x14016d520
mov rbx, qword [rax + 0x18]
imul r14, rcx, 0xa8
cmp dword [rbx + r14 + 0x60], 0
jne 0x14016d623
mov rbx, qword [r8 + 0x60]
mov r14, qword [r8 + 0x68]
cmp rbx, r14
jne 0x14016cea2
test r9, r9
jne 0x14016cb15
cmp byte [r8 + 0x58], 1
jne 0x14016cb15
mov rax, qword [r8 + 0x10]
lock or dword [rax + 0x68], 1
mov rax, qword [r8 + 0x1c8]
mov rcx, qword [r8 + 0x1d0]
lock or qword [rax], rcx
mov bl, byte [r8 + 0x59]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp bl, 1
mov r13, qword [rsp + 0x68]
jne 0x14016cb23
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x10]
call fcn.14016df20
jmp 0x14016cb23
mov al, 1
jmp 0x14016ca4c
mov r8, rdi
cmp byte [rdi + 0x1da], 1
je 0x14016c7c5
mov r13, r14
xor edi, edi
jmp 0x14016c830
mov rdx, rdi
mov rdi, r9
call qword [0x1402a7b00]
mov r9, rdi
mov r8, qword [rsp + 0x48]
jmp 0x14016ca4f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rsp + 0x68]
mov al, byte [0x1402c9336]
test al, al
jne 0x14016d54b
mov rcx, qword [rsp + 0x218]
test rcx, rcx
jne 0x14016cb63
mov rsi, qword [rsp + 0x208]
test rsi, rsi
jne 0x14016cb58
mov rcx, qword [rsp + 0x1f8]
jmp 0x14016bc7d
lock dec dword [rsi + 8]
jne 0x14016cb4b
jmp 0x14016ce2a
lock dec dword [rcx]
jne 0x14016cb3e
call fcn.14019cac4
jmp 0x14016cb3e
mov rcx, rdi
call qword [0x1402a7b00]
mov rdi, qword [rdi]
jmp 0x14016c824
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016c7b3
lock dec dword [rcx]
jne 0x14016b5a5
call fcn.14019cac4
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
jmp 0x14016b5a5
lock dec dword [rcx]
jne 0x14016b8cb
call fcn.14019cac4
mov rdx, qword [rsp + 0x50]
mov r10, qword [rsp + 0x48]
jmp 0x14016b8cb
xor r12d, r12d
jmp 0x14016af18
cmp dword [r12 + 0x70], edi
mov r9, qword [rsp + 0x50]
jg 0x14016b48e
jmp 0x14016b6a2
mov qword [rsp + 0x50], r9
mov ecx, 0x30
call fcn.14019ca88
mov r12, rax
movups xmmword [rax], xmm6
mov ecx, 0x2a0
call fcn.14019ce68
mov qword [rsp + 0x60], rax
mov r8d, 0x2a0
mov rcx, rax
xor edx, edx
call fcn.1401d8720
mov rcx, qword [rsp + 0x60]
mov qword [r12 + 0x10], rcx
movabs rax, 0xfffffffc00000000
and rax, rcx
cmp rax, qword [0x1402b9708]
jne 0x14016cc83
call fcn.140004d30
mov r8, qword [rsp + 0x48]
mov rax, qword [r8 + 0x30]
mov rcx, qword [rsp + 0x60]
mov qword [r12 + 0x18], rcx
mov qword [r12 + 0x20], 4
mov qword [r12 + 0x28], 0
mov qword [r8 + 0x30], r12
test rax, rax
jne 0x14016d896
mov qword [r8 + 0x38], r12
mov r9, qword [rsp + 0x50]
jmp 0x14016c88d
mov qword [r12 + 0x18], rcx
mov qword [r12 + 0x20], 4
mov qword [r12 + 0x28], 0
mov r8, qword [rsp + 0x48]
mov qword [r8 + 0x30], r12
jmp 0x14016cc75
mov qword [rsp + 0x50], r9
mov rax, qword [r8 + 0x40]
lea rcx, [rsp + 0x110]
mov qword [rcx], rax
mov r12, r8
call fcn.140107130
mov rax, qword [r12 + 0x38]
mov rax, qword [rax + 0x20]
mov rcx, rax
shr rcx, 1
lea r12, [rax + rcx]
add r12, 2
mov ecx, 0x30
call fcn.14019ca88
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], r12
imul rcx, r12, 0xa8
mov qword [rsp + 0x80], rcx
xorps xmm0, xmm0
movups xmmword [rax], xmm0
call fcn.14019ce68
mov r12, rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x80]
call fcn.1401d8720
mov rax, qword [rsp + 0x60]
mov qword [rax + 0x10], r12
movabs rax, 0xfffffffc00000000
and rax, r12
cmp rax, qword [0x1402b9708]
jne 0x14016cd42
mov rcx, r12
call fcn.140004d30
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x18], r12
mov rdx, qword [rsp + 0x78]
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], 0
movabs rax, 0x186186186186186
cmp rdx, rax
jae 0x14016d893
mov r8, qword [rsp + 0x48]
mov rax, qword [r8 + 0x38]
mov r12, qword [rax + 0x28]
mov qword [rax + 0x28], rcx
test r12, r12
mov r9, qword [rsp + 0x50]
jne 0x14016d8b7
mov rax, qword [r8 + 0x38]
mov r12, qword [rax + 0x28]
mov qword [r8 + 0x38], r12
mov rax, qword [r12 + 8]
mov rcx, qword [r12 + 0x20]
inc rax
jmp 0x14016c8ad
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1402036e0]
cmp qword [rcx + 0x10], rdx
jne 0x14016cdcc
lea rcx, [0x14000be10]
cmp rax, rcx
je 0x14016cddf
mov rcx, rsi
mov edx, 1
call qword [0x1402a7b00]
jmp 0x14016bc75
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x14016cded
lock dec dword [rcx]
je 0x14016ce1b
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14016cdfb
lock dec dword [rdi]
je 0x14016ce08
mov rcx, rsi
call fcn.14019cac4
jmp 0x14016bc75
lea rcx, [rdi + 8]
call fcn.14014ddd0
mov rcx, rdi
call fcn.14019cac4
jmp 0x14016cdfb
call fcn.14019cac4
jmp 0x14016cded
xor r13d, r13d
jmp 0x14016b6a8
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1402036e0]
cmp qword [rcx + 0x10], rdx
jne 0x14016ce4a
lea rcx, [0x14000be10]
cmp rax, rcx
je 0x14016ce62
mov rcx, rsi
mov edx, 1
call qword [0x1402a7b00]
mov r13, qword [rsp + 0x68]
jmp 0x14016cb4b
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x14016ce70
lock dec dword [rcx]
je 0x14016ce9b
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14016ce7e
lock dec dword [rdi]
je 0x14016ce88
mov rcx, rsi
call fcn.14019cac4
jmp 0x14016ce58
lea rcx, [rdi + 8]
call fcn.14014ddd0
mov rcx, rdi
call fcn.14019cac4
jmp 0x14016ce7e
call fcn.14019cac4
jmp 0x14016ce70
mov rax, qword [r8 + 0x38]
mov rcx, qword [rax + 8]
cmp rcx, qword [rax + 0x20]
jae 0x14016d9a2
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x14016d9a5
imul rdx, rcx, 0xa8
add rdx, qword [rax + 0x18]
mov eax, 1
lock xadd dword [rdi], eax
test eax, eax
jle 0x14016d9a8
cmp eax, 0x7fffffff
je 0x14016d9ab
mov r15, r9
mov rax, qword [rbx + 8]
mov rax, qword [rax + 8]
mov rcx, rdi
call qword [0x1402a7b00]
lock dec dword [rdi]
je 0x14016d9ae
add rbx, 0x10
cmp rbx, r14
mov r8, qword [rsp + 0x48]
mov r9, r15
je 0x14016ca89
jmp 0x14016cea2
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x14016da4b
mov r10, qword [rsp + 0x48]
mov rax, qword [r10 + 0x18]
jmp 0x14016bb24
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016b207
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016bb59
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp edi, eax
jne 0x14016da4e
mov r10, qword [rsp + 0x48]
mov rax, qword [r10 + 0x18]
mov r15, qword [rsp + 0x70]
jmp 0x14016bbb5
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016ba26
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016ba89
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp edi, eax
je 0x14016baac
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016ba6c
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp ebp, eax
je 0x14016bae2
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp edi, eax
je 0x14016bbff
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016bd89
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016bde0
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp edi, eax
je 0x14016be03
int3
ud2
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016bd63
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp ebp, eax
je 0x14016bae2
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016bdc7
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp ebp, eax
je 0x14016bae2
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x14016da51
mov r10, qword [rsp + 0x48]
mov rax, qword [r10 + 0x18]
jmp 0x14016be85
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016be42
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp ebp, eax
je 0x14016bae2
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, qword [rsp + 0x48]
cmp esi, eax
je 0x14016be9e
int3
int3
int3
int3
mov rax, 0xffffffffffffffff
jmp 0x14016b028
lea rax, [r11 - 2]
jmp 0x14016b036
int3
inc dword [r10 + 0xd0]
jmp 0x14016b2f9
call fcn.1402178c0
int3
int3
lea r9, [r8 + r15]
cmp r9, 2
setae r9b
cmp r8, rdx
sete r8b
or r8b, r9b
jne 0x14016b464
int3
mov r9, qword [rsp + 0x60]
lea r8, [r9 + r15]
cmp r8, 2
setae r11b
mov r8, qword [rsp + 0x78]
cmp r9, r8
sete r9b
or r9b, r11b
jne 0x14016b477
int3
xor eax, eax
mov rdx, qword [rsp + 0x50]
jmp 0x14016b036
lock dec dword [rcx + 8]
jne 0x14016b55c
call fcn.14014dd30
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
jmp 0x14016b55c
lock dec dword [rcx + 8]
jne 0x14016b891
call fcn.14014dd30
mov rdx, qword [rsp + 0x50]
mov r10, qword [rsp + 0x48]
jmp 0x14016b891
mov r14, r13
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 4]
mov edi, dword [rax + 8]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
test edi, edi
sete cl
cmp eax, esi
setne dl
or dl, cl
je 0x14016da54
cmp esi, eax
mov r13, r14
mov rax, qword [rsp + 0x48]
jne 0x14016bc5b
lea rsi, [rax + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016d229
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x18]
mov rdi, qword [rcx + 0x40]
mov ebx, dword [rax + 8]
test ebx, ebx
jne 0x14016dacc
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0xa8]
mov rbx, qword [rcx + 0x10]
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x14016dae4
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0xa0]
mov r13, qword [rcx + 0x10]
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x14016daaa
mov rax, qword [rsp + 0x48]
mov r12, qword [rax + 0xb8]
mov r15, qword [rax + 0xc0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x150], 0xe6
mov al, byte [0x1402c9336]
test al, al
jne 0x14016d8d6
mov r13, r14
jmp 0x14016bc5b
mov rcx, r10
call fcn.14019b9d0
mov r10, qword [rsp + 0x48]
mov rcx, qword [r10 + 0x10]
xor ebx, ebx
cmp al, byte [rcx + 0x51]
setbe bl
jmp 0x14016babc
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016da66
mov r10, qword [rsp + 0x48]
cmp byte [r10 + 0x1a8], 1
movabs r11, 0x8000000000000001
jne 0x14016b1f8
mov al, byte [0x1402c932a]
test al, al
je 0x14016b1f8
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016da77
mov r10, qword [rsp + 0x48]
cmp byte [r10 + 0x118], 0
movabs r11, 0x8000000000000001
jne 0x14016b1f8
mov rax, qword [r10 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016da88
mov r10, qword [rsp + 0x48]
cmp byte [r10 + 0x1b0], 1
movabs r11, 0x8000000000000001
jne 0x14016b1f8
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x178], rax
mov rax, qword [r10 + 0x10]
mov rcx, qword [rax + 0x370]
lea rdx, [rsp + 0x350]
mov rsi, r10
call fcn.14019a810
mov rax, qword [rsi + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14016da99
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x1a8], 0
je 0x14016da46
mov rax, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x1a0]
xor edx, edx
cmp rax, rcx
setns dl
movabs r8, 0x7fffffffffffffff
add r8, rdx
sub rax, rcx
cmovo rax, r8
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x150], Ordinal_219
mov al, byte [0x1402c932a]
test al, al
jne 0x14016d95c
mov r10, qword [rsp + 0x48]
movabs r11, 0x8000000000000001
jmp 0x14016b1f8
lea rdx, [rcx + r11]
cmp rdx, 2
setae dl
cmp rcx, r14
sete r8b
or r8b, dl
mov r13, r14
jne 0x14016aefd
int3
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016ae9c
movzx eax, al
add ecx, 0x1d8
shl rbx, 0x20
and ecx, 0xfffffff8
or rcx, rbx
xor rcx, qword [0x1402c77e8]
lea rdx, [rsp + 0x350]
mov qword [rdx], rcx
lea rcx, str.SequenceManager_PostTask
lea r8, [rsp + 0x310]
mov qword [r8], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x150]
mov ecx, eax
mov r9d, 3
call fcn.140159b70
movabs r11, 0x8000000000000001
mov r10, qword [rsp + 0x48]
jmp 0x14016b14a
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016ade7
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016af75
int3
int3
int3
int3
int3
mov rcx, r10
call fcn.14019b9d0
mov r10, qword [rsp + 0x48]
mov rcx, qword [r10 + 0x10]
xor ebx, ebx
cmp al, byte [rcx + 0x51]
setbe bl
jmp 0x14016be13
call fcn.14014dd30
jmp 0x14016bc9c
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
mov edi, dword [rax + 4]
mov ebx, dword [rax + 8]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
test ebx, ebx
sete cl
cmp eax, edi
setne dl
or dl, cl
je 0x14016da57
cmp edi, eax
mov r13, qword [rsp + 0x68]
jne 0x14016cb31
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016d595
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x18]
mov rdi, qword [rcx + 0x40]
mov ebx, dword [rax + 8]
test ebx, ebx
jne 0x14016db00
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0xa8]
mov rbx, qword [rcx + 0x10]
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x14016db1c
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0xa0]
mov r14, qword [rcx + 0x10]
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x14016dabb
mov rax, qword [rsp + 0x48]
mov r12, qword [rax + 0xb8]
mov r15, qword [rax + 0xc0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x178], 0xe6
mov al, byte [0x1402c9336]
test al, al
jne 0x14016d9c0
mov r13, qword [rsp + 0x68]
jmp 0x14016cb31
mov al, byte [0x1402c932a]
test al, al
je 0x14016ca78
mov r15, r9
lea rdi, [rsp + 0x148]
mov qword [rdi], 0
mov rcx, r8
mov rdx, rdi
call fcn.140217790
test al, al
je 0x14016d66c
mov qword [rsp + 0x178], Ordinal_219
mov al, byte [0x1402c932a]
test al, al
jne 0x14016db38
mov r8, qword [rsp + 0x48]
mov r9, r15
jmp 0x14016ca78
add rcx, rax
cmp rcx, 2
setae cl
cmp rax, r14
sete dl
or dl, cl
mov rcx, r14
jne 0x14016c48e
int3
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rdi, rax
add rdi, r8
jmp 0x14016c824
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016c45a
mov rcx, qword [0x1402c9700]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016c32e
movzx eax, al
add ecx, 0x1d8
shl rdi, 0x20
and ecx, 0xfffffff8
or rcx, rdi
xor rcx, qword [0x1402c77e8]
lea rdx, [rsp + 0x350]
mov qword [rdx], rcx
lea rcx, str.SequenceManager_PostTask
lea r8, [rsp + 0x310]
mov qword [r8], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x2e0]
mov ecx, eax
mov r9d, 3
call fcn.140159b70
mov r9, qword [rsp + 0x48]
cmp qword [rsp + 0x1c0], 0
je 0x14016c597
jmp 0x14016c628
movzx eax, al
add ecx, 0x1d8
mov edx, dword [rdi + 0x70]
shl rdx, 0x20
and ecx, 0xfffffff8
or rcx, rdx
xor rcx, qword [0x1402c77e8]
lea rdx, [rsp + 0x110]
mov qword [rdx], rcx
lea rcx, str.SequenceManager_PostTask
lea r8, [rsp + 0x130]
mov qword [r8], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x178]
mov ecx, eax
mov rbx, r9
mov r9d, 3
call fcn.140159b70
mov r9, rbx
mov r8, qword [rsp + 0x48]
jmp 0x14016c9cf
mov al, byte [0x1402c932a]
test al, al
je 0x14016c636
mov qword [rsp + 0x150], 0
lea rsi, [r9 + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016d811
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
lea rdi, [rsp + 0x150]
mov rcx, qword [rsp + 0x48]
mov rdx, rdi
call fcn.140217790
mov r15d, eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r15b, r15b
je 0x14016c636
mov qword [rsp + 0x2e0], Ordinal_219
mov al, byte [0x1402c932a]
test al, al
je 0x14016c636
movzx ecx, al
lea r9, [rsp + 0x350]
mov qword [r9], rdi
lea rax, [rsp + 0x180]
mov qword [r9 + 8], rax
lea rax, str.task_posted_to_disabled_queue
lea r8, [rsp + 0x310]
mov qword [r8], rax
lea rdx, [rsp + 0x2e0]
call fcn.140217d50
jmp 0x14016c636
int3
mov r12, rax
mov rcx, rax
call fcn.14016f640
mov rcx, r12
call fcn.14019cac4
mov r8, qword [rsp + 0x48]
mov r12, qword [r8 + 0x30]
jmp 0x14016cc75
mov rcx, r12
call fcn.14016f640
mov rcx, r12
call fcn.14019cac4
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
jmp 0x14016cd8e
movzx esi, al
add ebx, edi
sub r15, r12
shr r15, 3
imul edi, r15d, 0x3cf3cf3d
add edi, r13d
add edi, ebx
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 8]
call fcn.1402178a0
lea r8, [rsp + 0x310]
mov qword [r8], rax
lea rax, [rsp + 0x178]
mov dword [rax], edi
lea rcx, [0x14027bc29]
lea rdx, [rsp + 0x350]
mov qword [rdx], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdx
lea rax, [0x14027b790]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x43
lea rdx, [rsp + 0x150]
mov ecx, esi
xor r9d, r9d
call fcn.1402178d0
jmp 0x14016d2ad
movzx ecx, al
lea rax, [rsp + 0x178]
lea r9, [rsp + 0x350]
mov qword [r9], rax
lea rax, [rsp + 0x230]
mov qword [r9 + 8], rax
lea rax, str.task_posted_to_disabled_queue
lea r8, [rsp + 0x310]
mov qword [r8], rax
lea rdx, [rsp + 0x150]
call fcn.140217d50
jmp 0x14016d405
int3
int3
int3
int3
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [0x1402a7b00]
jmp 0x14016cf05
movzx esi, al
add ebx, edi
sub r15, r12
shr r15, 3
imul edi, r15d, 0x3cf3cf3d
add edi, r14d
add edi, ebx
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 8]
call fcn.1402178a0
lea r8, [rsp + 0x130]
mov qword [r8], rax
lea rax, [rsp + 0x148]
mov dword [rax], edi
lea rcx, [0x14027bc29]
lea rdx, [rsp + 0x110]
mov qword [rdx], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdx
lea rax, [0x14027b790]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x43
lea rdx, [rsp + 0x178]
mov ecx, esi
xor r9d, r9d
call fcn.1402178d0
jmp 0x14016d619
call fcn.1401d8b50
int3
int3
int3
int3
int3
int3
int3
int3
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
je 0x14016d2e2
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
je 0x14016d31c
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
je 0x14016d348
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
je 0x14016d3a1
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebp, eax
je 0x14016d277
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebp, eax
je 0x14016d5e3
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebx, eax
jne 0x14016da5a
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
jmp 0x14016d241
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebp, eax
jne 0x14016da5d
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
jmp 0x14016d25c
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebx, eax
jne 0x14016da60
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
jmp 0x14016d5ad
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebp, eax
jne 0x14016da63
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
jmp 0x14016d5c8
add rbx, r14
movzx ecx, al
lea r9, [rsp + 0x110]
mov qword [r9], rdi
mov qword [r9 + 8], rbx
lea rax, str.task_posted_to_disabled_queue
lea r8, [rsp + 0x130]
mov qword [r8], rax
lea rdx, [rsp + 0x178]
call fcn.140217d50
jmp 0x14016d66c