user: What would the C source look like for the assembly code provided here?

```asm
<affect_loc_name>:
  endbr64
  cmp    $0x36,%edi
  ja     L2
  mov    %edi,%eax
  lea    D96(%rip),%rdx
  movslq (%rdx,%rax,4),%rax
  add    %rdx,%rax
  notrack jmp *%rax
  lea    D141(%rip),%rax
  ret
  lea    D298(%rip),%rax
  ret
  lea    D214(%rip),%rax
  ret
  lea    D268(%rip),%rax
  ret
  lea    D201(%rip),%rax
  ret
  lea    D175(%rip),%rax
  ret
  lea    D19(%rip),%rax
  ret
  lea    D224(%rip),%rax
  ret
  lea    D126(%rip),%rax
  ret
  lea    D281(%rip),%rax
  ret
  lea    D231(%rip),%rax
  ret
  lea    D258(%rip),%rax
  ret
  lea    D229(%rip),%rax
  ret
  lea    D97(%rip),%rax
  ret
  lea    D275(%rip),%rax
  ret
  lea    D105(%rip),%rax
  ret
  lea    D100(%rip),%rax
  ret
  lea    D64(%rip),%rax
  ret
  lea    D291(%rip),%rax
  ret
  lea    D113(%rip),%rax
  ret
  lea    D116(%rip),%rax
  ret
  lea    D196(%rip),%rax
  ret
  lea    D203(%rip),%rax
  ret
  lea    D280(%rip),%rax
  ret
  lea    D58(%rip),%rax
  ret
  lea    D287(%rip),%rax
  ret
L2:
  sub    $0x8,%rsp
  mov    %edi,%esi
  lea    D186(%rip),%rdi
  call   <bug@plt>
  lea    D99(%rip),%rax
  add    $0x8,%rsp
  ret
  lea    D165(%rip),%rax
  ret
```

tool_calls: name: disassemble_data
arguments: label: D141
type_guessed: string
name: disassemble_data
arguments: label: D298
type_guessed: string
name: disassemble_data
arguments: label: D214
type_guessed: string
name: disassemble_data
arguments: label: D268
type_guessed: string
name: disassemble_data
arguments: label: D201
type_guessed: string
name: disassemble_data
arguments: label: D175
type_guessed: string
name: disassemble_data
arguments: label: D19
type_guessed: string
name: disassemble_data
arguments: label: D224
type_guessed: string
name: disassemble_data
arguments: label: D126
type_guessed: string
name: disassemble_data
arguments: label: D281
type_guessed: string
name: disassemble_data
arguments: label: D231
type_guessed: string
name: disassemble_data
arguments: label: D258
type_guessed: string
name: disassemble_data
arguments: label: D229
type_guessed: string
name: disassemble_data
arguments: label: D97
type_guessed: string
name: disassemble_data
arguments: label: D275
type_guessed: string
name: disassemble_data
arguments: label: D105
type_guessed: string
name: disassemble_data
arguments: label: D100
type_guessed: string
name: disassemble_data
arguments: label: D64
type_guessed: string
name: disassemble_data
arguments: label: D291
type_guessed: string
name: disassemble_data
arguments: label: D113
type_guessed: string
name: disassemble_data
arguments: label: D116
type_guessed: string
name: disassemble_data
arguments: label: D196
type_guessed: string
name: disassemble_data
arguments: label: D203
type_guessed: string
name: disassemble_data
arguments: label: D280
type_guessed: string
name: disassemble_data
arguments: label: D58
type_guessed: string
name: disassemble_data
arguments: label: D287
type_guessed: string
name: disassemble_data
arguments: label: D186
type_guessed: string
name: disassemble_data
arguments: label: D99
type_guessed: string
name: disassemble_data
arguments: label: D165
type_guessed: string

tool: D141: phys-strength

tool: D298: phys-dexterity

tool: D214: phys-quickness

tool: D268: phys-toughness

tool: D201: ment-intelligence

tool: D175: sex

tool: D19: class

tool: D224: level

tool: D126: age

tool: D281: mana

tool: D231: hp

tool: D258: moves

tool: D229: stun

tool: D97: gold

tool: D275: experience

tool: D105: hit roll

tool: D100: damage roll

tool: D64: save vs paralysis

tool: D291: save vs rod

tool: D113: save vs petrification

tool: D116: save vs breath

tool: D196: save vs spell

tool: D203: absorbtion

tool: D280: channeling

tool: D58: vision profile

tool: D287: vision range

tool: D186: Affect_location_name: unknown location %d.

tool: D99: (unknown)

tool: D165: none

assistant: ```c
char *affect_loc_name(int location) {
  switch (location) {
  case 0:
    return "none";
  case 1:
    return "phys-strength";
  case 2:
    return "phys-dexterity";
  case 4:
    return "phys-quickness";
  case 5:
    return "phys-toughness";
  case 3:
    return "ment-intelligence";
  case 6:
    return "sex";
  case 7:
    return "class";
  case 8:
    return "level";
  case 9:
    return "age";
  case 12:
    return "mana";
  case 13:
    return "hp";
  case 14:
    return "moves";
  case 54:
    return "stun";
  case 15:
    return "gold";
  case 16:
    return "experience";
  case 18:
    return "hit roll";
  case 19:
    return "damage roll";
  case 20:
    return "save vs paralysis";
  case 21:
    return "save vs rod";
  case 22:
    return "save vs petrification";
  case 23:
    return "save vs breath";
  case 24:
    return "save vs spell";
  case 50:
    return "absorbtion";
  case 51:
    return "channeling";
  case 52:
    return "vision profile";
  case 53:
    return "vision range";
  }
  bug("Affect_location_name: unknown location %d.", location);
  return "(unknown)";
}
```