user: 请显示与下面列出的汇编代码相匹配的C语言实现:

```asm
<buildUserList>:
  endbr64
  push   %r13
  mov    %rcx,%r13
  push   %r12
  mov    %rdi,%r12
  push   %rbp
  mov    %rsi,%rbp
  push   %rbx
  mov    %rdx,%rbx
  sub    $0x8,%rsp
  movl   $0x0,(%rsi)
  mov    (%rdi),%rdi
  lea    D169(%rip),%rsi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D419(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D162(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D391(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D315(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D45(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D214(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D173(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D194(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D113(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D304(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D184(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D286(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D341(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D271(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D327(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D444(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D413(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D479(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D57(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D89(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D529(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D332(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D337(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D264(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D277(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D515(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D148(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D1(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D93(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D320(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D458(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D500(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D371(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D380(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D476(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D398(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D446(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D39(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D27(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D101(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D316(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D94(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D266(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D109(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D525(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D46(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D63(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D50(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D307(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D408(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D244(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    0x0(%rbp),%eax
  lea    D502(%rip),%rsi
  add    $0x1,%eax
  mov    %eax,0x0(%rbp)
  cltq
  mov    (%r12,%rax,8),%rdi
  call   <strcpy@plt>
  mov    (%rbx),%rax
  addl   $0x1,0x0(%rbp)
  movb   $0x3a,(%rax)
  mov    (%rbx),%rax
  movb   $0x7a,0x1(%rax)
  mov    0x8(%rbx),%rax
  movb   $0x20,(%rax)
  mov    0x8(%rbx),%rax
  movb   $0x6e,0x1(%rax)
  mov    0x10(%rbx),%rax
  movb   $0x61,(%rax)
  mov    0x10(%rbx),%rax
  movb   $0x5a,0x1(%rax)
  mov    0x18(%rbx),%rax
  movb   $0x62,(%rax)
  mov    0x18(%rbx),%rax
  movb   $0x79,0x1(%rax)
  mov    0x20(%rbx),%rax
  movb   $0x63,(%rax)
  mov    0x20(%rbx),%rax
  movb   $0x58,0x1(%rax)
  mov    0x28(%rbx),%rax
  movb   $0x64,(%rax)
  mov    0x28(%rbx),%rax
  movb   $0x77,0x1(%rax)
  mov    0x30(%rbx),%rax
  movb   $0x65,(%rax)
  mov    0x30(%rbx),%rax
  movb   $0x56,0x1(%rax)
  mov    0x38(%rbx),%rax
  movb   $0x66,(%rax)
  mov    0x38(%rbx),%rax
  movb   $0x75,0x1(%rax)
  mov    0x40(%rbx),%rax
  movb   $0x67,(%rax)
  mov    0x40(%rbx),%rax
  movb   $0x54,0x1(%rax)
  mov    0x48(%rbx),%rax
  movb   $0x68,(%rax)
  mov    0x48(%rbx),%rax
  movb   $0x73,0x1(%rax)
  mov    0x50(%rbx),%rax
  movb   $0x69,(%rax)
  mov    0x50(%rbx),%rax
  movb   $0x52,0x1(%rax)
  mov    0x58(%rbx),%rax
  movb   $0x6a,(%rax)
  mov    0x58(%rbx),%rax
  movb   $0x71,0x1(%rax)
  mov    0x60(%rbx),%rax
  movb   $0x6b,(%rax)
  mov    0x60(%rbx),%rax
  movb   $0x50,0x1(%rax)
  mov    0x68(%rbx),%rax
  movb   $0x6c,(%rax)
  mov    0x68(%rbx),%rax
  movb   $0x6f,0x1(%rax)
  mov    0x70(%rbx),%rax
  movb   $0x6d,(%rax)
  mov    0x70(%rbx),%rax
  movb   $0x4e,0x1(%rax)
  mov    0x78(%rbx),%rax
  movb   $0x6e,(%rax)
  mov    0x78(%rbx),%rax
  movb   $0x6d,0x1(%rax)
  mov    0x80(%rbx),%rax
  movb   $0x6f,(%rax)
  mov    0x80(%rbx),%rax
  movb   $0x4c,0x1(%rax)
  mov    0x88(%rbx),%rax
  movb   $0x70,(%rax)
  mov    0x88(%rbx),%rax
  movb   $0x6b,0x1(%rax)
  mov    0x90(%rbx),%rax
  movb   $0x71,(%rax)
  mov    0x90(%rbx),%rax
  movb   $0x4a,0x1(%rax)
  mov    0x98(%rbx),%rax
  movb   $0x72,(%rax)
  mov    0x98(%rbx),%rax
  movb   $0x69,0x1(%rax)
  mov    0xa0(%rbx),%rax
  movb   $0x73,(%rax)
  mov    0xa0(%rbx),%rax
  movb   $0x48,0x1(%rax)
  mov    0xa8(%rbx),%rax
  movb   $0x74,(%rax)
  mov    0xa8(%rbx),%rax
  movb   $0x67,0x1(%rax)
  mov    0xb0(%rbx),%rax
  movb   $0x75,(%rax)
  mov    0xb0(%rbx),%rax
  movb   $0x46,0x1(%rax)
  mov    0xb8(%rbx),%rax
  movb   $0x76,(%rax)
  mov    0xb8(%rbx),%rax
  movb   $0x65,0x1(%rax)
  mov    0xc0(%rbx),%rax
  movb   $0x77,(%rax)
  mov    0xc0(%rbx),%rax
  movb   $0x44,0x1(%rax)
  mov    0xc8(%rbx),%rax
  movb   $0x78,(%rax)
  mov    0xc8(%rbx),%rax
  movb   $0x63,0x1(%rax)
  mov    0xd0(%rbx),%rax
  movb   $0x79,(%rax)
  mov    0xd0(%rbx),%rax
  movb   $0x42,0x1(%rax)
  mov    0xd8(%rbx),%rax
  movb   $0x7a,(%rax)
  mov    0xd8(%rbx),%rax
  movb   $0x61,0x1(%rax)
  mov    0xe0(%rbx),%rax
  movb   $0x41,(%rax)
  mov    0xe0(%rbx),%rax
  movb   $0x3a,0x1(%rax)
  mov    0xe8(%rbx),%rax
  movb   $0x42,(%rax)
  mov    0xe8(%rbx),%rax
  movb   $0x59,0x1(%rax)
  mov    0xf0(%rbx),%rax
  movb   $0x43,(%rax)
  mov    0xf0(%rbx),%rax
  movb   $0x78,0x1(%rax)
  mov    0xf8(%rbx),%rax
  movb   $0x44,(%rax)
  mov    0xf8(%rbx),%rax
  movb   $0x57,0x1(%rax)
  mov    0x100(%rbx),%rax
  movb   $0x45,(%rax)
  mov    0x100(%rbx),%rax
  movb   $0x76,0x1(%rax)
  mov    0x108(%rbx),%rax
  movb   $0x46,(%rax)
  mov    0x108(%rbx),%rax
  movb   $0x55,0x1(%rax)
  mov    0x110(%rbx),%rax
  movb   $0x47,(%rax)
  mov    0x110(%rbx),%rax
  movb   $0x74,0x1(%rax)
  mov    0x118(%rbx),%rax
  movb   $0x48,(%rax)
  mov    0x118(%rbx),%rax
  movb   $0x53,0x1(%rax)
  mov    0x120(%rbx),%rax
  movb   $0x49,(%rax)
  mov    0x120(%rbx),%rax
  movb   $0x72,0x1(%rax)
  mov    0x128(%rbx),%rax
  movb   $0x4a,(%rax)
  mov    0x128(%rbx),%rax
  movb   $0x51,0x1(%rax)
  mov    0x130(%rbx),%rax
  movb   $0x4b,(%rax)
  mov    0x130(%rbx),%rax
  movb   $0x70,0x1(%rax)
  mov    0x138(%rbx),%rax
  movb   $0x4c,(%rax)
  mov    0x138(%rbx),%rax
  movb   $0x4f,0x1(%rax)
  mov    0x140(%rbx),%rax
  movb   $0x4d,(%rax)
  mov    0x140(%rbx),%rax
  movb   $0x20,0x1(%rax)
  mov    0x148(%rbx),%rax
  movb   $0x4e,(%rax)
  mov    0x148(%rbx),%rax
  movb   $0x4d,0x1(%rax)
  mov    0x150(%rbx),%rax
  movb   $0x4f,(%rax)
  mov    0x150(%rbx),%rax
  movb   $0x6c,0x1(%rax)
  mov    0x158(%rbx),%rax
  movb   $0x50,(%rax)
  mov    0x158(%rbx),%rax
  movb   $0x4b,0x1(%rax)
  mov    0x160(%rbx),%rax
  movb   $0x51,(%rax)
  mov    0x160(%rbx),%rax
  movb   $0x6a,0x1(%rax)
  mov    0x168(%rbx),%rax
  movb   $0x52,(%rax)
  mov    0x168(%rbx),%rax
  movb   $0x49,0x1(%rax)
  mov    0x170(%rbx),%rax
  movb   $0x53,(%rax)
  mov    0x170(%rbx),%rax
  movb   $0x68,0x1(%rax)
  mov    0x178(%rbx),%rax
  movb   $0x54,(%rax)
  mov    0x178(%rbx),%rax
  movb   $0x47,0x1(%rax)
  mov    0x180(%rbx),%rax
  movb   $0x55,(%rax)
  mov    0x180(%rbx),%rax
  movb   $0x66,0x1(%rax)
  mov    0x188(%rbx),%rax
  movb   $0x56,(%rax)
  mov    0x188(%rbx),%rax
  movb   $0x45,0x1(%rax)
  mov    0x190(%rbx),%rax
  movb   $0x57,(%rax)
  mov    0x190(%rbx),%rax
  movb   $0x64,0x1(%rax)
  mov    0x198(%rbx),%rax
  movb   $0x58,(%rax)
  mov    0x198(%rbx),%rax
  movb   $0x43,0x1(%rax)
  mov    0x1a0(%rbx),%rax
  movb   $0x59,(%rax)
  mov    0x1a0(%rbx),%rax
  movb   $0x62,0x1(%rax)
  mov    0x1a8(%rbx),%rax
  movb   $0x5a,(%rax)
  mov    0x1a8(%rbx),%rax
  movb   $0x41,0x1(%rax)
  mov    $0x1,%eax
  movl   $0x36,0x0(%r13)
  add    $0x8,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  ret
```

