// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_objx/lv_page.c
// Function: lv_scrl_design
static bool lv_scrl_design(lv_obj_t * scrl, const lv_area_t * mask, lv_design_mode_t mode)
{
    if(mode == LV_DESIGN_COVER_CHK) {
        return ancestor_design(scrl, mask, mode);
    } else if(mode == LV_DESIGN_DRAW_MAIN) {
#if LV_USE_GROUP
        /* If the page is focused in a group and
         * the background object is not visible (transparent)
         * then "activate" the style of the scrollable*/
        const lv_style_t * style_scrl_ori = lv_obj_get_style(scrl);
        lv_obj_t * page                   = lv_obj_get_parent(scrl);
        const lv_style_t * style_page     = lv_obj_get_style(page);
        lv_group_t * g                    = lv_obj_get_group(page);
        if((style_page->body.opa == LV_OPA_TRANSP) &&
           style_page->body.border.width == 0) { /*Is the background visible?*/
            if(lv_group_get_focused(g) == page) {
                lv_style_t * style_mod;
                style_mod = lv_group_mod_style(g, style_scrl_ori);
                /*If still not visible modify the style a littel bit*/
                if((style_mod->body.opa == LV_OPA_TRANSP) && style_mod->body.border.width == 0) {
                    style_mod->body.opa          = LV_OPA_50;
                    style_mod->body.border.width = 1;
                    style_mod                    = lv_group_mod_style(g, style_mod);
                }

                scrl->style_p = style_mod; /*Temporally change the style to the activated */
            }
        }
#endif
        ancestor_design(scrl, mask, mode);

#if LV_USE_GROUP
        scrl->style_p = style_scrl_ori; /*Revert the style*/
#endif
    } else if(mode == LV_DESIGN_DRAW_POST) {
        ancestor_design(scrl, mask, mode);
    }

    return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movb %dl, %al
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movb %al, -0x19(%rbp)
movzbl -0x19(%rbp), %eax
cmpl $0x2, %eax
jne 0x3d15d
movq 0x4c3fb(%rip), %rax     # 0x89540
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movzbl -0x19(%rbp), %edx
callq *%rax
andb $0x1, %al
movb %al, -0x1(%rbp)
jmp 0x3d26c
movzbl -0x19(%rbp), %eax
cmpl $0x0, %eax
jne 0x3d246
movq -0x10(%rbp), %rdi
callq 0xa080
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rdi
callq 0x71b0
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0xa080
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
callq 0x77c0
movq %rax, -0x40(%rbp)
movq -0x38(%rbp), %rax
movzbl 0x8(%rax), %eax
cmpl $0x0, %eax
jne 0x3d223
movq -0x38(%rbp), %rax
movswl 0xc(%rax), %eax
cmpl $0x0, %eax
jne 0x3d223
movq -0x40(%rbp), %rdi
callq 0x3010
cmpq -0x30(%rbp), %rax
jne 0x3d221
movq -0x40(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0x31c0
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
movzbl 0x8(%rax), %eax
cmpl $0x0, %eax
jne 0x3d215
movq -0x48(%rbp), %rax
movswl 0xc(%rax), %eax
cmpl $0x0, %eax
jne 0x3d215
movq -0x48(%rbp), %rax
movb $0x7f, 0x8(%rax)
movq -0x48(%rbp), %rax
movw $0x1, 0xc(%rax)
movq -0x40(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0x31c0
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x48(%rax)
jmp 0x3d223
movq 0x4c316(%rip), %rax     # 0x89540
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movzbl -0x19(%rbp), %edx
callq *%rax
movq -0x28(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, 0x48(%rax)
jmp 0x3d266
movzbl -0x19(%rbp), %eax
cmpl $0x1, %eax
jne 0x3d264
movq 0x4c2ea(%rip), %rax     # 0x89540
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movzbl -0x19(%rbp), %edx
callq *%rax
jmp 0x3d266
jmp 0x3d268
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x50, %rsp
popq %rbp
retq
nopw (%rax,%rax)