Function at 0x4133e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rbp, qword [rsp + 0xb8]
mov r13d, dword [rsp + 0xc8]
cmp rbp, 0x40
mov qword [rsp + 0x98], rdx
mov r15, r8
mov r14, r9
seta dl
mov qword [rsp + 0x90], rcx
cmp qword [rsp + 0x98], 0x100
seta al
or dl, al
jne 0x413439
cmp r9, 0x100
jbe 0x41344f
mov eax, 1
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea ecx, [r13 + 0xd]
mov ebx, 1
mov rax, rbx
mov rsi, rbx
shl rax, cl
mov rcx, rax
mov qword [rsp + 0x38], rax
call sub.msvcrt.dll_malloc
lea ecx, [r13 + 8]
shl rsi, cl
mov r12, rax
lea ecx, [r13 + 9]
sub rsi, 1
shl rbx, cl
mov qword [rsp + 0x30], rbx
sub rbx, 1
test r14, r14
je 0x41349f
mov r8, r14
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
test rbp, rbp
je 0x4134b8
mov rdx, qword [rsp + 0xb0]
lea rcx, [r12 + r14]
mov r8, rbp
call sub.msvcrt.dll_memcpy
lea rdx, [r14 + rbp]
mov eax, 0x180
sub rax, rdx
add rdx, r12
mov ecx, eax
mov rdi, rdx
mov qword [rdx + rcx - 8], 0
lea ecx, [rax - 1]
xor eax, eax
shr ecx, 3
rep stosq qword [rdi], rax
mov byte [r12 + 0x182], bpl
mov word [r12 + 0x180], r14w
mov byte [r12 + 0x19d], 0x2f
mov r11, qword [rsp + 0x30]
movzx eax, word [rsp + 0x98]
mov byte [r12 + 0x19e], 0xf1
mov byte [r12 + 0x19f], 0x20
mov word [r12 + 0x183], ax
movabs rax, 0x503020101000000
mov qword [r12 + 0x185], rax
movabs rax, 0xe990593722150d08
mov qword [r12 + 0x18d], rax
movabs rax, 0xc26d55183ddb6279
mov qword [r12 + 0x195], rax
cmp r11, 0x1a
jbe 0x41363f
mov eax, 0x1a
nop word [rax + rax]
lea rdx, [rax - 0x1a]
mov r10, rbx
lea rcx, [rax - 0xe]
and r10, rax
and rdx, rbx
lea r9, [rax - 6]
shl r10, 4
and rcx, rbx
lea r8, [rax - 4]
and r9, rbx
shl rdx, 4
and r8, rbx
shl rcx, 4
add rax, 2
shl r9, 4
shl r8, 4
lea rdi, [r12 + r10]
movdqu xmm0, xmmword [r12 + r9]
pxor xmm0, xmmword [r12 + r8]
paddq xmm0, xmmword [r12 + rcx]
pxor xmm0, xmmword [r12 + rdx]
movups xmmword [rdi], xmm0
movdqu xmm2, xmm0
movdqu xmm1, xmmword [r12 + r9 + 0x10]
pxor xmm1, xmmword [r12 + r8 + 0x10]
paddq xmm1, xmmword [r12 + rcx + 0x10]
pslldq xmm2, 8
pxor xmm1, xmmword [r12 + rdx + 0x10]
movdqu xmm3, xmm1
psrldq xmm0, 8
psrldq xmm3, 8
pslldq xmm1, 8
pxor xmm2, xmm3
movdqu xmm3, xmm2
pxor xmm0, xmm1
movdqu xmm1, xmm0
psrlq xmm3, 0x2f
psllq xmm2, 0x11
psrlq xmm1, 0x2f
pxor xmm2, xmm3
movups xmmword [rdi], xmm2
psllq xmm0, 0x11
pxor xmm0, xmm1
movups xmmword [r12 + r10 + 0x10], xmm0
cmp r11, rax
ja 0x413570
add r13d, dword [rsp + 0xc0]
mov eax, 1
lea ecx, [r13 + 8]
mov dword [rsp + 0x28], r13d
shl rax, cl
mov qword [rsp + 0x20], rax
test rax, rax
je 0x413b8f
mov r13d, 0x40
mov eax, 0x75bcd15
xor r15d, r15d
movabs r14, 0x2b992ddfa23249d6
nop
mov rbp, rax
mov rcx, r15
shr rbp, 0x10
and rbp, rsi
add rbp, rbp
lea r9, [rcx - 0x1a]
mov r8, rbx
add rbp, 2
lea r10, [rcx - 0xe]
and r8, rcx
and r9, rbx
lea r11, [rcx - 6]
shl r8, 4
and r10, rbx
lea rdi, [rcx - 4]
and r11, rbx
shl r9, 4
and rdi, rbx
shl r10, 4
and rbp, rbx
lea rdx, [r12 + r8]
shl r11, 4
lea r8, [r12 + r8 + 0x10]
shl rdi, 4
movdqu xmm0, xmmword [r12 + rdi]
pxor xmm0, xmmword [r12 + r11]
paddq xmm0, xmmword [r12 + r10]
pxor xmm0, xmmword [r12 + r9]
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm1, xmmword [rdx]
movdqu xmm0, xmmword [r12 + rdi + 0x10]
pxor xmm0, xmmword [r12 + r11 + 0x10]
paddq xmm0, xmmword [r12 + r10 + 0x10]
mov r10, rax
pxor xmm0, xmmword [r12 + r9 + 0x10]
mov r9, rcx
movdqu xmm3, xmm1
add rcx, 2
paddq xmm0, xmmword [r8]
and r10d, 0x1fff
shr r9, 1
lea r9, [r10 + r9 - 0x1000]
pslldq xmm3, 8
movdqu xmm2, xmm0
psrldq xmm1, 8
and r9, rsi
psrldq xmm2, 8
lea rax, [rax + rax*4]
shl r9, 5
pslldq xmm0, 8
pxor xmm2, xmm3
movdqu xmm3, xmm2
rol rax, 0x13
pxor xmm0, xmm1
lea r10, [r12 + r9]
movdqu xmm1, xmm0
xor rax, r14
psrlq xmm3, 0x2f
lea r9, [r12 + r9 + 0x10]
psllq xmm2, 0x11
psrlq xmm1, 0x2f
pxor xmm2, xmm3
movups xmmword [rdx], xmm2
psllq xmm0, 0x11
pxor xmm0, xmm1
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [r10]
psllq xmm0, 1
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm0, xmmword [r9]
psllq xmm0, 1
paddq xmm0, xmmword [r8]
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [rdx]
psllq xmm0, 2
paddq xmm0, xmmword [r10]
movups xmmword [r10], xmm0
movdqu xmm0, xmmword [r8]
psllq xmm0, 2
paddq xmm0, xmmword [r9]
movups xmmword [r9], xmm0
mov r9, rbp
shl r9, 4
lea r10, [r12 + r9]
movdqu xmm0, xmmword [r10]
lea r9, [r12 + r9 + 0x10]
psllq xmm0, 1
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm0, xmmword [r9]
psllq xmm0, 1
paddq xmm0, xmmword [r8]
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [rdx]
psllq xmm0, 3
paddq xmm0, xmmword [r10]
movups xmmword [r10], xmm0
movdqu xmm0, xmmword [r8]
psllq xmm0, 3
paddq xmm0, xmmword [r9]
movups xmmword [r9], xmm0
cmp rcx, r13
jne 0x413690
add r15, 0x40
add r13, 0x40
cmp qword [rsp + 0x20], r15
ja 0x413680
mov ecx, dword [rsp + 0x28]
mov edx, 1
add ecx, 9
shl rdx, cl
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x28], rdx
cmp rdx, rcx
jbe 0x413a62
lea r14, [rcx + 0x40]
mov r13, r14
nop word [rax + rax]
mov rbp, rax
shr rbp, 0x10
and rbp, rsi
add rbp, rbp
nop dword [rax]
lea r10, [rcx - 0xe]
mov r8, rbx
and eax, 0x1fff
lea r9, [rcx - 0x1a]
and r8, rcx
and r10, rbx
lea rdi, [rcx - 6]
shl r10, 4
and r9, rbx
lea r15, [rcx - 4]
shl r8, 4
and rdi, rbx
and r15, rbx
shl r9, 4
add rbp, 2
lea rdx, [r12 + r8]
shl rdi, 4
and rbp, rbx
lea r11, [r12 + r10]
shl r15, 4
movdqu xmm0, xmmword [r12 + r15]
pxor xmm0, xmmword [r12 + rdi]
paddq xmm0, xmmword [r11]
pxor xmm0, xmmword [r12 + r9]
lea r8, [r12 + r8 + 0x10]
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm1, xmmword [rdx]
movdqu xmm0, xmmword [r12 + r15 + 0x10]
pxor xmm0, xmmword [r12 + rdi + 0x10]
paddq xmm0, xmmword [r12 + r10 + 0x10]
pxor xmm0, xmmword [r12 + r9 + 0x10]
mov r9, rcx
paddq xmm0, xmmword [r8]
movdqu xmm3, xmm1
shr r9, 1
pslldq xmm3, 8
add rcx, 2
movdqu xmm2, xmm0
psrldq xmm1, 8
lea rax, [rax + r9 - 0x1000]
psrldq xmm2, 8
pslldq xmm0, 8
and rax, rsi
pxor xmm2, xmm3
movdqu xmm3, xmm2
shl rax, 5
pxor xmm0, xmm1
movdqu xmm1, xmm0
lea r9, [r12 + rax]
psrlq xmm3, 0x2f
psllq xmm2, 0x11
lea rax, [r12 + rax + 0x10]
psrlq xmm1, 0x2f
pxor xmm2, xmm3
movups xmmword [rdx], xmm2
psllq xmm0, 0x11
pxor xmm0, xmm1
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [r9]
psllq xmm0, 1
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm0, xmmword [rax]
psllq xmm0, 1
paddq xmm0, xmmword [r8]
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [rdx]
psllq xmm0, 2
paddq xmm0, xmmword [r9]
movups xmmword [r9], xmm0
movdqu xmm0, xmmword [r8]
psllq xmm0, 2
paddq xmm0, xmmword [rax]
movups xmmword [rax], xmm0
mov rax, rbp
shl rax, 4
lea r9, [r12 + rax]
movdqu xmm0, xmmword [r9]
lea rax, [r12 + rax + 0x10]
psllq xmm0, 1
paddq xmm0, xmmword [rdx]
movups xmmword [rdx], xmm0
movdqu xmm0, xmmword [rax]
psllq xmm0, 1
paddq xmm0, xmmword [r8]
movups xmmword [r8], xmm0
movdqu xmm0, xmmword [rdx]
psllq xmm0, 3
paddq xmm0, xmmword [r9]
movups xmmword [r9], xmm0
movdqu xmm0, xmmword [r8]
psllq xmm0, 3
paddq xmm0, xmmword [rax]
movups xmmword [rax], xmm0
mov rax, qword [r11]
cmp rcx, r13
jne 0x4138a0
mov rcx, r14
add r13, 0x40
cmp qword [rsp + 0x28], r14
jbe 0x413a62
add r14, 0x40
jmp 0x413890
mov rsi, qword [rsp + 0x30]
test rsi, rsi
je 0x413b5b
xor eax, eax
nop word [rax + rax]
lea rdx, [rax - 0x1a]
mov r11, rbx
lea rcx, [rax - 0xe]
and r11, rax
and rdx, rbx
lea r8, [rax - 6]
shl r11, 4
and rcx, rbx
lea r9, [rax - 4]
and r8, rbx
shl rdx, 4
and r9, rbx
shl rcx, 4
add rax, 2
lea r10, [r12 + r11]
shl r8, 4
lea r11, [r12 + r11 + 0x10]
shl r9, 4
movdqu xmm0, xmmword [r12 + r9]
pxor xmm0, xmmword [r12 + r8]
paddq xmm0, xmmword [r12 + rcx]
pxor xmm0, xmmword [r12 + rdx]
paddq xmm0, xmmword [r10]
movups xmmword [r10], xmm0
movdqu xmm1, xmmword [r10]
movdqu xmm0, xmmword [r12 + r9 + 0x10]
pxor xmm0, xmmword [r12 + r8 + 0x10]
paddq xmm0, xmmword [r12 + rcx + 0x10]
pxor xmm0, xmmword [r12 + rdx + 0x10]
paddq xmm0, xmmword [r11]
movdqu xmm3, xmm1
pslldq xmm3, 8
movdqu xmm2, xmm0
psrldq xmm1, 8
psrldq xmm2, 8
pslldq xmm0, 8
pxor xmm2, xmm3
movdqu xmm3, xmm2
pxor xmm0, xmm1
movdqu xmm1, xmm0
psrlq xmm3, 0x2f
psllq xmm2, 0x11
psrlq xmm1, 0x2f
pxor xmm2, xmm3
movups xmmword [r10], xmm2
psllq xmm0, 0x11
pxor xmm0, xmm1
movups xmmword [r11], xmm0
cmp rsi, rax
ja 0x413a78
mov rdx, qword [rsp + 0x38]
sub rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
add rdx, r12
call sub.msvcrt.dll_memcpy
mov rcx, r12
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x41343e
mov eax, 0x75bcd15
jmp 0x41385e