// File: /workspace/github_c_makefile_star2_O1/justy989[P]ce/ce_commands.c
// Function: command_syntax
CeCommandStatus_t command_syntax(CeCommand_t* command, void* user_data){
     if(command->arg_count != 1) return CE_COMMAND_PRINT_HELP;
     if(command->args[0].type != CE_COMMAND_ARG_STRING) return CE_COMMAND_PRINT_HELP;
     CeApp_t* app = user_data;
     CommandContext_t command_context = {};

     if(!get_command_context(app, &command_context)) return CE_COMMAND_NO_ACTION;

     CeAppBufferData_t* buffer_data = command_context.view->buffer->app_data;

     if(strcmp(command->args[0].string, "c") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_c;
     }else if(strcmp(command->args[0].string, "cpp") == 0 ||
              strcmp(command->args[0].string, "c++") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_cpp;
     }else if(strcmp(command->args[0].string, "python") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_python;
     }else if(strcmp(command->args[0].string, "java") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_java;
     }else if(strcmp(command->args[0].string, "bash") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_bash;
     }else if(strcmp(command->args[0].string, "config") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_config;
     }else if(strcmp(command->args[0].string, "diff") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_diff;
     }else if(strcmp(command->args[0].string, "plain") == 0){
          buffer_data->syntax_function = ce_syntax_highlight_plain;
     }else{
          return CE_COMMAND_PRINT_HELP;
     }

     return CE_COMMAND_SUCCESS;
}

// Assembly:
movl $0x2, %eax
cmpq $0x1, 0x208(%rdi)
jne 0x18bbd
pushq %r15
pushq %r14
pushq %rbx
movq 0x200(%rdi), %rcx
cmpl $0x2, (%rcx)
jne 0x18bb8
movq 0x27f8(%rsi), %rdx
testq %rdx, %rdx
je 0x18aa0
xorl %esi, %esi
jmp 0x18abc
movq 0x2818(%rsi), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
leaq 0x8(%rax), %rdi
xorl %esi, %esi
cmpl $0x0, (%rax)
cmoveq %rdi, %rsi
movl $0x3, %eax
testq %rdx, %rdx
jne 0x18bb8
movq 0x40(%rsi), %rax
movq 0x58(%rax), %r14
movq 0x8(%rcx), %rbx
leaq 0x17b69(%rip), %rsi     # 0x30646
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18ba8
leaq 0x15d79(%rip), %rsi     # 0x2e86d
movq %rbx, %rdi
callq 0xd390
leaq 0x7e44(%rip), %r15      # 0x20947
testl %eax, %eax
je 0x18baf
leaq 0x179c3(%rip), %rsi     # 0x304d5
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18baf
leaq 0x179b0(%rip), %rsi     # 0x304d9
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18bbe
leaq 0x15d43(%rip), %rsi     # 0x2e883
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18bc7
leaq 0x1798d(%rip), %rsi     # 0x304e0
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18bd0
leaq 0x18a77(%rip), %rsi     # 0x315dd
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18bd9
leaq 0x15d19(%rip), %rsi     # 0x2e892
movq %rbx, %rdi
callq 0xd390
testl %eax, %eax
je 0x18be2
leaq 0x17959(%rip), %rsi     # 0x304e5
movq %rbx, %rdi
callq 0xd390
movl %eax, %ecx
movl $0x2, %eax
testl %ecx, %ecx
jne 0x18bb8
leaq 0x96f3(%rip), %r15      # 0x22299
jmp 0x18baf
leaq 0x730f(%rip), %r15      # 0x1febe
movq %r15, 0x600(%r14)
xorl %eax, %eax
popq %rbx
popq %r14
popq %r15
retq
leaq 0x87c0(%rip), %r15      # 0x21385
jmp 0x18baf
leaq 0x834f(%rip), %r15      # 0x20f1d
jmp 0x18baf
leaq 0x8dcc(%rip), %r15      # 0x219a3
jmp 0x18baf
leaq 0x9118(%rip), %r15      # 0x21cf8
jmp 0x18baf
leaq 0x9464(%rip), %r15      # 0x2204d
jmp 0x18baf