// File: /workspace/github_c_makefile_star2_O0/mijallen[P]SimpleHTTPServer/lib/libyaml/src/scanner.c
// Function: yaml_parser_fetch_stream_start
static int
yaml_parser_fetch_stream_start(yaml_parser_t *parser)
{
    yaml_simple_key_t simple_key = { 0, 0, 0, { 0, 0, 0 } };
    yaml_token_t token;

    /* Set the initial indentation. */

    parser->indent = -1;

    /* Initialize the simple key stack. */

    if (!PUSH(parser, parser->simple_keys, simple_key))
        return 0;

    /* A simple key is allowed at the beginning of the stream. */

    parser->simple_key_allowed = 1;

    /* We have started. */

    parser->stream_start_produced = 1;

    /* Create the STREAM-START token and append it to the queue. */

    STREAM_START_TOKEN_INIT(token, parser->encoding,
            parser->mark, parser->mark);

    if (!ENQUEUE(parser, parser->tokens, token))
        return 0;

    return 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x10(%rbp)
leaq -0x38(%rbp), %rdi
xorl %esi, %esi
movl $0x28, %edx
callq 0x2120
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x150(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movq 0x168(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x160(%rcx), %rax
jne 0x88b8
movq -0x10(%rbp), %rdi
addq $0x158, %rdi            # imm = 0x158
movq -0x10(%rbp), %rsi
addq $0x158, %rsi            # imm = 0x158
addq $0x10, %rsi
movq -0x10(%rbp), %rdx
addq $0x158, %rdx            # imm = 0x158
addq $0x8, %rdx
callq 0x20e0
cmpl $0x0, %eax
je 0x88e7
movq -0x10(%rbp), %rax
movq 0x168(%rax), %rdi
movq %rdi, %rcx
addq $0x28, %rcx
movq %rcx, 0x168(%rax)
leaq -0x38(%rbp), %rsi
movl $0x28, %edx
callq 0x2180
movb $0x1, %al
testb $0x1, %al
jne 0x8903
jmp 0x88f7
movq -0x10(%rbp), %rax
movl $0x1, (%rax)
xorl %eax, %eax
testb $0x1, %al
jne 0x8903
movl $0x0, -0x4(%rbp)
jmp 0x8a3f
movq -0x10(%rbp), %rax
movl $0x1, 0x154(%rax)
movq -0x10(%rbp), %rax
movl $0x1, 0xf8(%rax)
leaq -0x88(%rbp), %rdi
xorl %esi, %esi
movl $0x50, %edx
callq 0x2120
movl $0x1, -0x88(%rbp)
movq -0x10(%rbp), %rax
movq 0xe0(%rax), %rcx
movq %rcx, -0x68(%rbp)
movq 0xe8(%rax), %rcx
movq %rcx, -0x60(%rbp)
movq 0xf0(%rax), %rax
movq %rax, -0x58(%rbp)
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)
movq -0x10(%rbp), %rax
movl 0xd0(%rax), %eax
movl %eax, -0x80(%rbp)
movq -0x10(%rbp), %rax
movq 0x120(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x110(%rcx), %rax
jne 0x89ed
movq -0x10(%rbp), %rdi
addq $0x108, %rdi            # imm = 0x108
movq -0x10(%rbp), %rsi
addq $0x108, %rsi            # imm = 0x108
addq $0x10, %rsi
movq -0x10(%rbp), %rdx
addq $0x108, %rdx            # imm = 0x108
addq $0x18, %rdx
movq -0x10(%rbp), %rcx
addq $0x108, %rcx            # imm = 0x108
addq $0x8, %rcx
callq 0x2170
cmpl $0x0, %eax
je 0x8a1f
movq -0x10(%rbp), %rax
movq 0x120(%rax), %rdi
movq %rdi, %rcx
addq $0x50, %rcx
movq %rcx, 0x120(%rax)
leaq -0x88(%rbp), %rsi
movl $0x50, %edx
callq 0x2180
movb $0x1, %al
testb $0x1, %al
jne 0x8a38
jmp 0x8a2f
movq -0x10(%rbp), %rax
movl $0x1, (%rax)
xorl %eax, %eax
testb $0x1, %al
jne 0x8a38
movl $0x0, -0x4(%rbp)
jmp 0x8a3f
movl $0x1, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x90, %rsp
popq %rbp
retq
nopl (%rax,%rax)