// File: /workspace/github_c_makefile_star2_O3/mijallen[P]SimpleHTTPServer/lib/libyaml/tests/run-loader.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_document_t document;
        int done = 0;
        int count = 0;
        int error = 0;

        printf("[%d] Loading '%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_load(&parser, &document)) {
                error = 1;
                break;
            }

            done = (!yaml_document_get_root_node(&document));

            yaml_document_delete(&document);

            if (!done) count ++;
        }

        yaml_parser_delete(&parser);

        assert(!fclose(file));

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

    return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x268, %rsp            # imm = 0x268
movq %rsi, %rbx
cmpl $0x2, %edi
jge 0x120b
movq (%rbx), %rsi
leaq 0xe05(%rip), %rdi       # 0x2004
xorl %eax, %eax
callq 0x1070
jmp 0x131b
movl %edi, %eax
movq %rax, 0x8(%rsp)
movl $0x1, %r14d
leaq 0x88(%rsp), %r13
leaq 0x20(%rsp), %rbp
movq %rbx, 0x10(%rsp)
movq (%rbx,%r14,8), %rdx
leaq 0xde9(%rip), %rdi       # 0x201e
movl %r14d, %esi
xorl %eax, %eax
callq 0x1070
movq 0x2d9a(%rip), %rax      # 0x3fe0
movq (%rax), %rdi
callq 0x10c0
movq (%rbx,%r14,8), %rdi
leaq 0xdd9(%rip), %rsi       # 0x2032
callq 0x10d0
testq %rax, %rax
je 0x132f
movq %rax, %r15
movq %r13, %rdi
callq 0x10b0
testl %eax, %eax
je 0x134e
movq %r13, %rdi
movq %r15, 0x18(%rsp)
movq %r15, %rsi
callq 0x1030
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1060
movl %eax, %ebx
testl %eax, %eax
je 0x12c6
movq %rbp, %rdi
callq 0x1040
movq %rax, %r12
movq %rbp, %rdi
callq 0x1090
incl %r15d
testq %r12, %r12
jne 0x1290
cmpq $0x1, %r12
sbbl $-0x1, %r15d
jmp 0x12c9
incl %r15d
movq %r13, %rdi
callq 0x10a0
movq 0x18(%rsp), %rdi
callq 0x1050
testl %eax, %eax
jne 0x136d
testl %ebx, %ebx
leaq 0xdbb(%rip), %rsi       # 0x20a7
leaq 0xdac(%rip), %rax       # 0x209f
cmoveq %rax, %rsi
leaq 0xd8e(%rip), %rdi       # 0x208c
movl %r15d, %edx
xorl %eax, %eax
callq 0x1070
incq %r14
cmpq 0x8(%rsp), %r14
movq 0x10(%rsp), %rbx
jne 0x122a
xorl %eax, %eax
addq $0x268, %rsp            # imm = 0x268
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xcff(%rip), %rdi       # 0x2035
leaq 0xcfd(%rip), %rsi       # 0x203a
leaq 0xd03(%rip), %rcx       # 0x2047
movl $0x22, %edx
callq 0x1080
leaq 0xd09(%rip), %rdi       # 0x205e
leaq 0xcde(%rip), %rsi       # 0x203a
leaq 0xce4(%rip), %rcx       # 0x2047
movl $0x24, %edx
callq 0x1080
leaq 0xd0a(%rip), %rdi       # 0x207e
leaq 0xcbf(%rip), %rsi       # 0x203a
leaq 0xcc5(%rip), %rcx       # 0x2047
movl $0x38, %edx
callq 0x1080