Function at 0x140112280
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xa0
mov rax, qword [0x1401a6c00]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r13, rcx
xor r15d, r15d
movzx eax, byte [rcx + 7]
imul rdx, rax, 0xe
lea r12, [0x140000000]
vmovsd xmm0, qword [rdx + r12 + 0x163990]
vmovsd qword [rbp - 9], xmm0
mov esi, dword [rdx + r12 + 0x163998]
mov dword [rbp - 1], esi
movzx edi, word [rdx + r12 + 0x16399c]
xor edx, edx
mov rcx, qword [rcx + 0x50]
call fcn.14011d130
mov rbx, qword [r13 + 0x18]
mov r14, qword [r13 + 0x20]
sub r14, rbx
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], r14
movzx eax, byte [rbp]
lea rax, [rax*8 + 0x1638b8]
add rax, r12
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], 8
vmovups xmm0, xmmword [rbp - 0x19]
vmovdqa xmmword [rbp - 0x49], xmm0
movzx r9d, byte [rbp - 4]
shl r9, 7
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
mov rcx, qword [r13 + 0x50]
call fcn.14011d220
add rbx, rax
sub r14, rax
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], r14
movzx eax, byte [rbp + 1]
lea rax, [rax*8 + 0x1638b8]
add rax, r12
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], 8
vmovups xmm0, xmmword [rbp - 0x19]
vmovdqa xmmword [rbp - 0x49], xmm0
movzx r9d, byte [rbp - 3]
shl r9, 7
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
mov rcx, qword [r13 + 0x50]
call fcn.14011d220
add rbx, rax
sub r14, rax
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], r14
movzx eax, byte [rbp + 2]
lea rax, [rax*8 + 0x1638b8]
add rax, r12
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], 8
vmovups xmm0, xmmword [rbp - 0x19]
vmovdqa xmmword [rbp - 0x49], xmm0
movzx r9d, byte [rbp - 2]
shl r9, 7
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
mov rcx, qword [r13 + 0x50]
call fcn.14011d220
add rbx, rax
sub r14, rax
mov qword [rbp - 0x19], rbx
mov qword [rbp - 0x11], r14
movzx eax, dil
lea rax, [rax*8 + 0x1638b8]
add rax, r12
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], 8
vmovups xmm0, xmmword [rbp - 0x19]
vmovdqa xmmword [rbp - 0x49], xmm0
movzx r9d, sil
shl r9, 7
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x49]
mov rcx, qword [r13 + 0x50]
call fcn.14011d220
sub r14, rax
lea rdx, [rbx + rax]
lea rax, [0x140163980]
mov qword [rbp - 0x49], rax
mov qword [rbp - 0x41], 6
mov qword [rbp - 0x39], rdx
mov qword [rbp - 0x31], r14
vmovups xmm0, xmmword [rbp - 0x49]
vmovdqa xmmword [rbp - 0x49], xmm0
vmovups xmm1, xmmword [rbp - 0x39]
vmovdqa xmmword [rbp - 0x39], xmm1
lea r9d, [r15 + 0x18]
lea r8, [rbp - 0x49]
lea rdx, [rbp - 0x39]
mov rcx, qword [r13 + 0x50]
call fcn.14011d220
mov rcx, qword [r13 + 0x50]
call fcn.14011ceb0
add eax, 0xfffffffa
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rdi, eax
mov rdx, qword [r13 + 0x30]
mov qword [rbp - 0x49], rdx
mov rbx, rdi
mov qword [rbp - 0x41], rbx
vmovups xmm0, xmmword [rbp - 0x49]
vmovdqa xmmword [rbp - 0x49], xmm0
xor r8d, r8d
lea rdx, [rbp - 0x49]
mov rcx, qword [r13 + 0x50]
call fcn.14011ce00
lea rcx, str.vitdec_error:_
mov qword [rbp - 0x39], rcx
mov qword [rbp - 0x31], Ordinal_23
mov qword [rbp - 0x49], rax
vmovups xmm0, xmmword [rbp - 0x49]
vmovdqa xmmword [rbp - 0x19], xmm0
mov qword [rbp - 0x49], 4
lea rax, [rbp - 0x19]
mov qword [rbp - 0x41], rax
vmovups xmm0, xmmword [rbp - 0x49]
vmovdqa xmmword [rbp - 0x49], xmm0
vmovups xmm1, xmmword [rbp - 0x39]
vmovdqa xmmword [rbp - 0x39], xmm1
lea r8, [rbp - 0x49]
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 7]
call fcn.140048a50
nop
lea rdx, [rbp + 7]
lea rcx, str.msc_decoder
call fcn.140111980
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0xf
jbe 0x14011255f
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011255a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14011255a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400fcffc
mov rcx, qword [r13 + 0x58]
movzx eax, word [rcx]
mov word [rcx + 2], ax
test edi, edi
jle 0x1401126c3
mov r9, qword [r13 + 0x58]
movzx r8d, word [r9 + 2]
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx edx, cl
shl dl, 7
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
shl al, 6
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
shl al, 5
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
shl al, 4
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
shl al, 3
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
shl al, 2
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
movzx eax, cl
add al, al
or dl, al
add r8w, r8w
movzx eax, cl
or r8w, ax
movzx ecx, r8w
shr cx, 8
movzx eax, r8b
shr al, 4
xor cl, al
and cl, 1
or dl, cl
add r8w, r8w
movzx eax, cl
or r8w, ax
mov word [r9 + 2], r8w
mov rax, qword [r13 + 0x30]
xor byte [rax + r15], dl
inc r15
cmp r15, rbx
jl 0x140112572
mov eax, edi
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1400fd350
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret