Function at 0x1400ec4e8
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
nop
sub rsp, 0x3889f209
add rsp, 0x3889f1a9
mov rbx, rcx
xor r15d, r15d
mov rcx, qword [rcx + 0x588]
mov r12d, 0x72eeb190
xor r12d, 0x1a3fbca1
sub r12d, 0x19a1824
sub r12d, 0x6736f50c
test rcx, rcx
je 0x1400ec55c
dec dword [rcx + 8]
cmp dword [rcx + 8], r15d
jg 0x1400ec555
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [rbx + 0x588], r15
mov r8, qword [rbx + 0x520]
movabs r13, 0x6dfa0d903811ca90
add r13, 0x40c5d5e0
xor r13, 0x6649a073
cmp r8, r13
je 0x1400ec61d
cmp byte [rbx + 0x528], r15b
jne 0x1400ec61d
mov rax, qword [0x140143290]
movabs rdx, 0x9aa0d05d0c488349
xor rdx, 0x4d7637fe
add rdx, 0x45449d6e
mov rcx, qword [rbx + 0x530]
add rax, rdx
movabs rdx, 0x31410ff975fa3509
sub rdx, 0x354d90ec
add rdx, 0x66173af3
xor r8, r13
xor rax, rdx
xor rcx, r13
not rax
movabs rdx, 0x267c7f2f06a3ca6d
add rdx, 0x665dc940
xor rdx, 0x5dc8305e
sub rdx, 0x341c2dd
sub rax, rdx
mov edx, 0x14c929e8
add edx, 0x48ad0c7d
add edx, 0xa289c997
not rax
ror rax, 0x12
not rax
call rax
mov rax, qword gs:[0x30]
mov rdi, qword [rax + 0x48]
mov eax, r12d
lock xadd dword [rbx + 0x6b0], eax
add eax, r12d
je 0x1400ec65c
cmp rdi, qword [rbx + 0x6a0]
je 0x1400ec68a
mov rcx, qword [rbx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.1400565b0
mov qword [rbx + 0x6a0], rdi
mov dword [rbx + 0x6b4], r12d
mov rax, qword [rbx + 0x5c0]
mov rdi, qword [rbx + 0x5b8]
test rax, rax
je 0x1400ec6ae
lea rsi, [rdi + rax*8]
jmp 0x1400ec6a5
add dword [rbx + 0x6b4], r12d
jmp 0x1400ec66a
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.1400edbe4
add rdi, 8
cmp rdi, rsi
jne 0x1400ec696
mov rax, qword [rbx + 0x5a0]
mov rdi, qword [rbx + 0x598]
test rax, rax
je 0x1400ec6fa
lea rsi, [rdi + rax*8]
jmp 0x1400ec6f1
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ec6e2
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
sub rdi, 0x37f09917
add rdi, 0x37f0991f
cmp rdi, rsi
jne 0x1400ec6ce
mov rax, qword [rbx + 0x660]
mov rdi, qword [rbx + 0x658]
test rax, rax
je 0x1400ec746
lea rsi, [rdi + rax*8]
jmp 0x1400ec73d
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ec72e
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
add rdi, 0x2688646c
sub rdi, 0x26886464
cmp rdi, rsi
jne 0x1400ec71a
mov esi, 0x7ec72abd
xor esi, 0x21109d2b
sub esi, 0x5fd7b766
cmp dword [rbx + 0x518], r12d
jne 0x1400ec8ca
cmp qword [rbx + 0x578], r15
je 0x1400ec8ca
mov rbp, qword [rbx + 0x578]
lea rax, [rsp + 0x28]
mov r14, qword [rbx + 0x538]
lea rcx, [rsp + 0x20]
mov rsi, qword [rbx + 0x540]
xorps xmm0, xmm0
xor r14, r13
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 1]
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
call fcn.140017924
mov edx, 0x3d8d3f3d
xor edx, 0x137025d6
xor edx, 0x524858
test rbp, rbp
je 0x1400ec808
mov rdi, rax
sub rsi, rax
mov r8, rbp
movzx ecx, dx
mov r9d, 0x36ebe575
add r9d, 0x10e6ecbc
sub r9d, 0x47d2d132
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, r12
jne 0x1400ec7d6
mov word [rax + rbp*2], r15w
movabs rcx, 0x42d167806fc73cc7
xor rcx, 0x3b8a9d90
sub rcx, 0x4ed80f12
mov rax, qword [0x140143028]
mov rdx, r14
xor rax, rcx
movabs rcx, 0xdef4e215d819dcb
xor rcx, 0x7481e9a9
add rcx, 0x1f16649
sub rcx, 0x8996b4e
not rax
sub rax, rcx
movabs rcx, 0x820df406071e355
xor rcx, 0x266889e
xor rcx, 0x1d8c575d
add rcx, 0x609d52be
ror rax, 0x18
xor rax, rcx
mov rcx, qword [rsp + 0x20]
rol rax, 0xc
call rax
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400ec8ae
xor eax, eax
lea rdi, [rsp + 0x28]
lea esi, [rax + 0x30]
mov ecx, esi
rep stosb byte [rdi], al
jmp 0x1400ec8ca
call fcn.1400999d0
mov esi, 0x36f4588c
add esi, 0x2412fdce
sub esi, 0x116363ce
sub esi, 0x49a3f25c
mov rcx, qword [rbx + 0x768]
cmp rcx, r13
je 0x1400ec8e2
xor rcx, r13
call fcn.14008e3a0
mov rcx, qword [rbx + 0x760]
cmp rcx, r13
je 0x1400ec8fa
xor rcx, r13
call fcn.14008e3a0
mov rcx, qword [rbx + 0x510]
test rcx, rcx
je 0x1400ec912
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rdi, qword [rbx + 0x738]
test rdi, rdi
je 0x1400ec935
mov rcx, rdi
call fcn.1400548c0
mov rdx, r12
mov rcx, rdi
call fcn.140099890
sub dword [rbx + 0x6b4], r12d
jne 0x1400ec972
mov qword [rbx + 0x6a0], r15
or eax, 0xffffffff
lock xadd dword [rbx + 0x6b0], eax
dec eax
cmp eax, 0xffffffff
je 0x1400ec979
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140056550
jmp 0x1400ec979
lock dec dword [rbx + 0x6b0]
mov rcx, qword [rbx + 0x740]
test rcx, rcx
je 0x1400ec995
call fcn.1400999d0
mov qword [rbx + 0x740], r15
lea rdi, [rbx + 0x6b8]
cmp qword [rdi + 0x78], 0x78
jbe 0x1400ec9be
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.1400999d0
jmp 0x1400ec9d2
cmp qword [rdi + 0x78], r15
jbe 0x1400ec9d2
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax]
mov qword [rdi + 0x78], r15
mov rcx, qword [rbx + 0x6a8]
call fcn.140056360
mov rcx, qword [rbx + 0x658]
test rcx, rcx
je 0x1400ec9fe
call fcn.1400999d0
mov qword [rbx + 0x658], r15
mov rcx, qword [rbx + 0x618]
lea rdi, [rbx + 0x620]
cmp rcx, rdi
jne 0x1400eca21
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400eca26
call fcn.1400999d0
mov rcx, qword [rbx + 0x5d8]
lea rdi, [rbx + 0x5e0]
cmp rcx, rdi
jne 0x1400eca49
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400eca4e
call fcn.1400999d0
mov rcx, qword [rbx + 0x5b8]
test rcx, rcx
je 0x1400eca6a
call fcn.1400999d0
mov qword [rbx + 0x5b8], r15
mov rcx, qword [rbx + 0x598]
test rcx, rcx
je 0x1400eca86
call fcn.1400999d0
mov qword [rbx + 0x598], r15
mov rcx, qword [rbx + 0x540]
lea rdi, [rbx + 0x548]
cmp rcx, rdi
jne 0x1400ecaa9
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ecaae
call fcn.1400999d0
lea rcx, [rbx + 0x288]
call fcn.1400ede04
mov rcx, rbx
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
jmp 0x1400ede8c
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
nop
add rsp, 0x40d679ec
sub rsp, 0x40d67a0c
xor edi, edi
lea rsi, [rcx + 0x280]
mov rbx, rcx
cmp qword [rsi], rdi
jbe 0x1400edeff
cmp qword [rbx + 0x78], 0x78
jbe 0x1400eded2
mov rcx, qword [rbx]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rbx]
call fcn.1400999d0
jmp 0x1400edee3
cmp qword [rbx + 0x78], 0
jbe 0x1400edee3
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax]
and qword [rbx + 0x78], 0
inc rdi
nop
sub rbx, 0xffffffffa2337d27
add rbx, 0xffffffffa2337da7
cmp rdi, qword [rsi]
jb 0x1400edeb7
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret