Function at 0x140051cf0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov r15, r15
mov qword [rsp + 0x10], rbp
xchg rsi, r12
mov qword [rsp + 0x18], r12
xchg rsi, r12
nop
sub rsp, 8
mov qword [rsp], rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r12
mov qword [rsp], r13
push r12
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
add rsp, 0xffffffffffffffe0
mov dword [rsp - 0x1c], ebp
mov r13, qword [r8 + 0x38]
mov r15, rdx
add r13, qword [rdx + 0x38]
mov r13, r13
xchg r14, rcx
mov rcx, r14
xchg rcx, r14
mov eax, 0x6bd944d0
xor eax, 0x71221776
add eax, 0x5db644d
sub eax, 0x20d6b7f1
nop
movabs rdi, 0xffffffff4c52ffa4
xor rdi, 0x3d560df2
sub rdi, 0x4c95ac45
add rdi, 0x7fffffff
xor rdi, 0x5b90b9ef
xchg r12, r9
mov r9, r8
xchg r9, r12
lea r9, [r13 + 1]
mul r9
cmovo rax, rdi
xchg r15, r15
xchg rsi, rax
mov rcx, rsi
xchg rsi, rax
call fcn.140095da0
xor ebp, ebp
mov ebx, 0x4c16b49f
sub ebx, 0x2271d2f0
sub ebx, 0x18fd6eab
xor ebx, 0x1e318297
xor ebx, 0x18ed88f9
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
mov eax, ebx
mov r8d, ebp
mov r12, r12
mov r10d, 0x15fd6215
add r10d, 0x1c9d2a01
xor r10d, 0x403f753
xor r10d, 0x36997bba
cmp qword [r15 + 0x38], rbp
jbe 0x140051e42
xchg r10, r10
nop word [rax + rax]
xchg rcx, r11
mov r11, qword [r15]
xchg rcx, r11
movzx edx, ax
and dx, r10w
ror eax, 3
ror eax, 1
ror eax, 4
xor dx, word [rcx + r8*2]
xchg r15, r15
mov word [rsi + r8*2], dx
inc r8
cmp r8, qword [r15 + 0x38]
mov dword [rsp - 0x10], edi
jb 0x140051e0c
mov r8d, ebx
xchg r9, r12
mov r12, rbp
xchg r12, r9
cmp qword [r12 + 0x38], rbp
jbe 0x140051eb2
xchg r15, r15
nop dword [rax]
xchg r10, rax
mov r10, qword [r12]
xchg r10, rax
movzx edx, r8w
mov dword [rsp - 0x18], 0x612eb06b
mov rcx, qword [r15 + 0x38]
and dx, r10w
add rcx, r9
mov dword [rsp - 0x44], 0x3ce5664e
ror r8d, 6
ror r8d, 1
ror r8d, 1
xor dx, word [rax + r9*2]
mov r13, r13
inc r9
mov word [rsi + rcx*2], dx
cmp r9, qword [r12 + 0x38]
mov dword [rsp - 0x34], 0x5689a555
jb 0x140051e5f
lea rax, [r14 + 8]
mov word [rsi + r13*2], bp
xorps xmm0, xmm0
xchg r12, r12
mov qword [r14], rax
movups xmmword [rax], xmm0
xchg r15, rax
movups xmmword [r15 + 0x10], xmm0
xchg r15, rax
xchg rsi, rax
movups xmmword [rsi + 0x20], xmm0
xchg rsi, rax
inc rdi
cmp word [rsi + rdi*2], bp
jne 0x140051ed8
mov rsp, rsp
xchg rdi, rdx
mov rdi, rdx
xchg rdi, rdx
mov qword [r14 + 0x38], rdi
mov r8, r8
xchg rcx, rbp
mov rbp, r14
xchg rcx, rbp
call fcn.14000ed40
mov rsp, rsp
cmp qword [r14 + 0x38], rbp
jbe 0x140051f76
xchg r12, rsi
mov rdx, r12
xchg rsi, r12
mov r8d, 0xb94b287
add r8d, 0x6d728822
sub r8d, 0x37d8e590
add r8d, 0x276b7ba4
sub r8d, 0x6899cfbe
sub rdx, rax
mov r13, r13
nop
movzx ecx, bx
lea rax, [rax + 2]
mov dword [rsp - 0x24], esi
and cx, r8w
ror ebx, 4
ror ebx, 3
ror ebx, 1
xor cx, word [rdx + rax - 2]
inc rbp
mov word [rax - 2], cx
xchg r9, r9
cmp rbp, qword [r14 + 0x38]
jb 0x140051f46
xchg rsi, rcx
mov rsi, rcx
xchg rsi, rcx
call fcn.140095db0
mov dword [rsp - 0x14], ebp
xchg rbx, r14
mov r14, qword [rsp + 0x50]
xchg rbx, r14
mov rax, r14
xchg rcx, rbp
mov rcx, qword [rsp + 0x58]
xchg rbp, rcx
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
mov dword [rsp - 0x24], 0x49cdc741
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
pop r13
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
ret