user: Please show me the C implementation that matches the assembly code listed below:

```asm
<main>:
  endbr64
  sub    $0x8,%rsp
  lea    D93(%rip),%rdi
  call   <parse_test@plt>
  lea    D196(%rip),%rdi
  call   <parse_test@plt>
  lea    D262(%rip),%rdi
  call   <parse_test@plt>
  lea    D282(%rip),%rdi
  call   <parse_test@plt>
  lea    D226(%rip),%rdi
  call   <parse_test@plt>
  lea    D172(%rip),%rdi
  call   <parse_test@plt>
  lea    D63(%rip),%rdi
  call   <parse_test@plt>
  lea    D113(%rip),%rdi
  call   <parse_test@plt>
  lea    D268(%rip),%rdi
  call   <parse_test@plt>
  lea    D147(%rip),%rdi
  call   <parse_test@plt>
  lea    D15(%rip),%rdi
  call   <parse_test@plt>
  lea    D74(%rip),%rdi
  call   <parse_test@plt>
  lea    D253(%rip),%rdi
  call   <parse_test@plt>
  lea    D134(%rip),%rdi
  call   <parse_test@plt>
  lea    D250(%rip),%rdi
  call   <parse_test@plt>
  lea    D133(%rip),%rdi
  call   <parse_test@plt>
  lea    D263(%rip),%rdi
  call   <parse_test@plt>
  lea    D14(%rip),%rdi
  call   <parse_test@plt>
  lea    D55(%rip),%rdi
  call   <parse_test@plt>
  lea    D198(%rip),%rdi
  call   <parse_test@plt>
  lea    D102(%rip),%rdi
  call   <parse_test@plt>
  lea    D190(%rip),%rdi
  call   <parse_test@plt>
  lea    D142(%rip),%rdi
  call   <parse_test@plt>
  lea    D295(%rip),%rdi
  call   <parse_test@plt>
  lea    D131(%rip),%rdi
  call   <parse_test@plt>
  lea    D275(%rip),%rdi
  call   <parse_test@plt>
  lea    D89(%rip),%rdi
  call   <parse_test@plt>
  lea    D39(%rip),%rdi
  call   <parse_test@plt>
  lea    D157(%rip),%rdi
  call   <parse_test@plt>
  lea    D96(%rip),%rdi
  call   <parse_test@plt>
  lea    D49(%rip),%rdi
  call   <parse_test@plt>
  xor    %eax,%eax
  add    $0x8,%rsp
  ret
```

tool_calls: name: extract_symbolic_data
arguments: data_label: D93
data_type: string
name: extract_symbolic_data
arguments: data_label: D196
data_type: string
name: extract_symbolic_data
arguments: data_label: D262
data_type: string
name: extract_symbolic_data
arguments: data_label: D282
data_type: string
name: extract_symbolic_data
arguments: data_label: D226
data_type: string
name: extract_symbolic_data
arguments: data_label: D172
data_type: string
name: extract_symbolic_data
arguments: data_label: D63
data_type: string
name: extract_symbolic_data
arguments: data_label: D113
data_type: string
name: extract_symbolic_data
arguments: data_label: D268
data_type: string
name: extract_symbolic_data
arguments: data_label: D147
data_type: string
name: extract_symbolic_data
arguments: data_label: D15
data_type: string
name: extract_symbolic_data
arguments: data_label: D74
data_type: string
name: extract_symbolic_data
arguments: data_label: D253
data_type: string
name: extract_symbolic_data
arguments: data_label: D134
data_type: string
name: extract_symbolic_data
arguments: data_label: D250
data_type: string
name: extract_symbolic_data
arguments: data_label: D133
data_type: string
name: extract_symbolic_data
arguments: data_label: D263
data_type: string
name: extract_symbolic_data
arguments: data_label: D14
data_type: string
name: extract_symbolic_data
arguments: data_label: D55
data_type: string
name: extract_symbolic_data
arguments: data_label: D198
data_type: string
name: extract_symbolic_data
arguments: data_label: D102
data_type: string
name: extract_symbolic_data
arguments: data_label: D190
data_type: string
name: extract_symbolic_data
arguments: data_label: D142
data_type: string
name: extract_symbolic_data
arguments: data_label: D295
data_type: string
name: extract_symbolic_data
arguments: data_label: D131
data_type: string
name: extract_symbolic_data
arguments: data_label: D275
data_type: string
name: extract_symbolic_data
arguments: data_label: D89
data_type: string
name: extract_symbolic_data
arguments: data_label: D39
data_type: string
name: extract_symbolic_data
arguments: data_label: D157
data_type: string
name: extract_symbolic_data
arguments: data_label: D96
data_type: string
name: extract_symbolic_data
arguments: data_label: D49
data_type: string

