Function at 0x180030900
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rcx
push rbp
lea rbp, [r11 - 0x5f]
sub rsp, 0xa0
mov rax, qword [0x180041810]
cmp byte [rax + 0x18], 0
je 0x180030fd5
mov eax, dword [0x18003ac18]
movups xmm0, xmmword [str.k_VOXG]
mov qword [r11 + 0x10], rbx
xor ebx, ebx
mov qword [r11 + 0x18], rsi
mov r8d, ebx
mov qword [r11 - 0x10], r12
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
lea r12d, [rbx + 0x19]
mov r14d, dword [0x180041018]
lea r13d, [rbx + 0x1f]
mov dword [rbp - 9], eax
movzx eax, byte [0x18003ac1c]
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
mov byte [rbp - 5], al
movups xmmword [rbp - 0x19], xmm0
cmp r14d, 2
jl 0x180030acf
movdqa xmm0, xmmword [0x18003af90]
lea rcx, [rbp - 0x15]
movdqa xmm5, xmmword [0x18003aef0]
movdqa xmm4, xmmword [0x18003b210]
movdqa xmm7, xmmword [0x18003af70]
movdqa xmmword [rbp - 0x29], xmm0
mov edx, dword [rbp - 0x29]
movaps xmmword [r11 - 0x58], xmm8
movd xmm6, r12d
movd xmm8, r13d
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
pand xmm2, xmmword [0x18003af50]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
pxor xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x18003af50]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
pxor xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x1800309c0
movaps xmm8, xmmword [rsp + 0x50]
cmp r8d, 0x15
jge 0x180030b11
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop dword [rax]
mov eax, 0x45b74e73
lea r9, [r9 + 1]
imul r8d
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x75
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x39
xor byte [r9 - 1], al
cmp r8d, 0x15
jl 0x180030ae0
xor edx, edx
mov qword [rsp + 0xc8], rdi
lea rcx, [rbp - 0x19]
lea r8d, [rdx + 8]
call fcn.18000bc60
mov rax, qword [0x1800417d0]
mov esi, ebx
mov r8, qword [0x1800417c8]
sub rax, r8
sar rax, 4
test rax, rax
je 0x180030c00
movss xmm0, dword [0x18003ae34]
mov rdi, rbx
movss xmm6, dword [0x18003ae38]
movss dword [rbp + 0x6b], xmm0
mov rax, qword [0x180041728]
lea r9, [rbp + 0x67]
mov rcx, qword [rax + 0x3ed8]
mov rax, qword [0x180041800]
movss xmm0, dword [rcx + 0x28]
cmp dword [rax + 0xc0], esi
subss xmm0, xmm6
sete dl
add rdi, rdi
movss dword [rbp + 0x67], xmm0
mov rcx, qword [r8 + rdi*8]
call fcn.18002fe20
test al, al
je 0x180030bc5
mov rax, qword [0x1800417c8]
mov ecx, dword [rax + rdi*8 + 8]
mov rax, qword [0x180041800]
mov dword [rax + 0xbc], ecx
mov rax, qword [0x180041800]
mov dword [rax + 0xc0], esi
mov rax, qword [0x1800417d0]
inc esi
mov r8, qword [0x1800417c8]
sub rax, r8
mov edi, esi
sar rax, 4
cmp rdi, rax
jb 0x180030b60
mov rax, qword [0x180041728]
mov rcx, qword [rax + 0x3ed8]
movss xmm0, dword [rcx + 0x28]
subss xmm0, xmm6
jmp 0x180030c1b
mov rax, qword [0x180041728]
mov rcx, qword [rax + 0x3ed8]
movss xmm0, dword [rcx + 0x28]
subss xmm0, dword [0x18003ae38]
mov eax, dword [0x18003ac00]
mov r8d, ebx
movsd xmm1, qword [0x18003abf8]
mov dword [rbp - 0x21], eax
movzx eax, byte [0x18003ac04]
movss dword [rbp + 0x67], xmm0
movss xmm0, dword [0x18003ae40]
mov byte [rbp - 0x1d], al
movss dword [rbp + 0x6b], xmm0
movsd qword [rbp - 0x29], xmm1
cmp r14d, 2
jl 0x180030d63
movdqa xmm2, xmmword [0x18003aef0]
mov r8d, 8
movdqa xmm4, xmmword [0x18003b210]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18003af10]
movdqa xmm0, xmm2
mov eax, dword [0x18003af90]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r12d
movd xmm5, r13d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18003af70]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x18003af50]
movd xmm1, dword [0x18003abf8]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
pxor xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp - 0x29], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18003af70]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x18003af50]
movd xmm1, dword [rbp - 0x25]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
pxor xmm2, xmm1
movd dword [rbp - 0x25], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x29]
add r9, rax
nop dword [rax]
mov eax, 0x45b74e73
lea r9, [r9 + 1]
imul r8d
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x75
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x39
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x180030d70
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x29]
call fcn.18002e940
test al, al
je 0x180030e0f
mov rcx, qword [0x180041828]
mov rax, qword [0x180041800]
movzx esi, byte [0x180041760]
mov qword [rsp + 0x80], r15
mov rdi, qword [rcx + 0x98]
mov r15d, dword [rax + 0xbc]
mov rax, qword [rcx + 0x28]
mov rdx, qword [rax]
mov rax, qword [rcx + 0x48]
mov rcx, rbx
test rdx, rdx
je 0x180030df4
mov rcx, qword [rdx + 8]
call rax
movzx r9d, sil
mov r8d, 0xfa
mov rdx, r15
mov ecx, eax
call rdi
mov r15, qword [rsp + 0x80]
cmp byte [0x18003ac2d], bl
mov eax, dword [0x18003ac28]
movsd xmm0, qword [str.jJZKS]
mov rdi, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xc0]
mov dword [rbp - 0x21], eax
movzx eax, word [0x18003ac2c]
mov word [rbp - 0x1d], ax
movsd qword [rbp - 0x29], xmm0
je 0x180030f9d
cmp r14d, 2
jl 0x180030f5e
movdqa xmm2, xmmword [0x18003aef0]
mov ebx, 8
movdqa xmm4, xmmword [0x18003b210]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18003af10]
movdqa xmm0, xmm2
mov eax, dword [0x18003af90]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r12d
movd xmm5, r13d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18003af70]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x18003af50]
movd xmm1, dword [str.jJZKS]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
pxor xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp - 0x29], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18003af70]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x18003af50]
movd xmm1, dword [rbp - 0x25]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
pxor xmm2, xmm1
movd dword [rbp - 0x25], xmm2
movsxd rax, ebx
lea r8, [rbp - 0x29]
add r8, rax
nop dword [rax + rax]
mov eax, 0x45b74e73
lea r8, [r8 + 1]
imul ebx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x75
movzx eax, bl
inc ebx
sub al, cl
add al, 0x39
xor byte [r8 - 1], al
cmp ebx, 0xe
jl 0x180030f70
lea rcx, [rbp - 0x29]
call fcn.18002f690
call fcn.18000de50
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x70]
mov r14, qword [rsp + 0x88]
mov r13, qword [rsp + 0x90]
mov r12, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xb8]
add rsp, 0xa0
pop rbp
ret