Function at 0x1400c7dc0
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov r13, r8
mov rsi, rcx
mov eax, 1
test r9b, 0x40
je 0x1400c7df3
mov eax, dword [rsp + 0xf0]
test eax, eax
je 0x1400c8e0f
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x48], r9d
movabs r10, 0x10000000000
mov qword [rsp + 0x40], rdx
test rdx, rdx
mov qword [rsp + 0x30], rsi
je 0x1400c7e78
lea rax, [r13 - 0x1000]
shr rax, 0xc
cmp rax, 0xdfffffe
ja 0x1400c7e78
lea rdx, [r10 + r13*2]
and rdx, 0xfffffffffffffff0
mov ecx, dword [rsi]
mov ebx, r13d
and bl, 7
mov eax, ecx
bts eax, ebx
mov r8d, eax
or r8d, 0xc0000000
mov ebx, 0x40000000
mov edi, dword [rdx]
or edi, ebx
cmp edi, r8d
je 0x1400c7e78
or ebx, dword [rdx + 4]
cmp ebx, r8d
je 0x1400c7e78
mov ebx, 0x40000000
mov edi, dword [rdx + 8]
or edi, ebx
cmp edi, r8d
je 0x1400c7e78
or ebx, dword [rdx + 0xc]
cmp ebx, r8d
jne 0x1400c8ec5
movabs rdi, 0x2000000000000000
movabs r14, 0x1000000000000000
mov rbx, qword [rsi + 0x280]
mov rax, qword [rbx]
lea r15, [rbx + 8]
mov rdx, 0xffffffffffffffff
xor ecx, ecx
lea r12, [r14 + 0xfffff]
movabs r8, 0xdfffffffffffffff
nop word cs:[rax + rax]
nop
test rax, r12
jne 0x1400c7edb
mov rbp, rax
or rbp, r14
and rbp, rdx
lock cmpxchg qword [rbx], rbp
je 0x1400c7f47
add rcx, 1
jmp 0x1400c7ec0
cmp rcx, 0x5dc
jbe 0x1400c7f1d
lea rbp, [rax + r10]
and rbp, rdx
lock cmpxchg qword [rbx], rbp
jne 0x1400c7ed5
mov rcx, r15
mov rsi, r8
call fcn.1401004b0
mov r8, rsi
movabs r10, 0x10000000000
movabs rdi, 0x2000000000000000
mov rsi, qword [rsp + 0x30]
xor ecx, ecx
jmp 0x1400c7f2f
test rax, rdi
jne 0x1400c7f3b
mov rbp, rax
or rbp, rdi
lock cmpxchg qword [rbx], rbp
jne 0x1400c7ed5
mov rax, qword [rbx]
add rcx, 1
mov rdx, r8
jmp 0x1400c7ec0
mov rax, qword [rbx]
add rcx, 1
jmp 0x1400c7ec0
mov byte [rsi + 0x290], 1
cmp qword [rbx + 0x18], rsi
jne 0x1400c8da8
mov eax, dword [rsi]
not eax
test eax, 0x3fff0000
je 0x1400c8da8
mov rcx, qword [0x1402918c8]
add rcx, 8
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
mov rdx, rsi
mov r15, qword [rsp + 0x40]
mov r8, r15
mov r9, r13
call fcn.1400ee6c0
mov r10, qword [rsp + 0x30]
mov r9, rax
mov esi, dword [rax + 0x18]
mov rax, qword [r10 + 0x10]
lea ecx, [rax + 8]
test ecx, 0xff0
je 0x1400c8dda
movabs r11, 0x2000000000000000
shl r13, 0x14
mov rcx, rsi
shr rcx, 0xf
or rcx, r13
mov rdx, r15
shl rdx, 5
movabs rbp, 0x1ffffffffffe0
and rbp, rdx
shl rsi, 0x31
lea rdx, [rsi + rbp]
add rdx, 8
mov qword [rax], rdx
mov qword [rax + 8], rcx
add rax, 0x10
mov qword [r10 + 0x10], rax
mov rax, qword [r9 + 8]
lea r13, [r9 + 0x10]
mov rdx, 0xffffffffffffffff
xor ecx, ecx
lea rbp, [rsp + 0x58]
movabs rsi, 0xdfffffffffffffff
movabs rbx, 0x10000000000
nop
test rax, r12
jne 0x1400c8040
mov rdi, rax
or rdi, r14
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c80d5
add rcx, 1
jmp 0x1400c8020
cmp rcx, 0x5dc
jbe 0x1400c80a5
lea rdi, [rax + rbx]
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c808e
jmp 0x1400c803a
mov dword [rsp + 0x58], 0
mov r8d, 4
mov rcx, r13
mov rdx, rbp
mov rdi, r9
mov r9d, 0xffffffff
call sub.api_ms_win_core_synch_l1_2_0.dll_WaitOnAddress
mov r9, rdi
movabs r11, 0x2000000000000000
mov r10, qword [rsp + 0x30]
mov eax, dword [r13]
test eax, eax
je 0x1400c805a
lea ecx, [rax - 1]
lock cmpxchg dword [r13], ecx
jne 0x1400c8092
xor ecx, ecx
jmp 0x1400c80b8
test rax, r11
jne 0x1400c80c8
mov rdi, rax
or rdi, r11
lock cmpxchg qword [r9 + 8], rdi
jne 0x1400c803a
mov rax, qword [r9 + 8]
add rcx, 1
mov rdx, rsi
jmp 0x1400c8020
mov rax, qword [r9 + 8]
add rcx, 1
jmp 0x1400c8020
movsxd r12, dword [r9 + 0x24]
mov r14d, dword [rsp + 0x48]
mov eax, r14d
and eax, 0x107
je 0x1400c80f4
mov ecx, dword [r9 + 0x28]
test ecx, 0x107
je 0x1400c8164
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
je 0x1400c8173
cmp eax, dword [r10 + 0x24c]
jne 0x1400c811f
test r12d, r12d
je 0x1400c8e6b
mov eax, dword [rsp + 0x3c]
add eax, r12d
mov dword [r9 + 0x24], eax
jmp 0x1400c8b6c
mov rax, qword [0x1402918c8]
cmp byte [rax + 0xa00196], 0
je 0x1400c8141
test dword [r9 + 0x28], 0x40000000
jne 0x1400c8141
or dword [r9 + 0x28], 0x40000000
mov eax, dword [rsp + 0x3c]
add eax, r12d
mov dword [r9 + 0x24], eax
mov bl, 1
test r12d, r12d
jne 0x1400c8b6e
cmp dword [r10 + 4], 0
jne 0x1400c868a
jmp 0x1400c81a1
or ecx, eax
mov dword [r9 + 0x28], ecx
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
jne 0x1400c80fd
test r12d, r12d
jne 0x1400c8e47
mov eax, dword [r10 + 0x24c]
mov dword [r9 + 0x1c], eax
mov eax, dword [r10]
mov dword [r9 + 0x20], eax
mov eax, dword [rsp + 0x3c]
mov dword [r9 + 0x24], eax
cmp dword [r10 + 4], 0
jne 0x1400c868a
mov rax, qword [r9 + 0x50]
test rax, rax
je 0x1400c820a
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400c821c
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400c821c
xor ecx, ecx
nop dword [rax + rax]
movzx edx, word [r10 + rcx*2 + 0x2c]
movzx ebp, word [rax + rcx*2]
cmp dx, bp
cmova ebp, edx
mov word [r10 + rcx*2 + 0x2c], bp
movzx edx, word [r10 + rcx*2 + 0x2e]
movzx ebp, word [rax + rcx*2 + 2]
cmp dx, bp
cmova ebp, edx
mov word [r10 + rcx*2 + 0x2e], bp
add rcx, 2
cmp rcx, 0x100
jne 0x1400c81d0
mov rax, qword [r9 + 0x48]
test rax, rax
jne 0x1400c8628
jmp 0x1400c868a
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [r10 + 0x2c]
movdqu xmm3, xmmword [r10 + 0x3c]
movdqu xmm4, xmmword [r10 + 0x4c]
movdqu xmm5, xmmword [r10 + 0x5c]
psubusw xmm0, xmm2
paddw xmm0, xmm2
psubusw xmm1, xmm3
paddw xmm1, xmm3
movdqu xmmword [r10 + 0x2c], xmm0
movdqu xmmword [r10 + 0x3c], xmm1
movdqu xmm0, xmmword [rax + 0x20]
movdqu xmm1, xmmword [rax + 0x30]
psubusw xmm0, xmm4
paddw xmm0, xmm4
psubusw xmm1, xmm5
paddw xmm1, xmm5
movdqu xmmword [r10 + 0x4c], xmm0
movdqu xmmword [r10 + 0x5c], xmm1
movdqu xmm0, xmmword [r10 + 0x6c]
movdqu xmm1, xmmword [r10 + 0x7c]
movdqu xmm2, xmmword [rax + 0x40]
movdqu xmm3, xmmword [rax + 0x50]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x6c], xmm2
movdqu xmmword [r10 + 0x7c], xmm3
movdqu xmm0, xmmword [r10 + 0x8c]
movdqu xmm1, xmmword [r10 + 0x9c]
movdqu xmm2, xmmword [rax + 0x60]
movdqu xmm3, xmmword [rax + 0x70]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x8c], xmm2
movdqu xmmword [r10 + 0x9c], xmm3
movdqu xmm0, xmmword [r10 + 0xac]
movdqu xmm1, xmmword [r10 + 0xbc]
movdqu xmm2, xmmword [rax + 0x80]
movdqu xmm3, xmmword [rax + 0x90]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xac], xmm2
movdqu xmmword [r10 + 0xbc], xmm3
movdqu xmm0, xmmword [r10 + 0xcc]
movdqu xmm1, xmmword [r10 + 0xdc]
movdqu xmm2, xmmword [rax + 0xa0]
movdqu xmm3, xmmword [rax + 0xb0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xcc], xmm2
movdqu xmmword [r10 + 0xdc], xmm3
movdqu xmm0, xmmword [r10 + 0xec]
movdqu xmm1, xmmword [r10 + 0xfc]
movdqu xmm2, xmmword [rax + 0xc0]
movdqu xmm3, xmmword [rax + 0xd0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xec], xmm2
movdqu xmmword [r10 + 0xfc], xmm3
movdqu xmm0, xmmword [r10 + 0x10c]
movdqu xmm1, xmmword [r10 + 0x11c]
movdqu xmm2, xmmword [rax + 0xe0]
movdqu xmm3, xmmword [rax + 0xf0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x10c], xmm2
movdqu xmmword [r10 + 0x11c], xmm3
movdqu xmm0, xmmword [r10 + 0x12c]
movdqu xmm1, xmmword [r10 + 0x13c]
movdqu xmm2, xmmword [rax + 0x100]
movdqu xmm3, xmmword [rax + 0x110]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x12c], xmm2
movdqu xmmword [r10 + 0x13c], xmm3
movdqu xmm0, xmmword [r10 + 0x14c]
movdqu xmm1, xmmword [r10 + 0x15c]
movdqu xmm2, xmmword [rax + 0x120]
movdqu xmm3, xmmword [rax + 0x130]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x14c], xmm2
movdqu xmmword [r10 + 0x15c], xmm3
movdqu xmm0, xmmword [r10 + 0x16c]
movdqu xmm1, xmmword [r10 + 0x17c]
movdqu xmm2, xmmword [rax + 0x140]
movdqu xmm3, xmmword [rax + 0x150]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x16c], xmm2
movdqu xmmword [r10 + 0x17c], xmm3
movdqu xmm0, xmmword [r10 + 0x18c]
movdqu xmm1, xmmword [r10 + 0x19c]
movdqu xmm2, xmmword [rax + 0x160]
movdqu xmm3, xmmword [rax + 0x170]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x18c], xmm2
movdqu xmmword [r10 + 0x19c], xmm3
movdqu xmm0, xmmword [r10 + 0x1ac]
movdqu xmm1, xmmword [r10 + 0x1bc]
movdqu xmm2, xmmword [rax + 0x180]
movdqu xmm3, xmmword [rax + 0x190]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1ac], xmm2
movdqu xmmword [r10 + 0x1bc], xmm3
movdqu xmm0, xmmword [r10 + 0x1cc]
movdqu xmm1, xmmword [r10 + 0x1dc]
movdqu xmm2, xmmword [rax + 0x1a0]
movdqu xmm3, xmmword [rax + 0x1b0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1cc], xmm2
movdqu xmmword [r10 + 0x1dc], xmm3
movdqu xmm0, xmmword [r10 + 0x1ec]
movdqu xmm1, xmmword [r10 + 0x1fc]
movdqu xmm2, xmmword [rax + 0x1c0]
movdqu xmm3, xmmword [rax + 0x1d0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1ec], xmm2
movdqu xmmword [r10 + 0x1fc], xmm3
movdqu xmm0, xmmword [r10 + 0x20c]
movdqu xmm1, xmmword [r10 + 0x21c]
movdqu xmm2, xmmword [rax + 0x1e0]
movdqu xmm3, xmmword [rax + 0x1f0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x20c], xmm2
movdqu xmmword [r10 + 0x21c], xmm3
mov rax, qword [r9 + 0x48]
test rax, rax
je 0x1400c868a
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400c875c
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400c875c
xor ecx, ecx
nop
movzx edx, word [r10 + rcx*2 + 0x2c]
movzx ebp, word [rax + rcx*2]
cmp dx, bp
cmova ebp, edx
mov word [r10 + rcx*2 + 0x2c], bp
movzx edx, word [r10 + rcx*2 + 0x2e]
movzx ebp, word [rax + rcx*2 + 2]
cmp dx, bp
cmova ebp, edx
mov word [r10 + rcx*2 + 0x2e], bp
add rcx, 2
cmp rcx, 0x100
jne 0x1400c8650
cmp byte [0x140291952], 0
je 0x1400c8b6c
mov rbp, r9
mov esi, r14d
and esi, 0x10
lea rax, [0x14022d318]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x78], r15
lea rdx, [rsp + 0x50]
xor ecx, ecx
mov rdi, r10
call qword [0x1402918c0]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x418]
mov qword [rsp + 0x60], rax
mov rax, qword [rdi + 0x278]
mov qword [rsp + 0x68], rax
test r14d, 0x20000000
je 0x1400c8710
test esi, esi
jne 0x1400c8710
mov rax, qword [0x1402918c8]
mov rcx, qword [rax + 0xa00188]
lea r8, [rbp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x58]
mov r9b, 1
call qword [rax + 0x28]
shr esi, 4
test r14d, 0x20000000
sete bl
mov rax, qword [0x1402918c8]
mov rcx, qword [rax + 0xa00188]
lea r8, [rbp + 0x30]
mov rax, qword [rcx]
mov byte [rsp + 0x20], sil
lea rdx, [rsp + 0x58]
mov r9b, 1
call qword [rax + 0x30]
mov r9, rbp
or bl, sil
mov r10, qword [rsp + 0x30]
movabs r11, 0x2000000000000000
jmp 0x1400c8b6e
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [r10 + 0x2c]
movdqu xmm3, xmmword [r10 + 0x3c]
movdqu xmm4, xmmword [r10 + 0x4c]
movdqu xmm5, xmmword [r10 + 0x5c]
psubusw xmm0, xmm2
paddw xmm0, xmm2
psubusw xmm1, xmm3
paddw xmm1, xmm3
movdqu xmmword [r10 + 0x2c], xmm0
movdqu xmmword [r10 + 0x3c], xmm1
movdqu xmm0, xmmword [rax + 0x20]
movdqu xmm1, xmmword [rax + 0x30]
psubusw xmm0, xmm4
paddw xmm0, xmm4
psubusw xmm1, xmm5
paddw xmm1, xmm5
movdqu xmmword [r10 + 0x4c], xmm0
movdqu xmmword [r10 + 0x5c], xmm1
movdqu xmm0, xmmword [r10 + 0x6c]
movdqu xmm1, xmmword [r10 + 0x7c]
movdqu xmm2, xmmword [rax + 0x40]
movdqu xmm3, xmmword [rax + 0x50]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x6c], xmm2
movdqu xmmword [r10 + 0x7c], xmm3
movdqu xmm0, xmmword [r10 + 0x8c]
movdqu xmm1, xmmword [r10 + 0x9c]
movdqu xmm2, xmmword [rax + 0x60]
movdqu xmm3, xmmword [rax + 0x70]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x8c], xmm2
movdqu xmmword [r10 + 0x9c], xmm3
movdqu xmm0, xmmword [r10 + 0xac]
movdqu xmm1, xmmword [r10 + 0xbc]
movdqu xmm2, xmmword [rax + 0x80]
movdqu xmm3, xmmword [rax + 0x90]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xac], xmm2
movdqu xmmword [r10 + 0xbc], xmm3
movdqu xmm0, xmmword [r10 + 0xcc]
movdqu xmm1, xmmword [r10 + 0xdc]
movdqu xmm2, xmmword [rax + 0xa0]
movdqu xmm3, xmmword [rax + 0xb0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xcc], xmm2
movdqu xmmword [r10 + 0xdc], xmm3
movdqu xmm0, xmmword [r10 + 0xec]
movdqu xmm1, xmmword [r10 + 0xfc]
movdqu xmm2, xmmword [rax + 0xc0]
movdqu xmm3, xmmword [rax + 0xd0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0xec], xmm2
movdqu xmmword [r10 + 0xfc], xmm3
movdqu xmm0, xmmword [r10 + 0x10c]
movdqu xmm1, xmmword [r10 + 0x11c]
movdqu xmm2, xmmword [rax + 0xe0]
movdqu xmm3, xmmword [rax + 0xf0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x10c], xmm2
movdqu xmmword [r10 + 0x11c], xmm3
movdqu xmm0, xmmword [r10 + 0x12c]
movdqu xmm1, xmmword [r10 + 0x13c]
movdqu xmm2, xmmword [rax + 0x100]
movdqu xmm3, xmmword [rax + 0x110]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x12c], xmm2
movdqu xmmword [r10 + 0x13c], xmm3
movdqu xmm0, xmmword [r10 + 0x14c]
movdqu xmm1, xmmword [r10 + 0x15c]
movdqu xmm2, xmmword [rax + 0x120]
movdqu xmm3, xmmword [rax + 0x130]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x14c], xmm2
movdqu xmmword [r10 + 0x15c], xmm3
movdqu xmm0, xmmword [r10 + 0x16c]
movdqu xmm1, xmmword [r10 + 0x17c]
movdqu xmm2, xmmword [rax + 0x140]
movdqu xmm3, xmmword [rax + 0x150]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x16c], xmm2
movdqu xmmword [r10 + 0x17c], xmm3
movdqu xmm0, xmmword [r10 + 0x18c]
movdqu xmm1, xmmword [r10 + 0x19c]
movdqu xmm2, xmmword [rax + 0x160]
movdqu xmm3, xmmword [rax + 0x170]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x18c], xmm2
movdqu xmmword [r10 + 0x19c], xmm3
movdqu xmm0, xmmword [r10 + 0x1ac]
movdqu xmm1, xmmword [r10 + 0x1bc]
movdqu xmm2, xmmword [rax + 0x180]
movdqu xmm3, xmmword [rax + 0x190]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1ac], xmm2
movdqu xmmword [r10 + 0x1bc], xmm3
movdqu xmm0, xmmword [r10 + 0x1cc]
movdqu xmm1, xmmword [r10 + 0x1dc]
movdqu xmm2, xmmword [rax + 0x1a0]
movdqu xmm3, xmmword [rax + 0x1b0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1cc], xmm2
movdqu xmmword [r10 + 0x1dc], xmm3
movdqu xmm0, xmmword [r10 + 0x1ec]
movdqu xmm1, xmmword [r10 + 0x1fc]
movdqu xmm2, xmmword [rax + 0x1c0]
movdqu xmm3, xmmword [rax + 0x1d0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x1ec], xmm2
movdqu xmmword [r10 + 0x1fc], xmm3
movdqu xmm0, xmmword [r10 + 0x20c]
movdqu xmm1, xmmword [r10 + 0x21c]
movdqu xmm2, xmmword [rax + 0x1e0]
movdqu xmm3, xmmword [rax + 0x1f0]
psubusw xmm2, xmm0
paddw xmm2, xmm0
psubusw xmm3, xmm1
paddw xmm3, xmm1
movdqu xmmword [r10 + 0x20c], xmm2
movdqu xmmword [r10 + 0x21c], xmm3
cmp byte [0x140291952], 0
jne 0x1400c8697
mov bl, 1
mov byte [rsp + 0x3c], bl
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x48], r12
movabs rbp, 0xffffff0000000000
movabs rsi, 0xefffffffffffffff
movabs r15, 0xbfffff00000fffff
movabs r12, 0x6000000000000000
movabs r14, 0x4000000000000000
movabs r13, 0xfffff0000000000
mov rax, qword [r9 + 8]
xor r8d, r8d
jmp 0x1400c8bd8
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c8c49
mov rdx, rax
and rdx, rsi
test rax, r12
sete bl
test rax, r13
setne cl
lea rdi, [rdx + rbp]
or rdi, r11
test bl, cl
cmove rdi, rdx
jne 0x1400c8bd0
mov rdx, rax
shr rdx, 0x14
and edx, 0xfffff
test rax, r11
cmovne rdx, r8
mov rcx, rdi
and rcx, r15
or rcx, r14
test rdx, rdx
cmove rcx, rdi
lock cmpxchg qword [r9 + 8], rcx
jne 0x1400c8bd8
test rdx, rdx
je 0x1400c8c69
mov rcx, r9
add rcx, 0x14
lock add dword [r9 + 0x14], edx
cmp edx, 1
jne 0x1400c8e8f
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400c8e94
mov rcx, qword [rsp + 0x80]
lock add dword [rcx], 1
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
movabs r11, 0x2000000000000000
mov r10, qword [rsp + 0x30]
mov byte [r10 + 0x290], 0
mov rcx, qword [r10 + 0x280]
mov rax, qword [rcx]
xor r8d, r8d
jmp 0x1400c8c87
lock cmpxchg qword [rcx], rdi
je 0x1400c8cf7
mov rbx, rax
and rbx, rsi
test rax, r12
sete r9b
test rax, r13
setne dl
lea rdi, [rbx + rbp]
or rdi, r11
test r9b, dl
cmove rdi, rbx
jne 0x1400c8c80
mov rbx, rax
shr rbx, 0x14
and ebx, 0xfffff
test rax, r11
cmovne rbx, r8
mov rdx, rdi
and rdx, r15
or rdx, r14
test rbx, rbx
cmove rdx, rdi
lock cmpxchg qword [rcx], rdx
jne 0x1400c8c87
test rbx, rbx
mov rsi, qword [rsp + 0x48]
mov dil, byte [rsp + 0x3c]
jne 0x1400c8e33
test esi, esi
setne al
or dil, al
je 0x1400c8d1e
jmp 0x1400c8d93
lock add dword [rcx + 8], 1
add rcx, 8
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
mov r10, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
mov dil, byte [rsp + 0x3c]
test esi, esi
setne al
or dil, al
jne 0x1400c8d93
cmp byte [0x140291952], 0
je 0x1400c8d93
lea rax, [0x14022d318]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x70], r10
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x50]
xor ecx, ecx
mov rsi, r10
call qword [0x1402918c0]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x418]
mov qword [rsp + 0x60], rax
mov rax, qword [rsi + 0x278]
mov qword [rsp + 0x68], rax
mov rax, qword [0x1402918c8]
mov rcx, qword [rax + 0xa00188]
mov rax, qword [rcx]
lea rdx, [rsp + 0x58]
call qword [rax + 0x48]
mov rcx, rsi
mov r8, rax
call fcn.1400e2530
nop
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rsi
xor edx, edx
call fcn.1400daab0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x290], 0
mov rcx, rbx
call fcn.140110140
mov rcx, qword [rsp + 0x30]
call fcn.1400d9ec0
mov rsi, qword [rsp + 0x30]
jmp 0x1400c7f67
mov rdi, r9
mov rcx, r10
call fcn.1400dc600
mov r10, qword [rsp + 0x30]
mov rax, qword [r10 + 0x10]
lea ecx, [rax + 8]
test ecx, 0xff0
je 0x1400c8f45
movabs r11, 0x2000000000000000
mov r9, rdi
jmp 0x1400c7fb7
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__rec_______0__
mov edx, 0xff8
xor r9d, r9d
call fcn.1400c3570
lock add dword [rcx + 0xc], ebx
add rcx, 0xc
cmp ebx, 1
jne 0x1400c8ea8
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400c8ead
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion______0__
mov edx, 0x100b
mov r9, r12
call fcn.1400c3570
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion_______0__
mov edx, 0x100f
xor r9d, r9d
call fcn.1400c3570
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll
mov r10, qword [rsp + 0x30]
movabs r11, 0x2000000000000000
jmp 0x1400c8c69
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll
mov r10, qword [rsp + 0x30]
test esi, esi
setne al
or dil, al
je 0x1400c8d1e
jmp 0x1400c8d93
test ecx, ecx
js 0x1400c7e78
mov rbx, qword [rsi + 0x10]
lea edi, [rbx + 8]
test edi, 0xff0
je 0x1400c8f4a
mov rsi, qword [rsp + 0x40]
mov rdi, rsi
mov rbp, qword [rsp + 0x30]
sub rdi, qword [rbp + 0x18]
add rdi, 0x4000
mov qword [rbp + 0x18], rsi
cmp rdi, 0x7fff
ja 0x1400c8f7d
shl edi, 5
mov rsi, r13
shl rsi, 0x14
and edi, 0xfffe0
add rdi, rsi
add rdi, 7
mov qword [rbx], rdi
add rbx, 8
mov rsi, qword [rsp + 0x30]
mov qword [rsi + 0x10], rbx
mov r9d, dword [rdx]
mov rdi, rdx
test r9, r9
movabs r10, 0x10000000000
jne 0x1400c8f9a
mov dword [rdi], r8d
jmp 0x1400c7e78
jmp 0x1400c8dfd
mov qword [rsp + 0x20], 3
mov r9d, 1
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r8, r13
call fcn.1400defd0
movabs r10, 0x10000000000
jmp 0x1400c7e78
mov rbp, r13
shl rbp, 0x14
or rbp, 0x60
mov qword [rbx], rbp
mov rbp, qword [rsp + 0x40]
mov qword [rbx + 8], rbp
add rbx, 0x10
jmp 0x1400c8f1f
shr ecx, 8
test r9b, al
jne 0x1400c8fcc
xor ebx, ebx
lea rdi, [rdx + 4]
mov r9d, dword [rdi]
test r9, r9
jne 0x1400c8fee
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400c7e78
jmp 0x1400c8f3d
mov rbx, r9
shr rbx, 8
cmp cl, bl
jne 0x1400c9054
xor ebx, ebx
cmp r9d, 0xc0000000
jb 0x1400c8fa4
cmp al, r9b
jne 0x1400c8fa4
mov dword [rdx], r8d
mov bl, 1
jmp 0x1400c8fa4
test r9b, al
jne 0x1400c9085
lea rdi, [rdx + 8]
mov r9d, dword [rdi]
test r9, r9
je 0x1400c8fb0
test r9b, al
jne 0x1400c90b5
lea rdi, [rdx + 0xc]
mov r9d, dword [rdi]
test r9, r9
je 0x1400c8fb0
test r9b, al
je 0x1400c910d
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c90e5
cmp r9d, 0xc0000000
jb 0x1400c910d
cmp al, r9b
jne 0x1400c910d
mov dword [rdi], r8d
mov rsi, qword [rsp + 0x30]
jmp 0x1400c8f6e
cmp r9d, 0x3fffffff
ja 0x1400c8fa2
mov ebp, r9d
shr ebp, 0x10
movzx ebx, bl
and ebp, 0x3fff
mov rdi, qword [rsp + 0x30]
cmp word [rdi + rbx*2 + 0x2c], bp
jae 0x1400c8fa2
jmp 0x1400c9193
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c9137
cmp r9d, 0xc0000000
jb 0x1400c8ff7
cmp al, r9b
jne 0x1400c8ff7
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400c8ff7
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c9166
cmp r9d, 0xc0000000
jb 0x1400c900c
cmp al, r9b
jne 0x1400c900c
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400c900c
cmp r9d, 0x3fffffff
ja 0x1400c910d
mov eax, r9d
shr eax, 0x10
movzx ecx, sil
and eax, 0x3fff
mov rbp, qword [rsp + 0x30]
cmp word [rbp + rcx*2 + 0x2c], ax
jb 0x1400c9193
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400c7e78
mov rax, qword [rsi + 0x10]
shr rax, 1
and eax, 0xc
mov dword [rdx + rax], r8d
jmp 0x1400c7e78
cmp r9d, 0x3fffffff
ja 0x1400c8ff7
mov ebp, r9d
shr ebp, 0x10
movzx edi, sil
and ebp, 0x3fff
mov rsi, qword [rsp + 0x30]
cmp word [rsi + rdi*2 + 0x2c], bp
jae 0x1400c8ff7
jmp 0x1400c9193
cmp r9d, 0x3fffffff
ja 0x1400c900c
mov ebp, r9d
shr ebp, 0x10
movzx edi, sil
and ebp, 0x3fff
mov rsi, qword [rsp + 0x30]
cmp word [rsi + rdi*2 + 0x2c], bp
jae 0x1400c900c
mov qword [rsp + 0x20], 3
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.1400dddf0
jmp 0x1400c8f6e