user: 这段汇编代码用C语言表示是什么样的?

```asm
<print_command>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x30,%rsp
  mov    %rdi,-0x18(%rbp)
  mov    %esi,-0x1c(%rbp)
  mov    %edx,-0x20(%rbp)
  mov    %ecx,-0x24(%rbp)
  cmpl   $0x0,-0x1c(%rbp)
  jle    L153
  mov    -0x1c(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D939(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L496
L153:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  lea    D728(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
L496:
  mov    -0x24(%rbp),%ecx
  mov    -0x20(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D674(%rip),%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  cmpl   $0x1c8,-0x24(%rbp)
  je     L418
  cmpl   $0x1c8,-0x24(%rbp)
  jg     L349
  cmpl   $0x1c4,-0x24(%rbp)
  je     L126
  cmpl   $0x1c4,-0x24(%rbp)
  jg     L349
  cmpl   $0x1c2,-0x24(%rbp)
  je     L916
  cmpl   $0x1c2,-0x24(%rbp)
  jg     L349
  cmpl   $0x1c1,-0x24(%rbp)
  je     L913
  cmpl   $0x1c1,-0x24(%rbp)
  jg     L349
  cmpl   $0x188,-0x24(%rbp)
  je     L724
  cmpl   $0x188,-0x24(%rbp)
  jg     L349
  cmpl   $0x184,-0x24(%rbp)
  je     L1036
  cmpl   $0x184,-0x24(%rbp)
  jg     L349
  cmpl   $0x182,-0x24(%rbp)
  je     L200
  cmpl   $0x182,-0x24(%rbp)
  jg     L349
  cmpl   $0xf,-0x24(%rbp)
  jg     L834
  cmpl   $0x0,-0x24(%rbp)
  js     L349
  cmpl   $0xf,-0x24(%rbp)
  ja     L349
  mov    -0x24(%rbp),%eax
  lea    0x0(,%rax,4),%rdx
  lea    D669(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D669(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
L834:
  cmpl   $0x181,-0x24(%rbp)
  je     L673
  jmp    L349
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D264(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D350(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D262(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D259(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D470(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D127(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D702(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D98(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D590(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D925(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D225(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x6,%edx
  mov    $0x1,%esi
  lea    D84(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x6,%edx
  mov    $0x1,%esi
  lea    D602(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L673:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D574(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L200:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D193(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L1036:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D748(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L724:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D955(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L913:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D869(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L916:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D152(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L126:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D297(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L418:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D88(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  jmp    L18
L349:
  mov    -0x24(%rbp),%eax
  sar    $0x4,%eax
  cmp    $0x401,%eax
  jg     L848
  cmp    $0x400,%eax
  jge    L403
  cmp    $0x303,%eax
  jg     L848
  cmp    $0x302,%eax
  jge    L575
  cmp    $0x1c,%eax
  jg     L1037
  test   %eax,%eax
  jle    L848
  cmp    $0x1c,%eax
  ja     L848
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  lea    D257(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D257(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
L1037:
  sub    $0x2c2,%eax
  cmp    $0x1,%eax
  ja     L848
  jmp    L326
  mov    -0x24(%rbp),%eax
  and    $0x7,%eax
  lea    0x61(%rax),%edx
  mov    -0x24(%rbp),%eax
  and    $0x8,%eax
  test   %eax,%eax
  je     L16
  lea    D356(%rip),%rax
  jmp    L360
L16:
  lea    D424(%rip),%rax
L360:
  mov    -0x18(%rbp),%rdi
  mov    %edx,%ecx
  mov    %rax,%rdx
  lea    D484(%rip),%rax
  mov    %rax,%rsi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
  lea    D444(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D585(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D224(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D631(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D720(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D721(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D805(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D103(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D533(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
  lea    D8(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
L326:
  lea    D233(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
L575:
  lea    D22(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L922
L403:
  lea    D750(%rip),%rax
  mov    %rax,-0x8(%rbp)
  nop
L922:
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D788(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  jmp    L18
  lea    D67(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L314
  lea    D647(%rip),%rax
  mov    %rax,-0x8(%rbp)
L314:
  mov    -0x24(%rbp),%eax
  and    $0xf,%eax
  mov    %eax,%ecx
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D744(%rip),%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
L848:
  mov    -0x24(%rbp),%eax
  sar    $0xc,%eax
  sub    $0x4,%eax
  cmp    $0xb,%eax
  ja     L47
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  lea    D831(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D831(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
  lea    D310(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L986
  lea    D656(%rip),%rax
  mov    %rax,-0x8(%rbp)
L986:
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D788(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0xff,%eax
  mov    %eax,-0xc(%rbp)
  cmpl   $0x9,-0xc(%rbp)
  jle    L609
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D11(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
L609:
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D391(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
  lea    D929(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D794(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D578(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D229(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D289(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D506(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D430(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L527
  lea    D790(%rip),%rax
  mov    %rax,-0x8(%rbp)
L527:
  mov    -0x18(%rbp),%rdx
  mov    -0x8(%rbp),%rax
  mov    %rdx,%rsi
  mov    %rax,%rdi
  call   <fputs@plt>
  mov    -0x24(%rbp),%eax
  and    $0xfff,%eax
  mov    %eax,-0xc(%rbp)
  cmpl   $0x9,-0xc(%rbp)
  jle    L1005
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D898(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L845
L1005:
  cmpl   $0x0,-0xc(%rbp)
  je     L845
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D443(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L845
L47:
  mov    -0x24(%rbp),%eax
  sar    $0x8,%eax
  cmp    $0x3f,%eax
  ja     L189
  mov    %eax,%eax
  lea    0x0(,%rax,4),%rdx
  lea    D727(%rip),%rax
  mov    (%rdx,%rax,1),%eax
  cltq
  lea    D727(%rip),%rdx
  add    %rdx,%rax
  notrack jmp *%rax
  lea    D467(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D793(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D24(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D824(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D586(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D535(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L1113
  lea    D630(%rip),%rax
  mov    %rax,-0x8(%rbp)
L1113:
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D788(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  lea    D260(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  jmp    L18
  lea    D850(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D457(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D930(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D151(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D218(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D235(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D742(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L406
  lea    D547(%rip),%rax
  mov    %rax,-0x8(%rbp)
L406:
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D788(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0xf,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  lea    D11(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
  lea    D545(%rip),%rax
  mov    %rax,-0x8(%rbp)
  jmp    L713
  lea    D357(%rip),%rax
  mov    %rax,-0x8(%rbp)
L713:
  mov    -0x8(%rbp),%rdx
  mov    -0x18(%rbp),%rax
  lea    D788(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  lea    D11(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
  mov    -0x24(%rbp),%eax
  and    $0x7,%eax
  lea    0x61(%rax),%edx
  mov    -0x18(%rbp),%rax
  lea    D1(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x3,%eax
  and    $0xff,%eax
  mov    %eax,-0xc(%rbp)
  cmpl   $0x9,-0xc(%rbp)
  jle    L833
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D394(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
L833:
  mov    -0xc(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D399(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0x7,%eax
  lea    0x61(%rax),%edx
  mov    -0x18(%rbp),%rax
  lea    D626(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  jmp    L18
  mov    -0x18(%rbp),%rax
  mov    %rax,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  lea    D935(%rip),%rax
  mov    %rax,%rdi
  call   <fwrite@plt>
  mov    -0x24(%rbp),%eax
  and    $0x1f,%eax
  mov    %eax,%edx
  mov    -0x18(%rbp),%rax
  mov    %edx,%esi
  mov    %rax,%rdi
  call   <print_reg@plt>
  mov    -0x24(%rbp),%eax
  sar    $0x5,%eax
  and    $0x7,%eax
  lea    0x61(%rax),%edx
  mov    -0x18(%rbp),%rax
  lea    D763(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
L189:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rsi
  mov    $0x3f,%edi
  call   <fputc@plt>
  cmpl   $0x1f,-0x24(%rbp)
  jle    L850
  cmpl   $0x7e,-0x24(%rbp)
  jg     L850
  mov    -0x24(%rbp),%edx
  mov    -0x18(%rbp),%rax
  lea    D27(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <fprintf@plt>
  jmp    L18
L845:
  nop
  jmp    L18
L850:
  nop
L18:
  mov    -0x18(%rbp),%rax
  mov    %rax,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  nop
  leave
  ret
```

