user: What is the c source code of the assembly code below?

```asm
<UI_Update>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x20,%rsp
  mov    %rdi,-0x18(%rbp)
  mov    -0x18(%rbp),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_VariableValue@plt>
  mov    %eax,-0x8(%rbp)
  mov    -0x18(%rbp),%rax
  lea    D604(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L162
  lea    D965(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <UI_Cvar_VariableString@plt>
  mov    %eax,%esi
  lea    D345(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L162:
  mov    -0x18(%rbp),%rax
  lea    D371(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L16
  lea    D385(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_VariableValue@plt>
  pxor   %xmm0,%xmm0
  cvtsi2ss %eax,%xmm0
  movss  %xmm0,-0x4(%rbp)
  movss  -0x4(%rbp),%xmm0
  comiss D717(%rip),%xmm0
  jb     L182
  lea    D903(%rip),%rax
  mov    %rax,%rsi
  lea    D714(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  lea    D523(%rip),%rax
  mov    %rax,%rsi
  lea    D297(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L182:
  movss  -0x4(%rbp),%xmm0
  comiss D616(%rip),%xmm0
  jb     L288
  lea    D640(%rip),%rax
  mov    %rax,%rsi
  lea    D714(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  lea    D610(%rip),%rax
  mov    %rax,%rsi
  lea    D297(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L288:
  lea    D640(%rip),%rax
  mov    %rax,%rsi
  lea    D714(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  lea    D523(%rip),%rax
  mov    %rax,%rsi
  lea    D297(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L16:
  mov    -0x18(%rbp),%rax
  lea    D963(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L204
  lea    D345(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <UI_Cvar_VariableString@plt>
  mov    %eax,%esi
  lea    D965(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L204:
  mov    -0x18(%rbp),%rax
  lea    D30(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L429
  cmpl   $0x20,-0x8(%rbp)
  je     L417
  cmpl   $0x20,-0x8(%rbp)
  jg     L301
  cmpl   $0x0,-0x8(%rbp)
  je     L224
  cmpl   $0x10,-0x8(%rbp)
  je     L157
  jmp    L301
L224:
  mov    $0x0,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D783(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L157:
  mov    $0x10,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D783(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L417:
  mov    $0x18,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L429:
  mov    -0x18(%rbp),%rax
  lea    D763(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L248
  cmpl   $0x2,-0x8(%rbp)
  je     L206
  cmpl   $0x2,-0x8(%rbp)
  jg     L301
  cmpl   $0x0,-0x8(%rbp)
  je     L109
  cmpl   $0x1,-0x8(%rbp)
  je     L416
  jmp    L301
L109:
  mov    $0x4,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L416:
  mov    $0xc,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L206:
  mov    $0x14,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L248:
  mov    -0x18(%rbp),%rax
  lea    D427(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L156
  cmpl   $0x3,-0x8(%rbp)
  je     L281
  cmpl   $0x3,-0x8(%rbp)
  jg     L301
  cmpl   $0x2,-0x8(%rbp)
  je     L189
  cmpl   $0x2,-0x8(%rbp)
  jg     L301
  cmpl   $0x0,-0x8(%rbp)
  je     L50
  cmpl   $0x1,-0x8(%rbp)
  je     L413
  jmp    L301
L50:
  mov    $0x1,%esi
  lea    D228(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x4,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D530(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D763(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x20,%esi
  lea    D30(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x18,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D528(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x4,%esi
  lea    D447(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x20,%esi
  lea    D809(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D869(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D91(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D599(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x9c4,%esi
  lea    D678(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  lea    D182(%rip),%rax
  mov    %rax,%rsi
  lea    D66(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L413:
  mov    $0x1,%esi
  lea    D228(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0xc,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D530(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D763(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D30(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x18,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D528(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x3,%esi
  lea    D447(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D809(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D869(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D91(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x9c4,%esi
  lea    D678(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  lea    D182(%rip),%rax
  mov    %rax,%rsi
  lea    D66(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  mov    $0x0,%esi
  lea    D599(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L189:
  mov    $0x1,%esi
  lea    D228(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x8,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D530(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D763(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D30(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D528(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x3,%esi
  lea    D447(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D809(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D599(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D869(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D91(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D678(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  lea    D340(%rip),%rax
  mov    %rax,%rsi
  lea    D66(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L281:
  mov    $0x1,%esi
  lea    D228(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x14,%esi
  lea    D567(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D530(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x2,%esi
  lea    D763(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x10,%esi
  lea    D30(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x10,%esi
  lea    D195(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x3,%esi
  lea    D447(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x2,%esi
  lea    D528(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x10,%esi
  lea    D809(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D599(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D678(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x1,%esi
  lea    D869(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  mov    $0x0,%esi
  lea    D91(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_SetValue@plt>
  lea    D340(%rip),%rax
  mov    %rax,%rsi
  lea    D66(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <trap_Cvar_Set@plt>
  jmp    L301
L156:
  mov    -0x18(%rbp),%rax
  lea    D933(%rip),%rdx
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <Q_stricmp@plt>
  test   %eax,%eax
  jne    L301
  cmpl   $0x0,-0x8(%rbp)
  jne    L19
  mov    D796(%rip),%rax
  movq   %rax,%xmm0
  lea    D78(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L19:
  mov    D77(%rip),%rax
  movq   %rax,%xmm0
  lea    D78(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <trap_Cvar_SetValue@plt>
  jmp    L301
L301:
  nop
  leave
  ret
```

