Function at 0x14017e150
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
mov byte [rcx], 0
mov byte [rcx + 0x48], 0
xorps xmm0, xmm0
movups xmmword [rcx + 0x4c], xmm0
movups xmmword [rcx + 0x5c], xmm0
mov rax, qword [rcx + 0x30]
mov rcx, qword [rcx + 0x70]
mov qword [rsi + 0x78], rcx
mov byte [rsi + 8], 0
movups xmmword [rsi + 0xc], xmm0
movups xmmword [rsi + 0x1c], xmm0
mov qword [rsi + 0x38], rax
mov byte [rsi + 0x88], 0
movups xmmword [rsi + 0x8c], xmm0
movups xmmword [rsi + 0x9c], xmm0
mov rax, qword [rsi + 0xb0]
mov qword [rsi + 0xb8], rax
mov rbx, qword [rsi + 0x4f8]
mov rdi, qword [rsi + 0x4f0]
cmp rdi, rbx
je 0x14017e1da
nop
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e1c0
mov rax, qword [rsi + 0x4f0]
mov rdi, qword [rsi + 0x508]
mov qword [rsi + 0x4f8], rax
mov rbx, qword [rsi + 0x510]
cmp rdi, rbx
je 0x14017e21a
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e200
mov rax, qword [rsi + 0x508]
mov rdi, qword [rsi + 0x520]
mov qword [rsi + 0x510], rax
mov rbx, qword [rsi + 0x528]
cmp rdi, rbx
je 0x14017e25a
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e240
mov rax, qword [rsi + 0x520]
mov rdi, qword [rsi + 0x538]
mov qword [rsi + 0x528], rax
mov rbx, qword [rsi + 0x540]
cmp rdi, rbx
je 0x14017e29a
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e280
mov rax, qword [rsi + 0x538]
mov rdi, qword [rsi + 0x550]
mov qword [rsi + 0x540], rax
mov rbx, qword [rsi + 0x558]
cmp rdi, rbx
je 0x14017e2da
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e2c0
mov rax, qword [rsi + 0x550]
mov rdi, qword [rsi + 0x568]
mov qword [rsi + 0x558], rax
mov rbx, qword [rsi + 0x570]
cmp rdi, rbx
je 0x14017e32f
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov ecx, dword [0x140545c38]
mov edx, ecx
xor edx, 0x3c0d2ff9
and ecx, 0x3c0d2ff9
lea edx, [rdx + rcx*2]
mov rcx, rdi
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e300
mov rax, qword [rsi + 0x568]
mov rdi, qword [rsi + 0x580]
mov qword [rsi + 0x570], rax
mov rbx, qword [rsi + 0x588]
cmp rdi, rbx
je 0x14017e36a
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e350
mov rax, qword [rsi + 0x580]
mov rdi, qword [rsi + 0x598]
mov qword [rsi + 0x588], rax
mov rbx, qword [rsi + 0x5a0]
cmp rdi, rbx
je 0x14017e3b0
mov ebp, 0x3c0d2ff9
mov rax, qword [rdi]
mov rax, qword [rax]
mov edx, dword [0x140545c38]
add edx, ebp
mov rcx, rdi
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e390
mov rax, qword [rsi + 0x598]
mov rdi, qword [rsi + 0x5b0]
mov qword [rsi + 0x5a0], rax
lea rcx, [rsi + 0x5b0]
mov r8, qword [rdi + 8]
mov rdx, rcx
call fcn.1400a59c0
mov qword [rdi + 8], rdi
mov qword [rdi], rdi
mov qword [rdi + 0x10], rdi
mov qword [rsi + 0x5b8], 0
movabs rax, 0x15a12f3fc5f14408
add rax, qword [0x140545c40]
cmp qword [rsi + 0x5e0], rax
jbe 0x14017e411
mov rax, qword [rsi + 0x5c8]
jmp 0x14017e418
lea rax, [rsi + 0x5c8]
mov qword [rsi + 0x5d8], 0
mov word [rax], 0
cmp qword [rsi + 0x608], 8
jb 0x14017e43b
mov rax, qword [rsi + 0x5f0]
jmp 0x14017e442
lea rax, [rsi + 0x5f0]
movabs rcx, 0x15a12f3fc5f14401
add rcx, qword [0x140545c40]
mov qword [rsi + 0x600], rcx
mov ecx, 0x73b1
add ecx, dword [0x140545c48]
mov word [rax], cx
mov rdi, qword [rsi + 0x538]
mov rbx, qword [rsi + 0x540]
cmp rdi, rbx
je 0x14017e49a
nop dword [rax + rax]
mov rax, qword [rdi]
mov rax, qword [rax]
mov rcx, rdi
xor edx, edx
call qword [case.0x14013008b.0]
add rdi, 0x28
cmp rdi, rbx
jne 0x14017e480
mov rax, qword [rsi + 0x538]
mov rdi, qword [rsi + 0x610]
mov qword [rsi + 0x540], rax
lea rcx, [rsi + 0x610]
mov r8, qword [rdi + 8]
mov rdx, rcx
call fcn.1401380d0
mov qword [rdi + 8], rdi
mov qword [rdi], rdi
mov qword [rdi + 0x10], rdi
mov qword [rsi + 0x618], 0
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret