user: What is the c source code of the assembly code below:

```asm
<ckb_info>:
  endbr64
  push   %r14
  lea    D375(%rip),%rdi
  xor    %eax,%eax
  lea    D208(%rip),%r14
  push   %r13
  lea    D108(%rip),%r13
  push   %r12
  lea    D228(%rip),%r12
  push   %rbp
  lea    D72(%rip),%rbp
  sub    $0x8,%rsp
  call   <printf@plt>
  lea    D187(%rip),%rdi
  call   <printurl@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D104(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D43(%rip),%rdi
  call   <printurl@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D191(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D452(%rip),%rdi
  call   <printurl@plt>
  lea    D193(%rip),%rsi
  lea    D100(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D388(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D459(%rip),%rdi
  call   <printurl@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D457(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D169(%rip),%rdi
  call   <printurl@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D422(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D412(%rip),%rdi
  call   <printurl@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D378(%rip),%rdx
  lea    D226(%rip),%rsi
  xor    %eax,%eax
  mov    %rbp,%rdi
  call   <printf@plt>
  lea    D242(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  lea    D374(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  xor    %eax,%eax
  mov    $0xff,%ecx
  mov    $0xff,%edx
  mov    $0xff,%esi
  lea    D54(%rip),%rdi
  call   <printf@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  mov    %r14,%rsi
  mov    %rbp,%rdi
  xor    %eax,%eax
  lea    D338(%rip),%rdx
  call   <printf@plt>
  lea    D290(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  mov    %r13,%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  movsd  D183(%rip),%xmm2
  pxor   %xmm1,%xmm1
  mov    %r12,%rdi
  mov    $0x3,%eax
  movapd %xmm2,%xmm0
  call   <printf@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  mov    %r14,%rsi
  mov    %rbp,%rdi
  xor    %eax,%eax
  lea    D33(%rip),%rdx
  call   <printf@plt>
  lea    D477(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  mov    %r13,%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  mov    D183(%rip),%rax
  movsd  D440(%rip),%xmm1
  mov    %r12,%rdi
  movsd  D132(%rip),%xmm0
  lea    D425(%rip),%r12
  movq   %rax,%xmm2
  mov    $0x3,%eax
  call   <printf@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D372(%rip),%rdx
  lea    D466(%rip),%rsi
  xor    %eax,%eax
  mov    %rbp,%rdi
  lea    D121(%rip),%rbp
  call   <printf@plt>
  lea    D67(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  lea    D424(%rip),%rdi
  call   <printurl@plt>
  mov    $0x20,%edi
  call   <putchar@plt>
  mov    $0x64,%ecx
  xor    %eax,%eax
  mov    $0x1,%edx
  mov    $0xa,%esi
  lea    D382(%rip),%rdi
  call   <printf@plt>
  mov    $0xa,%edi
  call   <putchar@plt>
  lea    D18(%rip),%rsi
  lea    D116(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D86(%rip),%rsi
  lea    D268(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  xor    %eax,%eax
  lea    D432(%rip),%rsi
  lea    D371(%rip),%rdi
  call   <printf@plt>
  lea    D495(%rip),%rsi
  lea    D190(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D433(%rip),%rdi
  xor    %eax,%eax
  call   <printf@plt>
  lea    D1(%rip),%rdi
  call   <printurl@plt>
  lea    D66(%rip),%rsi
  mov    %r12,%rdi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rdi
  call   <printurl@plt>
  mov    %r12,%rdi
  lea    D342(%rip),%rsi
  xor    %eax,%eax
  call   <printf@plt>
  mov    %rbp,%rdi
  call   <printurl@plt>
  add    $0x8,%rsp
  mov    $0xa,%edi
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  jmp    1070 <putchar@plt>
```

tool_calls: name: read_data
arguments: label: D375
data_type: string
name: read_data
arguments: label: D208
data_type: string
name: read_data
arguments: label: D108
data_type: string
name: read_data
arguments: label: D228
data_type: string
name: read_data
arguments: label: D72
data_type: string
name: read_data
arguments: label: D187
data_type: string
name: read_data
arguments: label: D104
data_type: string
name: read_data
arguments: label: D43
data_type: string
name: read_data
arguments: label: D191
data_type: string
name: read_data
arguments: label: D452
data_type: string
name: read_data
arguments: label: D193
data_type: string
name: read_data
arguments: label: D100
data_type: string
name: read_data
arguments: label: D388
data_type: string
name: read_data
arguments: label: D459
data_type: string
name: read_data
arguments: label: D457
data_type: string
name: read_data
arguments: label: D169
data_type: string
name: read_data
arguments: label: D422
data_type: string
name: read_data
arguments: label: D412
data_type: string
name: read_data
arguments: label: D378
data_type: string
name: read_data
arguments: label: D226
data_type: string
name: read_data
arguments: label: D242
data_type: string
name: read_data
arguments: label: D374
data_type: string
name: read_data
arguments: label: D54
data_type: string
name: read_data
arguments: label: D338
data_type: string
name: read_data
arguments: label: D290
data_type: string
name: read_data
arguments: label: D183
data_type: byte[8]
name: read_data
arguments: label: D33
data_type: string
name: read_data
arguments: label: D477
data_type: string
name: read_data
arguments: label: D440
data_type: byte[8]
name: read_data
arguments: label: D132
data_type: byte[8]
name: read_data
arguments: label: D425
data_type: string
name: read_data
arguments: label: D372
data_type: string
name: read_data
arguments: label: D466
data_type: string
name: read_data
arguments: label: D121
data_type: string
name: read_data
arguments: label: D67
data_type: string
name: read_data
arguments: label: D424
data_type: string
name: read_data
arguments: label: D382
data_type: string
name: read_data
arguments: label: D18
data_type: string
name: read_data
arguments: label: D116
data_type: string
name: read_data
arguments: label: D86
data_type: string
name: read_data
arguments: label: D268
data_type: string
name: read_data
arguments: label: D432
data_type: string
name: read_data
arguments: label: D371
data_type: string
name: read_data
arguments: label: D495
data_type: string
name: read_data
arguments: label: D190
data_type: string
name: read_data
arguments: label: D433
data_type: string
name: read_data
arguments: label: D1
data_type: string
name: read_data
arguments: label: D66
data_type: string
name: read_data
arguments: label: D342
data_type: string

