Function at 0x1401cacb8
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, 0x4c8
movdqa xmmword [rsp + 0x4b0], xmm7
movaps xmmword [rsp + 0x4a0], xmm6
mov rsi, r8
mov qword [rsp + 0x90], rdx
mov rbx, rcx
mov rax, qword [0x140346038]
xor rax, rsp
mov qword [rsp + 0x498], rax
lea rdi, [rsp + 0x140]
mov r8d, 0xe0
mov rcx, rdi
mov dl, 0xaa
call fcn.140159120
mov qword [rdi - 8], 0
lea rdi, [rbx + 0x10]
mov rax, qword [rbx + 0x10]
test al, 0x19
jne 0x1401cc476
mov rcx, rax
or rcx, 8
lock cmpxchg qword [rdi], rcx
jne 0x1401cc476
mov qword [rsp + 0x60], rdi
mov r8, qword [rsi]
mov r14, qword [r8]
mov qword [rsp + 0x80], rsi
mov qword [rsi], 0
mov rsi, qword [rbx + 0x80]
mov r12, r14
movabs r11, 0x6db6db6db6db6db7
sub r12, rsi
jb 0x1401cf4f2
cmp byte [rbx + 0x78], 0
jne 0x1401cf1e2
cmp r12, 0xf4240
ja 0x1401cf4f2
lea rax, [rbx + 0x58]
mov qword [rsp + 0x70], rax
mov rbp, qword [rbx + 0x70]
add r12, rbp
mov rdx, qword [rbx + 0x58]
mov rdi, qword [rbx + 0x60]
mov r15, rdi
sub r15, rdx
sar r15, 3
imul r15, r11
cmp r12, r15
jb 0x1401cf4e4
lea r13, [r12 + 1]
mov rcx, r13
sub rcx, r15
jbe 0x1401cc52e
mov rax, qword [rbx + 0x68]
mov r9, rax
sub r9, rdi
sar r9, 3
imul r9, r11
cmp r9, rcx
jb 0x1401cc550
imul rax, rcx, 0x38
add rax, rdi
add rbp, r14
imul rcx, rbp, 0x38
add rsi, r15
imul rdx, rsi, 0x38
sub rcx, rdx
add rcx, 0x38
pxor xmm0, xmm0
test rdi, rdi
je 0x1401cf933
movdqu xmmword [rdi + 0x20], xmm0
movdqu xmmword [rdi + 0x10], xmm0
movdqu xmmword [rdi], xmm0
mov qword [rdi + 0x30], 0
add rdi, 0x38
add rcx, 0xffffffffffffffc8
jne 0x1401cae07
mov qword [rbx + 0x60], rax
mov rax, qword [rbx + 0x58]
mov rcx, qword [rbx + 0x60]
sub rcx, rax
sar rcx, 3
imul rcx, r11
cmp rcx, r12
jbe 0x1401cf936
imul rcx, r12, 0x38
lea r13, [rax + rcx]
cmp byte [rax + rcx], 0
je 0x1401cae73
mov r15, qword [r13 + 8]
mov qword [r13 + 8], 0
test r15, r15
jne 0x1401cf585
pxor xmm0, xmm0
movdqu xmmword [r13 + 8], xmm0
movdqu xmmword [r13 + 0x18], xmm0
mov qword [r13 + 0x28], 0
mov byte [r13], 1
mov qword [r13 + 0x10], 1
mov rcx, qword [r8 + 0x40]
mov qword [r13 + 0x18], rcx
mov qword [r13 + 8], r8
test r12, r12
jne 0x1401cc416
mov qword [r13 + 0x20], r14
mov r8d, 1
mov rdx, r14
mov r9, qword [rbx + 0x58]
mov rax, qword [rbx + 0x60]
sub rax, r9
sar rax, 3
imul rax, r11
lea r10, [rax - 1]
cmp r10, r12
jne 0x1401cf46c
mov qword [r13 + 0x28], r14
mov rax, r14
mov r8, qword [rbx + 0x70]
mov r9, qword [rbx + 0x80]
sub rdx, r9
ja 0x1401cf4a7
mov rcx, qword [rbx + 0x58]
mov r10, qword [rbx + 0x60]
sub r10, rcx
sar r10, 3
imul r10, r11
cmp r10, r8
jbe 0x1401cf93c
imul rdx, r8, 0x38
cmp byte [rcx + rdx], 0
je 0x1401cf92e
add rdx, rcx
mov r11, rax
sub r11, r9
add r11, r8
cmp r10, r11
jbe 0x1401cf939
imul r8, r11, 0x38
cmp byte [rcx + r8], 0
je 0x1401cf92e
add rcx, r8
mov qword [rdx + 0x28], rax
mov rax, qword [r13 + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [r13 + 0x18]
mov qword [rdx + 0x18], rax
mov rax, qword [r13 + 0x20]
mov qword [rcx + 0x20], rax
mov rax, qword [r13 + 0x10]
mov qword [rcx + 0x10], rax
mov rax, qword [r13 + 0x18]
mov qword [rcx + 0x18], rax
cmp qword [rbx + 0x48], 0
movabs r11, 0x6db6db6db6db6db7
jne 0x1401cb093
mov rax, qword [rbx + 0x80]
mov rcx, qword [rbx + 0x58]
mov r8, qword [rbx + 0x60]
cmp rcx, r8
jne 0x1401cafdc
xor ecx, ecx
add rcx, rax
cmp r14, rcx
jae 0x1401cb093
mov rdi, qword [rbx + 0x20]
cmp rdi, qword [rbx + 0x28]
je 0x1401cb093
mov r14d, dword [rbx + 0x1c]
lea ebp, [r14 + r14]
movaps xmm6, xmmword [0x1402fccc0]
movabs r15, 0xaaaaaaaaaaaaaaaa
movabs r12, 0xaaaaaaaaaaaaaaab
jmp 0x1401cb039
mov rdx, qword [rbx + 0x70]
sub r8, rcx
sar r8, 3
imul r8, r11
cmp r8, rdx
jbe 0x1401cf953
imul rdx, rdx, 0x38
cmp byte [rcx + rdx], 0
je 0x1401caf9b
add rcx, rdx
mov rcx, qword [rcx + 0x10]
jmp 0x1401caf9d
xor eax, eax
lea edx, [rsi + 8]
cmp rax, qword [rdi + 0x10]
cmovbe edx, esi
mov esi, edx
test cl, 0x10
jne 0x1401cf96b
and ecx, 0x80
or ecx, esi
jne 0x1401cc0c2
add rdi, 0x30
mov rcx, qword [rbx + 0x28]
cmp rdi, rcx
je 0x1401cb093
mov ecx, dword [rdi + 8]
mov eax, ecx
and eax, ebp
and eax, 2
lea esi, [rax + 4]
test cl, 4
cmove esi, eax
test r14b, 2
cmove esi, eax
test cl, 8
je 0x1401cb015
mov rax, qword [rbx + 0x58]
mov r8, qword [rbx + 0x60]
cmp rax, r8
je 0x1401cb007
mov rdx, qword [rbx + 0x70]
sub r8, rax
sar r8, 3
imul r8, r11
cmp r8, rdx
jbe 0x1401cf94a
imul rdx, rdx, 0x38
cmp byte [rax + rdx], 0
je 0x1401cb007
add rax, rdx
mov rax, qword [rax + 0x10]
jmp 0x1401cb009
mov r14, qword [rsp + 0x60]
mov rax, qword [r14]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
jae 0x1401cf76b
mov rcx, rax
and rcx, 0xffffffffffffffd7
lock cmpxchg qword [r14], rcx
jne 0x1401cf76b
movaps xmm6, xmmword [0x1402fccc0]
movups xmmword [rsp + 0x380], xmm6
movups xmmword [rsp + 0x370], xmm6
movups xmmword [rsp + 0x360], xmm6
movups xmmword [rsp + 0x350], xmm6
movups xmmword [rsp + 0x340], xmm6
movups xmmword [rsp + 0x330], xmm6
movups xmmword [rsp + 0x320], xmm6
movups xmmword [rsp + 0x310], xmm6
xor esi, esi
mov qword [rsp + 0x308], rsi
lea rdi, [rsp + 0x228]
mov r8d, 0xe0
mov rcx, rdi
mov dl, 0xaa
call fcn.140159120
mov qword [rdi - 8], rsi
mov rax, qword [r14]
test al, 0x19
jne 0x1401cc4d9
mov rcx, rax
or rcx, 8
lock cmpxchg qword [r14], rcx
jne 0x1401cc4d9
mov r10, qword [rbx + 0x38]
test r10, r10
je 0x1401cb15d
lock inc dword [r10 + 8]
mov rax, qword [rbx + 0x48]
mov cl, 1
mov dword [rsp + 0x78], ecx
test rax, rax
movabs r11, 0x6db6db6db6db6db7
mov qword [rsp + 0x50], r10
jne 0x1401ce081
xor edi, edi
mov bpl, 1
mov rax, qword [rbx + 0x40]
test rax, rax
jne 0x1401cc361
xor eax, eax
mov qword [rsp + 0xc8], rax
mov rax, qword [rbx + 0x48]
mov cl, 1
mov dword [rsp + 0xa8], ecx
test rax, rax
jne 0x1401cc3e8
xor r14d, r14d
test r10, r10
je 0x1401cc064
mov rax, qword [r10]
mov rax, qword [rax]
lea rcx, [0x140209920]
cmp rax, rcx
jne 0x1401cc320
lea rsi, [r10 + 0x20]
cmp dword [rsi], 0
sete sil
mov rax, qword [rbx + 0x50]
test rax, rax
jne 0x1401cdefc
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0xe0], rdi
mov rax, qword [rbx + 0x40]
test rax, rax
mov dword [rsp + 0x6c], ebp
mov qword [rsp + 0xd8], r14
mov dword [rsp + 0xa0], esi
jne 0x1401cc028
xor edi, edi
lea rax, [rsp + 0x310]
mov qword [rsp + 0xb8], rax
lea rsi, [rbx + 0x38]
mov r13, qword [rbx + 0x88]
mov r12, qword [rbx + 0x90]
cmp r13, r12
je 0x1401cb272
mov r14, qword [rbx + 0x38]
mov rax, qword [rbx + 0xa0]
sub r12, r13
sar r12, 3
imul r12, r11
cmp r12, rax
jbe 0x1401cf993
imul rax, rax, 0x38
cmp byte [r13 + rax], 0
jne 0x1401ce8e2
mov rcx, qword [rbx + 0xb0]
mov rax, qword [rbx + 0x80]
mov rdx, qword [rbx + 0x58]
mov r9, qword [rbx + 0x60]
cmp rdx, r9
jne 0x1401cbff5
xor edx, edx
mov r15, qword [rbx + 0x40]
test r15, r15
jne 0x1401cc296
xor ebp, ebp
mov r15, qword [rbx + 0x48]
test r15, r15
jne 0x1401ce432
cmp qword [rsp + 0x58], 0
jne 0x1401cee59
xor r13d, r13d
mov rax, qword [rbx + 0x50]
test rax, rax
jne 0x1401cec19
cmp byte [rbx + 0x18], 0
mov edi, dword [rsp + 0xa0]
jne 0x1401cdfc1
mov eax, dword [rsp + 0xa8]
mov r12d, eax
or r12b, r13b
mov r9b, 1
test r10, r10
je 0x1401cb30b
mov eax, dword [rsp + 0x78]
and al, r13b
or al, bpl
mov ecx, edi
and cl, r12b
and cl, al
cmp cl, 1
je 0x1401cd2eb
mov dword [rsp + 0x98], r9d
test dil, dil
je 0x1401cb360
mov rax, qword [rbx + 0x88]
mov r9, qword [rbx + 0x90]
cmp rax, r9
je 0x1401cb353
mov rcx, qword [rbx + 0xa0]
mov rdx, r9
sub rdx, rax
sar rdx, 3
imul rdx, r11
cmp rdx, rcx
jbe 0x1401cf9a8
imul rcx, rcx, 0x38
cmp byte [rax + rcx], 0
jne 0x1401cb360
cmp byte [rbx + 0xa8], 0
jne 0x1401cd492
cmp byte [rbx + 0x78], 0
mov rax, qword [rbx + 0x58]
mov rcx, qword [rbx + 0x60]
mov dil, 1
jne 0x1401cc389
xor r9d, r9d
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r10, qword [rsp + 0x50]
cmp rax, rcx
mov qword [rsp + 0xc0], r15
jne 0x1401cc030
mov r14b, 1
cmp byte [rbx + 0x78], 0
jne 0x1401cd36a
mov r15d, edi
xor edi, edi
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xd0], rax
mov rsi, qword [rsp + 0x58]
xor r11d, r11d
xor eax, eax
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
mov r8, rax
xor r8, 0xc
mov edx, r8d
and edx, 0x18
and r8d, 6
cmp rdx, r8
jae 0x1401cf7dd
mov rdx, rax
and rdx, 0xffffffffffffffd7
lock cmpxchg qword [rcx], rdx
jne 0x1401cf7dd
mov rax, qword [rsp + 0x308]
test al, 1
je 0x1401cb41b
mov rcx, qword [rsp + 0x310]
mov qword [rsp + 0xb8], rcx
cmp rax, 2
jae 0x1401ce0d4
test bpl, bpl
jne 0x1401cd71c
test r13b, r13b
mov r8d, dword [rsp + 0x6c]
jne 0x1401cd282
test r10, r10
je 0x1401cb45f
or bpl, byte [rsp + 0x78]
test rsi, rsi
setne al
and bpl, r8b
and bpl, al
and r12b, bpl
cmp r12b, 1
je 0x1401cf281
test r9, r9
jne 0x1401cd85b
mov r13, qword [rsp + 0x70]
test r13, r13
jne 0x1401cf77a
test r11, r11
sete al
xor dil, 1
or dil, al
lea r14, [rsp + 0x228]
mov edi, dword [rsp + 0xa0]
je 0x1401cf543
xor dil, 1
mov eax, dword [rsp + 0x98]
or al, dil
mov rdi, qword [rsp + 0x80]
jne 0x1401cb598
test r9, r9
jne 0x1401cb598
test r8b, r8b
je 0x1401cf5fd
test r10, r10
je 0x1401cb598
mov rax, qword [r10]
mov rax, qword [rax + 0x68]
lea rcx, [0x14020c1c0]
cmp rax, rcx
je 0x1401cb543
mov ebp, r8d
lea rcx, [0x1401fd440]
cmp rax, rcx
jne 0x1401cf442
xor edx, edx
cmp byte [r10 + 0x10], 0
sete dl
mov rcx, qword [r10 + 0x18]
lea eax, [rdx*4 + 7]
mov r8d, 3
lock cmpxchg dword [rcx + 0x14], r8d
je 0x1401cf33e
lea edx, [rdx*4 + 4]
mov r8d, eax
and r8d, 0x33
cmp r8d, 3
mov r8d, ebp
jne 0x1401cb598
mov r8d, eax
and r8d, edx
mov r8d, ebp
je 0x1401cb598
jmp 0x1401cf329
mov rcx, qword [r10 + 0x48]
test rcx, rcx
je 0x1401cb598
mov ebp, r8d
xor edx, edx
cmp byte [r10 + 0x24], 0
sete dl
lea eax, [rdx*4 + 7]
mov r8d, 3
lock cmpxchg dword [rcx + 4], r8d
je 0x1401cf3bf
lea edx, [rdx*4 + 4]
mov r8d, eax
and r8d, 0x33
cmp r8d, 3
mov r8d, ebp
jne 0x1401cb598
mov r8d, eax
and r8d, edx
mov r8d, ebp
jne 0x1401cf2f8
mov rax, qword [rsp + 0x220]
test al, 1
jne 0x1401cf5b7
cmp rax, 2
jae 0x1401ccd0c
test rax, rax
jne 0x1401cb69f
cmp qword [rsp + 0x308], 0
jne 0x1401ce318
test r11, r11
jne 0x1401cf2b9
test r9, r9
jne 0x1401cb6ce
test r13, r13
jne 0x1401cf814
mov rax, qword [rsp + 0x138]
test al, 1
jne 0x1401cf5aa
lea rbx, [rsp + 0x140]
cmp rax, 2
jae 0x1401cb6de
test rax, rax
jne 0x1401cb690
mov rsi, qword [rdi]
mov qword [rdi], 0
test rsi, rsi
jne 0x1401cf956
mov rcx, qword [rsp + 0x498]
xor rcx, rsp
call fcn.140156fe0
mov al, 1
movaps xmm6, xmmword [rsp + 0x4a0]
movaps xmm7, xmmword [rsp + 0x4b0]
add rsp, 0x4c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x138]
call fcn.1401318be
jmp 0x1401cb647
lea rcx, [rsp + 0x220]
mov r14, rsi
mov rsi, r11
mov rbx, r9
mov ebp, r8d
call fcn.1401318be
mov r8d, ebp
mov r9, rbx
mov r11, rsi
mov rsi, r14
mov r10, qword [rsp + 0x50]
jmp 0x1401cb5bb
lock dec dword [r9 + 8]
jne 0x1401cb5dc
shr rax, 1
imul r14, rax, 0x38
add r14, rbx
lea r12, [0x1401f9ae0]
mov r15, qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
movabs rsi, 0xaaaaaaaa00000000
xorps xmm6, xmm6
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x318], rax
mov qword [rsp + 0x308], 0x20
mov rbp, qword [rbx + 8]
mov qword [rsp + 0x310], rbp
mov eax, dword [rbx + 0x10]
mov dword [rsp + 0x318], eax
lea rax, [rbx + 0x18]
mov qword [rsp + 0x320], rax
mov rax, qword [rbx]
cmp rax, r12
jne 0x1401cbac9
mov r13, qword [rbp + 8]
test rbp, rbp
je 0x1401cb7bf
mov eax, 1
lock xadd dword [rbp], eax
cmp eax, 0x7fffffff
je 0x1401cf9ab
lock dec dword [rbp]
jne 0x1401cb7c3
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1401cb794
lock dec dword [rcx + 8]
jne 0x1401cb794
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x1401cb7b5
lock dec dword [rcx + 8]
jne 0x1401cb7b5
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, rbp
call fcn.140153bcc
jmp 0x1401cb7c3
lock dec dword [rbp]
lea rcx, [r13 + 0x18]
mov qword [rsp + 0x78], rcx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x1401cb7de
mov rcx, qword [rsp + 0x78]
call r15
cmp byte [r13 + 0x118], 0
je 0x1401cba4b
cmp byte [rbp + 0x50], 0
je 0x1401cba4b
mov eax, dword [rsp + 0x318]
cmp byte [rbp + 0x51], 0
mov byte [rbp + 0x50], 0
jne 0x1401cba4f
mov ecx, eax
and ecx, 1
jne 0x1401cba4f
mov qword [rsp + 0x58], r14
mov byte [r13 + 0x118], 0
mov qword [rsp + 0x238], rsi
mov dword [rsp + 0x220], 0x20
shr eax, 9
and eax, 1
mov dword [rsp + 0x224], eax
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov r12, qword [rbp + 0x18]
test r12, r12
je 0x1401cbb43
mov r14d, dword [rbp + 0x20]
mov dword [rsp + 0x238], 0
lea rcx, [r12 + 0x20]
mov qword [rsp + 0xa8], rcx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cf864
cmp qword [r12 + 0x28], 0
movabs r8, 0x6db6db6db6db6db7
je 0x1401cfa8f
movups xmm0, xmmword [0x1403076f8]
movaps xmmword [rsp + 0x3a0], xmm0
movdqu xmm0, xmmword [0x1403076e8]
movdqa xmmword [rsp + 0x390], xmm0
mov eax, dword [0x140360b50]
mov ecx, dword [0x1403576e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1401cf886
mov rax, qword [0x1403530c8]
mov rcx, qword [r12 + 0x28]
mov rdi, qword [rcx + 8]
lea rcx, [0x1400f2320]
cmp rax, rcx
jne 0x1401cfaae
test rdi, rdi
je 0x1401cbfce
cmp dword [rdi + 0xc], 1
jne 0x1401cbfce
lea rsi, [rdi + 0x10]
mov rax, qword [rdi + 0x10]
test al, 0x19
jne 0x1401cf218
mov rcx, rax
or rcx, 8
lock cmpxchg qword [rsi], rcx
jne 0x1401cf218
mov rax, qword [rsp + 0x390]
cmp rax, 0x20
mov ecx, 0x20
cmovae rax, rcx
mov qword [rsp + 0x390], rax
mov eax, dword [rdi + 0x1c]
mov dword [rsp + 0x398], eax
mov rax, qword [rdi + 0x58]
mov rcx, qword [rdi + 0x60]
cmp rax, rcx
jne 0x1401ce19d
mov qword [rsp + 0x3a0], 0
xor eax, eax
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsi]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
jae 0x1401cf877
mov rcx, rax
and rcx, 0xffffffffffffffd7
lock cmpxchg qword [rsi], rcx
jne 0x1401cf877
test byte [rsp + 0x398], 1
jne 0x1401ced19
cmp byte [r12 + 0xa1], 0
mov dword [rsp + 0x238], 4
mov rdi, qword [rsp + 0x80]
movabs rsi, 0xaaaaaaaa00000000
jne 0x1401ced3f
mov dword [rsp + 0x238], 0x14
cmp dword [r12 + 0x10], 1
jne 0x1401ced5f
mov cl, 1
mov eax, 0x14
cmp byte [r12 + 0xa2], 0
jne 0x1401cbbcf
cmp qword [rsp + 0x3a0], 0
jne 0x1401cbbcf
cmp qword [r12 + 0x48], 0
je 0x1401cbbf9
mov edx, dword [rsp + 0x234]
jmp 0x1401cbbe5
mov byte [rbp + 0x50], 0
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rbp, rbp
je 0x1401cbaaf
lock dec dword [rbp]
jne 0x1401cbaaf
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1401cba86
lock dec dword [rcx + 8]
jne 0x1401cba86
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x1401cbaa7
lock dec dword [rcx + 8]
jne 0x1401cbaa7
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, rbp
call fcn.140153bcc
add rbx, 0x38
cmp rbx, r14
jne 0x1401cb703
mov rax, qword [rsp + 0x138]
jmp 0x1401cb642
lea rcx, [0x1401f9940]
cmp rax, rcx
jne 0x1401cf909
mov r13, r15
mov rdi, qword [rbp + 8]
lea rsi, [rdi + 0x18]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cf848
mov r15, qword [rsp + 0x310]
cmp byte [r15 + 0x51], 0
je 0x1401cf640
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lock dec dword [rbp]
setne al
test rbp, rbp
mov rdi, qword [rsp + 0x80]
mov r15, r13
movabs rsi, 0xaaaaaaaa00000000
je 0x1401cbaaf
test al, al
je 0x1401cba65
jmp 0x1401cbaaf
mov r8, qword [rsp + 0x320]
mov eax, dword [rbp + 0x20]
mov dword [rsp + 0x238], 0x24
mov ecx, dword [r8 + 8]
and ecx, 2
cmp ecx, 1
mov ecx, 0
adc ecx, 0x24
mov dword [rsp + 0x238], ecx
mov edx, 4
test byte [r8 + 8], 1
jne 0x1401cbb8d
or ecx, 0x12
mov dword [rsp + 0x238], ecx
mov edx, 2
mov r14, qword [rsp + 0x58]
lea r12, [0x1401f9ae0]
mov dword [rsp + 0x234], edx
cmp qword [r8 + 0x10], 0
je 0x1401cbbb1
or edx, 1
mov dword [rsp + 0x234], edx
or edx, ecx
mov dword [rsp + 0x230], 0
test edx, eax
jne 0x1401cbc3d
mov dword [rsp + 0x230], 9
jmp 0x1401cbc3d
mov byte [r12 + 0xa2], 1
mov edx, dword [rsp + 0x234]
or edx, 8
or eax, 8
or eax, 1
mov dword [rsp + 0x238], eax
or edx, 1
mov dword [rsp + 0x234], edx
test cl, cl
je 0x1401cbc07
or eax, 9
mov dword [rsp + 0x238], eax
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov dword [rsp + 0x230], 0
test dword [rsp + 0x234], r14d
mov eax, r14d
mov r14, qword [rsp + 0x58]
lea r12, [0x1401f9ae0]
je 0x1401cbed4
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov cl, byte [r13 + 0x3c]
test cl, cl
je 0x1401cbc55
cmp dword [r13 + 0x40], eax
je 0x1401cbf07
test cl, cl
lea r12, [rsp + 0x390]
je 0x1401cbd0b
mov eax, dword [0x1403576e0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0x198]
lea rsi, [r13 + 0x20]
mov rcx, r12
lea rdx, str.DispatchOrQueueEvent
lea r8, str.....mojocoreipcz_drivermojo_trap.cc
mov r9d, 0x21c
call fcn.1400c6940
test byte [0x140354cd0], 0x19
jne 0x1401cbee6
mov r14, qword [rdi]
test r14, r14
je 0x1401cbcce
cmp qword [r14 + 0x18], 0
jne 0x1401cfa5b
movabs rax, 0x4000000000000000
lock or qword [r14 + 0x10], rax
inc dword [r13 + 0x38]
movabs rax, 0x7fffffffffffffff
mov qword [rsp + 0x390], rax
mov rcx, rsi
mov rdx, r12
call fcn.1400d5cf0
dec dword [r13 + 0x38]
test byte [0x140354cd0], 0x19
jne 0x1401cbe8b
cmp byte [r13 + 0x3c], 0
jne 0x1401cbc83
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp byte [r13 + 0x3c], 0
jne 0x1401cbd1d
mov byte [r13 + 0x3c], 1
mov dword [r13 + 0x40], eax
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r13 + 0x10]
lea rcx, [rsp + 0x220]
call qword [0x14037e008]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cbfbe
mov rax, qword [r13 + 0x70]
cmp rax, 2
jb 0x1401cbd6b
lea rdi, [r13 + 0x78]
xor r12d, r12d
xor r14d, r14d
jmp 0x1401cbe6d
mov r15, rax
shr r15, 1
lea rdi, [r13 + 0x78]
mov rcx, rax
mov rdx, rdi
and rcx, 1
je 0x1401cbd84
mov rdx, qword [rdi]
cmp rax, 2
mov r14, qword [rsp + 0x58]
lea r12, [0x1401f9ae0]
jb 0x1401cbdba
lea rax, [r15 + r15*4]
lea rsi, [rdx + rax*8]
add rsi, 0xffffffffffffffd8
mov rcx, rsi
call fcn.14003a1f0
add rsi, 0xffffffffffffffd8
dec r15
jne 0x1401cbda2
mov rcx, qword [r13 + 0x70]
and ecx, 1
test rcx, rcx
movabs rsi, 0xaaaaaaaa00000000
je 0x1401cbdd1
mov rcx, qword [rdi]
call fcn.140153bcc
mov qword [r13 + 0x70], 0
mov byte [r13 + 0x3c], 0
cmp dword [r13 + 0x38], 0
mov rdi, qword [rsp + 0x80]
mov r15, qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
je 0x1401cba4f
add r13, 0x20
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_WakeConditionVariable]
jmp 0x1401cba4f
mov rax, qword [rdi]
mov rcx, qword [rax + r12]
cmp byte [rcx + 0x51], 0
je 0x1401cbe1f
cmp dword [rax + r12 + 0x18], 1
jne 0x1401cbe53
lea rsi, [rax + r12]
add rsi, 8
mov r15, qword [rsp + 0x78]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r13 + 0x10]
mov rcx, rsi
call qword [0x14037e008]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cbfae
inc r14
mov rax, qword [r13 + 0x70]
mov r15, rax
shr r15, 1
add r12, 0x28
cmp r14, r15
jae 0x1401cbd71
test al, 1
jne 0x1401cbe0a
mov rax, qword [rdi + r12]
cmp byte [rax + 0x51], 0
mov rax, rdi
je 0x1401cbe1f
cmp dword [rdi + r12 + 0x18], 1
mov rax, rdi
je 0x1401cbe1f
jmp 0x1401cbe53
mov rcx, r12
call fcn.1400e35f0
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], eax
movups xmmword [rsp + 0x20], xmm6
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov cl, 0x45
lea rdx, [0x140354cd0]
lea r8, str.ScopedAllowBaseSyncPrimitivesOutsideBlockingScope
xor r9d, r9d
call fcn.1401bfdf0
jmp 0x1401cbd00
test dword [rsp + 0x238], eax
jne 0x1401cba4f
jmp 0x1401cbbc2
mov qword [rsp + 0x110], r12
lea rcx, str.ScopedAllowBaseSyncPrimitivesOutsideBlockingScope
lea rdx, [rsp + 0x110]
call fcn.14006d1b0
jmp 0x1401cbcac
mov qword [rsp + 0x390], rbp
test rbp, rbp
je 0x1401cbf29
mov eax, 1
lock xadd dword [rbp], eax
cmp eax, 0x7fffffff
je 0x1401cbff2
add r13, 0x70
lea rsi, [rsp + 0x390]
lea r8, [rsp + 0x220]
mov rcx, r13
mov rdx, rsi
call fcn.14003a260
mov rsi, qword [rsi]
test rsi, rsi
je 0x1401cbf9f
lock dec dword [rsi]
jne 0x1401cbf9f
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1401cbf76
lock dec dword [rcx + 8]
jne 0x1401cbf76
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1401cbf97
lock dec dword [rcx + 8]
jne 0x1401cbf97
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, rsi
call fcn.140153bcc
movabs rsi, 0xaaaaaaaa00000000
jmp 0x1401cba4f
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401cbe53
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401cbd52
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x58]
lea r12, [0x1401f9ae0]
jmp 0x1401cbf9f
int3
mov r8, qword [rbx + 0x70]
sub r9, rdx
sar r9, 3
imul r9, r11
cmp r9, r8
jbe 0x1401cf950
imul r8, r8, 0x38
cmp byte [rdx + r8], 0
je 0x1401cb291
add rdx, r8
mov rdx, qword [rdx + 0x10]
jmp 0x1401cb293
mov rdi, qword [rax]
jmp 0x1401cb21c
mov rdx, qword [rbx + 0x70]
mov r8, rcx
sub r8, rax
sar r8, 3
imul r8, r11
cmp r8, rdx
jbe 0x1401cf99f
imul rdx, rdx, 0x38
cmp byte [rax + rdx], 0
je 0x1401cb398
mov r15d, edi
mov r14b, 1
jmp 0x1401cb3a8
xor esi, esi
jmp 0x1401cb1de
mov r8, qword [rsp + 0x140]
mov r10, qword [rsp + 0x148]
jmp 0x1401cc161
xor ecx, ecx
jmp 0x1401cc0af
mov r8, qword [rbx + 0x70]
sub rdx, rcx
sar rdx, 3
imul rdx, r11
cmp rdx, r8
jbe 0x1401cf94d
imul r8, r8, 0x38
lea rdx, [rcx + r8]
cmp byte [rcx + r8], 0
je 0x1401cc080
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x230], rcx
cmp byte [rdx], 0
je 0x1401cc118
mov rcx, qword [rdx + 0x18]
jmp 0x1401cc11a
mov eax, ecx
or eax, 0x200
mov rdx, qword [rsp + 0x90]
cmp dword [rdx], 0
cmovne eax, ecx
movups xmmword [rsp + 0x228], xmm6
mov qword [rsp + 0x238], r15
mov qword [rsp + 0x220], 0x20
mov dword [rsp + 0x228], r14d
mov rcx, qword [rbx + 0x58]
mov rdx, qword [rbx + 0x60]
cmp rcx, rdx
jne 0x1401cc084
mov qword [rsp + 0x230], 0
xor ecx, ecx
mov qword [rsp + 0x238], rcx
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
mov dword [rsp + 0xf0], eax
mov qword [rsp + 0x308], rcx
mov qword [rsp + 0x110], rdx
mov r9, qword [rsp + 0x138]
mov r10d, 4
lea r8, [rsp + 0x140]
test r9b, 1
jne 0x1401cc06b
shr r9, 1
cmp r9, r10
je 0x1401cc255
imul r9, r9, 0x38
mov r10, r8
add r10, r9
je 0x1401cf941
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x3a0], xmm1
movaps xmmword [rsp + 0x390], xmm0
mov qword [r10], rdx
mov qword [r8 + r9 + 8], rcx
mov dword [r8 + r9 + 0x10], eax
movdqa xmm0, xmmword [rsp + 0x390]
movdqa xmm1, xmmword [rsp + 0x3a0]
movdqu xmmword [r8 + r9 + 0x28], xmm1
movdqu xmmword [r8 + r9 + 0x18], xmm0
add qword [rsp + 0x138], 2
mov rdx, qword [rbx + 0x28]
mov rax, rdx
sub rax, rdi
je 0x1401cf944
lea r9, [rdi + 0x30]
mov rcx, rdi
cmp r9, rdx
je 0x1401cc247
mov rcx, qword [rbx + 0x20]
mov qword [rsp + 0x78], rcx
mov r13, rdi
sub r13, rcx
add rax, 0xffffffffffffffa0
mul r12
shr rdx, 5
lea rsi, [rdx + rdx*2]
shl rsi, 4
lea r8, [rsi + 0x30]
mov rcx, rdi
mov rdx, r9
call fcn.140158a70
movabs r11, 0x6db6db6db6db6db7
lea rcx, [rsi + r13]
add rcx, 0x30
add rcx, qword [rsp + 0x78]
mov rdx, qword [rbx + 0x28]
jmp 0x1401cc247
add rdx, 0xffffffffffffffd0
je 0x1401cf947
cmp rdx, rcx
jne 0x1401cc23d
mov qword [rbx + 0x28], rcx
jmp 0x1401cb034
lea rax, [rsp + 0x220]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x138]
lea rdx, [rsp + 0x110]
lea r8, [rsp + 0x308]
lea r9, [rsp + 0xf0]
call fcn.140125cdc
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cc1d3
cmp qword [r15], 0
je 0x1401cb2a0
cmp byte [r15 + 8], 0
je 0x1401cb2a0
cmp byte [r15 + 0x20], 0
je 0x1401cb2a0
cmp qword [r15 + 0x10], rcx
ja 0x1401cb2a0
add rdx, rax
cmp qword [r15 + 0x28], rdx
ja 0x1401cb2a0
mov qword [rbx + 0x40], 0
mov rcx, qword [r15]
test rcx, rcx
je 0x1401cc2ea
mov qword [r15], 0
lock dec dword [rcx + 8]
je 0x1401cc309
mov rcx, r15
call fcn.140153bcc
mov bpl, 1
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
jmp 0x1401cb2a2
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cc2ea
lea rcx, [0x1401fd330]
cmp rax, rcx
jne 0x1401cc339
mov rsi, qword [r10 + 0x18]
add rsi, 4
jmp 0x1401cb1d7
lea rsi, [rsp + 0x390]
mov rcx, r10
mov rdx, rsi
call qword [0x14037e008]
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cb1d7
mov rax, qword [rax]
test rax, rax
je 0x1401cb191
mov rcx, rax
mov qword [rsp + 0xc8], rax
lock inc dword [rax + 8]
mov dword [rsp + 0x78], 0
jmp 0x1401cb19b
mov r9, qword [rbx + 0x70]
mov rdx, qword [rbx + 0x80]
mov r8, rcx
sub r8, rax
sar r8, 3
imul r8, r11
cmp rcx, rax
jne 0x1401cc3cb
xor r10d, r10d
add r10, rdx
sub rdx, r9
add rdx, r8
cmp r10, rdx
jb 0x1401cb375
mov r9, qword [rsi]
mov qword [rsi], 0
jmp 0x1401cb378
cmp r8, r9
jbe 0x1401cf9cf
imul r10, r9, 0x38
cmp byte [rax + r10], 0
je 0x1401cc3a7
add r10, rax
mov r10, qword [r10 + 0x10]
jmp 0x1401cc3aa
mov rax, qword [rax + 8]
test rax, rax
je 0x1401cb1b1
mov r14, qword [rax]
test r14, r14
je 0x1401cb1b1
lock inc dword [r14 + 8]
mov dword [rsp + 0xa8], 0
jmp 0x1401cb1b4
lea rdx, [r12 - 1]
mov rax, qword [rbx + 0x58]
mov r8, qword [rbx + 0x60]
sub r8, rax
sar r8, 3
imul r8, r11
cmp r8, rdx
jbe 0x1401cf9bd
imul rdx, rdx, 0x38
cmp byte [rax + rdx], 0
je 0x1401caead
add rax, rdx
mov rdx, qword [rax + 0x20]
mov qword [r13 + 0x20], rdx
mov r8, qword [rax + 0x10]
inc r8
mov qword [r13 + 0x10], r8
add rcx, qword [rax + 0x18]
mov qword [r13 + 0x18], rcx
jmp 0x1401caeba
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x1401cc483
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x1401cc468
mov ecx, dword [0x140358c04]
inc ecx
mov rax, qword [rdi]
test al, 0x11
jne 0x1401cc49d
test al, 8
je 0x1401cc4b7
dec ecx
cmp ecx, 1
jg 0x1401cc48b
lea rdx, [0x140304c88]
mov rcx, rdi
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
jmp 0x1401cad3e
mov rdx, rax
or rdx, 8
lock cmpxchg qword [rdi], rdx
je 0x1401cad3e
jmp 0x1401cc496
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x1401cc4e6
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x1401cc4cb
mov ecx, dword [0x140358c04]
inc ecx
mov rax, qword [r14]
test al, 0x11
jne 0x1401cc500
test al, 8
je 0x1401cc51a
dec ecx
cmp ecx, 1
jg 0x1401cc4ee
lea rdx, [0x140304c88]
mov rcx, r14
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
jmp 0x1401cb14f
mov rdx, rax
or rdx, 8
lock cmpxchg qword [r14], rdx
je 0x1401cb14f
jmp 0x1401cc4f9
jae 0x1401cae34
imul rax, r13, 0x38
add rdx, rax
mov rcx, qword [rsp + 0x70]
mov rsi, r8
call fcn.140074018
mov r8, rsi
jmp 0x1401cc64b
movabs rcx, 0x492492492492492
cmp r13, rcx
ja 0x1401cf9c0
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x58], rdx
sub rax, rdx
sar rax, 3
imul rax, r11
lea rdx, [rax + rax]
cmp rdx, r13
cmovbe rdx, r13
movabs r8, 0x249249249249249
cmp rax, r8
cmovae rdx, rcx
cmp rdx, rcx
ja 0x1401cf9c3
imul rcx, rdx, 0x38
mov qword [rsp + 0xa8], rcx
call fcn.140153bd4
imul rdx, r15, 0x38
mov r15, qword [rsp + 0xa8]
lea r8, [rax + rdx]
add r15, rax
imul rcx, r13, 0x38
add rcx, rax
add rbp, r14
imul r9, rbp, 0x38
imul r10, rsi, 0x38
sub r9, r10
sub r9, rdx
add r9, 0x38
pxor xmm0, xmm0
mov r10, r8
test r10, r10
je 0x1401cf9ba
movdqu xmmword [r10 + 0x20], xmm0
movdqu xmmword [r10 + 0x10], xmm0
movdqu xmmword [r10], xmm0
mov qword [r10 + 0x30], 0
add r10, 0x38
add r9, 0xffffffffffffffc8
jne 0x1401cc5e4
mov r9, qword [rsp + 0x58]
cmp rdi, r9
jne 0x1401cc65a
mov qword [rbx + 0x58], r8
mov qword [rbx + 0x60], rcx
mov qword [rbx + 0x68], r15
movabs r11, 0x6db6db6db6db6db7
mov r8, qword [rsp + 0x78]
test rdi, rdi
je 0x1401cae34
mov rcx, rdi
call fcn.140153bcc
mov r8, qword [rsp + 0x78]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cae34
add rax, rdx
add rax, 0xffffffffffffffc8
pxor xmm0, xmm0
movabs r11, 0x6db6db6db6db6db7
mov r8, qword [rsp + 0x78]
test rax, rax
je 0x1401cf9c9
movdqu xmmword [rax + 0x20], xmm0
movdqu xmmword [rax + 0x10], xmm0
movdqu xmmword [rax], xmm0
cmp byte [rdi - 0x38], 0
je 0x1401cc6b8
mov rdx, qword [rdi - 0x30]
mov qword [rdi - 0x30], 0
mov qword [rax + 8], rdx
movdqu xmm1, xmmword [rdi - 0x28]
movdqu xmm2, xmmword [rdi - 0x18]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax + 0x20], xmm2
mov byte [rax], 1
add rdi, 0xffffffffffffffc8
add rax, 0xffffffffffffffc8
cmp rdi, r9
jne 0x1401cc674
mov rdi, qword [rbx + 0x58]
mov rsi, qword [rbx + 0x60]
add rax, 0x38
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rcx
mov qword [rbx + 0x68], r15
cmp rsi, rdi
je 0x1401cc635
add rsi, 0xffffffffffffffc8
test rsi, rsi
je 0x1401cf9cc
cmp byte [rsi], 0
je 0x1401cc70c
mov r13, qword [rsi + 8]
mov qword [rsi + 8], 0
test r13, r13
jne 0x1401cc71e
mov byte [rsi], 0
lea rax, [rsi - 0x38]
cmp rsi, rdi
mov rsi, rax
je 0x1401cc635
jmp 0x1401cc6ea
mov rcx, r13
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
mov r8, qword [rsp + 0x78]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cc709
mov r8, qword [rsp + 0x108]
mov eax, dword [rbx + 0x20]
mov dword [rsp + 0x128], 0x24
mov ecx, dword [r8 + 8]
and ecx, 2
cmp ecx, 1
mov ecx, 0
adc ecx, 0x24
mov dword [rsp + 0x128], ecx
mov edx, 4
test byte [r8 + 8], 1
jne 0x1401cc887
or ecx, 0x12
mov dword [rsp + 0x128], ecx
mov edx, 2
mov rdi, qword [rsp + 0x80]
mov dword [rsp + 0x124], edx
cmp qword [r8 + 0x10], 0
je 0x1401cc8a7
or edx, 1
mov dword [rsp + 0x124], edx
or edx, ecx
mov dword [rsp + 0x120], 0
test edx, eax
jne 0x1401cc968
mov dword [rsp + 0x120], 9
jmp 0x1401cc968
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov cl, byte [r12 + 0x3c]
test cl, cl
je 0x1401cc982
cmp dword [r12 + 0x40], eax
je 0x1401cc79c
test cl, cl
mov qword [rsp + 0x98], r14
je 0x1401cca48
mov qword [rsp + 0xa0], r15
lea rcx, [0x1401f9940]
cmp rax, rcx
jne 0x1401cf8ee
mov r12, qword [rbx + 8]
lea r15, [r12 + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cf856
mov rbp, qword [rsp + 0xf8]
cmp byte [rbp + 0x51], 0
je 0x1401cf6d8
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lock dec dword [rbx]
setne al
test rbx, rbx
mov r15, qword [rsp + 0xa0]
je 0x1401cccdf
test al, al
je 0x1401ccc95
jmp 0x1401cccdf
mov byte [rbx + 0x50], 0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rbx, rbx
je 0x1401cccdf
lock dec dword [rbx]
jne 0x1401cccdf
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x1401cccb6
lock dec dword [rcx + 8]
jne 0x1401cccb6
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1401cccd7
lock dec dword [rcx + 8]
jne 0x1401cccd7
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, rbx
call fcn.140153bcc
add r14, 0x38
cmp r14, r15
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x58]
mov r9, qword [rsp + 0x88]
mov r8d, dword [rsp + 0x6c]
jne 0x1401ccd27
mov rax, qword [rsp + 0x220]
jmp 0x1401cb5b2
shr rax, 1
imul r15, rax, 0x38
add r15, r14
pxor xmm7, xmm7
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x88], r9
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x100], rax
mov qword [rsp + 0xf0], 0x20
mov rbx, qword [r14 + 8]
mov qword [rsp + 0xf8], rbx
mov eax, dword [r14 + 0x10]
mov dword [rsp + 0x100], eax
lea rax, [r14 + 0x18]
mov qword [rsp + 0x108], rax
mov rax, qword [r14]
lea rcx, [0x1401f9ae0]
cmp rax, rcx
jne 0x1401ccc18
mov r12, qword [rbx + 8]
test rbx, rbx
je 0x1401ccde9
mov eax, 1
lock xadd dword [rbx], eax
cmp eax, 0x7fffffff
je 0x1401cd254
lock dec dword [rbx]
jne 0x1401ccdec
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x1401ccdbe
lock dec dword [rcx + 8]
jne 0x1401ccdbe
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1401ccddf
lock dec dword [rcx + 8]
jne 0x1401ccddf
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov edx, 1
call qword [0x14037e008]
mov rcx, rbx
call fcn.140153bcc
jmp 0x1401ccdec
lock dec dword [rbx]
lea rbp, [r12 + 0x18]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x1401cce07
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
cmp byte [r12 + 0x118], 0
je 0x1401ccc7e
cmp byte [rbx + 0x50], 0
je 0x1401ccc7e
mov eax, dword [rsp + 0x100]
cmp byte [rbx + 0x51], 0
mov byte [rbx + 0x50], 0
jne 0x1401ccc82
mov ecx, eax
and ecx, 1
jne 0x1401ccc82
mov byte [r12 + 0x118], 0
movabs rcx, 0xaaaaaaaa00000000
mov qword [rsp + 0x128], rcx
mov dword [rsp + 0x110], 0x20
shr eax, 9
and eax, 1
mov dword [rsp + 0x114], eax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], 0
mov rdi, qword [rbx + 0x18]
test rdi, rdi
mov qword [rsp + 0xa0], r15
je 0x1401cc83d
mov eax, dword [rbx + 0x20]
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0x128], 0
lea rcx, [rdi + 0x20]
mov qword [rsp + 0x60], rcx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401cd1d7
cmp qword [rdi + 0x28], 0
movabs r8, 0x6db6db6db6db6db7
je 0x1401cfa31
movups xmm0, xmmword [0x1403076f8]
movaps xmmword [rsp + 0x3a0], xmm0
movdqu xmm0, xmmword [0x1403076e8]
movdqa xmmword [rsp + 0x390], xmm0
mov eax, dword [0x140360b50]
mov ecx, dword [0x1403576e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1401cd1e7
mov rax, qword [0x1403530c8]
mov rcx, qword [rdi + 0x28]
mov r15, qword [rcx + 8]
lea rcx, [0x1400f2320]
cmp rax, rcx
jne 0x1401cd257
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401ccecc
lea rcx, [0x140360b50]
call fcn.1401547b8
movabs r8, 0x6db6db6db6db6db7
cmp dword [0x140360b50], 0xffffffff
jne 0x1401ccf26
int3
call qword [0x14037e008]
jmp 0x1401cd2b3
mov r13, rsi
mov qword [rsp + 0x88], r9
mov rsi, r11
mov rcx, qword [rsp + 0xd8]
mov rax, qword [rcx]
mov rax, qword [rax + 0xa0]
lea rdx, [fcn.1400ddfb0]
cmp rax, rdx
jne 0x1401cd27a
call fcn.1400ddfb0
mov r10, qword [rsp + 0x50]
mov r11, rsi
mov r9, qword [rsp + 0x88]
mov rsi, r13
mov r8d, dword [rsp + 0x6c]
jmp 0x1401cb43c
mov rcx, r10
call qword [0x14037e008]
movabs r11, 0x6db6db6db6db6db7
xor r9d, r9d
jmp 0x1401cb30b
mov rax, qword [r10]
mov rax, qword [rax + 0x48]
lea rcx, [0x140142b00]
cmp rax, rcx
jne 0x1401cd2d0
mov byte [r10 + 0x25], 1
mov rcx, qword [r10 + 0x48]
xor eax, eax
test rcx, rcx
je 0x1401cd2e3
cmp byte [r10 + 0x24], 1
mov edx, 2
sbb edx, 0
xor r9d, r9d
mov r8d, eax
or r8d, edx
lock cmpxchg dword [rcx + 4], r8d
sete r8b
test r8b, r8b
jne 0x1401cb30b
mov r8d, eax
and r8d, edx
jne 0x1401cb30b
jmp 0x1401cd31e
xor eax, eax
jmp 0x1401cd38f
cmp rdx, r8
jbe 0x1401cf9d5
imul rcx, r8, 0x38
cmp byte [rax + rcx], 0
mov r11, qword [rsp + 0x58]
je 0x1401cd345
add rax, rcx
mov rax, qword [rax + 0x10]
jmp 0x1401cd38f
mov rdx, rcx
sub rdx, rax
mov r8, qword [rbx + 0x70]
mov rsi, qword [rbx + 0x80]
sar rdx, 3
imul rdx, r11
cmp rcx, rax
jne 0x1401cd349
xor eax, eax
mov r11, qword [rsp + 0x58]
lea rcx, [rsi + rdx]
sub rcx, r8
add rax, rsi
mov r15d, edi
cmp rax, rcx
jb 0x1401cf9d8
sub rsi, r8
add rsi, rdx
mov qword [rsp + 0xd0], rsi
mov rax, qword [rbx + 0x48]
test rax, rax
jne 0x1401cd3da
mov rsi, qword [rbx + 0x50]
mov qword [rbx + 0x50], 0
mov dil, 1
test rsi, rsi
jne 0x1401cd3fa
xor r14d, r14d
xor esi, esi
jmp 0x1401cb3c4
mov rcx, qword [rax]
mov qword [rsp + 0x70], rcx
mov qword [rax], 0
mov dil, 1
xor r14d, r14d
mov rsi, r11
xor r11d, r11d
jmp 0x1401cb3cb
mov rdx, qword [rsi + 8]
mov qword [rsi + 8], 0
test rdx, rdx
mov qword [rsp + 0x88], r9
jne 0x1401cd46a
mov rcx, qword [rsi]
test rcx, rcx
jne 0x1401cd446
mov rcx, rsi
call fcn.140153bcc
xor r14d, r14d
xor esi, esi
xor eax, eax
mov qword [rsp + 0x70], rax
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x58]
mov r9, qword [rsp + 0x88]
jmp 0x1401cb3cb
mov qword [rsi], 0
lock dec dword [rcx + 8]
jne 0x1401cd41b
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cd41b
lea rcx, [rsi + 0x10]
call fcn.14020c628
jmp 0x1401cd413
cmp rcx, r8
jbe 0x1401cf9d2
imul r9, r8, 0x38
cmp byte [rax + r9], 0
je 0x1401cd4b3
add rax, r9
mov rax, qword [rax + 0x10]
jmp 0x1401cd4b5
mov rcx, r9
sub rcx, rax
mov r8, qword [rbx + 0xa0]
mov rdx, qword [rbx + 0xb0]
sar rcx, 3
imul rcx, r11
cmp r9, rax
jne 0x1401cd475
xor eax, eax
add rcx, rdx
sub rcx, r8
add rax, rdx
cmp rax, rcx
jb 0x1401cb360
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x58]
lea rdx, [0x14020c0e0]
cmp rax, rdx
jne 0x1401cd577
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x1401cb360
xor r10d, r10d
xor edx, edx
mov rax, qword [rsp + 0x50]
cmp byte [rax + 0x24], 0
setne r10b
sete r9b
mov r8d, r10d
shl r8d, 4
lea r11d, [r8 + 0x13]
mov eax, 3
lock cmpxchg dword [rcx + 4], r11d
movabs r11, 0x6db6db6db6db6db7
jne 0x1401cd590
cmp byte [rbx + 0xa8], 0
je 0x1401cf93f
mov r15, qword [rbx + 0xb0]
mov rax, qword [rbx + 0x90]
sub rax, qword [rbx + 0x88]
sar rax, 3
imul rax, r11
sub r15, qword [rbx + 0xa0]
add r15, rax
mov r9, qword [rbx + 0x38]
mov rax, qword [rbx + 0x58]
mov qword [rbx + 0x38], 0
mov rcx, qword [rbx + 0x60]
xor edi, edi
jmp 0x1401cb382
call qword [0x14037e008]
movabs r11, 0x6db6db6db6db6db7
test al, al
jne 0x1401cd528
jmp 0x1401cb360
mov dl, r9b
mov r9d, 2
sub r9d, edx
inc edx
add r8d, 0x10
lea r10d, [r10*4 + 4]
mov r11d, r8d
mov edi, r11d
test al, 0x30
movabs r11, 0x6db6db6db6db6db7
jne 0x1401cb360
mov r11d, eax
and r11d, r9d
movabs r11, 0x6db6db6db6db6db7
je 0x1401cb360
cmp edi, r8d
jne 0x1401cd60c
mov r14d, eax
mov r11d, r10d
and r14d, edx
jne 0x1401cd60c
mov edi, eax
or edi, r11d
lock cmpxchg dword [rcx + 4], edi
jne 0x1401cd5ad
cmp r11d, r8d
movabs r11, 0x6db6db6db6db6db7
je 0x1401cd528
jmp 0x1401cb360
mov r11d, edi
cmp edi, r10d
jne 0x1401cd5e8
mov r11d, eax
not r11d
test r11b, 3
mov r11d, r10d
cmove r11d, r8d
jmp 0x1401cd5e8
mov qword [rsp + 0x60], rsi
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rcx]
mov rax, qword [rax + 0xa0]
lea rdx, [fcn.1400ddfb0]
cmp rax, rdx
jne 0x1401cd76f
mov rsi, r11
mov qword [rsp + 0xb0], r14
mov r14, r9
call fcn.1400ddfb0
mov r9, r14
mov r14, qword [rsp + 0xb0]
mov r11, rsi
mov r10, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
jmp 0x1401cb42e
mov qword [rsp + 0x88], r9
mov rsi, r11
lea rdx, [fcn.140142b40]
cmp rax, rdx
jne 0x1401cd79d
call fcn.140142b40
mov r10, qword [rsp + 0x50]
mov r11, rsi
mov r9, qword [rsp + 0x88]
jmp 0x1401cd765
call qword [0x14037e008]
jmp 0x1401cd78b
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cdb51
mov rcx, qword [rsp + 0x488]
call fcn.140153bcc
jmp 0x1401cd932
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x1401cd7e8
mov r12, r9
mov rsi, r11
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x1401cd7c7
mov ecx, dword [0x140358c04]
inc ecx
mov r10, qword [rsp + 0x50]
mov r11, rsi
mov r9, r12
mov rax, qword [r15]
test al, 0x11
jne 0x1401cd80d
test al, 8
je 0x1401cd832
dec ecx
cmp ecx, 1
jg 0x1401cd7fb
lea rdx, [0x140304c88]
mov rcx, r15
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
mov r9, r12
mov r11, rsi
mov r10, qword [rsp + 0x50]
jmp 0x1401cda44
mov rdx, rax
or rdx, 8
lock cmpxchg qword [r15], rdx
je 0x1401cda44
jmp 0x1401cd806
lea rcx, [rsp + 0x458]
call fcn.1400eeb1c
mov r11, r14
jmp 0x1401cd944
test r15b, r15b
mov qword [rsp + 0xb0], r14
jne 0x1401cd9fb
mov rbp, rsi
mov r14, r11
mov rax, qword [r9]
mov rax, qword [rax + 0x38]
lea rcx, [fcn.1401c6440]
cmp rax, rcx
jne 0x1401cd9c4
lea r12, [rsp + 0x390]
mov r8d, 0x108
mov rcx, r12
mov dl, 0xaa
mov r13, r9
call fcn.140159120
mov byte [r12], 1
lea rsi, [rsp + 0x3a0]
pxor xmm0, xmm0
movdqu xmmword [rsi], xmm0
movdqu xmmword [rsi + 0x10], xmm0
movdqu xmmword [rsi + 0x20], xmm0
mov qword [rsi - 8], 0x60
mov byte [rsi + 0x88], 0
mov qword [rsi + 0xa8], rsi
mov qword [rsi + 0xb0], 0x30
xor eax, eax
mov qword [rsi + 0xb8], rax
mov qword [rsi + 0xe0], rax
mov byte [rsi], 0x18
mov byte [rsi + 2], 0x16
mov dword [rsi + 0x18], 0x18
mov rax, qword [r13 + 0x18]
mov qword [rsi + 0x20], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsi + 0x28], rax
mov r15, r13
mov rcx, qword [r13 + 0x10]
mov rdx, r12
call fcn.1400d5e40
test byte [rsi + 0xe0], 1
jne 0x1401cd7b5
cmp qword [rsp + 0x458], 0
mov r11, r14
jne 0x1401cd846
cmp byte [rsp + 0x428], 0
mov rsi, rbp
je 0x1401cd984
mov rdx, qword [rsp + 0x430]
mov qword [rsp + 0x430], 0
test rdx, rdx
je 0x1401cd979
lea rcx, fcn.14013c1c0
xor r8d, r8d
call fcn.140135500
mov byte [rsp + 0x428], 0
mov r11, r14
cmp byte [rsp + 0x390], 0
mov r10, qword [rsp + 0x50]
mov r9, r15
mov r8d, dword [rsp + 0x6c]
je 0x1401cd9f3
test byte [rsp + 0x398], 1
je 0x1401cd9f3
mov rcx, qword [rsp + 0x3a0]
call fcn.140153bcc
mov r8d, dword [rsp + 0x6c]
mov r9, r15
mov r11, r14
mov r10, qword [rsp + 0x50]
jmp 0x1401cd9f3
mov rcx, r9
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0xc0]
mov rsi, r9
call qword [0x14037e008]
mov r9, rsi
mov r10, qword [rsp + 0x50]
mov r11, r14
mov rsi, rbp
mov r8d, dword [rsp + 0x6c]
mov r14, qword [rsp + 0xb0]
mov rax, qword [r9]
mov rax, qword [rax + 0xa0]
lea rcx, [fcn.1400ddfb0]
cmp rax, rcx
jne 0x1401cdc90
mov qword [rsp + 0x60], rsi
mov r14, qword [r9 + 0x10]
mov r13, qword [r9 + 0x18]
lea r15, [r14 + 0x58]
mov rax, qword [r14 + 0x58]
test al, 0x19
jne 0x1401cd7d5
mov rcx, rax
or rcx, 8
lock cmpxchg qword [r15], rcx
jne 0x1401cd7d5
mov qword [rsp + 0x88], r9
mov r12, qword [r14 + 0x70]
prefetcht2 byte [r12]
lea rax, str.HY0_
add rax, r13
movabs rcx, 0x9ddfea08eb382d69
mul rcx
xor rdx, rax
mov rax, qword [r14 + 0x80]
mov r8, rdx
shr r8, 7
mov rcx, r12
shr rcx, 0xc
xor rcx, r8
and dl, 0x7f
movzx edx, dl
movd xmm0, edx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor edx, edx
movdqa xmm7, xmmword [0x1403059d0]
mov rsi, qword [rsp + 0x60]
and rcx, rax
movdqu xmm1, xmmword [r12 + rcx]
movdqa xmm2, xmm0
pcmpeqb xmm2, xmm1
pmovmskb r9d, xmm2
test r9d, r9d
je 0x1401cdc49
mov r8, qword [r14 + 0x78]
movzx r9d, r9w
mov rbp, r11
bsf r11d, r9d
add r11, rcx
and r11, rax
lea r10, [r11 + r11*2]
cmp qword [r8 + r10*8], r13
jne 0x1401cdd43
add r12, r11
lea rax, [0x1403059f0]
cmp r12, rax
je 0x1401cdd77
cmp byte [r12], 0
js 0x1401cf93f
lea rsi, [r8 + r10*8]
test rsi, rsi
je 0x1401cf9c6
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x1401cdb36
mov qword [rsi + 0x10], 0
lock dec dword [rcx + 8]
je 0x1401cdd60
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1401cdb51
mov qword [rsi + 8], 0
lock dec dword [rcx + 8]
je 0x1401cdc67
dec qword [r14 + 0x88]
mov rax, qword [r14 + 0x70]
mov rcx, qword [r14 + 0x80]
mov rdx, r12
sub rdx, rax
lea r8, [rdx - 0x10]
and r8, rcx
movdqu xmm0, xmmword [rax + r8]
pcmpeqb xmm0, xmm7
pmovmskb r10d, xmm0
xor r8d, r8d
mov r9b, 0xfe
test r10d, r10d
je 0x1401cdc42
movdqu xmm0, xmmword [r12]
pcmpeqb xmm0, xmm7
pmovmskb r11d, xmm0
test r11w, r11w
mov rsi, qword [rsp + 0x60]
je 0x1401cdbd6
bsf r8d, r11d
shl r10d, 0x10
bsr r9d, r10d
xor r9d, 0x1f
add r9, r8
xor r8d, r8d
cmp r9, 0x10
setb r8b
mov r10d, 0x80
mov r9d, 0xfe
cmovb r9d, r10d
mov byte [rax + rdx], r9b
add rdx, 0xfffffffffffffff1
and rdx, rcx
and ecx, 0xf
add rcx, rdx
mov byte [rax + rcx], r9b
mov rax, qword [r14 + 0x70]
add qword [rax - 8], r8
mov r10, qword [rsp + 0x50]
mov r11, rbp
mov rax, qword [r15]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
mov r8d, dword [rsp + 0x6c]
mov r9, qword [rsp + 0x88]
mov r14, qword [rsp + 0xb0]
jae 0x1401cde73
mov rcx, rax
and rcx, 0xffffffffffffffd7
lock cmpxchg qword [r15], rcx
je 0x1401cb468
jmp 0x1401cde73
mov rsi, qword [rsp + 0x60]
jmp 0x1401cdbd6
pcmpeqb xmm1, xmm7
pmovmskb r8d, xmm1
test r8d, r8d
jne 0x1401cdbfb
add rcx, rdx
add rcx, 0x10
add rdx, 0x10
jmp 0x1401cdaae
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
lea rdx, [fcn.1400daa40]
cmp rax, rdx
jne 0x1401cd7a5
mov edx, 1
call fcn.1400daa40
jmp 0x1401cdb51
mov r12, r14
mov r13, rsi
lea rcx, [fcn.140142b40]
cmp rax, rcx
jne 0x1401cdea0
mov r14, qword [r9 + 0x18]
movzx ebp, byte [r9 + 0x10]
lea r15, [r14 + 8]
mov rax, qword [r14 + 8]
test al, 0x19
jne 0x1401cddc0
mov rcx, rax
or rcx, 8
lock cmpxchg qword [r15], rcx
jne 0x1401cddc0
cmp ebp, 1
je 0x1401cdcf0
test ebp, ebp
mov rsi, r13
jne 0x1401cdd0e
mov rcx, qword [r14 + 0x50]
test rcx, rcx
je 0x1401cdd0e
mov qword [r14 + 0x50], 0
jmp 0x1401cdd04
mov rcx, qword [r14 + 0x58]
test rcx, rcx
mov rsi, r13
je 0x1401cdd0e
mov qword [r14 + 0x58], 0
lock dec dword [rcx + 8]
je 0x1401cdecb
mov rax, qword [r15]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
jae 0x1401cde4f
mov r14, r12
mov rcx, rax
and rcx, 0xffffffffffffffd7
lock cmpxchg qword [r15], rcx
je 0x1401cb468
jmp 0x1401cde4f
lea r10d, [r9 - 1]
and r10d, r9d
mov r9d, r10d
mov r10, qword [rsp + 0x50]
mov r11, rbp
jne 0x1401cdad5
jmp 0x1401cdc49
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cdb36
lea rax, str....._third_party_abseil_cpp_abslcontainerinternal_raw_hash_set.h
lea r8, [rsp + 0x390]
mov qword [r8], rax
lea r9, [rsp + 0x110]
mov dword [r9], 0x4d3
lea rdx, [rsp + 0xf0]
mov dword [rdx], 3
lea rax, str.Invalid_iterator_comparison._Comparing_default_constructed_iterator_with_non_default_constructed_iterator.
mov qword [rsp + 0x20], rax
lea rcx, [0x140346f80]
call fcn.1401fc0dc
ud2
mov rsi, r9
mov qword [rsp + 0x58], r11
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x1401cde41
mov ecx, dword [0x140358c04]
inc ecx
mov r10, qword [rsp + 0x50]
mov r8d, dword [rsp + 0x6c]
mov r11, qword [rsp + 0x58]
mov r9, rsi
mov rax, qword [r15]
test al, 0x11
jne 0x1401cde01
test al, 8
je 0x1401cde2d
dec ecx
cmp ecx, 1
jg 0x1401cddef
lea rdx, [0x140304c88]
mov rcx, r15
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
mov r8d, dword [rsp + 0x6c]
mov r9, rsi
mov r11, qword [rsp + 0x58]
mov r10, qword [rsp + 0x50]
jmp 0x1401cdcd1
mov rdx, rax
or rdx, 8
lock cmpxchg qword [r15], rdx
je 0x1401cdcd1
jmp 0x1401cddfa
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x1401cddd5
mov rcx, r15
xor edx, edx
mov rsi, r11
mov r14, r9
mov ebp, r8d
call fcn.140102bcc
mov r8d, ebp
mov r9, r14
mov r14, r12
mov r11, rsi
mov rsi, r13
jmp 0x1401cde96
mov rcx, r15
xor edx, edx
mov rsi, r11
mov ebp, r8d
call fcn.140102bcc
mov r8d, ebp
mov r9, qword [rsp + 0x88]
mov r11, rsi
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
jmp 0x1401cb468
mov rcx, r9
mov rsi, r11
mov r14, r9
mov ebp, r8d
call qword [0x14037e008]
mov r8d, ebp
mov r9, r14
mov r11, rsi
mov r10, qword [rsp + 0x50]
mov rsi, r13
mov r14, r12
jmp 0x1401cb468
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov edx, 1
mov rsi, r11
mov r14, r9
mov ebp, r8d
call qword [0x14037e008]
mov r8d, ebp
mov r9, r14
mov r11, rsi
mov rsi, r13
mov r10, qword [rsp + 0x50]
jmp 0x1401cdd0e
mov rcx, qword [rax]
test rcx, rcx
jne 0x1401cdf1d
mov rax, qword [rax + 8]
test rax, rax
je 0x1401cb1eb
mov rcx, qword [rax]
test rcx, rcx
je 0x1401cb1eb
lock inc dword [rcx + 8]
lock inc dword [rcx + 8]
mov rax, rcx
mov qword [rsp + 0x58], rcx
lock dec dword [rcx + 8]
jne 0x1401cb1f2
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cb1f2
cmp rcx, rdx
jbe 0x1401cfad7
imul r10, rdx, 0x38
cmp byte [r9 + r10], 0
je 0x1401cdfff
add r9, r10
mov r9, qword [r9 + 0x10]
jmp 0x1401ce002
mov r8d, dword [rbx + 0x1c]
test r8b, 1
jne 0x1401cb2dc
cmp byte [rbx + 0x78], 0
je 0x1401cb2dc
mov rax, qword [rbx + 0x80]
mov r9, qword [rbx + 0x58]
mov r10, qword [rbx + 0x60]
mov rcx, r10
sub rcx, r9
sar rcx, 3
imul rcx, r11
mov rdx, qword [rbx + 0x70]
cmp r10, r9
jne 0x1401cdfa4
xor r9d, r9d
add r9, rax
sub rax, rdx
add rax, rcx
cmp r9, rax
mov r10, qword [rsp + 0x50]
jb 0x1401cb2dc
or r8d, 1
mov dword [rbx + 0x1c], r8d
lea rcx, [rbx + 0x20]
lea rax, [rsp + 0x220]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x70]
call fcn.140136fde
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cb2dc
mov rax, qword [rdi]
mov rax, qword [rax + 0xb0]
mov rcx, rdi
mov edx, 1
call qword [0x14037e008]
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ce09b
mov rdi, qword [rax]
test rdi, rdi
je 0x1401cb17f
lock inc dword [rdi + 8]
lock inc dword [rdi + 8]
lock dec dword [rdi + 8]
je 0x1401ce058
xor ebp, ebp
jmp 0x1401cb184
and rax, 0xfffffffffffffffe
mov rcx, qword [rsp + 0xb8]
lea rax, [rcx + rax*8]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x88], r9
mov qword [rsp + 0xb0], r14
mov r14, rsi
mov rsi, r11
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rdx]
mov rax, qword [rdx + 8]
mov qword [rdx + 8], 0
mov qword [rsp + 0xe8], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
lea rdx, [fcn.1401363a0]
cmp rax, rdx
jne 0x1401ce185
mov rdx, qword [rsp + 0x90]
lea r8, [rsp + 0xe8]
call fcn.1401363a0
mov rax, qword [rsp + 0xb8]
add rax, 0x10
mov qword [rsp + 0xb8], rax
cmp rax, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
mov r11, rsi
mov r9, qword [rsp + 0x88]
mov rsi, r14
mov r14, qword [rsp + 0xb0]
je 0x1401cb425
jmp 0x1401ce0f9
mov rdx, qword [rsp + 0x90]
lea r8, [rsp + 0xe8]
call qword [0x14037e008]
jmp 0x1401ce146
mov rdx, qword [rdi + 0x70]
sub rcx, rax
sar rcx, 3
imul rcx, r8
cmp rcx, rdx
jbe 0x1401cf9ae
imul rdx, rdx, 0x38
lea rcx, [rax + rdx]
cmp byte [rax + rdx], 0
je 0x1401ce1e1
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x3a0], rax
cmp byte [rcx], 0
je 0x1401cb986
mov rax, qword [rcx + 0x18]
jmp 0x1401cb988
xor eax, eax
jmp 0x1401ce1c7
lea rcx, [rsp + 0x308]
mov r14, rsi
mov rsi, r11
mov rbx, r9
mov ebp, r8d
call fcn.140133dce
mov r8d, ebp
mov r9, rbx
mov r11, rsi
mov rsi, r14
mov r10, qword [rsp + 0x50]
jmp 0x1401cb5ca
mov rcx, r13
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
jmp 0x1401ce3bb
mov rcx, r12
call fcn.1401c6642
mov rcx, r12
call fcn.140153bcc
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ce62c
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401ce4da
lea rcx, [rsp + 0x308]
lea r13, [rsp + 0x390]
mov rdx, r13
call fcn.140143664
mov r12, rax
mov r13, qword [r13 + 8]
test r13, r13
jne 0x1401ce347
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
mov r8, r12
jmp 0x1401ce5c8
test r14, r14
je 0x1401ce44e
mov rcx, r15
mov rdx, r12
call fcn.140133db0
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
mov rcx, r14
test al, al
je 0x1401ce559
jmp 0x1401ce44e
mov r8, qword [rbx + 0xa0]
sub r9, rdx
sar r9, 3
imul r9, r11
cmp r9, r8
jbe 0x1401cfa1c
imul r8, r8, 0x38
cmp byte [rdx + r8], 0
je 0x1401ce46f
add rdx, r8
mov rdx, qword [rdx + 0x10]
jmp 0x1401ce471
mov rdi, qword [rax]
jmp 0x1401ce43d
mov rax, qword [r15 + 8]
test rax, rax
jne 0x1401ce42d
xor edi, edi
mov r13, qword [rbx + 0x58]
mov r12, qword [rbx + 0x60]
cmp r13, r12
jne 0x1401ce4f9
mov rcx, qword [rbx + 0x80]
mov rdx, qword [rbx + 0x88]
mov rax, qword [rbx + 0xb0]
mov r9, qword [rbx + 0x90]
cmp rdx, r9
jne 0x1401ce3fe
xor edx, edx
mov r8, qword [rbx + 0x48]
mov r15, qword [r8 + 8]
test r15, r15
je 0x1401cb2bb
cmp qword [r15], 0
je 0x1401cb2bb
cmp byte [r15 + 8], 0
je 0x1401cb2bb
cmp byte [r15 + 0x20], 0
je 0x1401cb2bb
cmp qword [r15 + 0x10], rcx
ja 0x1401cb2bb
add rdx, rax
cmp qword [r15 + 0x28], rdx
ja 0x1401cb2bb
mov qword [r8 + 8], 0
mov rcx, qword [r15]
test rcx, rcx
je 0x1401ce4da
mov qword [r15], 0
lock dec dword [rcx + 8]
je 0x1401ce37d
mov rcx, r15
call fcn.140153bcc
mov r13b, 1
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
jmp 0x1401cb2be
mov r14, qword [r15]
mov rax, qword [rbx + 0x70]
sub r12, r13
sar r12, 3
imul r12, r11
cmp r12, rax
jbe 0x1401cfa1f
imul rax, rax, 0x38
cmp byte [r13 + rax], 0
je 0x1401ce44e
mov r12, qword [rbx + 0x80]
test rdi, rdi
je 0x1401ce3d2
mov rcx, r15
mov rdx, r12
call fcn.140133db0
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
mov rcx, rdi
test al, al
je 0x1401ce3d2
mov qword [rsp + 0x390], rcx
mov qword [rsp + 0x398], 0
mov rax, qword [rsp + 0x308]
mov r8d, 8
lea rdx, [rsp + 0x310]
test al, 1
je 0x1401ce597
mov r8, qword [rsp + 0x318]
mov rdx, qword [rsp + 0x310]
shr rax, 1
cmp rax, r8
je 0x1401ce397
shl rax, 4
mov r8, rdx
add r8, rax
je 0x1401cfa22
mov qword [r8], rcx
mov qword [rdx + rax + 8], 0
add qword [rsp + 0x308], 2
mov r13, qword [rbx + 0x58]
mov r12, qword [rbx + 0x60]
cmp r13, r12
je 0x1401ce44e
mov rax, qword [rbx + 0x70]
mov rcx, r12
sub rcx, r13
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cfa25
imul rcx, rax, 0x38
cmp byte [r13 + rcx], 0
je 0x1401ce71a
add r13, rcx
mov rax, qword [r13 + 8]
mov qword [r13 + 8], 0
mov r12, qword [r8 + 8]
mov qword [rsp + 0x98], r8
mov qword [r8 + 8], rax
test r12, r12
jne 0x1401ce359
mov rcx, qword [rbx + 0x80]
lea rax, [rcx + 1]
mov qword [rbx + 0x80], rax
mov rax, qword [rbx + 0x70]
lea rdx, [rax + 1]
mov r12, qword [rbx + 0x58]
mov r9, qword [rbx + 0x60]
mov r8, r9
sub r8, r12
sar r8, 3
imul r8, r11
cmp rdx, r8
jb 0x1401ce733
mov rcx, r9
sub rcx, r12
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cfa28
imul rdx, rax, 0x38
cmp byte [r12 + rdx], 0
je 0x1401ce6c0
add r12, rdx
mov r13, qword [r12 + 8]
mov qword [r12 + 8], 0
test r13, r13
jne 0x1401ce7ea
mov byte [r12], 0
mov rax, qword [rbx + 0x70]
mov r12, qword [rbx + 0x58]
mov r9, qword [rbx + 0x60]
mov rcx, r9
sub rcx, r12
sar rcx, 3
imul rcx, r11
dec rcx
cmp rax, rcx
jb 0x1401ce728
mov r13, r12
cmp r9, r12
je 0x1401ce710
add r9, 0xffffffffffffffc8
test r9, r9
je 0x1401cfa2b
cmp byte [r9], 0
je 0x1401ce6fc
mov rax, qword [r9 + 8]
mov qword [r9 + 8], 0
test rax, rax
jne 0x1401ce80e
mov byte [r9], 0
lea rax, [r9 - 0x38]
cmp r9, r12
mov r9, rax
jne 0x1401ce6d4
mov rax, qword [rsp + 0x70]
mov r13, qword [rax]
mov qword [rbx + 0x60], r12
xor eax, eax
mov qword [rbx + 0x70], rax
cmp r13, r12
jne 0x1401ce500
jmp 0x1401ce44e
inc rax
mov r13, r12
mov r12, r9
jmp 0x1401ce716
imul rdx, rdx, 0x38
cmp byte [r12 + rdx], 0
je 0x1401ce793
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x40]
add r12, rdx
mov rdx, qword [r13 + 0x20]
mov qword [r12 + 0x20], rdx
mov r8, qword [r13 + 0x28]
mov qword [r12 + 0x28], r8
mov rdx, qword [r13 + 0x10]
dec rdx
mov qword [r12 + 0x10], rdx
mov r9, qword [r13 + 0x18]
sub r9, rax
mov qword [r12 + 0x18], r9
sub r8, rcx
mov rax, qword [rbx + 0x70]
mov rcx, qword [rbx + 0x58]
mov r9, qword [rbx + 0x60]
cmp r8, 2
jae 0x1401ce79d
mov r12, rcx
mov r10, qword [rsp + 0x50]
jmp 0x1401ce665
add rax, r8
sub r9, rcx
sar r9, 3
movabs r8, 0x6db6db6db6db6db7
imul r9, r8
cmp r9, rax
jbe 0x1401cfa2e
imul rax, rax, 0x38
cmp byte [rcx + rax], 0
je 0x1401cf93f
add rcx, rax
mov qword [rcx + 0x10], rdx
mov rax, qword [r12 + 0x18]
mov qword [rcx + 0x18], rax
mov rax, qword [rbx + 0x70]
mov r12, qword [rbx + 0x58]
mov r9, qword [rbx + 0x60]
jmp 0x1401ce793
mov rcx, r13
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ce6a1
mov r13, rax
mov rcx, rax
mov qword [rsp + 0x98], r9
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
mov r9, qword [rsp + 0x98]
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ce6f8
mov rcx, rbp
call fcn.1401c6642
mov rcx, rbp
call fcn.140153bcc
jmp 0x1401ce89f
mov rcx, rbp
call fcn.1401c6642
mov rcx, rbp
call fcn.140153bcc
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ce9e3
lea rcx, [rsp + 0x308]
lea rbp, [rsp + 0x390]
mov rdx, rbp
call fcn.140143664
mov r15, rax
mov rbp, qword [rbp + 8]
test rbp, rbp
jne 0x1401ce845
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
jmp 0x1401ce97e
test r14, r14
je 0x1401cb272
mov rcx, rsi
mov rdx, r15
call fcn.140133db0
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
mov rcx, r14
test al, al
je 0x1401ce90f
jmp 0x1401cb272
mov r15, qword [rbx + 0xb0]
test rdi, rdi
je 0x1401ce8b3
mov rcx, rsi
mov rdx, r15
call fcn.140133db0
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
mov rcx, rdi
test al, al
je 0x1401ce8b3
mov qword [rsp + 0x390], rcx
mov qword [rsp + 0x398], 0
mov rax, qword [rsp + 0x308]
mov r8d, 8
lea rdx, [rsp + 0x310]
test al, 1
je 0x1401ce94d
mov r8, qword [rsp + 0x318]
mov rdx, qword [rsp + 0x310]
shr rax, 1
cmp rax, r8
je 0x1401ce87b
shl rax, 4
mov r15, rdx
add r15, rax
je 0x1401cf996
mov qword [r15], rcx
mov qword [rdx + rax + 8], 0
add qword [rsp + 0x308], 2
mov r13, qword [rbx + 0x88]
mov r12, qword [rbx + 0x90]
cmp r13, r12
je 0x1401cb272
mov rax, qword [rbx + 0xa0]
mov rcx, r12
sub rcx, r13
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cf999
imul rcx, rax, 0x38
cmp byte [r13 + rcx], 0
je 0x1401ceae8
add r13, rcx
mov rax, qword [r13 + 8]
mov qword [r13 + 8], 0
mov rbp, qword [r15 + 8]
mov qword [r15 + 8], rax
test rbp, rbp
jne 0x1401ce857
mov rcx, qword [rbx + 0xb0]
lea rax, [rcx + 1]
mov qword [rbx + 0xb0], rax
mov rax, qword [rbx + 0xa0]
lea rdx, [rax + 1]
mov r12, qword [rbx + 0x88]
mov rbp, qword [rbx + 0x90]
mov r8, rbp
sub r8, r12
sar r8, 3
imul r8, r11
cmp rdx, r8
jb 0x1401ceb01
mov rcx, rbp
sub rcx, r12
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cf99c
imul rdx, rax, 0x38
cmp byte [r12 + rdx], 0
je 0x1401cea89
add r12, rdx
mov r15, qword [r12 + 8]
mov qword [r12 + 8], 0
test r15, r15
jne 0x1401cebba
mov byte [r12], 0
mov rax, qword [rbx + 0xa0]
mov r12, qword [rbx + 0x88]
mov rbp, qword [rbx + 0x90]
mov rcx, rbp
sub rcx, r12
sar rcx, 3
imul rcx, r11
dec rcx
cmp rax, rcx
jb 0x1401ceaf6
mov r13, r12
cmp rbp, r12
je 0x1401cead8
add rbp, 0xffffffffffffffc8
test rbp, rbp
je 0x1401cf9a2
cmp byte [rbp], 0
je 0x1401ceac5
mov r15, qword [rbp + 8]
mov qword [rbp + 8], 0
test r15, r15
jne 0x1401cebde
mov byte [rbp], 0
lea rax, [rbp - 0x38]
cmp rbp, r12
mov rbp, rax
jne 0x1401cea9d
mov r13, qword [rbx + 0x88]
mov qword [rbx + 0x90], r12
xor eax, eax
mov qword [rbx + 0xa0], rax
cmp r13, r12
jne 0x1401cb24e
jmp 0x1401cb272
inc rax
mov r13, r12
mov r12, rbp
jmp 0x1401ceae1
imul rdx, rdx, 0x38
cmp byte [r12 + rdx], 0
je 0x1401cea25
mov rax, qword [r15 + 8]
mov rax, qword [rax + 0x40]
add r12, rdx
mov rdx, qword [r13 + 0x20]
mov qword [r12 + 0x20], rdx
mov r8, qword [r13 + 0x28]
mov qword [r12 + 0x28], r8
mov rdx, qword [r13 + 0x10]
dec rdx
mov qword [r12 + 0x10], rdx
mov r9, qword [r13 + 0x18]
sub r9, rax
mov qword [r12 + 0x18], r9
sub r8, rcx
mov rax, qword [rbx + 0xa0]
mov rcx, qword [rbx + 0x88]
mov rbp, qword [rbx + 0x90]
cmp r8, 2
jae 0x1401ceb6b
mov r12, rcx
jmp 0x1401cea25
add rax, r8
sub rbp, rcx
sar rbp, 3
imul rbp, r11
cmp rbp, rax
jbe 0x1401cf9a5
imul rax, rax, 0x38
cmp byte [rcx + rax], 0
je 0x1401cf93f
add rcx, rax
mov qword [rcx + 0x10], rdx
mov rax, qword [r12 + 0x18]
mov qword [rcx + 0x18], rax
mov rax, qword [rbx + 0xa0]
mov r12, qword [rbx + 0x88]
mov rbp, qword [rbx + 0x90]
jmp 0x1401cea25
mov rcx, r15
call fcn.1401c6642
mov rcx, r15
call fcn.140153bcc
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cea61
mov rcx, r15
call fcn.1401c6642
mov rcx, r15
call fcn.140153bcc
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401ceac1
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cec89
mov r15, qword [rax + 8]
test r15, r15
je 0x1401cb2cb
cmp qword [r15], 0
je 0x1401cb2cb
cmp byte [r15 + 8], 0
je 0x1401cb2cb
cmp byte [r15 + 0x20], 0
je 0x1401cb2cb
mov rcx, qword [rbx + 0x80]
cmp qword [r15 + 0x10], rcx
ja 0x1401cb2cb
mov rcx, qword [rbx + 0xb0]
cmp qword [r15 + 0x28], rcx
ja 0x1401cb2cb
mov qword [rax + 8], 0
mov rcx, qword [r15]
test rcx, rcx
je 0x1401cec89
mov qword [r15], 0
lock dec dword [rcx + 8]
je 0x1401cec02
mov rcx, r15
call fcn.140153bcc
mov r15, qword [rbx + 0x50]
mov qword [rbx + 0x50], 0
test r15, r15
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
je 0x1401cb2cb
mov rdx, qword [r15 + 8]
mov qword [r15 + 8], 0
test rdx, rdx
jne 0x1401ced0e
mov rcx, qword [r15]
test rcx, rcx
jne 0x1401cecea
mov rcx, r15
call fcn.140153bcc
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
jmp 0x1401cb2cb
mov qword [r15], 0
lock dec dword [rcx + 8]
jne 0x1401cecce
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cecce
lea rcx, [r15 + 0x10]
call fcn.14020c628
jmp 0x1401cecc6
mov byte [r12 + 0xa1], 1
mov dword [rsp + 0x238], 4
mov rdi, qword [rsp + 0x80]
movabs rsi, 0xaaaaaaaa00000000
or byte [rsp + 0x234], 4
cmp dword [r12 + 0x10], 1
jne 0x1401cbc07
mov eax, 4
xor ecx, ecx
jmp 0x1401cba15
mov dword [rsp + 0x238], 0x16
mov rax, qword [r12 + 0x38]
mov rax, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
cmp rax, qword [r12 + 0x48]
jne 0x1401ced8d
cmp qword [rsp + 0x3a0], 0
je 0x1401cbc07
or byte [rsp + 0x234], 2
jmp 0x1401cbc07
mov rcx, r13
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
jmp 0x1401cedfd
mov rcx, r13
mov r14, r9
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
mov r9, r14
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cefb2
mov r14, r9
lea rcx, [rsp + 0x308]
lea r13, [rsp + 0x390]
mov rdx, r13
call fcn.140143664
mov r12, rax
mov r13, qword [r13 + 8]
test r13, r13
jne 0x1401ced9a
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
mov r9, r14
mov r8, r12
jmp 0x1401cef4d
xor r13d, r13d
jmp 0x1401ce4e5
test r9, r9
je 0x1401cee17
mov r14, r9
mov rcx, r15
mov rdx, r12
call fcn.140133db0
mov rcx, r14
test al, al
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
mov r9, r14
je 0x1401ceede
jmp 0x1401cb2bb
mov rdi, qword [rax]
jmp 0x1401cee68
mov r15, qword [rbx + 0x50]
mov rax, qword [r15 + 8]
test rax, rax
jne 0x1401cee54
xor edi, edi
mov r12, qword [rbx + 0x58]
mov r14, qword [rbx + 0x60]
cmp r12, r14
je 0x1401cb2bb
mov r9, qword [r15]
mov rax, qword [rbx + 0x70]
sub r14, r12
sar r14, 3
imul r14, r11
cmp r14, rax
jbe 0x1401cfa49
imul rax, rax, 0x38
cmp byte [r12 + rax], 0
je 0x1401cb2bb
mov r12, qword [rbx + 0x80]
test rdi, rdi
je 0x1401cee1f
mov rcx, r15
mov rdx, r12
mov r14, r9
call fcn.140133db0
mov r9, r14
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
mov rcx, rdi
test al, al
je 0x1401cee1f
mov qword [rsp + 0x390], rcx
mov qword [rsp + 0x398], 0
mov rax, qword [rsp + 0x308]
mov r8d, 8
lea rdx, [rsp + 0x310]
test al, 1
je 0x1401cef1c
mov r8, qword [rsp + 0x318]
mov rdx, qword [rsp + 0x310]
shr rax, 1
cmp rax, r8
je 0x1401cedd6
shl rax, 4
mov r8, rdx
add r8, rax
je 0x1401cfa4c
mov qword [r8], rcx
mov qword [rdx + rax + 8], 0
add qword [rsp + 0x308], 2
mov r12, qword [rbx + 0x58]
mov r14, qword [rbx + 0x60]
cmp r12, r14
je 0x1401cb2bb
mov rax, qword [rbx + 0x70]
mov rcx, r14
sub rcx, r12
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cfa4f
imul rcx, rax, 0x38
cmp byte [r12 + rcx], 0
je 0x1401cf0b4
add r12, rcx
mov rax, qword [r12 + 8]
mov qword [r12 + 8], 0
mov r13, qword [r8 + 8]
mov qword [rsp + 0x98], r8
mov qword [r8 + 8], rax
test r13, r13
jne 0x1401cedac
mov rcx, qword [rbx + 0x80]
lea rax, [rcx + 1]
mov qword [rbx + 0x80], rax
mov rax, qword [rbx + 0x70]
lea rdx, [rax + 1]
mov r14, qword [rbx + 0x58]
mov r13, qword [rbx + 0x60]
mov r8, r13
sub r8, r14
sar r8, 3
imul r8, r11
cmp rdx, r8
jb 0x1401cf0d0
mov rcx, r13
sub rcx, r14
sar rcx, 3
imul rcx, r11
cmp rcx, rax
jbe 0x1401cfa52
imul rdx, rax, 0x38
cmp byte [r14 + rdx], 0
je 0x1401cf043
add r14, rdx
mov r13, qword [r14 + 8]
mov qword [r14 + 8], 0
test r13, r13
jne 0x1401cf196
mov byte [r14], 0
mov rax, qword [rbx + 0x70]
mov r14, qword [rbx + 0x58]
mov r13, qword [rbx + 0x60]
mov rcx, r13
sub rcx, r14
sar rcx, 3
imul rcx, r11
dec rcx
cmp rax, rcx
jb 0x1401cf0c5
mov r12, r14
cmp r13, r14
je 0x1401cf0aa
add r13, 0xffffffffffffffc8
test r13, r13
je 0x1401cfa55
cmp byte [r13], 0
je 0x1401cf096
mov r12, r9
mov rcx, qword [r13 + 8]
mov qword [r13 + 8], 0
test rcx, rcx
jne 0x1401cf1c0
mov byte [r13], 0
movabs r11, 0x6db6db6db6db6db7
mov r10, qword [rsp + 0x50]
mov r9, r12
lea rax, [r13 - 0x38]
cmp r13, r14
mov r13, rax
jne 0x1401cf057
mov rax, qword [rsp + 0x70]
mov r12, qword [rax]
mov qword [rbx + 0x60], r14
xor eax, eax
mov qword [rbx + 0x70], rax
xor r13d, r13d
cmp r12, r14
jne 0x1401cee80
jmp 0x1401cb2be
inc rax
mov r12, r14
mov r14, r13
jmp 0x1401cf0b0
mov qword [rsp + 0xc0], r9
imul rdx, rdx, 0x38
cmp byte [r14 + rdx], 0
je 0x1401cf138
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x40]
add r14, rdx
mov rdx, qword [r12 + 0x20]
mov qword [r14 + 0x20], rdx
mov r8, qword [r12 + 0x28]
mov qword [r14 + 0x28], r8
mov rdx, qword [r12 + 0x10]
dec rdx
mov qword [r14 + 0x10], rdx
mov r9, qword [r12 + 0x18]
sub r9, rax
mov qword [r14 + 0x18], r9
sub r8, rcx
mov rax, qword [rbx + 0x70]
mov rcx, qword [rbx + 0x58]
mov r13, qword [rbx + 0x60]
cmp r8, 2
jae 0x1401cf14a
mov r14, rcx
mov r10, qword [rsp + 0x50]
mov r9, qword [rsp + 0xc0]
jmp 0x1401cefeb
add rax, r8
sub r13, rcx
sar r13, 3
movabs r8, 0x6db6db6db6db6db7
imul r13, r8
cmp r13, rax
jbe 0x1401cfa58
imul rax, rax, 0x38
cmp byte [rcx + rax], 0
je 0x1401cf93f
add rcx, rax
mov qword [rcx + 0x10], rdx
mov rax, qword [r14 + 0x18]
mov qword [rcx + 0x18], rax
mov rax, qword [rbx + 0x70]
mov r14, qword [rbx + 0x58]
mov r13, qword [rbx + 0x60]
jmp 0x1401cf138
mov rcx, r13
mov r12, r9
call fcn.1401c6642
mov rcx, r13
call fcn.140153bcc
mov r9, r12
mov r10, qword [rsp + 0x50]
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cf025
mov rax, rcx
mov qword [rsp + 0x98], rax
call fcn.1401c6642
mov rcx, qword [rsp + 0x98]
call fcn.140153bcc
jmp 0x1401cf07f
mov rax, qword [rbx + 0x60]
sub rax, qword [rbx + 0x58]
sar rax, 3
imul rax, r11
mov rcx, rsi
sub rcx, qword [rbx + 0x70]
add rcx, rax
cmp rcx, r14
ja 0x1401cad7f
jmp 0x1401cf4f2
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x1401cf225
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x1401cf20a
mov ecx, dword [0x140358c04]
inc ecx
movabs r8, 0x6db6db6db6db6db7
mov rax, qword [rsi]
test al, 0x11
jne 0x1401cf249
test al, 8
je 0x1401cf26d
dec ecx
cmp ecx, 1
jg 0x1401cf237
lea rdx, [0x140304c88]
mov rcx, rsi
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
movabs r8, 0x6db6db6db6db6db7
jmp 0x1401cb942
mov rdx, rax
or rdx, 8
lock cmpxchg qword [rsi], rdx
je 0x1401cb942
jmp 0x1401cf242
mov rcx, rbx
mov rdx, qword [rsp + 0x90]
mov r12, rsi
mov rsi, r11
mov r13, r14
mov r14, r9
mov ebp, r8d
call fcn.140133e6e
mov r8d, ebp
mov r9, r14
mov r14, r13
mov r11, rsi
mov rsi, r12
mov r10, qword [rsp + 0x50]
jmp 0x1401cb45f
lock dec dword [r11 + 8]
jne 0x1401cb5d3
mov rax, qword [r11]
mov rax, qword [rax + 0xb0]
mov rcx, r11
mov edx, 1
mov rbx, rsi
mov rsi, r9
mov ebp, r8d
call qword [0x14037e008]
mov r8d, ebp
mov r9, rsi
mov rsi, rbx
mov r10, qword [rsp + 0x50]
jmp 0x1401cb5d3
mov r8d, edx
not r8d
and r8d, eax
lock cmpxchg dword [rcx + 4], r8d
jne 0x1401cb579
jmp 0x1401cf3bf
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov edx, 1
call qword [0x14037e008]
jmp 0x1401cf3af
mov r8d, edx
not r8d
and r8d, eax
lock cmpxchg dword [rcx + 0x14], r8d
jne 0x1401cb523
mov r12, rsi
mov r15, r9
mov rsi, r11
lea rbx, [rsp + 0x390]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rbx], rax
mov rcx, qword [r10 + 0x18]
cmp byte [r10 + 0x10], 0
sete r8b
mov rdx, rbx
call fcn.1401bc22c
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401cf3af
mov rdx, qword [rsp + 0x90]
mov r8d, 1
call fcn.1401c2f8a
mov rcx, qword [rsp + 0x390]
test rcx, rcx
je 0x1401cf3af
mov qword [rsp + 0x390], 0
lock dec dword [rcx + 8]
je 0x1401cf312
mov r10, qword [rsp + 0x50]
mov r11, rsi
mov r9, r15
mov rsi, r12
jmp 0x1401cf43a
mov r13, rsi
mov r12, r9
mov r15, r11
lea rbx, [rsp + 0x390]
mov r8d, 0x108
mov rcx, rbx
mov dl, 0xaa
call fcn.140159120
mov rcx, rbx
call fcn.1400de30c
mov rax, qword [rbx + 0xb8]
movzx ecx, byte [rax]
cmp qword [rbx + 0xc0], rcx
jbe 0x1401cf93f
mov rsi, qword [rsp + 0x50]
mov rdx, qword [rsi + 0x18]
mov qword [rax + rcx + 8], rdx
mov rcx, qword [rsi + 0x10]
lea rbx, [rsp + 0x390]
mov rdx, rbx
call fcn.1400d5e40
mov rcx, rbx
call fcn.1401c193a
mov r10, rsi
mov r11, r15
mov r9, r12
mov rsi, r13
mov r13, qword [rsp + 0x70]
mov r8d, ebp
jmp 0x1401cb598
mov rcx, r10
mov rdx, qword [rsp + 0x90]
mov r15, rsi
mov rsi, r11
mov rbx, r9
call qword [0x14037e008]
mov r9, rbx
mov r11, rsi
mov rsi, r15
mov r10, qword [rsp + 0x50]
jmp 0x1401cf43a
inc r12
cmp rax, r12
jbe 0x1401cfad1
imul rax, r12, 0x38
cmp byte [r9 + rax], 0
je 0x1401caeda
add r9, rax
mov rax, qword [r9 + 0x28]
mov qword [r13 + 0x28], rax
add r8, qword [r9 + 0x10]
mov qword [r13 + 0x10], r8
add rcx, qword [r9 + 0x18]
mov qword [r13 + 0x18], rcx
jmp 0x1401caee1
add rdx, r8
mov rcx, qword [rbx + 0x58]
mov r10, qword [rbx + 0x60]
sub r10, rcx
sar r10, 3
imul r10, r11
cmp r10, rdx
jbe 0x1401cfad4
imul rdx, rdx, 0x38
jmp 0x1401caf15
mov rsi, r8
mov rcx, r8
call fcn.1401c6642
mov rcx, rsi
call fcn.140153bcc
jmp 0x1401cf4f7
imul rax, r12, 0x38
cmp byte [rdx + rax], 0
je 0x1401cae34
test r8, r8
jne 0x1401cf4cf
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
mov rdi, qword [rsp + 0x80]
jae 0x1401cf532
mov rcx, rax
and rcx, 0xffffffffffffffd7
mov rdx, qword [rsp + 0x60]
lock cmpxchg qword [rdx], rcx
je 0x1401cb620
mov rcx, qword [rsp + 0x60]
xor edx, edx
call fcn.140102bcc
jmp 0x1401cb620
mov rax, qword [r11]
mov rax, qword [rax + 0x38]
mov rcx, r11
mov rdx, qword [rsp + 0x90]
mov ebp, r8d
mov r8, qword [rsp + 0xd0]
mov r12, rsi
mov rsi, r11
mov r15, r9
call qword [0x14037e008]
mov r8d, ebp
mov r9, r15
mov r11, rsi
mov rsi, r12
mov r10, qword [rsp + 0x50]
jmp 0x1401cb498
mov rcx, r15
mov rsi, r8
call fcn.1401c6642
mov rcx, r15
call fcn.140153bcc
mov r8, rsi
movabs r11, 0x6db6db6db6db6db7
jmp 0x1401cae73
mov rbx, qword [rsp + 0x140]
jmp 0x1401cb638
mov r14, qword [rsp + 0x228]
jmp 0x1401cb5a8
mov rcx, rbx
mov rdx, qword [rsp + 0x90]
mov r15, rsi
mov rsi, r11
mov rbx, r9
mov ebp, r8d
call fcn.14014a99e
mov r8d, ebp
mov r9, rbx
mov r11, rsi
mov rsi, r15
mov r10, qword [rsp + 0x50]
test r10, r10
je 0x1401cb598
test al, al
jne 0x1401cb598
jmp 0x1401cb4cf
lea rcx, [rdi + 0x48]
lea r8, [r15 + 0x28]
movdqa xmm0, xmmword [0x1402fccc0]
lea r12, [rsp + 0x390]
movdqa xmmword [r12], xmm0
mov rdx, r12
call fcn.1400640f0
mov r8, qword [r12]
mov r9, qword [r12 + 8]
lea rcx, [rdi + 0x50]
lea rdx, [rsp + 0x220]
call fcn.140064160
cmp byte [r15 + 0x51], 0
jne 0x1401cf6c4
mov byte [r15 + 0x51], 1
movabs rax, 0x100000020
lea r8, [rsp + 0x390]
mov qword [r8], rax
mov rax, qword [r15 + 0x28]
mov qword [r8 + 8], rax
mov qword [r8 + 0x10], 1
mov dword [r8 + 0x18], 0
mov rcx, rdi
mov rdx, r15
call fcn.1400fbb70
mov rax, qword [rdi + 0x50]
mov qword [rdi + 0x68], rax
lea r12, [0x1401f9ae0]
jmp 0x1401cbb08
lea rcx, [r12 + 0x48]
lea r8, [rbp + 0x28]
lea rdi, [rsp + 0x390]
movaps xmmword [rdi], xmm6
mov rdx, rdi
call fcn.1400640f0
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
lea rcx, [r12 + 0x50]
lea rdx, [rsp + 0x110]
call fcn.140064160
cmp byte [rbp + 0x51], 0
jne 0x1401cf74f
mov byte [rbp + 0x51], 1
movabs rax, 0x100000020
lea r8, [rsp + 0x390]
mov qword [r8], rax
mov rax, qword [rbp + 0x28]
mov qword [r8 + 8], rax
mov qword [r8 + 0x10], 1
mov dword [r8 + 0x18], 0
mov rcx, r12
mov rdx, rbp
call fcn.1400fbb70
mov rax, qword [r12 + 0x50]
mov qword [r12 + 0x68], rax
mov rdi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x70]
jmp 0x1401ccc5c
mov rcx, r14
xor edx, edx
call fcn.140102bcc
jmp 0x1401cb0c5
mov r15, rsi
mov rax, r14
mov r14, r9
mov rsi, r11
test al, al
jne 0x1401cf7ac
mov rcx, qword [rsp + 0x70]
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0xd0]
call qword [0x14037e008]
mov r13, qword [rsp + 0x70]
mov rax, qword [r13]
mov rax, qword [rax + 0xa0]
mov rcx, r13
call qword [0x14037e008]
mov r10, qword [rsp + 0x50]
mov r8d, dword [rsp + 0x6c]
mov r11, rsi
mov r9, r14
mov rsi, r15
jmp 0x1401cb476
xor edx, edx
mov qword [rsp + 0x58], r11
mov qword [rsp + 0xb0], r14
mov r14, rsi
mov rsi, r9
call fcn.140102bcc
mov r9, rsi
mov rsi, r14
mov r14, qword [rsp + 0xb0]
mov r11, qword [rsp + 0x58]
mov r10, qword [rsp + 0x50]
jmp 0x1401cb3ff
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401cbaf5
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401ccc4a
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401cb892
mov rcx, rsi
xor edx, edx
call fcn.140102bcc
jmp 0x1401cb9bd
lea rcx, [0x140360b50]
call fcn.1401547b8
movabs r8, 0x6db6db6db6db6db7
cmp dword [0x140360b50], 0xffffffff
jne 0x1401cb8ed
cmp qword [0x140353098], 0x87
jbe 0x1401cf9b1
lea rcx, [0x140353098]
lea rdx, [0x140307810]
mov r8d, 0x88
call fcn.140158a70
lea rcx, [0x140360b50]
call fcn.140153cf4
movabs r8, 0x6db6db6db6db6db7
jmp 0x1401cb8ed
lea rcx, [rsp + 0xf0]
call qword [0x14037e008]
mov r15, qword [rsp + 0xa0]
jmp 0x1401cccdf
lea rcx, [rsp + 0x308]
call qword [0x14037e008]
mov rdi, qword [rsp + 0x80]
movabs rsi, 0xaaaaaaaa00000000
jmp 0x1401cbaaf
call fcn.1401e1808
int3
int3
int3
int3
ud2
int3
int3
int3
int3
int3
int3
int3
mov rcx, rsi
call fcn.1401c6642
mov rcx, rsi
call fcn.140153bcc
jmp 0x1401cb65a
mov rcx, qword [rsp + 0x70]
call fcn.14020e2ca
movabs r11, 0x6db6db6db6db6db7
cmp rax, qword [rdi + 0x18]
lea eax, [rsi + 0x10]
cmovbe eax, esi
mov ecx, dword [rdi + 8]
mov esi, eax
jmp 0x1401cb01e
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
xor edi, edi
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xd0], rax
mov rsi, r11
jmp 0x1401cb3c1
int3
int3
int3
int3
int3
int3
int3
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x80]
jmp 0x1401ccc82
int3
int3
int3
int3
int3
int3
lea rcx, [r14 + 0x18]
mov r12, r15
mov r15, qword [r14 + 0x10]
call fcn.140257310
movabs rcx, 0xff00000000000000
and rcx, r15
mov r15, r12
lea r12, [rsp + 0x390]
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x1401cbcbf
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r14, qword [rsp + 0x58]
lea r12, [0x1401f9ae0]
jmp 0x1401cba4f
lea r9, [rsp + 0x390]
mov rcx, rdi
xor edx, edx
xor r8d, r8d
call qword [0x14037e008]
test eax, eax
je 0x1401cb9bd
jmp 0x1401cbfce
int3
int3
int3