tool_calls: name: unpack_data
arguments: data_tag: D939
type_guessed: string
name: unpack_data
arguments: data_tag: D728
type_guessed: string
name: unpack_data
arguments: data_tag: D674
type_guessed: string
name: unpack_data
arguments: data_tag: D264
type_guessed: string
name: unpack_data
arguments: data_tag: D350
type_guessed: string
name: unpack_data
arguments: data_tag: D262
type_guessed: string
name: unpack_data
arguments: data_tag: D259
type_guessed: string
name: unpack_data
arguments: data_tag: D470
type_guessed: string
name: unpack_data
arguments: data_tag: D127
type_guessed: string
name: unpack_data
arguments: data_tag: D702
type_guessed: string
name: unpack_data
arguments: data_tag: D98
type_guessed: string
name: unpack_data
arguments: data_tag: D590
type_guessed: string
name: unpack_data
arguments: data_tag: D925
type_guessed: string
name: unpack_data
arguments: data_tag: D225
type_guessed: string
name: unpack_data
arguments: data_tag: D84
type_guessed: string
name: unpack_data
arguments: data_tag: D602
type_guessed: string
name: unpack_data
arguments: data_tag: D574
type_guessed: string
name: unpack_data
arguments: data_tag: D193
type_guessed: string
name: unpack_data
arguments: data_tag: D748
type_guessed: string
name: unpack_data
arguments: data_tag: D955
type_guessed: string
name: unpack_data
arguments: data_tag: D869
type_guessed: string
name: unpack_data
arguments: data_tag: D152
type_guessed: string
name: unpack_data
arguments: data_tag: D297
type_guessed: string
name: unpack_data
arguments: data_tag: D88
type_guessed: string
name: unpack_data
arguments: data_tag: D356
type_guessed: string
name: unpack_data
arguments: data_tag: D424
type_guessed: string
name: unpack_data
arguments: data_tag: D484
type_guessed: string
name: unpack_data
arguments: data_tag: D444
type_guessed: string
name: unpack_data
arguments: data_tag: D585
type_guessed: string
name: unpack_data
arguments: data_tag: D224
type_guessed: string
name: unpack_data
arguments: data_tag: D631
type_guessed: string
name: unpack_data
arguments: data_tag: D720
type_guessed: string
name: unpack_data
arguments: data_tag: D721
type_guessed: string
name: unpack_data
arguments: data_tag: D805
type_guessed: string
name: unpack_data
arguments: data_tag: D103
type_guessed: string
name: unpack_data
arguments: data_tag: D533
type_guessed: string
name: unpack_data
arguments: data_tag: D8
type_guessed: string
name: unpack_data
arguments: data_tag: D233
type_guessed: string
name: unpack_data
arguments: data_tag: D22
type_guessed: string
name: unpack_data
arguments: data_tag: D750
type_guessed: string
name: unpack_data
arguments: data_tag: D788
type_guessed: string
name: unpack_data
arguments: data_tag: D67
type_guessed: string
name: unpack_data
arguments: data_tag: D647
type_guessed: string
name: unpack_data
arguments: data_tag: D744
type_guessed: string
name: unpack_data
arguments: data_tag: D310
type_guessed: string
name: unpack_data
arguments: data_tag: D656
type_guessed: string
name: unpack_data
arguments: data_tag: D11
type_guessed: string
name: unpack_data
arguments: data_tag: D391
type_guessed: string
name: unpack_data
arguments: data_tag: D929
type_guessed: string
name: unpack_data
arguments: data_tag: D794
type_guessed: string
name: unpack_data
arguments: data_tag: D578
type_guessed: string
name: unpack_data
arguments: data_tag: D229
type_guessed: string
name: unpack_data
arguments: data_tag: D289
type_guessed: string
name: unpack_data
arguments: data_tag: D506
type_guessed: string
name: unpack_data
arguments: data_tag: D430
type_guessed: string
name: unpack_data
arguments: data_tag: D790
type_guessed: string
name: unpack_data
arguments: data_tag: D898
type_guessed: string
name: unpack_data
arguments: data_tag: D443
type_guessed: string
name: unpack_data
arguments: data_tag: D467
type_guessed: string
name: unpack_data
arguments: data_tag: D793
type_guessed: string
name: unpack_data
arguments: data_tag: D24
type_guessed: string
name: unpack_data
arguments: data_tag: D824
type_guessed: string
name: unpack_data
arguments: data_tag: D586
type_guessed: string
name: unpack_data
arguments: data_tag: D535
type_guessed: string
name: unpack_data
arguments: data_tag: D630
type_guessed: string
name: unpack_data
arguments: data_tag: D260
type_guessed: string
name: unpack_data
arguments: data_tag: D850
type_guessed: string
name: unpack_data
arguments: data_tag: D457
type_guessed: string
name: unpack_data
arguments: data_tag: D930
type_guessed: string
name: unpack_data
arguments: data_tag: D151
type_guessed: string
name: unpack_data
arguments: data_tag: D218
type_guessed: string
name: unpack_data
arguments: data_tag: D235
type_guessed: string
name: unpack_data
arguments: data_tag: D742
type_guessed: string
name: unpack_data
arguments: data_tag: D547
type_guessed: string
name: unpack_data
arguments: data_tag: D545
type_guessed: string
name: unpack_data
arguments: data_tag: D357
type_guessed: string
name: unpack_data
arguments: data_tag: D1
type_guessed: string
name: unpack_data
arguments: data_tag: D394
type_guessed: string
name: unpack_data
arguments: data_tag: D399
type_guessed: string
name: unpack_data
arguments: data_tag: D626
type_guessed: string
name: unpack_data
arguments: data_tag: D935
type_guessed: string
name: unpack_data
arguments: data_tag: D763
type_guessed: string
name: unpack_data
arguments: data_tag: D27
type_guessed: string

