Function at 0x140099e50
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xbc8
movdqa xmmword [rsp + 0xbb0], xmm15
movdqa xmmword [rsp + 0xba0], xmm14
movdqa xmmword [rsp + 0xb90], xmm13
movdqa xmmword [rsp + 0xb80], xmm12
movdqa xmmword [rsp + 0xb70], xmm11
movdqa xmmword [rsp + 0xb60], xmm10
movdqa xmmword [rsp + 0xb50], xmm9
movdqa xmmword [rsp + 0xb40], xmm8
movdqa xmmword [rsp + 0xb30], xmm7
movdqa xmmword [rsp + 0xb20], xmm6
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0xb18], rax
cmp r8, 0x440
jne 0x14009a608
mov r14, r9
mov rsi, rdx
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + 0xb0]
mov r8d, 0xa
call fcn.140095f00
xor eax, eax
movdqa xmm6, xmmword [0x14039f8d0]
movdqa xmm7, xmmword [0x14039edb0]
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rsp + rax*2 + 0xb0]
movdqa xmm1, xmm0
pmulhuw xmm1, xmm6
pmullw xmm0, xmm6
movdqa xmm2, xmm0
punpcklwd xmm2, xmm1
punpckhwd xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0xa
movdqa xmm3, xmm2
psrld xmm3, 0xa
psrld xmm2, 9
psrld xmm0, 9
pand xmm0, xmm7
paddd xmm0, xmm1
pand xmm2, xmm7
paddd xmm2, xmm3
pslld xmm0, 0x10
psrad xmm0, 0x10
pslld xmm2, 0x10
psrad xmm2, 0x10
packssdw xmm2, xmm0
movdqu xmmword [rsp + rax*2 + 0xb0], xmm2
add rax, 8
cmp rax, 0x100
jne 0x140099f20
mov eax, 0x200
nop
movdqu xmm0, xmmword [rsp + rax + 0xb0]
movdqa xmm1, xmm0
pmulhuw xmm1, xmm6
pmullw xmm0, xmm6
movdqa xmm2, xmm0
punpcklwd xmm2, xmm1
punpckhwd xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0xa
movdqa xmm3, xmm2
psrld xmm3, 0xa
psrld xmm2, 9
psrld xmm0, 9
pand xmm0, xmm7
paddd xmm0, xmm1
pand xmm2, xmm7
paddd xmm2, xmm3
pslld xmm0, 0x10
psrad xmm0, 0x10
pslld xmm2, 0x10
psrad xmm2, 0x10
packssdw xmm2, xmm0
movdqu xmmword [rsp + rax + 0xb0], xmm2
add rax, 0x10
cmp rax, 0x400
jne 0x140099fa0
mov eax, 0x200
nop
movdqu xmm0, xmmword [rsp + rax*2 + 0xb0]
movdqa xmm1, xmm0
pmulhuw xmm1, xmm6
pmullw xmm0, xmm6
movdqa xmm2, xmm0
punpcklwd xmm2, xmm1
punpckhwd xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0xa
movdqa xmm3, xmm2
psrld xmm3, 0xa
psrld xmm2, 9
psrld xmm0, 9
pand xmm0, xmm7
paddd xmm0, xmm1
pand xmm2, xmm7
paddd xmm2, xmm3
pslld xmm0, 0x10
psrad xmm0, 0x10
pslld xmm2, 0x10
psrad xmm2, 0x10
packssdw xmm2, xmm0
movdqu xmmword [rsp + rax*2 + 0xb0], xmm2
add rax, 8
cmp rax, 0x300
jne 0x14009a020
lea rcx, [rsp + 0xb0]
call fcn.140091510
mov qword [rsp + 0x50], rsi
lea r8, [rsi + 0x3c0]
xor r9d, r9d
lea r10, [0x14039fca0]
xor esi, esi
xor r11d, r11d
nop word cs:[rax + rax]
xor eax, eax
xor edi, edi
jmp 0x14009a112
mov ecx, 4
sub ecx, eax
cmp ecx, esi
cmovge ecx, esi
movzx r11d, r11b
movsxd rdx, ecx
movzx ebx, byte [rdx + r10 - 1]
and ebx, r11d
mov ecx, eax
shl ebx, cl
or edi, ebx
mov ecx, edx
shr r11d, cl
sub esi, edx
add edx, eax
mov eax, edx
cmp edx, 4
jge 0x14009a130
test esi, esi
jne 0x14009a0e0
movzx r11d, byte [r8]
inc r8
mov esi, 8
jmp 0x14009a0e0
movzx eax, di
cmp eax, 0xd00
ja 0x14009a14f
mov word [rsp + r9*2 + 0x918], di
inc r9
cmp r9, 0x100
jne 0x14009a0d0
xor eax, eax
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rsp + rax*2 + 0x918]
movdqa xmm1, xmm0
pmulhuw xmm1, xmm6
pmullw xmm0, xmm6
movdqa xmm2, xmm0
punpcklwd xmm2, xmm1
punpckhwd xmm0, xmm1
movdqa xmm1, xmm0
psrld xmm1, 4
movdqa xmm3, xmm2
psrld xmm3, 4
psrld xmm2, 3
psrld xmm0, 3
pand xmm0, xmm7
paddd xmm0, xmm1
pand xmm2, xmm7
paddd xmm2, xmm3
pslld xmm0, 0x10
psrad xmm0, 0x10
pslld xmm2, 0x10
psrad xmm2, 0x10
packssdw xmm2, xmm0
movdqu xmmword [rsp + rax*2 + 0x918], xmm2
add rax, 8
cmp rax, 0x100
jne 0x14009a160
mov qword [rsp + 0x48], r14
lea rdx, [r14 + 0x1840]
lea rcx, [rsp + 0x710]
lea r8, [rsp + 0xb0]
call fcn.140096100
mov eax, 2
mov r8d, 0x80
xor ecx, ecx
pxor xmm3, xmm3
movdqa xmm1, xmmword [0x14039f880]
movdqa xmm4, xmmword [0x14039f890]
movdqa xmm2, xmmword [0x14039f850]
movdqa xmm0, xmmword [0x14039f860]
jmp 0x14009a23f
mov eax, dword [rsp + 0x34]
cmp eax, 0x100
jge 0x14009a632
shr r8d, 1
movsxd rdx, eax
add eax, eax
mov dword [rsp + 0x34], eax
movsxd r9, eax
lea rax, [r9 + r9]
mov qword [rsp + 0x40], rax
lea rax, [rsp + rdx*2 + 0x712]
mov qword [rsp + 0x60], rax
lea r12, [rsp + rdx*2 + 0x710]
mov r13d, 1
lea rbp, [rsp + 0x710]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x70], rdx
mov rdi, r12
xor ebx, ebx
xor esi, esi
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x68], r9
jmp 0x14009a2df
mov r9, qword [rsp + 0x68]
add rsi, r9
inc rbx
mov rax, qword [rsp + 0x40]
add rdi, rax
mov rdx, qword [rsp + 0x80]
add rdx, r9
mov r13, qword [rsp + 0x88]
add r13, r9
sub qword [rsp + 0x38], r9
add rbp, rax
mov r8, qword [rsp + 0x78]
cmp rbx, r8
je 0x14009a230
cmp rdx, r13
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x80], rdx
cmovg r13, rdx
mov rax, qword [rsp + 0x70]
lea rdx, [rsi + rax]
mov r11, rsi
or r11, 1
cmp rdx, r11
mov r15, r11
cmovg r15, rdx
mov r10, rbx
imul r10, r9
sub r15, r10
lea rax, [rbx + r8]
lea r8, [0x14039fba0]
movzx r14d, word [r8 + rax*2]
mov r8, rsi
cmp r15, 7
jbe 0x14009a570
mov rax, qword [rsp + 0x40]
imul rax, rbx
mov r8, qword [rsp + 0x60]
add r8, rax
cmp rdx, r11
cmovg r11, rdx
not r10
add r10, r11
lea r11, [r8 + r10*2]
lea r8, [rsp + rax]
add r8, 0x710
cmp r8, r11
jae 0x14009a380
add rax, r12
lea r10, [r8 + r10*2]
add r10, 2
mov r8, rsi
cmp rax, r10
jb 0x14009a570
add r13, qword [rsp + 0x38]
and r13, 0xfffffffffffffff8
mov rax, r15
and rax, 0xfffffffffffffff8
lea r8, [rsi + rax]
movd xmm5, r14d
pshufd xmm5, xmm5, 0
pshufd xmm7, xmm5, 0xf5
xor r10d, r10d
nop word cs:[rax + rax]
movdqu xmm10, xmmword [rdi + r10*2]
movdqu xmm11, xmmword [rbp + r10*2]
movdqa xmm12, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm11
paddw xmm11, xmm10
punpcklwd xmm10, xmm3
punpckhwd xmm12, xmm3
punpcklwd xmm8, xmm3
psubd xmm8, xmm10
punpckhwd xmm9, xmm3
psubd xmm9, xmm12
movdqa xmm10, xmm11
paddw xmm10, xmm1
movdqa xmm12, xmm10
psraw xmm12, 0xf
pand xmm12, xmm11
pmaxsw xmm10, xmm3
por xmm10, xmm12
movdqu xmmword [rbp + r10*2], xmm10
paddd xmm8, xmm4
paddd xmm9, xmm4
pshufd xmm12, xmm9, 0xf5
pmuludq xmm9, xmm5
pshufd xmm11, xmm9, 0xe8
pmuludq xmm12, xmm7
pshufd xmm10, xmm12, 0xe8
punpckldq xmm11, xmm10
pshufd xmm13, xmm8, 0xf5
pmuludq xmm8, xmm5
pshufd xmm10, xmm8, 0xe8
pmuludq xmm13, xmm7
pshufd xmm14, xmm13, 0xe8
punpckldq xmm10, xmm14
movdqa xmm14, xmm9
punpckhqdq xmm14, xmm12
punpcklqdq xmm9, xmm12
movdqa xmm12, xmm8
punpckhqdq xmm12, xmm13
punpcklqdq xmm8, xmm13
pmuludq xmm8, xmm2
pmuludq xmm12, xmm2
pmuludq xmm9, xmm2
pmuludq xmm14, xmm2
psrlq xmm14, 0x18
psrlq xmm9, 0x18
psrlq xmm12, 0x18
psrlq xmm8, 0x18
movdqa xmm13, xmm8
punpcklqdq xmm13, xmm12
movdqa xmm15, xmm9
punpcklqdq xmm15, xmm14
punpckhqdq xmm9, xmm14
pmuludq xmm9, xmm0
pshufd xmm9, xmm9, 0xe8
pmuludq xmm15, xmm0
pshufd xmm14, xmm15, 0xe8
punpckldq xmm14, xmm9
paddd xmm14, xmm11
punpckhqdq xmm8, xmm12
pmuludq xmm8, xmm0
pshufd xmm8, xmm8, 0xe8
pmuludq xmm13, xmm0
pshufd xmm9, xmm13, 0xe8
punpckldq xmm9, xmm8
paddd xmm9, xmm10
pslld xmm14, 0x10
psrad xmm14, 0x10
pslld xmm9, 0x10
psrad xmm9, 0x10
packssdw xmm9, xmm14
movdqa xmm8, xmm9
paddw xmm8, xmm1
movdqa xmm10, xmm8
psraw xmm10, 0xf
pand xmm10, xmm9
pmaxsw xmm8, xmm3
por xmm8, xmm10
movdqu xmmword [rdi + r10*2], xmm8
add r10, 8
cmp r13, r10
jne 0x14009a3b0
cmp r15, rax
je 0x14009a2a0
nop dword [rax + rax]
movzx eax, word [r12 + r8*2]
movzx r10d, word [rsp + r8*2 + 0x710]
lea r11d, [r10 + rax]
lea r15d, [r10 + rax]
add r15d, 0xfffff2ff
movsx r9d, r15w
mov r13d, r9d
shr r13d, 0xf
and r13d, r11d
test r9w, r9w
cmovle r15d, ecx
or r15d, r13d
mov word [rsp + r8*2 + 0x710], r15w
sub r10d, eax
add r10d, 0xd01
imul r10d, r14d
imul rax, r10, 0x13af
shr rax, 0x18
imul eax, eax, 0xf2ff
lea r9d, [rax + r10]
add eax, r10d
add eax, 0xfffff2ff
movsx r10d, ax
mov r11d, r10d
sar r11d, 0xf
and r11d, r9d
test r10w, r10w
cmovle eax, ecx
or eax, r11d
mov word [r12 + r8*2], ax
inc r8
cmp r8, rdx
jl 0x14009a570
jmp 0x14009a2a0
mov edx, 0x20
call fcn.1400a2680
xor eax, eax
mov rcx, qword [rsp + 0xb18]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
je 0x14009adda
call fcn.14029fd30
int3
xor eax, eax
movdqa xmm3, xmmword [0x14039f8e0]
pxor xmm4, xmm4
movdqu xmm5, xmmword [rsp + rax*2 + 0x710]
movdqa xmm8, xmm5
pmulhuw xmm8, xmm3
pmullw xmm5, xmm3
movdqa xmm7, xmm5
punpcklwd xmm7, xmm8
punpckhwd xmm5, xmm8
pshufd xmm10, xmm5, 0xf6
pshufd xmm11, xmm5, 0xd4
pshufd xmm9, xmm7, 0xf6
pshufd xmm8, xmm7, 0xd4
pmuludq xmm8, xmm2
pmuludq xmm9, xmm2
pmuludq xmm11, xmm2
pmuludq xmm10, xmm2
psrlq xmm10, 0x18
psrlq xmm11, 0x18
psrlq xmm9, 0x18
psrlq xmm8, 0x18
movdqa xmm12, xmm8
punpcklqdq xmm12, xmm9
movdqa xmm13, xmm11
punpcklqdq xmm13, xmm10
punpckhqdq xmm11, xmm10
pmuludq xmm11, xmm0
pshufd xmm10, xmm11, 0xe8
pmuludq xmm13, xmm0
pshufd xmm11, xmm13, 0xe8
punpckldq xmm11, xmm10
punpckhqdq xmm8, xmm9
pmuludq xmm8, xmm0
pshufd xmm8, xmm8, 0xe8
pmuludq xmm12, xmm0
pshufd xmm9, xmm12, 0xe8
punpckldq xmm9, xmm8
paddd xmm9, xmm7
paddd xmm11, xmm5
pslld xmm11, 0x10
psrad xmm11, 0x10
pslld xmm9, 0x10
psrad xmm9, 0x10
packssdw xmm9, xmm11
movdqa xmm5, xmm9
paddw xmm5, xmm1
movdqa xmm7, xmm5
psraw xmm7, 0xf
pand xmm7, xmm9
pmaxsw xmm5, xmm4
por xmm5, xmm7
movdqu xmmword [rsp + rax*2 + 0x710], xmm5
add rax, 8
cmp rax, 0x100
jne 0x14009a640
mov eax, 8
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rsp + rax*2 + 0x908]
movdqu xmm3, xmmword [rsp + rax*2 + 0x918]
movdqu xmm4, xmmword [rsp + rax*2 + 0x700]
psubw xmm2, xmm4
movdqu xmm4, xmmword [rsp + rax*2 + 0x710]
psubw xmm3, xmm4
movdqa xmm4, xmm2
paddw xmm4, xmm6
movdqa xmm5, xmm3
paddw xmm5, xmm6
movdqa xmm7, xmm2
psraw xmm7, 0xf
pand xmm7, xmm4
movdqa xmm4, xmm3
psraw xmm4, 0xf
pand xmm4, xmm5
pmaxsw xmm2, xmm1
por xmm2, xmm7
pmaxsw xmm3, xmm1
por xmm3, xmm4
movdqu xmmword [rsp + rax*2 + 0x908], xmm2
movdqu xmmword [rsp + rax*2 + 0x918], xmm3
add rax, 0x10
cmp rax, 0x108
jne 0x14009a770
xor eax, eax
pxor xmm1, xmm1
movdqa xmm2, xmmword [0x14039f940]
movdqa xmm3, xmmword [0x14039f8f0]
movdqa xmm4, xmmword [0x14039f8a0]
movdqa xmm5, xmmword [0x14039f910]
movdqa xmm6, xmmword [0x14039f760]
mov rdi, qword [rsp + 0x48]
nop dword [rax + rax]
movdqu xmm7, xmmword [rsp + rax*2 + 0x918]
movdqa xmm9, xmm7
punpcklwd xmm9, xmm1
movdqa xmm10, xmm7
punpckhwd xmm10, xmm1
paddd xmm10, xmm10
paddd xmm9, xmm9
pmulhuw xmm7, xmm2
punpckhwd xmm11, xmm7
punpcklwd xmm8, xmm7
psrld xmm8, 0x18
psrld xmm11, 0x18
pmaddwd xmm11, xmm0
paddd xmm11, xmm10
pmaddwd xmm8, xmm0
paddd xmm8, xmm9
pxor xmm11, xmm4
movdqa xmm9, xmm11
pcmpgtd xmm9, xmm3
pxor xmm8, xmm4
movdqa xmm10, xmm8
pcmpgtd xmm10, xmm3
packssdw xmm10, xmm9
pcmpgtd xmm11, xmm5
pcmpgtd xmm8, xmm5
packssdw xmm8, xmm11
psrlw xmm7, 8
pxor xmm7, xmm10
pxor xmm7, xmm8
pand xmm7, xmm6
movdqu xmmword [rsp + rax*2 + 0x918], xmm7
add rax, 8
cmp rax, 0x100
jne 0x14009a830
lea rax, [rsp + 0x996]
xor ecx, ecx
movdqa xmm0, xmmword [0x14039d170]
movdqa xmm1, xmmword [0x14039f950]
movq xmm2, qword [0x14039f960]
movq xmm3, qword [0x14039d180]
movq xmm4, qword [0x14039f970]
movdqa xmm5, xmmword [0x14039f980]
movdqa xmm6, xmmword [0x14039f990]
movdqa xmm7, xmmword [0x14039c950]
nop dword [rax]
movzx edx, byte [rax - 0x7e]
movzx r8d, byte [rax - 0x6e]
movzx r9d, byte [rax - 0x5e]
movzx r10d, byte [rax - 0x3e]
movzx r11d, byte [rax - 0x1e]
movzx esi, byte [rax - 0x2e]
shl esi, 8
or esi, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x4e]
shl edx, 0x18
or edx, r9d
movd xmm8, edx
pinsrw xmm8, esi, 2
movzx edx, byte [rax - 0xe]
shl edx, 8
or edx, r11d
pinsrw xmm8, edx, 3
pand xmm8, xmm0
movzx edx, byte [rax - 0x3c]
movzx r8d, byte [rax - 0x2c]
shl r8d, 8
or r8d, edx
movzx edx, byte [rax - 0x7c]
movzx r9d, byte [rax - 0x6c]
shl r9d, 8
or r9d, edx
movzx edx, byte [rax - 0x5c]
shl edx, 0x10
or edx, r9d
movzx r9d, byte [rax - 0x4c]
shl r9d, 0x18
or r9d, edx
movd xmm9, r9d
pinsrw xmm9, r8d, 2
movzx edx, byte [rax - 0x1c]
movzx r8d, byte [rax - 0xc]
shl r8d, 8
or r8d, edx
pinsrw xmm9, r8d, 3
movq xmm9, xmm9
paddb xmm9, xmm9
pand xmm9, xmm1
movzx edx, byte [rax - 0x7a]
movzx r8d, byte [rax - 0x6a]
movzx r9d, byte [rax - 0x5a]
movzx r10d, byte [rax - 0x3a]
movzx r11d, byte [rax - 0x2a]
shl r11d, 8
or r11d, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x4a]
shl edx, 0x18
or edx, r9d
movd xmm10, edx
pinsrw xmm10, r11d, 2
movzx edx, byte [rax - 0x1a]
movzx r8d, byte [rax - 0xa]
shl r8d, 8
or r8d, edx
pinsrw xmm10, r8d, 3
psllw xmm10, 2
pand xmm10, xmm2
por xmm10, xmm8
movzx edx, byte [rax - 0x78]
movzx r8d, byte [rax - 0x68]
movzx r9d, byte [rax - 0x58]
movzx r10d, byte [rax - 0x38]
movzx r11d, byte [rax - 0x18]
movzx esi, byte [rax - 0x28]
shl esi, 8
or esi, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x48]
shl edx, 0x18
or edx, r9d
movd xmm8, edx
pinsrw xmm8, esi, 2
movzx edx, byte [rax - 8]
shl edx, 8
or edx, r11d
pinsrw xmm8, edx, 3
psllw xmm8, 3
pand xmm8, xmm3
por xmm8, xmm10
por xmm8, xmm9
movzx edx, byte [rax - 0x76]
movzx r8d, byte [rax - 0x66]
movzx r9d, byte [rax - 0x56]
movzx r10d, byte [rax - 0x36]
movzx r11d, byte [rax - 0x16]
movzx esi, byte [rax - 0x26]
shl esi, 8
or esi, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x46]
shl edx, 0x18
or edx, r9d
movd xmm10, edx
pinsrw xmm10, esi, 2
movzx edx, byte [rax - 6]
shl edx, 8
or edx, r11d
pinsrw xmm10, edx, 3
psllw xmm10, 4
pand xmm10, xmm4
movzx edx, byte [rax - 0x74]
movzx r8d, byte [rax - 0x64]
movzx r9d, byte [rax - 0x54]
movzx r10d, byte [rax - 0x34]
movzx r11d, byte [rax - 0x14]
movzx esi, byte [rax - 0x24]
shl esi, 8
or esi, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x44]
shl edx, 0x18
or edx, r9d
movd xmm9, edx
pinsrw xmm9, esi, 2
movzx edx, byte [rax - 4]
shl edx, 8
or edx, r11d
pinsrw xmm9, edx, 3
psllw xmm9, 5
pand xmm9, xmm5
por xmm9, xmm10
movzx edx, byte [rax - 0x72]
movzx r8d, byte [rax - 0x62]
movzx r9d, byte [rax - 0x52]
movzx r10d, byte [rax - 0x32]
movzx r11d, byte [rax - 0x22]
shl r11d, 8
or r11d, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x42]
shl edx, 0x18
or edx, r9d
movd xmm10, edx
pinsrw xmm10, r11d, 2
movzx edx, byte [rax - 0x12]
movzx r8d, byte [rax - 2]
shl r8d, 8
or r8d, edx
pinsrw xmm10, r8d, 3
psllw xmm10, 6
pand xmm10, xmm6
por xmm10, xmm9
movzx edx, byte [rax - 0x70]
movzx r8d, byte [rax - 0x60]
movzx r9d, byte [rax - 0x50]
movzx r10d, byte [rax - 0x30]
movzx r11d, byte [rax - 0x10]
movzx esi, byte [rax - 0x20]
shl esi, 8
or esi, r10d
shl r8d, 8
or r8d, edx
shl r9d, 0x10
or r9d, r8d
movzx edx, byte [rax - 0x40]
shl edx, 0x18
or edx, r9d
movd xmm9, edx
pinsrw xmm9, esi, 2
movzx edx, byte [rax]
shl edx, 8
or edx, r11d
pinsrw xmm9, edx, 3
psllw xmm9, 7
pand xmm9, xmm7
por xmm9, xmm10
por xmm9, xmm8
movq qword [rsp + rcx + 0x6d0], xmm9
add rcx, 8
sub rax, 0xffffffffffffff80
cmp rcx, 0x20
jne 0x14009a930
movups xmm0, xmmword [rdi + 0x620]
movups xmm1, xmmword [rdi + 0x630]
movaps xmmword [rsp + 0x6f0], xmm0
movaps xmmword [rsp + 0x700], xmm1
mov dword [rsp + 0x20], 1
lea rcx, [rsp + 0x710]
lea r14, [rsp + 0x6d0]
mov edx, 0x40
mov r9d, 0x40
mov r8, r14
call fcn.14008f2d0
lea r9, [rsp + 0x730]
lea rbx, [rsp + 0xb0]
mov rcx, rbx
mov rdx, rdi
mov r8, r14
call fcn.140092290
add rdi, 0x1e40
lea r14, [rsp + 0x918]
mov rcx, r14
mov edx, 3
call fcn.14008f850
mov r8d, 0x20
mov rcx, r14
mov rdx, rdi
call fcn.14008f410
mov r8d, 0x440
mov rcx, r14
mov rsi, qword [rsp + 0x50]
mov rdx, rsi
call fcn.14008f410
lea rdx, [rsp + 0x90]
mov r8d, 0x20
mov rcx, r14
call fcn.14008f760
mov r8d, 0x440
mov rcx, rsi
mov rdx, rbx
call fcn.140098870
xor ecx, ecx
test eax, eax
mov eax, 0xff
cmovne rax, rcx
movd xmm0, eax
not al
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movdqa xmm1, xmmword [rsp + 0x710]
pand xmm1, xmm0
movzx eax, al
movd xmm2, eax
punpcklbw xmm2, xmm2
pshuflw xmm2, xmm2, 0
pshufd xmm2, xmm2, 0
movdqa xmm3, xmmword [rsp + 0x90]
pand xmm3, xmm2
por xmm3, xmm1
mov rax, qword [rsp + 0x58]
movdqu xmmword [rax], xmm3
pand xmm0, xmmword [rsp + 0x720]
pand xmm2, xmmword [rsp + 0xa0]
por xmm2, xmm0
movdqu xmmword [rax + 0x10], xmm2
mov eax, 1
mov rcx, qword [rsp + 0xb18]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x14009a62c
movaps xmm6, xmmword [rsp + 0xb20]
movaps xmm7, xmmword [rsp + 0xb30]
movaps xmm8, xmmword [rsp + 0xb40]
movaps xmm9, xmmword [rsp + 0xb50]
movaps xmm10, xmmword [rsp + 0xb60]
movaps xmm11, xmmword [rsp + 0xb70]
movaps xmm12, xmmword [rsp + 0xb80]
movaps xmm13, xmmword [rsp + 0xb90]
movaps xmm14, xmmword [rsp + 0xba0]
movaps xmm15, xmmword [rsp + 0xbb0]
add rsp, 0xbc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret