Function at 0x42f700
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov r10d, dword [rdx + 8]
mov eax, dword [r8 + 8]
xor eax, r10d
cdqe
sub rcx, 1
shr rcx, 0x3f
sub rcx, 1
and rax, rcx
xor r10d, eax
mov dword [rdx + 8], r10d
mov r10d, dword [rdx + 0x10]
xor dword [r8 + 8], eax
mov eax, dword [r8 + 0x10]
xor eax, r10d
cdqe
and rax, rcx
xor r10d, eax
mov dword [rdx + 0x10], r10d
mov r10d, dword [rdx + 0x14]
xor dword [r8 + 0x10], eax
mov eax, dword [r8 + 0x14]
xor eax, r10d
and rax, rcx
and eax, 4
xor r10d, eax
mov dword [rdx + 0x14], r10d
mov rdx, qword [rdx]
xor dword [r8 + 0x14], eax
mov rax, qword [r8]
cmp r9d, 0xa
ja case.0x42f77c.0
lea r10, [0x005cf844]
mov r8d, r9d
movsxd r8, dword [r10 + r8*4]
add r8, r10
jmp r8
cmp r9d, 0xa
jle case.0x42f77c.10
lea rbx, [rdx + 0x50]
lea r11, [rax + 0x60]
cmp rbx, r11
lea r8, [rax + 0x50]
lea r11, [rdx + 0x60]
setae bl
cmp r8, r11
lea r10d, [r9 - 0xb]
setae r11b
or bl, r11b
je 0x42f950
cmp r10d, 1
jbe 0x42f950
sub r9d, 0xa
movq xmm2, rcx
mov r10, rdx
mov r11d, r9d
punpcklqdq xmm2, xmm2
shr r11d, 1
shl r11, 4
add r11, rdx
nop word [rax + rax]
movdqu xmm3, xmmword [r10 + 0x50]
movdqu xmm0, xmmword [r8]
add r10, 0x10
add r8, 0x10
pxor xmm0, xmm3
movdqu xmm1, xmm3
pand xmm0, xmm2
pxor xmm1, xmm0
movups xmmword [r10 + 0x40], xmm1
movdqu xmm4, xmmword [r8 - 0x10]
pxor xmm0, xmm4
movups xmmword [r8 - 0x10], xmm0
cmp r10, r11
jne 0x42f7e0
mov r10d, r9d
and r10d, 0xfffffffe
lea r8d, [r10 + 0xa]
cmp r10d, r9d
je case.0x42f77c.10
movsxd r8, r8d
shl r8, 3
lea r11, [rdx + r8]
add r8, rax
mov r10, qword [r11]
mov r9, qword [r8]
xor r9, r10
and r9, rcx
xor r10, r9
mov qword [r11], r10
xor qword [r8], r9
mov r9, qword [rdx + 0x48]
mov r8, qword [rax + 0x48]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x48], r9
xor qword [rax + 0x48], r8
mov r9, qword [rdx + 0x40]
mov r8, qword [rax + 0x40]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x40], r9
xor qword [rax + 0x40], r8
mov r9, qword [rdx + 0x38]
mov r8, qword [rax + 0x38]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x38], r9
xor qword [rax + 0x38], r8
mov r9, qword [rdx + 0x30]
mov r8, qword [rax + 0x30]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x30], r9
xor qword [rax + 0x30], r8
mov r9, qword [rdx + 0x28]
mov r8, qword [rax + 0x28]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x28], r9
xor qword [rax + 0x28], r8
mov r9, qword [rdx + 0x20]
mov r8, qword [rax + 0x20]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x20], r9
xor qword [rax + 0x20], r8
mov r9, qword [rdx + 0x18]
mov r8, qword [rax + 0x18]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x18], r9
xor qword [rax + 0x18], r8
mov r9, qword [rdx + 0x10]
mov r8, qword [rax + 0x10]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 0x10], r9
xor qword [rax + 0x10], r8
mov r9, qword [rdx + 8]
mov r8, qword [rax + 8]
xor r8, r9
and r8, rcx
xor r9, r8
mov qword [rdx + 8], r9
xor qword [rax + 8], r8
mov r9, qword [rdx]
mov r8, qword [rax]
xor r8, r9
and rcx, r8
xor r9, rcx
mov qword [rdx], r9
xor qword [rax], rcx
pop rbx
ret
lea r11, [r10 + 0xb]
mov r8d, 0xa
nop word [rax + rax]
mov r10, qword [rdx + r8*8]
mov r9, qword [rax + r8*8]
xor r9, r10
and r9, rcx
xor r10, r9
mov qword [rdx + r8*8], r10
xor qword [rax + r8*8], r9
add r8, 1
cmp r11, r8
jne 0x42f960
jmp case.0x42f77c.10