Function at 0x1401bd040
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, rbx
mov qword [rsp + 8], rbx
xchg rcx, rbx
push rbx
push r13
sub rsp, 0x38
movabs rax, 0xfffffff1610a603
add rax, 0x34bb3f45
xor rax, 0x3685dea9
sub rax, 0x305ff0fd
add rax, 0x23f23ae8
sub rax, 0x3ef43712
sub rax, 0x8d6ff56
add rax, 0x7fffffff
add rax, 0x57eab09c
xchg r11, r13
mov r11, rcx
xchg r11, r13
bsr rcx, rax
mov ebx, 0x13d6a075
xor ebx, 0x34cbad99
add ebx, 0x4e1972da
sub ebx, 0x2818853b
add ebx, 0x478a469
xor ebx, 0x51969ff5
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x1401bd4fa
xchg rdx, rbp
mov qword [rsp + 0x58], rdx
xchg rbp, rdx
lea rax, [rdx - 1]
mov rbp, qword [r13 + 8]
or rax, rbx
bsr rcx, rax
mov qword [rsp + 0x60], rsi
mov r8, rbp
inc ecx
xchg rdi, rcx
mov qword [rsp + 0x68], rcx
xchg rdi, rcx
shl rbx, cl
mov qword [rsp + 0x30], r12
lea r12, [r13 + 0x18]
xchg rcx, r12
mov r12, rcx
xchg rcx, r12
lea rdx, [rbx + rbx]
call fcn.1401bc940
xchg rbx, rcx
mov qword [r13 + 0x38], rcx
xchg rbx, rcx
lea rax, [rbx - 1]
xchg rbx, rax
mov qword [r13 + 0x30], rbx
xchg rbx, rax
xchg rdi, r15
mov r15, qword [r13 + 8]
xchg r15, rdi
mov rdi, qword [rdi]
xchg rdi, rsi
mov rdi, rsi
xchg rdi, rsi
cmp rdi, rbp
je 0x1401bd476
mov qword [rsp + 0x28], r14
movabs rax, 0xcbf29ce45bf2a748
sub rax, 0x34b497a3
xor rax, 0x7a8ac27c
xor rax, 0x451dfd89
add rax, 0x2b7221e0
add rax, 0x7fffffff
sub rax, 0x3ff92f0a
mov qword [rsp + 0x20], r15
movabs r10, 0x10068cada02
sub r10, 0x4f531489
add r10, 0x5bef9d39
xor r10, 0x3bdbd13e
xor r10, 0x4120e4e8
xor r10, 0x22473f72
sub r10, 0x20ca22e9
sub r10, 0xd11437a
nop dword [rax + rax]
mov r9, qword [rdi + 0x28]
lea r8, [rdi + 0x10]
mov rsi, qword [rsi]
mov r15, qword [rdi + 0x20]
cmp r9, 0x10
jb 0x1401bd1e4
mov r8, qword [rdi + 0x10]
xor edx, edx
xchg rbp, rcx
mov rbp, rax
xchg rcx, rbp
test r15, r15
je 0x1401bd23d
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
inc rdx
push rcx
xor ecx, eax
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror rax, 0x20
xor ecx, eax
ror rax, 0x20
shl rcx, 0x20
xor rcx, qword [rsp]
add rsp, 0x10
imul rcx, r10
cmp rdx, r15
jb 0x1401bd205
and rcx, qword [r13 + 0x30]
xchg r13, r15
mov r15, qword [r12]
xchg r15, r13
shl rcx, 3
shl rcx, 1
add r13, rcx
xchg r12, r11
mov r11, qword [r13]
xchg r12, r11
cmp r12, rbp
jne 0x1401bd281
xchg rdi, r10
mov qword [r13], r10
xchg rdi, r10
xchg r8, rdi
mov qword [r13 + 8], r8
xchg r8, rdi
jmp 0x1401bd417
xchg rbx, r12
mov r12, qword [r13 + 8]
xchg rbx, r12
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
jb 0x1401bd2a1
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1401bd2b9
xchg r10, rcx
mov r10, qword [rdi + 0x10]
xchg r10, rcx
cmp r15, rax
jne 0x1401bd32e
mov r8, r15
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1401bd324
mov r8, qword [rbx]
cmp r8, rdi
je 0x1401bd315
xchg r9, rdx
mov r9, qword [rdi + 8]
xchg rdx, r9
mov qword [rdx], rsi
xchg rbx, rcx
mov rbx, qword [rsi + 8]
xchg rcx, rbx
mov qword [rcx], r8
xchg r11, rax
mov r11, qword [r8 + 8]
xchg r11, rax
mov qword [rax], rdi
xchg rcx, rdi
mov qword [r8 + 8], rdi
xchg rdi, rcx
mov qword [rsi + 8], rdx
mov qword [rdi + 8], rax
xchg rdi, r11
mov qword [r13 + 8], r11
xchg r11, rdi
jmp 0x1401bd3ea
xchg r9, r10
mov r10, qword [rdi + 0x28]
xchg r9, r10
cmp r12, rbx
je 0x1401bd3a3
nop word [rax + rax]
mov rbx, qword [rbx + 8]
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
xchg rdi, rax
mov rdi, qword [rdx + 0x10]
xchg rdi, rax
jb 0x1401bd35f
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1401bd371
mov rcx, qword [rdi + 0x10]
cmp r15, rax
jne 0x1401bd39a
xchg r14, r15
mov r8, r14
xchg r15, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401bd4b5
xchg rcx, r9
mov rcx, qword [rdi + 0x28]
xchg r9, rcx
cmp r12, rbx
jne 0x1401bd341
xchg rbx, rdx
mov rbx, qword [rdi + 8]
xchg rdx, rbx
xchg rsi, r9
mov qword [rdx], r9
xchg rsi, r9
xchg rbx, rcx
mov rbx, qword [rsi + 8]
xchg rcx, rbx
mov qword [rcx], rbx
mov rax, qword [rbx + 8]
mov qword [rax], rdi
xchg r14, rcx
mov qword [rbx + 8], r14
xchg rcx, r14
mov qword [rsi + 8], rdx
xchg r13, rax
mov qword [rdi + 8], r13
xchg r13, rax
xchg rdi, rcx
mov qword [r13], rcx
xchg rdi, rcx
movabs r10, 0x10068d80d85
sub r10, 0x2fe7bba4
xor r10, 0xfa9243d
xor r10, 0x19e870d1
xor r10, 0x278d028a
sub r10, 0x93c05d4
mov r13, qword [rsp + 0x50]
xchg rdi, r8
mov r8, rsi
xchg rdi, r8
movabs rax, 0xcbf29ce435bb7d60
add rax, 0x14a2ea7c
add rax, 0xe478638
sub rax, 0x389d8f9
add rax, 0x27136a9f
sub rax, 0xa3f7c9c
sub rax, 0x642f0b50
add rax, 0x76612b57
lea r12, [r13 + 0x18]
cmp rsi, rbp
jne 0x1401bd1c7
xchg r15, r8
mov r8, qword [rsp + 0x20]
xchg r15, r8
mov r14, qword [rsp + 0x28]
xchg r8, rdi
mov r8, qword [rsp + 0x68]
xchg r8, rdi
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
xchg r12, rbx
mov rbx, qword [rsp + 0x30]
xchg rbx, r12
add rsp, 0x38
nop
xchg qword [rsp], r13
add rsp, 8
nop
mov rbx, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
mov r8, qword [rbx]
xchg rdx, rcx
mov rcx, qword [rdi + 8]
xchg rdx, rcx
xchg rdi, rsi
mov qword [rdx], rdi
xchg rdi, rsi
xchg rbp, rcx
mov rbp, qword [rsi + 8]
xchg rcx, rbp
mov qword [rcx], r8
xchg r15, rax
mov r15, qword [r8 + 8]
xchg r15, rax
xchg rdi, rbp
mov qword [rax], rbp
xchg rbp, rdi
mov qword [r8 + 8], rcx
mov qword [rsi + 8], rdx
mov qword [rdi + 8], rax
jmp 0x1401bd3ea
lea rcx, [0x140001530]
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3