Function at 0x1400ec430
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov r10, qword [rcx + 0x10]
lea r11, [0x14024c050]
mov r14, r8
mov rsi, rdx
mov rdi, rcx
test r10, r10
je 0x1400ec4a6
movzx ecx, byte [rdx]
xor eax, eax
mov r9, rdx
test cl, cl
je 0x1400ec48f
nop dword [rax + rax]
movzx ecx, cl
lea r9, [r9 + 1]
movzx edx, byte [rcx + r11]
lea ecx, [rax*8]
xor edx, ecx
movzx ecx, byte [r9]
xor eax, edx
test cl, cl
jne 0x1400ec470
xor edx, edx
div dword [rdi]
mov eax, edx
add rax, rax
mov r15d, edx
mov rbx, qword [r10 + rax*8 + 8]
mov r10d, dword [r10 + rax*8]
jmp 0x1400ec4b1
mov rbx, qword [rcx + 8]
xor r15d, r15d
mov r10d, dword [rcx + 4]
test r10d, r10d
je 0x1400ec535
nop word [rax + rax]
mov r9, qword [rbx + 0x18]
dec r10d
test r9, r9
jne 0x1400ec4d6
mov rax, rsi
neg rax
sbb edx, edx
jmp 0x1400ec529
test rsi, rsi
je 0x1400ec52d
movzx r8d, byte [r9]
mov rdx, rsi
test r8b, r8b
je 0x1400ec516
movzx ecx, r8b
sub r9, rsi
nop
movzx eax, byte [rdx]
movzx r8d, cl
movzx ecx, cl
movzx eax, byte [rax + r11]
cmp byte [rcx + r11], al
jne 0x1400ec516
movzx ecx, byte [r9 + rdx + 1]
inc rdx
movzx r8d, cl
test cl, cl
jne 0x1400ec4f0
movzx eax, byte [rdx]
movzx ecx, byte [rax + r11]
movzx eax, r8b
movzx edx, byte [rax + r11]
sub edx, ecx
test edx, edx
je 0x1400ec55c
mov rbx, qword [rbx]
test r10d, r10d
jne 0x1400ec4c0
test r14, r14
je 0x1400ec6ef
mov ecx, 0x20
call fcn.1400f1360
mov rbx, rax
test rax, rax
jne 0x1400ec640
mov rax, r14
jmp 0x1400ec6f1
mov qword [rsp + 0x40], rbp
mov rbp, qword [rbx + 0x10]
test r14, r14
jne 0x1400ec62b
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
test rcx, rcx
je 0x1400ec57f
mov qword [rcx], rax
jmp 0x1400ec583
mov qword [rdi + 8], rax
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400ec593
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1400ec5b5
mov ecx, r15d
shl rcx, 4
add rcx, rax
cmp qword [rcx + 8], rbx
jne 0x1400ec5b3
mov rax, qword [rbx]
mov qword [rcx + 8], rax
dec dword [rcx]
cmp dword [0x1402fd010], 0
je 0x1400ec607
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400ec5d0
call qword [0x1402fd098]
mov rcx, rbx
call qword [0x1402fd050]
dec qword [0x140303428]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x1403033e0], rdx
call qword [0x1402fd040]
mov rcx, qword [0x140303640]
test rcx, rcx
je 0x1400ec610
call qword [0x1402fd0a8]
jmp 0x1400ec610
mov rcx, rbx
call qword [0x1402fd040]
add dword [rdi + 4], 0xffffffff
jne 0x1400ec633
mov rcx, rdi
call fcn.1400ec200
mov rax, rbp
mov rbp, qword [rsp + 0x40]
jmp 0x1400ec6f1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], rsi
mov rax, rbp
mov rbp, qword [rsp + 0x40]
jmp 0x1400ec6f1
mov qword [rax + 0x18], rsi
mov qword [rax + 0x10], r14
inc dword [rdi + 4]
mov edx, dword [rdi + 4]
cmp edx, 0xa
jb 0x1400ec678
mov eax, dword [rdi]
add eax, eax
cmp edx, eax
jbe 0x1400ec678
add edx, edx
mov rcx, rdi
call fcn.1400bb900
test eax, eax
je 0x1400ec678
mov rcx, rsi
call fcn.14011acf0
xor edx, edx
div dword [rdi]
mov r15d, edx
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1400ec6cf
mov ecx, r15d
shl rcx, 4
add rcx, rax
je 0x1400ec6cf
mov eax, dword [rcx]
test eax, eax
je 0x1400ec699
mov rdx, qword [rcx + 8]
jmp 0x1400ec69b
xor edx, edx
inc eax
mov qword [rcx + 8], rbx
mov dword [rcx], eax
test rdx, rdx
je 0x1400ec6cf
mov qword [rbx], rdx
mov rax, qword [rdx + 8]
mov qword [rbx + 8], rax
mov rax, qword [rdx + 8]
test rax, rax
je 0x1400ec6c5
mov qword [rax], rbx
mov qword [rdx + 8], rbx
jmp 0x1400ec6ef
mov qword [rdi + 8], rbx
mov qword [rdx + 8], rbx
jmp 0x1400ec6ef
mov rax, qword [rdi + 8]
mov qword [rbx], rax
mov rax, qword [rdi + 8]
test rax, rax
je 0x1400ec6e3
mov qword [rax + 8], rbx
mov qword [rbx + 8], 0
mov qword [rdi + 8], rbx
xor eax, eax
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret