// File: /workspace/github_c_makefile_star2_O1/mijallen[P]SimpleHTTPServer/lib/libyaml/tests/run-scanner.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_token_t token;
        int done = 0;
        int count = 0;
        int error = 0;

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

            done = (token.type == YAML_STREAM_END_TOKEN);

            yaml_token_delete(&token);

            count ++;
        }

        yaml_parser_delete(&parser);

        assert(!fclose(file));

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

    return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x248, %rsp            # imm = 0x248
movq %rsi, %rbx
cmpl $0x2, %edi
jge 0x11fb
movq (%rbx), %rsi
leaq 0xe15(%rip), %rdi       # 0x2004
xorl %eax, %eax
callq 0x1060
jmp 0x1312
movl %edi, %eax
movq %rax, 0x8(%rsp)
movl $0x1, %r14d
leaq 0x68(%rsp), %r13
leaq 0x18(%rsp), %rbp
movq %rbx, 0x10(%rsp)
movq (%rbx,%r14,8), %rdx
leaq 0xdfc(%rip), %rdi       # 0x201e
movl %r14d, %esi
xorl %eax, %eax
callq 0x1060
movq 0x2dad(%rip), %rax      # 0x3fe0
movq (%rax), %rdi
callq 0x10a0
movq (%rbx,%r14,8), %rdi
leaq 0xded(%rip), %rsi       # 0x2033
callq 0x10b0
testq %rax, %rax
je 0x1326
movq %rax, %r12
movq %r13, %rdi
callq 0x1090
testl %eax, %eax
je 0x1345
movq %r13, %rdi
movq %r12, %rsi
callq 0x1030
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1040
testl %eax, %eax
je 0x12c4
movl $0x1, %ecx
movl %ecx, %r15d
movl 0x18(%rsp), %ebx
movq %rbp, %rdi
callq 0x10c0
cmpl $0x2, %ebx
je 0x12d0
movq %r13, %rdi
movq %rbp, %rsi
callq 0x1040
leal 0x1(%r15), %ecx
testl %eax, %eax
jne 0x1286
cmpl $0x2, %ebx
leaq 0xde7(%rip), %rbx       # 0x209e
leaq 0xde8(%rip), %rax       # 0x20a6
cmoveq %rax, %rbx
jmp 0x12d7
xorl %r15d, %r15d
leaq 0xdd0(%rip), %rbx       # 0x209e
jmp 0x12d7
leaq 0xdcf(%rip), %rbx       # 0x20a6
movq %r13, %rdi
callq 0x1080
movq %r12, %rdi
callq 0x1050
testl %eax, %eax
jne 0x1364
leaq 0xd9c(%rip), %rdi       # 0x208e
movq %rbx, %rsi
movl %r15d, %edx
xorl %eax, %eax
callq 0x1060
incq %r14
cmpq 0x8(%rsp), %r14
movq 0x10(%rsp), %rbx
jne 0x1217
xorl %eax, %eax
addq $0x248, %rsp            # imm = 0x248
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xd09(%rip), %rdi       # 0x2036
leaq 0xd07(%rip), %rsi       # 0x203b
leaq 0xd0e(%rip), %rcx       # 0x2049
movl $0x22, %edx
callq 0x1070
leaq 0xd14(%rip), %rdi       # 0x2060
leaq 0xce8(%rip), %rsi       # 0x203b
leaq 0xcef(%rip), %rcx       # 0x2049
movl $0x24, %edx
callq 0x1070
leaq 0xd15(%rip), %rdi       # 0x2080
leaq 0xcc9(%rip), %rsi       # 0x203b
leaq 0xcd0(%rip), %rcx       # 0x2049
movl $0x38, %edx
callq 0x1070