// File: /workspace/github_c_makefile_star2_O2/johsteffens[P]beth/lib/bcore/bcore_spect_compare.c
// Function: bcore_spect_compare_signal_handler
vd_t bcore_spect_compare_signal_handler( const bcore_signal_s* o )
{
    switch( bcore_signal_s_handle_type( o, typeof( "bcore_spect_compare" ) ) )
    {
        case TYPEOF_init1:
        {
            compare_s_define_trait();
            bcore_flect_define_creator( typeof( "bcore_compare_s"  ), compare_s_create_self  );
            bcore_spect_setup_cache( &bcore_compare_s_cache_g );
        }
        break;

        case TYPEOF_selftest:
        {
            return spect_compare_selftest();
        }
        break;

        default: break;
    }

    return NULL;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rdi, %rbx
leaq 0x4607d(%rip), %rdi     # 0xc7d3d
callq 0x81a11
movq %rbx, %rdi
movq %rax, %rsi
callq 0x75141
movabsq $0x7ee758bbfced33e3, %rcx # imm = 0x7EE758BBFCED33E3
cmpq %rcx, %rax
je 0x81d44
movabsq $0x6a72ce8f8250efc6, %rcx # imm = 0x6A72CE8F8250EFC6
cmpq %rcx, %rax
jne 0x82008
leaq 0x431d1(%rip), %rdi     # 0xc4eca
callq 0x7227a
movq %rax, %rbx
leaq 0x4019d(%rip), %rdi     # 0xc1ea5
callq 0x7227a
movq %rbx, %rdi
movq %rax, %rsi
callq 0x99410
leaq 0x431b9(%rip), %rdi     # 0xc4ed8
callq 0x81a11
leaq 0x2ee(%rip), %rsi       # 0x82019
movq %rax, %rdi
callq 0x6513b
leaq 0x962fe(%rip), %rdi     # 0x118038
callq 0x79b56
jmp 0x82008
xorl %eax, %eax
callq 0x717ac
movq %rax, %r14
leaq 0x460fb(%rip), %rdi     # 0xc7e50
callq 0x64de5
leaq 0x46128(%rip), %rdi     # 0xc7e89
callq 0x81a11
movq %rax, %rdi
callq 0x8297e
movq %r14, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r12
movq %rax, %rdi
callq 0x82997
movq %rax, %rbx
leaq 0x45a9e(%rip), %rdi     # 0xc782c
callq 0x81a11
pushq $0xa
popq %rcx
movq %rbx, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x8afd4
leaq 0x460e8(%rip), %rdi     # 0xc7e93
callq 0x81a11
movl $0xc8, %ecx
movq %rbx, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x8af4b
leaq 0x44802(%rip), %rdi     # 0xc65cc
callq 0x81a11
pushq $-0x32
popq %rcx
movq %rbx, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x8af1f
leaq 0x460b3(%rip), %rdi     # 0xc7e9a
callq 0x64de5
leaq 0x460e4(%rip), %rdi     # 0xc7ed7
callq 0x81a11
movq %rax, %rdi
callq 0x8297e
movq %r14, 0x18(%rsp)
movq %r14, %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r14
movq (%rax), %rdi
callq 0x823e9
movq %rax, %r15
pushq $0x64
popq %rbx
pushq $0x1
popq %r13
subq $0x1, %rbx
jb 0x81e67
testq %r12, %r12
je 0x81e3b
movq (%r12), %rdi
callq 0x8cd25
jmp 0x81e3d
xorl %eax, %eax
movq %r12, 0x20(%rsp)
movq %rax, 0x28(%rsp)
movq %r13, 0x30(%rsp)
movq %r13, 0x10(%rsp)
movups 0x20(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %r15, %rdi
movq %r14, %rsi
callq 0x7c34a
jmp 0x81e25
xorl %r13d, %r13d
movq %r15, %rdi
movq %r14, %rsi
callq 0x7c954
cmpq %rax, %r13
jae 0x81ebe
leaq 0x20(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %r13, %rcx
callq *0x30(%r15)
movq 0x20(%rsp), %rbp
movq %rbp, %rdi
callq 0x82997
movq %rax, %rbx
leaq 0x45989(%rip), %rdi     # 0xc782c
callq 0x81a11
movq %rbx, %rdi
movq %rbp, %rsi
movq %rax, %rdx
movq %r13, %rcx
callq 0x8afd4
incq %r13
jmp 0x81e6a
movq %r12, %rdi
callq 0x82997
movq %rax, %r12
movq (%r14), %rdi
callq 0x820c5
movq %rax, %rdi
movq %r14, %rsi
callq *0xc0(%rax)
movq 0x18(%rsp), %rdi
movq %rax, %rsi
callq 0x71a4d
movq %rax, %r13
movq %r14, %rdi
movq %rax, %rsi
callq 0x81306
testl %eax, %eax
je 0x81f25
leaq 0x28744(%rip), %rdi     # 0xaa647
leaq 0x45fdb(%rip), %rsi     # 0xc7ee5
leaq 0x45ffb(%rip), %rdx     # 0xc7f0c
leaq 0x45e50(%rip), %rcx     # 0xc7d68
movl $0x293, %r8d            # imm = 0x293
xorl %eax, %eax
callq 0x5ffac
leaq 0x50(%rsp), %rbx
pushq $0x5
popq %rcx
movq %rbx, %rdi
movq %r15, %rsi
movq %r13, %rdx
callq *0x30(%r15)
movq (%rbx), %rbx
leaq 0x458e8(%rip), %rdi     # 0xc782c
callq 0x81a11
pushq $0x14
popq %rcx
movq %r12, %rdi
movq %rbx, %rsi
movq %rax, %rdx
callq 0x8afd4
movq %r14, %rdi
movq %r13, %rsi
callq 0x81306
testl %eax, %eax
jg 0x81f92
leaq 0x286d7(%rip), %rdi     # 0xaa647
leaq 0x45fac(%rip), %rsi     # 0xc7f23
leaq 0x45f8e(%rip), %rdx     # 0xc7f0c
leaq 0x45de3(%rip), %rcx     # 0xc7d68
movl $0x295, %r8d            # imm = 0x295
xorl %eax, %eax
callq 0x5ffac
leaq 0x38(%rsp), %rbx
pushq $0x5
popq %rcx
movq %rbx, %rdi
movq %r15, %rsi
movq %r13, %rdx
callq *0x30(%r15)
movq (%rbx), %rbx
leaq 0x4587b(%rip), %rdi     # 0xc782c
callq 0x81a11
movq %r12, %rdi
movq %rbx, %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x8afd4
movq %r14, %rdi
movq %r13, %rsi
callq 0x81306
testl %eax, %eax
js 0x81ffe
leaq 0x2866b(%rip), %rdi     # 0xaa647
leaq 0x45f66(%rip), %rsi     # 0xc7f49
leaq 0x45f22(%rip), %rdx     # 0xc7f0c
leaq 0x45d77(%rip), %rcx     # 0xc7d68
movl $0x297, %r8d            # imm = 0x297
xorl %eax, %eax
callq 0x5ffac
movq 0x18(%rsp), %rdi
callq 0x717c7
xorl %eax, %eax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq