// File: /workspace/github_c_makefile_star2_O1/mijallen[P]SimpleHTTPServer/lib/libyaml/tests/run-parser.c
// Function: main
int
main(int argc, char *argv[])
{
    int number;

    if (argc < 2) {
        printf("Usage: %s file1.yaml ...\n", argv[0]);
        return 0;
    }

    for (number = 1; number < argc; number ++)
    {
        FILE *file;
        yaml_parser_t parser;
        yaml_event_t event;
        int done = 0;
        int count = 0;
        int error = 0;

        printf("[%d] Parsing '%s': ", number, argv[number]);
        fflush(stdout);

        file = fopen(argv[number], "rb");
        assert(file);

        assert(yaml_parser_initialize(&parser));

        yaml_parser_set_input_file(&parser, file);

        while (!done)
        {
            if (!yaml_parser_parse(&parser, &event)) {
                error = 1;
                break;
            }

            done = (event.type == YAML_STREAM_END_EVENT);

            yaml_event_delete(&event);

            count ++;
        }

        yaml_parser_delete(&parser);

        assert(!fclose(file));

        printf("%s (%d events)\n", (error ? "FAILURE" : "SUCCESS"), count);
    }

    return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x258, %rsp            # imm = 0x258
movq %rsi, %rbx
cmpl $0x2, %edi
jge 0x11fb
movq (%rbx), %rsi
leaq 0xe15(%rip), %rdi       # 0x2004
xorl %eax, %eax
callq 0x1060
jmp 0x1310
movl %edi, %eax
movq %rax, (%rsp)
movl $0x1, %r14d
leaq 0x78(%rsp), %r13
leaq 0x10(%rsp), %rbp
movq %rbx, 0x8(%rsp)
movq (%rbx,%r14,8), %rdx
leaq 0xdfd(%rip), %rdi       # 0x201e
movl %r14d, %esi
xorl %eax, %eax
callq 0x1060
movq 0x2dae(%rip), %rax      # 0x3fe0
movq (%rax), %rdi
callq 0x10a0
movq (%rbx,%r14,8), %rdi
leaq 0xded(%rip), %rsi       # 0x2032
callq 0x10b0
testq %rax, %rax
je 0x1324
movq %rax, %r12
movq %r13, %rdi
callq 0x1090
testl %eax, %eax
je 0x1343
movq %r13, %rdi
movq %r12, %rsi
callq 0x1030
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1040
testl %eax, %eax
je 0x12c3
movl $0x1, %ecx
movl %ecx, %r15d
movl 0x10(%rsp), %ebx
movq %rbp, %rdi
callq 0x10c0
cmpl $0x2, %ebx
je 0x12cf
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1040
leal 0x1(%r15), %ecx
testl %eax, %eax
jne 0x1285
cmpl $0x2, %ebx
leaq 0xde6(%rip), %rbx       # 0x209c
leaq 0xde7(%rip), %rax       # 0x20a4
cmoveq %rax, %rbx
jmp 0x12d6
xorl %r15d, %r15d
leaq 0xdcf(%rip), %rbx       # 0x209c
jmp 0x12d6
leaq 0xdce(%rip), %rbx       # 0x20a4
movq %r13, %rdi
callq 0x1080
movq %r12, %rdi
callq 0x1050
testl %eax, %eax
jne 0x1362
leaq 0xd9b(%rip), %rdi       # 0x208c
movq %rbx, %rsi
movl %r15d, %edx
xorl %eax, %eax
callq 0x1060
incq %r14
cmpq (%rsp), %r14
movq 0x8(%rsp), %rbx
jne 0x1216
xorl %eax, %eax
addq $0x258, %rsp            # imm = 0x258
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xd0a(%rip), %rdi       # 0x2035
leaq 0xd08(%rip), %rsi       # 0x203a
leaq 0xd0e(%rip), %rcx       # 0x2047
movl $0x22, %edx
callq 0x1070
leaq 0xd14(%rip), %rdi       # 0x205e
leaq 0xce9(%rip), %rsi       # 0x203a
leaq 0xcef(%rip), %rcx       # 0x2047
movl $0x24, %edx
callq 0x1070
leaq 0xd15(%rip), %rdi       # 0x207e
leaq 0xcca(%rip), %rsi       # 0x203a
leaq 0xcd0(%rip), %rcx       # 0x2047
movl $0x38, %edx
callq 0x1070