Function at 0x140054de0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg r13, r13
xchg r13, rbp
mov qword [rsp + 0x10], r13
xchg rbp, r13
mov qword [rsp + 0x20], rsi
mov word [rsp + 0x18], r8w
mov rbx, rbx
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r12
xchg rbp, rbp
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
nop
add rsp, 0x23065d84
sub rsp, 0x23065de4
xchg r12, rbp
mov rbp, qword [rdx + 0x38]
xchg r12, rbp
xchg rdx, r10
mov rdi, r10
xchg rdx, r10
mov r15, rcx
mov dword [rsp - 0x10], 0xec72edd
add r12, 2
mov eax, 0x4ab6c412
sub eax, 0x2caa2def
add eax, 0x5a68fd87
sub eax, 0x644d9ba3
sub eax, 0x1427f805
nop
movabs rsi, 0xffffffff7f0e8e57
xor rsi, 0x620b55d5
xor rsi, 0x5eaddb35
xor rsi, 0x4aa592bb
add rsi, 0x7fffffff
add rsi, 0x76f26df4
mul r12
mov dword [rsp - 0x38], 0x6359467
cmovo rax, rsi
xchg rbp, rcx
mov rbp, rax
xchg rbp, rcx
call fcn.140099140
mov dword [rsp - 0x44], 0x3b237de2
xchg r13, r14
mov r14, qword [rdi + 0x38]
xchg r14, r13
lea rcx, [rsp + 0x20]
mov rbp, qword [rdi]
xorps xmm0, xmm0
mov r11, r11
mov r14, rax
lea rax, [rsp + 0x28]
xchg rdx, rax
mov qword [rsp + 0x20], rdx
xchg rdx, rax
lea rdx, [r13 + 1]
movups xmmword [rsp + 0x28], xmm0
mov rcx, rcx
movups xmmword [rsp + 0x38], xmm0
xchg rsi, rsp
movups xmmword [rsi + 0x48], xmm0
xchg rsp, rsi
call fcn.140017b4c
xchg r15, r15
mov ebx, 0x5e2737b1
sub ebx, 0x345a6960
xor ebx, 0x609166cb
add ebx, 0x17cf7cfb
sub ebx, 0x464df1aa
xchg rbx, rax
mov r8, rbx
xchg rbx, rax
mov ecx, ebx
mov r9d, 0x44a81b7f
sub r9d, 0x43507982
add r9d, 0x32762033
xor r9d, 0x90d41d0
sub r9d, 0x3ac082e1
test r13, r13
je 0x140054fa5
xchg r15, r15
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
sub rbp, rax
mov rdx, rdx
mov rdi, r13
nop dword [rax]
movzx eax, cx
lea rdx, [rdx + 2]
mov dword [rsp - 0x24], 0x7dd4fe07
and ax, r9w
ror ecx, 2
ror ecx, 6
xor ax, word [rdx + rbp - 2]
xchg rsp, rsp
mov word [rdx - 2], ax
sub rdi, 1
jne 0x140054f6e
mov dword [rsp - 0x44], 0x588de385
xor ebp, ebp
xchg r12, rdi
mov rdx, rdi
xchg r12, rdi
mov word [r8 + r13*2], bp
mov dword [rsp - 0x1c], edx
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
xchg r8, rdi
mov rdi, qword [rsp + 0x20]
xchg r8, rdi
call fcn.14009a370
mov dword [rsp - 0x18], esp
xchg r9, rcx
mov r9, qword [rsp + 0x20]
xchg rcx, r9
lea rax, [rsp + 0x28]
mov dword [rsp - 0x10], 0x6d34e5fb
cmp rcx, rax
jne 0x14005501f
lea rdi, [rsp + 0x28]
xor eax, eax
xchg rdi, rdi
mov ecx, 0x60a07c88
sub ecx, 0x3dda823a
add ecx, 0x3347161d
xor ecx, 0x560d105b
rep stosb byte [rdi], al
jmp 0x14005502c
call fcn.1400992c0
mov dword [rsp - 0x2c], 0x34630473
movzx eax, word [rsp + 0xa0]
xorps xmm0, xmm0
mov word [r14 + r12*2 - 4], ax
lea rax, [r15 + 8]
xchg r15, r15
mov word [r14 + r12*2 - 2], bp
mov qword [r15], rax
xchg r14, rax
movups xmmword [r14], xmm0
xchg r14, rax
movups xmmword [rax + 0x10], xmm0
mov dword [rsp - 0x44], ecx
xchg rsp, rax
movups xmmword [rsp + 0x20], xmm0
xchg rsp, rax
inc rsi
mov r15, r15
cmp word [r14 + rsi*2], bp
jne 0x140055066
xchg rbx, rdx
mov rbx, rsi
xchg rdx, rbx
mov qword [r15 + 0x38], rsi
xchg rbp, r15
mov rcx, rbp
xchg rbp, r15
call fcn.140017b4c
cmp qword [r15 + 0x38], rbp
mov dword [rsp - 0x40], esp
jbe 0x140055107
xchg r8, r14
mov rdx, r8
xchg r8, r14
mov edi, 0x25b29492
sub edi, 0xdbd3b6b
add edi, 0x1d759e7
add edi, 0x2eca0271
xor edi, 0x4896b580
sub rdx, rax
mov dword [rsp - 0x38], 0x6f604f21
nop dword [rax + rax]
movzx ecx, bx
lea rax, [rax + 2]
mov dword [rsp - 0x2c], esp
and cx, di
ror ebx, 7
ror ebx, 1
xor cx, word [rdx + rax - 2]
inc rbp
mov word [rax - 2], cx
mov dword [rsp - 0x34], 0x6c93bd6c
cmp rbp, qword [r15 + 0x38]
jb 0x1400550d6
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call fcn.140099150
lea r11, [rsp + 0x60]
mov r15, r15
xchg rsp, rax
mov rsp, r15
xchg rsp, rax
xchg r14, rbx
mov r14, qword [r11 + 0x30]
xchg rbx, r14
xchg rbp, rsi
mov rsi, qword [r11 + 0x38]
xchg rbp, rsi
xchg rsi, rsp
mov rsp, qword [r11 + 0x48]
xchg rsi, rsp
xchg r11, r12
mov rsp, r12
xchg r12, r11
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rdi
ret