tool: D939:  %4d

tool: D728:      

tool: D674:  %04x %04x			

tool: D264: nop

tool: D350: wait

tool: D262: rst

tool: D259: ijmp

tool: D470: tof

tool: D127: tdc

tool: D702: sksp

tool: D98: ijsr

tool: D590: slp

tool: D925: rts

tool: D225: rti

tool: D84: rtsc	0

tool: D602: rtsc	1

tool: D574: stc

tool: D193: stz

tool: D748: stn

tool: D955: stie

tool: D869: clc

tool: D152: clz

tool: D297: cln

tool: D88: clie

tool: D356: pop

tool: D424: push

tool: D484: %s	#%c

tool: D444: swap

tool: D585: neg

tool: D224: not

tool: D631: shl

tool: D720: shr

tool: D721: shra

tool: D805: rlc

tool: D103: rrc

tool: D533: adc

tool: D8: sbc

tool: D233: dec

tool: D22: inc

tool: D750: clr

tool: D788: %s	

tool: D67: sst

tool: D647: cst

tool: D744: %s	0%xh

tool: D310: movl

tool: D656: cmpl

tool: D11: , 0%xh

tool: D391: , %d

tool: D929: jmp

tool: D794: jsr

tool: D578: jz

tool: D229: jnz

tool: D289: jns

