LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: slider_init
static void slider_init(void)
{
#if LV_USE_SLIDER != 0
    lv_style_copy(&slider_knob, &def);
    slider_knob.body.opa          = LV_OPA_60;
    slider_knob.body.radius       = LV_RADIUS_CIRCLE;
    slider_knob.body.main_color   = LV_COLOR_PURPLE;
    slider_knob.body.grad_color   = LV_COLOR_SILVER;
    slider_knob.body.border.width = 2;
    slider_knob.body.border.color = LV_COLOR_ORANGE;
    slider_knob.body.border.opa   = LV_OPA_50;

    theme.style.slider.bg    = &bar_bg;
    theme.style.slider.indic = &bar_indic;
    theme.style.slider.knob  = &slider_knob;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x43931(%rip), %rdi     # 0x998a0
leaq 0x433d2(%rip), %rsi     # 0x99348
callq 0xc550
movb $-0x67, 0x43926(%rip)   # 0x998a8
movw $0x7c18, 0x4391b(%rip)  # imm = 0x7C18
movw -0x2(%rbp), %ax
andw $-0x20, %ax
orw $0x10, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0x8000, %ax            # imm = 0x8000
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x438dc(%rip)      # 0x998a2
movw -0x4(%rbp), %ax
andw $-0x20, %ax
orw $0x18, %ax
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x600, %ax             # imm = 0x600
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0xc000, %ax            # imm = 0xC000
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x438a3(%rip)      # 0x998a4
movw $0x2, 0x438a2(%rip)     # 0x998ac
movw -0x6(%rbp), %ax
andw $-0x20, %ax
orw $0x0, %ax
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x520, %ax             # imm = 0x520
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0xf800, %ax            # imm = 0xF800
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
movw %ax, 0x43865(%rip)      # 0x998aa
movb $0x7f, 0x43863(%rip)    # 0x998af
leaq 0x4369d(%rip), %rax     # 0x996f0
movq %rax, 0x43046(%rip)     # 0x990a0
leaq 0x436d7(%rip), %rax     # 0x99738
movq %rax, 0x43040(%rip)     # 0x990a8
leaq 0x43831(%rip), %rax     # 0x998a0
movq %rax, 0x4303a(%rip)     # 0x990b0
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: lmeter_init
static void lmeter_init(void)
{
#if LV_USE_LMETER != 0
    lv_style_copy(&lmeter_bg, &def);
    lmeter_bg.body.main_color   = lv_color_hsv_to_rgb(_hue, 10, 70);
    lmeter_bg.body.grad_color   = lv_color_hsv_to_rgb(_hue, 80, 80);
    lmeter_bg.body.padding.left = LV_DPI / 8; /*Scale line length*/
    lmeter_bg.line.color        = lv_color_hex3(0x500);
    lmeter_bg.line.width        = 2;

    theme.style.lmeter = &lmeter_bg;

#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x43811(%rip), %rdi     # 0x999c0
leaq 0x43192(%rip), %rsi     # 0x99348
callq 0xc550
movl $0xa, %esi
movl $0x46, %edx
movzwl 0x42e0c(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x437e2(%rip)      # 0x999c2
movl $0x50, %edx
movzwl 0x42dec(%rip), %edi     # 0x98fd8
movl %edx, %esi
callq 0x45bf0
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x437c2(%rip)      # 0x999c4
movw $0xc, 0x437cf(%rip)     # 0x999da
movl $0x500, %edi            # imm = 0x500
callq 0x57a50
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
movw %ax, 0x437d8(%rip)      # 0x999fc
movw $0x2, 0x437d1(%rip)     # 0x999fe
leaq 0x4378c(%rip), %rax     # 0x999c0
movq %rax, 0x42e7d(%rip)     # 0x990b8
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: gauge_init
static void gauge_init(void)
{
#if LV_USE_GAUGE != 0
    static lv_style_t gauge_bg;
    lv_style_copy(&gauge_bg, &def);
    gauge_bg.body.main_color     = lv_color_hsv_to_rgb(_hue, 20, 100);
    gauge_bg.body.grad_color     = gauge_bg.body.main_color;
    gauge_bg.body.padding.left   = LV_DPI / 16; /*Scale line length*/
    gauge_bg.body.padding.right  = LV_DPI / 16; /*Scale line length*/
    gauge_bg.body.padding.top    = LV_DPI / 20; /*Needle center size*/
    gauge_bg.body.padding.bottom = LV_DPI / 20; /*Needle center size*/
    gauge_bg.body.padding.inner  = LV_DPI / 12; /*Label - scale distance*/
    gauge_bg.body.border.color   = lv_color_hex3(0x500);
    gauge_bg.line.color          = lv_color_hsv_to_rgb(_hue, 80, 75);
    gauge_bg.line.width          = 2;
    gauge_bg.text.color          = lv_color_hsv_to_rgb(_hue, 10, 90);
    gauge_bg.text.font           = _font;

    theme.style.gauge = &gauge_bg;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x437a9(%rip), %rdi     # 0x99a08
leaq 0x430e2(%rip), %rsi     # 0x99348
callq 0xc550
movl $0x14, %esi
movl $0x64, %edx
movzwl 0x42d5c(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x4377a(%rip)      # 0x99a0a
movw 0x43773(%rip), %ax      # 0x99a0a
movw %ax, 0x4376e(%rip)      # 0x99a0c
movw $0x6, 0x4377b(%rip)     # 0x99a22
movw $0x6, 0x43774(%rip)     # 0x99a24
movw $0x5, 0x43765(%rip)     # 0x99a1e
movw $0x5, 0x4375e(%rip)     # 0x99a20
movw $0x8, 0x4375b(%rip)     # 0x99a26
movl $0x500, %edi            # imm = 0x500
callq 0x57a50
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x4372e(%rip)      # 0x99a12
movl $0x50, %esi
movl $0x4b, %edx
movzwl 0x42ce3(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
movw %ax, 0x4373b(%rip)      # 0x99a44
movw $0x2, 0x43734(%rip)     # 0x99a46
movl $0xa, %esi
movl $0x5a, %edx
movzwl 0x42cb5(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x8(%rbp)
movw -0x8(%rbp), %ax
movw %ax, 0x436f1(%rip)      # 0x99a28
movq 0x42ca2(%rip), %rax     # 0x98fe0
movq %rax, 0x436eb(%rip)     # 0x99a30
leaq 0x436bc(%rip), %rax     # 0x99a08
movq %rax, 0x42d6d(%rip)     # 0x990c0
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: arc_init
static void arc_init(void)
{
#if LV_USE_ARC != 0

    static lv_style_t arc;
    lv_style_copy(&arc, &def);
    arc.line.width   = 10;
    arc.line.color   = lv_color_hsv_to_rgb(_hue, 70, 90);
    arc.line.rounded = 1;

    /*For preloader*/
    arc.body.border.width = 0;

    theme.style.arc = &arc;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x436e1(%rip), %rdi     # 0x99a50
leaq 0x42fd2(%rip), %rsi     # 0x99348
callq 0xc550
movw $0xa, 0x4370a(%rip)     # 0x99a8e
movl $0x46, %esi
movl $0x5a, %edx
movzwl 0x42c43(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x436e3(%rip)      # 0x99a8c
movb 0x436e2(%rip), %al      # 0x99a91
andb $-0x2, %al
orb $0x1, %al
movb %al, 0x436d8(%rip)      # 0x99a91
movw $0x0, 0x4369a(%rip)     # 0x99a5c
leaq 0x43687(%rip), %rax     # 0x99a50
movq %rax, 0x42cf8(%rip)     # 0x990c8
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: roller_init
static void roller_init(void)
{
#if LV_USE_ROLLER != 0
    static lv_style_t roller_bg, roller_sel;
    lv_style_copy(&roller_bg, &ddlist_bg);
    roller_bg.text.line_space   = LV_DPI / 6;
    roller_bg.body.radius       = LV_DPI / 20;
    roller_bg.body.main_color   = lv_color_hex3(0x500);
    roller_bg.body.grad_color   = lv_color_hex3(0x005);
    roller_bg.body.border.opa   = LV_OPA_30;
    roller_bg.text.opa          = LV_OPA_70;
    roller_bg.text.color        = lv_color_hsv_to_rgb(_hue, 20, 70);
    roller_bg.body.shadow.width = 0;

    lv_style_copy(&roller_sel, &panel);
    roller_sel.body.opa    = LV_OPA_TRANSP;
    roller_sel.body.radius = 0;
    roller_sel.text.opa    = LV_OPA_COVER;
    roller_sel.text.color  = lv_color_hsv_to_rgb(_hue, 70, 95);

    theme.style.roller.bg  = &roller_bg;
    theme.style.roller.sel = &roller_sel;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x430e9(%rip), %rdi     # 0x9a158
leaq 0x43052(%rip), %rsi     # 0x9a0c8
callq 0xc550
movw $0x10, 0x43106(%rip)    # 0x9a18a
movw $0x5, 0x430d1(%rip)     # 0x9a15e
movl $0x500, %edi            # imm = 0x500
callq 0x57a50
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x430b4(%rip)      # 0x9a15a
movl $0x5, %edi
callq 0x57a50
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x4309d(%rip)      # 0x9a15c
movb $0x4c, 0x430a1(%rip)    # 0x9a167
movb $-0x4e, 0x430bf(%rip)   # 0x9a18c
movl $0x14, %esi
movl $0x46, %edx
movzwl 0x41efa(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
movw %ax, 0x43086(%rip)      # 0x9a178
movw $0x0, 0x4306f(%rip)     # 0x9a16a
leaq 0x4309e(%rip), %rdi     # 0x9a1a0
leaq 0x42317(%rip), %rsi     # 0x99420
callq 0xc550
movb $0x0, 0x43093(%rip)     # 0x9a1a8
movw $0x0, 0x43088(%rip)     # 0x9a1a6
movb $-0x1, 0x430af(%rip)    # 0x9a1d4
movl $0x46, %esi
movl $0x5f, %edx
movzwl 0x41ea2(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x8(%rbp)
movw -0x8(%rbp), %ax
movw %ax, 0x43076(%rip)      # 0x9a1c0
leaq 0x43007(%rip), %rax     # 0x9a158
movq %rax, 0x42140(%rip)     # 0x99298
leaq 0x43041(%rip), %rax     # 0x9a1a0
movq %rax, 0x4213a(%rip)     # 0x992a0
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: table_init
static void table_init(void)
{
#if LV_USE_TABLE != 0
    static lv_style_t cell;
    lv_style_copy(&cell, &panel);
    cell.body.radius       = 0;
    cell.body.border.width = 1;

    theme.style.table.bg   = &lv_style_transp_tight;
    theme.style.table.cell = &cell;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x42d95(%rip), %rdi     # 0x9a350
leaq 0x41e5e(%rip), %rsi     # 0x99420
callq 0xc550
movw $0x0, 0x42d86(%rip)     # 0x9a356
movw $0x1, 0x42d83(%rip)     # 0x9a35c
leaq 0x31bb8(%rip), %rax     # 0x89198
movq %rax, 0x41d11(%rip)     # 0x992f8
leaq 0x42d62(%rip), %rax     # 0x9a350
movq %rax, 0x41d0b(%rip)     # 0x99300
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: win_init
static void win_init(void)
{
#if LV_USE_WIN != 0
    static lv_style_t win_header;

    lv_style_copy(&win_header, &panel);
    win_header.body.radius         = 0;
    win_header.body.padding.left   = LV_DPI / 12;
    win_header.body.padding.right  = LV_DPI / 12;
    win_header.body.padding.top    = LV_DPI / 20;
    win_header.body.padding.bottom = LV_DPI / 20;
    win_header.body.border.opa     = panel.body.border.opa;
    win_header.body.border.width   = panel.body.border.width;
    win_header.body.border.color   = lv_color_hsv_to_rgb(_hue, 20, 80);
    win_header.text.color          = lv_color_hsv_to_rgb(_hue, 5, 100);

    theme.style.win.bg      = &bg;
    theme.style.win.sb      = &sb;
    theme.style.win.header  = &win_header;
    theme.style.win.content = &lv_style_transp;
    theme.style.win.btn.rel = &btn_rel;
    theme.style.win.btn.pr  = &btn_pr;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x42d89(%rip), %rdi     # 0x9a398
leaq 0x41e0a(%rip), %rsi     # 0x99420
callq 0xc550
movw $0x0, 0x42d7a(%rip)     # 0x9a39e
movw $0x8, 0x42d85(%rip)     # 0x9a3b2
movw $0x8, 0x42d7e(%rip)     # 0x9a3b4
movw $0x5, 0x42d6f(%rip)     # 0x9a3ae
movw $0x5, 0x42d68(%rip)     # 0x9a3b0
movb 0x41de1(%rip), %al      # 0x9942f
movb %al, 0x42d53(%rip)      # 0x9a3a7
movw 0x41dd1(%rip), %ax      # 0x9942c
movw %ax, 0x42d42(%rip)      # 0x9a3a4
movl $0x14, %esi
movl $0x50, %edx
movzwl 0x41965(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x42d1b(%rip)      # 0x9a3a2
movl $0x5, %esi
movl $0x64, %edx
movzwl 0x41940(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x42d0c(%rip)      # 0x9a3b8
leaq 0x41cdd(%rip), %rax     # 0x99390
movq %rax, 0x41c4e(%rip)     # 0x99308
leaq 0x41da7(%rip), %rax     # 0x99468
movq %rax, 0x41c48(%rip)     # 0x99310
leaq 0x42cc9(%rip), %rax     # 0x9a398
movq %rax, 0x41c42(%rip)     # 0x99318
leaq 0x31a2b(%rip), %rax     # 0x89108
movq %rax, 0x41c3c(%rip)     # 0x99320
leaq 0x41dc5(%rip), %rax     # 0x994b0
movq %rax, 0x41c36(%rip)     # 0x99328
leaq 0x41dff(%rip), %rax     # 0x994f8
movq %rax, 0x41c30(%rip)     # 0x99330
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_nemo.c
// Function: style_mod
static void style_mod(lv_group_t * group, lv_style_t * style)
{
    (void)group; /*Unused*/
#if LV_COLOR_DEPTH != 1
    style->body.border.width = 2;
    style->body.border.color = LV_COLOR_SILVER;
    style->body.border.opa   = LV_OPA_70;
    style->body.shadow.width = LV_DPI / 20;
    style->body.shadow.color = lv_color_hsv_to_rgb(_hue, 20, 90);
    style->body.main_color   = lv_color_hsv_to_rgb(_hue, 40, 80);
    style->body.grad_color   = lv_color_hsv_to_rgb(_hue, 40, 80);
#else
    style->body.border.opa   = LV_OPA_COVER;
    style->body.border.color = LV_COLOR_BLACK;
    style->body.border.width = 2;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movw $0x2, 0xc(%rax)
movq -0x10(%rbp), %rax
movw -0x12(%rbp), %cx
andw $-0x20, %cx
orw $0x18, %cx
movw %cx, -0x12(%rbp)
movw -0x12(%rbp), %cx
andw $0xf81f, %cx            # imm = 0xF81F
orw $0x600, %cx             # imm = 0x600
movw %cx, -0x12(%rbp)
movw -0x12(%rbp), %cx
andw $0x7ff, %cx             # imm = 0x7FF
orw $0xc000, %cx            # imm = 0xC000
movw %cx, -0x12(%rbp)
movw -0x12(%rbp), %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rax
movb $-0x4e, 0xf(%rax)
movq -0x10(%rbp), %rax
movw $0x5, 0x12(%rax)
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
movl $0x14, %esi
movl $0x5a, %edx
movzwl 0x41843(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, %cx
movq -0x30(%rbp), %rax
movw %cx, -0x14(%rbp)
movw -0x14(%rbp), %cx
movw %cx, 0x10(%rax)
movq -0x10(%rbp), %rax
movq %rax, -0x28(%rbp)
movl $0x28, %esi
movl $0x50, %edx
movzwl 0x41812(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, %cx
movq -0x28(%rbp), %rax
movw %cx, -0x16(%rbp)
movw -0x16(%rbp), %cx
movw %cx, 0x2(%rax)
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
movl $0x28, %esi
movl $0x50, %edx
movzwl 0x417e1(%rip), %edi     # 0x98fd8
callq 0x45bf0
movw %ax, %cx
movq -0x20(%rbp), %rax
movw %cx, -0x18(%rbp)
movw -0x18(%rbp), %cx
movw %cx, 0x4(%rax)
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: lv_theme_mono_init
lv_theme_t * lv_theme_mono_init(uint16_t hue, lv_font_t * font)
{

    (void)hue; /*Unused*/

    if(font == NULL) font = LV_FONT_DEFAULT;

    _font = font;

    /*For backward compatibility initialize all theme elements with a default style */
    uint16_t i;
    lv_style_t ** style_p = (lv_style_t **)&theme.style;
    for(i = 0; i < LV_THEME_STYLE_COUNT; i++) {
        *style_p = &def;
        style_p++;
    }

    basic_init();
    cont_init();
    btn_init();
    label_init();
    img_init();
    line_init();
    led_init();
    bar_init();
    slider_init();
    sw_init();
    lmeter_init();
    gauge_init();
    chart_init();
    calendar_init();
    cb_init();
    btnm_init();
    kb_init();
    mbox_init();
    page_init();
    ta_init();
    list_init();
    ddlist_init();
    roller_init();
    tabview_init();
    win_init();

#if LV_USE_GROUP
    theme.group.style_mod_xcb      = style_mod;
    theme.group.style_mod_edit_xcb = style_mod_edit;
#endif

    return &theme;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movw %di, %ax
movw %ax, -0x2(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x57c85
leaq 0x249d7(%rip), %rax     # 0x7c658
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, 0x42750(%rip)     # 0x9a3e0
leaq 0x42751(%rip), %rax     # 0x9a3e8
movq %rax, -0x20(%rbp)
movw $0x0, -0x12(%rbp)
movzwl -0x12(%rbp), %eax
cmpq $0x6a, %rax
jae 0x57cd3
movq -0x20(%rbp), %rax
leaq 0x42a92(%rip), %rcx     # 0x9a748
movq %rcx, (%rax)
movq -0x20(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x20(%rbp)
movw -0x12(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x12(%rbp)
jmp 0x57ca1
callq 0x57d80
callq 0x581c0
callq 0x581e0
callq 0x58230
callq 0x58260
callq 0x58290
callq 0x582b0
callq 0x58340
callq 0x583f0
callq 0x58460
callq 0x584a0
callq 0x585b0
callq 0x58630
callq 0x58650
callq 0x586a0
callq 0x58700
callq 0x58760
callq 0x587c0
callq 0x58800
callq 0x58830
callq 0x58870
callq 0x588f0
callq 0x58940
callq 0x58980
callq 0x589f0
leaq 0xd39(%rip), %rax       # 0x58a90
movq %rax, 0x429da(%rip)     # 0x9a738
leaq 0xdab(%rip), %rax       # 0x58b10
movq %rax, 0x429d4(%rip)     # 0x9a740
leaq 0x42675(%rip), %rax     # 0x9a3e8
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: btn_init
static void btn_init(void)
{
#if LV_USE_BTN != 0

    theme.style.btn.rel     = &light_frame;
    theme.style.btn.pr      = &dark_frame;
    theme.style.btn.tgl_rel = &dark_frame;
    theme.style.btn.tgl_pr  = &light_frame;
    theme.style.btn.ina     = &light_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x42635(%rip), %rax     # 0x9a820
movq %rax, 0x42216(%rip)     # 0x9a408
leaq 0x426b7(%rip), %rax     # 0x9a8b0
movq %rax, 0x42210(%rip)     # 0x9a410
leaq 0x426a9(%rip), %rax     # 0x9a8b0
movq %rax, 0x4220a(%rip)     # 0x9a418
leaq 0x4260b(%rip), %rax     # 0x9a820
movq %rax, 0x42204(%rip)     # 0x9a420
leaq 0x425fd(%rip), %rax     # 0x9a820
movq %rax, 0x421fe(%rip)     # 0x9a428
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: led_init
static void led_init(void)
{
#if LV_USE_LED != 0
    static lv_style_t led;
    lv_style_copy(&led, &light_frame);
    led.body.radius       = LV_RADIUS_CIRCLE;
    led.body.shadow.width = LV_DPI / 8;
    led.body.shadow.color = LV_COLOR_BLACK;
    led.body.shadow.type  = LV_SHADOW_FULL;

    theme.style.led = &led;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x42639(%rip), %rdi     # 0x9a8f8
leaq 0x4255a(%rip), %rsi     # 0x9a820
callq 0xc550
movw $0x7c18, 0x4262a(%rip)  # imm = 0x7C18
movw $0xc, 0x4262d(%rip)     # 0x9a90a
movw -0x2(%rbp), %ax
andw $-0x20, %ax
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x425f0(%rip)      # 0x9a908
movb $0x1, 0x425ed(%rip)     # 0x9a90c
leaq 0x425d2(%rip), %rax     # 0x9a8f8
movq %rax, 0x4215b(%rip)     # 0x9a488
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: bar_init
static void bar_init(void)
{
#if LV_USE_BAR
    static lv_style_t bar_bg;
    static lv_style_t bar_indic;

    lv_style_copy(&bar_bg, &light_frame);
    bar_bg.body.padding.left   = LV_DPI / 15;
    bar_bg.body.padding.right  = LV_DPI / 15;
    bar_bg.body.padding.top    = LV_DPI / 15;
    bar_bg.body.padding.bottom = LV_DPI / 15;
    bar_bg.body.radius         = LV_RADIUS_CIRCLE;

    lv_style_copy(&bar_indic, &dark_frame);
    bar_indic.body.padding.left   = LV_DPI / 30;
    bar_indic.body.padding.right  = LV_DPI / 30;
    bar_indic.body.padding.top    = LV_DPI / 30;
    bar_indic.body.padding.bottom = LV_DPI / 30;
    bar_indic.body.radius         = LV_RADIUS_CIRCLE;

    theme.style.bar.bg    = &bar_bg;
    theme.style.bar.indic = &bar_indic;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x425f5(%rip), %rdi     # 0x9a940
leaq 0x424ce(%rip), %rsi     # 0x9a820
callq 0xc550
movw $0x6, 0x425fa(%rip)     # 0x9a95a
movw $0x6, 0x425f3(%rip)     # 0x9a95c
movw $0x6, 0x425e4(%rip)     # 0x9a956
movw $0x6, 0x425dd(%rip)     # 0x9a958
movw $0x7c18, 0x425c2(%rip)  # imm = 0x7C18
leaq 0x425fd(%rip), %rdi     # 0x9a988
leaq 0x4251e(%rip), %rsi     # 0x9a8b0
callq 0xc550
movw $0x3, 0x42602(%rip)     # 0x9a9a2
movw $0x3, 0x425fb(%rip)     # 0x9a9a4
movw $0x3, 0x425ec(%rip)     # 0x9a99e
movw $0x3, 0x425e5(%rip)     # 0x9a9a0
movw $0x7c18, 0x425ca(%rip)  # imm = 0x7C18
leaq 0x42575(%rip), %rax     # 0x9a940
movq %rax, 0x420be(%rip)     # 0x9a490
leaq 0x425af(%rip), %rax     # 0x9a988
movq %rax, 0x420b8(%rip)     # 0x9a498
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: slider_init
static void slider_init(void)
{
#if LV_USE_SLIDER != 0
    static lv_style_t slider_knob;
    lv_style_copy(&slider_knob, &light_frame);
    slider_knob.body.radius         = LV_RADIUS_CIRCLE;
    slider_knob.body.padding.left   = LV_DPI / 30;
    slider_knob.body.padding.right  = LV_DPI / 30;
    slider_knob.body.padding.top    = LV_DPI / 30;
    slider_knob.body.padding.bottom = LV_DPI / 30;

    theme.style.slider.bg    = theme.style.bar.bg;
    theme.style.slider.indic = theme.style.bar.indic;
    theme.style.slider.knob  = &slider_knob;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x425d5(%rip), %rdi     # 0x9a9d0
leaq 0x4241e(%rip), %rsi     # 0x9a820
callq 0xc550
movw $0x7c18, 0x425c6(%rip)  # imm = 0x7C18
movw $0x3, 0x425d1(%rip)     # 0x9a9ea
movw $0x3, 0x425ca(%rip)     # 0x9a9ec
movw $0x3, 0x425bb(%rip)     # 0x9a9e6
movw $0x3, 0x425b4(%rip)     # 0x9a9e8
movq 0x42055(%rip), %rax     # 0x9a490
movq %rax, 0x4205e(%rip)     # 0x9a4a0
movq 0x4204f(%rip), %rax     # 0x9a498
movq %rax, 0x42058(%rip)     # 0x9a4a8
leaq 0x42579(%rip), %rax     # 0x9a9d0
movq %rax, 0x42052(%rip)     # 0x9a4b0
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: sw_init
static void sw_init(void)
{
#if LV_USE_SW != 0

    theme.style.sw.bg       = theme.style.slider.bg;
    theme.style.sw.indic    = theme.style.slider.indic;
    theme.style.sw.knob_off = theme.style.slider.knob;
    theme.style.sw.knob_on  = theme.style.slider.knob;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq 0x42035(%rip), %rax     # 0x9a4a0
movq %rax, 0x42066(%rip)     # 0x9a4d8
movq 0x4202f(%rip), %rax     # 0x9a4a8
movq %rax, 0x42060(%rip)     # 0x9a4e0
movq 0x42029(%rip), %rax     # 0x9a4b0
movq %rax, 0x4205a(%rip)     # 0x9a4e8
movq 0x4201b(%rip), %rax     # 0x9a4b0
movq %rax, 0x42054(%rip)     # 0x9a4f0
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: lmeter_init
static void lmeter_init(void)
{
#if LV_USE_LMETER != 0
    static lv_style_t lmeter_bg;
    lv_style_copy(&lmeter_bg, &light_frame);
    lmeter_bg.body.opa           = LV_OPA_TRANSP;
    lmeter_bg.body.main_color    = LV_COLOR_BLACK;
    lmeter_bg.body.grad_color    = LV_COLOR_BLACK;
    lmeter_bg.body.padding.left  = LV_DPI / 20;
    lmeter_bg.body.padding.inner = LV_DPI / 8;
    lmeter_bg.line.color         = LV_COLOR_WHITE;
    lmeter_bg.line.width         = 1;

    theme.style.lmeter = &lmeter_bg;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
leaq 0x42569(%rip), %rdi     # 0x9aa18
leaq 0x4236a(%rip), %rsi     # 0x9a820
callq 0xc550
movb $0x0, 0x4255e(%rip)     # 0x9aa20
movw -0x2(%rbp), %ax
andw $-0x20, %ax
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x4251d(%rip)      # 0x9aa1a
movw -0x4(%rbp), %ax
andw $-0x20, %ax
orw $0x0, %ax
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x0, %ax
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0x0, %ax
movw %ax, -0x4(%rbp)
movw -0x4(%rbp), %ax
movw %ax, 0x424e4(%rip)      # 0x9aa1c
movw $0x5, 0x424f1(%rip)     # 0x9aa32
movw $0xc, 0x424ec(%rip)     # 0x9aa36
movw -0x6(%rbp), %ax
andw $-0x20, %ax
orw $0x1f, %ax
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x7e0, %ax             # imm = 0x7E0
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0xf800, %ax            # imm = 0xF800
movw %ax, -0x6(%rbp)
movw -0x6(%rbp), %ax
movw %ax, 0x424cf(%rip)      # 0x9aa54
movw $0x1, 0x424c8(%rip)     # 0x9aa56
leaq 0x42483(%rip), %rax     # 0x9aa18
movq %rax, 0x41f1c(%rip)     # 0x9a4b8
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: gauge_init
static void gauge_init(void)
{
#if LV_USE_GAUGE != 0
    static lv_style_t gauge_bg;
    lv_style_copy(&gauge_bg, theme.style.lmeter);
    gauge_bg.line.color = LV_COLOR_BLACK;
    gauge_bg.line.width = 1;

    theme.style.gauge = &gauge_bg;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq 0x41ef9(%rip), %rsi     # 0x9a4b8
leaq 0x4249a(%rip), %rdi     # 0x9aa60
callq 0xc550
movw -0x2(%rbp), %ax
andw $-0x20, %ax
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0xf81f, %ax            # imm = 0xF81F
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
andw $0x7ff, %ax             # imm = 0x7FF
orw $0x0, %ax
movw %ax, -0x2(%rbp)
movw -0x2(%rbp), %ax
movw %ax, 0x42496(%rip)      # 0x9aa9c
movw $0x1, 0x4248f(%rip)     # 0x9aa9e
leaq 0x4244a(%rip), %rax     # 0x9aa60
movq %rax, 0x41ea3(%rip)     # 0x9a4c0
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: calendar_init
static void calendar_init(void)
{
#if LV_USE_CALENDAR
    static lv_style_t box;
    lv_style_copy(&box, &light_plain);
    box.body.padding.top    = LV_DPI / 20;
    box.body.padding.bottom = LV_DPI / 20;

    /*Can't handle highlighted dates in this theme*/
    theme.style.calendar.week_box  = &box;
    theme.style.calendar.today_box = &box;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x4244d(%rip), %rdi     # 0x9aaa8
leaq 0x42176(%rip), %rsi     # 0x9a7d8
callq 0xc550
movw $0x5, 0x4244e(%rip)     # 0x9aabe
movw $0x5, 0x42447(%rip)     # 0x9aac0
leaq 0x42428(%rip), %rax     # 0x9aaa8
movq %rax, 0x41ea9(%rip)     # 0x9a530
leaq 0x4241a(%rip), %rax     # 0x9aaa8
movq %rax, 0x41ea3(%rip)     # 0x9a538
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: cb_init
static void cb_init(void)
{
#if LV_USE_CB != 0

    theme.style.cb.bg          = &lv_style_transp;
    theme.style.cb.box.rel     = &light_frame;
    theme.style.cb.box.pr      = &dark_frame;
    theme.style.cb.box.tgl_rel = &dark_frame;
    theme.style.cb.box.tgl_pr  = &light_frame;
    theme.style.cb.box.ina     = &light_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x30a5d(%rip), %rax     # 0x89108
movq %rax, 0x41e8e(%rip)     # 0x9a540
leaq 0x42167(%rip), %rax     # 0x9a820
movq %rax, 0x41e88(%rip)     # 0x9a548
leaq 0x421e9(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e82(%rip)     # 0x9a550
leaq 0x421db(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e7c(%rip)     # 0x9a558
leaq 0x4213d(%rip), %rax     # 0x9a820
movq %rax, 0x41e76(%rip)     # 0x9a560
leaq 0x4212f(%rip), %rax     # 0x9a820
movq %rax, 0x41e70(%rip)     # 0x9a568
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: btnm_init
static void btnm_init(void)
{
#if LV_USE_BTNM

    theme.style.btnm.bg          = &light_frame;
    theme.style.btnm.btn.rel     = &light_frame;
    theme.style.btnm.btn.pr      = &dark_frame;
    theme.style.btnm.btn.tgl_rel = &dark_frame;
    theme.style.btnm.btn.tgl_pr  = &light_frame;
    theme.style.btnm.btn.ina     = &light_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x42115(%rip), %rax     # 0x9a820
movq %rax, 0x41e5e(%rip)     # 0x9a570
leaq 0x42107(%rip), %rax     # 0x9a820
movq %rax, 0x41e58(%rip)     # 0x9a578
leaq 0x42189(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e52(%rip)     # 0x9a580
leaq 0x4217b(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e4c(%rip)     # 0x9a588
leaq 0x420dd(%rip), %rax     # 0x9a820
movq %rax, 0x41e46(%rip)     # 0x9a590
leaq 0x420cf(%rip), %rax     # 0x9a820
movq %rax, 0x41e40(%rip)     # 0x9a598
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: kb_init
static void kb_init(void)
{
#if LV_USE_KB
    theme.style.kb.bg          = &lv_style_transp_fit;
    theme.style.kb.btn.rel     = &light_frame;
    theme.style.kb.btn.pr      = &light_frame;
    theme.style.kb.btn.tgl_rel = &dark_frame;
    theme.style.kb.btn.tgl_pr  = &dark_frame;
    theme.style.kb.btn.ina     = &light_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x309e5(%rip), %rax     # 0x89150
movq %rax, 0x41e2e(%rip)     # 0x9a5a0
leaq 0x420a7(%rip), %rax     # 0x9a820
movq %rax, 0x41e28(%rip)     # 0x9a5a8
leaq 0x42099(%rip), %rax     # 0x9a820
movq %rax, 0x41e22(%rip)     # 0x9a5b0
leaq 0x4211b(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e1c(%rip)     # 0x9a5b8
leaq 0x4210d(%rip), %rax     # 0x9a8b0
movq %rax, 0x41e16(%rip)     # 0x9a5c0
leaq 0x4206f(%rip), %rax     # 0x9a820
movq %rax, 0x41e10(%rip)     # 0x9a5c8
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: mbox_init
static void mbox_init(void)
{
#if LV_USE_MBOX

    theme.style.mbox.bg      = &dark_frame;
    theme.style.mbox.btn.bg  = &lv_style_transp_fit;
    theme.style.mbox.btn.rel = &light_frame;
    theme.style.mbox.btn.pr  = &dark_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x420e5(%rip), %rax     # 0x9a8b0
movq %rax, 0x41dfe(%rip)     # 0x9a5d0
leaq 0x30977(%rip), %rax     # 0x89150
movq %rax, 0x41df8(%rip)     # 0x9a5d8
leaq 0x42039(%rip), %rax     # 0x9a820
movq %rax, 0x41df2(%rip)     # 0x9a5e0
leaq 0x420bb(%rip), %rax     # 0x9a8b0
movq %rax, 0x41dec(%rip)     # 0x9a5e8
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: ta_init
static void ta_init(void)
{
#if LV_USE_TA

    theme.style.ta.area    = &light_frame;
    theme.style.ta.oneline = &light_frame;
    theme.style.ta.cursor  = NULL; /*Let library to calculate the cursor's style*/
    theme.style.ta.sb      = &dark_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x41fe5(%rip), %rax     # 0x9a820
movq %rax, 0x41dc6(%rip)     # 0x9a608
leaq 0x41fd7(%rip), %rax     # 0x9a820
movq %rax, 0x41dc0(%rip)     # 0x9a610
movq $0x0, 0x41dbd(%rip) # 0x9a618
leaq 0x4204e(%rip), %rax     # 0x9a8b0
movq %rax, 0x41db7(%rip)     # 0x9a620
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: list_init
static void list_init(void)
{
#if LV_USE_LIST != 0

    theme.style.list.sb          = &dark_frame;
    theme.style.list.bg          = &light_frame;
    theme.style.list.scrl        = &lv_style_transp_fit;
    theme.style.list.btn.rel     = &light_plain;
    theme.style.list.btn.pr      = &dark_plain;
    theme.style.list.btn.tgl_rel = &dark_plain;
    theme.style.list.btn.tgl_pr  = &light_plain;
    theme.style.list.btn.ina     = &light_plain;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x42035(%rip), %rax     # 0x9a8b0
movq %rax, 0x41dce(%rip)     # 0x9a650
leaq 0x41f97(%rip), %rax     # 0x9a820
movq %rax, 0x41db0(%rip)     # 0x9a640
leaq 0x308b9(%rip), %rax     # 0x89150
movq %rax, 0x41daa(%rip)     # 0x9a648
leaq 0x41f33(%rip), %rax     # 0x9a7d8
movq %rax, 0x41dac(%rip)     # 0x9a658
leaq 0x41fb5(%rip), %rax     # 0x9a868
movq %rax, 0x41da6(%rip)     # 0x9a660
leaq 0x41fa7(%rip), %rax     # 0x9a868
movq %rax, 0x41da0(%rip)     # 0x9a668
leaq 0x41f09(%rip), %rax     # 0x9a7d8
movq %rax, 0x41d9a(%rip)     # 0x9a670
leaq 0x41efb(%rip), %rax     # 0x9a7d8
movq %rax, 0x41d94(%rip)     # 0x9a678
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: ddlist_init
static void ddlist_init(void)
{
#if LV_USE_DDLIST != 0
    static lv_style_t bg;
    lv_style_copy(&bg, &light_frame);
    bg.text.line_space = LV_DPI / 12;

    theme.style.ddlist.bg  = &bg;
    theme.style.ddlist.sel = &dark_plain;
    theme.style.ddlist.sb  = &dark_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x421f5(%rip), %rdi     # 0x9aaf0
leaq 0x41f1e(%rip), %rsi     # 0x9a820
callq 0xc550
movw $0x8, 0x42212(%rip)     # 0x9ab22
leaq 0x421d9(%rip), %rax     # 0x9aaf0
movq %rax, 0x41d62(%rip)     # 0x9a680
leaq 0x41f43(%rip), %rax     # 0x9a868
movq %rax, 0x41d5c(%rip)     # 0x9a688
leaq 0x41f7d(%rip), %rax     # 0x9a8b0
movq %rax, 0x41d56(%rip)     # 0x9a690
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: roller_init
static void roller_init(void)
{
#if LV_USE_ROLLER != 0
    static lv_style_t bg;
    lv_style_copy(&bg, &light_frame);
    bg.text.line_space = LV_DPI / 12;

    theme.style.roller.bg  = &bg;
    theme.style.roller.sel = &dark_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x421ed(%rip), %rdi     # 0x9ab38
leaq 0x41ece(%rip), %rsi     # 0x9a820
callq 0xc550
movw $0x8, 0x4220a(%rip)     # 0x9ab6a
leaq 0x421d1(%rip), %rax     # 0x9ab38
movq %rax, 0x41d2a(%rip)     # 0x9a698
leaq 0x41f3b(%rip), %rax     # 0x9a8b0
movq %rax, 0x41d24(%rip)     # 0x9a6a0
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: tabview_init
static void tabview_init(void)
{
#if LV_USE_TABVIEW != 0

    theme.style.tabview.bg          = &light_frame;
    theme.style.tabview.indic       = &light_plain;
    theme.style.tabview.btn.bg      = &lv_style_transp_fit;
    theme.style.tabview.btn.rel     = &light_frame;
    theme.style.tabview.btn.pr      = &dark_frame;
    theme.style.tabview.btn.tgl_rel = &dark_frame;
    theme.style.tabview.btn.tgl_pr  = &light_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x41e95(%rip), %rax     # 0x9a820
movq %rax, 0x41d16(%rip)     # 0x9a6a8
leaq 0x41e3f(%rip), %rax     # 0x9a7d8
movq %rax, 0x41d10(%rip)     # 0x9a6b0
leaq 0x307a9(%rip), %rax     # 0x89150
movq %rax, 0x41d0a(%rip)     # 0x9a6b8
leaq 0x41e6b(%rip), %rax     # 0x9a820
movq %rax, 0x41d04(%rip)     # 0x9a6c0
leaq 0x41eed(%rip), %rax     # 0x9a8b0
movq %rax, 0x41cfe(%rip)     # 0x9a6c8
leaq 0x41edf(%rip), %rax     # 0x9a8b0
movq %rax, 0x41cf8(%rip)     # 0x9a6d0
leaq 0x41e41(%rip), %rax     # 0x9a820
movq %rax, 0x41cf2(%rip)     # 0x9a6d8
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_themes/lv_theme_mono.c
// Function: win_init
static void win_init(void)
{
#if LV_USE_WIN != 0
    static lv_style_t win_header;
    lv_style_copy(&win_header, &dark_plain);
    win_header.body.padding.left   = LV_DPI / 30;
    win_header.body.padding.right  = LV_DPI / 30;
    win_header.body.padding.top    = LV_DPI / 30;
    win_header.body.padding.bottom = LV_DPI / 30;

    theme.style.win.bg      = &light_frame;
    theme.style.win.sb      = &dark_frame;
    theme.style.win.header  = &win_header;
    theme.style.win.content = &lv_style_transp;
    theme.style.win.btn.rel = &light_frame;
    theme.style.win.btn.pr  = &dark_frame;
#endif
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x42185(%rip), %rdi     # 0x9ab80
leaq 0x41e66(%rip), %rsi     # 0x9a868
callq 0xc550
movw $0x3, 0x4218a(%rip)     # 0x9ab9a
movw $0x3, 0x42183(%rip)     # 0x9ab9c
movw $0x3, 0x42174(%rip)     # 0x9ab96
movw $0x3, 0x4216d(%rip)     # 0x9ab98
leaq 0x41dee(%rip), %rax     # 0x9a820
movq %rax, 0x41ccf(%rip)     # 0x9a708
leaq 0x41e70(%rip), %rax     # 0x9a8b0
movq %rax, 0x41cc9(%rip)     # 0x9a710
leaq 0x42132(%rip), %rax     # 0x9ab80
movq %rax, 0x41cc3(%rip)     # 0x9a718
leaq 0x306ac(%rip), %rax     # 0x89108
movq %rax, 0x41cbd(%rip)     # 0x9a720
leaq 0x41db6(%rip), %rax     # 0x9a820
movq %rax, 0x41cb7(%rip)     # 0x9a728
leaq 0x41e38(%rip), %rax     # 0x9a8b0
movq %rax, 0x41cb1(%rip)     # 0x9a730
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw_basic.c
// Function: sw_mem_blend
static void sw_mem_blend(lv_color_t * dest, const lv_color_t * src, uint32_t length, lv_opa_t opa)
{
    if(opa == LV_OPA_COVER) {
        memcpy(dest, src, length * sizeof(lv_color_t));
    } else {
        uint32_t col;
        for(col = 0; col < length; col++) {
            dest[col] = lv_color_mix(src[col], dest[col], opa);
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movb %cl, %al
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movb %al, -0x15(%rbp)
movzbl -0x15(%rbp), %eax
cmpl $0xff, %eax
jne 0x5a62a
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl -0x14(%rbp), %eax
movl %eax, %edx
shlq %rdx
callq 0x20e0
jmp 0x5a694
movl $0x0, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
cmpl -0x14(%rbp), %eax
jae 0x5a692
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movl -0x1c(%rbp), %eax
movq %rax, -0x30(%rbp)
movq -0x10(%rbp), %rsi
movl -0x1c(%rbp), %eax
movl %eax, %edi
movq -0x8(%rbp), %rcx
movl -0x1c(%rbp), %eax
movl %eax, %edx
movb -0x15(%rbp), %al
movw (%rsi,%rdi,2), %si
movzwl %si, %edi
movzwl (%rcx,%rdx,2), %esi
movzbl %al, %edx
callq 0x58d80
movq -0x30(%rbp), %rcx
movw %ax, %dx
movq -0x28(%rbp), %rax
movw %dx, -0x1e(%rbp)
movw -0x1e(%rbp), %dx
movw %dx, (%rax,%rcx,2)
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x5a631
jmp 0x5a694
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw.c
// Function: lv_draw_get_buf
void * lv_draw_get_buf(uint32_t size)
{
    if(size <= draw_buf_size) return LV_GC_ROOT(_lv_draw_buf);

    LV_LOG_TRACE("lv_draw_get_buf: allocate");

    draw_buf_size = size;

    if(LV_GC_ROOT(_lv_draw_buf) == NULL) {
        LV_GC_ROOT(_lv_draw_buf) = lv_mem_alloc(size);
        LV_ASSERT_MEM(LV_GC_ROOT(_lv_draw_buf));
        return LV_GC_ROOT(_lv_draw_buf);
    }

    LV_GC_ROOT(_lv_draw_buf) = lv_mem_realloc(LV_GC_ROOT(_lv_draw_buf), size);
    LV_ASSERT_MEM(LV_GC_ROOT(_lv_draw_buf));
    return LV_GC_ROOT(_lv_draw_buf);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0xc(%rbp)
movl -0xc(%rbp), %eax
cmpl 0x40514(%rip), %eax     # 0x9abc8
ja 0x5a6c9
leaq 0x36fc3(%rip), %rax     # 0x91680
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x5a78b
movl -0xc(%rbp), %eax
movl %eax, 0x404f6(%rip)     # 0x9abc8
leaq 0x36fa7(%rip), %rax     # 0x91680
cmpq $0x0, (%rax)
jne 0x5a731
movl -0xc(%rbp), %eax
movl %eax, %edi
callq 0x44d20
movq %rax, %rcx
leaq 0x36f8d(%rip), %rax     # 0x91680
movq %rcx, (%rax)
leaq 0x36f83(%rip), %rax     # 0x91680
movq (%rax), %rdi
callq 0xd120
testb $0x1, %al
jne 0x5a721
leaq 0x36f70(%rip), %rax     # 0x91680
movq (%rax), %rsi
leaq 0xd92a(%rip), %rdi      # 0x68044
callq 0xd410
jmp 0x5a71f
leaq 0x36f58(%rip), %rax     # 0x91680
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x5a78b
leaq 0x36f48(%rip), %rax     # 0x91680
movq (%rax), %rdi
movl -0xc(%rbp), %eax
movl %eax, %esi
callq 0x44f70
movq %rax, %rcx
leaq 0x36f31(%rip), %rax     # 0x91680
movq %rcx, (%rax)
leaq 0x36f27(%rip), %rax     # 0x91680
movq (%rax), %rdi
callq 0xd120
testb $0x1, %al
jne 0x5a77d
leaq 0x36f14(%rip), %rax     # 0x91680
movq (%rax), %rsi
leaq 0xd8ce(%rip), %rdi      # 0x68044
callq 0xd410
jmp 0x5a77b
leaq 0x36efc(%rip), %rax     # 0x91680
movq (%rax), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw.c
// Function: lv_draw_free_buf
void lv_draw_free_buf(void)
{
    if(LV_GC_ROOT(_lv_draw_buf)) {
        lv_mem_free(LV_GC_ROOT(_lv_draw_buf));
        LV_GC_ROOT(_lv_draw_buf) = NULL;
        draw_buf_size = 0;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x36ed5(%rip), %rax     # 0x91680
cmpq $0x0, (%rax)
je 0x5a7d8
leaq 0x36ec8(%rip), %rax     # 0x91680
movq (%rax), %rdi
callq 0x44ec0
leaq 0x36eb9(%rip), %rax     # 0x91680
movq $0x0, (%rax)
movl $0x0, 0x403f0(%rip)     # 0x9abc8
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw.c
// Function: lv_draw_aa_get_opa
lv_opa_t lv_draw_aa_get_opa(lv_coord_t seg, lv_coord_t px_id, lv_opa_t base_opa)
{
    /* How to calculate the opacity of pixels on the edges which makes the anti-aliasing?
     * For example we have a line like this (y = -0.5 * x):
     *
     *  | _ _
     *    * * |
     *
     * Anti-aliased pixels come to the '*' characters
     * Calculate what percentage of the pixels should be covered if real line (not rasterized) would
     * be drawn:
     * 1. A real line should start on (0;0) and end on (2;1)
     * 2. So the line intersection coordinates on the first pixel: (0;0) (1;0.5) -> 25% covered
     * pixel in average
     * 3. For the second pixel: (1;0.5) (2;1) -> 75% covered pixel in average
     * 4. The equation: (px_id * 2 + 1) / (segment_width * 2)
     *                   segment_width: the line segment which is being anti-aliased (was 2 in the
     * example) px_id: pixel ID from 0 to  (segment_width - 1) result: [0..1] coverage of the pixel
     */

    /*Accelerate the common segment sizes to avoid division*/
    static const lv_opa_t seg1[1] = {128};
    static const lv_opa_t seg2[2] = {64, 192};
    static const lv_opa_t seg3[3] = {42, 128, 212};
    static const lv_opa_t seg4[4] = {32, 96, 159, 223};
    static const lv_opa_t seg5[5] = {26, 76, 128, 178, 230};
    static const lv_opa_t seg6[6] = {21, 64, 106, 148, 191, 234};
    static const lv_opa_t seg7[7] = {18, 55, 91, 128, 164, 200, 237};
    static const lv_opa_t seg8[8] = {16, 48, 80, 112, 143, 175, 207, 239};

    static const lv_opa_t * seg_map[] = {seg1, seg2, seg3, seg4, seg5, seg6, seg7, seg8};

    if(seg == 0)
        return LV_OPA_TRANSP;
    else if(seg < 8)
        return (uint32_t)((uint32_t)seg_map[seg - 1][px_id] * base_opa) >> 8;
    else {
        return ((px_id * 2 + 1) * base_opa) / (2 * seg);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movb %dl, %al
movw %si, %cx
movw %di, %dx
movw %dx, -0x4(%rbp)
movw %cx, -0x6(%rbp)
movb %al, -0x7(%rbp)
movswl -0x4(%rbp), %eax
cmpl $0x0, %eax
jne 0x5a806
movb $0x0, -0x1(%rbp)
jmp 0x5a858
movswl -0x4(%rbp), %eax
cmpl $0x8, %eax
jge 0x5a83c
movswl -0x4(%rbp), %eax
subl $0x1, %eax
movslq %eax, %rcx
leaq 0x21ed0(%rip), %rax     # 0x7c6f0
movq (%rax,%rcx,8), %rax
movswq -0x6(%rbp), %rcx
movzbl (%rax,%rcx), %eax
movzbl -0x7(%rbp), %ecx
imull %ecx, %eax
shrl $0x8, %eax
movb %al, -0x1(%rbp)
jmp 0x5a858
movswl -0x6(%rbp), %eax
shll %eax
addl $0x1, %eax
movzbl -0x7(%rbp), %ecx
imull %ecx, %eax
movswl -0x4(%rbp), %ecx
shll %ecx
cltd
idivl %ecx
movb %al, -0x1(%rbp)
movb -0x1(%rbp), %al
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw.c
// Function: lv_draw_aa_ver_seg
void lv_draw_aa_ver_seg(lv_coord_t x, lv_coord_t y, lv_coord_t length, const lv_area_t * mask, lv_color_t color,
                        lv_opa_t opa)
{
    bool aa_inv = false;
    if(length < 0) {
        aa_inv = true;
        length = -length;
    }

    lv_coord_t i;
    for(i = 0; i < length; i++) {
        lv_opa_t px_opa = lv_draw_aa_get_opa(length, i, opa);
        if(aa_inv) px_opa = opa - px_opa;
        lv_draw_px(x, y + i, mask, color, px_opa);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %r9b, %al
movw %r8w, -0x2(%rbp)
movw %di, -0x4(%rbp)
movw %si, -0x6(%rbp)
movw %dx, -0x8(%rbp)
movq %rcx, -0x10(%rbp)
movb %al, -0x11(%rbp)
movb $0x0, -0x12(%rbp)
movswl -0x8(%rbp), %eax
cmpl $0x0, %eax
jge 0x5a8a0
movb $0x1, -0x12(%rbp)
movswl -0x8(%rbp), %ecx
xorl %eax, %eax
subl %ecx, %eax
movw %ax, -0x8(%rbp)
movw $0x0, -0x14(%rbp)
movswl -0x14(%rbp), %eax
movswl -0x8(%rbp), %ecx
cmpl %ecx, %eax
jge 0x5a918
movw -0x8(%rbp), %cx
movw -0x14(%rbp), %ax
movswl %cx, %edi
movswl %ax, %esi
movzbl -0x11(%rbp), %edx
callq 0x5a7e0
movb %al, -0x15(%rbp)
testb $0x1, -0x12(%rbp)
je 0x5a8df
movzbl -0x11(%rbp), %eax
movzbl -0x15(%rbp), %ecx
subl %ecx, %eax
movb %al, -0x15(%rbp)
movw -0x4(%rbp), %si
movswl -0x6(%rbp), %eax
movswl -0x14(%rbp), %ecx
addl %ecx, %eax
movw %ax, %cx
movq -0x10(%rbp), %rdx
movb -0x15(%rbp), %al
movswl %si, %edi
movswl %cx, %esi
movzwl -0x2(%rbp), %ecx
movzbl %al, %r8d
callq 0x58ba0
movw -0x14(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x14(%rbp)
jmp 0x5a8a6
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/OnionIoT[P]lv_example/lvgl/src/lv_draw/lv_draw.c
// Function: lv_draw_aa_hor_seg
void lv_draw_aa_hor_seg(lv_coord_t x, lv_coord_t y, lv_coord_t length, const lv_area_t * mask, lv_color_t color,
                        lv_opa_t opa)
{
    bool aa_inv = false;
    if(length < 0) {
        aa_inv = true;
        length = -length;
    }

    lv_coord_t i;
    for(i = 0; i < length; i++) {
        lv_opa_t px_opa = lv_draw_aa_get_opa(length, i, opa);
        if(aa_inv) px_opa = opa - px_opa;
        lv_draw_px(x + i, y, mask, color, px_opa);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movb %r9b, %al
movw %r8w, -0x2(%rbp)
movw %di, -0x4(%rbp)
movw %si, -0x6(%rbp)
movw %dx, -0x8(%rbp)
movq %rcx, -0x10(%rbp)
movb %al, -0x11(%rbp)
movb $0x0, -0x12(%rbp)
movswl -0x8(%rbp), %eax
cmpl $0x0, %eax
jge 0x5a960
movb $0x1, -0x12(%rbp)
movswl -0x8(%rbp), %ecx
xorl %eax, %eax
subl %ecx, %eax
movw %ax, -0x8(%rbp)
movw $0x0, -0x14(%rbp)
movswl -0x14(%rbp), %eax
movswl -0x8(%rbp), %ecx
cmpl %ecx, %eax
jge 0x5a9d8
movw -0x8(%rbp), %cx
movw -0x14(%rbp), %ax
movswl %cx, %edi
movswl %ax, %esi
movzbl -0x11(%rbp), %edx
callq 0x5a7e0
movb %al, -0x15(%rbp)
testb $0x1, -0x12(%rbp)
je 0x5a99f
movzbl -0x11(%rbp), %eax
movzbl -0x15(%rbp), %ecx
subl %ecx, %eax
movb %al, -0x15(%rbp)
movswl -0x4(%rbp), %eax
movswl -0x14(%rbp), %ecx
addl %ecx, %eax
movw %ax, %si
movw -0x6(%rbp), %cx
movq -0x10(%rbp), %rdx
movb -0x15(%rbp), %al
movswl %si, %edi
movswl %cx, %esi
movzwl -0x2(%rbp), %ecx
movzbl %al, %r8d
callq 0x58ba0
movw -0x14(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x14(%rbp)
jmp 0x5a966
addq $0x20, %rsp
popq %rbp
retq
nop