Function at 0x140101870
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rcx
call fcn.1400fcc3e
mov qword [rsp + 0x78], rax
mov ecx, 0x6418
mov edx, 0xa516
call fcn.140063660
mov cx, ax
mov rax, qword [rsp + 0x78]
mov word [rsp + 0x86], cx
cmp byte [rax], 0
jne 0x140101c4b
mov rcx, qword [rsp + 0x68]
mov ax, word [rsp + 0x86]
mov dl, al
call fcn.1400ff066
movabs rdx, 0x7ad28c21994c21c3
movabs rax, 0x7ad28c21994c21db
xor rdx, rax
lea rcx, [rsp + 0xa0]
call fcn.1400fd880
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax]
add rax, 8
mov qword [rsp + 0x50], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rsp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x48], rax
cmp rax, rcx
jne 0x140101961
mov cx, 0xc0b9
xor cx, 0x60dc
mov dx, 0x55fa
xor dx, 0x3497
call fcn.140063660
mov cx, ax
mov rax, qword [rsp + 0x78]
mov word [rsp + 0x46], cx
mov al, byte [rax]
mov cl, 0xa7
xor cl, 0xa7
cmp al, cl
je 0x140101c3a
jmp 0x140101c4b
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
add rax, 8
imul rcx, rcx, 0x18
add rax, rcx
mov rcx, qword [rax]
mov qword [rsp + 0xa0], rcx
mov rcx, qword [rax + 8]
mov qword [rsp + 0xa8], rcx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xb0], rax
mov ecx, 0xdd
call fcn.140060d20
mov rcx, rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x38], rcx
mov al, byte [rax]
mov cl, 0xc9
xor cl, 0xc9
cmp al, cl
jne 0x140101b3f
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
cmp rax, rcx
jge 0x140101a0b
mov ecx, 0x20e7
mov edx, 0xe19e
call fcn.140063660
mov cx, ax
mov rax, qword [rsp + 0x78]
mov word [rsp + 0x36], cx
cmp byte [rax], 0
jne 0x140101c35
mov rcx, qword [rsp + 0x68]
mov ax, word [rsp + 0x36]
mov dl, al
call fcn.1400ff066
mov eax, dword [0x1401cebb8]
xor eax, 0xa3c9cb5a
mov ecx, dword [0x1401cebbc]
xor ecx, 0x4a27e688
and eax, ecx
and eax, 0x89d6452c
mov edx, 0xffffffff
xor edx, 0x391c15bd
mov ecx, eax
and ecx, edx
mov r8d, 0x4ca2e83c
xor r8d, 0x75befd81
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x616abe47
xor ecx, 0x29dfcd03
or eax, ecx
cmp eax, 0x564a4264
jb 0x140101c54
mov eax, dword [0x1401cebc0]
xor eax, 0x78347779
mov edx, dword [0x1401cebc4]
xor edx, 0x11e82bb
mov ecx, eax
xor ecx, edx
mov r8d, 0xe80a5386
xor r8d, 0x17f5ac79
xor ecx, r8d
or eax, edx
and eax, ecx
sub eax, 0x86e288af
and eax, 0x8f4179ea
mov ecx, 0xff8c9761
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x98], rax
lea rcx, [rsp + 0x88]
call fcn.1401010c0
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x20]
mov dl, byte [rdx]
mov r8b, 0xf1
xor r8b, 0xf1
cmp dl, r8b
sete dl
mov byte [rsp + 0x27], dl
add rcx, 1
mov qword [rsp + 0x28], rcx
cmp eax, 0xbec5f3ef
jae 0x140101a66
mov rax, qword [rsp + 0x28]
mov cl, byte [rsp + 0x27]
test cl, 1
mov qword [rsp + 0x60], rax
jne 0x140101911
jmp 0x140101b3f
mov eax, dword [0x1401cebc8]
mov ecx, dword [0x1401cebcc]
xor ecx, 0x59a2db71
xor edx, edx
div ecx
mov ecx, 0x992b0542
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xb0b4a20e
xor edx, 0x4f4b5df1
xor eax, edx
or ecx, eax
mov eax, 0xffffffff
xor eax, 0x8538b50a
mov edx, 0xffffffff
xor edx, 0x8538b50a
or eax, edx
mov edx, 0x557230b0
xor edx, 0xaa8dcf4f
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov edx, 0xffffffff
xor edx, 0x35f89a7d
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x5f684f78
ja 0x140101c5d
mov eax, dword [0x1401cebd0]
mov edx, dword [0x1401cebd4]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x4876377b
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x2b7cee3b
xor r8d, 0x630ad940
mov edx, eax
and edx, r8d
or eax, 0x4876377b
imul eax, edx
add eax, ecx
mov ecx, 0xd586dcc8
xor ecx, 0x6d7118cc
sub eax, ecx
mov ecx, 0x89febe11
xor ecx, 0xabf4a604
imul eax, ecx
cmp eax, 0x6dcf77a3
jbe 0x140101bb7
jmp 0x140101c4b
jmp 0x140101c4b
mov rcx, qword [rsp + 0x68]
mov ax, word [rsp + 0x46]
mov dl, al
call fcn.1400ff066
nop
add rsp, 0xb8
ret
or edi, edi
movsd dword [rdi], dword [rsi]
in eax, 0xe9
or esi, edi
invalid
sbb eax, ebx
cmc
mov ah, 0xe9
push rcx
invalid