Function at 0x140125f54
Capabilities:
Encode data using xor

Disassembly:
xchg rdi, rsp
mov rax, rdi
xchg rdi, rsp
xchg r11, rbx
mov qword [rax + 8], r11
xchg rbx, r11
xchg rsi, rcx
mov qword [rax + 0x10], rcx
xchg rcx, rsi
mov qword [rax + 0x18], rdi
xchg r12, rbx
mov qword [rax + 0x20], rbx
xchg r12, rbx
nop
push 0x166347b0
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rax - 0x5f]
mov dword [rsp - 0x14], esi
sub rsp, 0x707bffa2
add rsp, 0x707bff02
xchg rdx, rbp
mov rsi, rbp
xchg rdx, rbp
lea rdx, [rbp + 7]
mov rbx, rbx
call fcn.140125b68
mov r15, qword [rbp + 0x3f]
lea rax, [rbp - 0x31]
xchg rbx, rsi
mov rsi, qword [rbp + 7]
xchg rsi, rbx
lea rcx, [rbp - 0x39]
xorps xmm0, xmm0
xchg rbx, rbx
mov qword [rbp - 0x39], rax
movups xmmword [rbp - 0x31], xmm0
lea rdx, [r15 + 1]
mov dword [rsp - 0x10], esp
xchg r12, rbp
movups xmmword [r12 - 0x21], xmm0
xchg rbp, r12
movups xmmword [rbp - 0x11], xmm0
xchg rbp, rbp
call fcn.140017890
xor edi, edi
mov r14d, 0x22a02e5f
add r14d, 0x828b2f3
sub r14d, 0xe35c112
add r14d, 0x5410c03
xor r14d, 0x138c60b5
mov r8, rax
mov rsp, rsp
mov edx, r14d
mov r12d, 0x65531741
xor r12d, 0x1949dbe2
xor r12d, 0x5b788d56
sub r12d, 0x276240f6
test r15, r15
xchg rsp, rsp
je 0x140126097
mov rcx, rax
sub rbx, rax
xchg r9, r15
mov r15, r9
xchg r15, r9
movzx eax, dx
ror edx, 6
ror edx, 2
and ax, r12w
xor ax, word [rbx + rcx]
mov r11, r11
mov word [rcx], ax
lea rcx, [rcx + 2]
sub r9, 1
jne 0x14012606e
mov dword [rsp - 0x3c], edi
mov word [r8 + r15*2], di
mov edx, 0x104f7393
add edx, 0x3d04c75c
sub edx, 0x3e7aaf44
add edx, 0x202103c1
xor edx, 0x2efa8f42
mov rcx, qword [rbp - 0x39]
call fcn.14009a570
mov dword [rsp - 0x18], esi
lea rcx, [rsi + 8]
xorps xmm0, xmm0
test rax, rax
mov dword [rsp - 0x18], ebp
je 0x140126184
mov word [rax], di
or rdx, 0xffffffffffffffff
mov dword [rsp - 0x38], 0x258ef96
xchg rbx, r12
mov r12, qword [rbp - 0x39]
xchg r12, rbx
xchg rbx, rcx
mov qword [rsi], rbx
xchg rcx, rbx
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
mov dword [rsp - 0x24], edi
xchg rcx, rdx
movups xmmword [rdx + 0x20], xmm0
xchg rcx, rdx
inc rdx
cmp word [rbx + rdx*2], di
mov dword [rsp - 0x1c], edx
jne 0x140126111
mov rcx, rsi
mov qword [rsi + 0x38], rdx
mov dword [rsp - 0x20], 0x678de48a
call fcn.140017890
cmp qword [rsi + 0x38], rdi
jbe 0x1401261f9
mov dword [rsp - 0x10], 0x5f643d70
sub rbx, rax
movzx ecx, r14w
inc rdi
and cx, r12w
mov r14, r14
ror r14d, 5
ror r14d, 1
ror r14d, 1
ror r14d, 1
xor cx, word [rbx + rax]
mov word [rax], cx
lea rax, [rax + 2]
mov dword [rsp - 0x28], edx
cmp rdi, qword [rsi + 0x38]
jb 0x14012614b
jmp 0x1401261f9
xchg r8, rdx
mov r8, qword [rbp + 0x3f]
xchg r8, rdx
xchg rcx, r8
mov qword [rsi], r8
xchg rcx, r8
xchg r13, rcx
movups xmmword [r13], xmm0
xchg r13, rcx
movups xmmword [rcx + 0x10], xmm0
xchg rbp, rbp
xchg rcx, rbp
movups xmmword [rbp + 0x20], xmm0
xchg rcx, rbp
mov rcx, rsi
mov rbx, rbx
mov qword [rsi + 0x38], rdx
call fcn.140017890
cmp qword [rsi + 0x38], rdi
xchg r10, r10
jbe 0x1401261f9
xchg rdi, rcx
mov rdi, qword [rbp + 7]
xchg rdi, rcx
movzx edx, word [rcx + rdi*2]
mov rsi, rsi
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rsi + 0x38]
mov dword [rsp - 0x10], 0x228c04dc
jb 0x1401261cf
mov rcx, qword [rbp - 0x39]
lea rax, [rbp - 0x31]
mov ebx, 0x7b39999e
xor ebx, 0xeb8b560
sub ebx, 0x6f767755
sub ebx, 0x60ab579
cmp rcx, rax
jne 0x140126237
mov rsi, rsi
lea rdi, [rbp - 0x31]
xor eax, eax
mov ecx, ebx
mov dword [rsp - 0x10], ebp
rep stosb byte [rdi], al
jmp 0x14012623f
call fcn.140099360
mov rsi, rsi
xchg rsp, rcx
mov rsp, qword [rbp + 7]
xchg rsp, rcx
lea rax, [rbp + 0xf]
xchg rcx, rcx
cmp rcx, rax
jne 0x140126273
xchg rbx, rdi
mov rcx, rdi
xchg rbx, rdi
lea rdi, [rbp + 0xf]
mov dword [rsp - 0x30], ebx
xor eax, eax
rep stosb byte [rdi], al
jmp 0x140126278
call fcn.140099360
lea r11, [rsp + 0xa0]
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
mov rbx, qword [r11 + 0x20]
mov dword [rsp - 0x18], 0x20531862
mov rsi, qword [r11 + 0x28]
xchg r13, rdi
mov r13, qword [r11 + 0x30]
xchg rdi, r13
xchg rbx, r12
mov rbx, qword [r11 + 0x38]
xchg rbx, r12
xchg rsp, rbp
mov rbp, r11
xchg rsp, rbp
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret