Function at 0x140001c00
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov eax, 0x760e0
call fcn.140003c60
sub rsp, rax
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x76090], rax
xor ebx, ebx
mov dword [rsp + 0x68], 0x10001
mov dword [rsp + 0x28], ebx
lea r8, [rsp + 0x68]
xor r9d, r9d
mov qword [rsp + 0x20], rbx
mov edx, 0xffffffff
mov qword [rsp + 0x30], rbx
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x6c], 0x3eef
mov dword [rsp + 0x70], 0x3eef
mov dword [rsp + 0x74], 0x80001
mov word [rsp + 0x78], bx
call qword [sym.imp.WINMM.dll_waveOutOpen]
xor edx, edx
lea rcx, [rsp + 0x80]
mov r8d, 0x76002
call sub.VCRUNTIME140.dll_memset
cmp dword [0x140006058], 6
mov eax, ebx
jl 0x140001eb1
movaps xmmword [rsp + 0x760d0], xmm6
lea rdx, [rsp + 0x80]
movaps xmmword [rsp + 0x760c0], xmm7
movaps xmmword [rsp + 0x760b0], xmm8
movdqa xmm8, xmmword [0x1400046d0]
movaps xmmword [rsp + 0x760a0], xmm9
movdqa xmm9, xmmword [0x1400046f0]
nop
movd xmm7, eax
lea ecx, [rax + 4]
pshufd xmm7, xmm7, 0
paddd xmm7, xmm9
movdqa xmm2, xmm7
movdqa xmm6, xmm7
psrld xmm6, 3
movdqa xmm3, xmm7
movdqa xmm1, xmm6
psrld xmm2, 2
orps xmm1, xmm7
psrld xmm3, 4
psrld xmm1, 3
movdqa xmm0, xmm2
pmulld xmm1, xmm7
orps xmm0, xmm7
movdqa xmm4, xmm7
psrld xmm0, 5
vpsrlvd xmm5, xmm1, xmm0
psrld xmm4, 5
movdqa xmm1, xmm7
psrld xmm1, 1
pmulld xmm1, xmm7
psrld xmm1, 0xc
pshufb xmm1, xmm8
vpsrlvd xmm0, xmm7, xmm7
pshufb xmm0, xmm8
pshufb xmm4, xmm8
paddb xmm1, xmm0
pshufb xmm3, xmm8
pshufb xmm5, xmm8
vpmovzxbw ymm0, xmm3
pshufb xmm2, xmm8
xorps xmm5, xmm1
orps xmm4, xmm2
pshufb xmm6, xmm8
pshufb xmm7, xmm8
xorps xmm6, xmm3
paddb xmm4, xmm6
vpmovzxbw ymm1, xmm7
vpmullw ymm1, ymm1, ymm0
vpmovzxwd zmm2, ymm1
vpmovdb xmm3, zmm2
andps xmm4, xmm3
movd xmm7, ecx
orps xmm5, xmm4
pshufd xmm7, xmm7, 0
paddd xmm7, xmm9
movd dword [rdx], xmm5
movdqa xmm6, xmm7
movdqa xmm2, xmm7
psrld xmm6, 3
movdqa xmm3, xmm7
movdqa xmm1, xmm6
psrld xmm2, 2
orps xmm1, xmm7
psrld xmm3, 4
psrld xmm1, 3
movdqa xmm0, xmm2
pmulld xmm1, xmm7
orps xmm0, xmm7
movdqa xmm4, xmm7
psrld xmm0, 5
vpsrlvd xmm5, xmm1, xmm0
psrld xmm4, 5
movdqa xmm1, xmm7
psrld xmm1, 1
pmulld xmm1, xmm7
psrld xmm1, 0xc
vpsrlvd xmm0, xmm7, xmm7
pshufb xmm1, xmm8
pshufb xmm0, xmm8
pshufb xmm3, xmm8
pshufb xmm5, xmm8
pshufb xmm4, xmm8
pshufb xmm2, xmm8
pshufb xmm6, xmm8
paddb xmm1, xmm0
orps xmm4, xmm2
xorps xmm5, xmm1
xorps xmm6, xmm3
vpmovzxbw ymm0, xmm3
pshufb xmm7, xmm8
lea rdx, [rdx + 8]
add eax, 8
paddb xmm4, xmm6
vpmovzxbw ymm1, xmm7
vpmullw ymm1, ymm1, ymm0
vpmovzxwd zmm2, ymm1
vpmovdb xmm3, zmm2
andps xmm4, xmm3
orps xmm5, xmm4
movd dword [rdx - 4], xmm5
cmp eax, 0x76000
jb 0x140001cd0
movaps xmm9, xmmword [rsp + 0x760a0]
movaps xmm8, xmmword [rsp + 0x760b0]
movaps xmm7, xmmword [rsp + 0x760c0]
movaps xmm6, xmmword [rsp + 0x760d0]
cmp eax, 0x76002
jae 0x140001f20
mov r10d, eax
mov edx, eax
shr edx, 2
mov r9d, eax
mov ecx, edx
shr r10d, 3
or ecx, eax
shr r9d, 4
shr ecx, 5
mov r8d, eax
shr r8d, 5
mov r11d, r10d
or r11d, eax
or r8b, dl
shr r11d, 3
imul r11d, eax
movsx edx, r9b
shr r11d, cl
mov ecx, eax
shr ecx, 1
imul ecx, eax
shr ecx, 0xc
xor r11b, cl
movzx ecx, r9b
xor cl, r10b
add r8b, cl
movsx ecx, al
imul edx, ecx
mov ecx, eax
inc eax
and r8b, dl
or r11b, r8b
mov byte [rsp + rcx + 0x80], r11b
cmp eax, 0x76002
jb 0x140001eb1
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x80]
mov r8d, 0x30
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x40], 0x76002
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
call qword [sym.imp.WINMM.dll_waveOutPrepareHeader]
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x38]
mov r8d, 0x30
call qword [sym.imp.WINMM.dll_waveOutWrite]
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x38]
mov r8d, 0x30
call qword [sym.imp.WINMM.dll_waveOutUnprepareHeader]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.WINMM.dll_waveOutClose]
mov rcx, qword [rsp + 0x76090]
xor rcx, rsp
call fcn.140002e50
add rsp, 0x760e0
pop rbx
ret