Function at 0x1400ea4b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
mov rbp, rsp
sub rsp, 0x60
lea rcx, [rbp + 0x10]
call fcn.140005a00
movabs rcx, 0x7ffffffc81ee29ff
mov rax, qword [rbp + 0x10]
cmp rax, rcx
jge 0x1400ea4fb
movabs rcx, 0x37e11d600
add rcx, rax
mov qword [rbp + 0x10], rcx
jmp 0x1400ea509
movabs rax, 0x7fffffffffffffff
mov qword [rbp + 0x10], rax
lea rcx, [rbp + 0x10]
call fcn.14002dce0
mov rbx, qword [0x140167a98]
cmp byte [rbx + 0x1d0], 0
je 0x1400ea74d
mov dword [rbp + 0x10], 0x8c9e8e90
mov word [rbp + 0x14], 0x100
xor edi, edi
mov ecx, edi
nop word [rax + rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x10], al
inc rcx
cmp rcx, 4
jb 0x1400ea540
mov byte [rbp + 0x15], dil
lea rcx, [rbp + 0x10]
mov rsi, 0xffffffffffffffff
mov rax, rsi
inc rax
cmp byte [rcx + rax], dil
jne 0x1400ea562
lea rcx, [rbx + 0x178]
cmp qword [rbx + 0x190], 0xf
jbe 0x1400ea583
mov rcx, qword [rbx + 0x178]
mov r8, qword [rbx + 0x188]
cmp r8, rax
jne 0x1400ea5a0
lea rdx, [rbp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ea74d
cmp byte [0x140166a15], dil
je 0x1400ea74d
mov dword [rbp + 0x10], 0x8c9e8e90
mov word [rbp + 0x14], 0x100
mov rcx, rdi
nop dword [rax]
lea eax, [rcx - 0x2b]
xor byte [rbp + rcx + 0x10], al
inc rcx
cmp rcx, 4
jb 0x1400ea5c0
mov byte [rbp + 0x15], dil
lea rcx, [rbp + 0x10]
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], dil
jne 0x1400ea5e0
lea rcx, [rbx + 0x140]
cmp qword [rbx + 0x158], 0xf
jbe 0x1400ea601
mov rcx, qword [rbx + 0x140]
mov r8, qword [rbx + 0x150]
cmp r8, rax
jne 0x1400ea61e
lea rdx, [rbp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ea74d
mov edx, dword [rbx + 0x1bc]
lea rcx, [rbp - 0x20]
call fcn.140005010
mov rbx, rax
mov rdx, qword [0x140167a98]
mov edx, dword [rdx + 0x1b8]
lea rcx, [rbp - 0x40]
call fcn.140005010
nop
mov r8, qword [0x140167a98]
add r8, 0x140
mov rdx, rbx
mov rcx, rax
call fcn.14010a430
movzx ebx, al
lea rcx, [rbp - 0x40]
call fcn.14002b140
nop
lea rcx, [rbp - 0x20]
call fcn.14002b140
test bl, bl
je 0x1400ea74d
mov dword [rbp + 0x10], 0x8c9e8e90
mov word [rbp + 0x14], 0x100
nop dword [rax + rax]
lea eax, [rdi - 0x2b]
xor byte [rbp + rdi + 0x10], al
inc rdi
cmp rdi, 4
jb 0x1400ea690
mov byte [rbp + 0x15], 0
mov rbx, qword [0x140167a98]
lea rcx, [rbp + 0x10]
mov rax, rsi
inc rax
cmp byte [rcx + rax], 0
jne 0x1400ea6b2
lea rcx, [rbx + 0x140]
cmp qword [rbx + 0x158], 0xf
jbe 0x1400ea6d3
mov rcx, qword [rbx + 0x140]
mov r8, qword [rbx + 0x150]
cmp r8, rax
jne 0x1400ea6ec
lea rdx, [rbp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ea74d
cmp byte [rbx + 0x1d0], 0
je 0x1400ea74d
cmp byte [0x140166a15], 0
je 0x1400ea74d
mov word [rbp + 0x10], 0x61
mov byte [rbp + 0x12], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
lea rax, [rbp + 0x10]
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400ea720
mov r8, rsi
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x40]
call fcn.14002c630
nop
lea rcx, [rbp - 0x40]
call fcn.14010ca30
nop
lea rcx, [rbp - 0x40]
call fcn.14002b140
mov byte [0x140166a5b], 0
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret