Function at 0x65f6b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x4a8
movaps xmmword [rsp + 0x400], xmm6
movaps xmmword [rsp + 0x410], xmm7
movaps xmmword [rsp + 0x420], xmm8
movaps xmmword [rsp + 0x430], xmm9
movaps xmmword [rsp + 0x440], xmm10
movaps xmmword [rsp + 0x450], xmm11
movaps xmmword [rsp + 0x460], xmm12
movaps xmmword [rsp + 0x470], xmm13
movaps xmmword [rsp + 0x480], xmm14
movaps xmmword [rsp + 0x490], xmm15
movdqa xmm0, xmmword [0x00821740]
movdqu xmm1, xmmword [rdx]
movdqa xmm10, xmm0
movdqa xmm9, xmm0
movdqa xmm11, xmm0
movdqu xmm8, xmmword [rdx + 0x10]
movdqu xmm7, xmmword [rdx + 0x20]
pand xmm10, xmm1
psrlw xmm1, 8
movdqu xmm4, xmmword [rdx + 0x30]
pand xmm9, xmm8
psrlw xmm8, 8
packuswb xmm10, xmm9
mov rbp, rcx
mov rcx, qword [rcx + 8]
packuswb xmm1, xmm8
movdqa xmm9, xmm0
movdqa xmm8, xmm0
movdqu xmm3, xmmword [rdx + 0x40]
pand xmm9, xmm7
psrlw xmm7, 8
movdqu xmm5, xmmword [rdx + 0x50]
pand xmm8, xmm4
psrlw xmm4, 8
packuswb xmm9, xmm8
packuswb xmm7, xmm4
movdqa xmm8, xmm0
movdqa xmm4, xmm0
movdqu xmm6, xmmword [rdx + 0x60]
movdqu xmm2, xmmword [rdx + 0x70]
mov qword [rsp + 0x140], rcx
pand xmm8, xmm5
pand xmm4, xmm3
mov rcx, qword [rbp + 0x10]
psrlw xmm5, 8
packuswb xmm4, xmm8
movdqa xmm8, xmm0
psrlw xmm3, 8
pand xmm8, xmm2
pand xmm11, xmm9
lea rdi, [rsp + 0x180]
packuswb xmm3, xmm5
movdqa xmm5, xmm0
psrlw xmm2, 8
pand xmm5, xmm6
packuswb xmm5, xmm8
movdqa xmm8, xmm0
psrlw xmm9, 8
mov qword [rsp + 0x148], rcx
mov rcx, qword [rbp + 0x18]
pand xmm8, xmm10
psrlw xmm6, 8
psrlw xmm10, 8
packuswb xmm6, xmm2
movdqa xmm2, xmm0
packuswb xmm8, xmm11
packuswb xmm10, xmm9
movdqa xmm9, xmm0
pand xmm2, xmm5
psrlw xmm5, 8
pand xmm9, xmm4
psrlw xmm4, 8
movdqa xmm11, xmm0
packuswb xmm9, xmm2
mov qword [rsp + 0x150], rcx
mov rcx, qword [rbp + 0x20]
packuswb xmm4, xmm5
movdqa xmm5, xmm0
pand xmm11, xmm7
pand xmm5, xmm1
psrlw xmm7, 8
movdqa xmm2, xmm0
psrlw xmm1, 8
packuswb xmm5, xmm11
pand xmm2, xmm6
movdqa xmm11, xmm0
packuswb xmm1, xmm7
movdqa xmm7, xmm0
pand xmm11, xmm8
psrlw xmm8, 8
pand xmm7, xmm3
packuswb xmm7, xmm2
movdqa xmm2, xmm0
mov qword [rsp + 0x158], rcx
mov rcx, qword [rbp + 0x28]
pand xmm2, xmm9
psrlw xmm9, 8
packuswb xmm11, xmm2
packuswb xmm8, xmm9
psrlw xmm6, 8
movdqa xmm9, xmm0
movdqa xmm2, xmm0
psrlw xmm3, 8
pand xmm2, xmm7
pand xmm9, xmm5
packuswb xmm9, xmm2
packuswb xmm3, xmm6
movdqa xmm2, xmm0
movdqa xmm6, xmm0
pand xmm2, xmm4
pand xmm6, xmm10
packuswb xmm6, xmm2
mov qword [rsp + 0x160], rcx
mov rcx, qword [rbp + 0x30]
movdqa xmm2, xmm10
psrlw xmm7, 8
psrlw xmm2, 8
lea rdx, [rdi + 0x208]
movdqa xmm12, xmm2
psrlw xmm5, 8
movdqa xmm2, xmm0
pand xmm0, xmm3
pand xmm2, xmm1
psrlw xmm1, 8
packuswb xmm2, xmm0
movdqa xmm0, xmm3
psrlw xmm0, 8
movdqa xmm13, xmm1
movdqa xmm3, xmm11
mov qword [rsp + 0x168], rcx
mov rcx, qword [rbp + 0x38]
pxor xmm1, xmm1
packuswb xmm5, xmm7
packuswb xmm13, xmm0
punpckhbw xmm3, xmm1
pxor xmm0, xmm0
movdqa xmm7, xmm3
punpckhwd xmm3, xmm0
movdqa xmm15, xmm3
movdqa xmm3, xmm9
punpcklwd xmm7, xmm0
punpckhbw xmm9, xmm1
punpcklbw xmm3, xmm1
movaps xmmword [rsp + 0x70], xmm7
movdqa xmm14, xmm3
movdqa xmm7, xmm3
movdqa xmm3, xmm9
movdqa xmm10, xmm9
punpcklwd xmm14, xmm0
mov qword [rsp + 0x170], rcx
mov rax, qword [rbp + 0x40]
punpcklwd xmm3, xmm0
punpckhwd xmm10, xmm0
movaps xmmword [rsp + 0x90], xmm3
movdqa xmm3, xmm6
punpckhbw xmm6, xmm1
movdqa xmm9, xmm6
punpckhwd xmm6, xmm0
movaps xmmword [rsp + 0x10], xmm6
movdqa xmm6, xmm2
punpcklwd xmm9, xmm0
punpckhbw xmm2, xmm1
punpcklbw xmm6, xmm1
movaps xmmword [rsp], xmm10
psrlw xmm4, 8
punpcklbw xmm3, xmm1
packuswb xmm12, xmm4
movdqa xmm4, xmm11
movdqa xmm10, xmm3
movaps xmmword [rsp + 0xa0], xmm9
movdqa xmm9, xmm6
punpckhwd xmm6, xmm0
punpcklbw xmm4, xmm1
punpckhwd xmm7, xmm0
movdqa xmm11, xmm4
punpcklwd xmm10, xmm0
punpckhwd xmm4, xmm0
movaps xmmword [rsp + 0xb0], xmm6
movdqa xmm6, xmm2
mov qword [rsp + 0x178], rax
punpckhwd xmm2, xmm0
punpcklwd xmm11, xmm0
punpcklwd xmm6, xmm0
movaps xmmword [rsp + 0xc0], xmm6
punpckhwd xmm3, xmm0
lea rax, [rdi + 8]
movaps xmmword [rsp + 0x20], xmm2
movdqa xmm2, xmm8
punpckhbw xmm8, xmm1
punpcklwd xmm9, xmm0
movaps xmmword [rsp + 0x80], xmm15
punpcklbw xmm2, xmm1
movdqa xmm6, xmm2
movdqa xmm2, xmm8
movdqa xmm8, xmm6
punpckhwd xmm6, xmm0
movaps xmmword [rsp + 0xd0], xmm6
movdqa xmm6, xmm2
punpckhwd xmm2, xmm0
movaps xmmword [rsp + 0x30], xmm2
movdqa xmm2, xmm5
punpcklwd xmm6, xmm0
punpcklbw xmm2, xmm1
punpckhbw xmm5, xmm1
punpcklwd xmm8, xmm0
movaps xmmword [rsp + 0xe0], xmm6
movdqa xmm6, xmm2
movdqa xmm2, xmm5
movdqa xmm5, xmm6
punpckhwd xmm6, xmm0
movaps xmmword [rsp + 0xf0], xmm6
movdqa xmm6, xmm2
punpckhwd xmm2, xmm0
movaps xmmword [rsp + 0x40], xmm2
punpcklwd xmm6, xmm0
punpcklwd xmm5, xmm0
movdqa xmm2, xmm12
movaps xmmword [rsp + 0x100], xmm6
punpckhbw xmm12, xmm1
punpcklbw xmm2, xmm1
movdqa xmm6, xmm2
movdqa xmm2, xmm12
movdqa xmm12, xmm6
punpckhwd xmm6, xmm0
movaps xmmword [rsp + 0x110], xmm6
movdqa xmm6, xmm2
punpckhwd xmm2, xmm0
movaps xmmword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckhbw xmm13, xmm1
punpcklbw xmm2, xmm1
movdqa xmm1, xmm13
punpcklwd xmm6, xmm0
movdqa xmm13, xmm2
movaps xmmword [rsp + 0x120], xmm6
movdqa xmm6, xmm2
movdqa xmm2, xmm1
punpcklwd xmm12, xmm0
punpcklwd xmm13, xmm0
punpckhwd xmm6, xmm0
punpcklwd xmm2, xmm0
punpckhwd xmm1, xmm0
movdqa xmm0, xmmword [rsp]
movaps xmmword [rsp + 0x60], xmm1
pxor xmm1, xmm1
movaps xmmword [rsp + 0x130], xmm2
punpckhdq xmm0, xmm1
psllq xmm0, 0x30
movdqa xmm2, xmm0
movdqa xmm0, xmm15
movdqa xmm15, xmmword [rsp + 0x60]
punpckhdq xmm0, xmm1
psllq xmm0, 0x38
por xmm0, xmm2
punpckhdq xmm15, xmm1
por xmm0, xmm15
movdqa xmm15, xmmword [rsp + 0x10]
punpckhdq xmm15, xmm1
movdqa xmm2, xmm15
movdqa xmm15, xmmword [rsp + 0x20]
psllq xmm2, 0x28
por xmm0, xmm2
punpckhdq xmm15, xmm1
movdqa xmm2, xmm15
movdqa xmm15, xmmword [rsp + 0x30]
psllq xmm2, 0x20
por xmm0, xmm2
punpckhdq xmm15, xmm1
movdqa xmm2, xmm15
movdqa xmm15, xmmword [rsp + 0x40]
psllq xmm2, 0x18
por xmm0, xmm2
punpckhdq xmm15, xmm1
movdqa xmm2, xmm15
movdqa xmm15, xmmword [rsp + 0x50]
psllq xmm2, 0x10
por xmm0, xmm2
punpckhdq xmm15, xmm1
movdqa xmm2, xmm15
movdqa xmm15, xmm14
psllq xmm2, 8
punpckldq xmm15, xmm1
punpckhdq xmm14, xmm1
por xmm0, xmm2
movdqa xmm2, xmm11
psllq xmm15, 0x30
punpckhdq xmm11, xmm1
punpckldq xmm2, xmm1
psllq xmm2, 0x38
por xmm2, xmm15
movdqa xmm15, xmm13
psllq xmm11, 0x38
punpckhdq xmm13, xmm1
punpckldq xmm15, xmm1
por xmm2, xmm15
movdqa xmm15, xmm10
psllq xmm14, 0x30
punpckldq xmm15, xmm1
psllq xmm15, 0x28
punpckhdq xmm10, xmm1
por xmm14, xmm11
por xmm2, xmm15
movdqa xmm15, xmm9
psllq xmm10, 0x28
punpckhdq xmm9, xmm1
punpckldq xmm15, xmm1
psllq xmm15, 0x20
por xmm14, xmm13
por xmm14, xmm10
por xmm2, xmm15
movdqa xmm15, xmm8
psllq xmm9, 0x20
punpckhdq xmm8, xmm1
punpckldq xmm15, xmm1
psllq xmm15, 0x18
por xmm14, xmm9
movdqa xmm13, xmmword [rsp + 0xd0]
por xmm2, xmm15
movdqa xmm15, xmm5
psllq xmm8, 0x18
punpckhdq xmm5, xmm1
punpckldq xmm15, xmm1
psllq xmm5, 0x10
por xmm14, xmm8
movdqa xmm8, xmm7
psllq xmm15, 0x10
por xmm14, xmm5
punpckldq xmm8, xmm1
punpckhdq xmm7, xmm1
por xmm2, xmm15
movdqa xmm15, xmm12
punpckhdq xmm12, xmm1
movdqa xmm5, xmm12
psllq xmm5, 8
punpckldq xmm15, xmm1
movdqa xmm12, xmmword [rsp + 0xb0]
por xmm14, xmm5
psllq xmm15, 8
movdqa xmm5, xmm8
movdqa xmm8, xmm4
por xmm2, xmm15
punpckldq xmm8, xmm1
psllq xmm5, 0x30
movaps xmmword [rsp + 0x180], xmm2
movdqa xmm2, xmm8
psllq xmm7, 0x30
movdqa xmm8, xmm12
punpckhdq xmm4, xmm1
psllq xmm2, 0x38
punpckhdq xmm8, xmm1
movdqa xmm11, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x190], xmm14
por xmm2, xmm5
movdqa xmm5, xmm6
psllq xmm4, 0x38
punpckhdq xmm6, xmm1
punpckldq xmm5, xmm1
por xmm2, xmm5
movdqa xmm5, xmm3
punpckhdq xmm3, xmm1
punpckldq xmm5, xmm1
psllq xmm5, 0x28
por xmm7, xmm4
por xmm7, xmm6
por xmm2, xmm5
psllq xmm3, 0x28
movdqa xmm5, xmm12
movdqa xmm14, xmmword [rsp + 0x110]
por xmm7, xmm3
punpckldq xmm5, xmm1
movdqa xmm3, xmm8
psllq xmm5, 0x20
por xmm2, xmm5
psllq xmm3, 0x20
movdqa xmm5, xmm13
movdqa xmm8, xmm13
por xmm7, xmm3
punpckhdq xmm8, xmm1
punpckldq xmm5, xmm1
movdqa xmm3, xmm8
psllq xmm5, 0x18
movdqa xmm8, xmm11
movdqa xmm9, xmmword [rsp + 0xa0]
por xmm2, xmm5
punpckhdq xmm8, xmm1
movdqa xmm5, xmm11
movdqa xmm6, xmm8
psllq xmm3, 0x18
punpckldq xmm5, xmm1
movdqa xmm11, xmmword [rsp + 0x130]
psllq xmm5, 0x10
por xmm7, xmm3
psllq xmm6, 0x10
por xmm2, xmm5
movdqa xmm5, xmm14
punpckhdq xmm14, xmm1
por xmm7, xmm6
movdqa xmm6, xmm14
punpckldq xmm5, xmm1
psllq xmm5, 8
psllq xmm6, 8
por xmm2, xmm5
movaps xmmword [rsp + 0x1a0], xmm2
movdqa xmm5, xmmword [rsp + 0xc0]
por xmm7, xmm6
movaps xmmword [rsp + 0x1b0], xmm7
movdqa xmm6, xmmword [rsp + 0x90]
movdqa xmm7, xmmword [rsp + 0x70]
movdqa xmm4, xmmword [rsp + 0xe0]
movdqa xmm14, xmm6
movaps xmmword [rsp + 0x1f0], xmm0
movdqa xmm12, xmmword [rsp + 0x100]
punpckldq xmm14, xmm1
movdqa xmm3, xmm14
movdqa xmm14, xmm7
punpckldq xmm14, xmm1
movdqa xmm2, xmm14
psllq xmm3, 0x30
movdqa xmm13, xmmword [rsp + 0x120]
psllq xmm2, 0x38
movdqa xmm14, xmm6
movdqa xmm6, xmmword [rsp + 0x10]
por xmm2, xmm3
movdqa xmm3, xmm11
punpckhdq xmm14, xmm1
punpckldq xmm3, xmm1
por xmm2, xmm3
movdqa xmm3, xmm9
punpckldq xmm6, xmm1
punpckldq xmm3, xmm1
psllq xmm3, 0x28
por xmm2, xmm3
movdqa xmm3, xmm5
psllq xmm6, 0x28
punpckldq xmm3, xmm1
psllq xmm3, 0x20
por xmm2, xmm3
movdqa xmm3, xmm4
punpckldq xmm3, xmm1
psllq xmm3, 0x18
por xmm2, xmm3
movdqa xmm3, xmm12
punpckldq xmm3, xmm1
psllq xmm3, 0x10
por xmm2, xmm3
movdqa xmm3, xmm13
punpckldq xmm3, xmm1
psllq xmm3, 8
por xmm2, xmm3
movdqa xmm3, xmm7
movaps xmmword [rsp + 0x1c0], xmm2
movdqa xmm2, xmm14
psllq xmm2, 0x30
punpckhdq xmm3, xmm1
movdqa xmm7, xmmword [rsp + 0x80]
psllq xmm3, 0x38
por xmm2, xmm3
movdqa xmm3, xmm11
punpckldq xmm7, xmm1
punpckhdq xmm3, xmm1
por xmm2, xmm3
movdqa xmm3, xmm9
punpckhdq xmm3, xmm1
psllq xmm3, 0x28
por xmm2, xmm3
movdqa xmm3, xmm5
punpckhdq xmm3, xmm1
psllq xmm3, 0x20
por xmm2, xmm3
movdqa xmm3, xmm4
punpckhdq xmm3, xmm1
psllq xmm3, 0x18
por xmm2, xmm3
movdqa xmm3, xmm12
punpckhdq xmm3, xmm1
psllq xmm3, 0x10
por xmm2, xmm3
movdqa xmm3, xmm13
punpckhdq xmm3, xmm1
psllq xmm3, 8
por xmm2, xmm3
movdqa xmm3, xmmword [rsp]
movaps xmmword [rsp + 0x1d0], xmm2
movdqa xmm2, xmm7
movdqa xmm7, xmmword [rsp + 0x60]
psllq xmm2, 0x38
punpckldq xmm3, xmm1
psllq xmm3, 0x30
por xmm3, xmm2
punpckldq xmm7, xmm1
por xmm3, xmm7
por xmm3, xmm6
movdqa xmm7, xmmword [rsp + 0x20]
punpckldq xmm7, xmm1
movdqa xmm2, xmm7
psllq xmm2, 0x20
por xmm3, xmm2
movdqa xmm2, xmmword [rsp + 0x30]
punpckldq xmm2, xmm1
psllq xmm2, 0x18
por xmm3, xmm2
movdqa xmm2, xmmword [rsp + 0x40]
punpckldq xmm2, xmm1
psllq xmm2, 0x10
por xmm3, xmm2
movdqa xmm2, xmmword [rsp + 0x50]
punpckldq xmm2, xmm1
psllq xmm2, 8
por xmm2, xmm3
movaps xmmword [rsp + 0x1e0], xmm2
movdqa xmm1, xmm0
movdqa xmm3, xmm0
movdqa xmm4, xmm0
movdqu xmm2, xmmword [rax]
psrlq xmm3, 0x3d
add rax, 0x10
psllq xmm1, 3
por xmm1, xmm3
movdqa xmm3, xmm0
psrlq xmm4, 0x13
psllq xmm3, 0x2d
psrlq xmm0, 6
por xmm3, xmm4
pxor xmm1, xmm3
movdqa xmm3, xmm2
pxor xmm0, xmm1
movdqu xmm1, xmmword [rax + 0x30]
paddq xmm1, xmmword [rax - 0x18]
movdqa xmm4, xmm2
psrlq xmm3, 8
paddq xmm1, xmm0
psrlq xmm4, 1
movdqa xmm0, xmm2
psllq xmm0, 0x38
por xmm0, xmm3
movdqa xmm3, xmm2
psrlq xmm2, 7
psllq xmm3, 0x3f
por xmm3, xmm4
pxor xmm0, xmm3
pxor xmm0, xmm2
paddq xmm0, xmm1
movaps xmmword [rax + 0x68], xmm0
cmp rax, rdx
jne 0x6600e2
mov rbx, qword [rsp + 0x178]
lea rsi, [0x008214c0]
mov rax, qword [rsp + 0x160]
lea r12, [0x00821740]
mov r8, qword [rsp + 0x170]
mov r11, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x140]
mov r10, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x150]
mov r9, qword [rsp + 0x158]
nop dword [rax]
mov r14, rax
mov r13, rax
mov r15, rax
ror r14, 0xe
ror r13, 0x12
xor r13, r14
mov r14, qword [rdi]
rol r15, 0x17
add r14, qword [rsi]
xor r13, r15
mov r15, rcx
ror r15, 0x1c
add r14, r13
mov r13, r8
xor r13, r11
and r13, rax
xor r13, r8
add r13, r14
mov r14, rcx
add r13, rbx
mov rbx, rcx
and r14, r10
rol rbx, 0x1e
add r9, r13
xor rbx, r15
mov r15, rcx
rol r15, 0x19
xor r15, rbx
mov rbx, rcx
or rbx, r10
and rbx, rdx
or r14, rbx
lea rbx, [r15 + r14]
mov r14, qword [rdi + 8]
add r14, qword [rsi + 8]
add rbx, r13
mov r13, rax
xor r13, r11
mov r15, rbx
and r13, r9
xor r13, r11
add r8, r14
lea r14, [r8 + r13]
mov r13, r9
mov r8, r9
ror r8, 0x12
ror r13, 0xe
xor r13, r8
mov r8, r9
rol r8, 0x17
xor r13, r8
mov r8, rbx
ror r15, 0x1c
rol r8, 0x1e
add r13, r14
mov r14, rbx
xor r8, r15
mov r15, rbx
and r14, rcx
rol r15, 0x19
add rdx, r13
xor r15, r8
mov r8, rbx
or r8, rcx
and r8, r10
or r14, r8
lea r8, [r15 + r14]
mov r14, qword [rdi + 0x10]
add r14, qword [rsi + 0x10]
add r8, r13
mov r13, r9
xor r13, rax
mov r15, r8
and r13, rdx
ror r15, 0x1c
xor r13, rax
add r11, r14
lea r14, [r11 + r13]
mov r13, rdx
mov r11, rdx
ror r11, 0x12
ror r13, 0xe
xor r13, r11
mov r11, rdx
rol r11, 0x17
xor r13, r11
mov r11, r8
rol r11, 0x1e
add r13, r14
mov r14, rbx
xor r11, r15
mov r15, r8
add r10, r13
rol r15, 0x19
xor r15, r11
mov r11, rbx
or r11, r8
and r11, rcx
and r14, r8
or r14, r11
lea r11, [r15 + r14]
mov r14, qword [rdi + 0x18]
mov r15, r10
add r14, qword [rsi + 0x18]
add r11, r13
mov r13, r9
rol r15, 0x17
xor r13, rdx
and r13, r10
xor r13, r9
add rax, r14
lea r14, [rax + r13]
mov r13, r10
mov rax, r10
ror r13, 0xe
ror rax, 0x12
xor rax, r13
xor rax, r15
mov r15, r11
lea r13, [r14 + rax]
mov rax, r11
ror r15, 0x1c
rol rax, 0x1e
mov r14, r8
add rcx, r13
xor rax, r15
mov r15, r11
and r14, r11
rol r15, 0x19
xor r15, rax
mov rax, r8
or rax, r11
and rax, rbx
or r14, rax
lea rax, [r15 + r14]
mov r14, qword [rdi + 0x20]
add r14, qword [rsi + 0x20]
add rax, r13
mov r13, rdx
xor r13, r10
mov r15, rax
and r13, rcx
xor r13, rdx
add r9, r14
lea r14, [r9 + r13]
mov r13, rcx
mov r9, rcx
ror r9, 0x12
ror r13, 0xe
xor r13, r9
mov r9, rcx
rol r9, 0x17
ror r15, 0x1c
xor r13, r9
mov r9, rax
rol r9, 0x1e
add r13, r14
mov r14, r11
xor r9, r15
mov r15, rax
and r14, rax
rol r15, 0x19
add rbx, r13
xor r15, r9
mov r9, r11
or r9, rax
and r9, r8
or r14, r9
lea r9, [r15 + r14]
mov r14, qword [rdi + 0x28]
add r14, qword [rsi + 0x28]
add r9, r13
mov r13, r10
xor r13, rcx
mov r15, r9
and r13, rbx
ror r15, 0x1c
xor r13, r10
add rdx, r14
lea r14, [rdx + r13]
mov r13, rbx
mov rdx, rbx
ror rdx, 0x12
ror r13, 0xe
xor r13, rdx
mov rdx, rbx
rol rdx, 0x17
xor r13, rdx
mov rdx, r9
rol rdx, 0x1e
add r13, r14
mov r14, rax
xor rdx, r15
mov r15, r9
add r8, r13
rol r15, 0x19
xor r15, rdx
mov rdx, rax
or rdx, r9
and rdx, r11
and r14, r9
or r14, rdx
lea rdx, [r15 + r14]
mov r14, qword [rdi + 0x30]
add r14, qword [rsi + 0x30]
add rdx, r13
mov r13, rcx
xor r13, rbx
mov r15, rdx
and r13, r8
ror r15, 0x1c
xor r13, rcx
add r10, r14
lea r14, [r10 + r13]
mov r13, r8
mov r10, r8
ror r10, 0x12
ror r13, 0xe
xor r13, r10
mov r10, r8
rol r10, 0x17
xor r13, r10
mov r10, rdx
rol r10, 0x1e
add r13, r14
mov r14, r9
xor r10, r15
mov r15, rdx
and r14, rdx
rol r15, 0x19
add r11, r13
xor r15, r10
mov r10, r9
or r10, rdx
and r10, rax
or r14, r10
lea r10, [r15 + r14]
mov r14, qword [rdi + 0x38]
add r14, qword [rsi + 0x38]
add r10, r13
mov r13, rbx
xor r13, r8
mov r15, r10
and r13, r11
xor r13, rbx
add rcx, r14
lea r14, [rcx + r13]
mov r13, r11
mov rcx, r11
ror r13, 0xe
ror rcx, 0x12
add rsi, 0x40
xor r13, rcx
mov rcx, r11
ror r15, 0x1c
rol rcx, 0x17
add rdi, 0x40
xor r13, rcx
mov rcx, r10
rol rcx, 0x1e
add r13, r14
mov r14, rdx
xor rcx, r15
mov r15, r10
and r14, r10
rol r15, 0x19
add rax, r13
xor r15, rcx
mov rcx, rdx
or rcx, r10
and rcx, r9
or r14, rcx
lea rcx, [r15 + r14]
add rcx, r13
cmp r12, rsi
jne 0x6601d0
movdqu xmm4, xmmword [rbp + 8]
movq xmm7, r10
movq xmm1, rcx
movq xmm0, rdx
punpcklqdq xmm1, xmm7
movq xmm7, r9
movq xmm3, rax
xor eax, eax
paddq xmm1, xmm4
punpcklqdq xmm0, xmm7
movq xmm7, r11
movq xmm2, r8
movups xmmword [rbp + 8], xmm1
movdqu xmm1, xmmword [rbp + 0x18]
punpcklqdq xmm3, xmm7
movq xmm7, rbx
punpcklqdq xmm2, xmm7
paddq xmm0, xmm1
movups xmmword [rbp + 0x18], xmm0
movdqu xmm0, xmmword [rbp + 0x28]
paddq xmm0, xmm3
movups xmmword [rbp + 0x28], xmm0
movdqu xmm0, xmmword [rbp + 0x38]
paddq xmm0, xmm2
movups xmmword [rbp + 0x38], xmm0
movaps xmm6, xmmword [rsp + 0x400]
movaps xmm7, xmmword [rsp + 0x410]
movaps xmm8, xmmword [rsp + 0x420]
movaps xmm9, xmmword [rsp + 0x430]
movaps xmm10, xmmword [rsp + 0x440]
movaps xmm11, xmmword [rsp + 0x450]
movaps xmm12, xmmword [rsp + 0x460]
movaps xmm13, xmmword [rsp + 0x470]
movaps xmm14, xmmword [rsp + 0x480]
movaps xmm15, xmmword [rsp + 0x490]
add rsp, 0x4a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret