Function at 0x51a550
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
sub rsp, 0x698
movups xmmword [rsp + 0x5f0], xmm6
movups xmmword [rsp + 0x600], xmm7
movups xmmword [rsp + 0x610], xmm8
movups xmmword [rsp + 0x620], xmm9
movups xmmword [rsp + 0x630], xmm10
movups xmmword [rsp + 0x640], xmm11
movups xmmword [rsp + 0x650], xmm12
movups xmmword [rsp + 0x660], xmm13
movups xmmword [rsp + 0x670], xmm14
movups xmmword [rsp + 0x680], xmm15
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
lea rax, [rsp + 0x100]
pshuflw xmm1, xmm0, 0x1b
movdqu xmm0, xmmword [rcx + 0x10]
pshufhw xmm1, xmm1, 0x1b
movdqu xmm2, xmm1
movups xmmword [rsp + 0xf0], xmm1
movdqu xmm1, xmm0
psrlw xmm1, 8
psllw xmm0, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x100], xmm0
movdqu xmm0, xmmword [rcx + 0x20]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x110], xmm0
movdqu xmm0, xmmword [rcx + 0x30]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x120], xmm0
movdqu xmm0, xmmword [rcx + 0x40]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x130], xmm0
movdqu xmm0, xmmword [rcx + 0x50]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x140], xmm0
movdqu xmm0, xmmword [rcx + 0x60]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x150], xmm0
movdqu xmm0, xmmword [rcx + 0x70]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x160], xmm0
movdqu xmm0, xmmword [rcx + 0x80]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x170], xmm0
movdqu xmm0, xmmword [rcx + 0x90]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x180], xmm0
movdqu xmm0, xmmword [rcx + 0xa0]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x190], xmm0
movdqu xmm0, xmmword [rcx + 0xb0]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x1a0], xmm0
movdqu xmm0, xmmword [rcx + 0xc0]
movdqu xmm1, xmm0
psllw xmm0, 8
psrlw xmm1, 8
por xmm0, xmm1
movdqu xmm1, xmmword [rcx + 0xd0]
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
movups xmmword [rsp + 0x1b0], xmm0
movdqu xmm0, xmm1
psllw xmm1, 8
psrlw xmm0, 8
por xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
movups xmmword [rsp + 0x1c0], xmm1
movdqu xmm1, xmmword [rcx + 0xe0]
movdqu xmm0, xmm1
psllw xmm1, 8
psrlw xmm0, 8
por xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
movdqu xmm0, xmm1
movups xmmword [rsp + 0x1d0], xmm1
movdqu xmm1, xmmword [rcx + 0xf0]
mov ecx, 0x10
movdqu xmm3, xmm1
psllw xmm1, 8
psrlw xmm3, 8
por xmm1, xmm3
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
movdqu xmm3, xmm1
movups xmmword [rsp + 0x1e0], xmm1
movdqu xmm5, xmmword [rax]
movdqu xmm10, xmm0
movdqu xmm4, xmm0
add ecx, 2
movdqu xmm12, xmm0
movdqu xmm11, xmm0
movdqu xmm7, xmm0
add rax, 0x20
movdqu xmm0, xmm5
movdqu xmm1, xmm5
movdqu xmm9, xmm5
movdqu xmm6, xmm5
psllq xmm12, 3
movdqu xmm8, xmm5
psllq xmm11, 0x2d
psrlq xmm1, 8
psllq xmm9, 0x3f
psrlq xmm4, 0x3d
psrlq xmm7, 0x13
psllq xmm0, 0x38
por xmm4, xmm12
psrlq xmm6, 1
por xmm7, xmm11
por xmm0, xmm1
por xmm6, xmm9
psrlq xmm10, 6
pxor xmm4, xmm7
psrlq xmm8, 7
pxor xmm0, xmm6
pxor xmm4, xmm10
pxor xmm0, xmm8
movdqu xmm6, xmm3
movdqu xmm9, xmm3
paddq xmm4, xmm0
movdqu xmm0, xmmword [rax + 0x60]
movdqu xmm8, xmm3
psllq xmm6, 3
psrlq xmm9, 0x3d
paddq xmm0, xmm2
movdqu xmm2, xmmword [rax - 0x10]
por xmm6, xmm9
paddq xmm0, xmm4
psrlq xmm8, 6
movdqu xmm4, xmm3
movdqu xmm7, xmm2
movdqu xmm11, xmm2
movdqu xmm1, xmm2
movups xmmword [rax + 0xd0], xmm0
movdqu xmm12, xmm2
psllq xmm4, 0x2d
movdqu xmm10, xmm2
psrlq xmm3, 0x13
psllq xmm7, 0x38
psrlq xmm11, 8
psllq xmm1, 0x3f
por xmm3, xmm4
psrlq xmm12, 1
por xmm7, xmm11
pxor xmm3, xmm6
por xmm1, xmm12
psrlq xmm10, 7
pxor xmm3, xmm8
pxor xmm1, xmm7
pxor xmm1, xmm10
paddq xmm1, xmm3
movdqu xmm3, xmmword [rax + 0x70]
paddq xmm3, xmm5
paddq xmm3, xmm1
movups xmmword [rax + 0xe0], xmm3
cmp ecx, 0x4e
jne 0x51a86f
movdqu xmm1, xmmword [rsp + 0x5b0]
movdqu xmm12, xmmword [rdx + 0x20]
lea rax, [rsp + 0xf0]
lea rcx, [0x00621340]
movdqu xmm15, xmmword [rdx + 0x40]
movdqu xmm14, xmmword [rdx + 0x50]
lea r8, [rsp + 0x5f0]
movdqu xmm6, xmm1
movdqu xmm4, xmm1
movdqu xmm7, xmm1
movdqu xmm11, xmmword [rdx + 0x60]
movdqu xmm2, xmm1
movdqu xmm3, xmm1
movdqu xmm13, xmmword [rdx + 0x70]
movdqu xmm1, xmmword [rsp + 0x4e0]
psllq xmm4, 3
psrlq xmm3, 0x13
movups xmmword [rsp + 0x90], xmm15
movdqu xmm5, xmm1
movdqu xmm9, xmm1
movdqu xmm0, xmm1
movups xmmword [rsp + 0xa0], xmm14
movdqu xmm10, xmm1
psllq xmm2, 0x2d
movdqu xmm8, xmm1
movups xmmword [rsp + 0xb0], xmm11
psrlq xmm7, 0x3d
psrlq xmm9, 8
por xmm2, xmm3
movups xmmword [rsp + 0xc0], xmm13
psrlq xmm10, 1
psllq xmm5, 0x38
movdqu xmm3, xmm4
movdqu xmm4, xmmword [rsp + 0x4f0]
psllq xmm0, 0x3f
por xmm5, xmm9
por xmm3, xmm7
movups xmmword [rsp + 0xe0], xmm12
por xmm0, xmm10
psrlq xmm6, 6
pxor xmm2, xmm3
movdqu xmm3, xmmword [rsp + 0x5c0]
psrlq xmm8, 7
pxor xmm0, xmm5
pxor xmm2, xmm6
pxor xmm0, xmm8
movdqu xmm5, xmm3
movdqu xmm6, xmm3
paddq xmm0, xmm2
movdqu xmm2, xmm3
movdqu xmm8, xmm3
movdqu xmm7, xmm4
psrlq xmm3, 0x13
movdqu xmm10, xmm4
psllq xmm5, 3
psllq xmm2, 0x2d
paddq xmm0, xmmword [rsp + 0x560]
psrlq xmm8, 0x3d
movdqu xmm9, xmm4
por xmm2, xmm3
psrlq xmm10, 8
psllq xmm7, 0x38
movdqu xmm3, xmm5
por xmm7, xmm10
psrlq xmm6, 6
paddq xmm0, xmmword [rsp + 0x4d0]
movdqu xmm10, xmmword [rdx + 0x10]
por xmm3, xmm8
psrlq xmm9, 7
paddq xmm1, xmmword [rsp + 0x570]
movups xmmword [rsp + 0x5d0], xmm0
movdqu xmm0, xmm4
psrlq xmm4, 1
pxor xmm2, xmm3
psllq xmm0, 0x3f
pxor xmm2, xmm6
movdqu xmm3, xmmword [rdx + 0x30]
movups xmmword [rsp + 0xd0], xmm10
por xmm0, xmm4
movdqu xmm8, xmm12
pxor xmm0, xmm7
movdqu xmm7, xmm10
movups xmmword [rsp + 0x80], xmm3
pxor xmm0, xmm9
pxor xmm7, xmm12
movdqu xmm9, xmm3
paddq xmm0, xmm2
movups xmmword [rsp], xmm7
paddq xmm0, xmm1
movups xmmword [rsp + 0x5e0], xmm0
movdqu xmm0, xmmword [rdx]
movups xmmword [rsp + 0x70], xmm0
movdqu xmm7, xmm0
nop word [rax + rax]
movdqu xmm1, xmm15
movdqu xmm6, xmm15
movdqu xmm12, xmm15
sub rax, 0xffffffffffffff80
psrlq xmm1, 0x29
psllq xmm6, 0x2e
movdqu xmm5, xmm15
add rcx, 0x40
movups xmmword [rsp + 0x20], xmm1
movdqu xmm1, xmm7
movdqu xmm3, xmm15
movdqu xmm2, xmm15
pxor xmm1, xmm10
movups xmmword [rsp + 0x30], xmm6
psllq xmm12, 0x17
movdqu xmm0, xmm7
movups xmmword [rsp + 0x10], xmm1
movdqu xmm1, xmmword [rsp + 0x20]
psllq xmm3, 0x32
psrlq xmm5, 0x12
por xmm5, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x40], xmm3
psrlq xmm2, 0xe
por xmm2, xmmword [rsp + 0x40]
por xmm1, xmm12
movdqu xmm4, xmm7
movdqu xmm6, xmm7
pxor xmm1, xmm5
psllq xmm0, 0x19
movdqu xmm3, xmm7
pxor xmm1, xmm2
psllq xmm4, 0x1e
movups xmmword [rsp + 0x50], xmm0
movq xmm2, qword [rcx - 0x40]
paddq xmm1, xmm13
movdqu xmm13, xmm14
movups xmmword [rsp + 0x60], xmm4
movdqu xmm0, xmm7
pxor xmm13, xmm11
movdqu xmm4, xmm7
punpcklqdq xmm2, xmm2
psllq xmm6, 0x24
psrlq xmm0, 0x27
pand xmm13, xmm15
pxor xmm13, xmm11
psrlq xmm4, 0x22
paddq xmm13, xmmword [rax - 0x80]
por xmm0, xmmword [rsp + 0x50]
por xmm4, xmmword [rsp + 0x60]
psrlq xmm3, 0x1c
paddq xmm13, xmm1
paddq xmm11, xmmword [rax - 0x70]
por xmm3, xmm6
movdqu xmm6, xmmword [rsp]
pand xmm6, xmmword [rsp + 0x10]
pxor xmm4, xmm0
paddq xmm13, xmm2
movdqu xmm2, xmm9
pxor xmm3, xmm4
paddq xmm2, xmm13
pxor xmm6, xmm10
paddq xmm3, xmm6
movdqu xmm6, xmm2
movdqu xmm12, xmm2
psllq xmm6, 0x17
paddq xmm13, xmm3
movdqu xmm4, xmm2
movups xmmword [rsp], xmm6
movdqu xmm3, xmm2
movdqu xmm6, xmm2
movdqu xmm5, xmm2
psllq xmm12, 0x2e
psllq xmm4, 0x32
movdqu xmm0, xmm13
psrlq xmm5, 0xe
psrlq xmm3, 0x29
por xmm3, xmmword [rsp]
movups xmmword [rsp + 0x20], xmm4
psrlq xmm6, 0x12
movdqu xmm1, xmm5
por xmm1, xmmword [rsp + 0x20]
por xmm6, xmm12
movq xmm12, qword [rcx - 0x38]
psrlq xmm0, 0x27
movdqu xmm5, xmm13
pxor xmm3, xmm6
movups xmmword [rsp + 0x30], xmm0
movdqu xmm0, xmm13
movdqu xmm9, xmm13
pxor xmm3, xmm1
punpcklqdq xmm12, xmm12
movdqu xmm4, xmm13
movdqu xmm1, xmmword [rsp + 0x10]
psllq xmm5, 0x1e
psllq xmm0, 0x24
paddq xmm3, xmm12
movdqu xmm12, xmm14
paddq xmm11, xmm3
movups xmmword [rsp + 0x40], xmm5
movdqu xmm5, xmm13
pxor xmm12, xmm15
movups xmmword [rsp + 0x50], xmm0
movdqu xmm0, xmm7
movdqu xmm3, xmm8
pand xmm12, xmm2
psllq xmm9, 0x19
pxor xmm0, xmm13
pxor xmm12, xmm14
psrlq xmm5, 0x22
por xmm5, xmmword [rsp + 0x40]
movups xmmword [rsp], xmm0
paddq xmm12, xmm11
movdqu xmm11, xmmword [rsp + 0x30]
pand xmm1, xmm0
psrlq xmm4, 0x1c
por xmm4, xmmword [rsp + 0x50]
paddq xmm3, xmm12
por xmm11, xmm9
pxor xmm1, xmm7
movdqu xmm6, xmm3
pxor xmm11, xmm5
paddq xmm12, xmm1
movdqu xmm5, xmm3
pxor xmm11, xmm4
movdqu xmm9, xmm3
movdqu xmm8, xmm3
paddq xmm11, xmm12
psllq xmm6, 0x17
movdqu xmm4, xmm3
movdqu xmm12, xmm3
psrlq xmm5, 0x12
movups xmmword [rsp + 0x20], xmm6
movdqu xmm1, xmm13
psllq xmm9, 0x32
psrlq xmm8, 0xe
movups xmmword [rsp + 0x30], xmm5
pxor xmm1, xmm11
movups xmmword [rsp + 0x40], xmm9
psrlq xmm4, 0x29
psllq xmm12, 0x2e
movdqu xmm0, xmm11
movups xmmword [rsp + 0x50], xmm8
por xmm4, xmmword [rsp + 0x20]
paddq xmm14, xmmword [rax - 0x60]
movdqu xmm8, xmm11
movups xmmword [rsp + 0x10], xmm1
movdqu xmm1, xmmword [rsp + 0x50]
por xmm1, xmmword [rsp + 0x40]
psllq xmm8, 0x19
movdqu xmm9, xmm11
movdqu xmm6, xmm11
movdqu xmm5, xmm11
movups xmmword [rsp + 0x60], xmm8
psllq xmm9, 0x1e
psrlq xmm0, 0x27
movdqu xmm8, xmm11
psrlq xmm6, 0x22
por xmm12, xmmword [rsp + 0x30]
por xmm0, xmmword [rsp + 0x60]
psllq xmm8, 0x24
psrlq xmm5, 0x1c
por xmm6, xmm9
pxor xmm4, xmm12
movq xmm12, qword [rcx - 0x30]
pxor xmm6, xmm0
por xmm5, xmm8
pxor xmm4, xmm1
movdqu xmm1, xmm10
pxor xmm5, xmm6
punpcklqdq xmm12, xmm12
paddq xmm4, xmm12
paddq xmm14, xmm4
movdqu xmm4, xmm15
pxor xmm4, xmm2
pand xmm4, xmm3
pxor xmm4, xmm15
paddq xmm15, xmmword [rax - 0x50]
paddq xmm4, xmm14
movdqu xmm14, xmmword [rsp]
pand xmm14, xmmword [rsp + 0x10]
paddq xmm1, xmm4
paddq xmm4, xmm5
movdqu xmm0, xmm1
psllq xmm1, 0x17
pxor xmm14, xmm13
paddq xmm4, xmm14
movdqu xmm14, xmm1
movdqu xmm1, xmm0
movups xmmword [rsp], xmm0
psrlq xmm1, 0x29
movdqu xmm8, xmm0
movdqu xmm12, xmm0
movdqu xmm5, xmm1
movdqu xmm1, xmm0
movdqu xmm10, xmm4
psllq xmm1, 0x2e
psrlq xmm8, 0x12
por xmm5, xmm14
movups xmmword [rsp + 0x20], xmm1
psllq xmm12, 0x32
psrlq xmm0, 0xe
por xmm8, xmmword [rsp + 0x20]
por xmm0, xmm12
psllq xmm4, 0x19
movdqu xmm9, xmm10
pxor xmm5, xmm8
movdqu xmm1, xmm10
movups xmmword [rsp + 0x30], xmm4
movdqu xmm4, xmm10
pxor xmm5, xmm0
movq xmm0, qword [rcx - 0x28]
psllq xmm9, 0x1e
movdqu xmm6, xmm10
psrlq xmm1, 0x22
movups xmmword [rsp + 0x40], xmm9
psrlq xmm4, 0x27
movdqu xmm9, xmm10
punpcklqdq xmm0, xmm0
movups xmmword [rsp + 0x50], xmm1
psrlq xmm6, 0x1c
por xmm4, xmmword [rsp + 0x30]
paddq xmm5, xmm0
movdqu xmm0, xmm7
movdqu xmm7, xmmword [rsp + 0x50]
por xmm7, xmmword [rsp + 0x40]
paddq xmm15, xmm5
movdqu xmm5, xmm2
movdqu xmm1, xmm11
pxor xmm5, xmm3
pand xmm5, xmmword [rsp]
pxor xmm1, xmm10
psllq xmm9, 0x24
pxor xmm7, xmm4
pxor xmm5, xmm2
por xmm6, xmm9
paddq xmm5, xmm15
movdqu xmm15, xmmword [rsp + 0x10]
pxor xmm6, xmm7
movups xmmword [rsp + 0x10], xmm1
paddq xmm0, xmm5
paddq xmm5, xmm6
pand xmm15, xmm1
movdqu xmm7, xmm0
movdqu xmm14, xmm0
pxor xmm15, xmm11
psllq xmm7, 0x17
movdqu xmm9, xmm0
paddq xmm15, xmm5
movdqu xmm6, xmm0
movdqu xmm5, xmm0
movups xmmword [rsp + 0x20], xmm7
psllq xmm14, 0x2e
psllq xmm6, 0x32
movdqu xmm8, xmm0
psrlq xmm5, 0x29
psrlq xmm9, 0x12
por xmm5, xmmword [rsp + 0x20]
movups xmmword [rsp + 0x30], xmm6
por xmm9, xmm14
movdqu xmm7, xmm15
movdqu xmm6, xmm15
psrlq xmm8, 0xe
psllq xmm7, 0x1e
pxor xmm5, xmm9
psllq xmm6, 0x24
movups xmmword [rsp + 0x40], xmm7
movdqu xmm12, xmm15
por xmm8, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x50], xmm6
movdqu xmm4, xmm15
movdqu xmm7, xmm15
movdqu xmm6, xmm15
pxor xmm5, xmm8
paddq xmm5, xmmword [rax - 0x40]
movq xmm14, qword [rcx - 0x20]
movdqu xmm1, xmm10
psllq xmm12, 0x19
psrlq xmm4, 0x27
pxor xmm1, xmm15
punpcklqdq xmm14, xmm14
psrlq xmm7, 0x22
por xmm7, xmmword [rsp + 0x40]
paddq xmm14, xmm2
por xmm4, xmm12
movdqu xmm2, xmmword [rsp + 0x10]
paddq xmm14, xmm5
movdqu xmm5, xmmword [rsp]
psrlq xmm6, 0x1c
por xmm6, xmmword [rsp + 0x50]
pxor xmm7, xmm4
pand xmm2, xmm1
pxor xmm5, xmm3
pxor xmm6, xmm7
pxor xmm2, xmm10
pand xmm5, xmm0
pxor xmm5, xmm3
paddq xmm5, xmm14
paddq xmm13, xmm5
paddq xmm5, xmm6
movdqu xmm7, xmm13
movdqu xmm4, xmm13
movdqu xmm14, xmm13
psllq xmm7, 0x17
movdqu xmm8, xmm13
movdqu xmm6, xmm13
movups xmmword [rsp + 0x20], xmm7
psllq xmm14, 0x2e
psllq xmm6, 0x32
movdqu xmm7, xmm13
psrlq xmm4, 0x29
psrlq xmm8, 0x12
por xmm4, xmmword [rsp + 0x20]
movups xmmword [rsp + 0x30], xmm6
paddq xmm5, xmm2
psrlq xmm7, 0xe
por xmm8, xmm14
movq xmm14, qword [rcx - 0x18]
por xmm7, xmmword [rsp + 0x30]
movdqu xmm2, xmm5
pxor xmm4, xmm8
movdqu xmm9, xmm5
psrlq xmm2, 0x27
punpcklqdq xmm14, xmm14
pxor xmm4, xmm7
movdqu xmm7, xmmword [rsp]
paddq xmm4, xmmword [rax - 0x30]
movups xmmword [rsp + 0x40], xmm2
paddq xmm14, xmm3
movdqu xmm2, xmm9
movdqu xmm12, xmm5
paddq xmm14, xmm4
psllq xmm2, 0x24
movdqu xmm4, xmm7
movups xmmword [rsp + 0x60], xmm2
pxor xmm4, xmm0
movdqu xmm2, xmm15
movdqu xmm6, xmm9
pxor xmm2, xmm9
psllq xmm5, 0x1e
pand xmm4, xmm13
movups xmmword [rsp + 0x10], xmm2
pxor xmm4, xmm7
psrlq xmm6, 0x22
movdqu xmm2, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x50], xmm5
paddq xmm4, xmm14
por xmm6, xmmword [rsp + 0x50]
movdqu xmm5, xmm9
psllq xmm12, 0x19
paddq xmm11, xmm4
pand xmm1, xmmword [rsp + 0x10]
por xmm2, xmm12
psrlq xmm5, 0x1c
por xmm5, xmmword [rsp + 0x60]
pxor xmm6, xmm2
movdqu xmm7, xmm11
movdqu xmm2, xmm1
pxor xmm5, xmm6
psllq xmm7, 0x17
pxor xmm2, xmm15
movups xmmword [rsp + 0x30], xmm7
paddq xmm4, xmm5
movdqu xmm3, xmm11
movdqu xmm14, xmm11
movdqu xmm7, xmm11
paddq xmm4, xmm2
movdqu xmm12, xmm11
psllq xmm14, 0x2e
psrlq xmm3, 0x29
movdqu xmm6, xmm11
por xmm3, xmmword [rsp + 0x30]
psrlq xmm7, 0x12
movdqu xmm8, xmm4
por xmm7, xmm14
psllq xmm12, 0x32
movdqu xmm5, xmm4
movq xmm14, qword [rcx - 0x10]
psrlq xmm4, 0x27
psrlq xmm6, 0xe
pxor xmm3, xmm7
por xmm6, xmm12
movdqu xmm2, xmm4
movdqu xmm4, xmm8
psllq xmm4, 0x1e
pxor xmm3, xmm6
punpcklqdq xmm14, xmm14
paddq xmm3, xmmword [rax - 0x20]
paddq xmm14, xmmword [rsp]
movups xmmword [rsp + 0x50], xmm4
psllq xmm5, 0x19
movdqu xmm4, xmm8
movups xmmword [rsp + 0x40], xmm5
movdqu xmm5, xmm8
por xmm2, xmmword [rsp + 0x40]
paddq xmm14, xmm3
psllq xmm4, 0x24
movdqu xmm3, xmm0
movups xmmword [rsp + 0x60], xmm4
psrlq xmm5, 0x22
movdqu xmm4, xmm8
por xmm5, xmmword [rsp + 0x50]
movdqu xmm1, xmm9
psrlq xmm4, 0x1c
pxor xmm3, xmm13
por xmm4, xmmword [rsp + 0x60]
pxor xmm1, xmm8
pand xmm3, xmm11
pxor xmm5, xmm2
pxor xmm3, xmm0
movups xmmword [rsp + 0x20], xmm1
movdqu xmm1, xmmword [rsp + 0x10]
pand xmm1, xmmword [rsp + 0x20]
paddq xmm3, xmm14
pxor xmm4, xmm5
paddq xmm10, xmm3
paddq xmm3, xmm4
pxor xmm1, xmm9
movdqu xmm14, xmm10
paddq xmm3, xmm1
movdqu xmm5, xmm14
movdqu xmm2, xmm14
movdqu xmm10, xmm3
movdqu xmm3, xmm14
movdqu xmm12, xmm14
psllq xmm3, 0x17
psllq xmm5, 0x32
movdqu xmm6, xmm14
movups xmmword [rsp + 0x10], xmm3
psllq xmm12, 0x2e
psrlq xmm2, 0x29
por xmm2, xmmword [rsp + 0x10]
movups xmmword [rsp + 0x30], xmm5
psrlq xmm6, 0x12
movdqu xmm5, xmm14
movdqu xmm1, xmm10
por xmm6, xmm12
psrlq xmm5, 0xe
movq xmm12, qword [rcx - 8]
por xmm5, xmmword [rsp + 0x30]
pxor xmm2, xmm6
psrlq xmm1, 0x27
movdqu xmm4, xmm10
pxor xmm2, xmm5
punpcklqdq xmm12, xmm12
paddq xmm2, xmmword [rax - 0x10]
movups xmmword [rsp + 0x50], xmm1
psllq xmm4, 0x19
paddq xmm12, xmm0
movdqu xmm7, xmm10
movdqu xmm0, xmmword [rsp + 0x20]
movdqu xmm1, xmm8
movups xmmword [rsp + 0x40], xmm4
psllq xmm7, 0x1e
paddq xmm12, xmm2
pxor xmm1, xmm10
movdqu xmm4, xmm10
movdqu xmm2, xmm13
movups xmmword [rsp + 0x60], xmm7
movups xmmword [rsp], xmm1
psrlq xmm4, 0x22
movdqu xmm1, xmmword [rsp + 0x50]
por xmm4, xmmword [rsp + 0x60]
por xmm1, xmmword [rsp + 0x40]
movdqu xmm7, xmm10
movdqu xmm3, xmm10
pxor xmm2, xmm11
psllq xmm7, 0x24
pand xmm0, xmmword [rsp]
psrlq xmm3, 0x1c
pand xmm2, xmm14
pxor xmm4, xmm1
por xmm3, xmm7
pxor xmm2, xmm13
pxor xmm0, xmm8
paddq xmm2, xmm12
pxor xmm3, xmm4
paddq xmm15, xmm2
paddq xmm2, xmm3
movdqu xmm7, xmm2
paddq xmm7, xmm0
cmp r8, rax
jne 0x51abd0
movdqu xmm12, xmm8
movdqu xmm0, xmmword [rsp + 0x70]
movdqu xmm8, xmmword [rsp + 0xd0]
movdqu xmm6, xmmword [rsp + 0xa0]
movdqu xmm3, xmmword [rsp + 0xe0]
movdqu xmm4, xmmword [rsp + 0x80]
paddq xmm8, xmm10
movdqu xmm5, xmmword [rsp + 0x90]
paddq xmm0, xmm7
paddq xmm6, xmm14
paddq xmm3, xmm12
movups xmmword [rdx + 0x10], xmm8
movdqu xmm2, xmmword [rsp + 0xb0]
paddq xmm4, xmm9
paddq xmm5, xmm15
movups xmmword [rdx + 0x50], xmm6
movdqu xmm1, xmmword [rsp + 0xc0]
paddq xmm2, xmm11
movups xmmword [rdx], xmm0
movups xmm6, xmmword [rsp + 0x5f0]
movups xmm7, xmmword [rsp + 0x600]
paddq xmm1, xmm13
movups xmmword [rdx + 0x20], xmm3
movups xmm8, xmmword [rsp + 0x610]
movups xmm9, xmmword [rsp + 0x620]
movups xmm10, xmmword [rsp + 0x630]
movups xmmword [rdx + 0x30], xmm4
movups xmm11, xmmword [rsp + 0x640]
movups xmm12, xmmword [rsp + 0x650]
movups xmmword [rdx + 0x40], xmm5
movups xmm13, xmmword [rsp + 0x660]
movups xmm14, xmmword [rsp + 0x670]
movups xmmword [rdx + 0x60], xmm2
movups xmm15, xmmword [rsp + 0x680]
movups xmmword [rdx + 0x70], xmm1
add rsp, 0x698
ret