// File: /workspace/github_c_makefile_star2_O1/archer1357[P]Offline-Raytracer/stb_image.c
// Function: stbi__info_main
static int stbi__info_main(stbi__context *s, int *x, int *y, int *comp)
{
   if (stbi__jpeg_info(s, x, y, comp))
       return 1;
   if (stbi__png_info(s, x, y, comp))
       return 1;
   if (stbi__gif_info(s, x, y, comp))
       return 1;
   if (stbi__bmp_info(s, x, y, comp))
       return 1;
   if (stbi__psd_info(s, x, y, comp))
       return 1;
   if (stbi__pic_info(s, x, y, comp))
       return 1;
   #ifndef STBI_NO_HDR
   if (stbi__hdr_info(s, x, y, comp))
       return 1;
   #endif
   // test tga last because it's a crappy test!
   if (stbi__tga_info(s, x, y, comp))
       return 1;
   return stbi__err("unknown image type", "Image not of any known type, or corrupt");
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4858, %rsp           # imm = 0x4858
movq %rcx, %rbx
movq %rdx, %r15
movq %rsi, %r12
movq %rdi, %r14
movq %rsp, %rdi
movq %r14, (%rdi)
movl $0x2, %esi
callq 0x40eeec
testl %eax, %eax
je 0x40da4a
testq %r12, %r12
je 0x40da2b
movq (%rsp), %rcx
movl (%rcx), %ecx
movl %ecx, (%r12)
testq %r15, %r15
je 0x40da3a
movq (%rsp), %rcx
movl 0x4(%rcx), %ecx
movl %ecx, (%r15)
testq %rbx, %rbx
je 0x40da5c
movq (%rsp), %rcx
movl 0x8(%rcx), %ecx
movl %ecx, (%rbx)
jmp 0x40da5c
movq (%rsp), %rcx
movq 0xc8(%rcx), %rdx
movq %rdx, 0xb8(%rcx)
movl $0x1, %ebp
testl %eax, %eax
jne 0x40dc6c
movq %rsp, %rdi
movq %r14, (%rdi)
movl $0x2, %esi
xorl %edx, %edx
callq 0x4102c9
testl %eax, %eax
je 0x40daad
testq %r12, %r12
je 0x40da8e
movq (%rsp), %rcx
movl (%rcx), %ecx
movl %ecx, (%r12)
testq %r15, %r15
je 0x40da9d
movq (%rsp), %rcx
movl 0x4(%rcx), %ecx
movl %ecx, (%r15)
testq %rbx, %rbx
je 0x40dabf
movq (%rsp), %rcx
movl 0x8(%rcx), %ecx
movl %ecx, (%rbx)
jmp 0x40dabf
movq (%rsp), %rcx
movq 0xc8(%rcx), %rdx
movq %rdx, 0xb8(%rcx)
testl %eax, %eax
jne 0x40dc6c
movq %rsp, %rsi
movq %r14, %rdi
movq %rbx, %rdx
movl $0x1, %ecx
callq 0x411e29
testl %eax, %eax
je 0x40daf8
testq %r12, %r12
je 0x40daea
movl (%rsp), %ecx
movl %ecx, (%r12)
testq %r15, %r15
je 0x40db06
movl 0x4(%rsp), %ecx
movl %ecx, (%r15)
jmp 0x40db06
movq 0xc8(%r14), %rcx
movq %rcx, 0xb8(%r14)
movl $0x1, %ebp
testl %eax, %eax
jne 0x40dc6c
movq %r14, %rdi
callq 0x40f6b6
cmpb $0x42, %al
jne 0x40dbfa
movq %r14, %rdi
callq 0x40f6b6
cmpb $0x4d, %al
jne 0x40dbfa
cmpq $0x0, 0x10(%r14)
je 0x40db69
movq 0xc0(%r14), %rcx
movl 0xb8(%r14), %edx
movl %ecx, %eax
subl %edx, %eax
cmpl $0xb, %eax
jg 0x40db69
movq %rcx, 0xb8(%r14)
movq 0x28(%r14), %rdi
movl $0xc, %esi
subl %eax, %esi
callq *0x18(%r14)
jmp 0x40db71
addq $0xc, 0xb8(%r14)
movq %r14, %rdi
callq 0x411d46
cmpl $0x37, %eax
jle 0x40db8f
cmpl $0x38, %eax
je 0x40db9d
cmpl $0x6c, %eax
je 0x40db9d
cmpl $0x7c, %eax
je 0x40db9d
jmp 0x40dbfa
cmpl $0xc, %eax
je 0x40dc80
cmpl $0x28, %eax
jne 0x40dbfa
movq %r14, %rdi
callq 0x411d46
movl %eax, (%r12)
movq %r14, %rdi
callq 0x411d46
movl %eax, (%r15)
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %r13d
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %eax
shll $0x8, %eax
orl %r13d, %eax
cmpl $0x1, %eax
jne 0x40dbfa
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %r15d
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %eax
shll $0x8, %eax
orl %r15d, %eax
shrl $0x3, %eax
movl %eax, (%rbx)
jmp 0x40dc6c
movq 0xc8(%r14), %rax
movq %rax, 0xb8(%r14)
movq %r14, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x412713
testl %eax, %eax
jne 0x40dc6c
movq %r14, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x412835
testl %eax, %eax
jne 0x40dc6c
movq %r14, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x412a2c
testl %eax, %eax
jne 0x40dc6c
movq %r14, %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rbx, %rcx
callq 0x412bc1
testl %eax, %eax
jne 0x40dc6c
leaq 0xc9af9(%rip), %rax     # 0x4d775c
movq %rax, 0x10d8d6(%rip)    # 0x51b540
xorl %ebp, %ebp
movl %ebp, %eax
addq $0x4858, %rsp           # imm = 0x4858
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %r13d
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %eax
shll $0x8, %eax
orl %r13d, %eax
movl %eax, (%r12)
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %r13d
movq %r14, %rdi
callq 0x40f6b6
movzbl %al, %eax
shll $0x8, %eax
orl %r13d, %eax
jmp 0x40dbb1