tool: D93: host1:123

tool: D196: host1:123,host2:123

tool: D262: mongodb://host1:123,host2:123

tool: D282: mongodb://derick:test@host1:123

tool: D226: mongodb://derick:test@host1:123,host2:123

tool: D172: mongodb://derick:test@host1:123,host2:123/database

tool: D63: mongodb://derick:test@host1:123,host2/database

tool: D113: mongodb://derick:test@host1,host2:123/database

tool: D268: mongodb://host1,host2:123/database

tool: D147: mongodb://derick:test@host1,host2:123/database?readPreference=secondary_preferred

tool: D15: mongodb://derick:test@host1,host2:123/?readPreference=secondary

tool: D74: mongodb://derick:test@host1,host2:123?timeout=4

tool: D253: mongodb://derick:test@host1,host2:123/?timeout=4

tool: D134: mongodb://derick:test@host1,host2:123/?readPreference

tool: D250: mongodb://derick:test@host1,host2:123/?readPreference=primary;timeout=baz

tool: D133: mongodb://derick:test@host1,host2:123/?readPreference=primary&timeout=baz

tool: D263: mongodb://derick:test@host1,host2:123/?readPreference=primary;timeout

tool: D14: mongodb://derick:test@host1,host2:123/?readPreference;timeout=baz

tool: D55: mongodb://host1/?replicaSet=testset

tool: D198: mongodb://foo:bar@primary:14000/database?replicaSet=seta

tool: D102: mongodb://foo:bar@primary:14000/database/?replicaSet=seta

tool: D190: mongodb:///tmp/mongodb-27017.sock

tool: D142: mongodb:///tmp/mongodb-27017.sock/

tool: D295: mongodb:///tmp/mongodb-27017.sock/?timeout=4

tool: D131: mongodb:///tmp/mongodb-27017.sock/database

tool: D275: mongodb:///tmp/mongodb-27017.sock/database?timeout=4

tool: D89: mongodb://derick:test@/tmp/mongodb-27017.sock

tool: D39: mongodb://derick:test@/tmp/mongodb-27017.sock/

tool: D157: mongodb://derick:test@/tmp/mongodb-27017.sock/?timeout=4

tool: D96: mongodb://derick:test@/tmp/mongodb-27017.sock/database

tool: D49: mongodb://derick:test@/tmp/mongodb-27017.sock/database?timeout=4

assistant: ```c
int main(void) {
  parse_test("host1:123");
  parse_test("host1:123,host2:123");
  parse_test("mongodb://host1:123,host2:123");
  parse_test("mongodb://derick:test@host1:123");
  parse_test("mongodb://derick:test@host1:123,host2:123");
  parse_test("mongodb://derick:test@host1:123,host2:123/database");
  parse_test("mongodb://derick:test@host1:123,host2/database");
  parse_test("mongodb://derick:test@host1,host2:123/database");
  parse_test("mongodb://host1,host2:123/database");
  parse_test("mongodb://derick:test@host1,host2:123/database?readPreference=secondary_preferred");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference=secondary");
  parse_test("mongodb://derick:test@host1,host2:123?timeout=4");
  parse_test("mongodb://derick:test@host1,host2:123/?timeout=4");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference=primary;timeout=baz");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference=primary&timeout=baz");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference=primary;timeout");
  parse_test("mongodb://derick:test@host1,host2:123/?readPreference;timeout=baz");
  parse_test("mongodb://host1/?replicaSet=testset");
  parse_test("mongodb://foo:bar@primary:14000/database?replicaSet=seta");
  parse_test("mongodb://foo:bar@primary:14000/database/?replicaSet=seta");
  parse_test("mongodb:///tmp/mongodb-27017.sock");
  parse_test("mongodb:///tmp/mongodb-27017.sock/");
  parse_test("mongodb:///tmp/mongodb-27017.sock/?timeout=4");
  parse_test("mongodb:///tmp/mongodb-27017.sock/database");
  parse_test("mongodb:///tmp/mongodb-27017.sock/database?timeout=4");
  parse_test("mongodb://derick:test@/tmp/mongodb-27017.sock");
  parse_test("mongodb://derick:test@/tmp/mongodb-27017.sock/");
  parse_test("mongodb://derick:test@/tmp/mongodb-27017.sock/?timeout=4");
  parse_test("mongodb://derick:test@/tmp/mongodb-27017.sock/database");
  parse_test("mongodb://derick:test@/tmp/mongodb-27017.sock/database?timeout=4");
  return 0;
}
```