user: 请从给定的汇编指令推导出C源代码：

```asm
<get_region_name_EE>:
  endbr64
  cmp    $0x15,%edi
  ja     L7
  lea    D171(%rip),%rdx
  mov    %edi,%edi
  movslq (%rdx,%rdi,4),%rax
  add    %rdx,%rax
  notrack jmp *%rax
  lea    D52(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D103(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D19(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D27(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D199(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D87(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D131(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D180(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D219(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D42(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D186(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D168(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D106(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D76(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D161(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D28(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D62(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D11(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D15(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D20(%rip),%rax
  ret
  nopl   0x0(%rax,%rax,1)
  lea    D58(%rip),%rax
  ret
L7:
  xor    %eax,%eax
  ret
```

tool_calls: name: read_data
arguments: data_label: D52
type_infered: string
name: read_data
arguments: data_label: D103
type_infered: string
name: read_data
arguments: data_label: D19
type_infered: string
name: read_data
arguments: data_label: D27
type_infered: string
name: read_data
arguments: data_label: D199
type_infered: string
name: read_data
arguments: data_label: D87
type_infered: string
name: read_data
arguments: data_label: D131
type_infered: string
name: read_data
arguments: data_label: D180
type_infered: string
name: read_data
arguments: data_label: D219
type_infered: string
name: read_data
arguments: data_label: D42
type_infered: string
name: read_data
arguments: data_label: D186
type_infered: string
name: read_data
arguments: data_label: D168
type_infered: string
name: read_data
arguments: data_label: D106
type_infered: string
name: read_data
arguments: data_label: D76
type_infered: string
name: read_data
arguments: data_label: D161
type_infered: string
name: read_data
arguments: data_label: D28
type_infered: string
name: read_data
arguments: data_label: D62
type_infered: string
name: read_data
arguments: data_label: D11
type_infered: string
name: read_data
arguments: data_label: D15
type_infered: string
name: read_data
arguments: data_label: D20
type_infered: string
name: read_data
arguments: data_label: D58
type_infered: string

tool: D52: Hiiumaa

tool: D103: Harjumaa

tool: D19: Saaremaa

tool: D27: Raplamaa

tool: D199: Polvamaa

tool: D87: Parnumaa

tool: D131: Ida-Virumaa

tool: D180: Jogevamaa

tool: D219: Jarvamaa

tool: D42: Viljandimaa

tool: D186: Valgamaa

tool: D168: Vorumaa

tool: D106: Kohtla-Jarve

tool: D76: Parnu

tool: D161: Narva

tool: D28: Laane-Virumaa

tool: D62: Laanemaa

tool: D11: Tartumaa

tool: D15: Tartu

tool: D20: Tallinn

tool: D58: Sillamae

assistant: ```c
const char *get_region_name_EE(int region_code) {
  switch (region_code) {
  case 1:
    return "Harjumaa";
  case 2:
    return "Hiiumaa";
  case 3:
    return "Ida-Virumaa";
  case 4:
    return "Jarvamaa";
  case 5:
    return "Jogevamaa";
  case 6:
    return "Kohtla-Jarve";
  case 7:
    return "Laanemaa";
  case 8:
    return "Laane-Virumaa";
  case 9:
    return "Narva";
  case 10:
    return "Parnu";
  case 11:
    return "Parnumaa";
  case 12:
    return "Polvamaa";
  case 13:
    return "Raplamaa";
  case 14:
    return "Saaremaa";
  case 15:
    return "Sillamae";
  case 16:
    return "Tallinn";
  case 17:
    return "Tartu";
  case 18:
    return "Tartumaa";
  case 19:
    return "Valgamaa";
  case 20:
    return "Viljandimaa";
  case 21:
    return "Vorumaa";
  default:
    return NULL;
  }
}
```