tool_calls: name: parse_data
arguments: data_tag: D169
data_type: string
name: parse_data
arguments: data_tag: D419
data_type: string
name: parse_data
arguments: data_tag: D162
data_type: string
name: parse_data
arguments: data_tag: D391
data_type: string
name: parse_data
arguments: data_tag: D315
data_type: string
name: parse_data
arguments: data_tag: D45
data_type: string
name: parse_data
arguments: data_tag: D214
data_type: string
name: parse_data
arguments: data_tag: D173
data_type: string
name: parse_data
arguments: data_tag: D194
data_type: string
name: parse_data
arguments: data_tag: D113
data_type: string
name: parse_data
arguments: data_tag: D304
data_type: string
name: parse_data
arguments: data_tag: D184
data_type: string
name: parse_data
arguments: data_tag: D286
data_type: string
name: parse_data
arguments: data_tag: D341
data_type: string
name: parse_data
arguments: data_tag: D271
data_type: string
name: parse_data
arguments: data_tag: D327
data_type: string
name: parse_data
arguments: data_tag: D444
data_type: string
name: parse_data
arguments: data_tag: D413
data_type: string
name: parse_data
arguments: data_tag: D479
data_type: string
name: parse_data
arguments: data_tag: D57
data_type: string
name: parse_data
arguments: data_tag: D89
data_type: string
name: parse_data
arguments: data_tag: D529
data_type: string
name: parse_data
arguments: data_tag: D332
data_type: string
name: parse_data
arguments: data_tag: D337
data_type: string
name: parse_data
arguments: data_tag: D264
data_type: string
name: parse_data
arguments: data_tag: D277
data_type: string
name: parse_data
arguments: data_tag: D515
data_type: string
name: parse_data
arguments: data_tag: D148
data_type: string
name: parse_data
arguments: data_tag: D1
data_type: string
name: parse_data
arguments: data_tag: D93
data_type: string
name: parse_data
arguments: data_tag: D320
data_type: string
name: parse_data
arguments: data_tag: D458
data_type: string
name: parse_data
arguments: data_tag: D500
data_type: string
name: parse_data
arguments: data_tag: D371
data_type: string
name: parse_data
arguments: data_tag: D380
data_type: string
name: parse_data
arguments: data_tag: D476
data_type: string
name: parse_data
arguments: data_tag: D398
data_type: string
name: parse_data
arguments: data_tag: D446
data_type: string
name: parse_data
arguments: data_tag: D39
data_type: string
name: parse_data
arguments: data_tag: D27
data_type: string
name: parse_data
arguments: data_tag: D101
data_type: string
name: parse_data
arguments: data_tag: D316
data_type: string
name: parse_data
arguments: data_tag: D94
data_type: string
name: parse_data
arguments: data_tag: D266
data_type: string
name: parse_data
arguments: data_tag: D109
data_type: string
name: parse_data
arguments: data_tag: D525
data_type: string
name: parse_data
arguments: data_tag: D46
data_type: string
name: parse_data
arguments: data_tag: D63
data_type: string
name: parse_data
arguments: data_tag: D50
data_type: string
name: parse_data
arguments: data_tag: D307
data_type: string
name: parse_data
arguments: data_tag: D408
data_type: string
name: parse_data
arguments: data_tag: D244
data_type: string
name: parse_data
arguments: data_tag: D502
data_type: string

