Function at 0x140054a80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov rcx, rcx
xchg rdx, rsi
mov qword [rsp + 0x18], rdx
xchg rsi, rdx
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
add rsp, 0xffffffffffffffe0
mov dword [rsp - 0x20], 0x1ad3e9f0
xchg r10, r13
mov r10, qword [r8 + 0x38]
xchg r10, r13
xchg rcx, rdx
mov r15, rcx
xchg rdx, rcx
add r13, qword [rdx + 0x38]
mov r14, rcx
mov eax, 0x74f1055a
sub eax, 0x51be3601
xor eax, 0x31b89314
sub eax, 0x128a5c4b
nop
movabs rdi, 0xffffffff3f30d32f
add rdi, 0x2c95194f
sub rdi, 0x31a07261
add rdi, 0x13926e13
add rdi, 0x7fffffff
add rdi, 0x324817d0
xchg rdx, r8
mov r12, rdx
xchg r8, rdx
lea r9, [r13 + 1]
mov dword [rsp - 0x18], esp
mul r9
cmovo rax, rdi
xchg rbx, rax
mov rcx, rbx
xchg rbx, rax
call fcn.1400987e0
mov dword [rsp - 0x34], 0x30c94dbb
xor ebp, ebp
mov ebx, 0x116dd184
add ebx, 0x2737a87e
xor ebx, 0xeb039ac
sub ebx, 0xf5b1d6d
add ebx, 0x3a0b0d78
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
mov eax, ebx
mov dword [rsp - 0x20], 0x4d148448
mov r8d, ebp
mov r10d, 0x3cd0af2c
sub r10d, 0x37fd7825
add r10d, 0x1a7831f3
xor r10d, 0x1f4b6805
cmp qword [r15 + 0x38], rbp
jbe 0x140054be9
xchg r14, r14
nop word [rax + rax]
mov rcx, qword [r15]
movzx edx, ax
mov dword [rsp - 0x3c], edx
and dx, r10w
ror eax, 7
ror eax, 1
xor dx, word [rcx + r8*2]
mov word [rsi + r8*2], dx
inc r8
mov dword [rsp - 0x24], 0x7675d483
cmp r8, qword [r15 + 0x38]
jb 0x140054bb7
mov r8d, ebx
xchg r15, r15
xchg rbp, r11
mov r9, r11
xchg rbp, r11
cmp qword [r12 + 0x38], rbp
jbe 0x140054c57
nop dword [rax]
xchg r9, r9
xchg rbp, rax
mov rbp, qword [r12]
xchg rbp, rax
movzx edx, r8w
mov dword [rsp - 0x1c], ecx
mov rcx, qword [r15 + 0x38]
and dx, r10w
add rcx, r9
ror r8d, 4
ror r8d, 1
ror r8d, 1
ror r8d, 1
ror r8d, 1
xor dx, word [rax + r9*2]
inc r9
mov dword [rsp - 0x2c], ecx
mov word [rsi + rcx*2], dx
cmp r9, qword [r12 + 0x38]
jb 0x140054c09
mov dword [rsp - 0x18], 0x68e5b82d
lea rax, [r14 + 8]
mov word [rsi + r13*2], bp
xorps xmm0, xmm0
xchg rbp, rax
mov qword [r14], rbp
xchg rbp, rax
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
movups xmmword [rax + 0x10], xmm0
xchg rdi, rax
movups xmmword [rdi + 0x20], xmm0
xchg rdi, rax
inc rdi
cmp word [rsi + rdi*2], bp
jne 0x140054c7e
mov dword [rsp - 0x18], esp
xchg rbx, rdi
mov rdx, rbx
xchg rbx, rdi
mov qword [r14 + 0x38], rdi
xchg rcx, r9
mov r9, r14
xchg r9, rcx
call fcn.14001791c
cmp qword [r14 + 0x38], rbp
mov rdx, rdx
jbe 0x140054d15
mov rdx, rsi
mov r8d, 0x3f0ef38b
xor r8d, 0x7037c6b0
sub r8d, 0x2069bbc9
sub r8d, 0x2ecf7873
sub rdx, rax
mov rdi, rdi
nop
movzx ecx, bx
lea rax, [rax + 2]
mov dword [rsp - 0x40], 0x27d22b25
and cx, r8w
ror ebx, 4
ror ebx, 3
ror ebx, 1
xor cx, word [rdx + rax - 2]
mov dword [rsp - 0x14], edx
inc rbp
mov word [rax - 2], cx
cmp rbp, qword [r14 + 0x38]
jb 0x140054cdd
xchg r11, r11
xchg rsi, rdi
mov rcx, rdi
xchg rsi, rdi
call fcn.1400987f0
mov r9, r9
mov rbx, qword [rsp + 0x50]
xchg rsp, r14
mov rax, rsp
xchg r14, rsp
mov rbp, qword [rsp + 0x58]
xchg rsi, r9
mov r9, qword [rsp + 0x60]
xchg rsi, r9
nop
sub rsp, 0x58b1249b