Function at 0x140010890
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
call fcn.14000c8dc
mov rcx, qword [rsp + 0x60]
add rax, 0x60
mov qword [rsp + 0x68], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x70], rcx
mov rdx, 0xffffffffffffffff
xor rdx, 3
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x1eddc2400b953c58
movabs rdx, 0x1eddc2400b953c59
xor rcx, rdx
cmp rax, rcx
jne 0x140010d5f
mov rax, qword [rsp + 0x70]
movabs rcx, 0xdcbca259f685499f
movabs rdx, 0x23435da6097ab660
xor rcx, rdx
cmp rax, rcx
jle 0x140010933
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
call fcn.140010480
jmp 0x140010d5f
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov r9, qword [rsp + 0x70]
movabs r10, 0xccf750bf495e0496
movabs rax, 0xccf750bf495e0497
xor r10, rax
mov rax, r9
add rax, r10
xor r9, 0xffffffffffffffff
movabs r10, 0xf04050eb9c8ccfc6
movabs r11, 0xfbfaf146373303a
xor r10, r11
or r9, r10
add r9, rax
movabs r10, 0xb414d681ebfcc369
movabs rax, 0xb414d681ebfcc36b
xor r10, rax
mov rax, r9
and rax, r10
xor r9, 2
or rax, r9
mov qword [rcx], rax
call fcn.140010350
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0
jne 0x140010d5f
lea rax, [rsp + 0x78]
add rax, 8
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1401f19d8]
xor ecx, 0xcf5b8371
mov edx, dword [0x1401f19dc]
xor edx, 0x88d81777
mov eax, 0x52f9a95e
xor eax, 0xad0656a1
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
add eax, 0x701b6992
mov ecx, 0x940f4d0e
xor ecx, 0xfd467e95
add eax, ecx
mov ecx, 0xfae841e5
xor ecx, 0x2fb9b054
xor edx, edx
div ecx
cmp eax, 0x4947b54f
ja 0x140010deb
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x1401f19e0]
xor eax, 0xd0df9d3e
mov edx, dword [0x1401f19e4]
xor edx, 0xfa5003cc
add eax, 0xa7e8e009
add eax, edx
mov edx, 0xb43451e3
xor edx, 0x13dcb1ea
sub eax, edx
mov edx, 0xf229382b
xor edx, 0xdad72d0d
xor eax, edx
sub eax, 0xe9ed6b80
sub eax, 0xa8081a28
add eax, 0xe9ed6b80
imul eax, eax, 0xf5d1c3bd
cmp qword [rcx], 0
setg cl
mov byte [rsp + 0x47], cl
cmp eax, 0xeaddacf1
ja 0x140010deb
mov al, byte [rsp + 0x47]
test al, 1
jne 0x140010aa6
jmp 0x140010d5f
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.14000f7b0
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x78]
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
mov rax, qword [rax]
mov rcx, rax
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x30], rcx
mov rax, qword [rax - 0x10]
mov qword [rsp + 0x38], rax
mov rcx, rax
xor rcx, 3
xor rcx, 0xffffffffffffffff
or rax, 3
and rax, rcx
movabs rcx, 0x25adf6ec48b5bd2
movabs rdx, 0x25adf6ec48b5bd3
xor rcx, rdx
cmp rax, rcx
je 0x140010b16
jmp 0x1400109cd
mov eax, dword [0x1401f19e8]
xor eax, 0x3847969b
imul eax, dword [0x1401f19ec]
mov ecx, 0x3468b084
xor edx, edx
div ecx
mov ecx, 0x5340af24
xor ecx, 0xacbf50db
mov edx, eax
xor edx, ecx
and edx, 0xea0e0e44
mov r8d, 0x6ea638aa
xor r8d, 0x84a836ee
mov ecx, 0xa947e6b
xor ecx, 0xf56b8194
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xea0e0e44
or eax, 0xea0e0e44
imul eax, edx
add eax, ecx
mov ecx, 0x77d4905b
xor ecx, 0x882b6fa4
mov edx, eax
xor edx, ecx
and edx, 0xda746fce
mov r8d, 0xffffffff
xor r8d, 0xda746fce
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xda746fce
or eax, 0xda746fce
imul eax, edx
add eax, ecx
mov ecx, 0x1973dfaf
xor ecx, 0x87d09f7
cmp eax, ecx
jbe 0x140010df4
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x1401f19f0]
and eax, dword [0x1401f19f4]
and eax, 0xad5789ca
mov r8d, 0x76b6f61
xor edx, edx
div r8d
add eax, 0xba3709b5
sub eax, 0x2a52473c
mov edx, 0x76a2bbf
xor edx, 0xbd5d220a
sub eax, edx
cmp rcx, 0xffffffffffffffff
setg cl
mov byte [rsp + 0x27], cl
cmp eax, 0xa456a9b6
jb 0x140010bca
mov al, byte [rsp + 0x27]
test al, 1
jne 0x140010c29
jmp 0x140010d2d
mov eax, dword [0x1401f19f8]
sub eax, dword [0x1401f19fc]
add eax, 0xadac02aa
sub eax, 0x3947a73
sub eax, 0xadac02aa
mov r8d, 0xffffffff
xor r8d, 0xa356bfc2
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xa356bfc2
or eax, 0xa356bfc2
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x48410790
xor ecx, 0xffffffff
add eax, 0x48410790
add eax, 1
add eax, ecx
cmp eax, 0xcd18cf91
jae 0x140010dfd
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov r9d, dword [str._5.]
mov eax, dword [0x1401f1a04]
mov r10d, 0xcdeb6e00
xor r10d, 0x5f5ae27f
xor eax, r10d
and r9d, eax
xor r9d, 0x8bb9de18
mov eax, r9d
and eax, 0xd6863b4
xor r9d, 0xd6863b4
or eax, r9d
add eax, 0x6df272d2
sub eax, 0x6052905e
mov r9d, 0x4e51dd29
xor r9d, 0x23a3affb
sub eax, r9d
mov dword [rsp + 0x20], eax
call fcn.140010480
mov rcx, qword [rsp + 0x68]
mov eax, dword [rsp + 0x20]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x26], cl
cmp eax, 0xbe4dd5dc
je 0x140010c93
mov al, byte [rsp + 0x26]
test al, 1
jne 0x140010b11
jmp 0x140010d5f
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
and rax, 0xfffffffffffffffc
or rax, 2
mov qword [rcx], rax
call fcn.140010350
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0
je 0x140010b11
mov eax, dword [0x1401f1a08]
xor eax, 0x78a19093
add eax, dword [0x1401f1a0c]
mov ecx, 0xc16962e3
xor edx, edx
div ecx
imul eax, eax, 0xbacda173
mov ecx, eax
and ecx, 0xef0a452c
shl ecx, 1
xor eax, 0xef0a452c
add eax, ecx
cmp eax, 0x4dcffc88
je 0x140010e06
mov eax, dword [0x1401f1a10]
xor eax, 0xd183910
add eax, dword [0x1401f1a14]
mov edx, 0x17100a68
xor edx, 0x2c6f21f3
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0x3b7f2b9b
and eax, ecx
mov ecx, 0x3296a72b
xor ecx, 0xf927efe3
or eax, ecx
add eax, 0x92b7f53f
cmp eax, 0x6d0cdb8a
jae 0x140010d9c
add rsp, 0x88
ret
stc
invalid
push 0xffffffffffffffc8
in al, dx
in eax, 0xe9
int 0xfd
invalid
sbb byte [rdx - 0x35], r15b
jmp 0x140010c93
push rbp
loopne 0x140010d91
add ecx, ebp
invalid