Function at 0x1401e9e50
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x118
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rcx
call fcn.1401ee866
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x88], rax
add rax, 0x50
mov qword [rsp + 0x78], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov qword [rsp + 0x108], 0
lea rax, [rsp + 0x108]
add rax, 8
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x110], 0
lea rcx, [rsp + 0xf0]
mov edx, 0x101
call fcn.1400a7170
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rsp + 0xf8]
mov qword [rsp + 0x98], rcx
mov al, byte [rax + 0x50]
mov cl, 0x39
xor cl, 0x39
cmp al, cl
jne 0x1401ea4be
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xe0]
call fcn.1401e987d
mov rcx, rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x60], rcx
cmp byte [rax], 0
jne 0x1401ea4be
mov rcx, qword [rsp + 0x60]
mov rax, rcx
and rax, 0xffffffff80000000
movabs rdx, 0x1e1c455bcb852aec
movabs r8, 0xe1e3baa44b852aec
xor rdx, r8
or rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401e9f9e
mov rcx, qword [rsp + 0x60]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
call fcn.14000cee2
jmp 0x1401ea4be
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x104], edx
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0xd0]
call fcn.1401e991a
mov rcx, rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x58], rcx
cmp byte [rax], 0
jne 0x1401ea4be
mov eax, dword [0x14025d740]
or eax, dword [0x14025d744]
mov ecx, eax
and ecx, 0xb3b88ef6
shl ecx, 1
add eax, 0xb3b88ef6
sub eax, ecx
mov ecx, 0x9ca2c010
xor edx, edx
div ecx
imul eax, eax, 0x3738d3e
cmp eax, 0xba75f83e
ja 0x1401ea58e
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x14025d748]
xor eax, 0x84c913ec
xor edx, edx
div dword [0x14025d74c]
sub eax, 0x9099c7b7
mov edx, 0x860bbc6f
xor edx, 0x67d80634
add eax, edx
mov r8d, 0x689025bd
xor edx, edx
div r8d
mov dword [rsp + 0x4c], eax
lea rdx, [rsp + 0x104]
call fcn.1400ac6a6
mov rcx, qword [rsp + 0x78]
mov edx, eax
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x50], edx
mov cl, byte [rcx]
mov dl, 0xbf
xor dl, 0xbf
cmp cl, dl
sete cl
mov byte [rsp + 0x57], cl
cmp eax, 0x53c404ae
je 0x1401ea58e
mov al, byte [rsp + 0x57]
test al, 1
jne 0x1401ea0a6
jmp 0x1401ea4be
mov eax, dword [rsp + 0x50]
cmp eax, 0
jne 0x1401ea204
mov ecx, dword [0x14025d750]
mov edx, dword [0x14025d754]
mov eax, 0x9c7d5287
xor eax, 0x12e36241
xor edx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0xaf5214ee
xor r9d, 0x50adeb11
mov r8d, ecx
xor r8d, r9d
and eax, r8d
mov r8d, edx
or r8d, r8d
mov r9d, 0x2b6998e4
xor r9d, 0xd496671b
xor r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xab4e7039
xor r8d, 0x54b18fc6
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
add eax, 0x15e7cd19
mov ecx, 0x1baebc58
xor ecx, 0x792c9b28
add eax, ecx
mov ecx, 0x9a8c9b64
xor ecx, 0x8f6b567d
sub eax, ecx
mov edx, eax
and edx, 0x2658dcda
mov ecx, 0x2e5353c2
xor ecx, 0x2e5353c0
imul ecx, edx
add eax, 0x2658dcda
sub eax, ecx
and eax, 0x2c329a9e
cmp eax, 0x15c446e5
jb 0x1401ea597
mov rcx, qword [rsp + 0x98]
mov eax, dword [0x14025d758]
imul eax, dword [0x14025d75c]
mov edx, 0x92e65f0b
xor edx, 0xf05d0593
imul eax, edx
add eax, 0x23d94e25
mov r8d, 0x2480121e
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x70]
mov r8, qword [0x140269048]
mov qword [rdx], r8
mov r8, qword [0x140269050]
mov qword [rdx + 8], r8
cmp rcx, 0
sete cl
mov byte [rsp + 0x4b], cl
cmp eax, 0x26dc41ad
ja 0x1401ea16c
mov al, byte [rsp + 0x4b]
test al, 1
jne 0x1401ea581
jmp 0x1401ea1e0
mov rcx, qword [rsp + 0x98]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
je 0x1401ea574
jmp 0x1401ea581
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb0]
call fcn.1401e9950
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x40], rcx
mov al, byte [rax]
mov cl, 0xdb
xor cl, 0xdb
cmp al, cl
jne 0x1401ea489
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rax
lea rcx, [rsp + 0x108]
lea rdx, [rsp + 0xa0]
call fcn.1401e9b90
mov rax, qword [rsp + 0x78]
mov al, byte [rax]
mov cl, 0xc3
xor cl, 0xc3
cmp al, cl
jne 0x1401ea489
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x108]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x110]
mov qword [rax + 8], rcx
lea rcx, [rsp + 0x108]
call fcn.1400102b5
mov rax, qword [rsp + 0x40]
cmp rax, 0
je 0x1401ea345
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
movabs rdx, 0x224ae528ee259c49
movabs rcx, 0x224ae528ee259c48
xor rdx, rcx
mov rcx, rax
add rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0xfb443fb02a9e3402
movabs rdx, 0xfb443fb02a9e3402
xor rcx, rdx
cmp rax, rcx
jne 0x1401ea345
mov rcx, qword [rsp + 0x40]
call fcn.14000e9f6
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
cmp rax, 0
je 0x1401ea3ab
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
movabs rcx, 0x6736a826e060d825
movabs rdx, 0x2736a826e060d825
xor rcx, rdx
and rax, rcx
movabs rcx, 0x93d57cb2363da45
movabs rdx, 0x93d57cb2363da45
xor rcx, rdx
cmp rax, rcx
jne 0x1401ea3ab
mov rcx, qword [rsp + 0x30]
call fcn.14000e9f6
mov rax, qword [rsp + 0x98]
cmp rax, 0
je 0x1401ea581
mov eax, dword [0x14025d760]
xor edx, edx
div dword [0x14025d764]
add eax, 0x2a0584d0
add eax, 0xb13f818e
mov ecx, 0xa6c11944
xor ecx, 0x8cc49d94
sub eax, ecx
mov ecx, 0x6518a3a4
xor ecx, 0xc8da21c8
and eax, ecx
sub eax, 0xca648b56
cmp eax, 0x7f26120e
jb 0x1401ea5a0
mov eax, dword [0x14025d768]
mov ecx, 0x8992d769
xor ecx, 0x46c90f6d
xor eax, ecx
mov edx, dword [0x14025d76c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
sub eax, 0x660d58f0
mov ecx, 0x957a4195
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x98]
add eax, 0x2ab8eb60
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0xcd96498e838a4605
movabs r8, 0xcd96498e838a4605
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0xf803ecf9
je 0x1401ea3ff
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1401ea574
jmp 0x1401ea581
mov rax, qword [rsp + 0x40]
cmp rax, 0
je 0x1401ea4be
mov rcx, qword [rsp + 0x40]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401ea4be
mov rcx, qword [rsp + 0x40]
call fcn.14000e9f6
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
cmp rax, 0
je 0x1401ea543
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xec27a0d69382224a
movabs rdx, 0xec27a0d69382224a
xor rcx, rdx
cmp rax, rcx
jne 0x1401ea543
mov rcx, qword [rsp + 0x20]
call fcn.14000e9f6
mov rax, qword [rsp + 0x98]
cmp rax, 0
je 0x1401ea581
mov rcx, qword [rsp + 0x98]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1401ea581
mov rcx, qword [rsp + 0x98]
call fcn.14000e9f6
mov rax, qword [rsp + 0x68]
add rsp, 0x118
ret
ret 0x6185
invalid
test rax, 0x56e98c4b
invalid