Function at 0x140054840
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov r9, r9
mov qword [rsp + 0x18], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r11
mov qword [rsp], r13
push r14
mov dword [rsp - 0xc], ecx
push r15
sub rsp, 0x20
xchg r12, r13
mov r12, qword [r8 + 0x38]
xchg r13, r12
xchg r15, r10
mov r10, rdx
xchg r10, r15
add r13, qword [rdx + 0x38]
xchg rsi, r14
mov rsi, rcx
xchg r14, rsi
mov eax, 0x2e4d0723
add eax, 0x517f7569
xor eax, 0x7b07e649
add eax, 0x2575f35d
sub eax, 0x2a418e20
nop
movabs rdi, 0xffffffff5c5c6815
sub rdi, 0x13b5170a
xor rdi, 0x5cf73080
xor rdi, 0x41ebfb10
add rdi, 0x7fffffff
add rdi, 0x2a446565
xchg r12, r8
mov r8, r12
xchg r12, r8
lea r9, [r13 + 1]
mov r13, r13
mul r9
cmovo rax, rdi
xchg r10, rcx
mov r10, rax
xchg rcx, r10
call fcn.140099030
xchg r14, r14
xor ebp, ebp
mov ebx, 0x7a052ec6
sub ebx, 0x3b565051
sub ebx, 0x3ab80083
xor ebx, 0x1f8c4440
xor ebx, 0x7ecbdde7
mov rsi, rax
mov eax, ebx
mov r8d, ebp
xchg rsp, rsp
mov r10d, 0x309c837a
add r10d, 0x20beaf7f
sub r10d, 0x4e002ce2
add r10d, 0x592da1c
sub r10d, 0x8eddf34
cmp qword [r15 + 0x38], rbp
jbe 0x1400549a1
mov rdx, rdx
nop word [rax + rax]
mov rcx, qword [r15]
movzx edx, ax
mov dword [rsp - 0x44], edx
and dx, r10w
ror eax, 3
ror eax, 2
ror eax, 1
ror eax, 1
ror eax, 1
xor dx, word [rcx + r8*2]
mov dword [rsp - 0x28], ecx
mov word [rsi + r8*2], dx
inc r8
cmp r8, qword [r15 + 0x38]
jb 0x140054969
xchg rcx, rcx
mov r8d, ebx
xchg rbp, r8
mov r9, r8
xchg rbp, r8
cmp qword [r12 + 0x38], rbp
jbe 0x140054a0a
nop dword [rax]
mov r9, r9
xchg r15, rax
mov r15, qword [r12]
xchg r15, rax
movzx edx, r8w
mov dword [rsp - 0x34], 0x2bb8374
mov rcx, qword [r15 + 0x38]
and dx, r10w
add rcx, r9
ror r8d, 1
ror r8d, 3
ror r8d, 1
ror r8d, 3
xor dx, word [rax + r9*2]
inc r9
mov dword [rsp - 0x44], 0x7b0615d1
mov word [rsi + rcx*2], dx
cmp r9, qword [r12 + 0x38]
jb 0x1400549be
lea rax, [r14 + 8]
xchg r12, r12
mov word [rsi + r13*2], bp
xorps xmm0, xmm0
mov qword [r14], rax
xchg r10, r10
xchg r10, rax
movups xmmword [r10], xmm0
xchg r10, rax
xchg r9, rax
movups xmmword [r9 + 0x10], xmm0
xchg r9, rax
movups xmmword [rax + 0x20], xmm0
mov dword [rsp - 0x20], esp
inc rdi
cmp word [rsi + rdi*2], bp
jne 0x140054a38
xchg rdi, rdx
mov rdi, rdx
xchg rdi, rdx
xchg rdi, rdx
mov qword [r14 + 0x38], rdx
xchg rdx, rdi
xchg r14, r15
mov rcx, r15
xchg r15, r14
call fcn.140017954
cmp qword [r14 + 0x38], rbp
jbe 0x140054ad4
mov dword [rsp - 0x44], ebp
xchg rsi, r13
mov rdx, r13
xchg rsi, r13
mov r8d, 0x53feba6c
sub r8d, 0x23d2a27e
sub r8d, 0x1b83db52
xor r8d, 0x14a83c63
sub rdx, rax
nop
movzx ecx, bx
mov r12, r12
lea rax, [rax + 2]
and cx, r8w
ror ebx, 8
xor cx, word [rdx + rax - 2]
mov dword [rsp - 0x1c], 0x6013b8a4
inc rbp
mov word [rax - 2], cx
cmp rbp, qword [r14 + 0x38]
mov dword [rsp - 0xc], 0x4b6d8d15
jb 0x140054a9d
mov rcx, rsi
call fcn.140099040
mov rbx, qword [rsp + 0x50]
mov dword [rsp - 0x30], 0xbad43d3
xchg r14, rax
mov r14, rax
xchg r14, rax
xchg rbp, rcx
mov rcx, qword [rsp + 0x58]
xchg rbp, rcx
xchg rsi, r12
mov r12, qword [rsp + 0x60]
xchg r12, rsi
nop
sub rsp, 0x6207edcf
add rsp, 0x6207edef
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
pop r12
pop rdi
mov r8, r8
ret