// File: /workspace/github_c_makefile_star2_O0/justy989[P]ce/ce_app.c
// Function: load_file_input_complete_func
bool load_file_input_complete_func(CeApp_t* app, CeBuffer_t* input_buffer){
     // TODO: compress with code above
     CeLayout_t* tab_layout = app->tab_list_layout->tab_list.current;
     if(tab_layout->tab.current->type != CE_LAYOUT_TYPE_VIEW) return false;
     CeView_t* view = &tab_layout->tab.current->view;

     char* base_directory = buffer_base_directory(view->buffer);
     char filepath[MAX_PATH_LEN];
     for(int64_t i = 0; i < app->input_view.buffer->line_count; i++){
          if(base_directory && app->input_view.buffer->lines[i][0] != CE_PATH_SEPARATOR){
               snprintf(filepath, MAX_PATH_LEN, "%s%c%s", base_directory, CE_PATH_SEPARATOR, app->input_view.buffer->lines[i]);
          }else{
               strncpy(filepath, app->input_view.buffer->lines[i], MAX_PATH_LEN);
          }
          if(!load_file_into_view(&app->buffer_node_head, view, &app->config_options, &app->vim,
                                  true, filepath)){
               ce_app_message(app, "failed to load file '%s': '%s'", filepath, strerror(errno));
               errno = 0;
               return false;
          }
          if(!ce_clangd_file_open(&app->clangd, app->buffer_node_head->buffer)){
               return false;
          }
     }

     free(base_directory);
     return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x450, %rsp            # imm = 0x450
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq 0x2818(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
cmpl $0x0, (%rax)
je 0x1848c
movb $0x0, -0x1(%rbp)
jmp 0x18642
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
addq $0x8, %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq 0x40(%rax), %rdi
callq 0x149f0
movq %rax, -0x30(%rbp)
movq $0x0, -0x438(%rbp)
movq -0x438(%rbp), %rax
movq -0x10(%rbp), %rcx
movq 0x2748(%rcx), %rcx
cmpq 0x8(%rcx), %rax
jge 0x18635
cmpq $0x0, -0x30(%rbp)
je 0x1853b
movq -0x10(%rbp), %rax
movq 0x2748(%rax), %rax
movq (%rax), %rax
movq -0x438(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movsbl (%rax), %eax
cmpl $0x2f, %eax
je 0x1853b
leaq -0x430(%rbp), %rdi
movq -0x30(%rbp), %rcx
movq -0x10(%rbp), %rax
movq 0x2748(%rax), %rax
movq (%rax), %rax
movq -0x438(%rbp), %rdx
movq (%rax,%rdx,8), %r9
movl $0x400, %esi            # imm = 0x400
leaq 0x2a334(%rip), %rdx     # 0x42860
movl $0x2f, %r8d
movb $0x0, %al
callq 0xd250
jmp 0x18565
leaq -0x430(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x2748(%rax), %rax
movq (%rax), %rax
movq -0x438(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
movl $0x400, %edx            # imm = 0x400
callq 0xd0b0
movq -0x10(%rbp), %rdi
addq $0x2828, %rdi           # imm = 0x2828
movq -0x28(%rbp), %rsi
movq -0x10(%rbp), %rdx
addq $0x1a50, %rdx           # imm = 0x1A50
movq -0x10(%rbp), %rcx
addq $0x20, %rcx
leaq -0x430(%rbp), %r9
movl $0x1, %r8d
callq 0x14420
cmpq $0x0, %rax
jne 0x185f4
movq -0x10(%rbp), %rax
movq %rax, -0x448(%rbp)
leaq -0x430(%rbp), %rax
movq %rax, -0x440(%rbp)
callq 0xd0a0
movl (%rax), %edi
callq 0xd630
movq -0x448(%rbp), %rdi
movq -0x440(%rbp), %rdx
movq %rax, %rcx
leaq 0x2b708(%rip), %rsi     # 0x43ce4
movb $0x0, %al
callq 0x159f0
callq 0xd0a0
movl $0x0, (%rax)
movb $0x0, -0x1(%rbp)
jmp 0x18642
movq -0x10(%rbp), %rdi
addq $0x2cd0, %rdi           # imm = 0x2CD0
movq -0x10(%rbp), %rax
movq 0x2828(%rax), %rax
movq (%rax), %rsi
callq 0x1a760
testb $0x1, %al
jne 0x1861c
movb $0x0, -0x1(%rbp)
jmp 0x18642
jmp 0x1861e
movq -0x438(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x438(%rbp)
jmp 0x184b8
movq -0x30(%rbp), %rdi
callq 0xd090
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x450, %rsp            # imm = 0x450
popq %rbp
retq