Function at 0x1400c2c20
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 0x1400c2c53
mov eax, dword [rsp + 0xf0]
test eax, eax
je 0x1400c3c6f
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 0x1400c2cd8
lea rax, [r13 - 0x1000]
shr rax, 0xc
cmp rax, 0xdfffffe
ja 0x1400c2cd8
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 0x1400c2cd8
or ebx, dword [rdx + 4]
cmp ebx, r8d
je 0x1400c2cd8
mov ebx, 0x40000000
mov edi, dword [rdx + 8]
or edi, ebx
cmp edi, r8d
je 0x1400c2cd8
or ebx, dword [rdx + 0xc]
cmp ebx, r8d
jne 0x1400c3d25
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 0x1400c2d3b
mov rbp, rax
or rbp, r14
and rbp, rdx
lock cmpxchg qword [rbx], rbp
je 0x1400c2da7
add rcx, 1
jmp 0x1400c2d20
cmp rcx, 0x5dc
jbe 0x1400c2d7d
lea rbp, [rax + r10]
and rbp, rdx
lock cmpxchg qword [rbx], rbp
jne 0x1400c2d35
mov rcx, r15
mov rsi, r8
call fcn.1400fb310
mov r8, rsi
movabs r10, 0x10000000000
movabs rdi, 0x2000000000000000
mov rsi, qword [rsp + 0x30]
xor ecx, ecx
jmp 0x1400c2d8f
test rax, rdi
jne 0x1400c2d9b
mov rbp, rax
or rbp, rdi
lock cmpxchg qword [rbx], rbp
jne 0x1400c2d35
mov rax, qword [rbx]
add rcx, 1
mov rdx, r8
jmp 0x1400c2d20
mov rax, qword [rbx]
add rcx, 1
jmp 0x1400c2d20
mov byte [rsi + 0x290], 1
cmp qword [rbx + 0x18], rsi
jne 0x1400c3c08
mov eax, dword [rsi]
not eax
test eax, 0x3fff0000
je 0x1400c3c08
mov rcx, qword [0x140250808]
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.1400e9520
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 0x1400c3c3a
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 0x1400c2ea0
mov rdi, rax
or rdi, r14
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c2f35
add rcx, 1
jmp 0x1400c2e80
cmp rcx, 0x5dc
jbe 0x1400c2f05
lea rdi, [rax + rbx]
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c2eee
jmp 0x1400c2e9a
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 0x1400c2eba
lea ecx, [rax - 1]
lock cmpxchg dword [r13], ecx
jne 0x1400c2ef2
xor ecx, ecx
jmp 0x1400c2f18
test rax, r11
jne 0x1400c2f28
mov rdi, rax
or rdi, r11
lock cmpxchg qword [r9 + 8], rdi
jne 0x1400c2e9a
mov rax, qword [r9 + 8]
add rcx, 1
mov rdx, rsi
jmp 0x1400c2e80
mov rax, qword [r9 + 8]
add rcx, 1
jmp 0x1400c2e80
movsxd r12, dword [r9 + 0x24]
mov r14d, dword [rsp + 0x48]
mov eax, r14d
and eax, 0x107
je 0x1400c2f54
mov ecx, dword [r9 + 0x28]
test ecx, 0x107
je 0x1400c2fc4
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
je 0x1400c2fd3
cmp eax, dword [r10 + 0x24c]
jne 0x1400c2f7f
test r12d, r12d
je 0x1400c3ccb
mov eax, dword [rsp + 0x3c]
add eax, r12d
mov dword [r9 + 0x24], eax
jmp 0x1400c39cc
mov rax, qword [0x140250808]
cmp byte [rax + 0xa00196], 0
je 0x1400c2fa1
test dword [r9 + 0x28], 0x40000000
jne 0x1400c2fa1
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 0x1400c39ce
cmp dword [r10 + 4], 0
jne 0x1400c34ea
jmp 0x1400c3001
or ecx, eax
mov dword [r9 + 0x28], ecx
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
jne 0x1400c2f5d
test r12d, r12d
jne 0x1400c3ca7
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 0x1400c34ea
mov rax, qword [r9 + 0x50]
test rax, rax
je 0x1400c306a
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400c307c
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400c307c
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 0x1400c3030
mov rax, qword [r9 + 0x48]
test rax, rax
jne 0x1400c3488
jmp 0x1400c34ea
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 0x1400c34ea
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400c35bc
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400c35bc
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 0x1400c34b0
cmp byte [0x140250892], 0
je 0x1400c39cc
mov rbp, r9
mov esi, r14d
and esi, 0x10
lea rax, [0x1401ee6e8]
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 [0x140250800]
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 0x1400c3570
test esi, esi
jne 0x1400c3570
mov rax, qword [0x140250808]
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 [0x140250808]
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 0x1400c39ce
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 [0x140250892], 0
jne 0x1400c34f7
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 0x1400c3a38
lock cmpxchg qword [r9 + 8], rdi
je 0x1400c3aa9
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 0x1400c3a30
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 0x1400c3a38
test rdx, rdx
je 0x1400c3ac9
mov rcx, r9
add rcx, 0x14
lock add dword [r9 + 0x14], edx
cmp edx, 1
jne 0x1400c3cef
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400c3cf4
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 0x1400c3ae7
lock cmpxchg qword [rcx], rdi
je 0x1400c3b57
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 0x1400c3ae0
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 0x1400c3ae7
test rbx, rbx
mov rsi, qword [rsp + 0x48]
mov dil, byte [rsp + 0x3c]
jne 0x1400c3c93
test esi, esi
setne al
or dil, al
je 0x1400c3b7e
jmp 0x1400c3bf3
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 0x1400c3bf3
cmp byte [0x140250892], 0
je 0x1400c3bf3
lea rax, [0x1401ee6e8]
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 [0x140250800]
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 [0x140250808]
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.1400dd390
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.1400d5910
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x290], 0
mov rcx, rbx
call fcn.140113b90
mov rcx, qword [rsp + 0x30]
call fcn.1400d4d20
mov rsi, qword [rsp + 0x30]
jmp 0x1400c2dc7
mov rdi, r9
mov rcx, r10
call fcn.1400d7460
mov r10, qword [rsp + 0x30]
mov rax, qword [r10 + 0x10]
lea ecx, [rax + 8]
test ecx, 0xff0
je 0x1400c3da5
movabs r11, 0x2000000000000000
mov r9, rdi
jmp 0x1400c2e17
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__rec_______0__
mov edx, 0xff8
xor r9d, r9d
call fcn.1400be3d0
lock add dword [rcx + 0xc], ebx
add rcx, 0xc
cmp ebx, 1
jne 0x1400c3d08
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400c3d0d
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion______0__
mov edx, 0x100b
mov r9, r12
call fcn.1400be3d0
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion_______0__
mov edx, 0x100f
xor r9d, r9d
call fcn.1400be3d0
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll
mov r10, qword [rsp + 0x30]
movabs r11, 0x2000000000000000
jmp 0x1400c3ac9
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 0x1400c3b7e
jmp 0x1400c3bf3
test ecx, ecx
js 0x1400c2cd8
mov rbx, qword [rsi + 0x10]
lea edi, [rbx + 8]
test edi, 0xff0
je 0x1400c3daa
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 0x1400c3ddd
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 0x1400c3dfa
mov dword [rdi], r8d
jmp 0x1400c2cd8
jmp 0x1400c3c5d
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.1400d9e30
movabs r10, 0x10000000000
jmp 0x1400c2cd8
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 0x1400c3d7f
shr ecx, 8
test r9b, al
jne 0x1400c3e2c
xor ebx, ebx
lea rdi, [rdx + 4]
mov r9d, dword [rdi]
test r9, r9
jne 0x1400c3e4e
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400c2cd8
jmp 0x1400c3d9d
mov rbx, r9
shr rbx, 8
cmp cl, bl
jne 0x1400c3eb4
xor ebx, ebx
cmp r9d, 0xc0000000
jb 0x1400c3e04
cmp al, r9b
jne 0x1400c3e04
mov dword [rdx], r8d
mov bl, 1
jmp 0x1400c3e04
test r9b, al
jne 0x1400c3ee5
lea rdi, [rdx + 8]
mov r9d, dword [rdi]
test r9, r9
je 0x1400c3e10
test r9b, al
jne 0x1400c3f15
lea rdi, [rdx + 0xc]
mov r9d, dword [rdi]
test r9, r9
je 0x1400c3e10
test r9b, al
je 0x1400c3f6d
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c3f45
cmp r9d, 0xc0000000
jb 0x1400c3f6d
cmp al, r9b
jne 0x1400c3f6d
mov dword [rdi], r8d
mov rsi, qword [rsp + 0x30]
jmp 0x1400c3dce
cmp r9d, 0x3fffffff
ja 0x1400c3e02
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 0x1400c3e02
jmp 0x1400c3ff3
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c3f97
cmp r9d, 0xc0000000
jb 0x1400c3e57
cmp al, r9b
jne 0x1400c3e57
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400c3e57
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400c3fc6
cmp r9d, 0xc0000000
jb 0x1400c3e6c
cmp al, r9b
jne 0x1400c3e6c
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400c3e6c
cmp r9d, 0x3fffffff
ja 0x1400c3f6d
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 0x1400c3ff3
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400c2cd8
mov rax, qword [rsi + 0x10]
shr rax, 1
and eax, 0xc
mov dword [rdx + rax], r8d
jmp 0x1400c2cd8
cmp r9d, 0x3fffffff
ja 0x1400c3e57
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 0x1400c3e57
jmp 0x1400c3ff3
cmp r9d, 0x3fffffff
ja 0x1400c3e6c
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 0x1400c3e6c
mov qword [rsp + 0x20], 3
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.1400d8c50
jmp 0x1400c3dce