// File: /workspace/github_c_makefile_star2_O0/aquaxis[P]synverll/src/parser_ir_proc.c
// Function: output_proc_tree
int output_proc_tree(FILE *fp)
{
	PROC_TREE *now_proc_tree;
	PROC_TREE *next_proc_tree;

	printf(" -> Output Verilog HDL: module = %s\n", sep_p(module_name));

	// モジュールヘッダの生成
	fprintf(fp,"/*\n");
	fprintf(fp," * Copyright (C)2005-2015 AQUAXIS TECHNOLOGY.\n");
	fprintf(fp," *  Don't remove this header.\n");
	fprintf(fp," * When you use this source, there is a need to inherit this header.\n");
	fprintf(fp," *\n");
	fprintf(fp," * This software is released under the MIT License.\n");
	fprintf(fp," * http://opensource.org/licenses/mit-license.php\n");
	fprintf(fp," *\n");
	fprintf(fp," * For further information please contact.\n");
	fprintf(fp," *  URI:    http://www.aquaxis.com/\n");
	fprintf(fp," *  E-Mail: info(at)aquaxis.com\n");
	fprintf(fp," */\n");

	fprintf(fp,"module %s(\n", sep_p(module_name));
	fprintf(fp,"\tinput __func_clock,\n");
	fprintf(fp,"\tinput __func_reset,\n");
	fprintf(fp,"\tinput __func_start,\n");
	fprintf(fp,"\toutput reg __func_done,\n");
	fprintf(fp,"\toutput reg __func_ready,\n\n");

	if(is_module_gm_if){
		fprintf(fp,"\t// Global Memory\n");
		fprintf(fp,"\tinput [31:0] __gm_base,\n");
		fprintf(fp,"\toutput reg __gm_req,\n");
		fprintf(fp,"\toutput reg __gm_rnw,\n");
		fprintf(fp,"\tinput __gm_done,\n");
		fprintf(fp,"\toutput reg [31:0] __gm_adrs,\n");
		fprintf(fp,"\toutput reg [1:0] __gm_leng,\n");
		fprintf(fp,"\tinput [31:0] __gm_di,\n");
		fprintf(fp,"\toutput reg [31:0] __gm_do,\n\n");
	}

	fprintf(fp,"\t// Memory Singal\n");
	output_memory_tree(fp, 0);	// 引数の出力

	fprintf(fp,"\t// Call Singal\n");
	output_call_signal_tree(fp);

	fprintf(fp,"\t// Result Singal\n");
	output_memory_tree(fp ,1);	// returnの出力

	fprintf(fp,");\n\n");

	// reg,wire宣言
	output_signal_tree(fp);	// 信号定義の出力

	// WIRE接続(assign文)の出力
	if(verilog_wire != NULL){
		fprintf(fp,"%s", verilog_wire);
	}
	output_memory_tree(fp, 2);	// 宣言の出力

	// ステートマシンの宣言出力
	if(verilog_state != NULL){
		fprintf(fp,"%s", verilog_state);
	}

	output_verilog_sdiv(fp);

    now_proc_tree = proc_tree_top;

	// ステートマシンの生成
	fprintf(fp,"always @(posedge __func_clock or negedge __func_reset) begin\n");
	fprintf(fp,"\tif(!__func_reset) begin\n");
	fprintf(fp,"\t\t__state <= __state_start_req;\n");
	fprintf(fp,"\t\t__func_ready <= 1;\n");
	fprintf(fp,"\t\t__func_done <= 0;\n");
	// 初期化を入れる
	fprintf(fp,"\tend else begin\n");
	fprintf(fp,"\tcase(__state)\n");

	fprintf(fp,"\t\t__state_start_req: begin\n");
	fprintf(fp,"\t\t\t__state <= __state_start_wait;\n");
	fprintf(fp,"\t\tend\n");

	fprintf(fp,"\t\t__state_start_wait: begin\n");
	fprintf(fp,"\t\t\tif(__func_start) begin\n");
	fprintf(fp,"\t\t\t\t__state <= __state_start_exec;\n");
	fprintf(fp,"\t\t\t\t__func_ready <= 0;\n");
	fprintf(fp,"\t\t\t\t__func_done <= 0;\n");
	output_memory_tree(fp, 3);	// procの出力
	fprintf(fp,"\t\t\tend\n");
	fprintf(fp,"\t\tend\n");

	fprintf(fp,"\t\t__state_start_exec: begin\n");
	if(now_proc_tree->seq_req.ena){
		fprintf(fp,"\t\t\t__state <= __state_1_req;\n");
	}else if(now_proc_tree->seq_wait.ena){
		fprintf(fp,"\t\t\t__state <= __state_1_wait;\n");
	}else{
		fprintf(fp,"\t\t\t__state <= __state_1_exec;\n");
	}
	fprintf(fp,"\t__label_pre <= __label_0;\n");
	fprintf(fp,"\t\tend\n");

    while(now_proc_tree != NULL){
		if(now_proc_tree->seq_req.ena){
			fprintf(fp, "\t\t__state_%d_req: begin\n", now_proc_tree->stage);
			fprintf(fp, "%s", now_proc_tree->seq_req.state);
			if(now_proc_tree->seq_req.body != NULL )		fprintf(fp, "%s", now_proc_tree->seq_req.body);
			fprintf(fp, "\t\tend\n");
		}

		if(now_proc_tree->seq_wait.ena){
			fprintf(fp, "\t\t__state_%d_wait: begin\n", now_proc_tree->stage);
			fprintf(fp, "%s", now_proc_tree->seq_wait.state);
			if(now_proc_tree->seq_wait.body != NULL )		fprintf(fp, "%s", now_proc_tree->seq_wait.body);
			fprintf(fp, "\t\tend\n");
		}

		{
			fprintf(fp, "\t\t__state_%d_exec: begin\n", now_proc_tree->stage);
			if(now_proc_tree->seq_exec.state != NULL){
				if(strlen(now_proc_tree->seq_exec.state) > 0){
					fprintf(fp, "%s\n", now_proc_tree->seq_exec.state);
				}
			}else{
		        next_proc_tree = now_proc_tree->next_ptr;
		        if(next_proc_tree != NULL){
					if(next_proc_tree->seq_req.ena){
						fprintf(fp, "\t\t\t__state <= __state_%d_req;\n", now_proc_tree->stage + 1);
					}else if(next_proc_tree->seq_wait.ena){
						fprintf(fp, "\t\t\t__state <= __state_%d_wait;\n", now_proc_tree->stage + 1);
					}else{
						fprintf(fp, "\t\t\t__state <= __state_%d_exec;\n", now_proc_tree->stage + 1);
					}
				}
			}
			if(now_proc_tree->seq_exec.body != NULL )	fprintf(fp, "%s", now_proc_tree->seq_exec.body);
			fprintf(fp, "\t\tend\n");
		}
        now_proc_tree = now_proc_tree->next_ptr;
    }

	fprintf(fp,"\t\t__state_fin_exec: begin\n");
	fprintf(fp,"\t\t\t__state <= __state_start_req;\n");
	fprintf(fp,"\t\t\t__func_ready <= 1;\n");
	fprintf(fp,"\t\t\t__func_done <= 1;\n");
	fprintf(fp,"\t\tend\n");

	fprintf(fp,"\tendcase\n");
	fprintf(fp,"\tend\n");
	fprintf(fp,"end\n");

	fprintf(fp,"endmodule\n");

    return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
leaq 0xe095(%rip), %rax      # 0x18128
movq (%rax), %rax
movsbl (%rax), %eax
cmpl $0x25, %eax
je 0xa0b0
leaq 0xe083(%rip), %rax      # 0x18128
movq (%rax), %rax
movsbl (%rax), %eax
cmpl $0x40, %eax
jne 0xa0c4
leaq 0xe071(%rip), %rax      # 0x18128
movq (%rax), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0xa0d2
leaq 0xe05d(%rip), %rax      # 0x18128
movq (%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rsi
leaq 0x99fa(%rip), %rdi      # 0x13ad7
movb $0x0, %al
callq 0x1090
movq -0x8(%rbp), %rdi
leaq 0x9a0d(%rip), %rsi      # 0x13afc
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x99ff(%rip), %rsi      # 0x13b00
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a1c(%rip), %rsi      # 0x13b2f
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a29(%rip), %rsi      # 0x13b4e
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a5d(%rip), %rsi      # 0x13b94
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a4f(%rip), %rsi      # 0x13b98
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a72(%rip), %rsi      # 0x13bcd
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a27(%rip), %rsi      # 0x13b94
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a81(%rip), %rsi      # 0x13c00
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a9b(%rip), %rsi      # 0x13c2c
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9aae(%rip), %rsi      # 0x13c51
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9abd(%rip), %rsi      # 0x13c72
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
leaq 0xdf5d(%rip), %rax      # 0x18128
movq (%rax), %rax
movsbl (%rax), %eax
cmpl $0x25, %eax
je 0xa1e8
leaq 0xdf4b(%rip), %rax      # 0x18128
movq (%rax), %rax
movsbl (%rax), %eax
cmpl $0x40, %eax
jne 0xa1fc
leaq 0xdf39(%rip), %rax      # 0x18128
movq (%rax), %rax
addq $0x1, %rax
movq %rax, -0x30(%rbp)
jmp 0xa20a
leaq 0xdf25(%rip), %rax      # 0x18128
movq (%rax), %rax
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x30(%rbp), %rdx
leaq 0x9a5e(%rip), %rsi      # 0x13c77
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a58(%rip), %rsi      # 0x13c83
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a5c(%rip), %rsi      # 0x13c99
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a60(%rip), %rsi      # 0x13caf
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a64(%rip), %rsi      # 0x13cc5
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a6c(%rip), %rsi      # 0x13cdf
movb $0x0, %al
callq 0x10e0
cmpl $0x0, 0xe2ff(%rip)      # 0x18580
je 0xa329
movq -0x8(%rbp), %rdi
leaq 0x9a69(%rip), %rsi      # 0x13cfb
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a6a(%rip), %rsi      # 0x13d0e
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a72(%rip), %rsi      # 0x13d28
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a77(%rip), %rsi      # 0x13d3f
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a7c(%rip), %rsi      # 0x13d56
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a7d(%rip), %rsi      # 0x13d69
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a8a(%rip), %rsi      # 0x13d88
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a96(%rip), %rsi      # 0x13da6
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a9c(%rip), %rsi      # 0x13dbe
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9aa8(%rip), %rsi      # 0x13ddc
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
xorl %esi, %esi
callq 0x7cf0
movq -0x8(%rbp), %rdi
leaq 0x9a9e(%rip), %rsi      # 0x13def
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
callq 0x7500
movq -0x8(%rbp), %rdi
leaq 0x9a94(%rip), %rsi      # 0x13e00
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movl $0x1, %esi
callq 0x7cf0
movq -0x8(%rbp), %rdi
leaq 0x9a87(%rip), %rsi      # 0x13e13
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
callq 0xd8e0
cmpq $0x0, 0xe1c4(%rip)      # 0x18568
je 0xa3bf
movq -0x8(%rbp), %rdi
movq 0xe1b7(%rip), %rdx      # 0x18568
leaq 0x9610(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movl $0x2, %esi
callq 0x7cf0
cmpq $0x0, 0xe1a3(%rip)      # 0x18578
je 0xa3f0
movq -0x8(%rbp), %rdi
movq 0xe196(%rip), %rdx      # 0x18578
leaq 0x95df(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
callq 0xa890
movq 0xe160(%rip), %rax      # 0x18560
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rdi
leaq 0x9a09(%rip), %rsi      # 0x13e18
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a35(%rip), %rsi      # 0x13e56
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9c85(%rip), %rsi      # 0x140b8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9c95(%rip), %rsi      # 0x140da
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9aef(%rip), %rsi      # 0x13f46
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a07(%rip), %rsi      # 0x13e70
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a06(%rip), %rsi      # 0x13e81
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a04(%rip), %rsi      # 0x13e91
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a0e(%rip), %rsi      # 0x13ead
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9e2f(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a0d(%rip), %rsi      # 0x13ed0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a18(%rip), %rsi      # 0x13eed
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a21(%rip), %rsi      # 0x13f08
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a33(%rip), %rsi      # 0x13f2c
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a39(%rip), %rsi      # 0x13f44
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movl $0x3, %esi
callq 0x7cf0
movq -0x8(%rbp), %rdi
leaq 0x9db4(%rip), %rsi      # 0x142df
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9da3(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a0c(%rip), %rsi      # 0x13f5b
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
cmpl $0x0, 0x18(%rax)
je 0xa574
movq -0x8(%rbp), %rdi
leaq 0x9a0d(%rip), %rsi      # 0x13f78
movb $0x0, %al
callq 0x10e0
jmp 0xa5a6
movq -0x10(%rbp), %rax
cmpl $0x0, 0x38(%rax)
je 0xa592
movq -0x8(%rbp), %rdi
leaq 0x9a0d(%rip), %rsi      # 0x13f96
movb $0x0, %al
callq 0x10e0
jmp 0xa5a4
movq -0x8(%rbp), %rdi
leaq 0x9a18(%rip), %rsi      # 0x13fb5
movb $0x0, %al
callq 0x10e0
jmp 0xa5a6
movq -0x8(%rbp), %rdi
leaq 0x9a23(%rip), %rsi      # 0x13fd4
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9d1d(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
cmpq $0x0, -0x10(%rbp)
je 0xa7e0
movq -0x10(%rbp), %rax
cmpl $0x0, 0x18(%rax)
je 0xa649
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
leaq 0x99ff(%rip), %rsi      # 0x13ff0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rdx
leaq 0x93bd(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
cmpq $0x0, 0x30(%rax)
je 0xa637
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x30(%rax), %rdx
leaq 0x9398(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9c9e(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
cmpl $0x0, 0x38(%rax)
je 0xa6bd
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
leaq 0x99a4(%rip), %rsi      # 0x14009
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x40(%rax), %rdx
leaq 0x9349(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
cmpq $0x0, 0x50(%rax)
je 0xa6ab
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x50(%rax), %rdx
leaq 0x9324(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9c2a(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
leaq 0x9954(%rip), %rsi      # 0x14023
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
cmpq $0x0, 0x60(%rax)
je 0xa713
movq -0x10(%rbp), %rax
movq 0x60(%rax), %rdi
callq 0x1070
cmpq $0x0, %rax
jbe 0xa70e
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x60(%rax), %rdx
leaq 0x93c3(%rip), %rsi      # 0x13aca
movb $0x0, %al
callq 0x10e0
jmp 0xa798
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0xa796
movq -0x18(%rbp), %rax
cmpl $0x0, 0x18(%rax)
je 0xa74e
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
addl $0x1, %edx
leaq 0x98f8(%rip), %rsi      # 0x1403d
movb $0x0, %al
callq 0x10e0
jmp 0xa794
movq -0x18(%rbp), %rax
cmpl $0x0, 0x38(%rax)
je 0xa776
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
addl $0x1, %edx
leaq 0x98ef(%rip), %rsi      # 0x1405c
movb $0x0, %al
callq 0x10e0
jmp 0xa792
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x10(%rax), %edx
addl $0x1, %edx
leaq 0x98f1(%rip), %rsi      # 0x1407c
movb $0x0, %al
callq 0x10e0
jmp 0xa794
jmp 0xa796
jmp 0xa798
movq -0x10(%rbp), %rax
cmpq $0x0, 0x70(%rax)
je 0xa7bd
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x70(%rax), %rdx
leaq 0x9212(%rip), %rsi      # 0x139c8
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9b18(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0xa5ca
movq -0x8(%rbp), %rdi
leaq 0x98b1(%rip), %rsi      # 0x1409c
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x98ba(%rip), %rsi      # 0x140b7
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x98ca(%rip), %rsi      # 0x140d9
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x98cf(%rip), %rsi      # 0x140f0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9aad(%rip), %rsi      # 0x142e0
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9b5e(%rip), %rsi      # 0x143a3
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a8a(%rip), %rsi      # 0x142e1
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x9a79(%rip), %rsi      # 0x142e2
movb $0x0, %al
callq 0x10e0
movq -0x8(%rbp), %rdi
leaq 0x988b(%rip), %rsi      # 0x14106
movb $0x0, %al
callq 0x10e0
xorl %eax, %eax
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)