user: What would the C source look like for the assembly code provided here:

```asm
<of_add_to_multiple_symbols>:
  endbr64
  push   %r15
  mov    %ecx,%eax
  push   %r14
  shr    $0x3,%eax
  push   %r13
  mov    %eax,%r15d
  push   %r12
  mov    %rdi,%r12
  push   %rbp
  mov    %rsi,%rbp
  push   %rbx
  mov    %ecx,%ebx
  shr    $0x2,%ebx
  mov    %ebx,-0x20(%rsp)
  mov    %ecx,%ebx
  and    $0x3,%ebx
  mov    %edx,-0x10(%rsp)
  mov    %ecx,-0xc(%rsp)
  mov    %ebx,-0x2c(%rsp)
  cmp    $0x7,%edx
  jbe    L218
  lea    (%rax,%rax,1),%eax
  lea    -0x1(%r15),%r13d
  mov    %eax,-0x1c(%rsp)
  lea    -0x8(%rdx),%eax
  lea    0x8(,%r13,8),%r14
  shr    $0x3,%eax
  mov    %r13,-0x38(%rsp)
  add    $0x1,%eax
  shl    $0x6,%rax
  add    %rdi,%rax
  mov    %rax,-0x28(%rsp)
  lea    (%rsi,%r14,1),%rax
  mov    %rax,-0x18(%rsp)
  nopl   (%rax)
L207:
  mov    (%r12),%rbx
  mov    0x8(%r12),%r11
  add    $0x40,%r12
  mov    -0x30(%r12),%r10
  mov    -0x28(%r12),%r9
  mov    -0x20(%r12),%r8
  mov    -0x18(%r12),%rdi
  mov    -0x10(%r12),%rsi
  mov    -0x8(%r12),%rcx
  test   %r15d,%r15d
  je     L136
  mov    -0x38(%rsp),%r13
  xor    %eax,%eax
  nopl   0x0(%rax,%rax,1)
L287:
  mov    0x0(%rbp,%rax,8),%rdx
  xor    %rdx,(%rbx,%rax,8)
  xor    %rdx,(%r11,%rax,8)
  xor    %rdx,(%r10,%rax,8)
  xor    %rdx,(%r9,%rax,8)
  xor    %rdx,(%r8,%rax,8)
  xor    %rdx,(%rdi,%rax,8)
  xor    %rdx,(%rsi,%rax,8)
  xor    %rdx,(%rcx,%rax,8)
  mov    %rax,%rdx
  add    $0x1,%rax
  cmp    %rdx,%r13
  jne    L287
  mov    %r13,-0x38(%rsp)
  mov    -0x18(%rsp),%rax
  add    %r14,%rbx
  add    %r14,%r11
  add    %r14,%r10
  add    %r14,%r9
  add    %r14,%r8
  add    %r14,%rdi
  add    %r14,%rsi
  add    %r14,%rcx
L167:
  mov    -0x20(%rsp),%r13d
  cmp    %r13d,-0x1c(%rsp)
  jae    L262
  mov    (%rax),%edx
  add    $0x4,%rax
  xor    %edx,(%rbx)
  add    $0x8,%rbx
  mov    -0x4(%rax),%edx
  xor    %edx,(%r11)
  add    $0x8,%r11
  mov    -0x4(%rax),%edx
  xor    %edx,(%r10)
  add    $0x8,%r10
  mov    -0x4(%rax),%edx
  xor    %edx,(%r9)
  add    $0x8,%r9
  mov    -0x4(%rax),%edx
  xor    %edx,(%r8)
  add    $0x8,%r8
  mov    -0x4(%rax),%edx
  xor    %edx,(%rdi)
  add    $0x8,%rdi
  mov    -0x4(%rax),%edx
  xor    %edx,(%rsi)
  add    $0x8,%rsi
  mov    -0x4(%rax),%edx
  xor    %edx,(%rcx)
  add    $0x8,%rcx
L262:
  mov    -0x2c(%rsp),%r13d
  test   %r13d,%r13d
  jne    L469
L175:
  cmp    -0x28(%rsp),%r12
  jne    L207
  andl   $0x7,-0x10(%rsp)
L376:
  mov    -0x10(%rsp),%ebx
  cmp    $0x3,%ebx
  jbe    L274
  mov    -0x28(%rsp),%rax
  sub    $0x4,%ebx
  mov    %ebx,-0x10(%rsp)
  mov    (%rax),%rdi
  mov    0x8(%rax),%rsi
  add    $0x20,%rax
  mov    -0x10(%rax),%rcx
  mov    -0x8(%rax),%rdx
  mov    %rax,-0x28(%rsp)
  test   %r15d,%r15d
  je     L319
  lea    0x8(%rbp),%r10
  lea    0xf(%rdi),%r8
  cmp    %r10,%rdi
  lea    0xf(%rsi),%r9
  setne  %al
  cmp    %r10,%rsi
  setne  %r11b
  and    %r11d,%eax
  lea    -0x1(%r15),%r11d
  cmp    $0x1,%r11d
  seta   %r11b
  and    %eax,%r11d
  cmp    %r10,%rcx
  setne  %al
  and    %r11d,%eax
  cmp    %r10,%rdx
  setne  %r10b
  and    %r10d,%eax
  mov    %r8,%r10
  sub    %rsi,%r10
  cmp    $0x1e,%r10
  seta   %r10b
  and    %r10d,%eax
  mov    %r8,%r10
  sub    %rcx,%r10
  cmp    $0x1e,%r10
  seta   %r10b
  sub    %rdx,%r8
  and    %r10d,%eax
  cmp    $0x1e,%r8
  seta   %r8b
  and    %r8d,%eax
  mov    %r9,%r8
  sub    %rcx,%r8
  cmp    $0x1e,%r8
  seta   %r8b
  sub    %rdx,%r9
  and    %r8d,%eax
  cmp    $0x1e,%r9
  seta   %r8b
  test   %r8b,%al
  je     L48
  lea    0xf(%rcx),%rax
  sub    %rdx,%rax
  cmp    $0x1e,%rax
  jbe    L48
  mov    -0xc(%rsp),%r12d
  xor    %eax,%eax
  shr    $0x4,%r12d
  mov    %r12d,%r8d
  shl    $0x4,%r8
  nopl   0x0(%rax)
L11:
  movdqu 0x0(%rbp,%rax,1),%xmm0
  movdqu (%rdi,%rax,1),%xmm1
  pxor   %xmm0,%xmm1
  movups %xmm1,(%rdi,%rax,1)
  movdqu (%rsi,%rax,1),%xmm1
  pxor   %xmm0,%xmm1
  movups %xmm1,(%rsi,%rax,1)
  movdqu (%rcx,%rax,1),%xmm1
  pxor   %xmm0,%xmm1
  movups %xmm1,(%rcx,%rax,1)
  movdqu (%rdx,%rax,1),%xmm2
  pxor   %xmm2,%xmm0
  movups %xmm0,(%rdx,%rax,1)
  add    $0x10,%rax
  cmp    %rax,%r8
  jne    L11
  lea    (%r12,%r12,1),%r8d
  mov    %r15d,%eax
  mov    %r8,%r12
  shl    $0x3,%r8
  lea    (%rdi,%r8,1),%rbx
  lea    (%rsi,%r8,1),%r11
  lea    (%rcx,%r8,1),%r10
  lea    (%rdx,%r8,1),%r9
  add    %rbp,%r8
  cmp    %r12d,%r15d
  je     L258
  mov    (%r8),%r8
  xor    %r8,(%rbx)
  xor    %r8,(%r11)
  xor    %r8,(%r10)
  xor    %r8,(%r9)
L258:
  shl    $0x3,%rax
  add    %rax,%rdi
  add    %rax,%rsi
  add    %rax,%rcx
  add    %rax,%rdx
  add    %rbp,%rax
L307:
  lea    (%r15,%r15,1),%r8d
  cmp    -0x20(%rsp),%r8d
  jae    L113
  mov    (%rax),%r8d
  add    $0x4,%rax
  xor    %r8d,(%rdi)
  add    $0x8,%rdi
  mov    -0x4(%rax),%r8d
  xor    %r8d,(%rsi)
  add    $0x8,%rsi
  mov    -0x4(%rax),%r8d
  xor    %r8d,(%rcx)
  add    $0x8,%rcx
  mov    -0x4(%rax),%r8d
  xor    %r8d,(%rdx)
  add    $0x8,%rdx
L113:
  mov    -0x2c(%rsp),%r8d
  test   %r8d,%r8d
  jne    L77
L274:
  mov    -0x10(%rsp),%ebx
  cmp    $0x1,%ebx
  jbe    L369
  mov    -0x28(%rsp),%rax
  sub    $0x2,%ebx
  mov    %ebx,-0x10(%rsp)
  mov    (%rax),%rcx
  mov    0x8(%rax),%rdx
  add    $0x10,%rax
  mov    %rax,-0x28(%rsp)
  test   %r15d,%r15d
  je     L210
  lea    0x8(%rbp),%rax
  cmp    %rax,%rdx
  setne  %al
  cmp    $0x1,%r15d
  setne  %sil
  and    %esi,%eax
  lea    0xf(%rbp),%rsi
  sub    %rcx,%rsi
  cmp    $0x1e,%rsi
  seta   %sil
  test   %sil,%al
  je     L216
  lea    0xf(%rcx),%rax
  sub    %rdx,%rax
  cmp    $0x1e,%rax
  jbe    L216
  mov    -0xc(%rsp),%r8d
  xor    %eax,%eax
  shr    $0x4,%r8d
  mov    %r8d,%esi
  shl    $0x4,%rsi
  nopl   0x0(%rax)
L25:
  movdqu (%rcx,%rax,1),%xmm0
  movdqu 0x0(%rbp,%rax,1),%xmm3
  pxor   %xmm3,%xmm0
  movups %xmm0,(%rcx,%rax,1)
  movdqu (%rdx,%rax,1),%xmm0
  movdqu 0x0(%rbp,%rax,1),%xmm4
  pxor   %xmm4,%xmm0
  movups %xmm0,(%rdx,%rax,1)
  add    $0x10,%rax
  cmp    %rax,%rsi
  jne    L25
  lea    (%r8,%r8,1),%esi
  mov    %r15d,%eax
  mov    %rsi,%r8
  shl    $0x3,%rsi
  lea    (%rcx,%rsi,1),%r9
  lea    (%rdx,%rsi,1),%rdi
  add    %rbp,%rsi
  cmp    %r8d,%r15d
  je     L123
  mov    (%rsi),%r8
  xor    %r8,(%r9)
  mov    (%rsi),%rsi
  xor    %rsi,(%rdi)
L123:
  shl    $0x3,%rax
  add    %rax,%rcx
  add    %rax,%rdx
  add    %rbp,%rax
L73:
  lea    (%r15,%r15,1),%esi
  cmp    -0x20(%rsp),%esi
  jae    L456
  mov    (%rax),%esi
  add    $0x4,%rax
  xor    %esi,(%rcx)
  add    $0x8,%rcx
  mov    -0x4(%rax),%esi
  xor    %esi,(%rdx)
  add    $0x8,%rdx
L456:
  mov    -0x2c(%rsp),%esi
  test   %esi,%esi
  jne    L303
L369:
  mov    -0x10(%rsp),%eax
  test   %eax,%eax
  je     L423
  mov    -0x28(%rsp),%rax
  mov    (%rax),%rdx
  test   %r15d,%r15d
  je     L350
  lea    0x8(%rbp),%rax
  cmp    %rax,%rdx
  je     L18
  lea    -0x1(%r15),%eax
  cmp    $0x1,%eax
  jbe    L18
  mov    -0xc(%rsp),%ecx
  xor    %eax,%eax
  shr    $0x4,%ecx
  mov    %ecx,%esi
  shl    $0x4,%rsi
  nopl   0x0(%rax,%rax,1)
L342:
  movdqu 0x0(%rbp,%rax,1),%xmm0
  movdqu (%rdx,%rax,1),%xmm5
  pxor   %xmm5,%xmm0
  movups %xmm0,(%rdx,%rax,1)
  add    $0x10,%rax
  cmp    %rsi,%rax
  jne    L342
  lea    (%rcx,%rcx,1),%edi
  mov    %r15d,%eax
  mov    %rdi,%rcx
  shl    $0x3,%rdi
  lea    (%rdx,%rdi,1),%rsi
  add    %rbp,%rdi
  cmp    %r15d,%ecx
  je     L464
  mov    (%rdi),%rcx
  xor    %rcx,(%rsi)
L464:
  shl    $0x3,%rax
  add    %rax,%rdx
  add    %rax,%rbp
L350:
  add    %r15d,%r15d
  cmp    -0x20(%rsp),%r15d
  jae    L418
  mov    0x0(%rbp),%eax
  add    $0x4,%rbp
  xor    %eax,(%rdx)
  add    $0x4,%rdx
L418:
  mov    -0x2c(%rsp),%ebx
  test   %ebx,%ebx
  je     L423
  movzbl 0x0(%rbp),%eax
  xor    %al,(%rdx)
  cmp    $0x1,%ebx
  je     L423
  movzbl 0x1(%rbp),%eax
  xor    %al,0x1(%rdx)
  cmp    $0x3,%ebx
  jne    L423
  movzbl 0x2(%rbp),%eax
  xor    %al,0x2(%rdx)
L423:
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
  nopl   (%rax)
L469:
  mov    -0x2c(%rsp),%r13d
  movzbl (%rax),%edx
  xor    %dl,(%rbx)
  movzbl (%rax),%edx
  xor    %dl,(%r11)
  movzbl (%rax),%edx
  xor    %dl,(%r10)
  movzbl (%rax),%edx
  xor    %dl,(%r9)
  movzbl (%rax),%edx
  xor    %dl,(%r8)
  movzbl (%rax),%edx
  xor    %dl,(%rdi)
  movzbl (%rax),%edx
  xor    %dl,(%rsi)
  movzbl (%rax),%edx
  xor    %dl,(%rcx)
  cmp    $0x1,%r13d
  je     L175
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%rbx)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%r11)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%r10)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%r9)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%r8)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%rdi)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%rsi)
  movzbl 0x1(%rax),%edx
  xor    %dl,0x1(%rcx)
  cmp    $0x3,%r13d
  jne    L175
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%rbx)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%r11)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%r10)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%r9)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%r8)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%rdi)
  movzbl 0x2(%rax),%edx
  xor    %dl,0x2(%rsi)
  movzbl 0x2(%rax),%eax
  xor    %al,0x2(%rcx)
  jmp    L175
  nopw   0x0(%rax,%rax,1)
L136:
  mov    %rbp,%rax
  jmp    L167
L303:
  mov    -0x2c(%rsp),%edi
  movzbl (%rax),%esi
  xor    %sil,(%rcx)
  movzbl (%rax),%esi
  xor    %sil,(%rdx)
  cmp    $0x1,%edi
  je     L369
  movzbl 0x1(%rax),%esi
  xor    %sil,0x1(%rcx)
  movzbl 0x1(%rax),%esi
  xor    %sil,0x1(%rdx)
  cmp    $0x3,%edi
  jne    L369
  movzbl 0x2(%rax),%esi
  xor    %sil,0x2(%rcx)
  movzbl 0x2(%rax),%eax
  xor    %al,0x2(%rdx)
  jmp    L369
L77:
  mov    -0x2c(%rsp),%ebx
  movzbl (%rax),%r8d
  xor    %r8b,(%rdi)
  movzbl (%rax),%r8d
  xor    %r8b,(%rsi)
  movzbl (%rax),%r8d
  xor    %r8b,(%rcx)
  movzbl (%rax),%r8d
  xor    %r8b,(%rdx)
  cmp    $0x1,%ebx
  je     L274
  movzbl 0x1(%rax),%r8d
  xor    %r8b,0x1(%rdi)
  movzbl 0x1(%rax),%r8d
  xor    %r8b,0x1(%rsi)
  movzbl 0x1(%rax),%r8d
  xor    %r8b,0x1(%rcx)
  movzbl 0x1(%rax),%r8d
  xor    %r8b,0x1(%rdx)
  cmp    $0x3,%ebx
  jne    L274
  movzbl 0x2(%rax),%r8d
  xor    %r8b,0x2(%rdi)
  movzbl 0x2(%rax),%edi
  xor    %dil,0x2(%rsi)
  movzbl 0x2(%rax),%esi
  xor    %sil,0x2(%rcx)
  movzbl 0x2(%rax),%eax
  xor    %al,0x2(%rdx)
  jmp    L274
L18:
  mov    %r15d,%eax
  xor    %ecx,%ecx
  xchg   %ax,%ax
L334:
  mov    0x0(%rbp,%rcx,8),%rsi
  xor    %rsi,(%rdx,%rcx,8)
  add    $0x1,%rcx
  cmp    %rax,%rcx
  jne    L334
  jmp    L464
L216:
  mov    %r15d,%eax
  xor    %esi,%esi
  nopl   0x0(%rax)
L205:
  mov    0x0(%rbp,%rsi,8),%rdi
  xor    %rdi,(%rcx,%rsi,8)
  mov    0x0(%rbp,%rsi,8),%rdi
  xor    %rdi,(%rdx,%rsi,8)
  add    $0x1,%rsi
  cmp    %rsi,%rax
  jne    L205
  jmp    L123
L48:
  mov    %r15d,%eax
  xor    %r8d,%r8d
  cs nopw 0x0(%rax,%rax,1)
L420:
  mov    0x0(%rbp,%r8,8),%r9
  xor    %r9,(%rdi,%r8,8)
  xor    %r9,(%rsi,%r8,8)
  xor    %r9,(%rcx,%r8,8)
  xor    %r9,(%rdx,%r8,8)
  add    $0x1,%r8
  cmp    %r8,%rax
  jne    L420
  jmp    L258
L218:
  mov    %rdi,-0x28(%rsp)
  jmp    L376
L319:
  mov    %rbp,%rax
  jmp    L307
L210:
  mov    %rbp,%rax
  jmp    L73
```

