Function at 0x1401b7a30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x50], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x50]
cmp rcx, 0
je 0x1401b7c98
mov rax, qword [rsp + 0x50]
mov rcx, rax
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x40], rcx
mov rax, qword [rax - 0x10]
mov qword [rsp + 0x48], rax
cmp rax, 0x10
jb 0x1401b7c77
mov eax, dword [0x14027de98]
xor eax, 0xe9fadc3e
mov edx, dword [0x14027de9c]
mov ecx, 0x57c7469a
xor ecx, 0x57c7469a
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x3ea3d629
sub eax, ecx
and eax, 0xeef3301e
add eax, 0x86a8ff4e
mov ecx, 0x9ba8e3f0
xor ecx, 0xf4ddb7c
add eax, ecx
sub eax, 0x86a8ff4e
mov ecx, 0xcdb67bae
xor ecx, 0xaed5e55f
cmp eax, ecx
je 0x1401b7d49
mov eax, dword [0x14027dea0]
mov ecx, dword [0x14027dea4]
xor ecx, 0xa264aea5
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x48]
mov ecx, eax
mov r8d, 0x94975638
xor r8d, 0x3e4df04d
mov eax, ecx
and eax, r8d
or ecx, 0xaadaa675
add eax, ecx
add eax, 0xc0ffb969
mov r8d, 0x142822d2
xor r8d, 0xebd7dd2d
mov ecx, eax
xor ecx, r8d
mov r8d, 0xa52cae76
xor r8d, 0xcf193f25
and ecx, r8d
mov r8d, 0xffffffff
xor r8d, 0x6a359153
and eax, r8d
sub eax, ecx
xor ecx, ecx
mov r8d, ecx
sub r8, 0xfffffffffffffff0
mov rcx, rdx
sub rcx, r8
mov qword [rsp + 0x30], rcx
mov r9, rcx
xor r9, rdx
xor r9, 0xffffffffffffffff
mov r8, rdx
and r8, r9
shl r8, 1
sub r8, rdx
mov rdx, rcx
sub rdx, r8
cmp rdx, 0
setl dl
cmp rcx, 0xffffffffffffffff
setg cl
and cl, dl
mov byte [rsp + 0x3f], cl
cmp eax, 0xa6f9601d
ja 0x1401b7adb
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x1401b7bac
jmp 0x1401b7bb6
call fcn.14000f24b
jmp 0x1401b7c98
mov eax, dword [0x14027dea8]
mov edx, dword [0x14027deac]
mov ecx, eax
and ecx, edx
mov r8d, 0x6aea62a6
xor r8d, 0x6aea62a4
imul ecx, r8d
xor eax, edx
add eax, ecx
mov ecx, 0xc0a47143
xor ecx, 0xcbd3a371
xor edx, edx
div ecx
or eax, 0x1a709d47
or eax, 0x270b15d1
cmp eax, 0x16928d0e
jbe 0x1401b7d52
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
mov r8d, dword [0x14027deb0]
xor r8d, 0xaf58033d
mov r9d, dword [0x14027deb4]
mov r10d, 0x1744c413
xor r10d, 0x7d1a6863
xor r9d, r10d
xor r8d, r9d
xor r9d, r9d
sub r9d, 0xea253e59
add r8d, r9d
and r8d, 0x71cbbd43
imul r8d, r8d, 0x8d87c3c8
mov dword [rsp + 0x2c], r8d
mov qword [rdx], rcx
mov r8, qword [rax]
xor ecx, ecx
call fcn.1400200e0
mov eax, dword [rsp + 0x2c]
cmp eax, 0x391df183
ja 0x1401b7bff
jmp 0x1401b7c98
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rax]
mov ecx, 1
call fcn.1400200e0
mov rcx, qword [rsp + 0x50]
call fcn.140020296
mov eax, dword [0x14027deb8]
xor eax, 0xed550db7
mov r8d, dword [0x14027debc]
mov edx, 0xf856ab4b
xor edx, 0x7a954b4
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0xbc80fd02
mov ecx, 0x36b17b31
xor ecx, 0x4634114
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xb6371656
add eax, ecx
mov ecx, 0x9599a9b1
xor ecx, 0x9599a9b0
add eax, ecx
cmp eax, 0x154b7d01
je 0x1401b7d5b
mov eax, dword [0x14027dec0]
xor edx, edx
div dword [0x14027dec4]
mov ecx, 0xb805f4f8
xor ecx, 0xf8338b26
xor eax, ecx
imul eax, eax, 0x8bf59050
or eax, 0xafa1eddb
cmp eax, 0x40d1c3ef
jb 0x1401b7d13
add rsp, 0x58
ret
jns 0x1401b7ccf
sub ebp, ecx
mov ebp, edi
invalid
pushfq
fstp xword [rcx + rbx*4 - 0x17]
movsb byte [rdi], byte [rsi]
invalid
invalid