// File: /workspace/github_c_makefile_star2_O0/johsteffens[P]beth/lib/bcore/bcore_cday.c
// Function: bcore_cday_ymd_s_check_plausibility
void bcore_cday_ymd_s_check_plausibility( const bcore_cday_ymd_s* o )
{
    ASSERT( ( o->y >= 1900 ) && ( o->y <= 2100 ) );
    ASSERT( o->m >= 1 && o->m <= 12 );
    ASSERT( o->d >= 1 && o->d <= 31 );

    if( o->y == 1900 ) ASSERT( o->m >= 3 );
    if( o->y == 2100 ) ASSERT( o->m <  3 );

    switch( o->m )
    {
        case  1: ASSERT( o->d <= 31 ); break;
        case  2: ASSERT( o->d <= 29 ); break;
        case  3: ASSERT( o->d <= 31 ); break;
        case  4: ASSERT( o->d <= 30 ); break;
        case  5: ASSERT( o->d <= 31 ); break;
        case  6: ASSERT( o->d <= 30 ); break;
        case  7: ASSERT( o->d <= 31 ); break;
        case  8: ASSERT( o->d <= 31 ); break;
        case  9: ASSERT( o->d <= 30 ); break;
        case 10: ASSERT( o->d <= 31 ); break;
        case 11: ASSERT( o->d <= 30 ); break;
        case 12: ASSERT( o->d <= 31 ); break;
        default: break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
cmpl $0x76c, 0x8(%rax)       # imm = 0x76C
jl 0x9aa26
movq -0x8(%rbp), %rax
cmpl $0x834, 0x8(%rax)       # imm = 0x834
jle 0x9aa4f
leaq 0x98f72(%rip), %rdi     # 0x13399f
leaq 0xb2518(%rip), %rsi     # 0x14cf4c
leaq 0xb2536(%rip), %rdx     # 0x14cf71
leaq 0xb2553(%rip), %rcx     # 0x14cf95
movl $0x18, %r8d
movb $0x0, %al
callq 0x9cea0
movq -0x8(%rbp), %rax
cmpl $0x1, 0xc(%rax)
jl 0x9aa63
movq -0x8(%rbp), %rax
cmpl $0xc, 0xc(%rax)
jle 0x9aa8c
leaq 0x98f35(%rip), %rdi     # 0x13399f
leaq 0xb2531(%rip), %rsi     # 0x14cfa2
leaq 0xb24f9(%rip), %rdx     # 0x14cf71
leaq 0xb2516(%rip), %rcx     # 0x14cf95
movl $0x19, %r8d
movb $0x0, %al
callq 0x9cea0
movq -0x8(%rbp), %rax
cmpl $0x1, 0x10(%rax)
jl 0x9aaa0
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9aac9
leaq 0x98ef8(%rip), %rdi     # 0x13399f
leaq 0xb250c(%rip), %rsi     # 0x14cfba
leaq 0xb24bc(%rip), %rdx     # 0x14cf71
leaq 0xb24d9(%rip), %rcx     # 0x14cf95
movl $0x1a, %r8d
movb $0x0, %al
callq 0x9cea0
movq -0x8(%rbp), %rax
cmpl $0x76c, 0x8(%rax)       # imm = 0x76C
jne 0x9ab0b
movq -0x8(%rbp), %rax
cmpl $0x3, 0xc(%rax)
jge 0x9ab09
leaq 0x98eb8(%rip), %rdi     # 0x13399f
leaq 0xb24e4(%rip), %rsi     # 0x14cfd2
leaq 0xb247c(%rip), %rdx     # 0x14cf71
leaq 0xb2499(%rip), %rcx     # 0x14cf95
movl $0x1c, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ab0b
movq -0x8(%rbp), %rax
cmpl $0x834, 0x8(%rax)       # imm = 0x834
jne 0x9ab4d
movq -0x8(%rbp), %rax
cmpl $0x3, 0xc(%rax)
jl 0x9ab4b
leaq 0x98e76(%rip), %rdi     # 0x13399f
leaq 0xb24ac(%rip), %rsi     # 0x14cfdc
leaq 0xb243a(%rip), %rdx     # 0x14cf71
leaq 0xb2457(%rip), %rcx     # 0x14cf95
movl $0x1d, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ab4d
movq -0x8(%rbp), %rax
movl 0xc(%rax), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x10(%rbp)
subl $0xb, %eax
ja 0x9ae10
movq -0x10(%rbp), %rax
leaq 0xb2330(%rip), %rcx     # 0x14cea0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9abac
leaq 0x98e15(%rip), %rdi     # 0x13399f
leaq 0xb2436(%rip), %rsi     # 0x14cfc7
leaq 0xb23d9(%rip), %rdx     # 0x14cf71
leaq 0xb23f6(%rip), %rcx     # 0x14cf95
movl $0x21, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1d, 0x10(%rax)
jle 0x9abe4
leaq 0x98ddd(%rip), %rdi     # 0x13399f
leaq 0xb241c(%rip), %rsi     # 0x14cfe5
leaq 0xb23a1(%rip), %rdx     # 0x14cf71
leaq 0xb23be(%rip), %rcx     # 0x14cf95
movl $0x22, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9ac1c
leaq 0x98da5(%rip), %rdi     # 0x13399f
leaq 0xb23c6(%rip), %rsi     # 0x14cfc7
leaq 0xb2369(%rip), %rdx     # 0x14cf71
leaq 0xb2386(%rip), %rcx     # 0x14cf95
movl $0x23, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1e, 0x10(%rax)
jle 0x9ac54
leaq 0x98d6d(%rip), %rdi     # 0x13399f
leaq 0xb23b7(%rip), %rsi     # 0x14cff0
leaq 0xb2331(%rip), %rdx     # 0x14cf71
leaq 0xb234e(%rip), %rcx     # 0x14cf95
movl $0x24, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9ac8c
leaq 0x98d35(%rip), %rdi     # 0x13399f
leaq 0xb2356(%rip), %rsi     # 0x14cfc7
leaq 0xb22f9(%rip), %rdx     # 0x14cf71
leaq 0xb2316(%rip), %rcx     # 0x14cf95
movl $0x25, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1e, 0x10(%rax)
jle 0x9acc4
leaq 0x98cfd(%rip), %rdi     # 0x13399f
leaq 0xb2347(%rip), %rsi     # 0x14cff0
leaq 0xb22c1(%rip), %rdx     # 0x14cf71
leaq 0xb22de(%rip), %rcx     # 0x14cf95
movl $0x26, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9acfc
leaq 0x98cc5(%rip), %rdi     # 0x13399f
leaq 0xb22e6(%rip), %rsi     # 0x14cfc7
leaq 0xb2289(%rip), %rdx     # 0x14cf71
leaq 0xb22a6(%rip), %rcx     # 0x14cf95
movl $0x27, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9ad34
leaq 0x98c8d(%rip), %rdi     # 0x13399f
leaq 0xb22ae(%rip), %rsi     # 0x14cfc7
leaq 0xb2251(%rip), %rdx     # 0x14cf71
leaq 0xb226e(%rip), %rcx     # 0x14cf95
movl $0x28, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1e, 0x10(%rax)
jle 0x9ad6c
leaq 0x98c55(%rip), %rdi     # 0x13399f
leaq 0xb229f(%rip), %rsi     # 0x14cff0
leaq 0xb2219(%rip), %rdx     # 0x14cf71
leaq 0xb2236(%rip), %rcx     # 0x14cf95
movl $0x29, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9ada4
leaq 0x98c1d(%rip), %rdi     # 0x13399f
leaq 0xb223e(%rip), %rsi     # 0x14cfc7
leaq 0xb21e1(%rip), %rdx     # 0x14cf71
leaq 0xb21fe(%rip), %rcx     # 0x14cf95
movl $0x2a, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1e, 0x10(%rax)
jle 0x9add9
leaq 0x98be8(%rip), %rdi     # 0x13399f
leaq 0xb2232(%rip), %rsi     # 0x14cff0
leaq 0xb21ac(%rip), %rdx     # 0x14cf71
leaq 0xb21c9(%rip), %rcx     # 0x14cf95
movl $0x2b, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
movq -0x8(%rbp), %rax
cmpl $0x1f, 0x10(%rax)
jle 0x9ae0e
leaq 0x98bb3(%rip), %rdi     # 0x13399f
leaq 0xb21d4(%rip), %rsi     # 0x14cfc7
leaq 0xb2177(%rip), %rdx     # 0x14cf71
leaq 0xb2194(%rip), %rcx     # 0x14cf95
movl $0x2c, %r8d
movb $0x0, %al
callq 0x9cea0
jmp 0x9ae12
jmp 0x9ae12
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax,%rax)