assistant: ```c
void of_add_to_multiple_symbols(void **to, const void *from, unsigned int to_size, unsigned int symbol_size) {
  unsigned int i;
  unsigned int symbolSize32;
  unsigned int symbolSize32rem;
  symbolSize32 = symbol_size >> 2;
  symbolSize32rem = symbol_size % 4;
  unsigned int symbolSize64;
  symbolSize64 = symbol_size >> 3;
  unsigned long long *pt1, *pt2, *pt3, *pt4, *pt5, *pt6, *pt7, *pt8, *from_s, from_value;
  while (to_size >= 8) {
    from_s = (unsigned long long *)from;
    pt1 = (unsigned long long *)to[0];
    pt2 = (unsigned long long *)to[1];
    pt3 = (unsigned long long *)to[2];
    pt4 = (unsigned long long *)to[3];
    pt5 = (unsigned long long *)to[4];
    pt6 = (unsigned long long *)to[5];
    pt7 = (unsigned long long *)to[6];
    pt8 = (unsigned long long *)to[7];
    to += 8;
    to_size -= 8;
    for (i = symbolSize64; i > 0; i--) {
      from_value = *from_s;
      *pt1 ^= from_value;
      *pt2 ^= from_value;
      *pt3 ^= from_value;
      *pt4 ^= from_value;
      *pt5 ^= from_value;
      *pt6 ^= from_value;
      *pt7 ^= from_value;
      *pt8 ^= from_value;
      from_s++;
      pt1++;
      pt2++;
      pt3++;
      pt4++;
      pt5++;
      pt6++;
      pt7++;
      pt8++;
    }
    unsigned int *from_s32 = (unsigned int *)from_s;
    from_s32 = (unsigned int *)from_s;
    if ((symbolSize64 << 1) < symbolSize32) {
      (*(unsigned int *)pt1++) ^= *from_s32;
      (*(unsigned int *)pt2++) ^= *from_s32;
      (*(unsigned int *)pt3++) ^= *from_s32;
      (*(unsigned int *)pt4++) ^= *from_s32;
      (*(unsigned int *)pt5++) ^= *from_s32;
      (*(unsigned int *)pt6++) ^= *from_s32;
      (*(unsigned int *)pt7++) ^= *from_s32;
      (*(unsigned int *)pt8++) ^= *from_s32;
      from_s32++;
    }
    if (symbolSize32rem > 0) {
      unsigned char *s8;
      for (i = 0; i < symbolSize32rem; i++) {
        s8 = ((unsigned char *)from_s32 + i);
        (*(unsigned char *)((unsigned char *)pt1 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt2 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt3 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt4 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt5 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt6 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt7 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt8 + i)) ^= *(unsigned char *)s8;
      }
    }
  }
  while (to_size >= 4) {
    unsigned int *from_s32;
    from_s = (unsigned long long *)from;
    pt1 = (unsigned long long *)to[0];
    pt2 = (unsigned long long *)to[1];
    pt3 = (unsigned long long *)to[2];
    pt4 = (unsigned long long *)to[3];
    to += 4;
    to_size -= 4;
    for (i = symbolSize64; i > 0; i--) {
      from_value = *from_s;
      *pt1 ^= from_value;
      *pt2 ^= from_value;
      *pt3 ^= from_value;
      *pt4 ^= from_value;
      from_s++;
      pt1++;
      pt2++;
      pt3++;
      pt4++;
    }
    from_s32 = (unsigned int *)from_s;
    if ((symbolSize64 << 1) < symbolSize32) {
      (*(unsigned int *)pt1++) ^= *from_s32;
      (*(unsigned int *)pt2++) ^= *from_s32;
      (*(unsigned int *)pt3++) ^= *from_s32;
      (*(unsigned int *)pt4++) ^= *from_s32;
      from_s32++;
    }
    if (symbolSize32rem > 0) {
      unsigned char *s8;
      for (i = 0; i < symbolSize32rem; i++) {
        s8 = ((unsigned char *)from_s32 + i);
        (*(unsigned char *)((unsigned char *)pt1 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt2 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt3 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt4 + i)) ^= *(unsigned char *)s8;
      }
    }
  }
  while (to_size >= 2) {
    unsigned int *from_s32;
    from_s = (unsigned long long *)from;
    pt1 = (unsigned long long *)to[0];
    pt2 = (unsigned long long *)to[1];
    to += 2;
    to_size -= 2;
    for (i = symbolSize64; i > 0; i--) {
      *pt1 ^= *from_s;
      *pt2 ^= *from_s;
      from_s++;
      pt1++;
      pt2++;
    }
    from_s32 = (unsigned int *)from_s;
    if ((symbolSize64 << 1) < symbolSize32) {
      (*(unsigned int *)pt1++) ^= *from_s32;
      (*(unsigned int *)pt2++) ^= *from_s32;
      from_s32++;
    }
    if (symbolSize32rem > 0) {
      unsigned char *s8;
      for (i = 0; i < symbolSize32rem; i++) {
        s8 = ((unsigned char *)from_s32 + i);
        (*(unsigned char *)((unsigned char *)pt1 + i)) ^= *(unsigned char *)s8;
        (*(unsigned char *)((unsigned char *)pt2 + i)) ^= *(unsigned char *)s8;
      }
    }
  }
  if (to_size == 0)
    return;
  unsigned long long *t = (unsigned long long *)to[0];
  unsigned long long *f = (unsigned long long *)from;
  for (i = symbolSize64; i > 0; i--) {
    *t ^= *f;
    t++;
    f++;
  }
  unsigned int *t32 = (unsigned int *)t;
  unsigned int *f32 = (unsigned int *)f;
  if ((symbolSize64 << 1) < symbolSize32) {
    *(unsigned int *)t32 ^= *(unsigned int *)f32;
    t32++;
    f32++;
  }
  if (symbolSize32rem > 0) {
    for (i = 0; i < symbolSize32rem; i++) {
      *(unsigned char *)((unsigned char *)t32 + i) ^= *(unsigned char *)((unsigned char *)f32 + i);
    }
  }
}
```