// File: /workspace/github_c_makefile_star2_O0/dalnefre[P]kernel_abe/kernel.c
// Function: oper_type
static
BEH_DECL(oper_type)
{
	CONS* msg = WHAT;
	CONS* cust;
	CONS* req;

	DBUG_ENTER("oper_type");
	ENSURE(is_pr(msg));
	cust = hd(msg);
	ENSURE(actorp(cust));
	req = tl(msg);

	DBUG_PRINT("cust", ("%s", cons_to_str(cust)));
	DBUG_PRINT("req", ("%s", cons_to_str(req)));
	if (is_pr(req)
	&& (hd(req) == ATOM("type_eq"))) {
		SEND(cust, ((tl(req) == MK_REF(oper_type)) ? a_true : a_false));
	} else if (req == ATOM("write")) {
		SINK* sink = current_sink;
		SEND(cust, (sink->put_cstr)(sink, "#operative"));
	} else {
		object_type(CFG);  /* DELEGATE BEHAVIOR */
	}
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0x25510
movq %rax, -0x10(%rbp)
leaq 0x1306f(%rip), %rax     # 0x29bb6
movq %rax, -0x48(%rbp)
leaq 0x187ce(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, -0x40(%rbp)
movl $0x276, -0x3c(%rbp)     # imm = 0x276
leaq 0x12802(%rip), %rax     # 0x2936f
movq %rax, -0x38(%rbp)
leaq 0x185c8(%rip), %rax     # 0x2f140
movq %rax, -0x30(%rbp)
leaq 0x1879d(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movq %rax, -0x28(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x28490
xorl %eax, %eax
cmpq $0x0, -0x10(%rbp)
movb %al, -0x51(%rbp)
je 0x16bb5
movq -0x10(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
sete %al
movb %al, -0x51(%rbp)
movb -0x51(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x16bfc
leaq 0x186c4(%rip), %rax     # 0x2f290
cmpq %rax, -0x10(%rbp)
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x16bfc
movq -0x10(%rbp), %rax
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x16c79
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x8(%rbp), %rdi
leaq -0x110bf(%rip), %rsi    # 0x5b50
leaq 0x1867a(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0x60(%rbp)
leaq 0x12932(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0x70(%rbp)
leaq 0x123e6(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x9df, %esi            # imm = 0x9DF
callq 0x25290
movq -0x70(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x277, -0x3c(%rbp)     # imm = 0x277
leaq -0x48(%rbp), %rdi
callq 0x28660
jmp 0x16fa7
movq -0x10(%rbp), %rdi
callq 0x25380
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x16d29
movq -0x8(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x8(%rbp), %rdi
leaq -0x11169(%rip), %rsi    # 0x5b50
leaq 0x185d0(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0x78(%rbp)
leaq 0x12888(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0x88(%rbp)
leaq 0x12339(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x9e7, %esi            # imm = 0x9E7
callq 0x25290
movq -0x88(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x279, -0x3c(%rbp)     # imm = 0x279
leaq -0x48(%rbp), %rdi
callq 0x28660
jmp 0x16fa7
movq -0x10(%rbp), %rdi
callq 0x25510
movq %rax, -0x20(%rbp)
leaq 0x18be3(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x16d9b
leaq 0x185d7(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x12804(%rip), %rcx     # 0x2955b
movq %rcx, 0x10(%rax)
leaq 0x127f9(%rip), %rdi     # 0x2955b
callq 0x278a0
cmpl $0x0, %eax
je 0x16d9b
leaq 0x185ad(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x27c, 0xc(%rax)       # imm = 0x27C
movq -0x18(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x137d1(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x16d9d
jmp 0x16d9f
leaq 0x18b7a(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x16e04
leaq 0x1856e(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x127a0(%rip), %rcx     # 0x29560
movq %rcx, 0x10(%rax)
leaq 0x12795(%rip), %rdi     # 0x29560
callq 0x278a0
cmpl $0x0, %eax
je 0x16e04
leaq 0x18544(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x27d, 0xc(%rax)       # imm = 0x27D
movq -0x20(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x13768(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x16e06
xorl %eax, %eax
cmpq $0x0, -0x20(%rbp)
movb %al, -0x89(%rbp)
je 0x16e2a
movq -0x20(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
sete %al
movb %al, -0x89(%rbp)
movb -0x89(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x16f18
leaq 0x18448(%rip), %rax     # 0x2f290
cmpq %rax, -0x20(%rbp)
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x16f18
movq -0x20(%rbp), %rax
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x16f18
movq -0x20(%rbp), %rdi
callq 0x25380
movq %rax, -0x98(%rbp)
leaq 0x1271f(%rip), %rdi     # 0x295b6
callq 0x216e0
movq %rax, %rcx
movq -0x98(%rbp), %rax
cmpq %rcx, %rax
jne 0x16f18
movq -0x8(%rbp), %rax
movq %rax, -0xa8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xa0(%rbp)
movq -0x20(%rbp), %rdi
callq 0x25510
leaq -0x3b1(%rip), %rcx      # 0x16b20
shlq $0x2, %rcx
orq $0x3, %rcx
cmpq %rcx, %rax
jne 0x16eee
movq 0x18493(%rip), %rax     # 0x2f378
movq %rax, -0xb0(%rbp)
jmp 0x16efc
movq 0x1847b(%rip), %rax     # 0x2f370
movq %rax, -0xb0(%rbp)
movq -0xa0(%rbp), %rsi
movq -0xa8(%rbp), %rdi
movq -0xb0(%rbp), %rdx
callq 0x1b810
jmp 0x16f97
movq -0x20(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq 0x126cb(%rip), %rdi     # 0x295f5
callq 0x216e0
movq %rax, %rcx
movq -0xb8(%rbp), %rax
cmpq %rcx, %rax
jne 0x16f8c
movq 0x18463(%rip), %rax     # 0x2f3a8
movq %rax, -0x50(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xc8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xc0(%rbp)
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x50(%rbp), %rdi
leaq 0x12c4e(%rip), %rsi     # 0x29bc0
callq *%rax
movq -0xc8(%rbp), %rdi
movq -0xc0(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
jmp 0x16f95
movq -0x8(%rbp), %rdi
callq 0xa360
jmp 0x16f97
movl $0x287, -0x3c(%rbp)     # imm = 0x287
leaq -0x48(%rbp), %rdi
callq 0x28660
addq $0xd0, %rsp
popq %rbp
retq