Function at 0x22da010d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov rbp, rsp
push r15
push r14
push r13
mov r13, rcx
push r12
push rdi
push rsi
push rbx
sub rsp, 0x70
and rsp, 0xfffffffffffffff0
sub rsp, 0x120
mov r12d, dword [rcx + 0x14]
mov esi, dword [rcx + 0x10]
movups xmmword [rsp + 0x120], xmm6
mov ebx, dword [rcx + 0xc]
mov ecx, dword [rcx + 8]
lea r9, [rsp + 0x120]
movups xmmword [rsp + 0x130], xmm7
mov edi, dword [r13 + 0x1c]
movdqu xmm0, xmmword [0x22da107a0]
movups xmmword [rsp + 0x140], xmm8
mov r11d, dword [r13 + 0x20]
mov r8d, dword [r13 + 0x18]
movups xmmword [rsp + 0x150], xmm9
movdqu xmm1, xmm0
movdqu xmm6, xmm0
mov eax, dword [r13 + 0x24]
movups xmmword [rsp + 0x160], xmm10
movups xmmword [rsp + 0x170], xmm11
movups xmmword [rsp + 0x180], xmm12
movdqu xmm2, xmmword [rdx]
movdqu xmm4, xmmword [rdx + 0x10]
movdqu xmm3, xmmword [rdx + 0x20]
movdqu xmm5, xmmword [rdx + 0x30]
lea rdx, [rsp + 0x60]
pand xmm6, xmm4
psrlw xmm4, 8
pand xmm1, xmm2
psrlw xmm2, 8
packuswb xmm1, xmm6
movdqu xmm6, xmm0
packuswb xmm2, xmm4
movdqu xmm4, xmm0
pand xmm6, xmm5
pand xmm4, xmm3
psrlw xmm5, 8
psrlw xmm3, 8
packuswb xmm4, xmm6
movdqu xmm6, xmm0
packuswb xmm3, xmm5
movdqu xmm5, xmm0
pand xmm6, xmm4
pand xmm5, xmm1
psrlw xmm4, 8
psrlw xmm1, 8
packuswb xmm5, xmm6
packuswb xmm1, xmm4
movdqu xmm4, xmm0
pand xmm0, xmm3
pand xmm4, xmm2
psrlw xmm3, 8
movdqu xmm10, xmm5
psrlw xmm2, 8
packuswb xmm4, xmm0
pxor xmm0, xmm0
packuswb xmm2, xmm3
punpckhbw xmm5, xmm0
movdqu xmm6, xmm4
movdqu xmm7, xmm1
punpckhbw xmm4, xmm0
movdqu xmm9, xmm2
pxor xmm3, xmm3
punpcklbw xmm10, xmm0
punpcklbw xmm6, xmm0
punpcklbw xmm9, xmm0
punpckhbw xmm2, xmm0
punpcklbw xmm7, xmm0
punpckhbw xmm1, xmm0
movdqu xmm8, xmm5
movdqu xmm0, xmm4
punpckhwd xmm0, xmm3
punpckhwd xmm8, xmm3
movdqu xmm12, xmm9
psllw xmm1, 8
pslld xmm8, 0x18
punpcklwd xmm4, xmm3
pslld xmm0, 0x10
movdqu xmm11, xmm1
punpcklwd xmm5, xmm3
por xmm0, xmm8
movdqu xmm8, xmm2
punpckhwd xmm11, xmm3
punpckhwd xmm8, xmm3
psllw xmm7, 8
punpcklwd xmm12, xmm3
por xmm8, xmm11
movdqu xmm11, xmm10
punpckhwd xmm10, xmm3
por xmm0, xmm8
movdqu xmm8, xmm6
punpcklwd xmm11, xmm3
punpcklwd xmm8, xmm3
pslld xmm11, 0x18
punpckhwd xmm6, xmm3
pslld xmm8, 0x10
pslld xmm6, 0x10
punpckhwd xmm9, xmm3
por xmm8, xmm11
movdqu xmm11, xmm7
punpcklwd xmm2, xmm3
punpcklwd xmm11, xmm3
pslld xmm10, 0x18
punpckhwd xmm7, xmm3
pslld xmm4, 0x10
pslld xmm5, 0x18
punpcklwd xmm1, xmm3
por xmm11, xmm12
por xmm6, xmm10
por xmm7, xmm9
por xmm4, xmm5
por xmm1, xmm2
por xmm8, xmm11
por xmm6, xmm7
por xmm1, xmm4
movups xmmword [rsp + 0x20], xmm8
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm1
movups xmmword [rsp + 0x50], xmm0
psrldq xmm0, 8
nop dword [rax + rax]
movq xmm2, qword [rdx - 0x3c]
add rdx, 8
movdqu xmm1, xmm2
movdqu xmm3, xmm2
movdqu xmm4, xmm2
psrld xmm3, 0x12
pslld xmm1, 0xe
por xmm1, xmm3
psrld xmm4, 7
movdqu xmm3, xmm2
pslld xmm3, 0x19
psrld xmm2, 3
por xmm3, xmm4
movdqu xmm4, xmm0
pxor xmm1, xmm3
psrld xmm4, 0x11
movdqu xmm3, xmm0
pxor xmm1, xmm2
psrld xmm3, 0x13
movdqu xmm2, xmm0
pslld xmm2, 0xd
por xmm2, xmm3
movdqu xmm3, xmm0
pslld xmm3, 0xf
psrld xmm0, 0xa
por xmm3, xmm4
pxor xmm2, xmm3
pxor xmm2, xmm0
movq xmm0, qword [rdx - 0x24]
paddd xmm1, xmm2
movq xmm2, qword [rdx - 0x48]
paddd xmm0, xmm2
paddd xmm0, xmm1
movq qword [rdx - 8], xmm0
cmp rdx, r9
jne 0x22da01330
mov qword [rbp + 0x10], r13
xor r10d, r10d
lea r14, [rsp + 0x20]
mov r13d, eax
lea r15, [0x22da13080]
jmp 0x22da013ff
mov esi, ebx
mov r11d, edi
mov ebx, ecx
mov edi, r8d
mov ecx, eax
mov r8d, r9d
mov eax, r8d
mov edx, r8d
mov r9d, ecx
ror edx, 0xb
ror eax, 6
xor eax, edx
mov edx, r8d
ror r9d, 0xd
rol edx, 7
xor eax, edx
mov edx, dword [r14 + r10]
add edx, dword [r15 + r10]
add r10, 4
add eax, edx
mov edx, r11d
xor edx, edi
and edx, r8d
xor edx, r11d
add eax, edx
mov edx, ecx
ror edx, 2
add eax, r13d
mov r13d, ecx
xor edx, r9d
mov r9d, ecx
and r13d, ebx
rol r9d, 0xa
xor edx, r9d
mov r9d, ecx
or r9d, ebx
and r9d, esi
or r9d, r13d
mov r13d, r11d
add edx, r9d
lea r9d, [rax + r12]
mov r12d, esi
add eax, edx
cmp r10, 0x100
jne 0x22da013f0
mov r13, qword [rbp + 0x10]
mov dword [rsp + 4], ecx
mov dword [rsp], eax
movdqu xmm0, xmmword [r13 + 8]
mov dword [rsp + 0xc], esi
mov dword [rsp + 8], ebx
paddd xmm0, xmmword [rsp]
mov dword [rsp + 0x18], edi
movups xmmword [r13 + 8], xmm0
movdqu xmm0, xmmword [r13 + 0x18]
mov dword [rsp + 0x1c], r11d
mov dword [rsp + 0x14], r8d
mov dword [rsp + 0x10], r9d
paddd xmm0, xmmword [rsp + 0x10]
movups xmmword [r13 + 0x18], xmm0
movups xmm6, xmmword [rsp + 0x120]
movups xmm7, xmmword [rsp + 0x130]
movups xmm8, xmmword [rsp + 0x140]
movups xmm9, xmmword [rsp + 0x150]
movups xmm10, xmmword [rsp + 0x160]
movups xmm11, xmmword [rsp + 0x170]
movups xmm12, xmmword [rsp + 0x180]
lea rsp, [rbp - 0x38]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret