Function at 0x1400dfda0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x28], r9
mov qword [rbp + 0x30], r8
mov qword [rbp + 0x38], rdx
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rcx
mov eax, dword [str._EH_v]
add eax, dword [0x140206594]
and eax, eax
mov ecx, 0x2042895a
xor ecx, 0xdfbd76a5
xor eax, ecx
mov ecx, 0x424d5caa
xor ecx, 0xb2aa57b2
mov edx, 0x427d5f02
xor edx, 0xb29a541a
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edx, 0xe0ec64d6
xor edx, 0x1f139b29
mov ecx, eax
xor ecx, edx
mov edx, 0x588b92
xor edx, 0xc503e275
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xc55b69e7
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc55b69e7
or eax, 0xc55b69e7
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x6643408f
xor ecx, 0xffffffff
and ecx, 0x6643408f
shl ecx, 1
sub ecx, 0x6643408f
sub eax, ecx
cmp eax, 0x5fde65e6
jbe 0x1400e08cb
mov eax, dword [0x140206598]
xor eax, 0x801935
mov ecx, dword [0x14020659c]
or eax, ecx
mov ecx, eax
imul rcx, rcx, 0x25a64e9d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0xa9dc23dc
mov dword [rbp + 0x14], eax
mov eax, 0x10
mov qword [rbp - 8], rax
call fcn.1401ffc50
sub rsp, rax
mov rax, qword [rbp - 8]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.1401ffc50
sub rsp, rax
mov rax, qword [rbp - 8]
mov rcx, rsp
mov qword [rbp - 0x10], rcx
call fcn.1401ffc50
sub rsp, rax
mov rax, qword [rbp - 8]
mov rcx, rsp
mov qword [rbp], rcx
call fcn.1401ffc50
sub rsp, rax
mov rax, rsp
mov qword [rbp + 8], rax
sub rsp, 0x20
call fcn.1400dd554
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x14]
mov qword [rbp + 0x18], r8
mov qword [rdx], 0
mov qword [rdx + 8], 0
cmp rcx, 1
setl cl
mov byte [rbp + 0x27], cl
cmp eax, 0xd26509f4
jae 0x1400dfe6c
mov al, byte [rbp + 0x27]
test al, 1
jne 0x1400e08c1
jmp 0x1400dff41
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x28]
mov r8, rax
xor r8, 0xffffffffffffffff
xor r9d, r9d
sub r9, 1
sub r8, r9
sub rdx, r8
mov qword [rbp - 0x30], rdx
add rcx, 8
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x48], rax
cmp rax, rcx
jge 0x1400e088f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
cmp byte [rax + rcx + 8], 0x5c
jne 0x1400e087e
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x38]
mov r9, qword [rbp - 0x48]
sub r9, r8
mov r10, qword [rax]
mov qword [rdx], r10
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400e0a48
mov rax, qword [rbp + 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1400e08c1
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x28]
mov rcx, qword [rcx]
mov al, byte [rax + rcx + 9]
mov byte [rbp - 0x51], al
add al, 0xde
movzx ecx, al
mov qword [rbp - 0x50], rcx
sub al, 0x53
ja case.0x1400e001c.1
mov rax, qword [rbp - 0x50]
lea rcx, [0x1400e08f8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov dl, byte [rbp - 0x51]
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.1400dfb55
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov qword [rbp - 0x60], rax
jmp 0x1400e086d
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140014320
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x140216ed8]
mov qword [rcx], rax
lea rax, [0x140215ad0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140215b58]
mov qword [rcx + 0x18], rax
mov rax, qword [str.8___]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140215ad0]
lea r8, [0x140215b00]
lea r9, [0x140215aeb]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff80797dd4
call fcn.1400139e0
add rsp, 0x30
jmp 0x1400e08c1
mov rax, qword [rbp - 0x60]
add rax, 2
mov qword [rbp - 0x20], rax
jmp 0x1400dff71
mov rax, qword [rbp - 0x48]
add rax, 1
mov qword [rbp - 0x38], rax
jmp 0x1400dff7d
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x38]
mov r9, qword [rbp - 0x30]
sub r9, r8
mov r10, qword [rax]
mov qword [rdx], r10
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400e0a48
add rsp, 0x20
mov rax, qword [rbp + 0x48]
lea rsp, [rbp + 0x50]
pop rbp
ret
test dword [rdx], 0x98e9ba78
cmc
invalid