Function at 0x180040230
Capabilities:
Encode data using xor

Disassembly:
movdqa xmm0, xmm8
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x19
pslld xmm1, 7
pxor xmm1, xmm4
pxor xmm1, xmm0
pshufd xmm7, xmm1, 0x93
movdqa xmm0, xmm1
paddd xmm0, xmm3
movdqa xmm4, xmm0
psrld xmm0, 0x17
pslld xmm4, 9
pxor xmm4, xmm9
pxor xmm4, xmm0
movdqa xmm0, xmm4
pshufd xmm5, xmm4, 0x4e
paddd xmm0, xmm1
movdqa xmm1, xmm7
movdqa xmm2, xmm0
psrld xmm0, 0x13
pslld xmm2, 0xd
pxor xmm2, xmm8
pxor xmm2, xmm0
movdqa xmm0, xmm4
paddd xmm0, xmm2
movdqa xmm6, xmm0
psrld xmm0, 0xe
pslld xmm6, 0x12
pxor xmm6, xmm3
pshufd xmm3, xmm2, 0x39
pxor xmm6, xmm0
paddd xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm1, 0x19
pslld xmm0, 7
pxor xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm1, xmm3
pshufd xmm8, xmm3, 0x93
paddd xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm1, 0x17
pslld xmm0, 9
pxor xmm5, xmm0
pxor xmm5, xmm1
movdqa xmm1, xmm8
movdqa xmm0, xmm5
pshufd xmm4, xmm5, 0x4e
paddd xmm0, xmm3
movdqa xmm2, xmm0
psrld xmm0, 0x13
rcl byte [rbx]
pslld xmm2, 0xd
pxor xmm2, xmm7
pxor xmm2, xmm0
movdqa xmm0, xmm2
pshufd xmm3, xmm2, 0x39
paddd xmm0, xmm5
movdqa xmm7, xmm0
psrld xmm0, 0xe
pslld xmm7, 0x12
pxor xmm3, xmm0
sub rax, 1
jne 0x180040010
mov eax, dword [r11]
paddd xmm4, xmm13
paddd xmm3, xmm10
movd r10d, xmm4
pshufd xmm0, xmm3, 0x39
paddd xmm9, xmm12
pshufd xmm6, xmm0, 0x39
paddd xmm8, xmm11
xor r10d, dword [r11 + 0x10]
movd ecx, xmm3
pshufd xmm1, xmm8, 0x39
pshufd xmm3, xmm4, 0x39
xor eax, ecx
pshufd xmm4, xmm1, 0x39
movd ecx, xmm0
pshufd xmm2, xmm9, 0x39
pshufd xmm5, xmm2, 0x39
pshufd xmm0, xmm4, 0x39
movd r9d, xmm9
movd edx, xmm8
xor r9d, dword [r11 + 0x20]
xor edx, dword [r11 + 0x30]
mov dword [r8 + 0x20], r9d
mov dword [r8 + 0x30], edx
mov dword [r8], eax
mov dword [r8 + 0x10], r10d
mov eax, dword [r11 + 0x14]
xor eax, ecx
movd edx, xmm1
pshufd xmm1, xmm3, 0x39
movd r9d, xmm2
xor edx, dword [r11 + 4]
movd r10d, xmm3
xor r9d, dword [r11 + 0x34]
movd ecx, xmm1
xor r10d, dword [r11 + 0x24]
mov dword [r8 + 0x34], r9d
mov dword [r8 + 0x14], eax
mov dword [r8 + 4], edx
mov dword [r8 + 0x24], r10d
xor ecx, dword [r11 + 0x38]
movd r9d, xmm4
movd edx, xmm5
movd eax, xmm6
xor r9d, dword [r11 + 0x18]
xor edx, dword [r11 + 8]
xor eax, dword [r11 + 0x28]
mov dword [r8 + 0x38], ecx
mov dword [r8 + 0x18], r9d
mov dword [r8 + 8], edx
mov dword [r8 + 0x28], eax
movd r9d, xmm0
pshufd xmm0, xmm5, 0x39
movd edx, xmm0
xor r9d, dword [r11 + 0x2c]
pshufd xmm0, xmm1, 0x39
xor edx, dword [r11 + 0x1c]
movd ecx, xmm0
pshufd xmm0, xmm6, 0x39
movd eax, xmm0
jle 0x180040301
xor ecx, dword [r11 + 0xc]
xor eax, dword [r11 + 0x3c]
mov dword [r8 + 0xc], ecx
mov dword [r8 + 0x3c], eax
mov dword [r8 + 0x2c], r9d
mov dword [r8 + 0x1c], edx
mov ecx, dword [rbx + 0x20]
mov eax, dword [rbx + 0x34]
add ecx, 1
jne 0x180040366
inc eax
add r8, 0x40
mov dword [rbx + 0x20], ecx
add r11, 0x40
mov dword [rbx + 0x34], eax
sub rdi, 1
jne 0x18003ffe0
test r15, r15
je 0x18004076a
movdqu xmm10, xmmword [rbx]
movdqu xmm11, xmmword [rbx + 0x10]
movdqu xmm12, xmmword [rbx + 0x20]
movdqu xmm13, xmmword [rbx + 0x30]
movdqa xmm3, xmm10
movdqa xmm8, xmm11
movdqa xmm9, xmm12
movdqa xmm5, xmm13
movdqa xmm0, xmm8
paddd xmm0, xmm3
movdqa xmm1, xmm0
psrld xmm0, 0x19
pslld xmm1, 7
pxor xmm1, xmm5
pxor xmm1, xmm0
pshufd xmm7, xmm1, 0x93
movdqa xmm0, xmm1
paddd xmm0, xmm3
movdqa xmm5, xmm0
psrld xmm0, 0x17
pslld xmm5, 9
invalid
invalid
invalid