user: 下面的汇编指令对应的C源代码是什么:

```asm
<apariencia>:
  endbr64
  push   %r12
  lea    D1(%rip),%r12
  push   %rbp
  mov    %r12,%rdi
  mov    %rsi,%rbp
  add    $0xa,%rbp
  sub    $0x8,%rsp
  call   <stringLength@plt>
  mov    %rbp,%rsi
  mov    %r12,%rdi
  mov    %eax,%edx
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L60
  call   <getCurrentSConsole@plt>
  mov    $0xb691,%esi
  mov    %eax,%edi
  call   <setSConsolebackGroundColour@plt>
  xor    %eax,%eax
  call   <getCurrentSConsole@plt>
  xor    %esi,%esi
  mov    %eax,%edi
  call   <setSConsoleFontColour@plt>
  lea    D18(%rip),%rdi
  call   <uart_puts@plt>
L20:
  xor    %eax,%eax
  call   <getCurrentSConsole@plt>
  add    $0x8,%rsp
  pop    %rbp
  mov    %eax,%edi
  pop    %r12
  jmp    1100 <focusSConsole@plt>
  nopl   0x0(%rax)
L60:
  lea    D45(%rip),%r12
  mov    %r12,%rdi
  call   <stringLength@plt>
  mov    %rbp,%rsi
  mov    %r12,%rdi
  mov    %eax,%edx
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L16
  call   <getCurrentSConsole@plt>
  mov    $0x2844,%esi
  mov    %eax,%edi
  call   <setSConsolebackGroundColour@plt>
  xor    %eax,%eax
  call   <getCurrentSConsole@plt>
  mov    $0xafe5,%esi
  mov    %eax,%edi
  call   <setSConsoleFontColour@plt>
  lea    D20(%rip),%rdi
  call   <uart_puts@plt>
  jmp    L20
  nopw   0x0(%rax,%rax,1)
L16:
  lea    D43(%rip),%r12
  mov    %r12,%rdi
  call   <stringLength@plt>
  mov    %rbp,%rsi
  mov    %r12,%rdi
  mov    %eax,%edx
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L41
  call   <getCurrentSConsole@plt>
  xor    %esi,%esi
  mov    %eax,%edi
  call   <setSConsolebackGroundColour@plt>
  xor    %eax,%eax
  call   <getCurrentSConsole@plt>
  mov    $0xffff,%esi
  mov    %eax,%edi
  call   <setSConsoleFontColour@plt>
  lea    D21(%rip),%rdi
  call   <uart_puts@plt>
  jmp    L20
  nopw   0x0(%rax,%rax,1)
L41:
  lea    D69(%rip),%r12
  mov    %r12,%rdi
  call   <stringLength@plt>
  mov    %rbp,%rsi
  mov    %r12,%rdi
  mov    %eax,%edx
  call   <strncmp@plt>
  test   %eax,%eax
  jne    L20
  call   <getCurrentSConsole@plt>
  mov    $0xf,%esi
  mov    %eax,%edi
  call   <setSConsolebackGroundColour@plt>
  xor    %eax,%eax
  call   <getCurrentSConsole@plt>
  mov    $0xffff,%esi
  mov    %eax,%edi
  call   <setSConsoleFontColour@plt>
  lea    D2(%rip),%rdi
  call   <uart_puts@plt>
  jmp    L20
```

tool_calls: name: read_data
arguments: data_tag: D1
data_type: string
name: read_data
arguments: data_tag: D18
data_type: string
name: read_data
arguments: data_tag: D45
data_type: string
name: read_data
arguments: data_tag: D20
data_type: string
name: read_data
arguments: data_tag: D43
data_type: string
name: read_data
arguments: data_tag: D21
data_type: string
name: read_data
arguments: data_tag: D69
data_type: string
name: read_data
arguments: data_tag: D2
data_type: string

tool: D1: lima

tool: D18: <<< cambiando a estilo lima>>>>>>>

tool: D45: ros

tool: D20: <<< cambiando a estilo ros>>>>>>>

tool: D43: nyb

tool: D21: <<< cambiando a estilo nyb>>>>>>>

tool: D69: ayb

tool: D2: <<< cambiando a estilo ayb>>>>>>>

assistant: ```c
void apariencia(unsigned int argc, unsigned char (*argv_pointer)[10]) {
  if (!strncmp("lima", argv_pointer[1], stringLength("lima"))) {
    setSConsolebackGroundColour(getCurrentSConsole(), 0xb691);
    setSConsoleFontColour(getCurrentSConsole(), 0x0000);
    uart_puts("<<< cambiando a estilo lima>>>>>>>");
  } else if (!strncmp("ros", argv_pointer[1], stringLength("ros"))) {
    setSConsolebackGroundColour(getCurrentSConsole(), 0x2844);
    setSConsoleFontColour(getCurrentSConsole(), 0xAFE5);
    uart_puts("<<< cambiando a estilo ros>>>>>>>");
  } else if (!strncmp("nyb", argv_pointer[1], stringLength("nyb"))) {
    setSConsolebackGroundColour(getCurrentSConsole(), 0x0000);
    setSConsoleFontColour(getCurrentSConsole(), 0xFFFF);
    uart_puts("<<< cambiando a estilo nyb>>>>>>>");
  } else if (!strncmp("ayb", argv_pointer[1], stringLength("ayb"))) {
    setSConsolebackGroundColour(getCurrentSConsole(), 0x000F);
    setSConsoleFontColour(getCurrentSConsole(), 0xFFFF);
    uart_puts("<<< cambiando a estilo ayb>>>>>>>");
  }
  focusSConsole(getCurrentSConsole());
}
```