Function at 0x1400fed90
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0xb8
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
mov al, byte [rdx]
mov byte [rcx], al
mov rax, rcx
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, rcx
add rax, 0x10
mov qword [rsp + 0x88], rax
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x90], rcx
mov rax, rdx
add rax, 8
mov qword [rsp + 0x98], rax
mov rax, rdx
add rax, 0x10
mov qword [rsp + 0xa0], rax
mov rax, qword [rdx + 0x10]
mov qword [rsp + 0xa8], rax
mov rdx, rcx
sub rdx, rax
sete r8b
test rcx, rcx
sete cl
mov dl, r8b
and dl, cl
add cl, r8b
sub cl, dl
test cl, 1
mov qword [rsp + 0xb0], rax
jne 0x1400fee8f
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x90]
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xb0], rax
jne 0x1400fee8f
mov rcx, qword [rsp + 0x90]
call fcn.14001a7c0
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x68], rax
mov eax, dword [0x1402ae6d0]
or eax, dword [0x1402ae6d4]
or eax, 0x575e35b9
imul eax, eax, 0xeda3c5dc
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x527c0945
mov edx, 0xf4a1827f
xor edx, 0xa6dd8b3a
mov r8d, 0x265ee0c8
xor r8d, 0xd9a11f37
xor edx, r8d
and eax, edx
sub eax, ecx
cmp eax, 0xed9fedf5
je 0x1400ff204
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov r9, qword [rsp + 0x88]
mov r10, qword [rsp + 0x68]
mov r11, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x98]
mov eax, dword [0x1402ae6d8]
mov ecx, dword [0x1402ae6dc]
xor eax, 0xe8ff7e66
xor ecx, 0x2420ad14
or eax, ecx
mov ecx, eax
not ecx
xor eax, 0xce9fe6fb
and eax, ecx
mov ecx, eax
not ecx
mov edi, eax
and edi, 0x30253ef
and ecx, 0x3cfdac10
imul ecx, edi
mov edi, eax
and edi, 0x3cfdac10
or eax, 0x3cfdac10
imul eax, edi
add eax, ecx
and eax, 0x2c556030
mov ecx, 0x88ca842d
mov rsi, qword [rsi]
mov qword [r11], rsi
mov qword [r9], r10
mov r9, rdx
add r9, 0x20
mov qword [rsp + 0x40], r9
mov rdx, qword [rdx + 0x20]
mov qword [rsp + 0x48], rdx
mov r9, r8
add r9, 0x20
mov qword [rsp + 0x50], r9
mov r9, qword [r8 + 0x20]
mov qword [rsp + 0x58], r9
mov r8, rdx
sub r8, r9
sete r9b
test rdx, rdx
sete dl
mov r8b, r9b
and r8b, dl
add dl, r9b
sub dl, r8b
mov byte [rsp + 0x67], dl
cmp eax, ecx
ja 0x1400feee8
mov rax, qword [rsp + 0x58]
mov cl, byte [rsp + 0x67]
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x1400ff1d3
jmp 0x1400fefdb
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0xc75ee99715135eb0
movabs r9, 0x875ee99715135eb0
xor r8, r9
or rcx, r8
and rcx, rdx
movabs rdx, 0x803ba58296647c97
movabs r8, 0x803ba58296647c97
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jne 0x1400ff1d3
mov ecx, dword [0x1402ae6e0]
xor ecx, 0xfdfae73e
mov r8d, dword [0x1402ae6e4]
xor r8d, 0xba58298f
mov eax, 0xa73a8d47
xor eax, 0x58c572b8
mov r9d, r8d
xor r9d, eax
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
mov r9d, 0x35424da8
xor r9d, 0xcabdb257
xor eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb5688978
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb5688978
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, eax
and edx, 0xd9f84705
mov ecx, 0x56cb8bea
xor ecx, 0x56cb8be8
imul ecx, edx
add eax, 0xd9f84705
sub eax, ecx
mov ecx, 0x186cc372
xor ecx, 0x64d9b6ca
xor edx, edx
div ecx
cmp eax, 0x3635b17
je 0x1400ff20d
mov rcx, qword [rsp + 0x48]
mov esi, dword [0x1402ae6e8]
mov r11d, dword [0x1402ae6ec]
xor r11d, 0x9cc071ed
mov edx, esi
xor edx, 0xffffffff
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x1935a4a0
mov eax, edx
and eax, 0x1935a4a0
and esi, r8d
mov r10d, r9d
and r10d, 0x1935a4a0
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x1935a4a0
and edx, r8d
or eax, edx
mov r8d, eax
xor r8d, 0x5bb25902
xor r8d, 0xffffffff
mov edx, 0x482bc597
xor edx, 0x13999c95
and edx, r8d
shl edx, 1
sub edx, 0x5bb25902
sub eax, edx
mov r8d, 0x448cc8eb
xor edx, edx
div r8d
sub eax, 0x4bf92590
sub eax, 0xd4775c4e
mov edx, 0xde6fe43c
xor edx, 0x9596c1ac
add eax, edx
mov dword [rsp + 0x2c], eax
call fcn.14001a7c0
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x2c]
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
cmp eax, 0x4e17a705
jae 0x1400ff0f3
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x38], rax
jmp 0x1400ff1d3
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov r9, qword [rcx + 0x18]
mov qword [rax + 0x18], r9
mov qword [rdx], r8
mov rcx, qword [rcx + 0x28]
mov qword [rax + 0x28], rcx
add rsp, 0xb8
pop rdi
pop rsi
ret
invalid
cmp edx, dword [rcx + 0x4a]
retf 0xdde9