Function at 0x140094c40
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb88
movdqa xmmword [rsp + 0xb70], xmm15
movdqa xmmword [rsp + 0xb60], xmm14
movdqa xmmword [rsp + 0xb50], xmm13
movdqa xmmword [rsp + 0xb40], xmm12
movdqa xmmword [rsp + 0xb30], xmm11
movdqa xmmword [rsp + 0xb20], xmm10
movdqa xmmword [rsp + 0xb10], xmm9
movdqa xmmword [rsp + 0xb00], xmm8
movaps xmmword [rsp + 0xaf0], xmm7
movaps xmmword [rsp + 0xae0], xmm6
mov r14, r8
mov rsi, rdx
mov qword [rsp + 0x58], rcx
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0xad8], rax
lea rcx, [rsp + 0x4d0]
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 + 0x4d0]
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 + 0x4d0], xmm2
add rax, 8
cmp rax, 0x100
jne 0x140094d00
mov eax, 0x200
nop
movdqu xmm0, xmmword [rsp + rax + 0x4d0]
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 + 0x4d0], xmm2
add rax, 0x10
cmp rax, 0x400
jne 0x140094d80
mov eax, 0x200
nop
movdqu xmm0, xmmword [rsp + rax*2 + 0x4d0]
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 + 0x4d0], xmm2
add rax, 8
cmp rax, 0x300
jne 0x140094e00
lea rcx, [rsp + 0x4d0]
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 0x140094ef2
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 0x140094f10
test esi, esi
jne 0x140094ec0
movzx r11d, byte [r8]
inc r8
mov esi, 8
jmp 0x140094ec0
movzx eax, di
cmp eax, 0xd00
ja 0x140094f2f
mov word [rsp + r9*2 + 0x2d0], di
inc r9
cmp r9, 0x100
jne 0x140094eb0
xor eax, eax
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rsp + rax*2 + 0x2d0]
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 + 0x2d0], xmm2
add rax, 8
cmp rax, 0x100
jne 0x140094f40
mov qword [rsp + 0x48], r14
lea rdx, [r14 + 0x1840]
lea rcx, [rsp + 0xd0]
lea r8, [rsp + 0x4d0]
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 0x14009501f
mov eax, dword [rsp + 0x34]
cmp eax, 0x100
jge 0x1400953e6
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 + 0xd2]
mov qword [rsp + 0x60], rax
lea r12, [rsp + rdx*2 + 0xd0]
mov r13d, 1
lea rbp, [rsp + 0xd0]
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x70], rdx
mov rbx, r12
xor r14d, r14d
xor edi, edi
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x68], r9
jmp 0x1400950bf
mov r9, qword [rsp + 0x68]
add rdi, r9
inc r14
mov rax, qword [rsp + 0x40]
add rbx, 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 r14, r8
je 0x140095010
cmp rdx, r13
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x80], rdx
cmovg r13, rdx
mov rax, qword [rsp + 0x70]
lea rdx, [rdi + rax]
mov r11, rdi
or r11, 1
cmp rdx, r11
mov rsi, r11
cmovg rsi, rdx
mov r10, r14
imul r10, r9
sub rsi, r10
lea rax, [r14 + r8]
lea r8, [0x14039fba0]
movzx r15d, word [r8 + rax*2]
mov r8, rdi
cmp rsi, 7
jbe 0x140095350
mov rax, qword [rsp + 0x40]
imul rax, r14
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, 0xd0
cmp r8, r11
jae 0x140095160
add rax, r12
lea r10, [r8 + r10*2]
add r10, 2
mov r8, rdi
cmp rax, r10
jb 0x140095350
add r13, qword [rsp + 0x38]
and r13, 0xfffffffffffffff8
mov rax, rsi
and rax, 0xfffffffffffffff8
lea r8, [rdi + rax]
movd xmm5, r15d
pshufd xmm5, xmm5, 0
pshufd xmm7, xmm5, 0xf5
xor r10d, r10d
nop word cs:[rax + rax]
movdqu xmm10, xmmword [rbx + 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 [rbx + r10*2], xmm8
add r10, 8
cmp r13, r10
jne 0x140095190
cmp rsi, rax
je 0x140095080
nop dword [rax + rax]
movzx eax, word [r12 + r8*2]
movzx r10d, word [rsp + r8*2 + 0xd0]
lea r11d, [r10 + rax]
lea esi, [r10 + rax]
add esi, 0xfffff2ff
movsx r9d, si
mov r13d, r9d
shr r13d, 0xf
and r13d, r11d
test r9w, r9w
cmovle esi, ecx
or esi, r13d
mov word [rsp + r8*2 + 0xd0], si
sub r10d, eax
add r10d, 0xd01
imul r10d, r15d
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 0x140095350
jmp 0x140095080
xor eax, eax
movdqa xmm3, xmmword [0x14039f8e0]
pxor xmm4, xmm4
nop word cs:[rax + rax]
movdqu xmm5, xmmword [rsp + rax*2 + 0xd0]
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 + 0xd0], xmm5
add rax, 8
cmp rax, 0x100
jne 0x140095400
mov eax, 8
pxor xmm1, xmm1
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rsp + rax*2 + 0x2c0]
movdqu xmm3, xmmword [rsp + rax*2 + 0x2d0]
movdqu xmm4, xmmword [rsp + rax*2 + 0xc0]
psubw xmm2, xmm4
movdqu xmm4, xmmword [rsp + rax*2 + 0xd0]
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 + 0x2c0], xmm2
movdqu xmmword [rsp + rax*2 + 0x2d0], xmm3
add rax, 0x10
cmp rax, 0x108
jne 0x140095530
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 + 0x2d0]
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 + 0x2d0], xmm7
add rax, 8
cmp rax, 0x100
jne 0x1400955f0
lea rax, [rsp + 0x34e]
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 + 0x90], xmm9
add rcx, 8
sub rax, 0xffffffffffffff80
cmp rcx, 0x20
jne 0x1400956f0
movups xmm0, xmmword [rdi + 0x620]
movups xmm1, xmmword [rdi + 0x630]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm1
mov dword [rsp + 0x20], 1
lea rcx, [rsp + 0x2d0]
lea r14, [rsp + 0x90]
mov edx, 0x40
mov r9d, 0x40
mov r8, r14
call fcn.14008f2d0
lea r9, [rsp + 0x2f0]
lea r15, [rsp + 0x4d0]
mov rcx, r15
mov rdx, rdi
mov r8, r14
call fcn.140092290
mov r8d, 0x440
mov rsi, qword [rsp + 0x50]
mov rcx, rsi
mov rdx, r15
call fcn.140098870
xor ecx, ecx
test eax, eax
mov eax, 0xff
cmovne rax, rcx
movd xmm0, eax
not al
movdqu xmm1, xmmword [rdi + 0x1e40]
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movdqa xmm2, xmmword [rsp + 0x2d0]
pand xmm2, xmm0
movzx eax, al
movd xmm3, eax
punpcklbw xmm3, xmm3
pshuflw xmm3, xmm3, 0
pshufd xmm3, xmm3, 0
pand xmm1, xmm3
por xmm1, xmm2
movdqa xmmword [rsp + 0xd0], xmm1
movdqu xmm1, xmmword [rdi + 0x1e50]
pand xmm0, xmmword [rsp + 0x2e0]
pand xmm1, xmm3
por xmm1, xmm0
movdqa xmmword [rsp + 0xe0], xmm1
lea rcx, [rsp + 0xf0]
mov dword [rsp + 0x20], 0
mov edx, 0x20
mov r9d, 0x440
mov r8, rsi
call fcn.14008f2d0
mov dword [rsp + 0x20], 3
lea r8, [rsp + 0xd0]
mov edx, 0x20
mov r9d, 0x40
mov rcx, qword [rsp + 0x58]
call fcn.14008f2d0
mov rcx, qword [rsp + 0xad8]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x140095bf7
movaps xmm6, xmmword [rsp + 0xae0]
movaps xmm7, xmmword [rsp + 0xaf0]
movaps xmm8, xmmword [rsp + 0xb00]
movaps xmm9, xmmword [rsp + 0xb10]
movaps xmm10, xmmword [rsp + 0xb20]
movaps xmm11, xmmword [rsp + 0xb30]
movaps xmm12, xmmword [rsp + 0xb40]
movaps xmm13, xmmword [rsp + 0xb50]
movaps xmm14, xmmword [rsp + 0xb60]
movaps xmm15, xmmword [rsp + 0xb70]
add rsp, 0xb88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14029fd30
int3