Function at 0x4c5ab7
Capabilities:
Encode data using xor

Disassembly:
endbr64
mov rax, rsp
push rbp
push rbx
push r12
push r13
push r14
push r15
lea rsp, [rsp - 0x48]
mov r10, qword [rsp + 0xa0]
lea rsp, [rsp - 0xa0]
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x50], xmm7
movaps xmmword [rsp + 0x60], xmm8
movaps xmmword [rsp + 0x70], xmm9
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x90], xmm11
movaps xmmword [rsp + 0xa0], xmm12
movaps xmmword [rsp + 0xb0], xmm13
movaps xmmword [rsp + 0xc0], xmm14
movaps xmmword [rsp + 0xd0], xmm15
mov rbp, rsp
movdqu xmm0, xmmword [r10]
mov eax, dword [r9 + 0xf0]
mov r12, rcx
mov r13, rdx
mov r14, r8
mov r15, r9
movdqa xmmword [rbp + 0x20], xmm0
cmp r8, 8
jb 0x4c5de0
mov ebx, eax
shl rax, 7
sub rax, 0x60
sub rsp, rax
mov rax, rsp
mov rcx, r15
mov r10d, ebx
call sym._bsaes_key_convert
pxor xmm7, xmm6
movdqa xmmword [rax], xmm7
movdqa xmm8, xmmword [rsp]
lea r11, [0x004c70f0]
movdqa xmm15, xmmword [rbp + 0x20]
movdqa xmm7, xmmword [r11 - 0x20]
pshufb xmm8, xmm7
pshufb xmm15, xmm7
movdqa xmmword [rsp], xmm8
jmp 0x4c5ba0
movdqa xmmword [rbp + 0x20], xmm15
movdqa xmm0, xmm15
movdqa xmm1, xmm15
paddd xmm0, xmmword [r11]
movdqa xmm2, xmm15
paddd xmm1, xmmword [r11 + 0x10]
movdqa xmm3, xmm15
paddd xmm2, xmmword [r11 + 0x20]
movdqa xmm4, xmm15
paddd xmm3, xmmword [r11 + 0x30]
movdqa xmm5, xmm15
paddd xmm4, xmmword [r11 + 0x40]
movdqa xmm6, xmm15
paddd xmm5, xmmword [r11 + 0x50]
paddd xmm6, xmmword [r11 + 0x60]
movdqa xmm8, xmmword [rsp]
lea rax, [rsp + 0x10]
movdqa xmm7, xmmword [r11 - 0x10]
pxor xmm15, xmm8
pxor xmm0, xmm8
pxor xmm1, xmm8
pxor xmm2, xmm8
pshufb xmm15, xmm7
pshufb xmm0, xmm7
pxor xmm3, xmm8
pxor xmm4, xmm8
pshufb xmm1, xmm7
pshufb xmm2, xmm7
pxor xmm5, xmm8
pxor xmm6, xmm8
pshufb xmm3, xmm7
pshufb xmm4, xmm7
pshufb xmm5, xmm7
pshufb xmm6, xmm7
lea r11, [0x004c7070]
mov r10d, ebx
call fcn.004c42e7
sub r14, 8
jb 0x4c5d30
movdqu xmm7, xmmword [r12]
movdqu xmm8, xmmword [r12 + 0x10]
movdqu xmm9, xmmword [r12 + 0x20]
movdqu xmm10, xmmword [r12 + 0x30]
movdqu xmm11, xmmword [r12 + 0x40]
movdqu xmm12, xmmword [r12 + 0x50]
movdqu xmm13, xmmword [r12 + 0x60]
movdqu xmm14, xmmword [r12 + 0x70]
lea r12, [r12 + 0x80]
pxor xmm7, xmm15
movdqa xmm15, xmmword [rbp + 0x20]
pxor xmm0, xmm8
movdqu xmmword [r13], xmm7
pxor xmm3, xmm9
movdqu xmmword [r13 + 0x10], xmm0
pxor xmm5, xmm10
movdqu xmmword [r13 + 0x20], xmm3
pxor xmm2, xmm11
movdqu xmmword [r13 + 0x30], xmm5
pxor xmm6, xmm12
movdqu xmmword [r13 + 0x40], xmm2
pxor xmm1, xmm13
movdqu xmmword [r13 + 0x50], xmm6
pxor xmm4, xmm14
movdqu xmmword [r13 + 0x60], xmm1
lea r11, [0x004c70f0]
movdqu xmmword [r13 + 0x70], xmm4
lea r13, [r13 + 0x80]
paddd xmm15, xmmword [r11 + 0x70]
jne 0x4c5ba0
jmp 0x4c5e1c
add r14, 8
movdqu xmm7, xmmword [r12]
pxor xmm15, xmm7
movdqu xmmword [r13], xmm15
cmp r14, 2
jb 0x4c5e1c
movdqu xmm8, xmmword [r12 + 0x10]
pxor xmm0, xmm8
movdqu xmmword [r13 + 0x10], xmm0
je 0x4c5e1c
movdqu xmm9, xmmword [r12 + 0x20]
pxor xmm3, xmm9
movdqu xmmword [r13 + 0x20], xmm3
cmp r14, 4
jb 0x4c5e1c
movdqu xmm10, xmmword [r12 + 0x30]
pxor xmm5, xmm10
movdqu xmmword [r13 + 0x30], xmm5
je 0x4c5e1c
movdqu xmm11, xmmword [r12 + 0x40]
pxor xmm2, xmm11
movdqu xmmword [r13 + 0x40], xmm2
cmp r14, 6
jb 0x4c5e1c
movdqu xmm12, xmmword [r12 + 0x50]
pxor xmm6, xmm12
movdqu xmmword [r13 + 0x50], xmm6
je 0x4c5e1c
movdqu xmm13, xmmword [r12 + 0x60]
pxor xmm1, xmm13
movdqu xmmword [r13 + 0x60], xmm1
jmp 0x4c5e1c
lea rcx, [rbp + 0x20]
lea rdx, [rbp + 0x30]
lea r8, [r15]
call sym.AES_encrypt
movdqu xmm0, xmmword [r12]
lea r12, [r12 + 0x10]
mov eax, dword [rbp + 0x2c]
bswap eax
pxor xmm0, xmmword [rbp + 0x30]
inc eax
movdqu xmmword [r13], xmm0
bswap eax
lea r13, [r13 + 0x10]
mov dword [rsp + 0x2c], eax
dec r14
jne 0x4c5de0
lea rax, [rsp]
pxor xmm0, xmm0
movdqa xmmword [rax], xmm0
movdqa xmmword [rax + 0x10], xmm0
lea rax, [rax + 0x20]
cmp rbp, rax
ja 0x4c5e24
lea rax, [rbp + 0x78]
movaps xmm6, xmmword [rbp + 0x40]
movaps xmm7, xmmword [rbp + 0x50]
movaps xmm8, xmmword [rbp + 0x60]
movaps xmm9, xmmword [rbp + 0x70]
movaps xmm10, xmmword [rbp + 0x80]
movaps xmm11, xmmword [rbp + 0x90]
movaps xmm12, xmmword [rbp + 0xa0]
movaps xmm13, xmmword [rbp + 0xb0]
movaps xmm14, xmmword [rbp + 0xc0]
movaps xmm15, xmmword [rbp + 0xd0]
lea rax, [rax + 0xa0]
mov r15, qword [rax - 0x30]
mov r14, qword [rax - 0x28]
mov r13, qword [rax - 0x20]
mov r12, qword [rax - 0x18]
mov rbx, qword [rax - 0x10]
mov rbp, qword [rax - 8]
lea rsp, [rax]
repz ret