user: Converte this assembly snippet into its equivalent C code:

```asm
<t_erl_mk_estring>:
  endbr64
  push   %rbp
  xor    %esi,%esi
  xor    %edi,%edi
  lea    D4(%rip),%rbp
  call   <erl_init@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D69(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D94(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D88(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D97(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D75(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D67(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D5(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D3(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  lea    D37(%rip),%rbp
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    %rbp,%rdi
  call   <strlen@plt>
  mov    %rbp,%rdi
  mov    %eax,%esi
  call   <erl_mk_estring@plt>
  mov    %eax,%edi
  call   <send_term@plt>
  mov    $0x1,%edx
  mov    $0x279,%esi
  pop    %rbp
  lea    D107(%rip),%rdi
  jmp    10a0 <do_report@plt>
```

tool_calls: name: retrieve_data
arguments: data_label: D4
datatype: string
name: retrieve_data
arguments: data_label: D69
datatype: string
name: retrieve_data
arguments: data_label: D94
datatype: string
name: retrieve_data
arguments: data_label: D88
datatype: string
name: retrieve_data
arguments: data_label: D97
datatype: string
name: retrieve_data
arguments: data_label: D75
datatype: string
name: retrieve_data
arguments: data_label: D67
datatype: string
name: retrieve_data
arguments: data_label: D5
datatype: string
name: retrieve_data
arguments: data_label: D3
datatype: string
name: retrieve_data
arguments: data_label: D37
datatype: string
name: retrieve_data
arguments: data_label: D107
datatype: string

tool: D4: madonna

tool: D69: Madonna

tool: D94: mad donna

tool: D88: _madonna_

tool: D97: /home/madonna/tour_plan

tool: D75: http://www.madonna.com/tour_plan

tool: D67: 'madonna'

tool: D5: "madonna"

tool: D3: \madonna\

tool: D37: {madonna,21,'mad donna',12}

tool: D107: /scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/RaimoNiskanen/otp/refs/heads/basho/lib/erl_interface/test/erl_eterm_SUITE_data/eterm_test.c

assistant: ```c
void t_erl_mk_estring(void) {
  char *string;
  erl_init(NULL, 0);
  string = "madonna";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "Madonna";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "mad donna";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "_madonna_";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "/home/madonna/tour_plan";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "http://www.madonna.com/tour_plan";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "\'madonna\'";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "\"madonna\"";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "\\madonna\\";
  send_term(erl_mk_estring(string, strlen(string)));
  string = "{madonna,21,'mad donna',12}";
  send_term(erl_mk_estring(string, strlen(string)));
  do_report("/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/RaimoNiskanen/otp/refs/heads/basho/lib/erl_interface/test/erl_eterm_SUITE_data/eterm_test.c", 633, 1);
}
```