Function at 0x1401b3560
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, rsi
mov qword [rsp + 8], rsi
xchg rsi, rbx
xchg rbp, r13
mov qword [rsp + 0x10], r13
xchg rbp, r13
mov qword [rsp + 0x18], rsi
push rdi
push r9
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
sub rsp, 0x40
xchg r14, r9
mov r9, r14
xchg r9, r14
xchg r8, r9
mov rbx, r9
xchg r9, r8
xchg rcx, rdx
mov r15, rcx
xchg rcx, rdx
mov r13, rcx
mov r11, qword [r8 + 0x10]
xchg r10, r8
mov r8, r10
xchg r10, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401b35db
xchg rcx, r10
mov rcx, qword [r8]
xchg r10, rcx
movabs rdi, 0xcbf29ce440d40de1
xor rdi, 0xbfa16b0
add rdi, 0x1919ed91
sub rdi, 0x2b615ad1
sub rdi, 0x139adff8
add rdi, 0xf1d44e7
sub rdi, 0x327c76d0
add rdi, 0x2d2764e5
add rdi, 0x550e2210
xor r8d, r8d
test r11, r11
je 0x1401b36ae
movabs rcx, 0x100635d0941
xor rcx, 0x343d7973
add rcx, 0xe3a1188
xor rcx, 0x48a4e28
add rcx, 0x11ac3e46
sub rcx, 0x318c7c6e
sub rcx, 0x125a1741
xor rcx, 0x5ab106fe
sub rcx, 0x74677b24
nop word [rax + rax]
movzx eax, byte [r8 + r10]
push rdi
xor edi, eax
push rdi
xor rdi, qword [rsp + 8]
shr rdi, 0x20
ror rax, 0x20
xor edi, eax
ror rax, 0x20
shl rdi, 0x20
or rdi, qword [rsp]
add rsp, 0x10
imul rdi, rcx
inc r8
cmp r8, r11
jb 0x1401b3676
xchg rdi, r14
mov r9, r14
xchg r14, rdi
mov r8, rbx
lea rdx, [rsp + 0x30]
xchg r13, rcx
mov r13, rcx
xchg rcx, r13
call fcn.1401b2c80
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1401b3706
mov qword [r15], rax
mov byte [r15 + 8], 0x18
add byte [r15 + 8], 0x38
sub byte [r15 + 8], 6
sub byte [r15 + 8], 0x1e
add byte [r15 + 8], 0x4e
sub byte [r15 + 8], 0x3e
sub byte [r15 + 8], 0x3c
jmp 0x1401b3b7d
movabs rax, 0x3ffffff2c29f4ed
xor rax, 0x6efc012f
xor rax, 0x75bf6ea5
add rax, 0x24131739
xor rax, 0x443df74b
add rax, 0x390e8f3b
sub rax, 0x3c521284
add rax, 0x7fffffff
add rax, 0x64033d5e
cmp qword [r13 + 0x10], rax
je 0x1401b3bec
lea r12, [r13 + 8]
xchg r13, r12
mov qword [rsp + 0x20], r13
xchg r12, r13
mov qword [rsp + 0x28], 0x6c02cb54
sub qword [rsp + 0x28], 0x28026c0e
sub qword [rsp + 0x28], 0x362d2954
add qword [rsp + 0x28], 0x42de085f
add qword [rsp + 0x28], 0x27f3f60a
sub qword [rsp + 0x28], 0x59bb51aa
xor qword [rsp + 0x28], 0x6ef450a9
sub qword [rsp + 0x28], 0x66b102e7
sub qword [rsp + 0x28], 0x96caf31
mov ecx, 0x1cb32f8f
xor ecx, 0x5c09a2c0
xor ecx, 0x37fe5b04
sub ecx, 0x200a07ea
sub ecx, 0x4a261421
add ecx, 0x231791c4
add ecx, 0x178f7e0f
add ecx, 0x2ccf8de1
sub ecx, 0x748b57b4
call fcn.1401fcc9c
mov rsi, rax
mov qword [rsp + 0x28], rax
lea rbp, [rax + 0x10]
mov rdx, rbx
xchg rbp, rsi
mov rcx, rsi
xchg rbp, rsi
call fcn.140049830
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
xchg r11, rax
mov r11, qword [r14 + 8]
xchg r11, rax
test rax, rax
je 0x1401b3825
lock inc dword [rax + 8]
mov rsi, qword [rsp + 0x28]
mov rax, qword [r14]
xchg r8, rax
mov qword [rbp + 0x20], r8
xchg r8, rax
xchg r10, rax
mov r10, qword [r14 + 8]
xchg r10, rax
xchg r10, rax
mov qword [rbp + 0x28], r10
xchg r10, rax
mov rcx, qword [r13 + 0x10]
xchg rbp, r13
movss xmm3, dword [rbp]
xchg r13, rbp
sub rcx, 0xffffffffffffffff
xorps xmm0, xmm0
js 0x1401b3866
cvtsi2ss xmm0, rcx
jmp 0x1401b387b
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xchg rbx, rdx
mov rdx, qword [r13 + 0x38]
xchg rdx, rbx
xorps xmm2, xmm2
test rbx, rbx
js 0x1401b389b
cvtsi2ss xmm2, rbx
jmp 0x1401b38b7
mov rcx, rbx
shr rcx, 1
xchg r14, rax
mov r14, rbx
xchg r14, rax
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x1401b3acf
divss xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
xor ecx, ecx
movss xmm1, dword [0x140001590]
comiss xmm0, xmm1
jb 0x1401b3926
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401b3926
movabs rax, 0x8000000002358e8b
add rax, 0x6e13a3b4
sub rax, 0x296ab204
sub rax, 0x3f666bec
xor rax, 0x6bb0e05a
add rax, 0x8a681fb
sub rax, 0x756f7610
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 0x56b2e95e
xor ecx, 0x637d8e83
xor ecx, 0x1d1654e5
xor ecx, 0x463b554b
sub ecx, 0xbac4f66
xor ecx, 0x6a22df17
xor ecx, 0x21746b6d
xor ecx, 0x2dc31167
sub ecx, 0x5a3b208
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1401b3994
cmp rbx, 0x200
jae 0x1401b3991
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1401b3994
mov rbx, rcx
xchg rbx, r15
mov rdx, r15
xchg r15, rbx
xchg r13, rbp
mov rcx, rbp
xchg r13, rbp
call fcn.1401bd510
mov rax, qword [r13 + 0x30]
and rax, rdi
add rax, rax
xchg rdi, rdx
mov rdi, qword [r13 + 0x18]
xchg rdx, rdi
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [r12]
cmp rbx, rcx
jne 0x1401b39e1
xchg rcx, r8
mov qword [rsp + 0x20], r8
xchg r8, rcx
jmp 0x1401b3a73
xchg rsi, r12
mov rsi, qword [rdx + rax*8]
xchg r12, rsi
mov rbp, qword [rsi + 0x20]
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1401b3a10
mov rdx, qword [rdx]
lea rcx, [rsi + 0x10]
cmp qword [rsi + 0x28], 0x10
jb 0x1401b3a23
mov rcx, qword [rsi + 0x10]
cmp rbp, rax
jne 0x1401b3a42
xchg rbx, r8
mov rbx, rbp
xchg rbx, r8
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401b3a54
cmp rbx, r12
je 0x1401b3a6a
mov rbx, qword [rbx + 8]
jmp 0x1401b39fa
mov rax, qword [rbx]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
lea r12, [r13 + 8]
jmp 0x1401b3ac4
mov qword [rsp + 0x20], rbx
lea r12, [r13 + 8]
mov qword [rsp + 0x28], 0x20317494
add qword [rsp + 0x28], 0x2a457346
sub qword [rsp + 0x28], 0x1299baaf
sub qword [rsp + 0x28], 0x2ed022dd
xor qword [rsp + 0x28], 0x51b16d58
sub qword [rsp + 0x28], 0x3e2aa98a
add qword [rsp + 0x28], 0x4b4c330b
add qword [rsp + 0x28], 0x8f72a32
sub qword [rsp + 0x28], 0x6ed51ac9
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x30], xmm0
xchg rsi, rdx
mov rsi, qword [rsp + 0x30]
xchg rdx, rsi
mov r8, qword [rdx + 8]
inc qword [r13 + 0x10]
xchg rdx, r8
mov qword [rsi], r8
xchg r8, rdx
mov qword [rsi + 8], r8
xchg rsi, rbp
mov qword [r8], rbp
xchg rsi, rbp
mov qword [rdx + 8], rsi
xchg rcx, rdx
mov rdx, qword [r13 + 0x18]
xchg rcx, rdx
xchg rbp, rax
mov rbp, qword [r13 + 0x30]
xchg rbp, rax
and rax, rdi
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x1401b3b2b
mov qword [rcx + rax*8], rsi
jmp 0x1401b3b48
cmp r9, rdx
jne 0x1401b3b3d
mov qword [rcx + rax*8], rsi
jmp 0x1401b3b4d
cmp qword [rcx + rax*8 + 8], r8
jne 0x1401b3b4d
mov qword [rcx + rax*8 + 8], rsi
mov qword [r15], rsi
mov byte [r15 + 8], 0xe
sub byte [r15 + 8], 4
add byte [r15 + 8], 0x25
xor byte [r15 + 8], 0x72
sub byte [r15 + 8], 0x2c
add byte [r15 + 8], 0x15
xor byte [r15 + 8], 0x76
xor byte [r15 + 8], 0x1e
sub byte [r15 + 8], 0x2d
xchg r15, r12
mov rax, r12
xchg r12, r15
xchg rbx, r14
mov r14, qword [rsp + 0x70]
xchg rbx, r14
xchg rbp, r10
mov r10, qword [rsp + 0x78]
xchg rbp, r10
xchg rsi, r8
mov r8, qword [rsp + 0x80]
xchg r8, rsi
add rsp, 0x40
push rbx
push rax
push rcx
xchg qword [rsp + 0x18], r15
add rsp, 0x20
nop
xchg qword [rsp], r14
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
push rdx
push rdx
push rax
push rax
xchg qword [rsp + 0x20], r12
add rsp, 0x28
nop
mov rdi, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [0x140001510]
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3