Function at 0x140070653
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rcx
call fcn.140067614
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
call fcn.1400341cd
mov cl, al
mov rax, qword [rsp + 0x48]
mov byte [rsp + 0x57], cl
mov al, byte [rax]
mov cl, 0x43
xor cl, 0x43
cmp al, cl
jne 0x1400705ae
mov al, byte [rsp + 0x57]
mov cl, 0x5c
xor cl, 0x9c
cmp al, cl
jne 0x1400703dc
mov rcx, qword [rsp + 0x40]
call fcn.14006b740
jmp 0x1400705ae
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
cmp rax, 0
mov qword [rsp + 0x30], rax
jne 0x14007059f
xor eax, eax
mov ecx, eax
call fcn.1400db2c8
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0
jne 0x1400705ae
mov eax, dword [0x14024e2e8]
xor eax, dword [0x14024e2ec]
add eax, 0x2581063a
mov ecx, 0x215040ff
xor ecx, 0x5e98f3cf
add eax, ecx
xor eax, 0xc4c097d1
cmp eax, 0x7d5973e1
jb 0x140070641
mov edx, dword [0x14024e2f0]
mov r8d, dword [0x14024e2f4]
mov eax, 0x75425e7c
xor eax, 0x8abda183
mov r9d, r8d
xor r9d, eax
mov ecx, edx
and ecx, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, ecx
mov ecx, edx
and ecx, r8d
or edx, r8d
imul edx, ecx
add edx, eax
mov ecx, 0x2b1a1564
xor ecx, 0xd4e5ea9b
mov eax, edx
xor eax, ecx
mov r8d, 0x47834d82
xor r8d, 0x22dd06ab
and r8d, eax
mov ecx, 0x79ffbf05
xor ecx, 0x1ca1f42c
mov eax, 0x3ee5a621
xor eax, 0xc11a59de
xor ecx, eax
and edx, ecx
mov eax, 0xffffffff
xor eax, 0x9fef2b64
mov r9d, 0x5d0e5ac4
xor r9d, 0x385011ed
and eax, r9d
and ecx, 0x9fef2b64
or r8d, edx
or eax, ecx
xor r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x8502da86
mov edx, 0x3c845bbe
xor edx, 0xb9868138
mov ecx, 0x6e9252e
xor ecx, 0xf916dad1
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x3b67a6d6
mov r9d, 0x7a4bfe7c
xor r9d, 0xff4924fa
and ecx, r9d
and edx, 0x3b67a6d6
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, eax
xor ecx, 0xdef3c4bf
mov edx, 0xffffffff
xor edx, 0xdef3c4bf
and eax, edx
shl eax, 1
sub eax, ecx
mov dword [rsp + 0x24], eax
movabs rcx, 0x4fea4d8ac75f95a6
movabs rax, 0x4fea4d8ac75f958e
xor rcx, rax
movabs rdx, 0xffa851857ee2f84e
movabs rax, 0xffa851857ee2f846
xor rdx, rax
call fcn.140012610
mov rcx, qword [rsp + 0x38]
mov rdx, rax
mov eax, dword [rsp + 0x24]
mov qword [rsp + 0x28], rdx
mov qword [rcx], rdx
cmp eax, 0x1626df92
jae 0x140070438
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x30], rax
jmp 0x14007059f
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
call fcn.140070351
mov ecx, dword [0x14024e2f8]
mov edx, dword [0x14024e2fc]
mov eax, 0x8ccabe35
xor eax, 0x733541ca
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0x79339dd0
mov ecx, 0x51f942a8
xor ecx, 0xd8c6cca8
and ecx, eax
xor ecx, 0xffffffff
add eax, 0x893f8e00
add eax, 1
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x27e1d0a5
xor edx, 0x137917a9
or eax, edx
add eax, ecx
cmp eax, 0x1e5fe5c7
je 0x14007064a
mov eax, dword [0x14024e300]
xor eax, dword [0x14024e304]
add eax, 0xf7e753c1
or eax, 0xea4ff74d
mov ecx, 0xa5558b21
xor ecx, 0x6bda1d1a
xor eax, ecx
cmp eax, 0x1260ca9a
jbe 0x14007060e
add rsp, 0x58
ret
invalid
cmc
sub r9d, 0xffffffbb
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.140067614
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x140070380