Function at 0x140070be2
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
call fcn.140068a70
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
call fcn.14006b7c0
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140070bca
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
call fcn.14006f0e2
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140070bca
mov eax, dword [0x1401db418]
mov ecx, 0x1e7cae87
xor ecx, 0x9b69fd3e
xor eax, ecx
or eax, dword [0x1401db41c]
mov ecx, 0x4dfb8962
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x8a2ccb2f
add eax, ecx
mov edx, 0x38f54f68
xor edx, 0xc87fdebf
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xf08a91d7
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0xe4a410d
jb 0x140070bd0
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x1401db420]
mov edx, dword [0x1401db424]
mov r8d, 0xadcd9290
xor r8d, 0xcb78ec2d
xor edx, r8d
xor eax, 0xffffffff
mov r8d, 0x5479191a
xor r8d, 0xab86e6e5
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x549f2a25
or eax, edx
mov edx, 0x6ac69d9e
xor edx, 0x3e59b7bb
or edx, r8d
xor eax, 0xffffffff
and eax, edx
mov edx, 0xd19d3778
xor edx, 0x4af18034
add eax, edx
mov r8d, 0xb0d584
xor r8d, 0x2c001e1c
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x40]
mov r9d, eax
and r9d, 0xa86075d1
mov r8d, 0xb7fa57df
xor r8d, 0xb7fa57dd
imul r8d, r9d
add eax, 0xa86075d1
sub eax, r8d
mov dword [rsp + 0x38], eax
mov eax, 0xe7e6c036
xor eax, 0xf9edd621
mov dword [rsp + 0x34], eax
add rdx, 8
call fcn.14006f2a0
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x3f], dl
cmp eax, ecx
je 0x140070995
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x140070a7d
jmp 0x140070bca
mov eax, dword [0x1401db428]
or eax, dword [0x1401db42c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x7c1d15ae
add eax, ecx
mov ecx, 0xd868d3e1
xor ecx, 0x261048bd
mov edx, 0xa096a5ed
xor edx, 0x5f695a12
xor ecx, edx
mov edx, 0x550e2482
xor edx, 0x550e2482
mov r8d, 0x875fd2b9
xor r8d, 0x875fd2b8
sub edx, r8d
sub ecx, edx
sub eax, ecx
and eax, 0xa8c19b20
cmp eax, 0x6ed59c6
jbe 0x140070bd9
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401db430]
xor eax, 0x55c59395
and eax, dword [0x1401db434]
or eax, 0xff358bc
sub eax, 0x31b090d9
sub eax, 0x582c7aba
add eax, 0x31b090d9
mov r8d, 0xda4fc1c1
xor r8d, 0xda0297b0
sub eax, r8d
mov dword [rsp + 0x2c], eax
mov eax, 0xd4115144
xor eax, 0xe55207b
mov dword [rsp + 0x28], eax
add rdx, 0x18
call fcn.14006f2a0
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x33], dl
cmp eax, ecx
je 0x140070adf
mov al, byte [rsp + 0x33]
test al, 1
jne 0x140070b69
jmp 0x140070bca
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
add rdx, 0x28
call fcn.14006f597
mov rax, qword [rsp + 0x50]
mov al, byte [rax]
mov cl, 0x65
xor cl, 0x65
cmp al, cl
jne 0x140070bca
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
add rdx, 0x30
call fcn.140070158
mov rax, qword [rsp + 0x50]
mov al, byte [rax]
mov cl, 0x88
xor cl, 0x88
cmp al, cl
jne 0x140070bca
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
add rdx, 0x38
call fcn.1400708ca
nop
add rsp, 0x58
ret
xor edx, ecx
int 0x84
jmp 0x140070995
in eax, 0xb6
xor ebx, dword [rcx + rbp*8]
std
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.140068a70
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x1400708f0