Function at 0x14005ce40
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0xe8
test ecx, ecx
je 0x14005cf50
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
lea rax, [0x140262440]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x40], 0x80
mov dword [rsp + 0x30], 0x20
mov dword [rsp + 0x20], 0x30
lea r9, str.c63w
mov ecx, 1
xor edx, edx
xor r8d, r8d
call fcn.14005d1d0
test eax, eax
jne 0x14005d096
pxor xmm1, xmm1
xor eax, eax
lea rcx, [0x140262460]
pxor xmm2, xmm2
pxor xmm0, xmm0
nop dword [rax + rax]
movdqa xmm3, xmmword [rax + rcx]
mov edx, dword [rax + rcx + 4]
pxor xmm3, xmmword [rsp + rax + 0x60]
xor edx, dword [rsp + rax + 0x64]
movd xmm4, edx
punpcklbw xmm3, xmm1
punpcklwd xmm3, xmm1
por xmm3, xmm2
punpcklbw xmm4, xmm1
punpcklwd xmm4, xmm1
por xmm4, xmm0
mov edx, dword [rax + rcx + 8]
mov r8d, dword [rax + rcx + 0xc]
xor edx, dword [rsp + rax + 0x68]
movd xmm2, edx
xor r8d, dword [rsp + rax + 0x6c]
movd xmm0, r8d
punpcklbw xmm2, xmm1
punpcklwd xmm2, xmm1
por xmm2, xmm3
punpcklbw xmm0, xmm1
punpcklwd xmm0, xmm1
por xmm0, xmm4
add rax, 0x10
cmp rax, 0x80
jne 0x14005cec0
por xmm0, xmm2
pxor xmm1, xmm1
pcmpeqb xmm1, xmm0
pmovmskb ecx, xmm1
xor eax, eax
cmp ecx, 0xffff
setne al
neg eax
jmp 0x14005d096
lea rdi, [rsp + 0x60]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x40], 0x80
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x30
lea r9, [0x1402624e0]
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call fcn.14005d1d0
test eax, eax
jne 0x14005d096
pxor xmm0, xmm0
mov eax, 0xc
lea rsi, [0x140262510]
pxor xmm2, xmm2
pxor xmm1, xmm1
nop word [rax + rax]
movdqa xmm3, xmmword [rax + rsi - 0xc]
mov ecx, dword [rax + rsi - 8]
pxor xmm3, xmmword [rsp + rax + 0x54]
xor ecx, dword [rsp + rax + 0x58]
movd xmm4, ecx
punpcklbw xmm3, xmm0
punpcklwd xmm3, xmm0
por xmm3, xmm2
punpcklbw xmm4, xmm0
punpcklwd xmm4, xmm0
por xmm4, xmm1
mov ecx, dword [rax + rsi - 4]
mov edx, dword [rax + rsi]
xor ecx, dword [rsp + rax + 0x5c]
movd xmm2, ecx
xor edx, dword [rsp + rax + 0x60]
movd xmm1, edx
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
por xmm2, xmm3
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
por xmm1, xmm4
add rax, 0x10
cmp rax, 0x8c
jne 0x14005cfc0
por xmm1, xmm2
pxor xmm0, xmm0
pcmpeqb xmm0, xmm1
pmovmskb ecx, xmm0
mov eax, 0xffffffff
cmp ecx, 0xffff
jne 0x14005d096
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x40], 0x80
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x20
lea rdx, [0x140262500]
lea r9, [0x1402624e0]
xor ecx, ecx
mov r8d, 0x10
call fcn.14005d1d0
test eax, eax
je 0x14005d0a0
add rsp, 0xe8
pop rdi
pop rsi
ret
pxor xmm1, xmm1
xor eax, eax
pxor xmm2, xmm2
pxor xmm0, xmm0
nop
movdqa xmm3, xmmword [rax + rsi]
mov ecx, dword [rax + rsi + 4]
pxor xmm3, xmmword [rsp + rax + 0x60]
xor ecx, dword [rsp + rax + 0x64]
movd xmm4, ecx
punpcklbw xmm3, xmm1
punpcklwd xmm3, xmm1
por xmm3, xmm2
punpcklbw xmm4, xmm1
punpcklwd xmm4, xmm1
por xmm4, xmm0
mov ecx, dword [rax + rsi + 8]
mov edx, dword [rax + rsi + 0xc]
xor ecx, dword [rsp + rax + 0x68]
movd xmm2, ecx
xor edx, dword [rsp + rax + 0x6c]
movd xmm0, edx
punpcklbw xmm2, xmm1
punpcklwd xmm2, xmm1
por xmm2, xmm3
punpcklbw xmm0, xmm1
punpcklwd xmm0, xmm1
por xmm0, xmm4
add rax, 0x10
cmp rax, 0x80
jne 0x14005d0b0
jmp 0x14005cf2e