// File: Ciaxur[P]yagb-emu/include/imgui/imgui_draw.cpp
// Function: stb_decompress_token(unsigned char const*)
static const unsigned char *stb_decompress_token(const unsigned char *i)
{
    if (*i >= 0x20) { // use fewer if's for cases that expand small
        if (*i >= 0x80)       stb__match(stb__dout-i[1]-1, i[0] - 0x80 + 1), i += 2;
        else if (*i >= 0x40)  stb__match(stb__dout-(stb__in2(0) - 0x4000 + 1), i[2]+1), i += 3;
        else /* *i >= 0x20 */ stb__lit(i+1, i[0] - 0x20 + 1), i += 1 + (i[0] - 0x20 + 1);
    } else { // more ifs for cases that expand large, since overhead is amortized
        if (*i >= 0x18)       stb__match(stb__dout-(stb__in3(0) - 0x180000 + 1), i[3]+1), i += 4;
        else if (*i >= 0x10)  stb__match(stb__dout-(stb__in3(0) - 0x100000 + 1), stb__in2(3)+1), i += 5;
        else if (*i >= 0x08)  stb__lit(i+2, stb__in2(0) - 0x0800 + 1), i += 2 + (stb__in2(0) - 0x0800 + 1);
        else if (*i == 0x07)  stb__lit(i+3, stb__in2(1) + 1), i += 3 + (stb__in2(1) + 1);
        else if (*i == 0x06)  stb__match(stb__dout-(stb__in3(1)+1), i[4]+1), i += 5;
        else if (*i == 0x04)  stb__match(stb__dout-(stb__in3(1)+1), stb__in2(4)+1), i += 6;
    }
    return i;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x20, %eax
jl 0x126635
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x80, %eax
jl 0x12659e
movq 0xf3687(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
addq $-0x1, %rdi
movq -0x8(%rbp), %rax
movzbl (%rax), %esi
subl $0x80, %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x2, %rax
movq %rax, -0x8(%rbp)
jmp 0x126630
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x40, %eax
jl 0x1265f6
movq 0xf3637(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
shll $0x8, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
addl %ecx, %eax
subl $0x4000, %eax           # imm = 0x4000
addl $0x1, %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x3, %rax
movq %rax, -0x8(%rbp)
jmp 0x12662e
movq -0x8(%rbp), %rdi
addq $0x1, %rdi
movq -0x8(%rbp), %rax
movzbl (%rax), %esi
subl $0x20, %esi
addl $0x1, %esi
callq 0x126b90
movq -0x8(%rbp), %rax
movzbl (%rax), %ecx
subl $0x20, %ecx
addl $0x1, %ecx
addl $0x1, %ecx
movq -0x8(%rbp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0x8(%rbp)
jmp 0x126630
jmp 0x1268b3
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x18, %eax
jl 0x12669d
movq 0xf35a0(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
shll $0x10, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rdx
movzbl 0x2(%rdx), %edx
addl %edx, %ecx
addl %ecx, %eax
subl $0x180000, %eax         # imm = 0x180000
addl $0x1, %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268b1
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x10, %eax
jl 0x126712
movq 0xf3538(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
shll $0x10, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rdx
movzbl 0x2(%rdx), %edx
addl %edx, %ecx
addl %ecx, %eax
subl $0x100000, %eax         # imm = 0x100000
addl $0x1, %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %esi
shll $0x8, %esi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
addl %eax, %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x5, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268af
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x8, %eax
jl 0x12677b
movq -0x8(%rbp), %rdi
addq $0x2, %rdi
movq -0x8(%rbp), %rax
movzbl (%rax), %esi
shll $0x8, %esi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
addl %eax, %esi
subl $0x800, %esi            # imm = 0x800
addl $0x1, %esi
callq 0x126b90
movq -0x8(%rbp), %rax
movzbl (%rax), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
addl %eax, %ecx
subl $0x800, %ecx            # imm = 0x800
addl $0x1, %ecx
addl $0x2, %ecx
movq -0x8(%rbp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268ad
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x7, %eax
jne 0x1267da
movq -0x8(%rbp), %rdi
addq $0x3, %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %esi
shll $0x8, %esi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
addl %eax, %esi
addl $0x1, %esi
callq 0x126b90
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
addl %eax, %ecx
addl $0x1, %ecx
addl $0x3, %ecx
movq -0x8(%rbp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268ab
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x6, %eax
jne 0x12683b
movq 0xf33fb(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x10, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rdx
movzbl 0x3(%rdx), %edx
addl %edx, %ecx
addl %ecx, %eax
addl $0x1, %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x5, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268a9
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
cmpl $0x4, %eax
jne 0x1268a7
movq 0xf339a(%rip), %rdi     # 0x219be8
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x10, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x8, %ecx
movq -0x8(%rbp), %rdx
movzbl 0x3(%rdx), %edx
addl %edx, %ecx
addl %ecx, %eax
addl $0x1, %eax
movslq %eax, %rcx
xorl %eax, %eax
subq %rcx, %rax
addq %rax, %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %esi
shll $0x8, %esi
movq -0x8(%rbp), %rax
movzbl 0x5(%rax), %eax
addl %eax, %esi
addl $0x1, %esi
callq 0x126ab0
movq -0x8(%rbp), %rax
addq $0x6, %rax
movq %rax, -0x8(%rbp)
jmp 0x1268a9
jmp 0x1268ab
jmp 0x1268ad
jmp 0x1268af
jmp 0x1268b1
jmp 0x1268b3
movq -0x8(%rbp), %rax
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)