tool: D375: name 

tool: D208: double

tool: D108: %

tool: D228: %lf %lf %lf

tool: D72: param %s %s 

tool: D187: Raindrop

tool: D104: version 

tool: D43: 0.10

tool: D191: author 

tool: D452: MSC

tool: D193: 2014-2015

tool: D100: 
year %s


tool: D388: license 

tool: D459: GPLv2

tool: D457: guid 

tool: D169: {5D6695AF-0496-41E2-BEE7-F7D0ABAA49E9}

tool: D422: description 

tool: D412: A rain-like effect.

tool: D378: color

tool: D226: rgb

tool: D242: Drop color:

tool: 

tool: D54: %02x%02x%02x

tool: D338: intensity

tool: D290: Intensity:

tool: {"D183": [0x00,0x00,0x00,0x00,0x00,0x00,0x59,0x40]}

tool: D33: size

tool: D477: Size:

tool: {"D440": [0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x3f]}

tool: {"D132": [0x00,0x00,0x00,0x00,0x00,0x00,0x39,0x40]}

tool: D425:  %s=

tool: D372: frequency

tool: D466: long

tool: D121: 1

tool: D67: Frequency:

tool: D424: per second

tool: D382: %ld %ld %ld

tool: D18: position

tool: D116: kpmode %s


tool: D86: absolute

tool: D268: time %s


tool: D432: off

tool: D371: repeat %s


tool: D495: live

tool: D190: parammode %s


tool: D433: preset 

tool: D1: Default

tool: D66: trigger

tool: D342: kptrigger

assistant: ```c
void ckb_info() {
  do {
    printf("name ");
    printurl("Raindrop");
    printf("\n");
  } while (0);
  do {
    printf("version ");
    printurl("0.10");
    printf("\n");
  } while (0);
  do {
    printf("author ");
    printurl("MSC");
    printf("\nyear %s\n", "2014-2015");
  } while (0);
  do {
    printf("license ");
    printurl("GPLv2");
    printf("\n");
  } while (0);
  do {
    printf("guid ");
    printurl("{5D6695AF-0496-41E2-BEE7-F7D0ABAA49E9}");
    printf("\n");
  } while (0);
  do {
    printf("description ");
    printurl("A rain-like effect.");
    printf("\n");
  } while (0);
  do {
    printf("param %s %s ", "rgb", "color");
    printurl("Drop color:");
    printf(" ");
    printurl("");
    printf(" ");
    printf("%02x%02x%02x", (unsigned char)(255), (unsigned char)(255), (unsigned char)(255));
    printf("\n");
  } while (0);
  do {
    printf("param %s %s ", "double", "intensity");
    printurl("Intensity:");
    printf(" ");
    printurl("%");
    printf(" ");
    printf("%lf %lf %lf", (double)(100), (double)(0), (double)(100));
    printf("\n");
  } while (0);
  do {
    printf("param %s %s ", "double", "size");
    printurl("Size:");
    printf(" ");
    printurl("%");
    printf(" ");
    printf("%lf %lf %lf", (double)(25), (double)(1), (double)(100));
    printf("\n");
  } while (0);
  do {
    printf("param %s %s ", "long", "frequency");
    printurl("Frequency:");
    printf(" ");
    printurl("per second");
    printf(" ");
    printf("%ld %ld %ld", (long)(10), (long)(1), (long)(100));
    printf("\n");
  } while (0);
  do {
    printf("kpmode %s\n", "position");
  } while (0);
  do {
    printf("time %s\n", "absolute");
  } while (0);
  do {
    printf("repeat %s\n", (0) ? "on" : "off");
  } while (0);
  do {
    printf("parammode %s\n", (1) ? "live" : "static");
  } while (0);
  do {
    printf("preset ");
    printurl("Default");
  } while (0);
  do {
    printf(" %s=", "trigger");
    printurl("1");
  } while (0);
  do {
    printf(" %s=", "kptrigger");
    printurl("1");
  } while (0);
  do {
    printf("\n");
  } while (0);
}
```