Function at 0x14002f464
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
add rsp, 0xffffffffffffffa0
mov rbx, rcx
xor r15d, r15d
mov rcx, qword [rcx + 0x588]
mov r12d, 0x2eec7db7
sub r12d, 0x1491473a
sub r12d, 0x1a5b367c
test rcx, rcx
je 0x14002f4c6
dec dword [rcx + 8]
cmp dword [rcx + 8], r15d
jg 0x14002f4bf
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [rbx + 0x588], r15
mov r8, qword [rbx + 0x520]
movabs r13, 0x5def002070a975c0
xor r13, 0x3117a465
add r13, 0x16013c5d
sub r13, 0x1d9190c0
cmp r8, r13
je 0x14002f5b4
cmp byte [rbx + 0x528], r15b
jne 0x14002f5b4
mov rcx, qword [rbx + 0x530]
movabs rdx, 0xd4a8dbaf4a478818
sub rdx, 0x1f91c82
add rdx, 0x1dbe9c97
xor rdx, 0x677edd68
add rdx, qword [0x1400dbdf8]
movabs rax, 0x3af9354316abadcb
xor rax, 0x3cfee716
add rax, 0x7fffffff
xor rax, 0x13a90ba0
not rdx
xor r8, r13
rol rdx, 0x34
xor rcx, r13
add rax, rdx
movabs rdx, 0x678a29ad3a35f4d6
sub rdx, 0x2d68a3e1
add rdx, 0x48b3bbf1
add rdx, 0x4fa12e00
xor rax, rdx
movabs rdx, 0x44790fe755e839a
sub rdx, 0x3dafec25
xor rdx, 0xa47b7ea
sub rax, rdx
mov edx, 0x7e6cad9b
sub edx, 0x7bcba3e6
add edx, 0x680010c0
add edx, 0x955ee587
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 0x14002f5f3
cmp rdi, qword [rbx + 0x6a0]
je 0x14002f621
mov rcx, qword [rbx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.14004e940
mov qword [rbx + 0x6a0], rdi
mov dword [rbx + 0x6b4], r12d
mov rax, qword [rbx + 0x5c0]
mov rdi, qword [rbx + 0x5b8]
test rax, rax
je 0x14002f650
lea rsi, [rdi + rax*8]
jmp 0x14002f647
add dword [rbx + 0x6b4], r12d
jmp 0x14002f601
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.140030a98
nop
add rdi, 0x48f8943c
sub rdi, 0x48f89434
cmp rdi, rsi
jne 0x14002f62d
mov rax, qword [rbx + 0x5a0]
mov rdi, qword [rbx + 0x598]
test rax, rax
je 0x14002f69c
lea rsi, [rdi + rax*8]
jmp 0x14002f693
mov rcx, qword [rdi]
test rcx, rcx
je 0x14002f684
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
add rdi, 0x52efe7fd
sub rdi, 0x52efe7f5
cmp rdi, rsi
jne 0x14002f670
mov rax, qword [rbx + 0x660]
mov rdi, qword [rbx + 0x658]
test rax, rax
je 0x14002f6e3
lea rsi, [rdi + rax*8]
jmp 0x14002f6da
mov rcx, qword [rdi]
test rcx, rcx
je 0x14002f6d0
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
neg rdi
add rdi, 0xfffffffffffffff8
neg rdi
cmp rdi, rsi
jne 0x14002f6bc
mov esi, 0x5b84c0b
add esi, 0x1ddb5f04
add esi, 0x58447496
sub esi, 0x7bd81f75
cmp dword [rbx + 0x518], r12d
jne 0x14002f858
cmp qword [rbx + 0x578], r15
je 0x14002f858
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.1400166e8
mov edx, 0xda4e965
add edx, 0x3c59cba5
sub edx, 0x137772cf
add edx, 0x13a20ca1
test rbp, rbp
je 0x14002f7b8
mov rdi, rax
sub rsi, rax
mov r8, rbp
movzx ecx, dx
mov r9d, 0x76471299
sub r9d, 0x10870827
sub r9d, 0x1227f261
sub r9d, 0x53981712
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, r12
jne 0x14002f77f
mov word [rax + rbp*2], r15w
movabs rcx, 0xde90dd876694c718
sub rcx, 0x223e9510
xor rcx, 0x4cb47b34
xor rcx, 0x2d942c7
mov rax, qword [0x1400dbba8]
mov rdx, r14
add rax, rcx
movabs rcx, 0x820e028032c4c303
add rcx, 0x9dc23b2
sub rcx, 0x2ab33a37
xor rax, rcx
mov rcx, qword [rsp + 0x20]
rol rax, 7
not rax
rol rax, 0x27
call rax
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x14002f83c
xor eax, eax
lea rdi, [rsp + 0x28]
lea esi, [rax + 0x30]
mov ecx, esi
rep stosb byte [rdi], al
jmp 0x14002f858
call fcn.140083f00
mov esi, 0x62a03bb7
sub esi, 0xae260c4
add esi, 0x1d70708b
xor esi, 0x752e4b4e
mov rcx, qword [rbx + 0x768]
cmp rcx, r13
je 0x14002f870
xor rcx, r13
call fcn.140078f00
mov rcx, qword [rbx + 0x760]
cmp rcx, r13
je 0x14002f888
xor rcx, r13
call fcn.140078f00
mov rcx, qword [rbx + 0x510]
test rcx, rcx
je 0x14002f8a0
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rdi, qword [rbx + 0x738]
test rdi, rdi
je 0x14002f8c3
mov rcx, rdi
call fcn.140033c20
mov rdx, r12
mov rcx, rdi
call fcn.140083d40
sub dword [rbx + 0x6b4], r12d
jne 0x14002f900
mov qword [rbx + 0x6a0], r15
or eax, 0xffffffff
lock xadd dword [rbx + 0x6b0], eax
dec eax
cmp eax, 0xffffffff
je 0x14002f907
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.14004e900
jmp 0x14002f907
lock dec dword [rbx + 0x6b0]
mov rcx, qword [rbx + 0x740]
test rcx, rcx
je 0x14002f923
call fcn.140083f00
mov qword [rbx + 0x740], r15
lea rdi, [rbx + 0x6b8]
cmp qword [rdi + 0x78], 0x78
jbe 0x14002f94c
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.140083f00
jmp 0x14002f960
cmp qword [rdi + 0x78], r15
jbe 0x14002f960
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.14004e750
mov rcx, qword [rbx + 0x658]
test rcx, rcx
je 0x14002f98c
call fcn.140083f00
mov qword [rbx + 0x658], r15
mov rcx, qword [rbx + 0x618]
lea rdi, [rbx + 0x620]
cmp rcx, rdi
jne 0x14002f9af
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x14002f9b4
call fcn.140083f00
mov rcx, qword [rbx + 0x5d8]
lea rdi, [rbx + 0x5e0]
cmp rcx, rdi
jne 0x14002f9d7
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x14002f9dc
call fcn.140083f00
mov rcx, qword [rbx + 0x5b8]
test rcx, rcx
je 0x14002f9f8
call fcn.140083f00
mov qword [rbx + 0x5b8], r15
mov rcx, qword [rbx + 0x598]
test rcx, rcx
je 0x14002fa14
call fcn.140083f00
mov qword [rbx + 0x598], r15
mov rcx, qword [rbx + 0x540]
lea rdi, [rbx + 0x548]
cmp rcx, rdi
jne 0x14002fa37
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x14002fa3c
call fcn.140083f00
lea rcx, [rbx + 0x288]
call fcn.140030ca4
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 0x140030d24
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 0x140030d90
cmp qword [rbx + 0x78], 0x78
jbe 0x140030d65
mov rcx, qword [rbx]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rbx]
call fcn.140083f00
jmp 0x140030d76
cmp qword [rbx + 0x78], 0
jbe 0x140030d76
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax]
and qword [rbx + 0x78], 0
inc rdi
neg rbx
sub rbx, 0x80
neg rbx
cmp rdi, qword [rsi]
jb 0x140030d4a
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
neg rsp
add rsp, 0xffffffffffffffe0
neg rsp
pop rdi
ret