Function at 0x18003ec30
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
sub rsp, 0xc8
cmp byte [rcx + 0x44], 0
mov r8, rcx
je 0x1800431b2
movdqa xmm3, xmmword [0x180164c10]
xor r11d, r11d
cmp dword [0x180182290], 5
mov r9d, r11d
movdqa xmm4, xmmword [0x180164b70]
mov qword [rax - 8], rbx
mov rbx, 0xfffffffffffffffe
mov qword [rax - 0x10], rbp
mov qword [rax - 0x18], rsi
mov qword [rax - 0x20], rdi
mov edi, 2
mov qword [rax - 0x28], r12
mov qword [rax - 0x30], r13
mov qword [rax - 0x38], r14
mov qword [rax - 0x40], r15
movaps xmmword [rax - 0x58], xmm6
movdqa xmm6, xmmword [0x180164bb0]
movaps xmmword [rax - 0x68], xmm7
jl 0x18003edac
movdqa xmm2, xmmword [0x1801682b0]
mov rdx, rbx
sub rdx, r8
add rcx, 4
mov r10d, edi
sub r10, r8
nop
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, 8
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rdx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [r10 + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, 8
cmp r9, 0x40
jb 0x18003ecc0
cmp r9, 0x44
jae 0x18003eddd
movabs r10, 0x7e7efffe7efe7f7e
nop word [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, 3
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x18003edc0
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r11, rbx
mov qword [rsp + 0xd0], rax
mov r14d, 3
sub r14, r8
mov eax, 1
sub rax, r8
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xd8], rax
mov esi, 4
mov r14, qword [rsp + 0xd8]
sub rsi, r8
mov rax, rdi
mov qword [rsp + 0x30], rsi
mov rdi, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp + 0xe0], rax
mov r15d, 5
mov rsi, qword [rsp + 0xe0]
sub r15, r8
mov qword [rsp + 0x38], r15
mov eax, 9
mov r15, qword [rsp + 0xe8]
sub rax, r8
mov qword [rsp], rax
mov r12d, 6
sub r12, r8
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x40], r12
mov r12, qword [rsp + 0x30]
mov ebp, 7
mov qword [rsp + 8], rax
sub rbp, r8
mov qword [rsp + 0x48], rbp
mov eax, 0xb
mov rbp, qword [rsp + 0x38]
sub rax, r8
mov rbx, qword [rsp + 0x48]
mov r13d, 8
mov qword [rsp + 0x10], rax
sub r13, r8
mov eax, 0xc
mov qword [rsp + 0x50], r13
mov r13, qword [rsp + 0x40]
sub rax, r8
mov qword [rsp + 0x18], rax
movabs rcx, 0xdf7f5fffff5f5fff
mov eax, 0xd
sub rax, r8
mov qword [rsp + 0x20], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x28], rax
sub r11, r8
nop dword [rax]
nop word [rax + rax]
lea r9, [r11 + r10]
movabs rax, 0xcccccccccccccccd
mul r9
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx eax, r9b
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xcccccccccccccccd
shr rdx, cl
lea rcx, [rdi + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r14 + r10]
xor byte [r10], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [rsi + r10]
xor byte [r10 + 1], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10 + 2], al
movabs rax, 0xcccccccccccccccd
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
shl al, 2
add cl, al
add cl, r9b
shl cl, 3
movabs rax, 0xdf7f5fffff5f5fff
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 3], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 6
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 4], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 5], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 6], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xa]
shl al, 3
add cl, al
movabs rax, 0xdf7f5fffff5f5fff
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx ecx, r9b
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 0xc
shl cl, 3
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x10]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x18]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x20]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xf]
shl al, 3
add cl, al
movabs rax, 0xdf7f5fffff5f5fff
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x28]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xdf7f5fffff5f5fff
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r11 + r10]
movabs rcx, 0xdf7f5fffff5f5fff
cmp rax, 0x44
jb 0x18003ef00
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r14d, 3
mov qword [rsp + 0xd0], rax
sub r14, r8
mov qword [rsp + 0xe8], r14
mov eax, 1
sub rax, r8
mov esi, 4
mov qword [rsp + 0xd8], rax
sub rsi, r8
mov qword [rsp + 0x28], rsi
mov eax, 9
mov rsi, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp], rax
mov r15d, 5
sub r15, r8
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0xd8]
mov r12d, 6
mov rbx, qword [rsp + 0x20]
sub r12, r8
mov qword [rsp + 0x50], rax
mov edi, 2
sub rdi, r8
mov qword [rsp + 0x18], r12
mov eax, 0xb
mov ebp, 7
sub rax, r8
sub rbp, r8
mov qword [rsp + 0x48], rax
mov r13d, 8
sub r13, r8
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0xe8]
mov eax, 0xc
sub rax, r8
mov qword [rsp + 8], r13
mov r13, qword [rsp + 0x28]
mov r14, 0xfffffffffffffffe
mov qword [rsp + 0x40], rax
mov r12, rdi
mov rdi, qword [rsp + 0x18]
mov eax, 0xd
sub rax, r8
movabs rcx, 0xbe9c5dfc3d9dfdbe
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r14, r8
nop
lea r9, [r14 + r10]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movzx eax, r9b
add dl, dl
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xaaaaaaaaaaaaaaab
shr rdx, cl
lea rcx, [rsi + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 1], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 2], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
movzx ecx, r9b
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 5
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
add al, al
add cl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add cl, cl
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 4], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [rdi + r10]
xor byte [r10 + 5], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
xor byte [r10 + 6], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x10]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
add dl, dl
sub cl, dl
movabs rax, 0xbe9c5dfc3d9dfdbe
add cl, 0xa
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd0
lea eax, [r9 + 0xc]
shl al, 3
add cl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub cl, dl
add cl, 0xf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xbe9c5dfc3d9dfdbe
add dl, dl
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
movabs rcx, 0xbe9c5dfc3d9dfdbe
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r14 + r10]
cmp rax, 0x44
jb 0x18003f410
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r14d, 3
mov qword [rsp + 0xd0], rax
sub r14, r8
mov eax, 1
mov qword [rsp + 0xe8], r14
mov r14, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp + 0xd8], rax
mov r15d, 5
sub r15, r8
mov eax, 9
sub rax, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0xd8]
mov r12d, 6
mov qword [rsp], rax
sub r12, r8
mov qword [rsp + 0x18], r12
mov eax, 0xa
sub rax, r8
mov ebp, 7
mov qword [rsp + 0x50], rax
sub rbp, r8
mov qword [rsp + 0x10], rbp
mov eax, 0xb
mov rbp, qword [rsp + 0xe8]
sub rax, r8
mov rbx, qword [rsp + 0x10]
mov r13d, 8
mov qword [rsp + 0x48], rax
sub r13, r8
mov eax, 0xc
mov qword [rsp + 8], r13
sub rax, r8
mov edi, 2
mov qword [rsp + 0x40], rax
sub rdi, r8
mov eax, 0xd
mov esi, 4
sub rax, r8
sub rsi, r8
mov qword [rsp + 0x38], rax
mov r11, 0xfffffffffffffffe
mov eax, 0xe
mov r12, rdi
mov rdi, qword [rsp + 0x18]
sub rax, r8
mov r13, rsi
mov qword [rsp + 0x30], rax
mov rsi, qword [rsp + 0x20]
sub r11, r8
nop dword [rax]
lea r9, [r11 + r10]
movabs rax, 0x2492492492492493
mul r9
mov rax, r9
sub rax, rdx
shr rax, 1
add rax, rdx
movabs rdx, 0xbbaaabeaefafeaaf
shr rax, 2
movzx eax, al
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
shl al, 3
movzx ecx, al
movabs rax, 0x2492492492492493
shr rdx, cl
lea rcx, [r14 + r10]
xor byte [r10 - 2], dl
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 1]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 2]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 3]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 1], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 4]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 2], al
lea rcx, [r10 + rbp]
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 5]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 6]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
lea rcx, [rsi + r10]
xor byte [r10 + 4], al
movabs rax, 0x2492492492492493
mul rcx
mov eax, 1
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
sub al, cl
movzx eax, al
imul ecx, eax, 7
movabs rax, 0xbbaaabeaefafeaaf
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [rdi + r10]
xor byte [r10 + 5], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 8]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 6], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 9]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
mov rcx, qword [rsp + 8]
movabs rax, 0x2492492492492493
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xa]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xb]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xc]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xd]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 0xc8
lea eax, [r9 + 0xe]
shl al, 3
add cl, al
movabs rax, 0xbbaaabeaefafeaaf
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xf]
movabs rax, 0xbbaaabeaefafeaaf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movabs rax, 0xbbaaabeaefafeaaf
sub r9b, cl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r11 + r10]
cmp rax, 0x44
jb 0x18003f930
movdqa xmm5, xmmword [0x180164be0]
xor r11d, r11d
cmp dword [0x180182290], 5
mov r9d, r11d
mov rbx, 0xfffffffffffffffe
mov edi, 2
mov esi, 4
mov ebp, 7
mov r14d, 3
mov r15d, 5
mov r12d, 6
mov r13d, 8
jl 0x18003ff0a
movdqa xmm2, xmmword [0x18016cdc0]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10d, edi
sub rdx, r8
sub r10, r8
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rcx + rdx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [rcx + r10]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x18003fe20
cmp r9, 0x44
jae 0x18003ff3d
movabs r10, 0xfbdbffbf9dffffdb
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, bpl
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x18003ff20
movdqu xmm0, xmmword [r8]
lea rax, [r8 + 0x40]
mov rcx, rsi
movdqa xmm2, xmmword [0x18016b790]
xorps xmm0, xmm2
movdqa xmm1, xmm2
movdqu xmmword [r8], xmm0
movdqu xmm0, xmmword [r8 + 0x10]
xorps xmm1, xmm0
movdqu xmmword [r8 + 0x10], xmm1
movdqu xmm0, xmmword [r8 + 0x20]
movdqa xmm1, xmm2
xorps xmm1, xmm0
movdqu xmmword [r8 + 0x20], xmm1
movdqu xmm0, xmmword [r8 + 0x30]
xorps xmm2, xmm0
movdqu xmmword [r8 + 0x30], xmm2
nop
xor byte [rax], 0xdc
lea rax, [rax + 1]
sub rcx, 1
jne 0x18003ff90
cmp dword [0x180182290], r15d
mov r9, r11
movdqa xmm7, xmmword [0x180164b80]
jl 0x1800400ba
movdqa xmm2, xmmword [0x18016dc20]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10, rdi
sub rdx, r8
sub r10, r8
nop dword [rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rdx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [r10 + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x18003ffd0
cmp r9, 0x44
jae 0x1800400ed
movabs r10, 0xfff7f77fffffffff
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, 1
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x1800400d0
sub r14, r8
lea r10, [r8 + 2]
sub r15, r8
mov qword [rsp + 0xe8], r14
sub r12, r8
mov qword [rsp + 0x20], r15
mov r11, qword [rsp + 0x20]
sub rbp, r8
sub r13, r8
mov qword [rsp + 0x18], r12
mov rax, r8
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0xe8]
not rax
mov qword [rsp + 0xd0], rax
mov r14, rbx
mov rbx, qword [rsp + 0x10]
mov eax, 1
sub rax, r8
mov qword [rsp + 8], r13
mov qword [rsp + 0xd8], rax
movabs rcx, 0xe7ef6ee776e677f7
mov r15, qword [rsp + 0xd8]
mov rax, rdi
mov rdi, qword [rsp + 0x18]
sub rax, r8
mov qword [rsp + 0xe0], rax
mov rax, rsi
mov rsi, qword [rsp + 0xd0]
sub rax, r8
mov r12, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov eax, 9
mov r13, qword [rsp + 0x28]
sub rax, r8
mov qword [rsp], rax
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x50], rax
mov eax, 0xb
sub rax, r8
mov qword [rsp + 0x48], rax
mov eax, 0xc
sub rax, r8
mov qword [rsp + 0x40], rax
mov eax, 0xd
sub rax, r8
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r14, r8
nop dword [rax]
nop dword [rax + rax]
lea r9, [r14 + r10]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movzx eax, r9b
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xaaaaaaaaaaaaaaab
shr rdx, cl
lea rcx, [rsi + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r10 + r15]
xor byte [r10], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov ecx, 1
shr rdx, 1
sub cl, dl
movzx eax, cl
add al, al
add cl, al
movabs rax, 0xe7ef6ee776e677f7
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 1], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 2], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
sub cl, dl
add cl, 5
shl cl, 3
movabs rax, 0xe7ef6ee776e677f7
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 6]
shl al, 3
add cl, al
movabs rax, 0xe7ef6ee776e677f7
shr rax, cl
lea rcx, [r10 + r11]
xor byte [r10 + 4], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [r10 + rdi]
xor byte [r10 + 5], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbx]
xor byte [r10 + 6], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 9]
shl al, 3
add cl, al
movabs rax, 0xe7ef6ee776e677f7
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 0xa
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
sub cl, dl
add cl, 0xb
movabs rax, 0xe7ef6ee776e677f7
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 0xc]
shl al, 3
add cl, al
movabs rax, 0xe7ef6ee776e677f7
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 0xf]
shl al, 3
add cl, al
movabs rax, 0xe7ef6ee776e677f7
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xe7ef6ee776e677f7
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
movabs rcx, 0xe7ef6ee776e677f7
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r14 + r10]
cmp rax, 0x44
jb 0x1800401f0
xor r11d, r11d
mov rbx, 0xfffffffffffffffe
cmp dword [0x180182290], 5
mov r9d, r11d
mov edi, 2
mov esi, 4
mov ebp, 7
mov r14d, 3
mov r15d, 5
mov r12d, 6
mov r13d, 8
jl 0x18004071a
movdqa xmm2, xmmword [0x1801667d0]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10d, edi
sub rdx, r8
sub r10, r8
nop dword [rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rdx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [r10 + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x180040630
cmp r9, 0x44
jae 0x18004074d
movabs r10, 0x57ddd7dffff77f75
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, r14b
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x180040730
sub r14, r8
lea r10, [r8 + 2]
sub rsi, r8
mov qword [rsp + 0xe8], r14
sub r15, r8
mov qword [rsp + 0x28], rsi
sub r12, r8
mov qword [rsp + 0x20], r15
sub rbp, r8
mov qword [rsp + 0x18], r12
mov r12, qword [rsp + 0xe8]
sub r13, r8
mov rax, r8
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0x28]
not rax
mov qword [rsp + 0xd0], rax
mov r11, rbx
mov r14, qword [rsp + 0xd0]
mov eax, 1
mov rbx, qword [rsp + 0x18]
sub rax, r8
mov qword [rsp + 0xd8], rax
movabs rcx, 0xcc4c77d5c5c5c445
mov rsi, qword [rsp + 0xd8]
mov rax, rdi
mov rdi, qword [rsp + 0x10]
sub rax, r8
mov qword [rsp + 0xe0], rax
mov eax, 9
mov r15, qword [rsp + 0xe0]
sub rax, r8
mov qword [rsp], rax
mov eax, 0xa
sub rax, r8
mov qword [rsp + 8], r13
mov r13, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
mov eax, 0xb
sub rax, r8
mov qword [rsp + 0x48], rax
mov eax, 0xc
sub rax, r8
mov qword [rsp + 0x40], rax
mov eax, 0xd
sub rax, r8
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r11, r8
lea r9, [r10 + r11]
movabs rax, 0xcccccccccccccccd
mul r9
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx eax, r9b
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xcccccccccccccccd
shr rdx, cl
lea rcx, [r14 + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r10 + rsi]
xor byte [r10], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [r10 + r15]
xor byte [r10 + 1], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + r12]
xor byte [r10 + 2], al
movabs rax, 0xcccccccccccccccd
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
shl al, 2
add cl, al
add cl, r9b
shl cl, 3
movabs rax, 0xcc4c77d5c5c5c445
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 3], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 6
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 4], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbx]
xor byte [r10 + 5], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
lea rcx, [r10 + rdi]
xor byte [r10 + 6], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xa]
shl al, 3
add cl, al
movabs rax, 0xcc4c77d5c5c5c445
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx ecx, r9b
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 0xc
shl cl, 3
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xf]
shl al, 3
add cl, al
movabs rax, 0xcc4c77d5c5c5c445
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xcc4c77d5c5c5c445
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r10 + r11]
movabs rcx, 0xcc4c77d5c5c5c445
cmp rax, 0x44
jb 0x180040841
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r14d, 3
mov qword [rsp + 0xd0], rax
sub r14, r8
mov qword [rsp + 0xe8], r14
mov eax, 1
sub rax, r8
mov esi, 4
mov qword [rsp + 0xd8], rax
sub rsi, r8
mov qword [rsp + 0x28], rsi
mov eax, 9
mov rsi, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp], rax
mov r15d, 5
sub r15, r8
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0xd8]
mov r12d, 6
mov rbx, qword [rsp + 0x20]
sub r12, r8
mov qword [rsp + 0x50], rax
mov edi, 2
sub rdi, r8
mov qword [rsp + 0x18], r12
mov eax, 0xb
mov ebp, 7
sub rax, r8
sub rbp, r8
mov qword [rsp + 0x48], rax
mov r13d, 8
sub r13, r8
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0xe8]
mov eax, 0xc
sub rax, r8
mov qword [rsp + 8], r13
mov r13, qword [rsp + 0x28]
mov r14, 0xfffffffffffffffe
mov qword [rsp + 0x40], rax
mov r12, rdi
mov rdi, qword [rsp + 0x18]
mov eax, 0xd
sub rax, r8
movabs rcx, 0xb337ff33777b3b73
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r14, r8
lea r9, [r10 + r14]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movzx eax, r9b
add dl, dl
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xaaaaaaaaaaaaaaab
shr rdx, cl
lea rcx, [r10 + rsi]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r10 + r15]
xor byte [r10], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [r10 + r12]
xor byte [r10 + 1], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 2], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
movzx ecx, r9b
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 5
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
add al, al
add cl, al
movabs rax, 0xb337ff33777b3b73
add cl, cl
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbx]
xor byte [r10 + 4], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [r10 + rdi]
xor byte [r10 + 5], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
xor byte [r10 + 6], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x10]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
add dl, dl
sub cl, dl
movabs rax, 0xb337ff33777b3b73
add cl, 0xa
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd0
lea eax, [r9 + 0xc]
shl al, 3
add cl, al
movabs rax, 0xb337ff33777b3b73
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub cl, dl
add cl, 0xf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xb337ff33777b3b73
add dl, dl
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
movabs rcx, 0xb337ff33777b3b73
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r10 + r14]
cmp rax, 0x44
jb 0x180040d50
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r14d, 3
mov qword [rsp + 0xd0], rax
sub r14, r8
mov eax, 1
mov qword [rsp + 0xe8], r14
mov r14, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp + 0xd8], rax
mov r15d, 5
sub r15, r8
mov eax, 9
sub rax, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0xd8]
mov r12d, 6
mov qword [rsp], rax
sub r12, r8
mov qword [rsp + 0x18], r12
mov eax, 0xa
sub rax, r8
mov ebp, 7
mov qword [rsp + 0x50], rax
sub rbp, r8
mov qword [rsp + 0x10], rbp
mov eax, 0xb
mov rbp, qword [rsp + 0xe8]
sub rax, r8
mov rbx, qword [rsp + 0x10]
mov r13d, 8
mov qword [rsp + 0x48], rax
sub r13, r8
mov eax, 0xc
mov qword [rsp + 8], r13
sub rax, r8
mov edi, 2
mov qword [rsp + 0x40], rax
sub rdi, r8
mov eax, 0xd
mov esi, 4
sub rax, r8
sub rsi, r8
mov qword [rsp + 0x38], rax
mov r11, 0xfffffffffffffffe
mov eax, 0xe
mov r12, rdi
mov rdi, qword [rsp + 0x18]
sub rax, r8
mov r13, rsi
mov qword [rsp + 0x30], rax
mov rsi, qword [rsp + 0x20]
sub r11, r8
nop dword [rax]
lea r9, [r10 + r11]
movabs rax, 0x2492492492492493
mul r9
mov rax, r9
sub rax, rdx
shr rax, 1
add rax, rdx
movabs rdx, 0xb7be22222b2ae3eb
shr rax, 2
movzx eax, al
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
shl al, 3
movzx ecx, al
movabs rax, 0x2492492492492493
shr rdx, cl
lea rcx, [r10 + r14]
xor byte [r10 - 2], dl
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 1]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 2]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
lea rcx, [r10 + r15]
xor byte [r10], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 3]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
lea rcx, [r10 + r12]
xor byte [r10 + 1], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 4]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 2], al
lea rcx, [r10 + rbp]
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 5]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 6]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
lea rcx, [r10 + rsi]
xor byte [r10 + 4], al
movabs rax, 0x2492492492492493
mul rcx
mov eax, 1
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
sub al, cl
movzx eax, al
imul ecx, eax, 7
movabs rax, 0xb7be22222b2ae3eb
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r10 + rdi]
xor byte [r10 + 5], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 8]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbx]
xor byte [r10 + 6], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 9]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
mov rcx, qword [rsp + 8]
movabs rax, 0x2492492492492493
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xa]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xb]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xc]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xd]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 0xc8
lea eax, [r9 + 0xe]
shl al, 3
add cl, al
movabs rax, 0xb7be22222b2ae3eb
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xf]
movabs rax, 0xb7be22222b2ae3eb
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movabs rax, 0xb7be22222b2ae3eb
sub r9b, cl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r10 + r11]
cmp rax, 0x44
jb 0x180041270
xor r11d, r11d
mov rbx, 0xfffffffffffffffe
cmp dword [0x180182290], 5
mov r9d, r11d
mov edi, 2
mov esi, 4
mov ebp, 7
mov r14d, 3
mov r15d, 5
mov r12d, 6
mov r13d, 8
jl 0x18004183a
movdqa xmm2, xmmword [0x180165740]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10d, edi
sub rdx, r8
sub r10, r8
nop word [rax + rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rcx + rdx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [rcx + r10]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x180041750
cmp r9, 0x44
jae 0x18004186d
movabs r10, 0x35117b5dd9b79f37
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, bpl
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x180041850
movdqu xmm0, xmmword [r8]
lea rax, [r8 + 0x40]
mov rcx, rsi
movdqa xmm2, xmmword [0x18016c0e0]
movdqa xmm1, xmm2
xorps xmm1, xmm0
movdqu xmmword [r8], xmm1
movdqu xmm0, xmmword [r8 + 0x10]
xorps xmm0, xmm2
movdqu xmmword [r8 + 0x10], xmm0
movdqu xmm1, xmmword [r8 + 0x20]
xorps xmm1, xmm2
movdqu xmmword [r8 + 0x20], xmm1
movdqu xmm0, xmmword [r8 + 0x30]
xorps xmm0, xmm2
movdqu xmmword [r8 + 0x30], xmm0
nop word [rax + rax]
xor byte [rax], 0xed
lea rax, [rax + 1]
sub rcx, 1
jne 0x1800418c0
cmp dword [0x180182290], r15d
mov r9, r11
jl 0x1800419ea
movdqa xmm2, xmmword [0x180167060]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10, rdi
sub rdx, r8
sub r10, r8
nop word [rax + rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rdx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [r10 + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x180041900
cmp r9, 0x44
jae 0x180041a1d
movabs r10, 0x6c4b50e3f57378fa
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, 1
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x180041a00
movaps xmm7, xmmword [rsp + 0x60]
lea r10, [r8 + 2]
sub r14, r8
sub r15, r8
sub r12, r8
mov qword [rsp + 0xe8], r14
sub rbp, r8
mov qword [rsp + 0x20], r15
mov r11, qword [rsp + 0x20]
sub r13, r8
mov rax, r8
mov qword [rsp + 0x18], r12
not rax
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0xe8]
mov r14, rbx
mov rbx, qword [rsp + 0x10]
movabs rcx, 0xf42bbfeaf835f3f4
mov qword [rsp + 0xd0], rax
mov eax, 1
sub rax, r8
mov qword [rsp + 8], r13
mov qword [rsp + 0xd8], rax
mov rax, rdi
mov r15, qword [rsp + 0xd8]
sub rax, r8
mov rdi, qword [rsp + 0x18]
mov qword [rsp + 0xe0], rax
mov rax, rsi
mov rsi, qword [rsp + 0xd0]
sub rax, r8
mov r12, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov eax, 9
mov r13, qword [rsp + 0x28]
sub rax, r8
mov qword [rsp], rax
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x50], rax
mov eax, 0xb
sub rax, r8
mov qword [rsp + 0x48], rax
mov eax, 0xc
sub rax, r8
mov qword [rsp + 0x40], rax
mov eax, 0xd
sub rax, r8
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r14, r8
nop dword [rax]
lea r9, [r14 + r10]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movzx eax, r9b
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xaaaaaaaaaaaaaaab
shr rdx, cl
lea rcx, [rsi + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov ecx, 1
shr rdx, 1
sub cl, dl
movzx eax, cl
add al, al
add cl, al
movabs rax, 0xf42bbfeaf835f3f4
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 1], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 2], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
sub cl, dl
add cl, 5
shl cl, 3
movabs rax, 0xf42bbfeaf835f3f4
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 6]
shl al, 3
add cl, al
movabs rax, 0xf42bbfeaf835f3f4
shr rax, cl
lea rcx, [r11 + r10]
xor byte [r10 + 4], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [rdi + r10]
xor byte [r10 + 5], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 6], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 9]
shl al, 3
add cl, al
movabs rax, 0xf42bbfeaf835f3f4
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 0xa
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
sub cl, dl
add cl, 0xb
movabs rax, 0xf42bbfeaf835f3f4
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 0xc]
shl al, 3
add cl, al
movabs rax, 0xf42bbfeaf835f3f4
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
imul ecx, eax, 0xe8
lea eax, [r9 + 0xf]
shl al, 3
add cl, al
movabs rax, 0xf42bbfeaf835f3f4
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 1
movzx eax, dl
add al, al
add dl, al
movabs rax, 0xf42bbfeaf835f3f4
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
movabs rcx, 0xf42bbfeaf835f3f4
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r14 + r10]
cmp rax, 0x44
jb 0x180041b20
xor r11d, r11d
mov rbx, 0xfffffffffffffffe
cmp dword [0x180182290], 5
mov r9d, r11d
mov edi, 2
mov esi, 4
mov ebp, 7
mov r14d, 3
mov r15d, 5
mov r12d, 6
mov r13d, 8
jl 0x18004204a
movdqa xmm2, xmmword [0x1801651c0]
lea rcx, [r8 + 4]
mov rdx, rbx
mov r10d, edi
sub rdx, r8
sub r10, r8
nop dword [rax]
movzx eax, word [rcx - 4]
movq xmm0, r9
punpcklqdq xmm0, xmm0
add r9, r13
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rdx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [r10 + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, r13
cmp r9, 0x40
jb 0x180041f60
cmp r9, 0x44
jae 0x18004207d
movabs r10, 0x1b3775593f5bb9b8
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov rdx, r10
and cl, r14b
shl cl, 3
shr rdx, cl
xor byte [r8 + r9], dl
inc r9
cmp r9, 0x44
jb 0x180042060
movaps xmm6, xmmword [rsp + 0x70]
lea r10, [r8 + 2]
sub r14, r8
sub rsi, r8
sub r15, r8
mov qword [rsp + 0xe8], r14
sub r12, r8
mov qword [rsp + 0x28], rsi
sub rbp, r8
mov qword [rsp + 0x20], r15
sub r13, r8
mov qword [rsp + 0x18], r12
mov r12, qword [rsp + 0xe8]
mov rax, r8
not rax
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0x28]
mov r11, rbx
mov rbx, qword [rsp + 0x18]
movabs rcx, 0xaacadfcde8d828be
mov qword [rsp + 0xd0], rax
mov eax, 1
mov r14, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp + 0xd8], rax
mov rax, rdi
mov rsi, qword [rsp + 0xd8]
sub rax, r8
mov rdi, qword [rsp + 0x10]
mov qword [rsp + 0xe0], rax
mov eax, 9
mov r15, qword [rsp + 0xe0]
sub rax, r8
mov qword [rsp], rax
mov eax, 0xa
sub rax, r8
mov qword [rsp + 8], r13
mov r13, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
mov eax, 0xb
sub rax, r8
mov qword [rsp + 0x48], rax
mov eax, 0xc
sub rax, r8
mov qword [rsp + 0x40], rax
mov eax, 0xd
sub rax, r8
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r11, r8
nop word [rax + rax]
lea r9, [r11 + r10]
movabs rax, 0xcccccccccccccccd
mul r9
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx eax, r9b
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xcccccccccccccccd
shr rdx, cl
lea rcx, [r14 + r10]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [rsi + r10]
xor byte [r10], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10 + 1], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 2], al
movabs rax, 0xcccccccccccccccd
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
shl al, 2
add cl, al
add cl, r9b
shl cl, 3
movabs rax, 0xaacadfcde8d828be
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 3], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 6
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 4], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 5], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
lea rcx, [rdi + r10]
xor byte [r10 + 6], al
movabs rax, 0xcccccccccccccccd
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xa]
shl al, 3
add cl, al
movabs rax, 0xaacadfcde8d828be
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movzx ecx, r9b
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 0xc
shl cl, 3
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd8
lea eax, [r9 + 0xf]
shl al, 3
add cl, al
movabs rax, 0xaacadfcde8d828be
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
shl al, 2
add dl, al
movabs rax, 0xaacadfcde8d828be
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r11 + r10]
movabs rcx, 0xaacadfcde8d828be
cmp rax, 0x44
jb 0x180042180
mov rax, r8
lea r10, [r8 + 2]
not rax
mov r14d, 3
mov qword [rsp + 0xd0], rax
sub r14, r8
mov qword [rsp + 0xe8], r14
mov eax, 1
sub rax, r8
mov esi, 4
mov qword [rsp + 0xd8], rax
sub rsi, r8
mov qword [rsp + 0x28], rsi
mov eax, 9
mov rsi, qword [rsp + 0xd0]
sub rax, r8
mov qword [rsp], rax
mov r15d, 5
sub r15, r8
mov eax, 0xa
sub rax, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsp + 0xd8]
mov r12d, 6
mov rbx, qword [rsp + 0x20]
sub r12, r8
mov qword [rsp + 0x50], rax
mov edi, 2
sub rdi, r8
mov qword [rsp + 0x18], r12
mov eax, 0xb
mov ebp, 7
sub rax, r8
sub rbp, r8
mov qword [rsp + 0x48], rax
mov r13d, 8
sub r13, r8
mov qword [rsp + 0x10], rbp
mov rbp, qword [rsp + 0xe8]
mov eax, 0xc
sub rax, r8
mov qword [rsp + 8], r13
mov r13, qword [rsp + 0x28]
mov r14, 0xfffffffffffffffe
mov qword [rsp + 0x40], rax
mov r12, rdi
mov rdi, qword [rsp + 0x18]
mov eax, 0xd
sub rax, r8
movabs rcx, 0x5ef6845ee5bce4d5
mov qword [rsp + 0x38], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp + 0x30], rax
sub r14, r8
nop
lea r9, [r10 + r14]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movzx eax, r9b
add dl, dl
sub al, dl
mov rdx, rcx
shl al, 3
movzx ecx, al
movabs rax, 0xaaaaaaaaaaaaaaab
shr rdx, cl
lea rcx, [r10 + rsi]
xor byte [r10 - 2], dl
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
inc cl
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 2
shl cl, 3
shr rax, cl
lea rcx, [r10 + r15]
xor byte [r10], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 3
shl cl, 3
shr rax, cl
lea rcx, [r10 + r12]
xor byte [r10 + 1], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 4
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 2], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
movzx ecx, r9b
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 5
shl cl, 3
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 3], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov ecx, 1
shr rdx, 2
sub cl, dl
movzx eax, cl
add al, al
add cl, al
movabs rax, 0x5ef6845ee5bce4d5
add cl, cl
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbx]
xor byte [r10 + 4], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 7
shl cl, 3
shr rax, cl
lea rcx, [r10 + rdi]
xor byte [r10 + 5], al
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 8
shl cl, 3
shr rax, cl
xor byte [r10 + 6], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x10]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 9
shl cl, 3
shr rax, cl
xor byte [r10 + 7], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
add dl, dl
sub cl, dl
movabs rax, 0x5ef6845ee5bce4d5
add cl, 0xa
shl cl, 3
shr rax, cl
xor byte [r10 + 8], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 0xb
shl cl, 3
shr rax, cl
xor byte [r10 + 9], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x50]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
imul ecx, eax, 0xd0
lea eax, [r9 + 0xc]
shl al, 3
add cl, al
movabs rax, 0x5ef6845ee5bce4d5
shr rax, cl
xor byte [r10 + 0xa], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x48]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 0xd
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x40]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 0xe
shl cl, 3
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x38]
add rcx, r10
mul rcx
movzx ecx, r9b
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub cl, dl
add cl, 0xf
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x30]
add rcx, r10
mul rcx
shr rdx, 2
movzx eax, dl
add al, al
add dl, al
movabs rax, 0x5ef6845ee5bce4d5
add dl, dl
sub r9b, dl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
movabs rcx, 0x5ef6845ee5bce4d5
xor byte [r10 + 0xe], al
add r10, 0x11
lea rax, [r10 + r14]
cmp rax, 0x44
jb 0x180042690
mov rax, r8
lea r10, [r8 + 2]
not rax
mov edi, 2
mov qword [rsp + 0x28], rax
sub rdi, r8
mov eax, 1
mov qword [rsp + 0x18], rdi
sub rax, r8
mov r14d, 3
mov qword [rsp + 0x20], rax
mov esi, 4
mov eax, 9
mov r15d, 5
sub rax, r8
mov r12d, 6
mov qword [rsp + 0xd8], rax
mov ebp, 7
mov r11, qword [rsp + 0xd8]
mov eax, 0xa
sub rax, r8
mov r13d, 8
mov qword [rsp + 0xe0], rax
sub r14, r8
mov rdi, qword [rsp + 0xe0]
mov eax, 0xb
sub rax, r8
sub rsi, r8
mov qword [rsp + 0xe8], rax
sub r15, r8
mov rbx, qword [rsp + 0xe8]
mov eax, 0xc
sub rax, r8
sub r12, r8
mov qword [rsp + 0x10], rax
sub rbp, r8
mov eax, 0xd
sub r13, r8
sub rax, r8
mov qword [rsp + 8], rax
mov eax, 0xe
sub rax, r8
mov qword [rsp], rax
mov rax, 0xfffffffffffffffe
sub rax, r8
mov qword [rsp + 0xd0], rax
nop dword [rax + rax]
lea r9, [rax + r10]
movabs rax, 0x2492492492492493
mul r9
mov rax, r9
sub rax, rdx
shr rax, 1
add rax, rdx
movabs rdx, 0xefead3ee67762e3b
shr rax, 2
movzx eax, al
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
shl al, 3
movzx ecx, al
movabs rax, 0x2492492492492493
shr rdx, cl
xor byte [r10 - 2], dl
mov rcx, qword [rsp + 0x28]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 1]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
mov rcx, r10
xor byte [r10 - 1], al
sub rcx, r8
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 2]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
xor byte [r10], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x20]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 3]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
xor byte [r10 + 1], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x18]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 4]
shl cl, 3
movabs rax, 0xefead3ee67762e3b
shr rax, cl
lea rcx, [r14 + r10]
xor byte [r10 + 2], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 5]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [rsi + r10]
xor byte [r10 + 3], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 6]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [r15 + r10]
xor byte [r10 + 4], al
movabs rax, 0x2492492492492493
mul rcx
mov eax, 1
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
sub al, cl
movzx eax, al
imul ecx, eax, 7
movabs rax, 0xefead3ee67762e3b
add cl, r9b
shl cl, 3
shr rax, cl
lea rcx, [r12 + r10]
xor byte [r10 + 5], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 8]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [r10 + rbp]
xor byte [r10 + 6], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 9]
shl cl, 3
movabs rax, 0xefead3ee67762e3b
shr rax, cl
lea rcx, [r10 + r13]
xor byte [r10 + 7], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xa]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [r11 + r10]
xor byte [r10 + 8], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xb]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [rdi + r10]
xor byte [r10 + 9], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xc]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
lea rcx, [rbx + r10]
xor byte [r10 + 0xa], al
movabs rax, 0x2492492492492493
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xd]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
xor byte [r10 + 0xb], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 0x10]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 0xc8
lea eax, [r9 + 0xe]
shl al, 3
add cl, al
movabs rax, 0xefead3ee67762e3b
shr rax, cl
xor byte [r10 + 0xc], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp + 8]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movzx eax, r9b
sub al, cl
lea ecx, [rax + 0xf]
movabs rax, 0xefead3ee67762e3b
shl cl, 3
shr rax, cl
xor byte [r10 + 0xd], al
movabs rax, 0x2492492492492493
mov rcx, qword [rsp]
add rcx, r10
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
movzx eax, cl
imul ecx, eax, 7
movabs rax, 0xefead3ee67762e3b
sub r9b, cl
lea ecx, [r9 + 0x10]
shl cl, 3
shr rax, cl
xor byte [r10 + 0xe], al
add r10, 0x11
mov rax, qword [rsp + 0xd0]
add rax, r10
cmp rax, 0x44
mov rax, qword [rsp + 0xd0]
jb 0x180042b90
cmp dword [0x180182290], 5
mov rbx, 0xfffffffffffffffe
mov r15, qword [rsp + 0x88]
mov edi, 2
mov r14, qword [rsp + 0x90]
mov r11d, 0
mov r13, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
jl 0x18004316c
movdqa xmm2, xmmword [0x180166270]
lea rcx, [r8 + 4]
sub rbx, r8
sub rdi, r8
nop dword [rax]
movzx eax, word [rcx - 4]
movq xmm0, r11
punpcklqdq xmm0, xmm0
add r11, 8
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 4], ax
lea rax, [rbx + rcx]
movq xmm0, rax
movzx eax, word [rcx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx - 2], ax
mov rax, rcx
sub rax, r8
movq xmm0, rax
movzx eax, word [rcx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx], ax
lea rax, [rdi + rcx]
movq xmm0, rax
movzx eax, word [rcx + 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, eax
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd eax, xmm1
mov word [rcx + 2], ax
add rcx, 8
cmp r11, 0x40
jb 0x180043080
cmp r11, 0x44
jae 0x18004319d
movabs r9, 0x4fb7d5f3ab95cfbf
nop word [rax + rax]
movzx ecx, r11b
mov rdx, r9
and cl, 7
shl cl, 3
shr rdx, cl
xor byte [r8 + r11], dl
inc r11
cmp r11, 0x44
jb 0x180043180
mov rdi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xc0]
mov byte [r8 + 0x44], 0
add rsp, 0xc8
ret