Function at 0x140123de4
Capabilities:
Encode data using xor

Disassembly:
xchg r8, rax
mov r8, rsp
xchg r8, rax
xchg r15, rbx
mov qword [rax + 8], r15
xchg rbx, r15
mov qword [rax + 0x10], rsi
mov dword [rsp - 0x44], 0x1376f525
mov qword [rax + 0x18], rdi
xchg r12, r15
mov qword [rax + 0x20], r15
xchg r15, r12
nop
push r12
mov qword [rsp], rbp
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
lea rbp, [rax - 0x5f]
xchg r12, r12
add rsp, 0xffffffffffffff60
xchg rsi, rbx
mov rbx, rdx
xchg rsi, rbx
lea rdx, [rbp + 7]
call fcn.1401239f8
xchg rdx, r15
mov rdx, qword [rbp + 0x3f]
xchg rdx, r15
lea rax, [rbp - 0x31]
mov rbp, rbp
xchg rdi, rbx
mov rdi, qword [rbp + 7]
xchg rdi, rbx
lea rcx, [rbp - 0x39]
xorps xmm0, xmm0
xchg rdx, rax
mov qword [rbp - 0x39], rdx
xchg rdx, rax
xchg rbp, rcx
movups xmmword [rcx - 0x31], xmm0
xchg rbp, rcx
lea rdx, [r15 + 1]
mov dword [rsp - 0x28], 0x68db1701
xchg r11, rbp
movups xmmword [r11 - 0x21], xmm0
xchg r11, rbp
xchg rbp, rsp
movups xmmword [rsp - 0x11], xmm0
xchg rbp, rsp
call fcn.140017b44
mov r10, r10
xor edi, edi
mov r14d, 0x56422698
sub r14d, 0x25d26585
add r14d, 0x1f1576c6
add r14d, 0x17db7169
sub r14d, 0x3d494fc7
xchg r9, rax
mov r8, r9
xchg r9, rax
mov edx, r14d
mov r9, r9
mov r12d, 0x24d88029
add r12d, 0x417d7c6c
sub r12d, 0x61cfce20
sub r12d, 0x4862d76
test r15, r15
mov dword [rsp - 0x2c], edx
je 0x140123f41
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
sub rbx, rax
mov dword [rsp - 0x30], 0x595a1dda
xchg r9, r15
mov r15, r9
xchg r9, r15
movzx eax, dx
mov r10, r10
ror edx, 8
and ax, r12w
xor ax, word [rbx + rcx]
mov dword [rsp - 0x44], 0x3a576f13
mov word [rcx], ax
lea rcx, [rcx + 2]
sub r9, 1
jne 0x140123f14
mov r10, r10
mov word [r8 + r15*2], di
mov edx, 0x51bf256e
sub edx, 0xbd9b85e
sub edx, 0x1b98dbdf
sub edx, 0x2a4c9103
mov rcx, qword [rbp - 0x39]
xchg rsp, rsp
call fcn.1400989d0
lea rcx, [rsi + 8]
xorps xmm0, xmm0
test rax, rax
xchg r15, r15
je 0x140124020
mov word [rax], di
or rdx, 0xffffffffffffffff
mov dword [rsp - 0x40], 0x2bb71f46
mov rbx, qword [rbp - 0x39]
xchg rcx, rdi
mov qword [rsi], rdi
xchg rcx, rdi
xchg rcx, rdi
movups xmmword [rdi], xmm0
xchg rcx, rdi
xchg rcx, r12
movups xmmword [r12 + 0x10], xmm0
xchg rcx, r12
movups xmmword [rcx + 0x20], xmm0
mov dword [rsp - 0x14], ecx
inc rdx
cmp word [rbx + rdx*2], di
jne 0x140123fb5
xchg rcx, rbp
mov rbp, rsi
xchg rbp, rcx
mov qword [rsi + 0x38], rdx
call fcn.140017b44
mov rsp, rsp
cmp qword [rsi + 0x38], rdi
jbe 0x140124090
sub rbx, rax
mov r10, r10
movzx ecx, r14w
inc rdi
and cx, r12w
mov rsp, rsp
ror r14d, 5
ror r14d, 1
ror r14d, 1
ror r14d, 1
xor cx, word [rbx + rax]
mov word [rax], cx
mov dword [rsp - 0x38], edx
lea rax, [rax + 2]
cmp rdi, qword [rsi + 0x38]
jb 0x140123fe7
jmp 0x140124090
xchg rdx, rsp
mov rsp, qword [rbp + 0x3f]
xchg rsp, rdx
mov qword [rsi], rcx
mov rdx, rdx
xchg r13, rcx
movups xmmword [r13], xmm0
xchg r13, rcx
xchg r14, rcx
movups xmmword [r14 + 0x10], xmm0
xchg rcx, r14
movups xmmword [rcx + 0x20], xmm0
xchg r11, rcx
mov r11, rsi
xchg r11, rcx
mov qword [rsi + 0x38], rdx
call fcn.140017b44
cmp qword [rsi + 0x38], rdi
mov dword [rsp - 0x2c], edx
jbe 0x140124090
xchg rcx, rbx
mov rbx, qword [rbp + 7]
xchg rbx, rcx
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
mov r13, r13
inc rdi
cmp rdi, qword [rsi + 0x38]
jb 0x14012406a
mov dword [rsp - 0x18], edi
xchg rcx, rdi
mov rdi, qword [rbp - 0x39]
xchg rcx, rdi
lea rax, [rbp - 0x31]
mov dword [rsp - 0x10], 0x677ada5c
mov ebx, 0x72f454dd
sub ebx, 0x18e2131b
sub ebx, 0x30dfa82b
sub ebx, 0x29329967
cmp rcx, rax
mov dword [rsp - 0x20], ecx
jne 0x1401240dc
lea rdi, [rbp - 0x31]
xor eax, eax
xchg r8, r8
mov ecx, ebx
rep stosb byte [rdi], al
jmp 0x1401240e1
call fcn.140097780
mov rcx, qword [rbp + 7]
xchg r12, r12
lea rax, [rbp + 0xf]
cmp rcx, rax
jne 0x140124113
xchg r15, rbx
mov rcx, r15
xchg rbx, r15
lea rdi, [rbp + 0xf]
mov dword [rsp - 0x10], 0x3ff7b950
xor eax, eax
rep stosb byte [rdi], al
jmp 0x14012411b
call fcn.140097780
mov r9, r9
lea r11, [rsp + 0xa0]
mov rax, rsi
mov rbx, qword [r11 + 0x20]
xchg rdi, rsi
mov rdi, qword [r11 + 0x28]
xchg rsi, rdi
mov rdi, qword [r11 + 0x30]
mov dword [rsp - 0x38], ebp
mov r12, qword [r11 + 0x38]
xchg rsp, r11
mov r11, rsp
xchg r11, rsp
pop r15
pop r14
mov dword [rsp - 0x44], ebp
pop rbp
ret