Function at 0x1400ec28c
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, 0x7a08b873
sub rsp, 0x7a08b8d3
mov rbx, rcx
xor r15d, r15d
mov rcx, qword [rcx + 0x588]
mov r12d, 0x7032a9c6
xor r12d, 0x5a9340f3
sub r12d, 0x95b209f
sub r12d, 0x2146c895
test rcx, rcx
je 0x1400ec300
dec dword [rcx + 8]
cmp dword [rcx + 8], r15d
jg 0x1400ec2f9
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [rbx + 0x588], r15
mov r8, qword [rbx + 0x520]
movabs r13, 0x739865643b7f7a4b
add r13, 0x2d64a31d
xor r13, 0x15513197
xor r13, 0x4fa44530
cmp r8, r13
je 0x1400ec3a9
cmp byte [rbx + 0x528], r15b
jne 0x1400ec3a9
mov rax, qword [0x140144290]
movabs rdx, 0xd7c686d47440e301
sub rdx, 0x105017ef
add rdx, 0x990ab89
mov rcx, qword [rbx + 0x530]
add rax, rdx
movabs rdx, 0x88072034042af290
add rdx, 0x412c63ed
add rdx, 0x27ba41d5
add rdx, 0x6c48312
xor r8, r13
xor rax, rdx
xor rcx, r13
not rax
mov edx, 0x54e15c15
sub edx, 0x42112f9b
add edx, 0x389ead68
xor edx, 0xb491261e
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 0x1400ec3e8
cmp rdi, qword [rbx + 0x6a0]
je 0x1400ec416
mov rcx, qword [rbx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.140057000
mov qword [rbx + 0x6a0], rdi
mov dword [rbx + 0x6b4], r12d
mov rax, qword [rbx + 0x5c0]
mov rdi, qword [rbx + 0x5b8]
test rax, rax
je 0x1400ec445
lea rsi, [rdi + rax*8]
jmp 0x1400ec43c
add dword [rbx + 0x6b4], r12d
jmp 0x1400ec3f6
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.1400ed9d0
nop
sub rdi, 0xeaea827
add rdi, 0xeaea82f
cmp rdi, rsi
jne 0x1400ec422
mov rax, qword [rbx + 0x5a0]
mov rdi, qword [rbx + 0x598]
test rax, rax
je 0x1400ec48c
lea rsi, [rdi + rax*8]
jmp 0x1400ec483
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ec479
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
neg rdi
add rdi, 0xfffffffffffffff8
neg rdi
cmp rdi, rsi
jne 0x1400ec465
mov rax, qword [rbx + 0x660]
mov rdi, qword [rbx + 0x658]
test rax, rax
je 0x1400ec4cd
lea rsi, [rdi + rax*8]
jmp 0x1400ec4c4
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ec4c0
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
add rdi, 8
cmp rdi, rsi
jne 0x1400ec4ac
mov esi, 0x6816d69
xor esi, 0x34c73e74
xor esi, 0x49d7d9d5
sub esi, 0x7b918a98
cmp dword [rbx + 0x518], r12d
jne 0x1400ec679
cmp qword [rbx + 0x578], r15
je 0x1400ec679
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.140017ab0
mov edx, 0x3ba14fb2
add edx, 0x3c442a80
sub edx, 0x12efd2d3
xor edx, 0xe5cc74e
test rbp, rbp
je 0x1400ec59b
mov rdi, rax
sub rsi, rax
mov r8, rbp
movzx ecx, dx
mov r9d, 0x1dcdba40
sub r9d, 0x1a8cbd12
xor r9d, 0x340fdd1
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, r12
jne 0x1400ec569
mov word [rax + rbp*2], r15w
movabs rcx, 0xbc9bf3877054b22
sub rcx, 0x5e958c8
add rcx, 0x695e2bd2
mov rax, qword [0x140144028]
mov rdx, r14
xor rax, rcx
movabs rcx, 0x74e563a07ccb0577
sub rcx, 0x3b21a664
sub rcx, 0x1c074753
add rcx, 0x3cbeeb90
add rax, rcx
movabs rcx, 0x6807c54f14951415
add rcx, 0x1a818286
sub rcx, 0x1d12d5ea
xor rcx, 0x69ab9aa7
ror rax, 3
add rax, rcx
movabs rcx, 0x7946e1fc69866d12
xor rcx, 0x24342899
xor rcx, 0x2a18ef47
rol rax, 0x32
sub rax, rcx
mov rcx, qword [rsp + 0x20]
ror rax, 0x22
call rax
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x1400ec65d
xor eax, eax
lea rdi, [rsp + 0x28]
lea esi, [rax + 0x30]
mov ecx, esi
rep stosb byte [rdi], al
jmp 0x1400ec679
call fcn.140099eb0
mov esi, 0x400c6b5b
xor esi, 0x1c926f05
add esi, 0x2b553d3
xor esi, 0x5f535801
mov rcx, qword [rbx + 0x768]
cmp rcx, r13
je 0x1400ec691
xor rcx, r13
call fcn.14008e900
mov rcx, qword [rbx + 0x760]
cmp rcx, r13
je 0x1400ec6a9
xor rcx, r13
call fcn.14008e900
mov rcx, qword [rbx + 0x510]
test rcx, rcx
je 0x1400ec6c1
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rdi, qword [rbx + 0x738]
test rdi, rdi
je 0x1400ec6e4
mov rcx, rdi
call fcn.140055390
mov rdx, r12
mov rcx, rdi
call fcn.140099d60
sub dword [rbx + 0x6b4], r12d
jne 0x1400ec721
mov qword [rbx + 0x6a0], r15
or eax, 0xffffffff
lock xadd dword [rbx + 0x6b0], eax
dec eax
cmp eax, 0xffffffff
je 0x1400ec728
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.140056fa0
jmp 0x1400ec728
lock dec dword [rbx + 0x6b0]
mov rcx, qword [rbx + 0x740]
test rcx, rcx
je 0x1400ec744
call fcn.140099eb0
mov qword [rbx + 0x740], r15
lea rdi, [rbx + 0x6b8]
cmp qword [rdi + 0x78], 0x78
jbe 0x1400ec76d
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.140099eb0
jmp 0x1400ec781
cmp qword [rdi + 0x78], r15
jbe 0x1400ec781
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.140056da0
mov rcx, qword [rbx + 0x658]
test rcx, rcx
je 0x1400ec7ad
call fcn.140099eb0
mov qword [rbx + 0x658], r15
mov rcx, qword [rbx + 0x618]
lea rdi, [rbx + 0x620]
cmp rcx, rdi
jne 0x1400ec7d0
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ec7d5
call fcn.140099eb0
mov rcx, qword [rbx + 0x5d8]
lea rdi, [rbx + 0x5e0]
cmp rcx, rdi
jne 0x1400ec7f8
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ec7fd
call fcn.140099eb0
mov rcx, qword [rbx + 0x5b8]
test rcx, rcx
je 0x1400ec819
call fcn.140099eb0
mov qword [rbx + 0x5b8], r15
mov rcx, qword [rbx + 0x598]
test rcx, rcx
je 0x1400ec835
call fcn.140099eb0
mov qword [rbx + 0x598], r15
mov rcx, qword [rbx + 0x540]
lea rdi, [rbx + 0x548]
cmp rcx, rdi
jne 0x1400ec858
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x1400ec85d
call fcn.140099eb0
lea rcx, [rbx + 0x288]
call fcn.1400edbe4
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 0x1400edc58
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
neg rsp
sub rsp, 0xffffffffffffffe0
neg rsp
xor edi, edi
lea rsi, [rcx + 0x280]
mov rbx, rcx
cmp qword [rsi], rdi
jbe 0x1400edcbf
cmp qword [rbx + 0x78], 0x78
jbe 0x1400edc99
mov rcx, qword [rbx]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rbx]
call fcn.140099eb0
jmp 0x1400edcaa
cmp qword [rbx + 0x78], 0
jbe 0x1400edcaa
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 0x1400edc7e
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
nop
sub rsp, 0x4d23831f
add rsp, 0x4d23833f
pop rdi
ret