Function at 0x1401bc9d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push r13
sub rsp, 0x38
movabs rax, 0xfffffff5f8080cf
sub rax, 0x1bb48ade
add rax, 0x1d3403ef
sub rax, 0x43f5dc68
add rax, 0x1cce456a
sub rax, 0x7c14da2
add rax, 0x7fffffff
add rax, 0x4de8eac0
mov r13, rcx
bsr rcx, rax
mov ebx, 0x26f4e72b
sub ebx, 0x1ab21742
add ebx, 0x53ade42
xor ebx, 0x626e8e70
sub ebx, 0x61db52b3
add ebx, 0x3a872738
sub ebx, 0x4bbef4df
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x1401bce7f
xchg rbp, r12
mov qword [rsp + 0x58], r12
xchg rbp, r12
lea rax, [rdx - 1]
xchg rbp, r12
mov r12, qword [r13 + 8]
xchg r12, rbp
or rax, rbx
bsr rcx, rax
xchg rcx, rsi
mov qword [rsp + 0x60], rcx
xchg rcx, rsi
xchg r8, r15
mov r15, rbp
xchg r8, r15
inc ecx
xchg rsi, rdi
mov qword [rsp + 0x68], rsi
xchg rsi, rdi
shl rbx, cl
xchg rcx, r12
mov qword [rsp + 0x30], rcx
xchg r12, rcx
lea r12, [r13 + 0x18]
mov rcx, r12
lea rdx, [rbx + rbx]
call fcn.1401bc310
mov qword [r13 + 0x38], rbx
lea rax, [rbx - 1]
mov qword [r13 + 0x30], rax
mov rdi, qword [r13 + 8]
mov rdi, qword [rdi]
mov rsi, rdi
cmp rdi, rbp
je 0x1401bcdf5
xchg rdi, r14
mov qword [rsp + 0x28], rdi
xchg rdi, r14
movabs rax, 0xcbf29ce4258cec68
add rax, 0x1d760584
xor rax, 0x5a231b62
sub rax, 0x10ac722b
add rax, 0x6d9234e3
add rax, 0x7fffffff
sub rax, 0x71e58a20
mov qword [rsp + 0x20], r15
movabs r10, 0x1006c6ee56c
sub r10, 0x46855c9d
xor r10, 0x216113de
add r10, 0x668aaaea
xor r10, 0x3c503b2
xor r10, 0x68d647fa
nop dword [rax + rax]
xchg r9, r10
mov r10, qword [rdi + 0x28]
xchg r9, r10
lea r8, [rdi + 0x10]
mov rsi, qword [rsi]
mov r15, qword [rdi + 0x20]
cmp r9, 0x10
jb 0x1401bcb68
xchg r12, r8
mov r12, qword [rdi + 0x10]
xchg r8, r12
xor edx, edx
xchg rcx, r13
mov r13, rax
xchg r13, rcx
test r15, r15
je 0x1401bcbc1
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 0x1401bcb89
and rcx, qword [r13 + 0x30]
xchg r8, r13
mov r8, qword [r12]
xchg r8, r13
shl rcx, 4
add r13, rcx
xchg r12, rsi
mov rsi, qword [r13]
xchg r12, rsi
cmp r12, rbp
jne 0x1401bcbfc
xchg rdi, rsi
mov qword [r13], rsi
xchg rdi, rsi
mov qword [r13 + 8], rdi
jmp 0x1401bcd96
xchg rbx, r15
mov r15, qword [r13 + 8]
xchg rbx, r15
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
jb 0x1401bcc1c
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1401bcc2e
mov rcx, qword [rdi + 0x10]
cmp r15, rax
jne 0x1401bcc97
mov r8, r15
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1401bcc93
xchg r14, r8
mov r14, qword [rbx]
xchg r8, r14
cmp r8, rdi
je 0x1401bcc8a
mov rdx, qword [rdi + 8]
mov qword [rdx], rsi
xchg rbx, rcx
mov rbx, qword [rsi + 8]
xchg rcx, rbx
mov qword [rcx], r8
mov rax, qword [r8 + 8]
xchg r12, rdi
mov qword [rax], r12
xchg r12, rdi
mov qword [r8 + 8], rcx
mov qword [rsi + 8], rdx
xchg rbp, rax
mov qword [rdi + 8], rbp
xchg rbp, rax
mov qword [r13 + 8], rdi
jmp 0x1401bcd5b
mov r9, qword [rdi + 0x28]
cmp r12, rbx
je 0x1401bcd0c
nop word [rax + rax]
mov rbx, qword [rbx + 8]
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
xchg r10, rax
mov r10, qword [rdx + 0x10]
xchg r10, rax
jb 0x1401bccc8
mov rdx, qword [rdx]
lea rcx, [rdi + 0x10]
cmp r9, 0x10
jb 0x1401bcce0
xchg rcx, rbx
mov rbx, qword [rdi + 0x10]
xchg rbx, rcx
cmp r15, rax
jne 0x1401bcd03
xchg rsi, r15
mov r8, rsi
xchg r15, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401bce36
mov r9, qword [rdi + 0x28]
cmp r12, rbx
jne 0x1401bccaa
xchg rdx, r14
mov r14, qword [rdi + 8]
xchg r14, rdx
xchg rbx, rsi
mov qword [rdx], rbx
xchg rbx, rsi
xchg r13, rcx
mov r13, qword [rsi + 8]
xchg rcx, r13
xchg r8, rbx
mov qword [rcx], r8
xchg rbx, r8
mov rax, qword [rbx + 8]
xchg rdi, rbp
mov qword [rax], rbp
xchg rdi, rbp
mov qword [rbx + 8], rcx
xchg rdx, r13
mov qword [rsi + 8], r13
xchg rdx, r13
mov qword [rdi + 8], rax
xchg r15, rdi
mov qword [r13], r15
xchg r15, rdi
movabs r10, 0x1002c486d74
xor r10, 0x42c1c392
xor r10, 0x53c6d654
sub r10, 0x18d32ce9
xor r10, 0x64748d99
sub r10, 0x2482cda5
add r10, 0x36fef19f
xor r10, 0x5284ebf9
mov r13, qword [rsp + 0x50]
xchg rsi, r8
mov rdi, r8
xchg r8, rsi
movabs rax, 0xcbf29ce4243a8b98
add rax, 0x59eb518b
sub rax, 0x4928d079
xor rax, 0x7b36fe3c
xor rax, 0x1420e3f4
xor rax, 0x666598e2
sub rax, 0x979bcb3
add rax, 0x500d5658
lea r12, [r13 + 0x18]
cmp rsi, rbp
jne 0x1401bcb3f
mov r15, qword [rsp + 0x20]
xchg r14, r10
mov r10, qword [rsp + 0x28]
xchg r10, r14
xchg rbx, rdi
mov rbx, qword [rsp + 0x68]
xchg rbx, rdi
xchg rsi, r15
mov r15, qword [rsp + 0x60]
xchg rsi, r15
mov rbp, qword [rsp + 0x58]
mov r12, qword [rsp + 0x30]
add rsp, 0x38
nop
add rsp, 8
xchg qword [rsp - 8], r13
nop
add rsp, 8
xchg qword [rsp - 8], rbx
nop
add rsp, 8
jmp qword [rsp - 8]
mov r8, qword [rbx]
mov rdx, qword [rdi + 8]
xchg rbx, rsi
mov qword [rdx], rbx
xchg rbx, rsi
xchg rcx, r10
mov r10, qword [rsi + 8]
xchg rcx, r10
xchg r8, rbp
mov qword [rcx], rbp
xchg r8, rbp
xchg r12, rax
mov r12, qword [r8 + 8]
xchg r12, rax
xchg rdx, rdi
mov qword [rax], rdx
xchg rdi, rdx
mov qword [r8 + 8], rcx
mov qword [rsi + 8], rdx
xchg rbp, rax
mov qword [rdi + 8], rbp
xchg rbp, rax
jmp 0x1401bcd5b
lea rcx, [0x140001530]
call fcn.1401fd1f0
int3