Function at 0x140071cd0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x98
mov qword [rsp + 0x88], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rcx, qword [rsp + 0x88]
add rax, 0x60
mov qword [rsp + 0x90], rax
cmp qword [rcx], 0
jle 0x140071f63
mov rax, qword [rsp + 0x88]
add rax, 8
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x58], rdx
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rcx, rax
add rcx, 8
shl rdx, 5
add rcx, rdx
add rcx, 0x10
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
cmp rcx, 0
mov qword [rsp + 0x70], rax
je 0x140071ddf
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r8, rdx
mov rdx, 0xffffffffffffffff
movabs r9, 0xb94eb47d90a9ee1d
xor rdx, r9
or rcx, r8
movabs r8, 0xb94eb47d90a9ee1d
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x70], rax
jne 0x140071ddf
mov rcx, qword [rsp + 0x68]
call fcn.14001a7c0
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x70]
add rax, 8
shl rcx, 5
add rax, rcx
add rax, 0x18
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rax, qword [rsp + 0x50]
cmp rax, 0
je 0x140071f2b
mov rcx, qword [rsp + 0x50]
mov rax, rcx
and rax, 0xfffffffffffffff0
or rcx, 0xfffffffffffffff0
add rax, rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
cmp rax, 0x10
jb 0x140071ea5
mov rdx, qword [rsp + 0x48]
mov rax, rdx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x38], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140071e7b
jmp 0x140071e85
call fcn.14000ee80
jmp 0x140071f2b
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x38]
mov qword [rdx], rax
xor ecx, ecx
mov r8, qword [str.X__]
call fcn.14001d8a6
jmp 0x140071f2b
mov rdx, qword [rsp + 0x40]
mov ecx, 1
mov r8, qword [str.X__]
call fcn.14001d8a6
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rax]
add rax, 8
shl rcx, 5
add rax, rcx
add rax, 0x18
mov rcx, qword [rax]
call fcn.1401974b0
mov rax, qword [rsp + 0x90]
cmp byte [rax], 0
jne 0x140072035
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
add rax, 8
shl rcx, 5
add rax, rcx
add rax, 0x18
mov rcx, qword [rax]
movabs rdx, 0xf8cb985d5d3463dd
movabs rax, 0xf8cb985d5d3463d5
xor rdx, rax
call fcn.14001ab40
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x58]
movabs rdx, 0x8f63c71d97cd5fb1
movabs r8, 0x8f63c71d97cd5fb0
xor rdx, r8
add rax, rdx
cmp rax, qword [rcx]
mov qword [rsp + 0x80], rax
jl 0x140071d26
mov rax, qword [rsp + 0x88]
mov rax, qword [rax + 8]
mov qword [rsp + 0x30], rax
cmp rax, 0
je 0x140072035
mov eax, dword [0x1402aaf00]
xor eax, 0x5c240b79
and eax, dword [0x1402aaf04]
sub eax, 0x97c04a04
mov ecx, eax
and ecx, 0x1479db0f
shl ecx, 1
add eax, 0x1479db0f
sub eax, ecx
add eax, 0xb8a13cb7
mov ecx, 0x31d00d98
xor ecx, 0xda151c55
cmp eax, ecx
jae 0x14007203d
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1402aaf08]
mov edx, dword [0x1402aaf0c]
xor edx, 0x2cb99cc9
xor eax, edx
mov edx, 0x839f52e9
xor edx, 0x4801b258
xor eax, edx
mov r8d, 0x3800d267
xor r8d, 0xc6fd8d65
xor edx, edx
div r8d
mov r8d, 0x3880f4c8
xor edx, edx
div r8d
mov dword [rsp + 0x2c], eax
movabs rdx, 0x8b3df318c00901da
movabs rax, 0x8b3df318c00901d2
xor rdx, rax
call fcn.14001a8c0
mov eax, dword [rsp + 0x2c]
cmp eax, 0xd50e2af8
je 0x140071fbe
jmp 0x140072035
add rsp, 0x98
ret
invalid