Function at 0x140066ea0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
cmp dword [0x14013bc78], 1
mov rsi, rcx
movaps xmmword [rax - 0x28], xmm6
movaps xmm6, xmm1
jne 0x140067119
mov rcx, qword [0x14013b8c8]
xor edi, edi
movaps xmmword [rax - 0x38], xmm7
movdqa xmm7, xmmword [0x140120b10]
mov word [rbp - 0x29], 0xe000
movzx eax, word [rbp - 0x29]
movaps xmmword [rbp - 9], xmm7
mov word [rbp + 7], ax
test rcx, rcx
jne 0x140066f64
mov ebx, 0x12
mov ecx, ebx
call fcn.140075634
mov rcx, rax
mov qword [0x14013b8c8], rax
lea r8, [rbp + 8]
mov eax, edi
lea rdx, [rcx + 0x11]
cmp rcx, r8
ja 0x140066f26
lea r8, [rbp - 9]
cmp rdx, r8
jae 0x140066f3b
movdqa xmm0, xmmword [0x140121660]
mov eax, 0x10
pxor xmm0, xmm7
movdqu xmmword [rcx], xmm0
lea r8, [rbp - 9]
sub r8, rcx
lea rdx, [rax + rcx]
sub rbx, rax
nop dword [rax]
movzx eax, byte [r8 + rdx]
lea rdx, [rdx + 1]
xor al, 0xe0
mov byte [rdx - 1], al
sub rbx, 1
jne 0x140066f50
call fcn.140062af0
movaps xmm7, xmmword [rsp + 0xa0]
mov ecx, edi
cvttss2si edx, xmm6
mov word [rbp + 0x77], 0x739b
mov byte [rbp + 0x79], 0x64
test edx, edx
movzx eax, dl
cmovg ecx, eax
cmp byte [0x14013b270], dil
mov byte [rbp + 0x7a], cl
je 0x140067059
mov rdx, qword [0x14013b868]
movdqa xmm6, xmmword [0x1401211f0]
mov dword [rbp - 0x21], 0x8fc29690
mov eax, dword [rbp - 0x21]
mov dword [rbp + 0xf], eax
mov dword [rbp - 0x29], 0x90c2868c
mov dword [rbp - 0x25], 0x83969187
movsd xmm0, qword [rbp - 0x29]
mov word [rbp - 0x1d], 0xe287
movzx eax, word [rbp - 0x1d]
mov word [rbp + 0x13], ax
movaps xmmword [rbp - 9], xmm6
movsd qword [rbp + 7], xmm0
test rdx, rdx
jne 0x140067474
mov ebx, 0x1e
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013b868], rax
add rax, 0x1d
lea rcx, [rbp + 0x14]
cmp rdx, rcx
ja 0x140067014
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x140067029
movdqa xmm0, xmmword [0x140121670]
mov edi, 0x10
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 1]
xor al, 0xe2
mov byte [rcx - 1], al
sub rbx, 1
jne 0x140067040
jmp 0x140067474
mov rdx, qword [0x14013bb30]
movdqa xmm6, xmmword [0x140120a70]
mov dword [rbp - 0x21], 0x108c40c
mov eax, dword [rbp - 0x21]
mov dword [rbp + 0xf], eax
mov dword [rbp - 0x29], 0x4030114
mov dword [rbp - 0x25], 0x1615170b
movsd xmm0, qword [rbp - 0x29]
mov word [rbp - 0x1d], 0x1b09
movzx eax, word [rbp - 0x1d]
mov word [rbp + 0x13], ax
movaps xmmword [rbp - 9], xmm6
movsd qword [rbp + 7], xmm0
mov byte [rbp + 0x15], 0xe4
test rdx, rdx
jne 0x140067474
mov ebx, 0x1f
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013bb30], rax
add rax, 0x1e
lea rcx, [rbp + 0x15]
cmp rdx, rcx
ja 0x1400670d8
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x1400670ed
movdqa xmm0, xmmword [0x1401216a0]
mov edi, 0x10
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 1]
xor al, 0xe4
mov byte [rcx - 1], al
sub rbx, 1
jne 0x140067100
jmp 0x140067474
cmp dword [0x14013b1c4], 1
cvttss2si ebx, xmm6
jne 0x1400672f9
lea rcx, [0x14011e533]
call fcn.140062af0
xor edi, edi
movzx eax, bl
test ebx, ebx
mov word [rbp + 0x77], 0x739b
mov ecx, edi
mov byte [rbp + 0x79], 0x64
cmovg ecx, eax
cmp byte [0x14013b270], dil
mov byte [rbp + 0x7a], cl
je 0x140067229
mov rdx, qword [0x14013bb80]
movdqa xmm0, xmmword [0x140121510]
movdqa xmm1, xmmword [0x1401211e0]
mov word [rbp - 0x19], 0xe6c7
movzx eax, word [rbp - 0x19]
mov word [rbp + 0x17], ax
movaps xmmword [rbp - 9], xmm0
movaps xmmword [rbp + 7], xmm1
test rdx, rdx
jne 0x140067474
mov ebx, 0x22
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013bb80], rax
add rax, 0x21
lea rcx, [rbp + 0x18]
cmp rdx, rcx
ja 0x1400671be
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x1400671f9
movdqa xmm1, xmmword [0x1401216b0]
lea r8, [rbp - 9]
mov eax, 2
mov rcx, rdx
sub r8, rdx
lea edi, [rax + 0x1e]
nop dword [rax + rax]
movdqu xmm0, xmmword [r8 + rcx]
lea rcx, [rcx + 0x10]
pxor xmm0, xmm1
movdqu xmmword [rcx - 0x10], xmm0
sub rax, 1
jne 0x1400671e0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop word [rax + rax]
movzx eax, byte [rcx + r8]
lea rcx, [rcx + 1]
xor al, 0xe6
mov byte [rcx - 1], al
sub rbx, 1
jne 0x140067210
jmp 0x140067474
mov rdx, qword [0x14013b4e0]
movdqa xmm0, xmmword [0x140120bd0]
movdqa xmm1, xmmword [0x140120b80]
mov word [rbp - 0x19], 0xe8c9
movzx eax, word [rbp - 0x19]
mov word [rbp + 0x17], ax
movaps xmmword [rbp - 9], xmm0
movaps xmmword [rbp + 7], xmm1
test rdx, rdx
jne 0x140067474
mov ebx, 0x22
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013b4e0], rax
add rax, 0x21
lea rcx, [rbp + 0x18]
cmp rdx, rcx
ja 0x14006728b
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x1400672c9
movdqa xmm1, xmmword [0x1401216c0]
lea r8, [rbp - 9]
mov eax, 2
mov rcx, rdx
sub r8, rdx
lea edi, [rax + 0x1e]
nop word [rax + rax]
movdqu xmm0, xmmword [r8 + rcx]
lea rcx, [rcx + 0x10]
pxor xmm0, xmm1
movdqu xmmword [rcx - 0x10], xmm0
sub rax, 1
jne 0x1400672b0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop word [rax + rax]
movzx eax, byte [rcx + r8]
lea rcx, [rcx + 1]
xor al, 0xe8
mov byte [rcx - 1], al
sub rbx, 1
jne 0x1400672e0
jmp 0x140067474
xor edi, edi
movzx eax, bl
test ebx, ebx
mov word [rbp + 0x77], 0x739b
mov ecx, edi
mov byte [rbp + 0x79], 0x64
cmovg ecx, eax
cmp byte [0x14013b270], dil
mov byte [rbp + 0x7a], cl
je 0x1400673c9
mov rdx, qword [0x14013b8e0]
movdqa xmm6, xmmword [0x1401214e0]
mov dword [rbp - 0x29], 0x85858dca
mov dword [rbp - 0x25], 0x9f86ca8e
movsd xmm0, qword [rbp - 0x29]
mov dword [rbp - 0x21], 0xeacb8189
mov eax, dword [rbp - 0x21]
movsd qword [rbp + 7], xmm0
movaps xmmword [rbp - 9], xmm6
mov dword [rbp + 0xf], eax
test rdx, rdx
jne 0x140067474
mov ebx, 0x1c
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013b8e0], rax
add rax, 0x1b
lea rcx, [rbp + 0x12]
cmp rdx, rcx
ja 0x14006738c
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x1400673a1
movdqa xmm0, xmmword [0x140121710]
mov edi, 0x10
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 1]
xor al, 0xea
mov byte [rcx - 1], al
sub rbx, 1
jne 0x1400673b0
jmp 0x140067474
mov rdx, qword [0x14013bba8]
movdqa xmm6, xmmword [0x140120c40]
mov dword [rbp - 0x29], 0x1fccc010
mov dword [rbp - 0x25], 0x41b0c08
movsd xmm0, qword [rbp - 0x29]
mov word [rbp - 0x21], 0xeccd
movzx eax, word [rbp - 0x21]
movsd qword [rbp + 7], xmm0
mov word [rbp + 0xf], ax
movaps xmmword [rbp - 9], xmm6
test rdx, rdx
jne 0x140067474
mov ebx, 0x1a
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013bba8], rax
add rax, 0x19
lea rcx, [rbp + 0x10]
cmp rdx, rcx
ja 0x140067433
lea rcx, [rbp - 9]
cmp rax, rcx
jae 0x140067448
movdqa xmm0, xmmword [0x140121740]
mov edi, 0x10
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
lea r8, [rbp - 9]
sub r8, rdx
lea rcx, [rdi + rdx]
sub rbx, rdi
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 1]
xor al, 0xec
mov byte [rcx - 1], al
sub rbx, 1
jne 0x140067460
lea rcx, [rbp - 0x39]
call fcn.140063d60
mov r9, rax
mov byte [rsp + 0x30], 1
mov rax, qword [rsi + 0x10]
mov r8d, 1
mov eax, dword [rax]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
mov rax, qword [rsi + 8]
mov eax, dword [rax]
cdq
sub eax, edx
mov edx, dword [rbp + 0x77]
sar eax, 1
mov dword [rsp + 0x20], edx
mov ecx, eax
lea edx, [r10 - 4]
call fcn.1400025c0
mov rbx, qword [rsp + 0xe0]
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc0
pop rdi
pop rsi
pop rbp
ret
movss xmm1, dword [rdx]
add rcx, 8
jmp 0x140066ea0