tool_calls: name: parse_data
arguments: data_label: D604
data_type: string
name: parse_data
arguments: data_label: D965
data_type: string
name: parse_data
arguments: data_label: D345
data_type: string
name: parse_data
arguments: data_label: D371
data_type: string
name: parse_data
arguments: data_label: D385
data_type: string
name: parse_data
arguments: data_label: D717
data_type: byte[4]
name: parse_data
arguments: data_label: D903
data_type: string
name: parse_data
arguments: data_label: D714
data_type: string
name: parse_data
arguments: data_label: D523
data_type: string
name: parse_data
arguments: data_label: D297
data_type: string
name: parse_data
arguments: data_label: D616
data_type: byte[4]
name: parse_data
arguments: data_label: D640
data_type: string
name: parse_data
arguments: data_label: D610
data_type: string
name: parse_data
arguments: data_label: D963
data_type: string
name: parse_data
arguments: data_label: D30
data_type: string
name: parse_data
arguments: data_label: D195
data_type: string
name: parse_data
arguments: data_label: D783
data_type: string
name: parse_data
arguments: data_label: D763
data_type: string
name: parse_data
arguments: data_label: D567
data_type: string
name: parse_data
arguments: data_label: D427
data_type: string
name: parse_data
arguments: data_label: D228
data_type: string
name: parse_data
arguments: data_label: D530
data_type: string
name: parse_data
arguments: data_label: D528
data_type: string
name: parse_data
arguments: data_label: D447
data_type: string
name: parse_data
arguments: data_label: D809
data_type: string
name: parse_data
arguments: data_label: D869
data_type: string
name: parse_data
arguments: data_label: D91
data_type: string
name: parse_data
arguments: data_label: D599
data_type: string
name: parse_data
arguments: data_label: D678
data_type: string
name: parse_data
arguments: data_label: D182
data_type: string
name: parse_data
arguments: data_label: D66
data_type: string
name: parse_data
arguments: data_label: D340
data_type: string
name: parse_data
arguments: data_label: D933
data_type: string
name: parse_data
arguments: data_label: D796
data_type: byte[8]
name: parse_data
arguments: data_label: D78
data_type: string
name: parse_data
arguments: data_label: D77
data_type: byte[8]

tool: D604: ui_SetName

tool: D965: ui_Name

tool: D345: name

tool: D371: ui_setRate

tool: D385: rate

tool: {"D717": [0x00,0x40,0x9c,0x45]}

tool: D903: 30

tool: D714: cl_maxpackets

tool: D523: 1

tool: D297: cl_packetdup

tool: {"D616": [0x00,0x00,0x7a,0x45]}

tool: D640: 15

tool: D610: 2

tool: D963: ui_GetName

tool: D30: r_colorbits

tool: D195: r_depthbits

tool: D783: r_stencilbits

tool: D763: r_lodbias

tool: D567: r_subdivisions

tool: D427: ui_glCustom

tool: D228: r_fullScreen

tool: D530: r_vertexlight

tool: D528: r_picmip

tool: D447: r_mode

tool: D809: r_texturebits

tool: D869: r_fastSky

tool: D91: r_inGameVideo

tool: D599: cg_shadows

tool: D678: cg_brassTime

tool: D182: GL_LINEAR_MIPMAP_LINEAR

tool: D66: r_texturemode

tool: D340: GL_LINEAR_MIPMAP_NEAREST

tool: D933: ui_mousePitch

tool: {"D796": [0x00,0x00,0x00,0x00,0x2b,0x87,0x96,0x3f]}

tool: D78: m_pitch

tool: {"D77": [0x00,0x00,0x00,0x00,0x2b,0x87,0x96,0xbf]}

