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

```asm
<effect_intro>:
  endbr64
  push   %r12
  push   %rbp
  push   %rbx
  mov    $0x0,%ebx
L138:
  mov    %ebx,%r9d
  mov    $0x7,%r8d
  mov    $0x7,%ecx
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <box_wireframe@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L138
  mov    $0x0,%ebx
L278:
  mov    %ebx,%edi
  call   <clrplane_z@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x7,%ebx
  jne    L278
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L40:
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L40
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L46:
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L46
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L275:
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L275
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L257:
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L257
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L118:
  mov    $0x2,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L118
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x6,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L56:
  mov    $0x1,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L56
  mov    $0x2,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x2,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0xffffffff,%esi
  mov    $0x2,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L13:
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L13
  mov    $0x1,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x1,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x2,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x2,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x3,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x4,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x5,%edx
  mov    $0x0,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  mov    $0x0,%ebx
L112:
  mov    $0x7,%r9d
  mov    %ebx,%r8d
  mov    $0x7,%ecx
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <box_wireframe@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L112
  mov    $0x0,%ebx
L130:
  mov    %ebx,%edi
  call   <clrplane_y@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x7,%ebx
  jne    L130
  mov    $0x6,%ebp
  jmp    L104
L11:
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  sub    $0x1,%ebp
  cmp    $0xffffffff,%ebp
  je     L3
L104:
  mov    $0xffffffff,%esi
  mov    $0x3,%edi
  call   <shift@plt>
  mov    $0x0,%ebx
L246:
  mov    $0x0,%edx
  mov    %ebp,%esi
  mov    %ebx,%edi
  call   <setvoxel@plt>
  add    $0x1,%ebx
  cmp    $0x8,%ebx
  jne    L246
  cmp    $0x5,%ebp
  jg     L11
  mov    $0x6,%ebx
L127:
  mov    $0x0,%edx
  mov    %ebx,%esi
  mov    $0x0,%edi
  call   <setvoxel@plt>
  mov    $0x0,%edx
  mov    %ebx,%esi
  mov    $0x7,%edi
  call   <setvoxel@plt>
  sub    $0x1,%ebx
  cmp    %ebp,%ebx
  jne    L127
  jmp    L11
L3:
  mov    $0x0,%ebx
L160:
  mov    $0x0,%edi
  call   <fill@plt>
  mov    %ebx,%r9d
  mov    $0x7,%r8d
  mov    $0x7,%ecx
  mov    $0x0,%edx
  mov    $0x0,%esi
  mov    $0x0,%edi
  call   <box_walls@plt>
  mov    $0x12c,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x7,%ebx
  jne    L160
  mov    $0x1f4,%ebp
  mov    $0x7,%r12d
  jmp    L141
L178:
  cmp    $0x7d,%ebp
  je     L54
L141:
  sub    $0x4b,%ebp
  mov    $0x0,%ebx
L192:
  mov    $0x0,%edi
  call   <fill@plt>
  mov    %r12d,%ecx
  sub    %ebx,%ecx
  mov    %ecx,%r9d
  mov    %ecx,%r8d
  mov    %ebx,%edx
  mov    %ebx,%esi
  mov    %ebx,%edi
  call   <box_walls@plt>
  mov    %ebp,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x4,%ebx
  jne    L192
  mov    $0x3,%ebx
L242:
  mov    $0x0,%edi
  call   <fill@plt>
  mov    %r12d,%ecx
  sub    %ebx,%ecx
  mov    %ecx,%r9d
  mov    %ecx,%r8d
  mov    %ebx,%edx
  mov    %ebx,%esi
  mov    %ebx,%edi
  call   <box_walls@plt>
  mov    %ebp,%edi
  call   <delay_ms@plt>
  sub    $0x1,%ebx
  cmp    $0xffffffff,%ebx
  jne    L242
  jmp    L178
L54:
  mov    $0x7,%r12d
  jmp    L148
L26:
  cmp    $0x1f4,%ebp
  je     L109
L148:
  add    $0x4b,%ebp
  mov    $0x0,%ebx
L60:
  mov    $0x0,%edi
  call   <fill@plt>
  mov    %r12d,%ecx
  sub    %ebx,%ecx
  mov    %ecx,%r9d
  mov    %ecx,%r8d
  mov    %ebx,%edx
  mov    %ebx,%esi
  mov    %ebx,%edi
  call   <box_walls@plt>
  mov    %ebp,%edi
  call   <delay_ms@plt>
  add    $0x1,%ebx
  cmp    $0x4,%ebx
  jne    L60
  mov    $0x3,%ebx
L16:
  mov    $0x0,%edi
  call   <fill@plt>
  mov    %r12d,%ecx
  sub    %ebx,%ecx
  mov    %ecx,%r9d
  mov    %ecx,%r8d
  mov    %ebx,%edx
  mov    %ebx,%esi
  mov    %ebx,%edi
  call   <box_walls@plt>
  mov    %ebp,%edi
  call   <delay_ms@plt>
  sub    $0x1,%ebx
  cmp    $0xffffffff,%ebx
  jne    L16
  jmp    L26
L109:
  mov    $0x1f4,%edi
  call   <delay_ms@plt>
  pop    %rbx
  pop    %rbp
  pop    %r12
  ret
```

