LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: next_list_beh
BEH_DECL(next_list_beh)
{
	CONS* value = WHAT;
	CONS* to;
	CONS* expr;
	CONS* env;
	CONS* p;
	CONS* msg;
	CONS* a;

	DBUG_ENTER("next_list_beh");
	DBUG_PRINT("", ("value = %s", cons_to_str(value)));
	to = pr_head(MINE);
	p = pr_tail(MINE);
	expr = pr_head(p);
	DBUG_PRINT("", ("expr = %s", cons_to_str(expr)));
	env = pr_tail(p);
	a = ACTOR(join_list_beh, mk_pair(to, value));
	msg = mk_pair(expr, env);
	msg = mk_pair(a, msg);
	SEND(eval_list__actor, msg);
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x14906
movq %rax, %r14
leaq 0x112c8(%rip), %rax     # 0x172ba
movq %rsp, %rdi
movq %rax, (%rdi)
leaq 0x18321(%rip), %r12     # 0x1e320
movq (%r12), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x417, 0xc(%rdi)       # imm = 0x417
leaq 0x139a1(%rip), %r15     # 0x199bc
movq %r15, 0x10(%rdi)
leaq 0x1811a(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
leaq 0x188b6(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0x607f
movq (%r12), %rax
movq 0x50(%rax), %rax
movq %r15, 0x10(%rax)
movq %r15, %rdi
callq 0x15df4
testl %eax, %eax
je 0x607f
movq (%r12), %rax
movq 0x50(%rax), %rax
movl $0x418, 0xc(%rax)       # imm = 0x418
movq %r14, %rdi
callq 0xed08
leaq 0x1102f(%rip), %rdi     # 0x170a4
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r12
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %rbp
movq %rax, %rdi
callq 0x147fb
movq %rax, %r13
leaq 0x18827(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0x611a
leaq 0x1824b(%rip), %rax     # 0x1e320
movq (%rax), %rax
movq 0x50(%rax), %rax
movq %r15, 0x10(%rax)
movq %r15, %rdi
callq 0x15df4
testl %eax, %eax
je 0x611a
leaq 0x1822d(%rip), %rax     # 0x1e320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl $0x41c, 0xc(%rax)       # imm = 0x41C
movq %r13, %rdi
callq 0xed08
leaq 0x10fdc(%rip), %rdi     # 0x170ec
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
movq %rbp, %rdi
callq 0x14906
movq %rax, %r15
movq %r12, %rdi
movq %r14, %rsi
callq 0x14764
leaq -0x364(%rip), %rsi      # 0x5dd3
movq %rbx, %rdi
movq %rax, %rdx
callq 0xd9b7
movq %rax, %r14
movq %r13, %rdi
movq %r15, %rsi
callq 0x14764
movq %r14, %rdi
movq %rax, %rsi
callq 0x14764
movq 0x1821e(%rip), %rsi     # 0x1e380
movq %rbx, %rdi
movq %rax, %rdx
callq 0xda94
movq %rsp, %rdi
movl $0x422, 0xc(%rdi)       # imm = 0x422
callq 0x167f2
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: join_value_beh
BEH_DECL(join_value_beh)
{
	CONS* to;
	CONS* value;
	CONS* list;

	DBUG_ENTER("join_value_beh");
	to = pr_head(MINE);
	list = pr_tail(MINE);
	if (is_pair(WHAT) && (pr_head(WHAT) == to)) {
		DBUG_PRINT("", ("list = %s", cons_to_str(list)));
		value = pr_tail(WHAT);
		DBUG_PRINT("", ("value = %s", cons_to_str(value)));
		SEND(to, mk_list(value, list));
	} else {
		DBUG_PRINT("", ("Ignored! %s", cons_to_str(WHAT)));
		abort();
	}
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x10df4(%rip), %rax     # 0x172d6
leaq 0x10(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x17e2f(%rip), %r13     # 0x1e320
movq (%r13), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x462, 0xc(%rdi)       # imm = 0x462
leaq 0x134af(%rip), %r14     # 0x199bc
movq %r14, 0x10(%rdi)
leaq 0x17c28(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r15
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %r12
movq 0x30(%rbx), %rdi
callq 0x14906
testq %rax, %rax
je 0x669b
movq 0x30(%rbx), %rdi
callq 0x14906
testb $0x3, %al
jne 0x669b
movq 0x30(%rbx), %rdi
callq 0x14906
cmpq 0x17a30(%rip), %rax     # 0x1dfc0
je 0x669b
movq 0x30(%rbx), %rdi
callq 0x14906
movq %rax, %rdi
callq 0x147fb
cmpq %r15, %rax
jne 0x669b
movq %r15, 0x8(%rsp)
leaq 0x18334(%rip), %rbp     # 0x1e8f0
cmpl $0x0, (%rbp)
je 0x6602
movq (%r13), %rax
movq 0x50(%rax), %rax
movq %r14, 0x10(%rax)
movq %r14, %rdi
callq 0x15df4
testl %eax, %eax
je 0x6602
movq (%r13), %rax
movq 0x50(%rax), %rax
movl $0x466, 0xc(%rax)       # imm = 0x466
movq %r12, %rdi
callq 0xed08
leaq 0x10cb8(%rip), %rdi     # 0x172b0
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
movq %r14, %r15
movq %r13, %r14
movq 0x30(%rbx), %rdi
callq 0x14906
movq %rax, %rdi
callq 0x14906
movq %rax, %r13
cmpl $0x0, (%rbp)
je 0x6660
movq (%r14), %rax
movq 0x50(%rax), %rax
movq %r15, 0x10(%rax)
movq %r15, %rdi
callq 0x15df4
testl %eax, %eax
je 0x6660
movq (%r14), %rax
movq 0x50(%rax), %rax
movl $0x468, 0xc(%rax)       # imm = 0x468
movq %r13, %rdi
callq 0xed08
leaq 0x10a4e(%rip), %rdi     # 0x170a4
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
movq %r13, %rdi
movq %r12, %rsi
callq 0x14764
movq %rbx, %rdi
movq 0x8(%rsp), %rsi
movq %rax, %rdx
callq 0xda94
leaq 0x10(%rsp), %rdi
movl $0x46e, 0xc(%rdi)       # imm = 0x46E
callq 0x167f2
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x1824e(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0x66f0
movq (%r13), %rax
movq 0x50(%rax), %rax
movq %r14, 0x10(%rax)
movq %r14, %rdi
callq 0x15df4
testl %eax, %eax
je 0x66f0
movq (%r13), %rax
movq 0x50(%rax), %rax
movl $0x46b, 0xc(%rax)       # imm = 0x46B
movq 0x30(%rbx), %rdi
callq 0x14906
movq %rax, %rdi
callq 0xed08
leaq 0x1097a(%rip), %rdi     # 0x17060
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
callq 0x2050
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: next_seq_beh
BEH_DECL(next_seq_beh)
{
	CONS* value = WHAT;
	CONS* eval = pr_head(MINE);
	CONS* msg = pr_tail(MINE);

	DBUG_ENTER("next_seq_beh");
	DBUG_PRINT("", ("value = %s", cons_to_str(value)));
	SEND(eval, msg);
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x14906
movq %rax, %r14
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r15
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %r12
leaq 0x105eb(%rip), %rax     # 0x17303
movq %rsp, %rdi
movq %rax, (%rdi)
leaq 0x175fb(%rip), %rbp     # 0x1e320
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x4d0, 0xc(%rdi)       # imm = 0x4D0
leaq 0x12c7b(%rip), %r13     # 0x199bc
movq %r13, 0x10(%rdi)
leaq 0x173f4(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
leaq 0x17b90(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0x6da5
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r13, 0x10(%rax)
movq %r13, %rdi
callq 0x15df4
testl %eax, %eax
je 0x6da5
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x4d1, 0xc(%rax)       # imm = 0x4D1
movq %r14, %rdi
callq 0xed08
leaq 0x10309(%rip), %rdi     # 0x170a4
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
movq %rbx, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0xda94
movq %rsp, %rdi
movl $0x4d3, 0xc(%rdi)       # imm = 0x4D3
callq 0x167f2
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: next_and_beh
BEH_DECL(next_and_beh)
{
	CONS* value = WHAT;
	CONS* eval = pr_head(MINE);
	CONS* msg = pr_tail(MINE);

	DBUG_ENTER("next_and_beh");
	DBUG_PRINT("", ("value = %s", cons_to_str(value)));
	if (value == FALSE_SYMBOL) {
		SEND(pr_head(msg), value);
	} else {
		SEND(eval, msg);
	}
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x14906
movq %rax, %r14
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r15
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %r12
leaq 0x10197(%rip), %rax     # 0x1731d
movq %rsp, %rdi
movq %rax, (%rdi)
leaq 0x1718d(%rip), %rbp     # 0x1e320
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x524, 0xc(%rdi)       # imm = 0x524
leaq 0x1280d(%rip), %r13     # 0x199bc
movq %r13, 0x10(%rdi)
leaq 0x16f86(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
leaq 0x17722(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0x7213
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r13, 0x10(%rax)
movq %r13, %rdi
callq 0x15df4
testl %eax, %eax
je 0x7213
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x525, 0xc(%rax)       # imm = 0x525
movq %r14, %rdi
callq 0xed08
leaq 0xfe9b(%rip), %rdi      # 0x170a4
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
xorl %edi, %edi
callq 0x38f6
cmpq %rax, %r14
je 0x722a
movq %rbx, %rdi
movq %r15, %rsi
movq %r12, %rdx
jmp 0x723b
movq %r12, %rdi
callq 0x147fb
movq %rbx, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0xda94
movq %rsp, %rdi
movl $0x52b, 0xc(%rdi)       # imm = 0x52B
callq 0x167f2
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: apply_cond_beh
BEH_DECL(apply_cond_beh)
{
	CONS* f = pr_head(MINE);
	CONS* t = pr_tail(MINE);

	DBUG_ENTER("apply_cond_beh");
	if (WHAT == FALSE_SYMBOL) {
		DBUG_PRINT("", ("false"));
		SEND(pr_head(f), pr_tail(f));
	} else {
		DBUG_PRINT("", ("true"));
		SEND(eval_seq__actor, t);
	}
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r14
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %r15
leaq 0xf89a(%rip), %rax      # 0x17353
movq %rsp, %rdi
movq %rax, (%rdi)
leaq 0x1685a(%rip), %rbp     # 0x1e320
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x5dd, 0xc(%rdi)       # imm = 0x5DD
leaq 0x11eda(%rip), %r12     # 0x199bc
movq %r12, 0x10(%rdi)
leaq 0x16653(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
movq 0x30(%rbx), %rdi
callq 0x14906
movq %rax, %r13
xorl %edi, %edi
callq 0x38f6
leaq 0x16ddc(%rip), %rcx     # 0x1e8f0
movl (%rcx), %ecx
cmpq %rax, %r13
je 0x7b63
testl %ecx, %ecx
je 0x7b54
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r12, 0x10(%rax)
movq %r12, %rdi
callq 0x15df4
testl %eax, %eax
je 0x7b54
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x5e2, 0xc(%rax)       # imm = 0x5E2
leaq 0xf81b(%rip), %rdi      # 0x17368
xorl %eax, %eax
callq 0x166f0
movq 0x1680d(%rip), %rsi     # 0x1e368
movq %rbx, %rdi
movq %r15, %rdx
jmp 0x7bb8
testl %ecx, %ecx
je 0x7b9c
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r12, 0x10(%rax)
movq %r12, %rdi
callq 0x15df4
testl %eax, %eax
je 0x7b9c
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x5df, 0xc(%rax)       # imm = 0x5DF
leaq 0xf7cd(%rip), %rdi      # 0x17362
xorl %eax, %eax
callq 0x166f0
movq %r14, %rdi
callq 0x147fb
movq %rax, %r15
movq %r14, %rdi
callq 0x14906
movq %rbx, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0xda94
movq %rsp, %rdi
movl $0x5e5, 0xc(%rdi)       # imm = 0x5E5
callq 0x167f2
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: apply_cont_beh
BEH_DECL(apply_cont_beh)
{
	CONS* args = WHAT;
	CONS* to = pr_head(MINE);
	CONS* env = pr_tail(MINE);

	DBUG_ENTER("apply_cont_beh");
	DBUG_PRINT("", ("args = %s", cons_to_str(args)));
	if (have_n_args(1, args)) {
		SEND(to, lst_first(args));
	} else {
		DBUG_PRINT("", ("error"));
		FAIL(env, mk_list(ATOM("one-arg-required"), args));
	}
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x14906
movq %rax, %r15
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r12
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, 0x8(%rsp)
leaq 0xcc93(%rip), %rax      # 0x1750c
leaq 0x10(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x13a98(%rip), %rbp     # 0x1e320
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x8c7, 0xc(%rdi)       # imm = 0x8C7
leaq 0xf118(%rip), %r13      # 0x199bc
movq %r13, 0x10(%rdi)
leaq 0x13891(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
leaq 0x1402d(%rip), %r14     # 0x1e8f0
cmpl $0x0, (%r14)
je 0xa909
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r13, 0x10(%rax)
movq %r13, %rdi
callq 0x15df4
testl %eax, %eax
je 0xa909
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x8c8, 0xc(%rax)       # imm = 0x8C8
movq %r15, %rdi
callq 0xed08
leaq 0xc81f(%rip), %rdi      # 0x1711e
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
pushq $0x1
popq %rdi
movq %r15, %rsi
callq 0x4beb
testq %rax, %rax
je 0xa92c
movq %r15, %rdi
callq 0x147fb
movq %rbx, %rdi
movq %r12, %rsi
jmp 0xa9e2
cmpl $0x0, (%r14)
je 0xa967
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r13, 0x10(%rax)
movq %r13, %rdi
callq 0x15df4
testl %eax, %eax
je 0xa967
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x8cc, 0xc(%rax)       # imm = 0x8CC
leaq 0xc8cd(%rip), %rdi      # 0x1722d
xorl %eax, %eax
callq 0x166f0
leaq 0xcbad(%rip), %rdi      # 0x1751b
callq 0x11f1f
movq %rax, %rdi
movq %r15, %rsi
callq 0x14764
leaq -0x82ad(%rip), %rsi     # 0x26d8
movq %rbx, %rdi
movq %rax, %rdx
callq 0xd9b7
movq %rax, %r15
leaq 0xc6f0(%rip), %rdi      # 0x1708a
callq 0x11f1f
movq %rax, %r12
callq 0xccde
leaq 0x138e2(%rip), %rsi     # 0x1e290
movq %rax, %rdi
callq 0x14764
movq %r12, %rdi
movq %rax, %rsi
callq 0x14764
movq %rax, %rdi
movq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x14764
movq %r15, %rdi
movq %rax, %rsi
callq 0x14764
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xda94
leaq 0x10(%rsp), %rdi
movl $0x8cf, 0xc(%rdi)       # imm = 0x8CF
callq 0x167f2
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: apply_fail_beh
BEH_DECL(apply_fail_beh)
{
	CONS* expr = pr_head(MINE);
	CONS* env = pr_tail(MINE);
	CONS* fail = WHAT;
	CONS* state;
	CONS* msg;
	CONS* a;

	DBUG_ENTER("apply_fail_beh");
	assert(actorp(fail));
	DBUG_PRINT("", ("expr = %s", cons_to_str(expr)));
	a = ACTOR(abort_beh, NIL);
	a = ACTOR(fail_beh, a);
	state = mk_pair(UNDEFINED, a);
	state = mk_pair(env, state);
	env = ACTOR(binding_beh, state);
	msg = mk_pair(expr, env);
	msg = mk_pair(fail, msg);
	SEND(eval_list__actor, msg);
	DBUG_RETURN;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x30(%rdi), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x147fb
movq %rax, %r14
movq 0x30(%rbx), %rdi
callq 0x147fb
movq %rax, %rdi
callq 0xcd5b
movq %rax, %rdi
callq 0x14906
movq %rax, %r12
movq 0x30(%rbx), %rdi
callq 0x14906
movq %rax, %r15
leaq 0xc591(%rip), %rax      # 0x1754f
movq %rsp, %rdi
movq %rax, (%rdi)
leaq 0x13355(%rip), %rbp     # 0x1e320
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0x944, 0xc(%rdi)       # imm = 0x944
leaq 0xe9d5(%rip), %r13      # 0x199bc
movq %r13, 0x10(%rdi)
leaq 0x1314e(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
movl %r15d, %eax
andl $0x3, %eax
cmpl $0x1, %eax
jne 0xb0f8
leaq 0x138db(%rip), %rax     # 0x1e8f0
cmpl $0x0, (%rax)
je 0xb05a
movq (%rbp), %rax
movq 0x50(%rax), %rax
movq %r13, 0x10(%rax)
movq %r13, %rdi
callq 0x15df4
testl %eax, %eax
je 0xb05a
movq (%rbp), %rax
movq 0x50(%rax), %rax
movl $0x946, 0xc(%rax)       # imm = 0x946
movq %r14, %rdi
callq 0xed08
leaq 0xc09c(%rip), %rdi      # 0x170ec
movq %rax, %rsi
xorl %eax, %eax
callq 0x166f0
leaq -0x8d05(%rip), %rsi     # 0x235c
leaq 0x13228(%rip), %rdx     # 0x1e290
movq %rbx, %rdi
callq 0xd9b7
leaq -0x1cd(%rip), %rsi      # 0xaeaa
movq %rbx, %rdi
movq %rax, %rdx
callq 0xd9b7
movq %rax, %r13
callq 0xccde
movq %rax, %rdi
movq %r13, %rsi
callq 0x14764
movq %r12, %rdi
movq %rax, %rsi
callq 0x14764
leaq -0x8669(%rip), %rsi     # 0x2a3e
movq %rbx, %rdi
movq %rax, %rdx
callq 0xd9b7
movq %r14, %rdi
movq %rax, %rsi
callq 0x14764
movq %r15, %rdi
movq %rax, %rsi
callq 0x14764
movq 0x132b1(%rip), %rsi     # 0x1e380
movq %rbx, %rdi
movq %rax, %rdx
callq 0xda94
movq %rsp, %rdi
movl $0x94f, 0xc(%rdi)       # imm = 0x94F
callq 0x167f2
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xc45f(%rip), %rdi      # 0x1755e
leaq 0xc2b5(%rip), %rsi      # 0x173bb
leaq 0xc45e(%rip), %rcx      # 0x1756b
movl $0x945, %edx            # imm = 0x945
callq 0x2100
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: assert_reduce
static void
assert_reduce(CONFIG* cfg, char* expr, char* value)
{
	CONS* expect;
	CONS* state;
	CONS* cont;
	
	expect = str_to_cons(value);
	state = map_put(NIL, ATOM("expect"), expect);
	cont = CFG_ACTOR(cfg, assert_msg, state);
	if (!expect || !reduce_line(cfg, expr, cont)) {
		fprintf(stderr, "assert_reduce: FAILED! %s -> %s\n", expr, value);
		abort();
	}
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
movq %rdx, %rdi
callq 0x10502
movq %rax, %r12
leaq 0xb581(%rip), %rdi      # 0x17dd7
callq 0x11f1f
leaq 0x11a2e(%rip), %rdi     # 0x1e290
movq %rax, %rsi
movq %r12, %rdx
callq 0x14df9
leaq 0x6bc(%rip), %rsi       # 0xcf30
movq %r15, %rdi
movq %rax, %rdx
callq 0xd9b7
testq %r12, %r12
je 0xc8a3
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xb33e
testq %rax, %rax
je 0xc8a3
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq 0x1174e(%rip), %rax     # 0x1dff8
movq (%rax), %rdi
leaq 0xb52a(%rip), %rsi      # 0x17dde
movq %r14, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x2170
callq 0x2050
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: read_reduce_print
static void
read_reduce_print(CONFIG* cfg, FILE* in, CONS* out)
{
	char buf[1024];
	
	DBUG_ENTER("read_reduce_print");
	while (fgets(buf, sizeof(buf), in)) {
		if (!reduce_line(cfg, buf, out)) {
			break;
		}
	}
	DBUG_RETURN;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x438, %rsp            # imm = 0x438
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
leaq 0xb1b0(%rip), %rax      # 0x17dff
leaq 0x8(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x116c2(%rip), %rax     # 0x1e320
movq (%rax), %rax
movq 0x50(%rax), %rax
movl 0x8(%rax), %ecx
movl %ecx, 0x8(%rdi)
movl $0xa10, 0xc(%rdi)       # imm = 0xA10
leaq 0xcd43(%rip), %rcx      # 0x199bc
movq %rcx, 0x10(%rdi)
leaq 0x114bc(%rip), %rcx     # 0x1e140
movq %rcx, 0x18(%rdi)
movq %rax, 0x20(%rdi)
callq 0x16679
leaq 0x30(%rsp), %r12
movq %r12, %rdi
movl $0x400, %esi            # imm = 0x400
movq %r14, %rdx
callq 0x2140
testq %rax, %rax
je 0xccbe
movq %r15, %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0xb33e
testq %rax, %rax
jne 0xcc96
leaq 0x8(%rsp), %rdi
movl $0xa16, 0xc(%rdi)       # imm = 0xA16
callq 0x167f2
addq $0x438, %rsp            # imm = 0x438
popq %rbx
popq %r12
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/dalnefre[P]kernel_abe/schemer.c
// Function: undefined
static CONS*
undefined()
{
	if (undefined__value == NULL) {
		undefined__value = ATOM("_");
		assert(undefined__value != NULL);
	}
	return undefined__value;
}

// Assembly:
pushq %rax
movq 0x116a2(%rip), %rax     # 0x1e388
testq %rax, %rax
jne 0xcd03
leaq 0xa932(%rip), %rdi      # 0x17624
callq 0x11f1f
movq %rax, 0x1168a(%rip)     # 0x1e388
testq %rax, %rax
je 0xcd05
popq %rcx
retq
leaq 0xaff3(%rip), %rdi      # 0x17cff
leaq 0xa6a8(%rip), %rsi      # 0x173bb
leaq 0xaffe(%rip), %rcx      # 0x17d18
pushq $0x36
popq %rdx
callq 0x2100
nop
// File: /workspace/github_c_makefile_star2_O2/vidarr[P]ringbuffer/test/ringbuffer_test.c
// Function: test_basic_ringbuffer_create
void test_basic_ringbuffer_create() {

    Ringbuffer* buffer = 0;

    buffer = ringbuffer_create(1, 0, 0);
    assert(buffer);
    assert(capacity_func == buffer->capacity);
    assert(add_func == buffer->add);
    assert(pop_func == buffer->pop);
    assert(free_func == buffer->free);

    buffer = buffer->free(buffer);

    fprintf(stdout, "Basic ringbuffer_create OK\n");

}

// Assembly:
pushq %rax
pushq $0x1
popq %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x116c
testq %rax, %rax
je 0x1382
leaq -0xfa(%rip), %rcx       # 0x122f
cmpq %rcx, (%rax)
jne 0x139b
leaq -0xf9(%rip), %rcx       # 0x123c
cmpq %rcx, 0x8(%rax)
jne 0x13b4
leaq -0xad(%rip), %rcx       # 0x1295
cmpq %rcx, 0x10(%rax)
jne 0x13cd
leaq -0x9d(%rip), %rcx       # 0x12b6
cmpq %rcx, 0x18(%rax)
jne 0x13e6
movq %rax, %rdi
callq 0x12b6
movq 0x3c74(%rip), %rax      # 0x4fe0
movq (%rax), %rcx
leaq 0x1d3c(%rip), %rdi      # 0x30b2
pushq $0x1b
popq %rsi
pushq $0x1
popq %rdx
popq %rax
jmp 0x1060
leaq 0x1c7b(%rip), %rdi      # 0x3004
leaq 0x1c7b(%rip), %rsi      # 0x300b
leaq 0x1c8b(%rip), %rcx      # 0x3022
pushq $0x31
jmp 0x13fd
leaq 0x1ca4(%rip), %rdi      # 0x3046
leaq 0x1c62(%rip), %rsi      # 0x300b
leaq 0x1c72(%rip), %rcx      # 0x3022
pushq $0x32
jmp 0x13fd
leaq 0x1cad(%rip), %rdi      # 0x3068
leaq 0x1c49(%rip), %rsi      # 0x300b
leaq 0x1c59(%rip), %rcx      # 0x3022
pushq $0x33
jmp 0x13fd
leaq 0x1cac(%rip), %rdi      # 0x3080
leaq 0x1c30(%rip), %rsi      # 0x300b
leaq 0x1c40(%rip), %rcx      # 0x3022
pushq $0x34
jmp 0x13fd
leaq 0x1cab(%rip), %rdi      # 0x3098
leaq 0x1c17(%rip), %rsi      # 0x300b
leaq 0x1c27(%rip), %rcx      # 0x3022
pushq $0x35
popq %rdx
callq 0x1040
// File: /workspace/github_c_makefile_star2_O2/vidarr[P]ringbuffer/test/ringbuffer_test.c
// Function: test_free
void test_free() {

    int a = 1;

    Ringbuffer* buffer = 0;
    assert(0 == free_func(0));

    buffer = ringbuffer_create(1, 0, 0);
    assert(0 == buffer->free(buffer));

    buffer = ringbuffer_create(21, 0, 0);
    assert(0 == buffer->free(buffer));

    buffer = ringbuffer_create(21, 0, 0);
    for(size_t i = 0; i < buffer->capacity(buffer); ++i) {
        buffer->add(buffer, &a);
    }
    assert(0 == buffer->free(buffer));

    size_t count = 0;
    buffer = ringbuffer_create(21, count_free, &count);
    for(size_t i = 0; i < buffer->capacity(buffer); ++i) {
        int* ip = calloc(1, sizeof(int));
        *ip = i;
        buffer->add(buffer, ip);
    }
    assert(0 == buffer->free(buffer));
    assert(21 == count);

    fprintf(stdout, "free() OK\n");

}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl $0x1, 0xc(%rsp)
pushq $0x1
popq %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x116c
movq %rax, %rdi
callq *0x18(%rax)
testq %rax, %rax
jne 0x1520
pushq $0x15
popq %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x116c
movq %rax, %rdi
callq *0x18(%rax)
testq %rax, %rax
jne 0x1539
xorl %r15d, %r15d
pushq $0x15
popq %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x116c
movq %rax, %rbx
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
callq *(%rbx)
movq %rbx, %rdi
cmpq %rax, %r15
jae 0x1489
movq %r14, %rsi
callq *0x8(%rbx)
incq %r15
jmp 0x1471
callq *0x18(%rbx)
testq %rax, %rax
jne 0x1552
leaq 0x10(%rsp), %rdx
andq $0x0, (%rdx)
leaq -0xa2(%rip), %rsi       # 0x1403
pushq $0x15
popq %rdi
callq 0x116c
movq %rax, %rbx
xorl %r12d, %r12d
pushq $0x1
popq %r14
pushq $0x4
popq %r15
movq %rbx, %rdi
callq *(%rbx)
cmpq %rax, %r12
jae 0x14e1
movq %r14, %rdi
movq %r15, %rsi
callq 0x1050
movl %r12d, (%rax)
movq %rbx, %rdi
movq %rax, %rsi
callq *0x8(%rbx)
incq %r12
jmp 0x14bb
movq %rbx, %rdi
callq *0x18(%rbx)
testq %rax, %rax
jne 0x156b
cmpq $0x15, 0x10(%rsp)
jne 0x1584
movq 0x3ae1(%rip), %rax      # 0x4fe0
movq (%rax), %rcx
leaq 0x1bfc(%rip), %rdi      # 0x3105
pushq $0xa
popq %rsi
pushq $0x1
popq %rdx
callq 0x1060
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
leaq 0x1bb8(%rip), %rdi      # 0x30df
leaq 0x1add(%rip), %rsi      # 0x300b
leaq 0x1b99(%rip), %rcx      # 0x30ce
pushq $0x52
jmp 0x159b
leaq 0x1b9f(%rip), %rdi      # 0x30df
leaq 0x1ac4(%rip), %rsi      # 0x300b
leaq 0x1b80(%rip), %rcx      # 0x30ce
pushq $0x55
jmp 0x159b
leaq 0x1b86(%rip), %rdi      # 0x30df
leaq 0x1aab(%rip), %rsi      # 0x300b
leaq 0x1b67(%rip), %rcx      # 0x30ce
pushq $0x5b
jmp 0x159b
leaq 0x1b6d(%rip), %rdi      # 0x30df
leaq 0x1a92(%rip), %rsi      # 0x300b
leaq 0x1b4e(%rip), %rcx      # 0x30ce
pushq $0x64
jmp 0x159b
leaq 0x1b6e(%rip), %rdi      # 0x30f9
leaq 0x1a79(%rip), %rsi      # 0x300b
leaq 0x1b35(%rip), %rcx      # 0x30ce
pushq $0x65
popq %rdx
callq 0x1040
// File: /workspace/github_c_makefile_star2_O2/vidarr[P]ringbuffer/test/ringbuffer_test.c
// Function: main
int main(int argc, char** argv) {

    test_ringbuffer_create();
    test_capacity();
    test_add();
    test_pop();
    test_basic_ringbuffer_create();
    test_free();

}

// Assembly:
pushq %rax
xorl %eax, %eax
callq 0x15cc
xorl %eax, %eax
callq 0x1647
xorl %eax, %eax
callq 0x16d5
xorl %eax, %eax
callq 0x1913
callq 0x1310
callq 0x1411
xorl %eax, %eax
popq %rcx
retq
// File: /workspace/github_c_makefile_star2_O2/Joy-Division[P]tools-zoe/pss-demux.c
// Function: writeFile
int writeFile( FILE *input, unsigned int length, FILE *output ) {
	unsigned char dataBuffer[1024];
	unsigned int bytesLeft = length;
	
	while(bytesLeft) {
		unsigned int wantedRead;
		if(bytesLeft >= sizeof(dataBuffer))
			wantedRead = sizeof(dataBuffer);
		else
			wantedRead = bytesLeft;
		unsigned int haveRead = fread(dataBuffer, 1, wantedRead, input);
		if(haveRead != wantedRead) {
			printf("haveRead != wantedRead: %d != %d\n", haveRead, wantedRead);
			perror("This broke");
			return 0;
		}

		unsigned int haveWrite = fwrite(dataBuffer, 1, haveRead, output);
		if(haveWrite != haveRead) {
			printf("haveWrite != haveRead: %d != %d\n", haveWrite, haveRead);
			return 0;
		}
		
		bytesLeft -= haveRead;
	}
	return 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x408, %rsp            # imm = 0x408
movq %rdx, %r15
movl %esi, %ebp
movq %rdi, %r12
movq %rsp, %r13
pushq $0x1
popq %rbx
testl %ebp, %ebp
je 0x1295
movl $0x400, %eax            # imm = 0x400
cmpl %eax, %ebp
movl $0x400, %r14d           # imm = 0x400
cmovbl %ebp, %r14d
movq %r13, %rdi
movq %rbx, %rsi
movq %r14, %rdx
movq %r12, %rcx
callq 0x1060
cmpl %eax, %r14d
jne 0x12ac
movl %eax, %edx
movq %r13, %rdi
movq %rbx, %rsi
movq %r15, %rcx
callq 0x1110
subl %r14d, %ebp
cmpl %eax, %r14d
je 0x123b
leaq 0xdc4(%rip), %rdi       # 0x2049
xorl %ebx, %ebx
movl %eax, %esi
movl %r14d, %edx
xorl %eax, %eax
callq 0x1090
jmp 0x1298
pushq $0x1
popq %rbx
movl %ebx, %eax
addq $0x408, %rsp            # imm = 0x408
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xd69(%rip), %rdi       # 0x201c
xorl %ebx, %ebx
movl %eax, %esi
movl %r14d, %edx
xorl %eax, %eax
callq 0x1090
leaq 0xd76(%rip), %rdi       # 0x203e
callq 0x10f0
jmp 0x1298
// File: /workspace/github_c_makefile_star2_O2/Joy-Division[P]tools-zoe/pss-demux.c
// Function: mpegDumpVideoStream
void mpegDumpVideoStream( FILE *f, unsigned int offset, FILE *o ) {
	fseek( f, offset, SEEK_SET );
	uint32_t streamSize, headSize;
	mpegPesHeader pesHead;
	mpegPrivate1ExtensionHead extHead;
	fread( &pesHead, sizeof(pesHead), 1, f );
	headSize = pesHead.size[0] << 8 | pesHead.size[1];
	fread( &extHead, sizeof(extHead), 1, f );
	fseek( f, extHead.size, SEEK_CUR );
	streamSize = headSize - 3 - extHead.size; // subtract 3 for extHead size that is included in pesHead but not extHead
	writeFile( f, streamSize, o );
	fseek( f, offset+headSize+6, SEEK_SET );
	return;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdx, %r15
movl %esi, %r14d
movq %rdi, %rbx
movl %esi, %esi
xorl %edx, %edx
callq 0x10d0
leaq 0x12(%rsp), %r12
pushq $0x6
popq %rsi
pushq $0x1
popq %r13
movq %r12, %rdi
movq %r13, %rdx
movq %rbx, %rcx
callq 0x1060
movzwl 0x4(%r12), %eax
rolw $0x8, %ax
movzwl %ax, %ebp
leaq 0xf(%rsp), %r12
pushq $0x3
popq %rsi
movq %r12, %rdi
movq %r13, %rdx
movq %rbx, %rcx
callq 0x1060
movzbl 0x2(%r12), %r12d
pushq $0x1
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x10d0
movl %ebp, %esi
subl %r12d, %esi
addl $-0x3, %esi
movq %rbx, %rdi
movq %r15, %rdx
callq 0x121c
leal (%r14,%rbp), %esi
addl $0x6, %esi
movq %rbx, %rdi
xorl %edx, %edx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x10d0
// File: /workspace/github_c_makefile_star2_O2/Joy-Division[P]tools-zoe/pss-demux.c
// Function: vagPrepareHeader
void vagPrepareHeader( vagHeader *header, uint32_t size, char *name ) {
	header->version[3] = 0x20;
	strncpy( header->name, name, 0x10 );
	header->size[0] = (size >> 24) & 0xFF; header->size[1] = (size >> 16) & 0xFF; header->size[2] = (size >> 8) & 0xFF; header->size[3] = size & 0xFF;
	header->samplerate[0] = 0; header->samplerate[1] = 0; header->samplerate[2] = audioSamplerate[2]; header->samplerate[3] = audioSamplerate[3];
	memset( header->reserved1, 0, 4 );
	memset( header->reserved2, 0, 12 );
	if( audioNumChannels == 1 ) strncpy( header->magic, "VAGp", 4 );
	else if( audioNumChannels == 2 ) strncpy( header->magic, "VAG2", 4 );
	return;
}

// Assembly:
pushq %rbp
pushq %rbx
pushq %rax
movl %esi, %ebp
movq %rdi, %rbx
movb $0x20, 0x7(%rdi)
addq $0x20, %rdi
pushq $0x10
popq %rax
movq %rdx, %rsi
movq %rax, %rdx
callq 0x1040
movl %ebp, %ecx
movl %ebp, %eax
shrl $0x18, %eax
movb %al, 0xc(%rbx)
movl %ebp, %eax
shrl $0x10, %eax
movb %al, 0xd(%rbx)
movb %ch, 0xe(%rbx)
movb %cl, 0xf(%rbx)
andw $0x0, 0x10(%rbx)
movb 0x2ac6(%rip), %al       # 0x40b3
movb %al, 0x12(%rbx)
movb 0x2abe(%rip), %al       # 0x40b4
movb %al, 0x13(%rbx)
andl $0x0, 0x8(%rbx)
andl $0x0, 0x1c(%rbx)
andq $0x0, 0x14(%rbx)
movzbl 0x2aa8(%rip), %eax      # 0x40b5
cmpl $0x1, %eax
je 0x161e
cmpl $0x2, %eax
jne 0x1625
movl $0x32474156, %eax       # imm = 0x32474156
jmp 0x1623
movl $0x70474156, %eax       # imm = 0x70474156
movl %eax, (%rbx)
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/Joy-Division[P]tools-zoe/pss-demux.c
// Function: vagWriteHeader
void vagWriteHeader( vagHeader header, FILE *o ) {
	fwrite( header.magic, 4, 1, o );
	fwrite( header.version, 4, 1, o );
	fwrite( header.reserved1, 4, 1, o );
	fwrite( header.size, 4, 1, o );
	fwrite( header.samplerate, 4, 1, o );
	fwrite( header.reserved2, 12, 1, o );
	fwrite( header.name, 0x10, 1, o );
	return;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
leaq 0x20(%rsp), %rdi
pushq $0x4
popq %r15
pushq $0x1
popq %r14
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x24(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x28(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x2c(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x30(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x34(%rsp), %rdi
pushq $0xc
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
leaq 0x40(%rsp), %rdi
pushq $0x10
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1110
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/mjosaarinen[P]brutus/crypto_aead/ascon128v11/ref/ascon.c
// Function: load64
void load64(u64* x, u8* S) {
  int i;
  *x = 0;
  for (i = 0; i < 8; ++i)
    *x |= ((u64) S[i]) << (56 - i * 8);
}

// Assembly:
andq $0x0, (%rdi)
pushq $0x38
popq %rax
xorl %ecx, %ecx
cmpq $-0x8, %rax
je 0x1194
movzbl (%rsi), %edx
shlxq %rax, %rdx, %rdx
orq %rdx, %rcx
movq %rcx, (%rdi)
addq $-0x8, %rax
incq %rsi
jmp 0x1177
retq
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/filter/FIR_filter.cpp
// Function: FIR_filter::proccess_byte(char)
bool FIR_filter::proccess_byte(char byte){

	filter_buffer.push_back(byte);

	if(filter_buffer.size() >= filter_coefficents.size()){

		float result = 0.0f;

		int n = filter_coefficents.size()-1;
		for(std::list<char>::iterator it = filter_buffer.begin(); it != filter_buffer.end(); it++){
			result += (*it)*filter_coefficents[n];
			n--;
		}

		output_buffer.push_back(result);

		filter_buffer.pop_front();

		return true;

	}

	return false;

}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %r14
leaq 0x3(%rsp), %rax
movb %sil, (%rax)
leaq 0x10(%rdi), %rbx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x40e6
movq 0x20(%r14), %r15
movq 0x28(%r14), %rax
movq 0x30(%r14), %r12
subq %rax, %r12
sarq $0x2, %r12
cmpq %r12, %r15
jb 0x316f
andl $0x0, 0x4(%rsp)
leal -0x1(%r12), %ecx
xorps %xmm0, %xmm0
movq %rbx, %rdx
movq (%rdx), %rdx
cmpq %rbx, %rdx
je 0x3156
movsbl 0x10(%rdx), %esi
cvtsi2ss %esi, %xmm1
movslq %ecx, %rcx
mulss (%rax,%rcx,4), %xmm1
addss %xmm1, %xmm0
movss %xmm0, 0x4(%rsp)
decl %ecx
jmp 0x3130
addq $0x40, %r14
leaq 0x4(%rsp), %rsi
movq %r14, %rdi
callq 0x40f2
movq %rbx, %rdi
callq 0x40fe
cmpq %r12, %r15
setae %al
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
nop
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/filter/FIR_filter.cpp
// Function: FIR_filter::set_up_lowpass(int, float)
void FIR_filter::set_up_lowpass(int sample_width, float frequency_cutoff){

	filter_width = sample_width;
	sample_width--;
	
	float ncof = (2*PI*frequency_cutoff)/sample_rate;
	
	for(int n = 0; n <= sample_width; n++){
		float hd = 0.0;
		if(n != sample_width/2.0){
			hd = sin(ncof*(n-(sample_width/2.0)))/(PI*(n-(sample_width/2.0)));
		} else {
			hd = ncof/PI;
		}
		filter_coefficents.push_back(hd);
	}

}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
movl %esi, 0x8(%rdi)
cvtss2sd %xmm0, %xmm0
mulsd 0x1f52(%rip), %xmm0     # 0x5110
leal -0x1(%rsi), %eax
cvtss2sd 0xc(%rdi), %xmm1
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
cvtsi2sd %eax, %xmm1
mulsd 0x1f3e(%rip), %xmm1     # 0x5118
cvtss2sd %xmm0, %xmm0
movsd %xmm0, 0x18(%rsp)
divsd 0x1f34(%rip), %xmm0     # 0x5120
movsd %xmm0, 0x20(%rsp)
addq $0x28, %rbx
xorl %ebp, %ebp
testl %esi, %esi
cmovgl %esi, %ebp
xorpd %xmm0, %xmm0
leaq 0x4(%rsp), %r14
movsd %xmm1, 0x8(%rsp)
subl $0x1, %ebp
jb 0x327f
ucomisd %xmm0, %xmm1
movsd %xmm0, 0x10(%rsp)
movsd 0x20(%rsp), %xmm0
jne 0x3225
jnp 0x3254
movsd 0x10(%rsp), %xmm0
subsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x28(%rsp)
mulsd 0x18(%rsp), %xmm0
callq 0x2080
movsd 0x28(%rsp), %xmm1
mulsd 0x1ed0(%rip), %xmm1     # 0x5120
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x4(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x410e
movsd 0x10(%rsp), %xmm0
addsd 0x1eb1(%rip), %xmm0     # 0x5128
movsd 0x8(%rsp), %xmm1
jmp 0x320c
addq $0x30, %rsp
popq %rbx
popq %r14
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/filter/FIR_filter.cpp
// Function: FIR_filter::set_up_highpass(int, float)
void FIR_filter::set_up_highpass(int sample_width, float frequency_cutoff){

	filter_width = sample_width;
	sample_width--;
	
	float ncof = (2*PI*frequency_cutoff)/sample_rate;
	
	for(int n = 0; n <= sample_width; n++){
		float hd = 0.0;
		if(n != sample_width/2.0){
			hd = -1.0f*sin(ncof*(n-(sample_width/2.0)))/(PI*(n-(sample_width/2.0)));
		} else {
			hd = 1.0f-(ncof/PI);
		}
		filter_coefficents.push_back(hd);
	}

}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
movl %esi, 0x8(%rdi)
cvtss2sd %xmm0, %xmm0
mulsd 0x1e6e(%rip), %xmm0     # 0x5110
cvtss2sd 0xc(%rdi), %xmm1
leal -0x1(%rsi), %eax
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
cvtsi2sd %eax, %xmm1
mulsd 0x1e5a(%rip), %xmm1     # 0x5118
cvtss2sd %xmm0, %xmm0
movsd %xmm0, 0x18(%rsp)
divsd 0x1e60(%rip), %xmm0     # 0x5130
addsd 0x1e50(%rip), %xmm0     # 0x5128
movsd %xmm0, 0x20(%rsp)
addq $0x28, %rbx
xorl %ebp, %ebp
testl %esi, %esi
cmovgl %esi, %ebp
xorpd %xmm0, %xmm0
leaq 0x4(%rsp), %r14
movsd %xmm1, 0x8(%rsp)
subl $0x1, %ebp
jb 0x336b
ucomisd %xmm0, %xmm1
movsd %xmm0, 0x10(%rsp)
movsd 0x20(%rsp), %xmm0
jne 0x3311
jnp 0x3340
movsd 0x10(%rsp), %xmm0
subsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x28(%rsp)
mulsd 0x18(%rsp), %xmm0
callq 0x2080
movsd 0x28(%rsp), %xmm1
mulsd 0x1df4(%rip), %xmm1     # 0x5130
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x4(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x410e
movsd 0x10(%rsp), %xmm0
addsd 0x1dc5(%rip), %xmm0     # 0x5128
movsd 0x8(%rsp), %xmm1
jmp 0x32f8
addq $0x30, %rsp
popq %rbx
popq %r14
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/filter/FIR_filter.cpp
// Function: FIR_filter::set_up_bandpass(int, float, float)
void FIR_filter::set_up_bandpass(int sample_width, float frequency_cutoff_low, float frequency_cutoff_high){

	filter_width = sample_width;
	sample_width--;

	float ncofh = (2*PI*frequency_cutoff_high)/sample_rate;
	float ncofl = (2*PI*frequency_cutoff_low)/sample_rate;
	
	for(int n = 0; n <= sample_width; n++){
		float hd = 0;
		if(n != sample_width/2.0){
			float p1 = sin((ncofh)*(n-sample_width/2.0))/(PI*(n-sample_width/2.0));
			float p2 = sin((ncofl)*(n-sample_width/2.0))/(PI*(n-sample_width/2.0));
			hd = p1 - p2;
		} else {
			hd = (ncofh-ncofl)/PI;
		}
		filter_coefficents.push_back(hd);
	}

}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x50, %rsp
movq %rdi, %rbx
movl %esi, 0x8(%rdi)
cvtss2sd %xmm1, %xmm1
movsd 0x1d82(%rip), %xmm2     # 0x5110
cvtss2sd 0xc(%rdi), %xmm3
mulsd %xmm2, %xmm1
divsd %xmm3, %xmm1
cvtsd2ss %xmm1, %xmm1
leal -0x1(%rsi), %eax
cvtss2sd %xmm0, %xmm0
mulsd %xmm2, %xmm0
divsd %xmm3, %xmm0
cvtsd2ss %xmm0, %xmm0
cvtsi2sd %eax, %xmm2
mulsd 0x1d5a(%rip), %xmm2     # 0x5118
cvtss2sd %xmm1, %xmm3
movsd %xmm3, 0x20(%rsp)
subss %xmm0, %xmm1
cvtss2sd %xmm1, %xmm1
divsd 0x1d48(%rip), %xmm1     # 0x5120
cvtsd2ss %xmm1, %xmm1
movss %xmm1, (%rsp)
cvtss2sd %xmm0, %xmm0
movsd %xmm0, 0x18(%rsp)
addq $0x28, %rbx
xorl %ebp, %ebp
testl %esi, %esi
cmovgl %esi, %ebp
xorps %xmm0, %xmm0
leaq 0x4(%rsp), %r14
movsd %xmm2, 0x8(%rsp)
subl $0x1, %ebp
jb 0x34bc
ucomisd %xmm0, %xmm2
movsd %xmm0, 0x10(%rsp)
movss (%rsp), %xmm0
jne 0x3420
jnp 0x3492
movsd 0x10(%rsp), %xmm0
subsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x28(%rsp)
mulsd 0x20(%rsp), %xmm0
callq 0x2080
movapd %xmm0, 0x40(%rsp)
movsd 0x28(%rsp), %xmm1
movapd %xmm1, %xmm0
mulsd 0x1ccb(%rip), %xmm0     # 0x5120
movapd %xmm0, 0x30(%rsp)
mulsd 0x18(%rsp), %xmm1
movapd %xmm1, %xmm0
callq 0x2080
movapd 0x40(%rsp), %xmm1
unpcklpd %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0]
movapd 0x30(%rsp), %xmm0
unpcklpd %xmm0, %xmm0            # xmm0 = xmm0[0,0]
divpd %xmm0, %xmm1
cvtpd2ps %xmm1, %xmm0
movapd %xmm0, %xmm1
shufps $0x55, %xmm0, %xmm1     # xmm1 = xmm1[1,1],xmm0[1,1]
subss %xmm1, %xmm0
movss %xmm0, 0x4(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x410e
movsd 0x10(%rsp), %xmm0
addsd 0x1c77(%rip), %xmm0     # 0x5128
movsd 0x8(%rsp), %xmm2
jmp 0x3404
addq $0x50, %rsp
popq %rbx
popq %r14
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/filter/FIR_filter.cpp
// Function: FIR_filter::set_up_bandreject(int, float, float)
void FIR_filter::set_up_bandreject(int sample_width, float frequency_cutoff_low, float frequency_cutoff_high){

	filter_width = sample_width;
	sample_width--;

	float ncofh = (2*PI*frequency_cutoff_high)/sample_rate;
	float ncofl = (2*PI*frequency_cutoff_low)/sample_rate;
	
	for(int n = 0; n <= sample_width; n++){
		float hd = 0;
		if(n != sample_width/2.0){
			float p1 = sin((ncofl)*(n-sample_width/2.0))/(PI*(n-sample_width/2.0));
			float p2 = sin((ncofh)*(n-sample_width/2.0))/(PI*(n-sample_width/2.0));
			hd = p1 - p2;
		} else {
			hd = 1.0f-(ncofl-ncofh)/PI;
		}
		filter_coefficents.push_back(hd);
	}

}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x50, %rsp
movq %rdi, %rbx
movl %esi, 0x8(%rdi)
leal -0x1(%rsi), %eax
cvtss2sd %xmm1, %xmm1
movsd 0x1c2d(%rip), %xmm2     # 0x5110
mulsd %xmm2, %xmm1
cvtss2sd 0xc(%rdi), %xmm3
divsd %xmm3, %xmm1
cvtsd2ss %xmm1, %xmm1
cvtss2sd %xmm0, %xmm0
mulsd %xmm2, %xmm0
divsd %xmm3, %xmm0
cvtsd2ss %xmm0, %xmm0
cvtsi2sd %eax, %xmm2
mulsd 0x1c08(%rip), %xmm2     # 0x5118
cvtss2sd %xmm0, %xmm3
movsd %xmm3, 0x20(%rsp)
subss %xmm1, %xmm0
cvtss2sd %xmm0, %xmm0
divsd 0x1c06(%rip), %xmm0     # 0x5130
addsd 0x1bf6(%rip), %xmm0     # 0x5128
cvtsd2ss %xmm0, %xmm0
movss %xmm0, (%rsp)
cvtss2sd %xmm1, %xmm0
movsd %xmm0, 0x18(%rsp)
addq $0x28, %rbx
xorl %ebp, %ebp
testl %esi, %esi
cmovgl %esi, %ebp
xorps %xmm0, %xmm0
leaq 0x4(%rsp), %r14
movsd %xmm2, 0x8(%rsp)
subl $0x1, %ebp
jb 0x3616
ucomisd %xmm0, %xmm2
movsd %xmm0, 0x10(%rsp)
movss (%rsp), %xmm0
jne 0x357a
jnp 0x35ec
movsd 0x10(%rsp), %xmm0
subsd 0x8(%rsp), %xmm0
movsd %xmm0, 0x28(%rsp)
mulsd 0x20(%rsp), %xmm0
callq 0x2080
movapd %xmm0, 0x40(%rsp)
movsd 0x28(%rsp), %xmm1
movapd %xmm1, %xmm0
mulsd 0x1b71(%rip), %xmm0     # 0x5120
movapd %xmm0, 0x30(%rsp)
mulsd 0x18(%rsp), %xmm1
movapd %xmm1, %xmm0
callq 0x2080
movapd 0x40(%rsp), %xmm1
unpcklpd %xmm0, %xmm1            # xmm1 = xmm1[0],xmm0[0]
movapd 0x30(%rsp), %xmm0
unpcklpd %xmm0, %xmm0            # xmm0 = xmm0[0,0]
divpd %xmm0, %xmm1
cvtpd2ps %xmm1, %xmm0
movapd %xmm0, %xmm1
shufps $0x55, %xmm0, %xmm1     # xmm1 = xmm1[1,1],xmm0[1,1]
subss %xmm1, %xmm0
movss %xmm0, 0x4(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x410e
movsd 0x10(%rsp), %xmm0
addsd 0x1b1d(%rip), %xmm0     # 0x5128
movsd 0x8(%rsp), %xmm2
jmp 0x355e
addq $0x50, %rsp
popq %rbx
popq %r14
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::readUInt16(std::istream&)
uint16_t util::readUInt16(std::istream &in){
	uint16_t tmp16int = 0;
	unsigned char tmp;
	for(int i = 0; i < 2; i++){
		in >> tmp;
		tmp16int += uint16_t(tmp * pow(0x100, i));
	}
	return tmp16int;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
xorl %r15d, %r15d
leaq 0xf(%rsp), %r14
xorl %ebp, %ebp
cmpl $0x10, %r15d
je 0x4595
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2250
movzbl 0xf(%rsp), %eax
cvtsi2sd %eax, %xmm0
movsd %xmm0, 0x10(%rsp)
cvtsi2sd %r15d, %xmm0
callq 0x21b0
mulsd 0x10(%rsp), %xmm0
cvttsd2si %xmm0, %eax
addl %eax, %ebp
addl $0x8, %r15d
jmp 0x4559
movl %ebp, %eax
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::readUInt32(std::istream&)
uint32_t util::readUInt32(std::istream &in){
        uint32_t tmp32int = 0;
        unsigned char tmp;
        for(int i = 0; i < 4; i++){
                in >> tmp;
                tmp32int += uint32_t(tmp * pow(0x100, i));
        }
	return tmp32int;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
xorl %r15d, %r15d
leaq 0xf(%rsp), %r14
xorl %ebp, %ebp
cmpl $0x20, %r15d
je 0x45f6
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2250
movzbl 0xf(%rsp), %eax
cvtsi2sd %eax, %xmm0
movsd %xmm0, 0x10(%rsp)
cvtsi2sd %r15d, %xmm0
callq 0x21b0
mulsd 0x10(%rsp), %xmm0
cvttsd2si %xmm0, %rax
addl %eax, %ebp
addl $0x8, %r15d
jmp 0x45b9
movl %ebp, %eax
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::writeUInt16(std::ostream&, unsigned short)
void util::writeUInt16(std::ostream &out, uint16_t wri){
	char *tmp = (char*) &wri;
	for(int i = 0; i < 2; i++){
		out.write((char*) tmp, 1);
		tmp++;
	}
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
movw %si, 0xe(%rsp)
xorl %r15d, %r15d
pushq $0x1
popq %r14
cmpl $0x2, %r15d
je 0x465e
leaq (%rsp,%r15), %rsi
addq $0xe, %rsi
movq %rbx, %rdi
movq %r14, %rdx
callq 0x2240
incq %r15
jmp 0x4640
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::writeUInt32(std::ostream&, unsigned int)
void util::writeUInt32(std::ostream &out, uint32_t wri){
	char *tmp = (char*) &wri;
	for(int i = 0; i < 4; i++){
		out.write(tmp, 1);
		tmp++;
	}
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
movq %rdi, %rbx
movl %esi, 0xc(%rsp)
xorl %r15d, %r15d
pushq $0x1
popq %r14
cmpl $0x4, %r15d
je 0x469d
leaq (%rsp,%r15), %rsi
addq $0xc, %rsi
movq %rbx, %rdi
movq %r14, %rdx
callq 0x2240
incq %r15
jmp 0x467f
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq
nop
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::readInArguments(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void util::readInArguments(std::string args){
	std::stringstream ss(args);

	char buffer[100];
	while(!ss.eof()){
		ss.getline(buffer, 100, ' ');
		if(buffer[0] == '-'){
			std::string key(buffer);
			ss.getline(buffer, 100, ' ');
			std::string arg(buffer);
			commandlineargs.insert(std::make_pair(key, arg));
		}
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x278, %rsp            # imm = 0x278
movq %rdi, %rsi
leaq 0xf0(%rsp), %rdi
pushq $0x18
popq %rdx
callq 0x22d0
leaq 0x80(%rsp), %r14
pushq $0x64
popq %r15
pushq $0x20
popq %rbp
leaq 0x20(%rsp), %r12
leaq 0x40(%rsp), %r13
movq %rsp, %rbx
movq 0xf0(%rsp), %rax
movq -0x18(%rax), %rax
testb $0x2, 0x110(%rsp,%rax)
jne 0x4840
leaq 0xf0(%rsp), %rdi
movq %r14, %rsi
movq %r15, %rdx
movl %ebp, %ecx
callq 0x2360
cmpb $0x2d, 0x80(%rsp)
jne 0x479c
movq %r12, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x2ee0
leaq 0xf0(%rsp), %rdi
movq %r14, %rsi
movq %r15, %rdx
movl %ebp, %ecx
callq 0x2360
movq %rbx, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x2ee0
movq %r13, %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x4972
leaq 0x39cd(%rip), %rdi      # 0x81e8
movq %r13, %rsi
callq 0x4aac
movq %r13, %rdi
callq 0x4956
movq %rbx, %rdi
callq 0x20f0
movq %r12, %rdi
callq 0x20f0
jmp 0x479c
leaq 0xf0(%rsp), %rdi
callq 0x2160
addq $0x278, %rsp            # imm = 0x278
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x40(%rsp), %rdi
callq 0x4956
jmp 0x4871
movq %rax, %rbx
movq %rsp, %rdi
callq 0x20f0
jmp 0x4880
jmp 0x487d
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x20f0
jmp 0x4891
jmp 0x488e
movq %rax, %rbx
leaq 0xf0(%rsp), %rdi
callq 0x2160
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_c_makefile_star2_O2/DrYerzinia[P]C_DigiMode/src/util/Util.cpp
// Function: util::writeDebugStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void util::writeDebugStream(std::string msg){
	if(debugfstream.is_open()){
		debugfstream << msg;
		debugfstream.flush();
	} else {
		debugfstream.open("debug");
		writeDebugStream(msg);
	}
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
leaq 0x39d1(%rip), %rdi      # 0x8288
callq 0x2090
testb %al, %al
je 0x48e1
leaq 0x3951(%rip), %r14      # 0x8218
movq %r14, %rdi
movq %rbx, %rsi
callq 0x21a0
movq %r14, %rdi
addq $0x28, %rsp
popq %rbx
popq %r14
jmp 0x2130
leaq 0x3930(%rip), %rdi      # 0x8218
leaq 0x870(%rip), %rsi       # 0x515f
pushq $0x10
popq %rdx
callq 0x2040
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x2270
movq %r14, %rdi
callq 0x48a6
leaq 0x8(%rsp), %rdi
callq 0x20f0
addq $0x28, %rsp
popq %rbx
popq %r14
retq
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x20f0
movq %rbx, %rdi
callq 0x2340