Function at 0x14012bb80
Capabilities:
Encode data using xor

Disassembly:
push rbp
xor eax, eax
mov rdx, r8
mov rbp, rsp
push r12
mov r12, r9
push rdi
lea rdi, [rcx + 8]
push rsi
and rdi, 0xfffffffffffffff8
push rbx
mov rbx, rcx
sub rsp, 0xa0
and rsp, 0xfffffffffffffff0
sub rsp, 0x1a0
movaps xmmword [rsp + 0x210], xmm13
pxor xmm13, xmm13
movaps xmmword [rsp + 0x220], xmm14
movaps xmmword [rsp + 0x230], xmm15
pxor xmm15, xmm15
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], 0
movaps xmmword [rsp + 0x1a0], xmm6
movaps xmmword [rsp + 0x1b0], xmm7
movaps xmmword [rsp + 0x1c0], xmm8
movaps xmmword [rsp + 0x1d0], xmm9
movaps xmmword [rsp + 0x1e0], xmm10
movaps xmmword [rsp + 0x1f0], xmm11
movaps xmmword [rsp + 0x200], xmm12
mov qword [rsp + 0x148], 0
movdqa xmm14, xmmword [0x1403dda40]
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov qword [rcx], 0
mov qword [rcx + 0xc0], 0
sub rcx, rdi
add ecx, 0xc8
shr ecx, 3
rep stosq qword [rdi], rax
cmp r9, 0xa7
ja 0x14012c753
jmp 0x14012c7df
movdqu xmm9, xmmword [rdx]
movdqu xmm0, xmmword [rdx + 0x10]
movdqa xmm6, xmm14
lea rsi, [rdx + 0xa8]
movdqu xmm7, xmmword [rdx]
movdqu xmm5, xmmword [rdx + 0x20]
pand xmm0, xmm14
pand xmm9, xmm14
movdqu xmm2, xmmword [rdx + 0x20]
movdqu xmm8, xmmword [rdx + 0x40]
packuswb xmm9, xmm0
movdqu xmm0, xmmword [rdx + 0x10]
psrlw xmm7, 8
pand xmm5, xmm14
psrlw xmm2, 8
pand xmm8, xmm14
movdqu xmm1, xmmword [rdx + 0x50]
movdqu xmm3, xmmword [rdx + 0x60]
psrlw xmm0, 8
movdqu xmm4, xmmword [rdx + 0x70]
packuswb xmm7, xmm0
movdqu xmm0, xmmword [rdx + 0x30]
psrlw xmm1, 8
pand xmm3, xmm14
psrlw xmm4, 8
pand xmm0, xmm14
packuswb xmm5, xmm0
movdqu xmm0, xmmword [rdx + 0x30]
pand xmm6, xmm5
psrlw xmm5, 8
psrlw xmm0, 8
packuswb xmm2, xmm0
movdqu xmm0, xmmword [rdx + 0x50]
pand xmm0, xmm14
packuswb xmm8, xmm0
movdqu xmm0, xmmword [rdx + 0x40]
psrlw xmm0, 8
packuswb xmm0, xmm1
movdqu xmm1, xmmword [rdx + 0x70]
pand xmm1, xmm14
packuswb xmm3, xmm1
movdqu xmm1, xmmword [rdx + 0x60]
psrlw xmm1, 8
packuswb xmm1, xmm4
movdqa xmm4, xmm14
pand xmm4, xmm9
psrlw xmm9, 8
packuswb xmm4, xmm6
packuswb xmm9, xmm5
movdqa xmm6, xmm14
movdqa xmm5, xmm14
pand xmm6, xmm3
pand xmm5, xmm8
psrlw xmm3, 8
psrlw xmm8, 8
packuswb xmm5, xmm6
movdqa xmm6, xmm14
packuswb xmm8, xmm3
movdqa xmm3, xmm14
pand xmm6, xmm2
pand xmm3, xmm7
psrlw xmm2, 8
psrlw xmm7, 8
packuswb xmm3, xmm6
movdqa xmm6, xmm14
packuswb xmm7, xmm2
movdqa xmm2, xmm14
pand xmm6, xmm1
pand xmm2, xmm0
psrlw xmm1, 8
psrlw xmm0, 8
packuswb xmm2, xmm6
movdqa xmm6, xmm14
packuswb xmm0, xmm1
movdqa xmm1, xmm14
pand xmm6, xmm4
pand xmm1, xmm5
psrlw xmm4, 8
psrlw xmm5, 8
packuswb xmm6, xmm1
movdqa xmm1, xmm14
packuswb xmm4, xmm5
movdqa xmm5, xmm14
pand xmm1, xmm2
pand xmm5, xmm3
psrlw xmm2, 8
movdqa xmm11, xmm6
psrlw xmm3, 8
packuswb xmm5, xmm1
movdqa xmm1, xmm14
packuswb xmm3, xmm2
movdqa xmm2, xmm14
pand xmm1, xmm8
pand xmm2, xmm9
psrlw xmm9, 8
packuswb xmm2, xmm1
psrlw xmm8, 8
movdqa xmm1, xmm9
packuswb xmm1, xmm8
movdqa xmm8, xmm14
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmm1, xmm14
pand xmm8, xmm0
pand xmm1, xmm7
psrlw xmm7, 8
psrlw xmm0, 8
movdqa xmm12, xmm7
pxor xmm7, xmm7
packuswb xmm12, xmm0
movdqa xmm0, xmm2
packuswb xmm1, xmm8
punpcklbw xmm0, xmm7
movdqa xmm8, xmm5
movdqa xmm10, xmm7
punpcklbw xmm8, xmm7
movdqa xmm9, xmm0
punpcklbw xmm11, xmm7
punpckhbw xmm6, xmm7
punpckhbw xmm2, xmm7
punpckhbw xmm5, xmm7
psllw xmm8, 8
movdqa xmm7, xmm1
punpcklwd xmm9, xmm13
punpcklbw xmm7, xmm10
punpckhbw xmm1, xmm10
movdqa xmm10, xmm9
movdqa xmm9, xmm8
pslld xmm10, 0x10
punpckhwd xmm0, xmm13
punpcklwd xmm9, xmm13
pslld xmm0, 0x10
punpckhwd xmm8, xmm13
por xmm10, xmm9
movdqa xmm9, xmm7
punpckhwd xmm7, xmm13
punpcklwd xmm9, xmm13
pslld xmm7, 0x18
por xmm8, xmm0
pslld xmm9, 0x18
psllw xmm5, 8
movaps xmmword [rsp + 0xc0], xmm9
movdqa xmm9, xmm11
punpckhwd xmm11, xmm13
movdqa xmm0, xmm5
por xmm11, xmm7
movdqa xmm7, xmm8
movdqa xmm8, xmm2
punpcklwd xmm8, xmm13
punpcklwd xmm0, xmm13
punpcklwd xmm9, xmm13
pslld xmm8, 0x10
punpckhwd xmm2, xmm13
punpckhwd xmm5, xmm13
por xmm8, xmm0
movdqa xmm0, xmm1
punpckhwd xmm1, xmm13
pslld xmm2, 0x10
pslld xmm1, 0x18
punpcklwd xmm0, xmm13
por xmm5, xmm2
pslld xmm0, 0x18
por xmm7, xmm11
por xmm9, xmmword [rsp + 0xc0]
por xmm10, xmm9
movdqa xmm9, xmm6
punpckhwd xmm6, xmm13
por xmm6, xmm1
pxor xmm1, xmm1
punpcklwd xmm9, xmm13
movaps xmmword [rsp + 0xc0], xmm10
por xmm5, xmm6
por xmm0, xmm9
movaps xmmword [rsp + 0x90], xmm5
movdqa xmm5, xmm4
punpckhbw xmm4, xmm1
por xmm8, xmm0
movdqa xmm2, xmm4
punpcklbw xmm5, xmm1
movdqa xmm6, xmm4
punpckhwd xmm2, xmm13
movdqa xmm4, xmm1
movdqa xmm11, xmm5
movaps xmmword [rsp + 0x60], xmm2
movdqa xmm2, xmm3
punpckhbw xmm3, xmm1
punpcklwd xmm11, xmm13
punpcklbw xmm2, xmm1
movdqa xmm9, xmm3
punpckhwd xmm3, xmm13
movaps xmmword [rsp + 0x70], xmm11
movdqa xmm0, xmm2
movaps xmmword [rsp + 0x50], xmm3
punpckhdq xmm11, xmm15
movdqa xmm3, xmmword [rsp + 0xa0]
punpcklwd xmm0, xmm13
psllq xmm11, 0x20
punpckhwd xmm5, xmm13
punpckhwd xmm2, xmm13
punpcklwd xmm6, xmm13
punpcklwd xmm9, xmm13
movaps xmmword [rsp + 0xb0], xmm0
movdqa xmm0, xmm3
punpckhbw xmm3, xmm1
punpcklbw xmm0, xmm1
movdqa xmm10, xmm3
movdqa xmm1, xmm0
punpckhwd xmm10, xmm13
punpckhwd xmm0, xmm13
punpcklwd xmm1, xmm13
movaps xmmword [rsp + 0x40], xmm10
movdqa xmm10, xmm4
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmm1, xmm3
movdqa xmm3, xmm12
punpcklbw xmm3, xmm4
movdqa xmm4, xmm12
punpcklwd xmm1, xmm13
punpckhbw xmm4, xmm10
movdqa xmm12, xmm3
punpckhwd xmm3, xmm13
movdqa xmm10, xmm4
punpckhwd xmm4, xmm13
punpcklwd xmm12, xmm13
movaps xmmword [rsp + 0x20], xmm4
punpcklwd xmm10, xmm13
movdqa xmm4, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x30], xmm12
punpckhdq xmm12, xmm15
punpckhdq xmm4, xmm15
psllq xmm12, 0x38
psllq xmm4, 0x28
por xmm11, xmm4
movdqa xmm4, xmmword [rsp + 0xa0]
punpckhdq xmm4, xmm15
psllq xmm4, 0x30
por xmm4, xmm12
por xmm4, xmm11
movdqa xmm11, xmmword [rsp + 0xc0]
movdqu xmm12, xmmword [rbx + 0x10]
punpckhdq xmm11, xmm15
por xmm4, xmm11
movdqa xmm11, xmm5
punpckhdq xmm5, xmm15
pxor xmm4, xmm12
punpckldq xmm11, xmm15
movdqa xmm12, xmm3
psllq xmm11, 0x20
punpckldq xmm12, xmm15
punpckhdq xmm3, xmm15
movaps xmmword [rsp + 0x80], xmm4
psllq xmm12, 0x38
psllq xmm5, 0x20
movdqa xmm4, xmm2
punpckldq xmm4, xmm15
psllq xmm3, 0x38
punpckhdq xmm2, xmm15
psllq xmm4, 0x28
psllq xmm2, 0x28
por xmm11, xmm4
movdqa xmm4, xmm0
punpckhdq xmm0, xmm15
punpckldq xmm4, xmm15
psllq xmm0, 0x30
por xmm2, xmm5
movdqu xmm5, xmmword [rbx + 0x30]
psllq xmm4, 0x30
por xmm0, xmm3
movdqa xmm3, xmm10
por xmm4, xmm12
por xmm0, xmm2
movdqa xmm2, xmm6
movdqu xmm12, xmmword [rbx + 0x20]
por xmm4, xmm11
movdqa xmm11, xmm7
punpckhdq xmm7, xmm15
por xmm0, xmm7
punpckldq xmm2, xmm15
punpckldq xmm3, xmm15
movdqa xmm7, xmmword [rsp + 0x90]
pxor xmm5, xmm0
movdqa xmm0, xmm9
punpckhdq xmm6, xmm15
punpckldq xmm0, xmm15
psllq xmm2, 0x20
punpckhdq xmm9, xmm15
movups xmmword [rbx + 0x30], xmm5
psllq xmm0, 0x28
punpckhdq xmm10, xmm15
punpckldq xmm11, xmm15
por xmm2, xmm0
movdqa xmm0, xmm1
punpckhdq xmm1, xmm15
punpckldq xmm0, xmm15
psllq xmm3, 0x38
por xmm4, xmm11
psllq xmm6, 0x20
psllq xmm0, 0x30
pxor xmm4, xmm12
movdqa xmm12, xmmword [rsp + 0x60]
psllq xmm10, 0x38
psllq xmm9, 0x28
por xmm0, xmm3
movups xmmword [rbx + 0x20], xmm4
psllq xmm1, 0x30
por xmm9, xmm6
por xmm0, xmm2
movdqu xmm3, xmmword [rbx + 0x40]
por xmm1, xmm10
movdqa xmm2, xmm8
punpckhdq xmm8, xmm15
movdqa xmm10, xmmword [rsp + 0x40]
por xmm1, xmm9
punpckldq xmm2, xmm15
movdqa xmm9, xmmword [rsp + 0x50]
movdqa xmm6, xmmword [rsp + 0x20]
por xmm1, xmm8
movdqu xmm8, xmmword [rbx + 0x50]
por xmm0, xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm15
pxor xmm0, xmm3
movdqa xmm3, xmm6
pxor xmm8, xmm1
movdqa xmm1, xmm9
punpckldq xmm3, xmm15
movups xmmword [rbx + 0x40], xmm0
punpckldq xmm1, xmm15
psllq xmm2, 0x20
punpckhdq xmm6, xmm15
movups xmmword [rbx + 0x50], xmm8
psllq xmm1, 0x28
psllq xmm3, 0x38
por xmm2, xmm1
psllq xmm6, 0x38
movdqa xmm1, xmm10
punpckldq xmm1, xmm15
psllq xmm1, 0x30
por xmm1, xmm3
movdqu xmm3, xmmword [rbx + 0x60]
por xmm1, xmm2
movdqa xmm2, xmm7
punpckhdq xmm7, xmm15
punpckldq xmm2, xmm15
por xmm1, xmm2
movdqa xmm2, xmm12
pxor xmm1, xmm3
movdqa xmm3, xmm9
punpckhdq xmm2, xmm15
punpckhdq xmm3, xmm15
psllq xmm2, 0x20
movups xmmword [rbx + 0x60], xmm1
psllq xmm3, 0x28
por xmm3, xmm2
movdqa xmm2, xmm10
punpckhdq xmm2, xmm15
psllq xmm2, 0x30
por xmm2, xmm6
movdqa xmm6, xmmword [rsp + 0xb0]
por xmm2, xmm3
movdqu xmm3, xmmword [rbx + 0x70]
por xmm2, xmm7
punpckldq xmm6, xmm15
movdqa xmm7, xmmword [rsp + 0x30]
pxor xmm2, xmm3
movdqa xmm3, xmmword [rsp + 0x70]
psllq xmm6, 0x28
punpckldq xmm7, xmm15
movups xmmword [rbx + 0x70], xmm2
punpckldq xmm3, xmm15
psllq xmm7, 0x38
psllq xmm3, 0x20
por xmm3, xmm6
movdqa xmm6, xmmword [rsp + 0xa0]
punpckldq xmm6, xmm15
psllq xmm6, 0x30
por xmm6, xmm7
movdqa xmm7, xmmword [rsp + 0x80]
por xmm3, xmm6
movdqa xmm6, xmmword [rsp + 0xc0]
movups xmmword [rbx + 0x10], xmm7
punpckldq xmm6, xmm15
por xmm3, xmm6
movdqu xmm6, xmmword [rbx]
pxor xmm3, xmm6
movups xmmword [rbx], xmm3
movzx eax, byte [rdx + 0x81]
movzx ecx, byte [rdx + 0x82]
shl rax, 8
shl rcx, 0x10
or rax, rcx
movzx ecx, byte [rdx + 0x80]
or rax, rcx
movzx ecx, byte [rdx + 0x83]
shl rcx, 0x18
or rax, rcx
movzx ecx, byte [rdx + 0x84]
shl rcx, 0x20
or rcx, rax
movzx eax, byte [rdx + 0x85]
shl rax, 0x28
or rax, rcx
movzx ecx, byte [rdx + 0x86]
shl rcx, 0x30
or rcx, rax
movzx eax, byte [rdx + 0x87]
shl rax, 0x38
or rax, rcx
xor qword [rbx + 0x80], rax
movzx eax, byte [rdx + 0x89]
movzx ecx, byte [rdx + 0x8a]
shl rax, 8
shl rcx, 0x10
or rax, rcx
movzx ecx, byte [rdx + 0x88]
or rax, rcx
movzx ecx, byte [rdx + 0x8b]
shl rcx, 0x18
or rax, rcx
movzx ecx, byte [rdx + 0x8c]
shl rcx, 0x20
or rcx, rax
movzx eax, byte [rdx + 0x8d]
shl rax, 0x28
or rax, rcx
movzx ecx, byte [rdx + 0x8e]
shl rcx, 0x30
or rcx, rax
movzx eax, byte [rdx + 0x8f]
shl rax, 0x38
or rax, rcx
xor qword [rbx + 0x88], rax
movzx eax, byte [rdx + 0x91]
movzx ecx, byte [rdx + 0x92]
shl rax, 8
shl rcx, 0x10
or rax, rcx
movzx ecx, byte [rdx + 0x90]
or rax, rcx
movzx ecx, byte [rdx + 0x93]
shl rcx, 0x18
or rax, rcx
movzx ecx, byte [rdx + 0x94]
shl rcx, 0x20
or rcx, rax
movzx eax, byte [rdx + 0x95]
shl rax, 0x28
or rax, rcx
movzx ecx, byte [rdx + 0x96]
shl rcx, 0x30
or rcx, rax
movzx eax, byte [rdx + 0x97]
shl rax, 0x38
or rax, rcx
xor qword [rbx + 0x90], rax
movzx eax, byte [rdx + 0x99]
movzx ecx, byte [rdx + 0x9a]
shl rax, 8
shl rcx, 0x10
or rax, rcx
movzx ecx, byte [rdx + 0x98]
or rax, rcx
movzx ecx, byte [rdx + 0x9b]
shl rcx, 0x18
or rax, rcx
movzx ecx, byte [rdx + 0x9c]
shl rcx, 0x20
or rcx, rax
movzx eax, byte [rdx + 0x9d]
shl rax, 0x28
or rax, rcx
movzx ecx, byte [rdx + 0x9e]
shl rcx, 0x30
or rcx, rax
movzx eax, byte [rdx + 0x9f]
shl rax, 0x38
or rax, rcx
xor qword [rbx + 0x98], rax
movzx eax, byte [rdx + 0xa1]
movzx ecx, byte [rdx + 0xa2]
shl rax, 8
shl rcx, 0x10
or rax, rcx
movzx ecx, byte [rdx + 0xa0]
or rax, rcx
movzx ecx, byte [rdx + 0xa3]
shl rcx, 0x18
or rax, rcx
movzx ecx, byte [rdx + 0xa4]
shl rcx, 0x20
or rcx, rax
movzx eax, byte [rdx + 0xa5]
shl rax, 0x28
or rax, rcx
movzx ecx, byte [rdx + 0xa6]
shl rcx, 0x30
or rcx, rax
movzx eax, byte [rdx + 0xa7]
shl rax, 0x38
or rax, rcx
xor qword [rbx + 0xa0], rax
mov rcx, rbx
sub r12, 0xa8
call fcn.14004d560
mov rdx, rsi
cmp r12, 0xa7
jbe 0x14012c7df
mov rax, rdx
not rax
add rax, rbx
cmp rax, 0x7e
ja 0x14012bd80
mov r9, rbx
mov rax, rdx
lea rsi, [rdx + 0xa8]
nop dword [rax + rax]
movzx ecx, byte [rax + 1]
movzx edx, byte [rax + 2]
add rax, 8
movzx r8d, byte [rax - 2]
shl rdx, 0x10
shl rcx, 8
or rcx, rdx
movzx edx, byte [rax - 8]
shl r8, 0x30
or rcx, rdx
movzx edx, byte [rax - 5]
shl rdx, 0x18
or rdx, rcx
movzx ecx, byte [rax - 4]
shl rcx, 0x20
or rcx, rdx
movzx edx, byte [rax - 3]
shl rdx, 0x28
or rdx, rcx
movzx ecx, byte [rax - 1]
or r8, rdx
shl rcx, 0x38
or rcx, r8
xor qword [r9], rcx
add r9, 8
cmp rsi, rax
jne 0x14012c778
jmp 0x14012c734
test r12, r12
je 0x14012c821
mov r9d, r12d
lea rdi, [rsp + 0xd0]
mov rsi, rdx
cmp r12d, 8
jb 0x14012c801
mov ecx, r12d
shr ecx, 3
rep movsq qword [rdi], qword [rsi]
xor eax, eax
test r9b, 4
jne 0x14012d2b2
test r9b, 2
jne 0x14012d29a
and r9d, 1
jne 0x14012d28e
mov byte [rsp + r12 + 0xd0], 0x1f
movdqa xmm9, xmm14
movdqa xmm8, xmmword [rsp + 0xd0]
movdqa xmm0, xmmword [rsp + 0xe0]
movdqa xmm7, xmmword [rsp + 0xd0]
pand xmm8, xmm14
movdqa xmm3, xmmword [rsp + 0xf0]
movdqa xmm6, xmmword [rsp + 0xf0]
pand xmm0, xmm14
psrlw xmm7, 8
movdqa xmm1, xmmword [rsp + 0x120]
movdqa xmm4, xmmword [rsp + 0x110]
packuswb xmm8, xmm0
pand xmm3, xmm14
movdqa xmm0, xmmword [rsp + 0xe0]
movdqa xmm2, xmmword [rsp + 0x130]
psrlw xmm6, 8
pand xmm1, xmm14
movdqa xmm5, xmmword [rsp + 0x130]
movzx eax, byte [rsp + 0x177]
psrlw xmm0, 8
psrlw xmm4, 8
pand xmm2, xmm14
packuswb xmm7, xmm0
psrlw xmm5, 8
or eax, 0xffffff80
movdqa xmm0, xmmword [rsp + 0x100]
pand xmm0, xmm14
packuswb xmm3, xmm0
movdqa xmm0, xmmword [rsp + 0x100]
pand xmm9, xmm3
psrlw xmm3, 8
psrlw xmm0, 8
packuswb xmm6, xmm0
movdqa xmm0, xmmword [rsp + 0x110]
pand xmm0, xmm14
packuswb xmm0, xmm1
movdqa xmm1, xmmword [rsp + 0x120]
psrlw xmm1, 8
packuswb xmm4, xmm1
movdqa xmm1, xmmword [rsp + 0x140]
pand xmm1, xmm14
packuswb xmm2, xmm1
movdqa xmm1, xmmword [rsp + 0x140]
psrlw xmm1, 8
packuswb xmm5, xmm1
movdqa xmm1, xmm14
pand xmm1, xmm8
psrlw xmm8, 8
packuswb xmm8, xmm3
packuswb xmm1, xmm9
movdqa xmm3, xmm14
movdqa xmm9, xmm14
pand xmm3, xmm0
pand xmm9, xmm2
psrlw xmm0, 8
psrlw xmm2, 8
packuswb xmm3, xmm9
movdqa xmm9, xmm14
packuswb xmm0, xmm2
movdqa xmm2, xmm14
pand xmm9, xmm6
pand xmm2, xmm7
psrlw xmm7, 8
psrlw xmm6, 8
movdqa xmm10, xmm7
movdqa xmm7, xmm14
packuswb xmm10, xmm6
movdqa xmm6, xmm14
pand xmm7, xmm5
pand xmm6, xmm4
psrlw xmm5, 8
packuswb xmm2, xmm9
psrlw xmm4, 8
movdqa xmm9, xmm14
packuswb xmm6, xmm7
packuswb xmm4, xmm5
movdqa xmm5, xmm14
pand xmm9, xmm1
pand xmm5, xmm3
psrlw xmm1, 8
movdqa xmm7, xmm14
psrlw xmm3, 8
packuswb xmm9, xmm5
movdqa xmm5, xmm14
packuswb xmm1, xmm3
movdqa xmm3, xmm14
pand xmm5, xmm2
pand xmm3, xmm6
psrlw xmm2, 8
pand xmm7, xmm8
packuswb xmm5, xmm3
psrlw xmm6, 8
movdqa xmm3, xmm14
pand xmm3, xmm0
packuswb xmm2, xmm6
movdqa xmm6, xmm14
packuswb xmm7, xmm3
movdqa xmm3, xmm8
pand xmm6, xmm10
psrlw xmm0, 8
psrlw xmm3, 8
movdqa xmm11, xmm5
packuswb xmm3, xmm0
psrlw xmm10, 8
movdqa xmm0, xmm14
pand xmm0, xmm4
movdqa xmm15, xmm10
movdqa xmm14, xmm9
psrlw xmm4, 8
packuswb xmm6, xmm0
pxor xmm0, xmm0
packuswb xmm15, xmm4
pxor xmm4, xmm4
movdqa xmm10, xmm6
punpckhbw xmm5, xmm4
punpcklbw xmm11, xmm4
punpcklbw xmm10, xmm4
movdqa xmm8, xmm5
movdqa xmm5, xmm7
punpcklbw xmm14, xmm4
punpcklbw xmm5, xmm4
psllw xmm11, 8
punpckhbw xmm7, xmm4
movdqa xmm13, xmm5
movdqa xmm12, xmm11
punpckhwd xmm5, xmm0
punpcklwd xmm13, xmm0
punpcklwd xmm12, xmm0
punpckhwd xmm11, xmm0
pslld xmm13, 0x10
pslld xmm5, 0x10
punpckhbw xmm6, xmm4
por xmm13, xmm12
movdqa xmm12, xmm10
punpckhwd xmm10, xmm0
punpcklwd xmm12, xmm0
por xmm5, xmm11
punpckhbw xmm9, xmm4
pslld xmm12, 0x18
pslld xmm10, 0x18
movaps xmmword [rsp + 0xc0], xmm12
movdqa xmm12, xmm14
punpckhwd xmm14, xmm0
por xmm10, xmm14
psllw xmm8, 8
punpcklwd xmm12, xmm0
por xmm5, xmm10
movdqa xmm10, xmm7
movdqa xmm11, xmm8
punpcklwd xmm10, xmm0
punpcklwd xmm11, xmm0
punpckhwd xmm7, xmm0
pslld xmm10, 0x10
pslld xmm7, 0x10
punpckhwd xmm8, xmm0
por xmm12, xmmword [rsp + 0xc0]
por xmm10, xmm11
movdqa xmm11, xmm6
punpckhwd xmm6, xmm0
por xmm7, xmm8
punpcklwd xmm11, xmm0
por xmm13, xmm12
pslld xmm6, 0x18
movdqa xmm12, xmm9
punpckhwd xmm9, xmm0
punpcklwd xmm12, xmm0
movaps xmmword [rsp + 0xc0], xmm13
movdqa xmm8, xmm2
por xmm6, xmm9
pslld xmm11, 0x18
punpcklbw xmm8, xmm4
por xmm7, xmm6
movdqa xmm6, xmm1
por xmm11, xmm12
punpcklbw xmm6, xmm4
movaps xmmword [rsp + 0x90], xmm7
movdqa xmm7, xmm3
punpckhbw xmm3, xmm4
movdqa xmm12, xmm6
punpcklbw xmm7, xmm4
movdqa xmm13, xmm3
punpcklwd xmm12, xmm0
punpckhwd xmm3, xmm0
punpcklwd xmm13, xmm0
movaps xmmword [rsp + 0x60], xmm3
punpckhbw xmm1, xmm4
punpckhbw xmm2, xmm4
punpckhwd xmm6, xmm0
movdqa xmm3, xmm15
por xmm10, xmm11
movdqa xmm9, xmm1
movaps xmmword [rsp + 0xb0], xmm12
movdqa xmm12, xmm7
punpcklbw xmm3, xmm4
movdqa xmm14, xmm8
punpcklwd xmm12, xmm0
movdqa xmm11, xmm2
punpcklwd xmm9, xmm0
punpckhwd xmm1, xmm0
punpcklwd xmm14, xmm0
punpckhwd xmm8, xmm0
movaps xmmword [rsp + 0xa0], xmm12
movdqa xmm12, xmm13
movdqa xmm13, xmm15
punpcklwd xmm11, xmm0
movaps xmmword [rsp + 0x70], xmm14
punpckhbw xmm13, xmm4
movdqa xmm4, xmm3
punpckhwd xmm2, xmm0
punpcklwd xmm4, xmm0
punpckhwd xmm7, xmm0
punpckhwd xmm3, xmm0
movdqa xmm15, xmm4
movdqa xmm4, xmm13
punpckhwd xmm13, xmm0
movaps xmmword [rsp + 0x40], xmm13
punpcklwd xmm4, xmm0
pxor xmm0, xmm0
movdqa xmm13, xmmword [rsp + 0xb0]
punpckhdq xmm14, xmm0
movaps xmmword [rsp + 0x50], xmm15
punpckhdq xmm13, xmm0
psllq xmm14, 0x28
psllq xmm13, 0x20
por xmm14, xmm13
movdqa xmm13, xmm15
movdqa xmm15, xmmword [rsp + 0xa0]
punpckhdq xmm13, xmm0
punpckhdq xmm15, xmm0
psllq xmm13, 0x38
psllq xmm15, 0x30
por xmm13, xmm15
movdqa xmm15, xmm7
punpckhdq xmm7, xmm0
por xmm13, xmm14
psllq xmm7, 0x30
punpckldq xmm15, xmm0
movdqa xmm14, xmmword [rsp + 0xc0]
psllq xmm15, 0x30
punpckhdq xmm14, xmm0
por xmm13, xmm14
movdqu xmm14, xmmword [rbx + 0x10]
pxor xmm13, xmm14
movdqa xmm14, xmm8
punpckhdq xmm8, xmm0
movaps xmmword [rsp + 0x80], xmm13
movdqa xmm13, xmm6
punpckldq xmm14, xmm0
punpckhdq xmm6, xmm0
psllq xmm14, 0x28
psllq xmm8, 0x28
punpckldq xmm13, xmm0
movzx edx, byte [rsp + 0x152]
psllq xmm13, 0x20
psllq xmm6, 0x20
movzx ecx, byte [rsp + 0x151]
por xmm14, xmm13
movdqa xmm13, xmm3
punpckhdq xmm3, xmm0
shl rdx, 0x10
punpckldq xmm13, xmm0
psllq xmm3, 0x38
por xmm6, xmm8
shl rcx, 8
por xmm3, xmm7
psllq xmm13, 0x38
movdqu xmm7, xmmword [rbx + 0x30]
or rdx, rcx
por xmm13, xmm15
por xmm3, xmm6
movdqa xmm6, xmm4
movdqu xmm8, xmmword [rbx + 0x50]
punpckldq xmm6, xmm0
por xmm13, xmm14
movdqa xmm14, xmm5
movdqa xmm15, xmmword [rsp + 0x60]
punpckhdq xmm5, xmm0
punpckhdq xmm4, xmm0
punpckldq xmm14, xmm0
movzx ecx, byte [rsp + 0x150]
por xmm3, xmm5
movdqa xmm5, xmm6
movdqa xmm6, xmm12
punpckldq xmm6, xmm0
pxor xmm7, xmm3
punpckhdq xmm12, xmm0
or rdx, rcx
movdqa xmm3, xmm6
movdqa xmm6, xmm11
punpckhdq xmm11, xmm0
movzx ecx, byte [rsp + 0x153]
punpckldq xmm6, xmm0
psllq xmm3, 0x30
movups xmmword [rbx + 0x30], xmm7
por xmm13, xmm14
psllq xmm5, 0x38
psllq xmm11, 0x28
shl rcx, 0x18
movdqu xmm14, xmmword [rbx + 0x20]
por xmm5, xmm3
psllq xmm12, 0x30
movdqa xmm3, xmm6
or rdx, rcx
movdqa xmm6, xmm9
psllq xmm3, 0x28
punpckhdq xmm9, xmm0
movzx ecx, byte [rsp + 0x154]
punpckldq xmm6, xmm0
psllq xmm9, 0x20
pxor xmm13, xmm14
psllq xmm6, 0x20
psllq xmm4, 0x38
por xmm9, xmm11
movdqa xmm11, xmmword [rsp + 0x40]
por xmm3, xmm6
movdqa xmm6, xmm10
por xmm4, xmm12
shl rcx, 0x20
punpckldq xmm6, xmm0
por xmm3, xmm5
punpckhdq xmm10, xmm0
or rcx, rdx
por xmm3, xmm6
por xmm4, xmm9
movdqu xmm6, xmmword [rbx + 0x40]
movzx edx, byte [rsp + 0x155]
por xmm4, xmm10
movdqa xmm10, xmm15
movups xmmword [rbx + 0x20], xmm13
pxor xmm6, xmm3
pxor xmm8, xmm4
movdqa xmm3, xmm1
shl rdx, 0x28
movdqa xmm4, xmm2
punpckldq xmm3, xmm0
punpckldq xmm10, xmm0
or rdx, rcx
punpckldq xmm4, xmm0
punpckhdq xmm2, xmm0
punpckhdq xmm1, xmm0
movups xmmword [rbx + 0x40], xmm6
psllq xmm3, 0x20
psllq xmm4, 0x28
movdqa xmm5, xmm10
movzx ecx, byte [rsp + 0x156]
por xmm4, xmm3
movdqa xmm3, xmm11
movdqu xmm10, xmmword [rbx + 0x60]
movups xmmword [rbx + 0x50], xmm8
punpckldq xmm3, xmm0
psllq xmm5, 0x30
shl rcx, 0x30
psllq xmm3, 0x38
psllq xmm2, 0x28
or rcx, rdx
movzx edx, byte [rsp + 0x157]
por xmm3, xmm5
psllq xmm1, 0x20
movdqa xmm5, xmmword [rsp + 0x90]
por xmm3, xmm4
por xmm1, xmm2
movdqa xmm2, xmm11
shl rdx, 0x38
movdqa xmm4, xmm5
punpckhdq xmm2, xmm0
punpckhdq xmm5, xmm0
or rdx, rcx
punpckldq xmm4, xmm0
psllq xmm2, 0x38
por xmm3, xmm4
movdqa xmm4, xmm15
punpckhdq xmm4, xmm0
pxor xmm3, xmm10
psllq xmm4, 0x30
movups xmmword [rbx + 0x60], xmm3
por xmm2, xmm4
por xmm1, xmm2
movdqa xmm2, xmm5
movdqa xmm5, xmmword [rsp + 0xb0]
por xmm2, xmm1
movdqu xmm1, xmmword [rbx + 0x70]
punpckldq xmm5, xmm0
pxor xmm2, xmm1
movdqa xmm1, xmmword [rsp + 0x70]
psllq xmm5, 0x20
movups xmmword [rbx + 0x70], xmm2
punpckldq xmm1, xmm0
psllq xmm1, 0x28
por xmm1, xmm5
movdqa xmm5, xmmword [rsp + 0xa0]
movdqa xmm4, xmm1
movdqa xmm1, xmmword [rsp + 0x50]
punpckldq xmm5, xmm0
punpckldq xmm1, xmm0
psllq xmm5, 0x30
psllq xmm1, 0x38
por xmm1, xmm5
movdqa xmm5, xmmword [rsp + 0x80]
por xmm1, xmm4
movdqa xmm4, xmmword [rsp + 0xc0]
movups xmmword [rbx + 0x10], xmm5
punpckldq xmm4, xmm0
por xmm1, xmm4
movdqu xmm4, xmmword [rbx]
movdqa xmm0, xmm1
pxor xmm0, xmm4
movups xmmword [rbx], xmm0
xor qword [rbx + 0x80], rdx
movzx edx, byte [rsp + 0x159]
movzx ecx, byte [rsp + 0x15a]
shl rdx, 8
shl rcx, 0x10
or rdx, rcx
movzx ecx, byte [rsp + 0x158]
or rdx, rcx
movzx ecx, byte [rsp + 0x15b]
shl rcx, 0x18
or rdx, rcx
movzx ecx, byte [rsp + 0x15c]
shl rcx, 0x20
or rcx, rdx
movzx edx, byte [rsp + 0x15d]
shl rdx, 0x28
or rdx, rcx
movzx ecx, byte [rsp + 0x15e]
shl rcx, 0x30
or rcx, rdx
movzx edx, byte [rsp + 0x15f]
shl rdx, 0x38
or rdx, rcx
movzx ecx, byte [rsp + 0x161]
xor qword [rbx + 0x88], rdx
movzx edx, byte [rsp + 0x162]
shl rdx, 0x10
shl rcx, 8
or rdx, rcx
movzx ecx, byte [rsp + 0x160]
or rdx, rcx
movzx ecx, byte [rsp + 0x163]
shl rcx, 0x18
or rdx, rcx
movzx ecx, byte [rsp + 0x164]
shl rcx, 0x20
or rcx, rdx
movzx edx, byte [rsp + 0x165]
shl rdx, 0x28
or rdx, rcx
movzx ecx, byte [rsp + 0x166]
shl rcx, 0x30
or rcx, rdx
movzx edx, byte [rsp + 0x167]
shl rdx, 0x38
or rdx, rcx
movzx ecx, byte [rsp + 0x16a]
xor qword [rbx + 0x90], rdx
movzx edx, byte [rsp + 0x169]
shl rcx, 0x10
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rsp + 0x168]
or rdx, rcx
movzx ecx, byte [rsp + 0x16b]
shl rcx, 0x18
or rdx, rcx
movzx ecx, byte [rsp + 0x16c]
shl rcx, 0x20
or rcx, rdx
movzx edx, byte [rsp + 0x16d]
shl rdx, 0x28
or rdx, rcx
movzx ecx, byte [rsp + 0x16e]
shl rcx, 0x30
or rcx, rdx
movzx edx, byte [rsp + 0x16f]
shl rdx, 0x38
or rdx, rcx
xor qword [rbx + 0x98], rdx
movzx edx, byte [rsp + 0x172]
movzx ecx, byte [rsp + 0x171]
movaps xmm6, xmmword [rsp + 0x1a0]
shl rdx, 0x10
movaps xmm7, xmmword [rsp + 0x1b0]
movaps xmm8, xmmword [rsp + 0x1c0]
movaps xmm9, xmmword [rsp + 0x1d0]
shl rcx, 8
movaps xmm10, xmmword [rsp + 0x1e0]
movaps xmm11, xmmword [rsp + 0x1f0]
or rdx, rcx
movzx ecx, byte [rsp + 0x170]
movaps xmm12, xmmword [rsp + 0x200]
movaps xmm13, xmmword [rsp + 0x210]
movaps xmm14, xmmword [rsp + 0x220]
or rdx, rcx
shl rax, 0x38
movzx ecx, byte [rsp + 0x173]
movaps xmm15, xmmword [rsp + 0x230]
shl rcx, 0x18
or rcx, rdx
movzx edx, byte [rsp + 0x174]
shl rdx, 0x20
or rdx, rcx
movzx ecx, byte [rsp + 0x175]
shl rcx, 0x28
or rcx, rdx
movzx edx, byte [rsp + 0x176]
shl rdx, 0x30
or rdx, rcx
or rax, rdx
xor qword [rbx + 0xa0], rax
lea rsp, [rbp - 0x20]
pop rbx
pop rsi
pop rdi
pop r12
pop rbp
ret
movzx edx, byte [rsi + rax]
mov byte [rdi + rax], dl
jmp 0x14012c821
movzx ecx, word [rsi + rax]
mov word [rdi + rax], cx
add rax, 2
and r9d, 1
je 0x14012c821
jmp 0x14012d28e
mov eax, dword [rsi]
mov dword [rdi], eax
mov eax, 4
test r9b, 2
je 0x14012c817
jmp 0x14012d29a