assistant: ```c
void effect_intro() {
  int cnt, cnt_2, time;
  for (cnt = 0; cnt <= 7; cnt++) {
    box_wireframe(0, 0, 0, 7, 7, cnt);
    delay_ms(300);
  }
  for (cnt = 0; cnt < 7; cnt++) {
    clrplane_z(cnt);
    delay_ms(300);
  }
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 6);
  }
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 5);
  }
  setvoxel(0, 0, 6);
  setvoxel(7, 0, 6);
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 4);
  }
  setvoxel(0, 0, 5);
  setvoxel(7, 0, 5);
  setvoxel(0, 0, 6);
  setvoxel(7, 0, 6);
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 3);
  }
  setvoxel(0, 0, 4);
  setvoxel(7, 0, 4);
  setvoxel(0, 0, 5);
  setvoxel(7, 0, 5);
  setvoxel(0, 0, 6);
  setvoxel(7, 0, 6);
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 2);
  }
  setvoxel(0, 0, 3);
  setvoxel(7, 0, 3);
  setvoxel(0, 0, 4);
  setvoxel(7, 0, 4);
  setvoxel(0, 0, 5);
  setvoxel(7, 0, 5);
  setvoxel(0, 0, 6);
  setvoxel(7, 0, 6);
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 1);
  }
  setvoxel(0, 0, 2);
  setvoxel(7, 0, 2);
  setvoxel(0, 0, 3);
  setvoxel(7, 0, 3);
  setvoxel(0, 0, 4);
  setvoxel(7, 0, 4);
  setvoxel(0, 0, 5);
  setvoxel(7, 0, 5);
  delay_ms(300);
  shift(2, -1);
  for (cnt = 0; cnt <= 7; cnt++) {
    setvoxel(cnt, 0, 0);
  }
  setvoxel(0, 0, 1);
  setvoxel(7, 0, 1);
  setvoxel(0, 0, 2);
  setvoxel(7, 0, 2);
  setvoxel(0, 0, 3);
  setvoxel(7, 0, 3);
  setvoxel(0, 0, 4);
  setvoxel(7, 0, 4);
  setvoxel(0, 0, 5);
  setvoxel(7, 0, 5);
  delay_ms(300);
  for (cnt = 0; cnt <= 7; cnt++) {
    box_wireframe(0, 0, 0, 7, cnt, 7);
    delay_ms(300);
  }
  for (cnt = 0; cnt < 7; cnt++) {
    clrplane_y(cnt);
    delay_ms(300);
  }
  for (cnt_2 = 6; cnt_2 >= 0; cnt_2--) {
    shift(3, -1);
    for (cnt = 0; cnt <= 7; cnt++) {
      setvoxel(cnt, cnt_2, 0);
    }
    for (cnt = 6; cnt > cnt_2; cnt--) {
      setvoxel(0, cnt, 0);
      setvoxel(7, cnt, 0);
    }
    delay_ms(300);
  }
  for (cnt = 0; cnt <= 6; cnt++) {
    fill(0x00);
    box_walls(0, 0, 0, 7, 7, cnt);
    delay_ms(300);
  }
  time = 500;
  for (cnt_2 = 0; cnt_2 < 5; cnt_2++) {
    time -= 75;
    for (cnt = 0; cnt <= 3; cnt++) {
      fill(0x00);
      box_walls(cnt, cnt, cnt, 7 - cnt, 7 - cnt, 7 - cnt);
      delay_ms(time);
    }
    for (cnt = 0; cnt <= 3; cnt++) {
      fill(0x00);
      box_walls(3 - cnt, 3 - cnt, 3 - cnt, 4 + cnt, 4 + cnt, 4 + cnt);
      delay_ms(time);
    }
  }
  for (cnt_2 = 0; cnt_2 < 5; cnt_2++) {
    time += 75;
    for (cnt = 0; cnt <= 3; cnt++) {
      fill(0x00);
      box_walls(cnt, cnt, cnt, 7 - cnt, 7 - cnt, 7 - cnt);
      delay_ms(time);
    }
    for (cnt = 0; cnt <= 3; cnt++) {
      fill(0x00);
      box_walls(3 - cnt, 3 - cnt, 3 - cnt, 4 + cnt, 4 + cnt, 4 + cnt);
      delay_ms(time);
    }
  }
  delay_ms(500);
}
```