Function at 0x1400dcc50
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xa0
lea rbp, [rsp + 0x80]
mov dword [rbp - 0x54], r9d
mov qword [rbp - 0x38], r8
mov qword [rbp - 0x50], rdx
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x40], rcx
mov eax, 0x10
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.1400dcfa0
add rsp, 0x20
mov qword [rbp - 0x28], rax
lea rcx, [rbp + 0x10]
mov edx, 0x10
sub rsp, 0x20
call fcn.1400dd0c0
add rsp, 0x20
mov rcx, rbp
mov edx, 0x10
sub rsp, 0x20
call fcn.1400dd0c0
mov r8, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
movabs rax, 0x3c97f7db5b65476c
movabs rdx, 0x3c97f7db5b65476c
xor rax, rdx
mov qword [rbp - 8], rax
mov rax, qword [r8]
mov qword [rcx], rax
mov rax, qword [r8 + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400dd200
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0x20], rcx
cmp byte [rax], 0
jne 0x1400dcf02
mov r9d, dword [rbp - 0x54]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x50]
xor r8d, r8d
lea rax, [rbp - 8]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.1400aac10
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp - 0x28]
mov dword [rbp - 0x58], ecx
cmp byte [rax], 0
jne 0x1400dcf02
mov eax, dword [rbp - 0x58]
cmp eax, 0
je 0x1400dcd9b
movabs rdx, 0x9804c5ec8ef72b30
movabs rax, 0x9804c5ec8ef72b20
xor rdx, rax
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.1400dd0c0
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
lea rax, [rbp + 0x10]
cmp byte [rcx], 0
mov qword [rbp - 0x60], rax
je 0x1400dceec
jmp 0x1400dcf02
mov eax, dword [0x140247400]
xor eax, 0xf0fc4d2b
mov ecx, dword [0x140247404]
xor ecx, 0x82f222a0
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0x2f905d74
xor eax, 0xa3e75b44
imul eax, eax, 0x581b9d24
mov ecx, 0xa5b193f4
xor ecx, 0xbeb2364f
cmp eax, ecx
jb 0x1400dcf87
mov ecx, dword [0x140247408]
mov r8d, dword [0x14024740c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov r9d, 0xbcdeafef
xor r9d, 0x43215010
mov edx, r8d
xor edx, r9d
or eax, edx
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
mov r8d, 0x42254306
xor r8d, 0xbddabcf9
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x1c5531da
xor edx, 0xe3aace25
xor eax, edx
mov edx, 0x55cd5f7f
xor edx, 0xaa32a080
xor ecx, edx
or eax, ecx
mov ecx, 0xab6896e4
xor edx, edx
div ecx
mov ecx, 0x5986c74b
xor edx, edx
div ecx
mov ecx, 0x8e58f2cf
xor ecx, 0x3f996104
and eax, ecx
mov dword [rbp - 0x68], eax
mov eax, 0x551f87f8
xor eax, 0x6bf39755
mov dword [rbp - 0x6c], eax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x78], rax
lea rcx, [rbp - 0x18]
mov edx, 0x10
sub rsp, 0x20
call fcn.1400dd0c0
mov r8, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x28]
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
mov byte [rbp - 0x10], 1
mov qword [rbp - 0x18], r8
mov r8, qword [rbp - 0x18]
mov qword [rbp], r8
mov r8, qword [rbp - 0x10]
mov qword [rbp + 8], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
je 0x1400dcf87
mov cl, byte [rbp - 0x61]
mov rax, rbp
test cl, 1
mov qword [rbp - 0x60], rax
jne 0x1400dceec
jmp 0x1400dcf02
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov ecx, dword [0x140247410]
xor ecx, 0xb68e9140
or ecx, dword [0x140247414]
mov edx, 0x4a50e778
xor edx, 0xf63875fc
mov eax, ecx
and eax, edx
or ecx, 0xbc689284
add eax, ecx
mov ecx, 0x92cc365c
xor edx, edx
div ecx
mov ecx, 0x3d901fbc
xor edx, edx
div ecx
cmp eax, 0x5c19511c
ja 0x1400dcf90
mov eax, dword [0x140247418]
xor eax, 0x6e457995
xor edx, edx
div dword [0x14024741c]
sub eax, 0x6b4154ce
sub eax, 0xd297f742
add eax, 0xeb594508
mov ecx, 0x3da7f01c
xor ecx, 0xa0fbeae9
cmp eax, ecx
jbe 0x1400dcf48
mov rax, qword [rbp - 0x40]
lea rsp, [rbp + 0x20]
pop rbp
ret
xchg ebx, eax
sub byte [rdi - 0x1ae17], bl
call rbx
invalid
rol dword [rdx + 0x27], cl
mov esp, 0xffffafe9
dec dword [rdi]
invalid