Function at 0x1400d7380
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 0x1400d73b3
mov eax, dword [rsp + 0xf0]
test eax, eax
je 0x1400d83cf
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 0x1400d7438
lea rax, [r13 - 0x1000]
shr rax, 0xc
cmp rax, 0xdfffffe
ja 0x1400d7438
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 0x1400d7438
or ebx, dword [rdx + 4]
cmp ebx, r8d
je 0x1400d7438
mov ebx, 0x40000000
mov edi, dword [rdx + 8]
or edi, ebx
cmp edi, r8d
je 0x1400d7438
or ebx, dword [rdx + 0xc]
cmp ebx, r8d
jne 0x1400d8485
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 0x1400d749b
mov rbp, rax
or rbp, r14
and rbp, rdx
lock cmpxchg qword [rbx], rbp
je 0x1400d7507
add rcx, 1
jmp 0x1400d7480
cmp rcx, 0x5dc
jbe 0x1400d74dd
lea rbp, [rax + r10]
and rbp, rdx
lock cmpxchg qword [rbx], rbp
jne 0x1400d7495
mov rcx, r15
mov rsi, r8
call fcn.140113cc0
mov r8, rsi
movabs r10, 0x10000000000
movabs rdi, 0x2000000000000000
mov rsi, qword [rsp + 0x30]
xor ecx, ecx
jmp 0x1400d74ef
test rax, rdi
jne 0x1400d74fb
mov rbp, rax
or rbp, rdi
lock cmpxchg qword [rbx], rbp
jne 0x1400d7495
mov rax, qword [rbx]
add rcx, 1
mov rdx, r8
jmp 0x1400d7480
mov rax, qword [rbx]
add rcx, 1
jmp 0x1400d7480
mov byte [rsi + 0x290], 1
cmp qword [rbx + 0x18], rsi
jne 0x1400d8368
mov eax, dword [rsi]
not eax
test eax, 0x3fff0000
je 0x1400d8368
mov rcx, qword [0x14031b2c8]
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.140101460
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 0x1400d839a
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 0x1400d7600
mov rdi, rax
or rdi, r14
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400d7695
add rcx, 1
jmp 0x1400d75e0
cmp rcx, 0x5dc
jbe 0x1400d7665
lea rdi, [rax + rbx]
and rdi, rdx
lock cmpxchg qword [r9 + 8], rdi
je 0x1400d764e
jmp 0x1400d75fa
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 0x1400d761a
lea ecx, [rax - 1]
lock cmpxchg dword [r13], ecx
jne 0x1400d7652
xor ecx, ecx
jmp 0x1400d7678
test rax, r11
jne 0x1400d7688
mov rdi, rax
or rdi, r11
lock cmpxchg qword [r9 + 8], rdi
jne 0x1400d75fa
mov rax, qword [r9 + 8]
add rcx, 1
mov rdx, rsi
jmp 0x1400d75e0
mov rax, qword [r9 + 8]
add rcx, 1
jmp 0x1400d75e0
movsxd r12, dword [r9 + 0x24]
mov r14d, dword [rsp + 0x48]
mov eax, r14d
and eax, 0x107
je 0x1400d76b4
mov ecx, dword [r9 + 0x28]
test ecx, 0x107
je 0x1400d7724
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
je 0x1400d7733
cmp eax, dword [r10 + 0x24c]
jne 0x1400d76df
test r12d, r12d
je 0x1400d842b
mov eax, dword [rsp + 0x3c]
add eax, r12d
mov dword [r9 + 0x24], eax
jmp 0x1400d812c
mov rax, qword [0x14031b2c8]
cmp byte [rax + 0xa00196], 0
je 0x1400d7701
test dword [r9 + 0x28], 0x40000000
jne 0x1400d7701
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 0x1400d812e
cmp dword [r10 + 4], 0
jne 0x1400d7c4a
jmp 0x1400d7761
or ecx, eax
mov dword [r9 + 0x28], ecx
mov eax, dword [r9 + 0x1c]
cmp eax, 0xffffffff
jne 0x1400d76bd
test r12d, r12d
jne 0x1400d8407
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 0x1400d7c4a
mov rax, qword [r9 + 0x50]
test rax, rax
je 0x1400d77ca
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400d77dc
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400d77dc
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 0x1400d7790
mov rax, qword [r9 + 0x48]
test rax, rax
jne 0x1400d7be8
jmp 0x1400d7c4a
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 0x1400d7c4a
lea rcx, [r10 + 0x2c]
lea rdx, [rax + 0x200]
cmp rcx, rdx
jae 0x1400d7d1c
lea rcx, [r10 + 0x22c]
cmp rax, rcx
jae 0x1400d7d1c
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 0x1400d7c10
cmp byte [0x14031b352], 0
je 0x1400d812c
mov rbp, r9
mov esi, r14d
and esi, 0x10
lea rax, [0x1402c5c08]
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 [0x14031b2c0]
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 0x1400d7cd0
test esi, esi
jne 0x1400d7cd0
mov rax, qword [0x14031b2c8]
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 [0x14031b2c8]
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 0x1400d812e
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 [0x14031b352], 0
jne 0x1400d7c57
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 0x1400d8198
lock cmpxchg qword [r9 + 8], rdi
je 0x1400d8209
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 0x1400d8190
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 0x1400d8198
test rdx, rdx
je 0x1400d8229
mov rcx, r9
add rcx, 0x14
lock add dword [r9 + 0x14], edx
cmp edx, 1
jne 0x1400d844f
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400d8454
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 0x1400d8247
lock cmpxchg qword [rcx], rdi
je 0x1400d82b7
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 0x1400d8240
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 0x1400d8247
test rbx, rbx
mov rsi, qword [rsp + 0x48]
mov dil, byte [rsp + 0x3c]
jne 0x1400d83f3
test esi, esi
setne al
or dil, al
je 0x1400d82de
jmp 0x1400d8353
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 0x1400d8353
cmp byte [0x14031b352], 0
je 0x1400d8353
lea rax, [0x1402c5c08]
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 [0x14031b2c0]
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 [0x14031b2c8]
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.1400f5020
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.1400ed5f0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x290], 0
mov rcx, rbx
call fcn.14012baf0
mov rcx, qword [rsp + 0x30]
call fcn.1400eca00
mov rsi, qword [rsp + 0x30]
jmp 0x1400d7527
mov rdi, r9
mov rcx, r10
call fcn.1400ef0f0
mov r10, qword [rsp + 0x30]
mov rax, qword [r10 + 0x10]
lea ecx, [rax + 8]
test ecx, 0xff0
je 0x1400d8505
movabs r11, 0x2000000000000000
mov r9, rdi
jmp 0x1400d7577
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__rec_______0__
mov edx, 0x1011
xor r9d, r9d
call fcn.1400d2b30
lock add dword [rcx + 0xc], ebx
add rcx, 0xc
cmp ebx, 1
jne 0x1400d8468
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400d846d
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion______0__
mov edx, 0x1024
mov r9, r12
call fcn.1400d2b30
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__s__recursion_______0__
mov edx, 0x1028
xor r9d, r9d
call fcn.1400d2b30
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll
mov r10, qword [rsp + 0x30]
movabs r11, 0x2000000000000000
jmp 0x1400d8229
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 0x1400d82de
jmp 0x1400d8353
test ecx, ecx
js 0x1400d7438
mov rbx, qword [rsi + 0x10]
lea edi, [rbx + 8]
test edi, 0xff0
je 0x1400d850a
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 0x1400d853d
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 0x1400d855a
mov dword [rdi], r8d
jmp 0x1400d7438
jmp 0x1400d83bd
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.1400f1ac0
movabs r10, 0x10000000000
jmp 0x1400d7438
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 0x1400d84df
shr ecx, 8
test r9b, al
jne 0x1400d858c
xor ebx, ebx
lea rdi, [rdx + 4]
mov r9d, dword [rdi]
test r9, r9
jne 0x1400d85ae
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400d7438
jmp 0x1400d84fd
mov rbx, r9
shr rbx, 8
cmp cl, bl
jne 0x1400d8614
xor ebx, ebx
cmp r9d, 0xc0000000
jb 0x1400d8564
cmp al, r9b
jne 0x1400d8564
mov dword [rdx], r8d
mov bl, 1
jmp 0x1400d8564
test r9b, al
jne 0x1400d8645
lea rdi, [rdx + 8]
mov r9d, dword [rdi]
test r9, r9
je 0x1400d8570
test r9b, al
jne 0x1400d8675
lea rdi, [rdx + 0xc]
mov r9d, dword [rdi]
test r9, r9
je 0x1400d8570
test r9b, al
je 0x1400d86cd
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400d86a5
cmp r9d, 0xc0000000
jb 0x1400d86cd
cmp al, r9b
jne 0x1400d86cd
mov dword [rdi], r8d
mov rsi, qword [rsp + 0x30]
jmp 0x1400d852e
cmp r9d, 0x3fffffff
ja 0x1400d8562
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 0x1400d8562
jmp 0x1400d8753
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400d86f7
cmp r9d, 0xc0000000
jb 0x1400d85b7
cmp al, r9b
jne 0x1400d85b7
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400d85b7
mov rsi, r9
shr rsi, 8
cmp cl, sil
jne 0x1400d8726
cmp r9d, 0xc0000000
jb 0x1400d85cc
cmp al, r9b
jne 0x1400d85cc
mov dword [rdi], r8d
mov bl, 1
jmp 0x1400d85cc
cmp r9d, 0x3fffffff
ja 0x1400d86cd
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 0x1400d8753
test bl, bl
mov rsi, qword [rsp + 0x30]
movabs r10, 0x10000000000
jne 0x1400d7438
mov rax, qword [rsi + 0x10]
shr rax, 1
and eax, 0xc
mov dword [rdx + rax], r8d
jmp 0x1400d7438
cmp r9d, 0x3fffffff
ja 0x1400d85b7
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 0x1400d85b7
jmp 0x1400d8753
cmp r9d, 0x3fffffff
ja 0x1400d85cc
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 0x1400d85cc
mov qword [rsp + 0x20], 3
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.1400f08e0
jmp 0x1400d852e