Function at 0x140025360
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r13
push r14
sub rsp, 0x40
movzx eax, word [rcx + 0x72]
lea r14, [rcx + 0x68]
mov rbx, rdx
shl rax, 6
xor edx, edx
mov dword [rsp + 0x28], 1
mov word [rsp + 0x70], dx
mov rbp, r9
mov qword [rsp + 0x20], rdx
mov r13, r8
movzx edi, dx
mov esi, edx
test rax, rax
je 0x1400256ef
mov rax, qword [r14]
test byte [rax], 1
je 0x1400256ef
movzx ecx, word [rbx + 0xa]
mov eax, ecx
mov qword [rsp + 0x80], r15
shl rax, 6
test rax, rax
jne 0x1400253ce
mov eax, edx
jmp 0x1400253d6
mov rax, qword [rbx]
mov eax, dword [rax]
and eax, 1
mov r15, qword [rsp + 0x98]
xor al, 1
mov byte [r15], al
lea rax, [rsp + 0x30]
cmp rax, rbx
je 0x140025483
test cx, cx
je 0x140025483
sub rcx, 1
je 0x140025416
mov rax, qword [rbx]
lea rdx, [rax + rcx*8]
cmp qword [rdx], rsi
jne 0x140025416
sub rdx, 8
sub rcx, 1
jne 0x140025407
lea rdi, [rcx + 1]
test rdi, rdi
je 0x140025458
cmp rdi, 0x2710
jbe 0x14002543c
mov r15, qword [rsp + 0x80]
mov ebx, 0xfffffff0
mov eax, ebx
jmp 0x1400256f4
mov edx, 8
mov rcx, rdi
call fcn.140039240
mov rsi, rax
test rax, rax
je 0x140025428
mov word [rsp + 0x70], di
jmp 0x14002546b
imul r8, rdi, 0xfffffffffffffff8
lea rcx, [rdi*8]
xor edx, edx
call fcn.140036690
mov rdx, qword [rbx]
lea r8, [rdi*8]
mov rcx, rsi
call fcn.140037340
movzx edi, word [rsp + 0x70]
mov r9d, 0xffffffff
mov qword [rsp + 0x78], r12
mov r8, rbx
lea rcx, [rsp + 0x20]
mov rdx, r14
call fcn.14002a060
mov ebx, eax
test eax, eax
jne 0x140025695
movzx ebx, word [rsp + 0x2a]
movzx r12d, byte [r15]
cmp rbx, 0x2710
ja 0x140025690
movzx r14d, di
cmp r14, rbx
jae 0x14002551d
lea edx, [rax + 8]
mov ecx, ebx
call fcn.140039240
mov r15, rax
test rax, rax
je 0x140025690
test rsi, rsi
je 0x14002550f
lea r14, [r14*8]
mov rdx, rsi
mov r8, r14
mov rcx, rax
call fcn.140037340
test r14, r14
je 0x140025507
mov rdi, rsi
xor eax, eax
mov rcx, r14
rep stosb byte [rdi], al
mov rcx, rsi
call fcn.14003c094
movzx r9d, bx
mov word [rsp + 0x70], bx
mov rsi, r15
jmp 0x140025523
movzx r9d, word [rsp + 0x70]
mov rcx, qword [0x140068170]
mov rax, qword [0x140068170]
xor rcx, r12
mov r14, qword [rsp + 0x20]
mov rdx, rcx
shr rdx, 1
neg rcx
neg rdx
or rdx, rcx
shr rdx, 0x3f
neg rdx
cmp rsi, r14
je 0x14002559e
test rbx, rbx
je 0x14002559e
mov rdi, rsi
sub r14, rsi
mov r8, rbx
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x140068170]
mov rax, qword [r14 + rdi]
lea rdi, [rdi + 8]
xor rcx, rdx
and rax, rdx
not rcx
and rcx, qword [rdi - 8]
or rax, rcx
mov qword [rdi - 8], rax
sub r8, 1
jne 0x140025570
mov r14, qword [rsp + 0x20]
movzx r15d, r9w
not rdx
cmp rbx, r15
jae 0x1400255bc
nop word [rax + rax]
and qword [rsi + rbx*8], rdx
inc rbx
cmp rbx, r15
jb 0x1400255b0
lea r8, [rbp + 1]
xor edx, edx
mov rcx, r13
xor ebx, ebx
call fcn.140036690
xor r10d, r10d
test rbp, rbp
je 0x140025634
movzx r11d, byte [rsp + 0x90]
nop dword [rax]
xor edi, edi
test r11, r11
je 0x14002562c
movzx r8d, byte [r10 + r13]
mov r9, r15
shl r9, 6
mov rdx, r10
cmp r9, rdx
ja 0x1400255ff
xor al, al
jmp 0x140025615
mov rax, rdx
movzx ecx, dl
shr rax, 6
and cl, 0x3f
mov rax, qword [rsi + rax*8]
shr rax, cl
and al, 1
mov rcx, rdi
add rdx, rbp
shl al, cl
inc rdi
or r8b, al
cmp rdi, r11
jb 0x1400255f6
mov byte [r10 + r13], r8b
inc r10
cmp r10, rbp
jb 0x1400255e0
xor r11b, r11b
cmp rbp, 1
jb 0x14002569a
lea r10, [r13 + 1]
movzx edx, byte [r10 - 1]
mov r9d, 1
movzx r8d, byte [r10]
lea r10, [r10 + 1]
xor r8b, r11b
mov ecx, edx
and r11b, byte [r10 - 1]
movzx eax, r8b
and al, 1
sub r9b, al
movzx eax, r9b
imul ecx, eax
shl r9b, 7
or r9b, dl
mov byte [r10 - 2], r9b
movzx eax, cl
xor cl, r8b
and al, r8b
mov byte [r10 - 1], cl
or r11b, al
sub rbp, 1
jne 0x140025641
jmp 0x14002569a
mov ebx, 0xfffffff0
mov r14, qword [rsp + 0x20]
mov r12, qword [rsp + 0x78]
test r14, r14
je 0x1400256c1
movzx ecx, word [rsp + 0x2a]
shl rcx, 3
test rcx, rcx
je 0x1400256b9
mov rdi, r14
xor eax, eax
rep stosb byte [rdi], al
mov rcx, r14
call fcn.14003c094
test rsi, rsi
je 0x1400256e3
movzx ecx, word [rsp + 0x70]
shl rcx, 3
test rcx, rcx
je 0x1400256db
mov rdi, rsi
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rsi
call fcn.14003c094
mov r15, qword [rsp + 0x80]
mov eax, ebx
jmp 0x1400256f4
mov eax, 0xffffb080
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret