// File: /workspace/github_c_makefile_star2_O1/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
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x438, %rsp            # imm = 0x438
movq 0x2818(%rdi), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %r15
cmpl $0x0, (%r15)
je 0x14171
xorl %ebx, %ebx
jmp 0x142b2
movq %rdi, %r14
movq 0x48(%r15), %rdi
callq 0x11c40
movq %rax, 0x8(%rsp)
movq 0x2748(%r14), %rax
cmpq $0x0, 0x8(%rax)
setle %bl
jle 0x14275
addq $0x8, %r15
leaq 0x2828(%r14), %r13
leaq 0x1a50(%r14), %rcx
movq %rcx, 0x28(%rsp)
leaq 0x20(%r14), %rcx
movq %rcx, 0x20(%rsp)
movq %r14, 0x10(%rsp)
leaq 0x2cd0(%r14), %rcx
movq %rcx, 0x18(%rsp)
leaq 0x30(%rsp), %r12
xorl %ebp, %ebp
cmpq $0x0, 0x8(%rsp)
je 0x141e4
movq (%rax), %rcx
movq (%rcx,%rbp,8), %r9
cmpb $0x2f, (%r9)
jne 0x141fa
movq (%rax), %rax
movq (%rax,%rbp,8), %rsi
movl $0x400, %edx            # imm = 0x400
movq %r12, %rdi
callq 0xd0b0
jmp 0x1421b
movl $0x400, %esi            # imm = 0x400
movq %r12, %rdi
leaq 0x1a6a4(%rip), %rdx     # 0x2e8ad
movq 0x8(%rsp), %rcx
movl $0x2f, %r8d
xorl %eax, %eax
callq 0xd260
movq %r13, %rdi
movq %r15, %rsi
movq 0x28(%rsp), %rdx
movq 0x20(%rsp), %rcx
movl $0x1, %r8d
movq %r12, %r14
movq %r12, %r9
callq 0x118b2
testq %rax, %rax
je 0x14281
movq (%r13), %rax
movq (%rax), %rsi
movq 0x18(%rsp), %rdi
callq 0x159ff
testb %al, %al
je 0x142b2
incq %rbp
movq 0x10(%rsp), %rax
movq 0x2748(%rax), %rax
cmpq 0x8(%rax), %rbp
setge %bl
movq %r14, %r12
jl 0x141cf
movq 0x8(%rsp), %rdi
callq 0xd090
jmp 0x142b2
callq 0xd0a0
movq %rax, %r15
movl (%rax), %edi
callq 0xd650
leaq 0x1ba9a(%rip), %rsi     # 0x2fd31
leaq 0x30(%rsp), %rdx
movq 0x10(%rsp), %rdi
movq %rax, %rcx
xorl %eax, %eax
callq 0x12502
movl $0x0, (%r15)
andb $0x1, %bl
movl %ebx, %eax
addq $0x438, %rsp            # imm = 0x438
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq