Function at 0x140015e08
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
xchg rbx, rcx
mov qword [rax + 8], rcx
xchg rcx, rbx
xchg rsi, r14
mov qword [rax + 0x10], r14
xchg r14, rsi
xchg rdx, rdi
mov qword [rax + 0x20], rdx
xchg rdi, rdx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push r12
mov dword [rsp - 0x18], 0x79387834
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
push 0x116e79ae
mov qword [rsp], r14
nop
push 0x3e6a9ec4
mov qword [rsp], r15
lea rbp, [rax - 0x278]
sub rsp, 0x350
mov dword [rsp - 0x28], 0x110eb274
xor ebx, ebx
lea r9, [rbp + 0x30]
mov rsi, rdx
mov dword [rsp - 0x28], 0x32e45f5f
xchg rbx, r8
mov qword [rsp + 0x28], r8
xchg rbx, r8
or r15, 0xffffffffffffffff
xchg r14, r14
mov qword [rsp + 0x20], 0x419b01a3
add qword [rsp + 0x20], 0x436b4f9
xor qword [rsp + 0x20], 0x393bc056
sub qword [rsp + 0x20], 0x7cea74b2
lea rdx, [0x140000000]
mov dword [rsp - 0xc], edi
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
lea r8d, [rbx + 2]
call fcn.14005a6d0
mov dword [rsp - 0x20], 0x2e6094dc
test eax, eax
js 0x140016401
lea edx, [rbx + 0x5c]
lea rcx, [rbp + 0x40]
mov dword [rsp - 0x40], edx
call fcn.140078b50
xchg rbx, rax
mov r12, rbx
xchg rbx, rax
test rax, rax
mov dword [rsp - 0xc], esi
je 0x140016401
lea edx, [rbx + 0x2e]
lea rcx, [rbp + 0x40]
xchg rcx, rcx
call fcn.140078b50
test rax, rax
je 0x140015f27
mov rdx, rdx
mov word [rax], bx
xorps xmm0, xmm0
mov dword [rbp + 0x290], 0x474cdbf3
add dword [rbp + 0x290], 0x338ec060
xor dword [rbp + 0x290], 0x67e3dd3
xor dword [rbp + 0x290], 0x44be9c7e
lea rcx, [rsp + 0x78]
mov word [rbp + 0x294], 0x27ae
xor word [rbp + 0x294], 0x25e3
xor word [rbp + 0x294], 0x60d9
xor word [rbp + 0x294], 0x4626
lea rax, [rsp + 0x78]
mov dword [rsp - 0x3c], 0x520024fb
mov byte [rbp + 0x296], 0x76
sub byte [rbp + 0x296], 2
sub byte [rbp + 0x296], 0x71
add byte [rbp + 0x296], 0xb
sub byte [rbp + 0x296], 0xd
xchg rbp, rcx
mov qword [rsp + 0x70], rbp
xchg rbp, rcx
mov edi, 0x4bac6b7c
xor edi, 0x3e038a77
sub edi, 0x6120ae7f
xor edi, 0x61683c7d
sub edi, 0x75e70eea
xchg r9, rdi
mov qword [rbp - 0x58], r9
xchg r9, rdi
xchg rsp, rbp
movups xmmword [rbp + 0x78], xmm0
xchg rsp, rbp
xchg rbp, r13
movups xmmword [r13 - 0x78], xmm0
xchg rbp, r13
xchg rbp, r9
movups xmmword [r9 - 0x68], xmm0
xchg r9, rbp
cmp rcx, rax
je 0x140016017
mov dword [rsp - 0x3c], 0x5e6bb190
call fcn.140077cf0
mov rdi, qword [rbp - 0x58]
lea r14, [rsp + 0x78]
mov r9, r9
xorps xmm0, xmm0
xchg rdx, r14
mov qword [rsp + 0x70], rdx
xchg rdx, r14
mov rcx, rbx
xchg r15, rsp
movups xmmword [r15 + 0x78], xmm0
xchg r15, rsp
movups xmmword [rbp - 0x78], xmm0
mov dword [rsp - 0x38], 0x4bd9cff5
xchg rbp, rsi
movups xmmword [rsi - 0x68], xmm0
xchg rbp, rsi
test rdi, rdi
je 0x14001608f
mov dword [rsp - 0xc], esi
movzx eax, byte [rbp + rcx + 0x290]
mov word [r14 + rcx*2], ax
inc rcx
xchg rdi, r12
mov r12, qword [rbp - 0x58]
xchg r12, rdi
cmp rcx, rdi
mov rdi, rdi
jb 0x14001605e
xchg r8, r14
mov r8, qword [rsp + 0x70]
xchg r8, r14
xorps xmm0, xmm0
xchg r8, r8
lea rcx, [rsp + 0x38]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x30], rcx
lea r13, [rdi + 1]
xchg r14, r14
xchg rsp, r13
movups xmmword [r13 + 0x38], xmm0
xchg r13, rsp
xchg r9, rsp
movups xmmword [r9 + 0x48], xmm0
xchg r9, rsp
xchg rsp, r12
movups xmmword [r12 + 0x58], xmm0
xchg rsp, r12
cmp rcx, rax
xchg r8, r8
je 0x1400160de
call fcn.140077cf0
cmp r13, 0x18
mov dword [rsp - 0x10], 0x31e5ea8a
jbe 0x140016131
lea rcx, [r13*2]
call fcn.140077eb0
mov dword [rsp - 0x28], 0x40bba566
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x140016144
lea rax, [rsp + 0x38]
mov r10, r10
xchg rbx, rcx
mov rbx, rcx
xchg rbx, rcx
mov qword [rsp + 0x30], rax
xchg r9, r9
jmp 0x140016166
lea rax, [rsp + 0x38]
xchg r12, rax
mov qword [rsp + 0x30], r12
xchg r12, rax
lea rax, [rsp + 0x38]
xorps xmm0, xmm0
xchg r10, rax
movups xmmword [r10], xmm0
xchg r10, rax
movups xmmword [rax + 0x10], xmm0
xchg rcx, rax
movups xmmword [rcx + 0x20], xmm0
xchg rcx, rax
xchg rcx, rbx
mov rbx, qword [rsp + 0x30]
xchg rbx, rcx
mov r13d, 0x5bc95117
sub r13d, 0x57f2739e
add r13d, 0x4a5d26c
xor r13d, 0x1e14e53e
mov r10d, 0x2cfc01ec
xor r10d, 0x6bf41329
sub r10d, 0x8454717
sub r10d, 0x3ec2caaf
mov edx, r13d
mov dword [rsp - 0x2c], esp
test rdi, rdi
je 0x1400161f3
mov r8, rcx
sub r14, rcx
mov dword [rsp - 0xc], ecx
xchg rdi, r10
mov r9, r10
xchg rdi, r10
movzx eax, dx
ror edx, 4
ror edx, 2
ror edx, 1
ror edx, 1
and ax, r10w
mov dword [rsp - 0x34], edx
xor ax, word [r14 + r8]
mov word [r8], ax
lea r8, [r8 + 2]
sub r9, 1
mov dword [rsp - 0x1c], 0x160b0735
jne 0x1400161bf
mov word [rcx + rdi*2], bx
lea r8, [r12 + 2]
mov rdx, qword [rsp + 0x30]
xchg rcx, rcx
lea rcx, [rbp - 0x50]
call fcn.1400155a8
mov rcx, qword [rsp + 0x30]
mov dword [rsp - 0x30], ecx
lea rax, [rsp + 0x38]
mov r14d, 0x37fe7ad7
xor r14d, 0x41514fcd
xor r14d, 0x5e3ac0d0
sub r14d, 0x2895f59a
cmp rcx, rax
mov rcx, rcx
jne 0x14001625b
lea rdi, [rsp + 0x38]
xor eax, eax
mov dword [rsp - 0x30], 0x6396e635
mov ecx, r14d
rep stosb byte [rdi], al
jmp 0x140016260
call fcn.140077cf0
lea rdi, [rsi + 8]
xorps xmm0, xmm0
mov dword [rsp - 0x38], 0x2fb8cc8b
xchg rdi, r8
mov qword [rsi], r8
xchg rdi, r8
lea rax, [rbp - 0x50]
xchg r15, r15
xchg rdi, rsi
movups xmmword [rsi], xmm0
xchg rsi, rdi
xchg rdi, rcx
movups xmmword [rcx + 0x10], xmm0
xchg rdi, rcx
movups xmmword [rdi + 0x20], xmm0
mov dword [rsp - 0xc], 0x51213f3c
inc r15
cmp word [rax + r15*2], bx
jne 0x14001629e
mov dword [rsp - 0x38], 0x72aa357a
xchg r15, r12
mov qword [rsi + 0x38], r12
xchg r15, r12
cmp qword [rsi], rdi
mov dword [rsp - 0x44], ebp
je 0x1400162d9
xchg rcx, r9
mov r9, qword [rsi]
xchg r9, rcx
call fcn.140077cf0
cmp r15, 0x18
mov dword [rsp - 0x20], 0x1cdb84bb
jbe 0x140016317
lea rcx, [r15 + r15]
call fcn.140077eb0
mov qword [rsi], rax
mov r12, r12
test rax, rax
jne 0x140016327
mov qword [rsi], rdi
mov r8, r8
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
jmp 0x140016348
xchg rdi, r11
mov qword [rsi], r11
xchg r11, rdi
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
xorps xmm0, xmm0
mov rcx, rcx
movups xmmword [rax], xmm0
xchg r15, rax
movups xmmword [r15 + 0x10], xmm0
xchg r15, rax
movups xmmword [rax + 0x20], xmm0
mov rcx, qword [rsi]
mov dword [rsp - 0x44], 0x26504808
cmp qword [rsi + 0x38], rbx
jbe 0x1400163b9
lea rdx, [rbp - 0x50]
mov dword [rsp - 0x14], 0x55b79c04
mov edi, 0x6723ba52
xor edi, 0x336c617a
sub edi, 0x24338002
add edi, 0x37d12b8d
sub edi, 0x67ed85b4
sub rdx, rcx
movzx eax, r13w
mov rdi, rdi
inc rbx
and ax, di
ror r13d, 1
ror r13d, 2
ror r13d, 3
ror r13d, 1
ror r13d, 1
xor ax, word [rdx + rcx]
mov word [rcx], ax
lea rcx, [rcx + 2]
mov dword [rsp - 0x38], 0x21c8a73c
cmp rbx, qword [rsi + 0x38]
jb 0x14001637e
xchg r15, rcx
mov r15, qword [rsp + 0x70]
xchg r15, rcx
lea rax, [rsp + 0x78]
cmp rcx, rax
xchg r13, r13
jne 0x1400163f4
lea rdi, [rsp + 0x78]
xor eax, eax
mov dword [rsp - 0x2c], 0x401eba71
xchg rdi, r14
mov rcx, rdi
xchg rdi, r14
rep stosb byte [rdi], al
jmp 0x140016434
call fcn.140077cf0
xchg rsi, rsi
jmp 0x140016434
lea rax, [rsi + 8]
xorps xmm0, xmm0
mov qword [rsi], rax
mov dword [rsp - 0x20], 0x22b24b95
xchg rbx, rax
movups xmmword [rbx], xmm0
xchg rbx, rax
movups xmmword [rax + 0x10], xmm0
mov dword [rsp - 0x18], ebx
xchg rdi, rax
movups xmmword [rdi + 0x20], xmm0
xchg rdi, rax
xchg rbx, r12
mov qword [rsi + 0x38], r12
xchg r12, rbx
lea r11, [rsp + 0x350]
xchg rbp, rbp
mov rax, rsi
mov rbx, qword [r11 + 0x30]
xchg r12, rsi
mov r12, qword [r11 + 0x38]
xchg rsi, r12
xchg r14, rdi
mov r14, qword [r11 + 0x48]
xchg rdi, r14
mov rsp, r11
mov rbp, rbp
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
mov r14, qword [rsp - 8]
pop r13
mov dword [rsp - 0x3c], esi
pop r12
pop rbp
ret