Function at 0x140039e08
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, r9
mov qword [rsp + 8], r9
xchg r9, rbx
push rbp
push rsi
xchg rsi, rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
xchg rbp, r8
mov r8, rsp
xchg rbp, r8
add rsp, 0xffffffffffffff80
lea rcx, [0x1400eef90]
xchg rsi, rbx
mov rsi, rdx
xchg rbx, rsi
call fcn.1400709a8
xor esi, esi
test al, al
mov rsp, rsp
je 0x14003a12f
xchg rdi, rdx
mov rdx, qword [rbx + 0x38]
xchg rdx, rdi
lea rax, [rbp - 0x38]
mov rbx, qword [rbx]
lea rcx, [rbp - 0x40]
mov rbx, rbx
xorps xmm0, xmm0
xchg r8, rax
mov qword [rbp - 0x40], r8
xchg r8, rax
xchg r10, rbp
movups xmmword [r10 - 0x38], xmm0
xchg r10, rbp
lea rdx, [rdi + 1]
movups xmmword [rbp - 0x28], xmm0
mov dword [rsp - 0x18], ecx
xchg r9, rbp
movups xmmword [r9 - 0x18], xmm0
xchg r9, rbp
call fcn.140016760
mov r11d, 0x4ac399b5
xor r11d, 0x24fb1400
xor r11d, 0x5297fc8c
add r11d, 0x352c92fc
sub r11d, 0x44c7cb6a
xchg r8, rax
mov rax, r8
xchg r8, rax
mov ecx, r11d
test rdi, rdi
mov dword [rsp - 0xc], ecx
je 0x140039f2a
xchg rsi, rax
mov rdx, rsi
xchg rsi, rax
sub rbx, rax
mov r9, rdi
mov dword [rsp - 0x24], ebp
movzx eax, cx
mov r10d, 0x6e80470e
xor r10d, 0x3f33bdf9
sub r10d, 0x29d90cc4
sub r10d, 0x27daed34
and ax, r10w
mov r8, r8
ror ecx, 6
ror ecx, 1
ror ecx, 1
xor ax, word [rbx + rdx]
mov word [rdx], ax
lea rdx, [rdx + 2]
mov dword [rsp - 0x18], esi
sub r9, 1
jne 0x140039ee5
mov word [r8 + rdi*2], si
mov dword [rsp - 0x3c], ebp
mov dword [rbp + 0x38], 0x6bc11385
sub dword [rbp + 0x38], 0x4c88ef32
add dword [rbp + 0x38], 0x4bdb3593
sub dword [rbp + 0x38], 0x6acb5942
mov dword [rbp + 0x3c], 0x3b2472dc
sub dword [rbp + 0x3c], 0x23d13a3c
xor dword [rbp + 0x3c], 0x17b6c1
sub dword [rbp + 0x3c], 0x17018df0
mov qword [rbp + 0x30], rsi
mov dword [rsp - 0xc], 0x61486820
xchg r13, rax
mov r13, qword [rbp + 0x30]
xchg r13, rax
mov rcx, qword [rbp + 0x30]
xchg r12, r12
xchg r11, rax
mov r11, qword [rbp + 0x30]
xchg r11, rax
and cl, 3
shl cl, 3
mov rcx, rcx
movzx edx, word [rbp + rax*2 + 0x38]
mov eax, r11d
shr eax, cl
mov dword [rsp - 0x3c], esp
movzx ecx, al
mov rax, qword [rbp + 0x30]
xor cx, dx
mov word [rbp + rax*2 - 0x50], cx
mov dword [rsp - 0xc], esi
xchg r10, rax
mov r10, qword [rbp + 0x30]
xchg r10, rax
inc rax
xchg rdx, rax
mov qword [rbp + 0x30], rdx
xchg rdx, rax
mov rax, qword [rbp + 0x30]
xchg rdi, rdi
cmp rax, 4
jb 0x140039f7f
mov rax, qword [0x1400ee298]
movabs rcx, 0x1d7eb5a611dcd41e
add rcx, 0x5fb42c47
sub rcx, 0x4f4193ab
xor rcx, 0x37bacd4b
xor rcx, 0x5298958b
mov r8, qword [rbp - 0x40]
mov dword [rsp - 0x28], ecx
not rax
sub rax, rcx
mov dword [rsp + 0x28], 0x3e968d96
sub dword [rsp + 0x28], 0x2f2f9212
add dword [rsp + 0x28], 0x10e4b43c
sub dword [rsp + 0x28], 0x204bafbf
ror rax, 7
ror rax, 6
ror rax, 2
ror rax, 1
ror rax, 1
movabs rcx, 0x42e617ae1615ecbb
add rcx, 0xa00d2fc
sub rcx, 0x1ae94792
xor rcx, 0x22f1e527
add rcx, 0x7fffffff
xor rcx, 0x4c6106f2
sub rax, rcx
xchg rsi, rsi
mov word [rbp - 0x48], si
ror rax, 0x38
ror rax, 2
ror rax, 2
ror rax, 1
movabs rdx, 0x47f129a560ce1010
xor rdx, 0x543e0bc5
xor rdx, 0x260dffee
add rdx, 0x7fffffff
xor rdx, 0x28299096
xor rax, rdx
mov dword [rsp - 0x10], 0x3cf5cf96
mov qword [rsp + 0x20], rsi
ror rax, 7
ror rax, 3
ror rax, 1
ror rax, 1
lea rdx, [rbp - 0x50]
xchg rbx, rbx
xor r9d, r9d
xor ecx, ecx
call rax
xor eax, eax
mov dword [rsp - 0x3c], 0x6fa7592c
lea rdi, [rbp - 0x50]
lea ecx, [rax + 4]
rep stosb byte [rdi], al
xchg rcx, r14
mov r14, qword [rbp - 0x40]
xchg r14, rcx
lea rax, [rbp - 0x38]
cmp rcx, rax
jne 0x14003a127
mov dword [rsp - 0x28], 0x1a7bb631
xor eax, eax
lea rdi, [rbp - 0x38]
lea ecx, [rax + 0x30]
mov dword [rsp - 0x34], ebp
rep stosb byte [rdi], al
jmp 0x14003a12f
call fcn.140092c10
mov rsi, rsi
xchg rbx, rcx
mov rcx, qword [rsp + 0xa0]
xchg rbx, rcx
add rsp, 0x65b69f14
sub rsp, 0x65b69e94
nop
add rsp, 8
mov rdi, qword [rsp - 8]
pop rsi
mov dword [rsp - 0x40], esi
nop
mov rbp, qword [rsp]
add rsp, 8
ret