assistant: ```c
void UI_Update(const char *name) {
  int val = trap_Cvar_VariableValue(name);
  if (Q_stricmp(name, "ui_SetName") == 0) {
    trap_Cvar_Set("name", UI_Cvar_VariableString("ui_Name"));
  } else if (Q_stricmp(name, "ui_setRate") == 0) {
    float rate = trap_Cvar_VariableValue("rate");
    if (rate >= 5000) {
      trap_Cvar_Set("cl_maxpackets", "30");
      trap_Cvar_Set("cl_packetdup", "1");
    } else if (rate >= 4000) {
      trap_Cvar_Set("cl_maxpackets", "15");
      trap_Cvar_Set("cl_packetdup", "2");
    } else {
      trap_Cvar_Set("cl_maxpackets", "15");
      trap_Cvar_Set("cl_packetdup", "1");
    }
  } else if (Q_stricmp(name, "ui_GetName") == 0) {
    trap_Cvar_Set("ui_Name", UI_Cvar_VariableString("name"));
  } else if (Q_stricmp(name, "r_colorbits") == 0) {
    switch (val) {
    case 0:
      trap_Cvar_SetValue("r_depthbits", 0);
      trap_Cvar_SetValue("r_stencilbits", 0);
      break;
    case 16:
      trap_Cvar_SetValue("r_depthbits", 16);
      trap_Cvar_SetValue("r_stencilbits", 0);
      break;
    case 32:
      trap_Cvar_SetValue("r_depthbits", 24);
      break;
    }
  } else if (Q_stricmp(name, "r_lodbias") == 0) {
    switch (val) {
    case 0:
      trap_Cvar_SetValue("r_subdivisions", 4);
      break;
    case 1:
      trap_Cvar_SetValue("r_subdivisions", 12);
      break;
    case 2:
      trap_Cvar_SetValue("r_subdivisions", 20);
      break;
    }
  } else if (Q_stricmp(name, "ui_glCustom") == 0) {
    switch (val) {
    case 0:
      trap_Cvar_SetValue("r_fullScreen", 1);
      trap_Cvar_SetValue("r_subdivisions", 4);
      trap_Cvar_SetValue("r_vertexlight", 0);
      trap_Cvar_SetValue("r_lodbias", 0);
      trap_Cvar_SetValue("r_colorbits", 32);
      trap_Cvar_SetValue("r_depthbits", 24);
      trap_Cvar_SetValue("r_picmip", 0);
      trap_Cvar_SetValue("r_mode", 4);
      trap_Cvar_SetValue("r_texturebits", 32);
      trap_Cvar_SetValue("r_fastSky", 0);
      trap_Cvar_SetValue("r_inGameVideo", 1);
      trap_Cvar_SetValue("cg_shadows", 1);
      trap_Cvar_SetValue("cg_brassTime", 2500);
      trap_Cvar_Set("r_texturemode", "GL_LINEAR_MIPMAP_LINEAR");
      break;
    case 1:
      trap_Cvar_SetValue("r_fullScreen", 1);
      trap_Cvar_SetValue("r_subdivisions", 12);
      trap_Cvar_SetValue("r_vertexlight", 0);
      trap_Cvar_SetValue("r_lodbias", 0);
      trap_Cvar_SetValue("r_colorbits", 0);
      trap_Cvar_SetValue("r_depthbits", 24);
      trap_Cvar_SetValue("r_picmip", 0);
      trap_Cvar_SetValue("r_mode", 3);
      trap_Cvar_SetValue("r_texturebits", 0);
      trap_Cvar_SetValue("r_fastSky", 0);
      trap_Cvar_SetValue("r_inGameVideo", 1);
      trap_Cvar_SetValue("cg_brassTime", 2500);
      trap_Cvar_Set("r_texturemode", "GL_LINEAR_MIPMAP_LINEAR");
      trap_Cvar_SetValue("cg_shadows", 0);
      break;
    case 2:
      trap_Cvar_SetValue("r_fullScreen", 1);
      trap_Cvar_SetValue("r_subdivisions", 8);
      trap_Cvar_SetValue("r_vertexlight", 0);
      trap_Cvar_SetValue("r_lodbias", 1);
      trap_Cvar_SetValue("r_colorbits", 0);
      trap_Cvar_SetValue("r_depthbits", 0);
      trap_Cvar_SetValue("r_picmip", 1);
      trap_Cvar_SetValue("r_mode", 3);
      trap_Cvar_SetValue("r_texturebits", 0);
      trap_Cvar_SetValue("cg_shadows", 0);
      trap_Cvar_SetValue("r_fastSky", 1);
      trap_Cvar_SetValue("r_inGameVideo", 0);
      trap_Cvar_SetValue("cg_brassTime", 0);
      trap_Cvar_Set("r_texturemode", "GL_LINEAR_MIPMAP_NEAREST");
      break;
    case 3:
      trap_Cvar_SetValue("r_fullScreen", 1);
      trap_Cvar_SetValue("r_subdivisions", 20);
      trap_Cvar_SetValue("r_vertexlight", 1);
      trap_Cvar_SetValue("r_lodbias", 2);
      trap_Cvar_SetValue("r_colorbits", 16);
      trap_Cvar_SetValue("r_depthbits", 16);
      trap_Cvar_SetValue("r_mode", 3);
      trap_Cvar_SetValue("r_picmip", 2);
      trap_Cvar_SetValue("r_texturebits", 16);
      trap_Cvar_SetValue("cg_shadows", 0);
      trap_Cvar_SetValue("cg_brassTime", 0);
      trap_Cvar_SetValue("r_fastSky", 1);
      trap_Cvar_SetValue("r_inGameVideo", 0);
      trap_Cvar_Set("r_texturemode", "GL_LINEAR_MIPMAP_NEAREST");
      break;
    }
  } else if (Q_stricmp(name, "ui_mousePitch") == 0) {
    if (val == 0) {
      trap_Cvar_SetValue("m_pitch", 0.022f);
    } else {
      trap_Cvar_SetValue("m_pitch", -0.022f);
    }
  }
}
```