// File: /workspace/github_c_makefile_star2_O0/dalnefre[P]kernel_abe/kernel.c
// Function: define_args_beh
static
BEH_DECL(define_args_beh)
{
	CONS* state = MINE;
	CONS* cust;
	CONS* env;
	CONS* msg = WHAT;
	CONS* ptree;
	CONS* expr;
	CONS* k_value;

	DBUG_ENTER("define_args_beh");
	ENSURE(is_pr(state));
	cust = hd(state);
	ENSURE(actorp(cust));
	env = tl(state);
	ENSURE(is_pr(msg));
	ptree = hd(msg);
	ENSURE(is_pr(tl(msg)));
	expr = hd(tl(msg));
	ENSURE(nilp(tl(tl(msg))));

	DBUG_PRINT("cust", ("%s", cons_to_str(cust)));
	DBUG_PRINT("env", ("%s", cons_to_str(env)));
	DBUG_PRINT("ptree", ("%s", cons_to_str(ptree)));
	DBUG_PRINT("expr", ("%s", cons_to_str(expr)));
	k_value = ACTOR(define_match_beh, pr(cust, pr(ptree, env)));
	SEND(expr, pr(k_value, pr(ATOM("eval"), env)));
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x120, %rsp            # imm = 0x120
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0x25380
movq %rax, %rdi
callq 0x1a600
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x30(%rax), %rdi
callq 0x25510
movq %rax, -0x28(%rbp)
leaq 0x153fc(%rip), %rax     # 0x29b4c
movq %rax, -0x68(%rbp)
leaq 0x1abc5(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, -0x60(%rbp)
movl $0x6f3, -0x5c(%rbp)     # imm = 0x6F3
leaq 0x14bf9(%rip), %rax     # 0x2936f
movq %rax, -0x58(%rbp)
leaq 0x1a9bf(%rip), %rax     # 0x2f140
movq %rax, -0x50(%rbp)
leaq 0x1ab94(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movq %rax, -0x48(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x28490
xorl %eax, %eax
cmpq $0x0, -0x10(%rbp)
movb %al, -0x69(%rbp)
je 0x147be
movq -0x10(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
sete %al
movb %al, -0x69(%rbp)
movb -0x69(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x14809
leaq 0x1aabb(%rip), %rax     # 0x2f290
cmpq %rax, -0x10(%rbp)
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x14809
movq -0x10(%rbp), %rax
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x1488c
movq -0x8(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x8(%rbp), %rdi
leaq -0xeccc(%rip), %rsi     # 0x5b50
leaq 0x1aa6d(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0x78(%rbp)
leaq 0x14d25(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0x88(%rbp)
leaq 0x147d6(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x1bd3, %esi           # imm = 0x1BD3
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 $0x6f4, -0x5c(%rbp)     # imm = 0x6F4
leaq -0x68(%rbp), %rdi
callq 0x28660
jmp 0x14eb2
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 0x14948
movq -0x8(%rbp), %rax
movq %rax, -0x98(%rbp)
movq -0x8(%rbp), %rdi
leaq -0xed7f(%rip), %rsi     # 0x5b50
leaq 0x1a9ba(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0x90(%rbp)
leaq 0x14c6f(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0xa0(%rbp)
leaq 0x14720(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x1bdb, %esi           # imm = 0x1BDB
callq 0x25290
movq -0xa0(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x6f6, -0x5c(%rbp)     # imm = 0x6F6
leaq -0x68(%rbp), %rdi
callq 0x28660
jmp 0x14eb2
movq -0x10(%rbp), %rdi
callq 0x25510
movq %rax, -0x20(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x28(%rbp)
movb %al, -0xa1(%rbp)
je 0x14979
movq -0x28(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
sete %al
movb %al, -0xa1(%rbp)
movb -0xa1(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x149c7
leaq 0x1a8fd(%rip), %rax     # 0x2f290
cmpq %rax, -0x28(%rbp)
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x149c7
movq -0x28(%rbp), %rax
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x14a56
movq -0x8(%rbp), %rax
movq %rax, -0xb8(%rbp)
movq -0x8(%rbp), %rdi
leaq -0xee8d(%rip), %rsi     # 0x5b50
leaq 0x1a8ac(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0xb0(%rbp)
leaq 0x14b61(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0xc0(%rbp)
leaq 0x14612(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x1be3, %esi           # imm = 0x1BE3
callq 0x25290
movq -0xc0(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x6f8, -0x5c(%rbp)     # imm = 0x6F8
leaq -0x68(%rbp), %rdi
callq 0x28660
jmp 0x14eb2
movq -0x28(%rbp), %rdi
callq 0x25380
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
callq 0x25510
movq %rax, %rcx
xorl %eax, %eax
cmpq $0x0, %rcx
movb %al, -0xc1(%rbp)
je 0x14a97
movq -0x28(%rbp), %rdi
callq 0x25510
andq $0x3, %rax
cmpq $0x0, %rax
sete %al
movb %al, -0xc1(%rbp)
movb -0xc1(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x14af2
movq -0x28(%rbp), %rdi
callq 0x25510
leaq 0x1a7d6(%rip), %rcx     # 0x2f290
cmpq %rcx, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x14af2
movq -0x28(%rbp), %rdi
callq 0x25510
andq $0x3, %rax
cmpq $0x1, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
je 0x14b81
movq -0x8(%rbp), %rax
movq %rax, -0xd8(%rbp)
movq -0x8(%rbp), %rdi
leaq -0xefb8(%rip), %rsi     # 0x5b50
leaq 0x1a781(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0xd0(%rbp)
leaq 0x14a36(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0xe0(%rbp)
leaq 0x144e7(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x1beb, %esi           # imm = 0x1BEB
callq 0x25290
movq -0xe0(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0xd8(%rbp), %rdi
movq -0xd0(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x6fa, -0x5c(%rbp)     # imm = 0x6FA
leaq -0x68(%rbp), %rdi
callq 0x28660
jmp 0x14eb2
movq -0x28(%rbp), %rdi
callq 0x25510
movq %rax, %rdi
callq 0x25380
movq %rax, -0x38(%rbp)
movq -0x28(%rbp), %rdi
callq 0x25510
movq %rax, %rdi
callq 0x25510
leaq 0x1a6e2(%rip), %rcx     # 0x2f290
cmpq %rcx, %rax
sete %al
andb $0x1, %al
movzbl %al, %eax
cltq
cmpq $0x0, %rax
jne 0x14c54
movq -0x8(%rbp), %rax
movq %rax, -0xf0(%rbp)
movq -0x8(%rbp), %rdi
leaq -0xf08b(%rip), %rsi     # 0x5b50
leaq 0x1a6ae(%rip), %rdx     # 0x2f290
callq 0x1b6f0
movq %rax, -0xe8(%rbp)
leaq 0x14963(%rip), %rdi     # 0x29558
callq 0x216e0
movq %rax, -0xf8(%rbp)
leaq 0x14414(%rip), %rdi     # 0x2901c
callq 0x216e0
movq %rax, %rdi
movl $0x1bf3, %esi           # imm = 0x1BF3
callq 0x25290
movq -0xf8(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0xf0(%rbp), %rdi
movq -0xe8(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x6fc, -0x5c(%rbp)     # imm = 0x6FC
leaq -0x68(%rbp), %rdi
callq 0x28660
jmp 0x14eb2
jmp 0x14c56
leaq 0x1acc3(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x14cbb
leaq 0x1a6b7(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x148e4(%rip), %rcx     # 0x2955b
movq %rcx, 0x10(%rax)
leaq 0x148d9(%rip), %rdi     # 0x2955b
callq 0x278a0
cmpl $0x0, %eax
je 0x14cbb
leaq 0x1a68d(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x6fe, 0xc(%rax)       # imm = 0x6FE
movq -0x18(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x158b1(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x14cbd
jmp 0x14cbf
leaq 0x1ac5a(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x14d24
leaq 0x1a64e(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x14e68(%rip), %rcx     # 0x29b48
movq %rcx, 0x10(%rax)
leaq 0x14e5d(%rip), %rdi     # 0x29b48
callq 0x278a0
cmpl $0x0, %eax
je 0x14d24
leaq 0x1a624(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x6ff, 0xc(%rax)       # imm = 0x6FF
movq -0x20(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x15848(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x14d26
jmp 0x14d28
leaq 0x1abf1(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x14d8d
leaq 0x1a5e5(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x14d8c(%rip), %rcx     # 0x29ad5
movq %rcx, 0x10(%rax)
leaq 0x14d81(%rip), %rdi     # 0x29ad5
callq 0x278a0
cmpl $0x0, %eax
je 0x14d8d
leaq 0x1a5bb(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x700, 0xc(%rax)       # imm = 0x700
movq -0x30(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x157df(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x14d8f
jmp 0x14d91
leaq 0x1ab88(%rip), %rax     # 0x2f920
cmpl $0x0, (%rax)
je 0x14df6
leaq 0x1a57c(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
leaq 0x14382(%rip), %rcx     # 0x29134
movq %rcx, 0x10(%rax)
leaq 0x14377(%rip), %rdi     # 0x29134
callq 0x278a0
cmpl $0x0, %eax
je 0x14df6
leaq 0x1a552(%rip), %rax     # 0x2f320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x701, 0xc(%rax)       # imm = 0x701
movq -0x38(%rbp), %rdi
callq 0x1d250
movq %rax, %rsi
leaq 0x15776(%rip), %rdi     # 0x2a565
movb $0x0, %al
callq 0x28540
jmp 0x14df8
movq -0x8(%rbp), %rax
movq %rax, -0x118(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x120(%rbp)
movq -0x30(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x25290
movq -0x120(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0x118(%rbp), %rdi
movq %rax, %rdx
leaq 0x52f5(%rip), %rsi      # 0x1a130
callq 0x1b6f0
movq %rax, -0x40(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x108(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x100(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x110(%rbp)
leaq 0x14752(%rip), %rdi     # 0x295be
callq 0x216e0
movq %rax, %rdi
movq -0x20(%rbp), %rsi
callq 0x25290
movq -0x110(%rbp), %rdi
movq %rax, %rsi
callq 0x25290
movq -0x108(%rbp), %rdi
movq -0x100(%rbp), %rsi
movq %rax, %rdx
callq 0x1b810
movl $0x704, -0x5c(%rbp)     # imm = 0x704
leaq -0x68(%rbp), %rdi
callq 0x28660
addq $0x120, %rsp            # imm = 0x120
popq %rbp
retq
nopl (%rax,%rax)