tool: D506: js

tool: D430: jnc

tool: D790: jc

tool: D898: 	0%xh

tool: D443: 	%d

tool: D467: mov

tool: D793: cmp

tool: D24: sub

tool: D824: add

tool: D586: and

tool: D535: or

tool: D630: xor

tool: D260: , 

tool: D850: bicl

tool: D457: bich

tool: D930: bttl

tool: D151: btth

tool: D218: bisl

tool: D235: bish

tool: D742: btgl

tool: D547: btgh

tool: D545: subl

tool: D357: addl

tool: D1: ldr	#%c, 

tool: D394: 0%xh

tool: D399: %d

tool: D626: mtpr	#%c, 

tool: D935: mfpr	

tool: D763: , #%c

tool: D27: 		; `%c'

assistant: ```c
void print_command(FILE *out, int line, int addr, int cmd) {
  char *m;
  int arg;
  if (line > 0)
    fprintf(out, " %4d", line);
  else
    fprintf(out, "     ");
  fprintf(out, " %04x %04x\t\t\t", addr, cmd);
  switch (cmd) {
  case 0x0000:
    fprintf(out, "nop");
    goto done;
  case 0x0001:
    fprintf(out, "wait");
    goto done;
  case 0x0002:
    fprintf(out, "rst");
    goto done;
  case 0x0003:
    fprintf(out, "ijmp");
    goto done;
  case 0x0004:
    fprintf(out, "tof");
    goto done;
  case 0x0005:
    fprintf(out, "tdc");
    goto done;
  case 0x0006:
    fprintf(out, "sksp");
    goto done;
  case 0x0007:
    fprintf(out, "ijsr");
    goto done;
  case 0x0008:
    fprintf(out, "slp");
    goto done;
  case 0x000c:
    fprintf(out, "rts");
    goto done;
  case 0x000d:
    fprintf(out, "rti");
    goto done;
  case 0x000e:
    fprintf(out, "rtsc\t0");
    goto done;
  case 0x000f:
    fprintf(out, "rtsc\t1");
    goto done;
  case 0x0181:
    fprintf(out, "stc");
    goto done;
  case 0x0182:
    fprintf(out, "stz");
    goto done;
  case 0x0184:
    fprintf(out, "stn");
    goto done;
  case 0x0188:
    fprintf(out, "stie");
    goto done;
  case 0x01c1:
    fprintf(out, "clc");
    goto done;
  case 0x01c2:
    fprintf(out, "clz");
    goto done;
  case 0x01c4:
    fprintf(out, "cln");
    goto done;
  case 0x01c8:
    fprintf(out, "clie");
    goto done;
  }
  switch (cmd >> 4) {
  case 0x001:
    fprintf(out, "%s\t#%c", (cmd & 8) ? "pop" : "push", (cmd & 7) + 'a');
    goto done;
  case 0x002:
  case 0x003:
    m = "swap";
    goto arg1op;
  case 0x004:
  case 0x005:
    m = "neg";
    goto arg1op;
  case 0x006:
  case 0x007:
    m = "not";
    goto arg1op;
  case 0x008:
  case 0x009:
    m = "shl";
    goto arg1op;
  case 0x00a:
  case 0x00b:
    m = "shr";
    goto arg1op;
  case 0x00c:
  case 0x00d:
    m = "shra";
    goto arg1op;
  case 0x00e:
  case 0x00f:
    m = "rlc";
    goto arg1op;
  case 0x010:
  case 0x011:
    m = "rrc";
    goto arg1op;
  case 0x012:
  case 0x013:
    m = "adc";
    goto arg1op;
  case 0x014:
  case 0x015:
    m = "sbc";
    goto arg1op;
  case 0x2c2:
  case 0x2c3:
    m = "dec";
    goto arg1op;
  case 0x302:
  case 0x303:
    m = "inc";
    goto arg1op;
  case 0x400:
  case 0x401:
    m = "clr";
    goto arg1op;
  arg1op:
    fprintf(out, "%s\t", m);
    print_reg(out, cmd & 0x1f);
    goto done;
  case 0x018:
    m = "sst";
    goto statusop;
  case 0x01c:
    m = "cst";
  statusop:
    fprintf(out, "%s\t0%xh", m, cmd & 0xf);
    goto done;
  }
  switch (cmd >> 12) {
  case 0x4:
  case 0x5:
    m = "movl";
    goto moveop;
  case 0x6:
  case 0x7:
    m = "cmpl";
  moveop:
    fprintf(out, "%s\t", m);
    print_reg(out, cmd & 0x1f);
    arg = (cmd >> 5) & 0xff;
    if (arg > 9)
      fprintf(out, ", 0%xh", arg);
    else
      fprintf(out, ", %d", arg);
    goto done;
  case 0x8:
    m = "jmp";
    goto jumpop;
  case 0x9:
    m = "jsr";
    goto jumpop;
  case 0xa:
    m = "jz";
    goto jumpop;
  case 0xb:
    m = "jnz";
    goto jumpop;
  case 0xc:
    m = "jns";
    goto jumpop;
  case 0xd:
    m = "js";
    goto jumpop;
  case 0xe:
    m = "jnc";
    goto jumpop;
  case 0xf:
    m = "jc";
  jumpop:
    fprintf(out, "%s", m);
    arg = cmd & 0xfff;
    if (arg > 9)
      fprintf(out, "\t0%xh", arg);
    else if (arg)
      fprintf(out, "\t%d", arg);
    goto done;
  }
  switch (cmd >> 8) {
  case 0x04:
  case 0x05:
  case 0x06:
  case 0x07:
    m = "mov";
    goto movop;
  case 0x08:
  case 0x09:
  case 0x0a:
  case 0x0b:
    m = "cmp";
    goto movop;
  case 0x0c:
  case 0x0d:
  case 0x0e:
  case 0x0f:
    m = "sub";
    goto movop;
  case 0x10:
  case 0x11:
  case 0x12:
  case 0x13:
    m = "add";
    goto movop;
  case 0x14:
  case 0x15:
  case 0x16:
  case 0x17:
    m = "and";
    goto movop;
  case 0x18:
  case 0x19:
  case 0x1a:
  case 0x1b:
    m = "or";
    goto movop;
  case 0x1c:
  case 0x1d:
  case 0x1e:
  case 0x1f:
    m = "xor";
  movop:
    fprintf(out, "%s\t", m);
    print_reg(out, cmd & 0x1f);
    fprintf(out, ", ");
    print_reg(out, cmd >> 5 & 0x1f);
    goto done;
  case 0x28:
  case 0x29:
    m = "bicl";
    goto bitop;
  case 0x2a:
  case 0x2b:
    m = "bich";
    goto bitop;
  case 0x34:
  case 0x35:
    m = "bttl";
    goto bitop;
  case 0x36:
  case 0x37:
    m = "btth";
    goto bitop;
  case 0x38:
  case 0x39:
    m = "bisl";
    goto bitop;
  case 0x3a:
  case 0x3b:
    m = "bish";
    goto bitop;
  case 0x3c:
  case 0x3d:
    m = "btgl";
    goto bitop;
  case 0x3e:
  case 0x3f:
    m = "btgh";
  bitop:
    fprintf(out, "%s\t", m);
    print_reg(out, cmd & 0x1f);
    fprintf(out, ", 0%xh", cmd >> 5 & 0xf);
    goto done;
  case 0x2c:
  case 0x2d:
  case 0x2e:
  case 0x2f:
    m = "subl";
    goto bit5op;
  case 0x30:
  case 0x31:
  case 0x32:
  case 0x33:
    m = "addl";
  bit5op:
    fprintf(out, "%s\t", m);
    print_reg(out, cmd & 0x1f);
    fprintf(out, ", 0%xh", cmd >> 5 & 0x1f);
    goto done;
  case 0x20:
  case 0x21:
  case 0x22:
  case 0x23:
  case 0x24:
  case 0x25:
  case 0x26:
  case 0x27:
    fprintf(out, "ldr\t#%c, ", (cmd & 7) + 'a');
    arg = (cmd >> 3) & 0xff;
    if (arg > 9)
      fprintf(out, "0%xh", arg);
    else
      fprintf(out, "%d", arg);
    goto done;
  case 0x02:
    fprintf(out, "mtpr\t#%c, ", ((cmd >> 5) & 7) + 'a');
    print_reg(out, cmd & 0x1f);
    goto done;
  case 0x03:
    fprintf(out, "mfpr\t");
    print_reg(out, cmd & 0x1f);
    fprintf(out, ", #%c", ((cmd >> 5) & 7) + 'a');
    goto done;
  }
  fprintf(out, "?");
  if (cmd >= ' ' && cmd <= '~')
    fprintf(out, "\t\t; `%c'", cmd);
done:
  fprintf(out, "\n");
}
```