Function at 0x140355820
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0x40], xmm15
movdqa xmmword [rbp + 0x30], xmm14
movaps xmmword [rbp + 0x20], xmm13
movdqa xmmword [rbp + 0x10], xmm12
movdqa xmmword [rbp], xmm11
movdqa xmmword [rbp - 0x10], xmm10
movdqa xmmword [rbp - 0x20], xmm9
movdqa xmmword [rbp - 0x30], xmm8
movdqa xmmword [rbp - 0x40], xmm7
movaps xmmword [rbp - 0x50], xmm6
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
movzx eax, byte [0x14065c1e1]
mov ecx, 0x24
mov edx, 4
call fcn.140304090
test rax, rax
je 0x140355fe5
mov r14, rax
movabs rax, 0x1010100000000
mov qword [r14], rax
mov word [r14 + 8], 0
mov dword [r14 + 0xc], 0
mov byte [r14 + 0x10], 2
mov dword [r14 + 0x11], 0x1010101
mov byte [r14 + 0x15], 1
mov dword [r14 + 0x18], 0
mov byte [r14 + 0x1c], 3
mov dword [r14 + 0x1d], 0x1010101
mov byte [r14 + 0x21], 1
test bl, bl
je 0x140355917
movzx ecx, bl
cmp bl, 0x64
mov eax, 0x64
cmovb eax, ecx
cmp al, 0x32
jae 0x14035591d
test al, al
je 0x140355fc7
movzx ecx, al
mov ax, 0x1388
xor edx, edx
div cx
movzx ebx, ax
jmp 0x140355929
mov al, 1
cmp al, 0x32
jb 0x1403558fe
add al, al
movzx eax, al
mov ebx, 0xc8
sub ebx, eax
movzx eax, byte [0x14065c1e1]
mov ecx, 0x80
mov edx, 1
call fcn.140304090
test rax, rax
je 0x140355ff4
movups xmm0, xmmword [0x1404ed368]
movups xmmword [rax + 0x30], xmm0
movups xmm0, xmmword [0x1404ed358]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x1404ed348]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x1404ed338]
movups xmmword [rax], xmm0
movups xmm0, xmmword [0x1404ed378]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [0x1404ed388]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [0x1404ed398]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [0x1404ed3a8]
movups xmmword [rax + 0x70], xmm0
movd xmm0, ebx
pshufd xmm0, xmm0, 0
xor ecx, ecx
pshufd xmm1, xmm0, 0xf5
movdqa xmm4, xmmword [str.2222]
movdqa xmm3, xmmword [0x1404ebf10]
movdqa xmm13, xmmword [0x1404ebf20]
movdqa xmm6, xmmword [0x1404e5d90]
movdqa xmm5, xmmword [0x1404e7670]
nop dword [rax + rax]
movdqu xmm10, xmmword [rax + rcx]
movdqa xmm12, xmm10
pxor xmm2, xmm2
punpcklbw xmm12, xmm2
movdqa xmm8, xmm12
punpckhwd xmm8, xmm2
punpcklwd xmm12, xmm2
punpckhbw xmm10, xmm2
movdqa xmm7, xmm13
movdqa xmm13, xmm10
punpckhwd xmm13, xmm2
punpcklwd xmm10, xmm2
movdqa xmm9, xmm0
pmuludq xmm9, xmm10
pshufd xmm9, xmm9, 0xe8
pshufd xmm10, xmm10, 0xf5
pmuludq xmm10, xmm1
pshufd xmm10, xmm10, 0xe8
punpckldq xmm9, xmm10
movdqa xmm10, xmm0
pmuludq xmm10, xmm13
pshufd xmm11, xmm10, 0xe8
pshufd xmm10, xmm13, 0xf5
pmuludq xmm10, xmm1
pshufd xmm10, xmm10, 0xe8
punpckldq xmm11, xmm10
movdqa xmm10, xmm0
pmuludq xmm10, xmm12
pshufd xmm10, xmm10, 0xe8
pshufd xmm12, xmm12, 0xf5
pmuludq xmm12, xmm1
pshufd xmm12, xmm12, 0xe8
punpckldq xmm10, xmm12
movdqa xmm12, xmm0
pmuludq xmm12, xmm8
pshufd xmm13, xmm12, 0xe8
pshufd xmm8, xmm8, 0xf5
pmuludq xmm8, xmm1
pshufd xmm8, xmm8, 0xe8
punpckldq xmm13, xmm8
movdqa xmm15, xmm13
paddd xmm15, xmm4
movdqa xmm14, xmm10
paddd xmm14, xmm4
movdqa xmm12, xmm11
paddd xmm12, xmm4
movdqa xmm8, xmm9
paddd xmm8, xmm4
pshufd xmm2, xmm8, 0xf5
pmuludq xmm8, xmm3
pshufd xmm8, xmm8, 0xed
pmuludq xmm2, xmm3
pshufd xmm2, xmm2, 0xed
punpckldq xmm8, xmm2
pshufd xmm2, xmm12, 0xf5
pmuludq xmm12, xmm3
pshufd xmm12, xmm12, 0xed
pmuludq xmm2, xmm3
pshufd xmm2, xmm2, 0xed
punpckldq xmm12, xmm2
pshufd xmm2, xmm14, 0xf5
pmuludq xmm14, xmm3
pshufd xmm14, xmm14, 0xed
pmuludq xmm2, xmm3
pshufd xmm2, xmm2, 0xed
punpckldq xmm14, xmm2
pshufd xmm2, xmm15, 0xf5
pmuludq xmm15, xmm3
pshufd xmm15, xmm15, 0xed
pmuludq xmm2, xmm3
pshufd xmm2, xmm2, 0xed
punpckldq xmm15, xmm2
pxor xmm11, xmm5
movdqa xmm2, xmm7
pcmpgtd xmm2, xmm11
pxor xmm9, xmm5
movdqa xmm11, xmm7
pcmpgtd xmm11, xmm9
packssdw xmm11, xmm2
pxor xmm13, xmm5
movdqa xmm2, xmm7
pcmpgtd xmm2, xmm13
movdqa xmm13, xmm7
pxor xmm10, xmm5
movdqa xmm9, xmm7
pcmpgtd xmm9, xmm10
packssdw xmm9, xmm2
psrld xmm14, 5
psrld xmm15, 5
packsswb xmm9, xmm11
movdqa xmm2, xmm6
pcmpgtd xmm2, xmm15
pand xmm15, xmm2
pandn xmm2, xmm6
por xmm2, xmm15
movdqa xmm10, xmm6
pcmpgtd xmm10, xmm14
pand xmm14, xmm10
pandn xmm10, xmm6
por xmm10, xmm14
psrld xmm8, 5
psrld xmm12, 5
packuswb xmm10, xmm2
movdqa xmm2, xmm6
pcmpgtd xmm2, xmm12
pand xmm12, xmm2
pandn xmm2, xmm6
por xmm2, xmm12
movdqa xmm11, xmm6
pcmpgtd xmm11, xmm8
pand xmm8, xmm11
pandn xmm11, xmm6
por xmm11, xmm8
packuswb xmm11, xmm2
packuswb xmm10, xmm11
movdqa xmm2, xmm9
pandn xmm2, xmm10
psubb xmm2, xmm9
movdqu xmmword [rax + rcx], xmm2
add rcx, 0x10
cmp rcx, 0x40
jne 0x1403559e0
mov ecx, 0x40
nop word cs:[rax + rax]
movdqu xmm2, xmmword [rax + rcx]
movdqa xmm12, xmm2
pxor xmm5, xmm5
punpcklbw xmm12, xmm5
movdqa xmm8, xmm12
punpckhwd xmm8, xmm5
punpcklwd xmm12, xmm5
punpckhbw xmm2, xmm5
movdqa xmm10, xmm2
punpckhwd xmm10, xmm5
punpcklwd xmm2, xmm5
movdqa xmm9, xmm0
pmuludq xmm9, xmm2
pshufd xmm9, xmm9, 0xe8
pshufd xmm2, xmm2, 0xf5
pmuludq xmm2, xmm1
pshufd xmm2, xmm2, 0xe8
punpckldq xmm9, xmm2
movdqa xmm2, xmm0
pmuludq xmm2, xmm10
pshufd xmm11, xmm2, 0xe8
pshufd xmm2, xmm10, 0xf5
pmuludq xmm2, xmm1
pshufd xmm2, xmm2, 0xe8
punpckldq xmm11, xmm2
movdqa xmm2, xmm0
pmuludq xmm2, xmm12
pshufd xmm10, xmm2, 0xe8
pshufd xmm2, xmm12, 0xf5
pmuludq xmm2, xmm1
pshufd xmm2, xmm2, 0xe8
punpckldq xmm10, xmm2
movdqa xmm2, xmm0
pmuludq xmm2, xmm8
pshufd xmm13, xmm2, 0xe8
pshufd xmm2, xmm8, 0xf5
pmuludq xmm2, xmm1
pshufd xmm2, xmm2, 0xe8
punpckldq xmm13, xmm2
movdqa xmm15, xmm13
paddd xmm15, xmm4
movdqa xmm2, xmm10
paddd xmm2, xmm4
movdqa xmm12, xmm11
paddd xmm12, xmm4
movdqa xmm8, xmm9
paddd xmm8, xmm4
pshufd xmm14, xmm8, 0xf5
pmuludq xmm8, xmm3
pshufd xmm8, xmm8, 0xed
pmuludq xmm14, xmm3
pshufd xmm14, xmm14, 0xed
punpckldq xmm8, xmm14
pshufd xmm14, xmm12, 0xf5
pmuludq xmm12, xmm3
pshufd xmm12, xmm12, 0xed
pmuludq xmm14, xmm3
pshufd xmm14, xmm14, 0xed
punpckldq xmm12, xmm14
pshufd xmm4, xmm2, 0xf5
pmuludq xmm2, xmm3
pshufd xmm14, xmm2, 0xed
pmuludq xmm4, xmm3
pshufd xmm2, xmm4, 0xed
punpckldq xmm14, xmm2
pshufd xmm2, xmm15, 0xf5
pmuludq xmm15, xmm3
pshufd xmm15, xmm15, 0xed
pmuludq xmm2, xmm3
pshufd xmm2, xmm2, 0xed
punpckldq xmm15, xmm2
movdqa xmm2, xmmword [0x1404e7670]
movdqa xmm5, xmm0
movdqa xmm0, xmm3
movdqa xmm3, xmm1
movdqa xmm1, xmm2
pxor xmm11, xmm2
movdqa xmm2, xmm7
pcmpgtd xmm2, xmm11
pxor xmm9, xmm1
movdqa xmm4, xmm7
pcmpgtd xmm4, xmm9
packssdw xmm4, xmm2
pxor xmm13, xmm1
movdqa xmm2, xmm7
pcmpgtd xmm2, xmm13
movdqa xmm9, xmm7
pxor xmm10, xmm1
movdqa xmm1, xmm3
movdqa xmm3, xmm0
movdqa xmm0, xmm5
pcmpgtd xmm9, xmm10
packssdw xmm9, xmm2
psrld xmm14, 5
psrld xmm15, 5
packsswb xmm9, xmm4
movdqa xmm2, xmm6
pcmpgtd xmm2, xmm15
pand xmm15, xmm2
pandn xmm2, xmm6
por xmm2, xmm15
movdqa xmm4, xmm6
pcmpgtd xmm4, xmm14
pand xmm14, xmm4
pandn xmm4, xmm6
por xmm4, xmm14
psrld xmm8, 5
psrld xmm12, 5
packuswb xmm4, xmm2
movdqa xmm2, xmm6
pcmpgtd xmm2, xmm12
pand xmm12, xmm2
pandn xmm2, xmm6
por xmm2, xmm12
movdqa xmm10, xmm6
pcmpgtd xmm10, xmm8
pand xmm8, xmm10
pandn xmm10, xmm6
por xmm10, xmm8
packuswb xmm10, xmm2
packuswb xmm4, xmm10
movdqa xmm2, xmm9
pandn xmm2, xmm4
movdqa xmm4, xmmword [str.2222]
psubb xmm2, xmm9
movdqu xmmword [rax + rcx], xmm2
add rcx, 0x10
cmp rcx, 0x80
jne 0x140355c60
mov qword [rsi], 3
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], 3
mov qword [rsi + 0x1050], rdi
mov dword [rsi + 0x1058], 0
mov byte [rsi + 0x105c], 0
mov qword [rsi + 0x18], 2
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], 2
mov word [rsi + 0x30], 0
lea rax, [0x1404ebfb8]
mov qword [rsi + 0x38], rax
mov word [rsi + 0x438], 0
lea rax, [0x1404ec886]
mov qword [rsi + 0x440], rax
mov word [rsi + 0x840], 0
lea rax, [0x1404ec3d4]
mov qword [rsi + 0x848], rax
mov word [rsi + 0xc48], 0
lea rax, [0x1404ecd38]
mov qword [rsi + 0xc50], rax
mov dword [rsi + 0x1060], 0x10001
mov byte [rsi + 0x1064], 0
mov rax, rsi
movaps xmm6, xmmword [rbp - 0x50]
movaps xmm7, xmmword [rbp - 0x40]
movaps xmm8, xmmword [rbp - 0x30]
movaps xmm9, xmmword [rbp - 0x20]
movaps xmm10, xmmword [rbp - 0x10]
movaps xmm11, xmmword [rbp]
movaps xmm12, xmmword [rbp + 0x10]
movaps xmm13, xmmword [rbp + 0x20]
movaps xmm14, xmmword [rbp + 0x30]
movaps xmm15, xmmword [rbp + 0x40]
add rsp, 0xd0
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov qword [rbp - 0x60], r14
lea rcx, [0x1404ebf50]
lea r8, str.C:UsersMorty.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_0.24.8_srccodecsjpegencoder.rsbad_huffman_value
mov edx, 0x19
call fcn.1404cbe70
jmp 0x140356007
mov ecx, 4
mov edx, 0x24
call fcn.1404cbc30
mov qword [rbp - 0x60], r14
mov ecx, 1
mov edx, 0x80
call fcn.1404cbc30
ud2