Function at 0x1400ec850
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
add rsp, 0x683a812d
sub rsp, 0x683a818d
mov rbx, rcx
xor r15d, r15d
mov rcx, qword [rcx + 0x588]
mov r12d, 0x1db77500
add r12d, 0x62132da4
xor r12d, 0x7fcaa2a5
test rcx, rcx
je 0x1400ec8bd
dec dword [rcx + 8]
cmp dword [rcx + 8], r15d
jg 0x1400ec8b6
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [rbx + 0x588], r15
mov r8, qword [rbx + 0x520]
movabs r13, 0x55056d9c073d2781
add r13, 0x5557b99d
xor r13, 0xd750879
xor r13, 0x6c22ed15
cmp r8, r13
je 0x1400ec9d6
cmp byte [rbx + 0x528], r15b
jne 0x1400ec9d6
mov rcx, qword [rbx + 0x530]
movabs rax, 0x1f6fa76b03874cd3
xor rax, 0x3686bbae
add rax, 0x2cfee308
movabs rdx, 0xfedcda254319b956
add rdx, 0x11435716
add rdx, 0x2c55b8f
add rdx, 0x7fffffff
sub rdx, 0x37f0b826
xor r8, r13
add rdx, qword [0x140143290]
xor rcx, r13
xor rdx, rax
movabs rax, 0xcaa7c05749f563b8
sub rax, 0x16c48a9
sub rax, 0x30898624
xor rax, 0xba9f1
not rdx
rol rdx, 0x1d
add rax, rdx
movabs rdx, 0x57cdce6a086bfa7d
xor rdx, 0xfaf8dca
add rdx, 0x61d71534
xor rdx, 0x742ff4fc
xor rax, rdx
movabs rdx, 0x15be45cf319c00d9
add rdx, 0x130c91ea
add rdx, 0x179689a0
add rdx, 0x7fffffff
add rdx, 0x21febf3a
sub rax, rdx
mov edx, 0x3fb74a06
sub edx, 0x30660b8
sub edx, 0x1fd95bf9
add edx, 0xe32872a7
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 0x1400eca15
cmp rdi, qword [rbx + 0x6a0]
je 0x1400eca43
mov rcx, qword [rbx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.1400565a0
mov qword [rbx + 0x6a0], rdi
mov dword [rbx + 0x6b4], r12d
mov rax, qword [rbx + 0x5c0]
mov rdi, qword [rbx + 0x5b8]
test rax, rax
je 0x1400eca67
lea rsi, [rdi + rax*8]
jmp 0x1400eca5e
add dword [rbx + 0x6b4], r12d
jmp 0x1400eca23
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.1400edf38
add rdi, 8
cmp rdi, rsi
jne 0x1400eca4f
mov rax, qword [rbx + 0x5a0]
mov rdi, qword [rbx + 0x598]
test rax, rax
je 0x1400ecab3
lea rsi, [rdi + rax*8]
jmp 0x1400ecaaa
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400eca9b
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
sub rdi, 0x4f8a2e27
add rdi, 0x4f8a2e2f
cmp rdi, rsi
jne 0x1400eca87
mov rax, qword [rbx + 0x660]
mov rdi, qword [rbx + 0x658]
test rax, rax
je 0x1400ecaff
lea rsi, [rdi + rax*8]
jmp 0x1400ecaf6
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ecae7
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
sub rdi, 0x3e0cc953
add rdi, 0x3e0cc95b
cmp rdi, rsi
jne 0x1400ecad3
mov esi, 0x3a4aa9f
add esi, 0x71211bb5
xor esi, 0x74c5c664
cmp dword [rbx + 0x518], r12d
jne 0x1400ecc53
cmp qword [rbx + 0x578], r15
je 0x1400ecc53
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.140017bbc
mov edx, 0x46df618e
xor edx, 0x220bd882
xor edx, 0x5f60a3a8
test rbp, rbp
je 0x1400ecbc8
mov rdi, rax
sub rsi, rax
mov r8, rbp
movzx ecx, dx
mov r9d, 0x72a21227
xor r9d, 0x4edcc639
add r9d, 0x331abefd
sub r9d, 0x6f99921c
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, r12
jne 0x1400ecb8f
mov word [rax + rbp*2], r15w
movabs rcx, 0x2d1a19527b744dd0
xor rcx, 0x384343e5
add rcx, 0x7fffffff
add rcx, 0x152e4e59
mov rax, qword [0x140143028]
mov rdx, r14
not rax
xor rax, rcx
mov rcx, qword [rsp + 0x20]
ror rax, 0x28
not rax
rol rax, 0x24
not rax
call rax
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400ecc37
xor eax, eax
lea rdi, [rsp + 0x28]
lea esi, [rax + 0x30]
mov ecx, esi
rep stosb byte [rdi], al
jmp 0x1400ecc53
call fcn.1400999a0
mov esi, 0x2dccbec5
add esi, 0x48fe7678
sub esi, 0x5a939b2
sub esi, 0x7121fb5b
mov rcx, qword [rbx + 0x768]
cmp rcx, r13
je 0x1400ecc6b
xor rcx, r13
call fcn.14008e310
mov rcx, qword [rbx + 0x760]
cmp rcx, r13
je 0x1400ecc83
xor rcx, r13
call fcn.14008e310
mov rcx, qword [rbx + 0x510]
test rcx, rcx
je 0x1400ecc9b
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rdi, qword [rbx + 0x738]
test rdi, rdi
je 0x1400eccbe
mov rcx, rdi
call fcn.1400548a0
mov rdx, r12
mov rcx, rdi
call fcn.1400997f0
sub dword [rbx + 0x6b4], r12d
jne 0x1400eccfb
mov qword [rbx + 0x6a0], r15
or eax, 0xffffffff
lock xadd dword [rbx + 0x6b0], eax
dec eax
cmp eax, 0xffffffff
je 0x1400ecd02
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140056540
jmp 0x1400ecd02
lock dec dword [rbx + 0x6b0]
mov rcx, qword [rbx + 0x740]
test rcx, rcx
je 0x1400ecd1e
call fcn.1400999a0
mov qword [rbx + 0x740], r15
lea rdi, [rbx + 0x6b8]
cmp qword [rdi + 0x78], 0x78
jbe 0x1400ecd47
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.1400999a0
jmp 0x1400ecd5b
cmp qword [rdi + 0x78], r15
jbe 0x1400ecd5b
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.140056340
mov rcx, qword [rbx + 0x658]
test rcx, rcx
je 0x1400ecd87
call fcn.1400999a0
mov qword [rbx + 0x658], r15
mov rcx, qword [rbx + 0x618]
lea rdi, [rbx + 0x620]
cmp rcx, rdi
jne 0x1400ecdaa
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ecdaf
call fcn.1400999a0
mov rcx, qword [rbx + 0x5d8]
lea rdi, [rbx + 0x5e0]
cmp rcx, rdi
jne 0x1400ecdd2
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ecdd7
call fcn.1400999a0
mov rcx, qword [rbx + 0x5b8]
test rcx, rcx
je 0x1400ecdf3
call fcn.1400999a0
mov qword [rbx + 0x5b8], r15
mov rcx, qword [rbx + 0x598]
test rcx, rcx
je 0x1400ece0f
call fcn.1400999a0
mov qword [rbx + 0x598], r15
mov rcx, qword [rbx + 0x540]
lea rdi, [rbx + 0x548]
cmp rcx, rdi
jne 0x1400ece32
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ece37
call fcn.1400999a0
lea rcx, [rbx + 0x288]
call 0x1400ee154
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 0x1400ee154
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
add rsp, 0xffffffffffffffe0
xor edi, edi
lea rsi, [rcx + 0x280]
mov rbx, rcx
cmp qword [rsi], rdi
jbe 0x1400ee1b5
cmp qword [rbx + 0x78], 0x78
jbe 0x1400ee18f
mov rcx, qword [rbx]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rbx]
call fcn.1400999a0
jmp 0x1400ee1a0
cmp qword [rbx + 0x78], 0
jbe 0x1400ee1a0
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax]
and qword [rbx + 0x78], 0
inc rdi
nop
add rbx, 0x80
cmp rdi, qword [rsi]
jb 0x1400ee174
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
neg rsp
add rsp, 0xffffffffffffffe0
neg rsp
pop rdi
ret