// File: /workspace/github_c_makefile_star2_O0/mijallen[P]SimpleHTTPServer/lib/libyaml/src/scanner.c
// Function: yaml_parser_scan_anchor
static int
yaml_parser_scan_anchor(yaml_parser_t *parser, yaml_token_t *token,
        yaml_token_type_t type)
{
    int length = 0;
    yaml_mark_t start_mark, end_mark;
    yaml_string_t string = NULL_STRING;

    if (!STRING_INIT(parser, string, INITIAL_STRING_SIZE)) goto error;

    /* Eat the indicator character. */

    start_mark = parser->mark;

    SKIP(parser);

    /* Consume the value. */

    if (!CACHE(parser, 1)) goto error;

    while (IS_ALPHA(parser->buffer)) {
        if (!READ(parser, string)) goto error;
        if (!CACHE(parser, 1)) goto error;
        length ++;
    }

    end_mark = parser->mark;

    /*
     * Check if length of the anchor is greater than 0 and it is followed by
     * a whitespace character or one of the indicators:
     *
     *      '?', ':', ',', ']', '}', '%', '@', '`'.
     */

    if (!length || !(IS_BLANKZ(parser->buffer) || CHECK(parser->buffer, '?')
                || CHECK(parser->buffer, ':') || CHECK(parser->buffer, ',')
                || CHECK(parser->buffer, ']') || CHECK(parser->buffer, '}')
                || CHECK(parser->buffer, '%') || CHECK(parser->buffer, '@')
                || CHECK(parser->buffer, '`'))) {
        yaml_parser_set_scanner_error(parser, type == YAML_ANCHOR_TOKEN ?
                "while scanning an anchor" : "while scanning an alias", start_mark,
                "did not find expected alphabetic or numeric character");
        goto error;
    }

    /* Create a token. */

    if (type == YAML_ANCHOR_TOKEN) {
        ANCHOR_TOKEN_INIT(*token, string.start, start_mark, end_mark);
    }
    else {
        ALIAS_TOKEN_INIT(*token, string.start, start_mark, end_mark);
    }

    return 1;

error:
    STRING_DEL(parser, string);
    return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movl $0x0, -0x20(%rbp)
leaq -0x68(%rbp), %rdi
xorl %esi, %esi
movl $0x18, %edx
callq 0x2120
movl $0x10, %edi
callq 0x2080
movq %rax, -0x68(%rbp)
cmpq $0x0, %rax
je 0xfb1d
movq -0x68(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x68(%rbp), %rax
addq $0x10, %rax
movq %rax, -0x60(%rbp)
movq -0x68(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x2120
movb $0x1, %al
testb $0x1, %al
jne 0xfb32
jmp 0xfb2d
movq -0x10(%rbp), %rax
movl $0x1, (%rax)
xorl %eax, %eax
testb $0x1, %al
jne 0xfb32
jmp 0x103a9
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
movq %rcx, -0x38(%rbp)
movq 0xe8(%rax), %rcx
movq %rcx, -0x30(%rbp)
movq 0xf0(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
addq $0x1, %rcx
movq %rcx, 0xe0(%rax)
movq -0x10(%rbp), %rax
movq 0xf0(%rax), %rcx
addq $0x1, %rcx
movq %rcx, 0xf0(%rax)
movq -0x10(%rbp), %rax
movq 0xa8(%rax), %rcx
addq $-0x1, %rcx
movq %rcx, 0xa8(%rax)
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0x80, %eax
cmpl $0x0, %eax
jne 0xfbbb
movl $0x1, %eax
movl %eax, -0x6c(%rbp)
jmp 0xfc36
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0xe0, %eax
cmpl $0xc0, %eax
jne 0xfbdf
movl $0x2, %eax
movl %eax, -0x70(%rbp)
jmp 0xfc30
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0xf0, %eax
cmpl $0xe0, %eax
jne 0xfc03
movl $0x3, %eax
movl %eax, -0x74(%rbp)
jmp 0xfc2a
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %edx
andl $0xf8, %edx
xorl %eax, %eax
movl $0x4, %ecx
cmpl $0xf0, %edx
cmovel %ecx, %eax
movl %eax, -0x74(%rbp)
movl -0x74(%rbp), %eax
movl %eax, -0x70(%rbp)
movl -0x70(%rbp), %eax
movl %eax, -0x6c(%rbp)
movl -0x6c(%rbp), %edx
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rcx
movslq %edx, %rdx
addq %rdx, %rcx
movq %rcx, 0x98(%rax)
movq -0x10(%rbp), %rax
cmpq $0x1, 0xa8(%rax)
jb 0xfc67
movb $0x1, %al
testb $0x1, %al
jne 0xfc7f
jmp 0xfc7a
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x2060
cmpl $0x0, %eax
jne 0xfc7f
jmp 0x103a9
jmp 0xfc81
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x30, %eax
jl 0xfcb0
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %ecx
movb $0x1, %al
cmpl $0x39, %ecx
movb %al, -0x75(%rbp)
jle 0xfd35
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x41, %eax
jl 0xfcdb
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %ecx
movb $0x1, %al
cmpl $0x5a, %ecx
movb %al, -0x75(%rbp)
jle 0xfd35
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x61, %eax
jl 0xfd06
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %ecx
movb $0x1, %al
cmpl $0x7a, %ecx
movb %al, -0x75(%rbp)
jle 0xfd35
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %ecx
movb $0x1, %al
cmpl $0x5f, %ecx
movb %al, -0x75(%rbp)
je 0xfd35
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x2d, %eax
sete %al
movb %al, -0x75(%rbp)
movb -0x75(%rbp), %al
testb $0x1, %al
jne 0xfd41
jmp 0x1008b
movq -0x58(%rbp), %rax
addq $0x5, %rax
cmpq -0x60(%rbp), %rax
jb 0xfd6d
leaq -0x68(%rbp), %rdi
leaq -0x68(%rbp), %rsi
addq $0x10, %rsi
leaq -0x68(%rbp), %rdx
addq $0x8, %rdx
callq 0x20a0
cmpl $0x0, %eax
je 0xfd78
movb $0x1, %al
testb $0x1, %al
jne 0xfd8d
jmp 0x10042
movq -0x10(%rbp), %rax
movl $0x1, (%rax)
xorl %eax, %eax
testb $0x1, %al
jne 0xfd8d
jmp 0x10042
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0x80, %eax
cmpl $0x0, %eax
jne 0xfdd9
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %al
movq -0x58(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %al, (%rcx)
movzbl %al, %eax
jmp 0xfff8
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0xe0, %eax
cmpl $0xc0, %eax
jne 0xfe56
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %al
movq -0x58(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x7c(%rbp)
jmp 0xfff5
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0xf0, %eax
cmpl $0xe0, %eax
jne 0xff03
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %al
movq -0x58(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x80(%rbp)
jmp 0xffef
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
andl $0xf8, %eax
cmpl $0xf0, %eax
jne 0xffdc
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %cl
movq -0x58(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rcx
movq 0x98(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x98(%rcx)
movb (%rax), %al
movq -0x58(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x58(%rbp)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x84(%rbp)
jmp 0xffe6
xorl %eax, %eax
movl %eax, -0x84(%rbp)
jmp 0xffe6
movl -0x84(%rbp), %eax
movl %eax, -0x80(%rbp)
movl -0x80(%rbp), %eax
movl %eax, -0x7c(%rbp)
movl -0x7c(%rbp), %eax
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
addq $0x1, %rcx
movq %rcx, 0xe0(%rax)
movq -0x10(%rbp), %rax
movq 0xf0(%rax), %rcx
addq $0x1, %rcx
movq %rcx, 0xf0(%rax)
movq -0x10(%rbp), %rax
movq 0xa8(%rax), %rcx
addq $-0x1, %rcx
movq %rcx, 0xa8(%rax)
movb $0x1, %al
testb $0x1, %al
jne 0x1004f
jmp 0x1004a
xorl %eax, %eax
testb $0x1, %al
jne 0x1004f
jmp 0x1004a
jmp 0x103a9
movq -0x10(%rbp), %rax
cmpq $0x1, 0xa8(%rax)
jb 0x10065
movb $0x1, %al
testb $0x1, %al
jne 0x1007d
jmp 0x10078
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x2060
cmpl $0x0, %eax
jne 0x1007d
jmp 0x103a9
movl -0x20(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x20(%rbp)
jmp 0xfc81
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
movq %rcx, -0x50(%rbp)
movq 0xe8(%rax), %rcx
movq %rcx, -0x48(%rbp)
movq 0xf0(%rax), %rax
movq %rax, -0x40(%rbp)
cmpl $0x0, -0x20(%rbp)
je 0x10292
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x20, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x9, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0xd, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0xa, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0xc2, %eax
jne 0x10145
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl 0x1(%rax), %eax
cmpl $0x85, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0xe2, %eax
jne 0x1018a
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl 0x1(%rax), %eax
cmpl $0x80, %eax
jne 0x1018a
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl 0x2(%rax), %eax
cmpl $0xa8, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0xe2, %eax
jne 0x101cf
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl 0x1(%rax), %eax
cmpl $0x80, %eax
jne 0x101cf
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl 0x2(%rax), %eax
cmpl $0xa9, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x0, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x3f, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x3a, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x2c, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x5d, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x7d, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x25, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x40, %eax
je 0x102dc
movq -0x10(%rbp), %rax
movq 0x98(%rax), %rax
movzbl (%rax), %eax
cmpl $0x60, %eax
je 0x102dc
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %ecx
leaq 0x1c2e2(%rip), %rsi     # 0x2c582
leaq 0x1c2c2(%rip), %rax     # 0x2c569
cmpl $0x13, %ecx
cmoveq %rax, %rsi
leaq -0x38(%rbp), %rax
leaq 0x1c2e1(%rip), %rdx     # 0x2c59a
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0xb790
jmp 0x103a9
cmpl $0x13, -0x1c(%rbp)
jne 0x10342
movq -0x18(%rbp), %rdi
xorl %esi, %esi
movl $0x50, %edx
callq 0x2120
movq -0x18(%rbp), %rax
movl $0x13, (%rax)
movq -0x18(%rbp), %rax
movq -0x38(%rbp), %rcx
movq %rcx, 0x20(%rax)
movq -0x30(%rbp), %rcx
movq %rcx, 0x28(%rax)
movq -0x28(%rbp), %rcx
movq %rcx, 0x30(%rax)
movq -0x18(%rbp), %rax
movq -0x50(%rbp), %rcx
movq %rcx, 0x38(%rax)
movq -0x48(%rbp), %rcx
movq %rcx, 0x40(%rax)
movq -0x40(%rbp), %rcx
movq %rcx, 0x48(%rax)
movq -0x68(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x8(%rax)
jmp 0x103a0
movq -0x18(%rbp), %rdi
xorl %esi, %esi
movl $0x50, %edx
callq 0x2120
movq -0x18(%rbp), %rax
movl $0x12, (%rax)
movq -0x18(%rbp), %rax
movq -0x38(%rbp), %rcx
movq %rcx, 0x20(%rax)
movq -0x30(%rbp), %rcx
movq %rcx, 0x28(%rax)
movq -0x28(%rbp), %rcx
movq %rcx, 0x30(%rax)
movq -0x18(%rbp), %rax
movq -0x50(%rbp), %rcx
movq %rcx, 0x38(%rax)
movq -0x48(%rbp), %rcx
movq %rcx, 0x40(%rax)
movq -0x40(%rbp), %rcx
movq %rcx, 0x48(%rax)
movq -0x68(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x1, -0x4(%rbp)
jmp 0x103d1
movq -0x68(%rbp), %rdi
callq 0x2140
movq $0x0, -0x60(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x68(%rbp)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0xa0, %rsp
popq %rbp
retq
nopl (%rax)