tool: D169: Monash University

tool: D419: AMIRA

tool: D162: Aberfoyle

tool: D391: AGSO

tool: D315: BHP Co Ltd

tool: D45: Billiton Exploration

tool: D214: CRA Exploration Pty Ltd

tool: D173: Geopeko

tool: D194: MIM Exploration Pty Ltd

tool: D113: Newcrest Mining Limited

tool: D304: Pasminco Exploration

tool: D184: RGC Exploration Pty Ltd

tool: D286: RTZ Ltd

tool: D341: Sumitomo Metal Mining Oceania

tool: D271: Western Mining Corporation Ltd

tool: D327: LaTrobe University

tool: D444: Melbourne University

tool: D413: CSIRO DIT

tool: D479: CSIRO DEM

tool: D57: L Harris: UWA

tool: D89: P James: Adelaide Uni

tool: D529: R Holcombe: Uni of Queensland

tool: D332: N Mancktelow: ETH

tool: D337: W Means: SUNYA

tool: D264: M Lackie: Macquarie

tool: D277: K McClay: Royal Holloway

tool: D515: D DePaor: GWU

tool: D148: Unlimited Demostration

tool: D1: A Demostration

tool: D93: B Demostration

tool: D320: C Demostration

tool: D458: D Demostration

tool: D500: E Demostration

