Function at 0x1401bbf20
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x50
lea rbp, [rsp + 0x50]
mov qword [rbp - 0x18], rcx
mov eax, 0x10
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1401bc6b1
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp - 8], rax
add rax, 0x60
mov qword [rbp - 0x10], rax
sub rsp, 0x20
call fcn.1401b9f10
mov rax, qword [rbp - 8]
add rsp, 0x20
cmp byte [rax + 0x60], 0
jne 0x1401bc27e
mov eax, dword [0x1401d3700]
and eax, dword [0x1401d3704]
add eax, 0xd7eaf4d8
mov ecx, 0xf1422b6a
xor ecx, 0xd01cf1e0
xor edx, edx
div ecx
add eax, 0x27fb5d21
mov ecx, 0x84818824
xor ecx, 0x8ab425f3
cmp eax, ecx
je 0x1401bc3a7
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401d3708]
mov r9d, dword [0x1401d370c]
mov edx, 0xa746ed75
xor edx, 0x58b9128a
mov r10d, r9d
xor r10d, edx
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
mov r10d, 0x53587a4d
xor r10d, 0xaca785b2
xor edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0x7ffcaa4d
xor edx, edx
div r8d
mov edx, eax
and edx, 0xcad3213c
shl edx, 1
xor eax, 0xcad3213c
add eax, edx
xor edx, edx
sub edx, 0x6f7cc1bf
sub eax, edx
mov dword [rbp - 0x28], eax
sub rsp, 0x20
call fcn.1401bb1e0
mov rcx, qword [rbp - 0x10]
mov eax, dword [rbp - 0x28]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0x9823146d
ja 0x1401bbfb2
mov al, byte [rbp - 0x21]
test al, 1
jne 0x1401bc064
jmp 0x1401bc27e
mov eax, dword [0x1401d3710]
xor eax, 0xe74f9215
mov edx, dword [0x1401d3714]
mov ecx, eax
xor ecx, edx
mov r8d, 0x7e2fa816
xor r8d, 0x81d057e9
xor ecx, r8d
or eax, edx
and eax, ecx
xor eax, 0x44e028fc
mov ecx, 0x6807208e
xor ecx, 0xbd87f331
xor edx, edx
div ecx
imul eax, eax, 0x4f73f3ff
mov ecx, 0x810830ec
xor ecx, 0xfb27af5c
cmp eax, ecx
je 0x1401bc3b0
mov rdx, qword [rbp - 0x18]
mov ecx, dword [0x1401d3718]
mov r9d, dword [0x1401d371c]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, ecx
and r8d, r10d
mov eax, ecx
or eax, r10d
mov r10d, 0x689ef762
xor r10d, 0x9761089d
xor eax, r10d
imul eax, r8d
mov r8d, ecx
and r8d, r9d
or ecx, r9d
imul ecx, r8d
add ecx, eax
mov eax, 0x4223e0ed
xor eax, 0xbdb32bfa
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x4e88cab4
mov r8d, 0xffffffff
xor r8d, 0x4e88cab4
and ecx, r8d
or eax, ecx
sub eax, 0x1c6fa302
mov ecx, 0x329b3464
xor ecx, 0x822f966a
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x38]
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x29], dl
cmp eax, ecx
jae 0x1401bc0ba
mov al, byte [rbp - 0x29]
test al, 1
jne 0x1401bc3a2
jmp 0x1401bc160
mov ecx, 0x30
mov edx, 8
sub rsp, 0x20
call fcn.14001be40
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov qword [rax], 0
mov dword [rax + 8], 2
mov ecx, 0xb54
sub rsp, 0x20
call fcn.140062510
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x38], rcx
cmp byte [rax], 0
jne 0x1401bc27e
mov rax, qword [rbp - 0x38]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401bc1ef
mov rcx, qword [rbp - 0x38]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000c8ac
add rsp, 0x20
jmp 0x1401bc27e
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x18]
mov r8, qword [rbp - 0x38]
mov dword [rdx + 0xc], r8d
mov rax, qword [rax]
mov rdx, qword [rax + 0x38]
sub rsp, 0x20
call fcn.140079950
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx + 0x10], r8
mov rdx, qword [rdx + 8]
mov qword [rcx + 0x18], rdx
cmp byte [rax], 0
jne 0x1401bc27e
mov rdx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x18]
mov rcx, qword [0x1401dd2d8]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x1401dd2e0]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140026540
mov rax, qword [rbp - 0x10]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401bc3a2
sub rsp, 0x20
call fcn.1401ac2b5
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
cmp word [rax + 0x12], 1
jle 0x1401bc3a2
mov eax, dword [0x1401d3720]
mov edx, dword [0x1401d3724]
xor edx, 0xa16c5006
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, 0xb8e540e3
xor edx, edx
div ecx
mov ecx, 0x3fcf8d6a
xor ecx, 0x8984070d
xor edx, edx
div ecx
mov ecx, 0xd547a6d1
xor edx, edx
div ecx
mov ecx, 0x743ab8fe
xor ecx, 0xb02a54eb
cmp eax, ecx
jae 0x1401bc3b9
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401d3728]
sub eax, dword [0x1401d372c]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x7809f746
add eax, edx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x373aa427
or edx, 0x373aa427
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
sub eax, 0xacca216d
add eax, 0x2c497d23
add eax, 0xacca216d
mov rcx, qword [rcx + 0x18]
mov ecx, dword [rcx + 8]
mov edx, 0x2be2203
xor edx, 0xd6bb6b85
cmp ecx, edx
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0xf688110
jbe 0x1401bc3b9
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1401bc364
jmp 0x1401bc3a2
mov rax, qword [rbp - 0x10]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401ac2c7
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140091980
mov rax, qword [rbp - 0x10]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401bc3a2
sub rsp, 0x20
call fcn.1401ac31b
add rsp, 0x20
mov rsp, rbp
pop rbp
ret
xchg edx, eax
mov ah, 0xd7
jmp 0x1401bbfb2
pushfq
wait
and bl, byte [rdx - 0x2fe17]
jmp qword [rdx - 0x161b42d4]
movabs byte [0xffffff27e9e4bd2c], al