tool: D371: F Demostration

tool: D380: G Demostration

tool: D476: H Demostration

tool: D398: I Demostration

tool: D446: J Demostration

tool: D39: K Demostration

tool: D27: L Demostration

tool: D101: M Demostration

tool: D316: N Demostration

tool: D94: O Demostration

tool: D266: P Demostration

tool: D109: Q Demostration

tool: D525: R Demostration

tool: D46: S Demostration

tool: D63: T Demostration

tool: D50: U Demostration

tool: D307: V Demostration

tool: D408: W Demostration

tool: D244: X Demostration

tool: D502: Machine Specific

assistant: ```c
int buildUserList(char **userList, int *numUser, char **encoding, int *numEncodings) {
  int i;
  *numUser = 0;
  strcpy((char *)userList[*numUser], "Monash University");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "AMIRA");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Aberfoyle");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "AGSO");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "BHP Co Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Billiton Exploration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "CRA Exploration Pty Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Geopeko");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "MIM Exploration Pty Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Newcrest Mining Limited");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Pasminco Exploration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "RGC Exploration Pty Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "RTZ Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Sumitomo Metal Mining Oceania");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Western Mining Corporation Ltd");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "LaTrobe University");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Melbourne University");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "CSIRO DIT");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "CSIRO DEM");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "L Harris: UWA");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "P James: Adelaide Uni");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "R Holcombe: Uni of Queensland");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "N Mancktelow: ETH");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "W Means: SUNYA");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "M Lackie: Macquarie");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "K McClay: Royal Holloway");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "D DePaor: GWU");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Unlimited Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "A Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "B Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "C Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "D Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "E Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "F Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "G Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "H Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "I Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "J Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "K Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "L Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "M Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "N Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "O Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "P Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Q Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "R Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "S Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "T Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "U Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "V Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "W Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "X Demostration");
  (*numUser)++;
  strcpy((char *)userList[*numUser], "Machine Specific");
  (*numUser)++;
  i = 0;
  encoding[i][0] = ':';
  encoding[i][1] = 'z';
  i++;
  encoding[i][0] = ' ';
  encoding[i][1] = 'n';
  i++;
  encoding[i][0] = 'a';
  encoding[i][1] = 'Z';
  i++;
  encoding[i][0] = 'b';
  encoding[i][1] = 'y';
  i++;
  encoding[i][0] = 'c';
  encoding[i][1] = 'X';
  i++;
  encoding[i][0] = 'd';
  encoding[i][1] = 'w';
  i++;
  encoding[i][0] = 'e';
  encoding[i][1] = 'V';
  i++;
  encoding[i][0] = 'f';
  encoding[i][1] = 'u';
  i++;
  encoding[i][0] = 'g';
  encoding[i][1] = 'T';
  i++;
  encoding[i][0] = 'h';
  encoding[i][1] = 's';
  i++;
  encoding[i][0] = 'i';
  encoding[i][1] = 'R';
  i++;
  encoding[i][0] = 'j';
  encoding[i][1] = 'q';
  i++;
  encoding[i][0] = 'k';
  encoding[i][1] = 'P';
  i++;
  encoding[i][0] = 'l';
  encoding[i][1] = 'o';
  i++;
  encoding[i][0] = 'm';
  encoding[i][1] = 'N';
  i++;
  encoding[i][0] = 'n';
  encoding[i][1] = 'm';
  i++;
  encoding[i][0] = 'o';
  encoding[i][1] = 'L';
  i++;
  encoding[i][0] = 'p';
  encoding[i][1] = 'k';
  i++;
  encoding[i][0] = 'q';
  encoding[i][1] = 'J';
  i++;
  encoding[i][0] = 'r';
  encoding[i][1] = 'i';
  i++;
  encoding[i][0] = 's';
  encoding[i][1] = 'H';
  i++;
  encoding[i][0] = 't';
  encoding[i][1] = 'g';
  i++;
  encoding[i][0] = 'u';
  encoding[i][1] = 'F';
  i++;
  encoding[i][0] = 'v';
  encoding[i][1] = 'e';
  i++;
  encoding[i][0] = 'w';
  encoding[i][1] = 'D';
  i++;
  encoding[i][0] = 'x';
  encoding[i][1] = 'c';
  i++;
  encoding[i][0] = 'y';
  encoding[i][1] = 'B';
  i++;
  encoding[i][0] = 'z';
  encoding[i][1] = 'a';
  i++;
  encoding[i][0] = 'A';
  encoding[i][1] = ':';
  i++;
  encoding[i][0] = 'B';
  encoding[i][1] = 'Y';
  i++;
  encoding[i][0] = 'C';
  encoding[i][1] = 'x';
  i++;
  encoding[i][0] = 'D';
  encoding[i][1] = 'W';
  i++;
  encoding[i][0] = 'E';
  encoding[i][1] = 'v';
  i++;
  encoding[i][0] = 'F';
  encoding[i][1] = 'U';
  i++;
  encoding[i][0] = 'G';
  encoding[i][1] = 't';
  i++;
  encoding[i][0] = 'H';
  encoding[i][1] = 'S';
  i++;
  encoding[i][0] = 'I';
  encoding[i][1] = 'r';
  i++;
  encoding[i][0] = 'J';
  encoding[i][1] = 'Q';
  i++;
  encoding[i][0] = 'K';
  encoding[i][1] = 'p';
  i++;
  encoding[i][0] = 'L';
  encoding[i][1] = 'O';
  i++;
  encoding[i][0] = 'M';
  encoding[i][1] = ' ';
  i++;
  encoding[i][0] = 'N';
  encoding[i][1] = 'M';
  i++;
  encoding[i][0] = 'O';
  encoding[i][1] = 'l';
  i++;
  encoding[i][0] = 'P';
  encoding[i][1] = 'K';
  i++;
  encoding[i][0] = 'Q';
  encoding[i][1] = 'j';
  i++;
  encoding[i][0] = 'R';
  encoding[i][1] = 'I';
  i++;
  encoding[i][0] = 'S';
  encoding[i][1] = 'h';
  i++;
  encoding[i][0] = 'T';
  encoding[i][1] = 'G';
  i++;
  encoding[i][0] = 'U';
  encoding[i][1] = 'f';
  i++;
  encoding[i][0] = 'V';
  encoding[i][1] = 'E';
  i++;
  encoding[i][0] = 'W';
  encoding[i][1] = 'd';
  i++;
  encoding[i][0] = 'X';
  encoding[i][1] = 'C';
  i++;
  encoding[i][0] = 'Y';
  encoding[i][1] = 'b';
  i++;
  encoding[i][0] = 'Z';
  encoding[i][1] = 'A';
  i++;
  *numEncodings = i;
  return (1);
}
```