// File: /workspace/github_cpp_makefile_star2_O3/MPSLab-ASU[P]DiRAC/./src/baseAccelSim.cc
// Function: baseAccelSim::free_memory()
void baseAccelSim::free_memory()
{
	delete[] regs_buf1_startIdx_Op;
	delete[] regs_buf2_startIdx_Op;

	for(uint8_t it=0; it < SPM_passes; it++)
	{
		delete[] read_operand_SPM_pass[it];
		delete[] read_operand_offset_base_addr_SPM[it];
		delete[] read_operand_burst_width_bytes_SPM_pass[it];
		delete[] read_operand_offset_base_addr_DRAM[it];
	}
	for(uint8_t it=SPM_passes; it < SPM_passes + WB_delay_SPM_pass; it++)
	{
		delete[] write_operand_SPM_pass[it];
		delete[] write_operand_offset_base_addr_SPM[it];
		delete[] write_operand_burst_width_bytes_SPM_pass[it];
		delete[] write_operand_offset_base_addr_DRAM[it];
	}
	delete[] read_operand_SPM_pass;
	delete[] read_operand_offset_base_addr_SPM;
	delete[] read_operand_burst_width_bytes_SPM_pass;
	delete[] read_operand_offset_base_addr_DRAM;
	delete[] write_operand_SPM_pass;
	delete[] write_operand_offset_base_addr_SPM;
	delete[] write_operand_burst_width_bytes_SPM_pass;
	delete[] write_operand_offset_base_addr_DRAM;
	delete[] spm_buffer_number_op_prefetch;
	delete[] spm_buffer_number_op_writeback;
	delete[] spm_buffer_number_op_comp_read;
	delete[] spm_buffer_number_op_comp_write;


	for(uint8_t buf=0; buf < SPM_buffers; buf++)
		delete[] operand_start_addr_SPM_buffer[buf];
	delete[] operand_start_addr_SPM_buffer;

	for(uint8_t i=0; i<total_operands; i++)
		delete[] tensor_operands[i];

	for(uint8_t i=0; i<output_operands; i++)
		delete[] golden_outputs[i];

	delete[] tensor_operands;
	delete[] golden_outputs;
	delete[] size_tensors;

	for(uint8_t i=0; i < total_operands; i++)
    delete[] packetArr[i];
  delete[] packetArr;

  for(uint8_t i=0; i < totalNetworks; i++) {
    for(uint16_t j=0; j < total_MC; j++) {
      delete[] configArr[i][j];
    }
    delete[] configArr[i];
  }
	delete [] configArr;

  for(uint8_t i=0; i < outNetworks; i++)
		delete[] config_data_collect_write_back[i];
	delete[] config_data_collect_write_back;

	delete[] size_packetArr;
	delete[] size_config_data_collect_write_back;

	for(uint8_t it=0; it < RF_passes; it++)
	{
		delete[] read_data_RF_pass[it];
		delete[] RF_pass_network_read_operand[it];
		delete[] RF_pass_network_read_operand_offset_network_packet[it];
		delete[] RF_pass_network_read_operand_burst_width_elements[it];
		delete[] RF_pass_network_read_operand_offset_base_addr_SPM[it];
	}
	for(uint8_t it=RF_passes; it < RF_passes + WB_delay_RF_pass; it++)
	{
		delete[] write_data_RF_pass[it];
		delete[] RF_pass_network_write_operand[it];
		delete[] RF_pass_network_write_operand_offset_network_packet[it];
		delete[] RF_pass_network_write_operand_burst_width_elements[it];
		delete[] RF_pass_network_write_operand_offset_base_addr_SPM[it];
	}
	delete[] read_data_RF_pass;
	delete[] RF_pass_network_read_operand;
	delete[] RF_pass_network_read_operand_offset_network_packet;
	delete[] RF_pass_network_read_operand_burst_width_elements;
	delete[] RF_pass_network_read_operand_offset_base_addr_SPM;
	delete[] write_data_RF_pass;
	delete[] RF_pass_network_write_operand;
	delete[] RF_pass_network_write_operand_offset_network_packet;
	delete[] RF_pass_network_write_operand_burst_width_elements;
	delete[] RF_pass_network_write_operand_offset_base_addr_SPM;

	for(uint8_t it=0; it < RF_passes + WB_delay_RF_pass; it++)
	{
		delete[] trigger_exec_pass_PEs_exec[it];
		delete[] trigger_exec_pass_zero_init[it];
		delete[] trigger_exec_pass_writeback[it];
		delete[] trigger_exec_pass_spatial_reduce[it];
		delete[] trigger_exec_pass_update_buf_num_Op1[it];
		delete[] trigger_exec_pass_update_buf_num_Op2[it];
		delete[] trigger_exec_pass_update_buf_num_Op3[it];
	}
	delete[] trigger_exec_pass_PEs_exec;
	delete[] trigger_exec_pass_zero_init;
	delete[] trigger_exec_pass_writeback;
	delete[] trigger_exec_pass_spatial_reduce;
	delete[] trigger_exec_pass_update_buf_num_Op1;
	delete[] trigger_exec_pass_update_buf_num_Op2;
	delete[] trigger_exec_pass_update_buf_num_Op3;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq 0x1fe185(%rip), %rdi    # 0x60b5d0
testq %rdi, %rdi
je 0x40d455
callq 0x4177f0
movq 0x1fe17c(%rip), %rdi    # 0x60b5d8
testq %rdi, %rdi
je 0x40d466
callq 0x4177f0
cmpw $0x0, 0x1fe0e6(%rip)    # 0x60b554
je 0x40d5b6
xorl %r15d, %r15d
movq 0x1fe1ca(%rip), %rax    # 0x60b648
movzbl %r15b, %r15d
movq (%rax,%r15,8), %rdi
testq %rdi, %rdi
je 0x40d490
callq 0x4177f0
movq 0x1fe1b9(%rip), %rax    # 0x60b650
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40d4e9
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40d4d5
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d4cf
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d4b9
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fe168(%rip), %rax    # 0x60b658
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40d542
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40d52e
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d528
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d512
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fe117(%rip), %rax    # 0x60b660
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40d59b
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40d587
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d581
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d56b
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
incb %r15b
movzwl 0x1fdfae(%rip), %r14d   # 0x60b554
movzbl %r15b, %eax
cmpw %ax, %r14w
ja 0x40d477
jmp 0x40d5b9
xorl %r14d, %r14d
movzwl %r14w, %eax
leal 0x2(%rax), %ecx
cmpl %eax, %ecx
jbe 0x40d705
movq 0x1fe099(%rip), %rax    # 0x60b668
movzbl %r14b, %r14d
movq (%rax,%r14,8), %rdi
testq %rdi, %rdi
je 0x40d5e1
callq 0x4177f0
movq 0x1fe088(%rip), %rax    # 0x60b670
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40d63a
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40d626
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d620
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d60a
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fe037(%rip), %rax    # 0x60b678
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40d693
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40d67f
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d679
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d663
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fdfe6(%rip), %rax    # 0x60b680
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40d6ec
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40d6d8
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40d6d2
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40d6bc
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
incb %r14b
movzbl %r14b, %eax
movzwl 0x1fde5a(%rip), %ecx    # 0x60b554
addl $0x2, %ecx
cmpl %eax, %ecx
ja 0x40d5c8
movq 0x1fdf3c(%rip), %rdi    # 0x60b648
testq %rdi, %rdi
je 0x40d716
callq 0x4177f0
movq 0x1fdf33(%rip), %rdi    # 0x60b650
testq %rdi, %rdi
je 0x40d727
callq 0x4177f0
movq 0x1fdf2a(%rip), %rdi    # 0x60b658
testq %rdi, %rdi
je 0x40d738
callq 0x4177f0
movq 0x1fdf21(%rip), %rdi    # 0x60b660
testq %rdi, %rdi
je 0x40d749
callq 0x4177f0
movq 0x1fdf18(%rip), %rdi    # 0x60b668
testq %rdi, %rdi
je 0x40d75a
callq 0x4177f0
movq 0x1fdf0f(%rip), %rdi    # 0x60b670
testq %rdi, %rdi
je 0x40d76b
callq 0x4177f0
movq 0x1fdf06(%rip), %rdi    # 0x60b678
testq %rdi, %rdi
je 0x40d77c
callq 0x4177f0
movq 0x1fdefd(%rip), %rdi    # 0x60b680
testq %rdi, %rdi
je 0x40d78d
callq 0x4177f0
movq 0x1fdf84(%rip), %rdi    # 0x60b718
testq %rdi, %rdi
je 0x40d79e
callq 0x4177f0
movq 0x1fdf7b(%rip), %rdi    # 0x60b720
testq %rdi, %rdi
je 0x40d7af
callq 0x4177f0
movq 0x1fdf72(%rip), %rdi    # 0x60b728
testq %rdi, %rdi
je 0x40d7c0
callq 0x4177f0
movq 0x1fdf69(%rip), %rdi    # 0x60b730
testq %rdi, %rdi
je 0x40d7d1
callq 0x4177f0
movb $0x1, %bl
movq 0x1fde66(%rip), %rdi    # 0x60b640
xorl %eax, %eax
movq (%rdi,%rax,8), %rax
testq %rax, %rax
je 0x40d7f4
movq %rax, %rdi
callq 0x4177f0
movq 0x1fde4c(%rip), %rdi    # 0x60b640
movl $0x1, %eax
testb $0x1, %bl
movl $0x0, %ebx
jne 0x40d7dc
testq %rdi, %rdi
je 0x40d80d
callq 0x4177f0
movb 0x1fdd43(%rip), %al     # 0x60b556
testb %al, %al
je 0x40d846
movq 0x1fdd42(%rip), %rcx    # 0x60b560
xorl %ebx, %ebx
movq (%rcx,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40d83b
callq 0x4177f0
movq 0x1fdd2b(%rip), %rcx    # 0x60b560
movb 0x1fdd1b(%rip), %al     # 0x60b556
incq %rbx
movzbl %al, %edx
cmpq %rdx, %rbx
jb 0x40d820
movb 0x1fdd0b(%rip), %al     # 0x60b557
testb %al, %al
je 0x40d87f
movq 0x1fdd11(%rip), %rcx    # 0x60b568
xorl %ebx, %ebx
movq (%rcx,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40d874
callq 0x4177f0
movq 0x1fdcfa(%rip), %rcx    # 0x60b568
movb 0x1fdce3(%rip), %al     # 0x60b557
incq %rbx
movzbl %al, %edx
cmpq %rdx, %rbx
jb 0x40d859
movq 0x1fdcda(%rip), %rdi    # 0x60b560
testq %rdi, %rdi
je 0x40d890
callq 0x4177f0
movq 0x1fdcd1(%rip), %rdi    # 0x60b568
testq %rdi, %rdi
je 0x40d8a1
callq 0x4177f0
movq 0x1fdcc8(%rip), %rdi    # 0x60b570
testq %rdi, %rdi
je 0x40d8b2
callq 0x4177f0
movb 0x1fdc9e(%rip), %cl     # 0x60b556
movq 0x1fdd39(%rip), %rdi    # 0x60b5f8
testb %cl, %cl
je 0x40d8fe
xorl %ebx, %ebx
movq (%rdi,%rbx,8), %rax
testq %rax, %rax
je 0x40d8f3
movq -0x8(%rax), %rcx
addq $-0x8, %rax
leaq 0x8(,%rcx,4), %rsi
movq %rax, %rdi
callq 0x417800
movq 0x1fdd0b(%rip), %rdi    # 0x60b5f8
movb 0x1fdc63(%rip), %cl     # 0x60b556
incq %rbx
movzbl %cl, %eax
cmpq %rax, %rbx
jb 0x40d8c5
testq %rdi, %rdi
je 0x40d908
callq 0x4177f0
cmpb $0x0, 0x1fb844(%rip)    # 0x609153
movq 0x1fdcea(%rip), %rdi    # 0x60b600
je 0x40d99f
movl 0x1fdcee(%rip), %ecx    # 0x60b610
xorl %ebx, %ebx
movl %ecx, %edx
testl %edx, %edx
je 0x40d96e
xorl %ebp, %ebp
movq (%rdi,%rbx,8), %rax
movzwl %bp, %edx
movq (%rax,%rdx,8), %rax
testq %rax, %rax
je 0x40d961
movq -0x8(%rax), %rcx
addq $-0x8, %rax
leaq 0x8(,%rcx,4), %rsi
movq %rax, %rdi
callq 0x417800
movq 0x1fdca5(%rip), %rdi    # 0x60b600
movl 0x1fdcaf(%rip), %ecx    # 0x60b610
incl %ebp
movzwl %bp, %eax
movl %ecx, %edx
cmpl %eax, %ecx
ja 0x40d92c
jmp 0x40d970
xorl %edx, %edx
movq (%rdi,%rbx,8), %rax
testq %rax, %rax
je 0x40d990
movq %rax, %rdi
callq 0x4177f0
movl 0x1fdc89(%rip), %ecx    # 0x60b610
movq 0x1fdc72(%rip), %rdi    # 0x60b600
movl %ecx, %edx
incq %rbx
movzbl 0x1fb7b9(%rip), %eax    # 0x609153
cmpq %rax, %rbx
jb 0x40d926
testq %rdi, %rdi
je 0x40d9a9
callq 0x4177f0
movb 0x1fdc35(%rip), %cl     # 0x60b5e4
movq 0x1fdc52(%rip), %rdi    # 0x60b608
testb %cl, %cl
je 0x40d9e5
xorl %ebx, %ebx
movq (%rdi,%rbx,8), %rax
testq %rax, %rax
je 0x40d9da
movq %rax, %rdi
callq 0x4177f0
movq 0x1fdc34(%rip), %rdi    # 0x60b608
movb 0x1fdc0a(%rip), %cl     # 0x60b5e4
incq %rbx
movzbl %cl, %eax
cmpq %rax, %rbx
jb 0x40d9bc
testq %rdi, %rdi
je 0x40d9ef
callq 0x4177f0
movq 0x1fdbf2(%rip), %rdi    # 0x60b5e8
testq %rdi, %rdi
je 0x40da00
callq 0x4177f0
movq 0x1fdbe9(%rip), %rdi    # 0x60b5f0
testq %rdi, %rdi
je 0x40da11
callq 0x4177f0
cmpw $0x0, 0x1fdb39(%rip)    # 0x60b552
je 0x40dbba
xorl %r15d, %r15d
movq 0x1fdc5f(%rip), %rax    # 0x60b688
movzbl %r15b, %r15d
movq (%rax,%r15,8), %rdi
testq %rdi, %rdi
je 0x40da3b
callq 0x4177f0
movq 0x1fdc4e(%rip), %rax    # 0x60b690
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40da94
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40da80
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40da7a
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40da64
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fdbfd(%rip), %rax    # 0x60b698
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40daed
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40dad9
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40dad3
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40dabd
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fdbac(%rip), %rax    # 0x60b6a0
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40db46
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40db32
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40db2c
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40db16
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fdb5b(%rip), %rax    # 0x60b6a8
movq (%rax,%r15,8), %rbx
testq %rbx, %rbx
je 0x40db9f
movq -0x8(%rbx), %r14
addq $-0x8, %rbx
testq %r14, %r14
je 0x40db8b
leaq (,%r14,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40db85
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40db6f
leaq (%r14,%r14,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
incb %r15b
movzwl 0x1fd9a8(%rip), %r14d   # 0x60b552
movzbl %r15b, %eax
cmpw %ax, %r14w
ja 0x40da22
jmp 0x40dbbd
xorl %r14d, %r14d
movzwl %r14w, %eax
leal 0x2(%rax), %ecx
cmpl %eax, %ecx
jbe 0x40dd62
movq 0x1fdadd(%rip), %rax    # 0x60b6b0
movzbl %r14b, %r14d
movq (%rax,%r14,8), %rdi
testq %rdi, %rdi
je 0x40dbe5
callq 0x4177f0
movq 0x1fdacc(%rip), %rax    # 0x60b6b8
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40dc3e
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40dc2a
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40dc24
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40dc0e
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fda7b(%rip), %rax    # 0x60b6c0
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40dc97
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40dc83
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40dc7d
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40dc67
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fda2a(%rip), %rax    # 0x60b6c8
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40dcf0
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40dcdc
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40dcd6
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40dcc0
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
movq 0x1fd9d9(%rip), %rax    # 0x60b6d0
movq (%rax,%r14,8), %rbx
testq %rbx, %rbx
je 0x40dd49
movq -0x8(%rbx), %r15
addq $-0x8, %rbx
testq %r15, %r15
je 0x40dd35
leaq (,%r15,8), %rax
leaq (%rax,%rax,2), %r12
movq -0x10(%rbx,%r12), %rdi
testq %rdi, %rdi
je 0x40dd2f
movq (%rbx,%r12), %rsi
subq %rdi, %rsi
callq 0x4177e0
addq $-0x18, %r12
jne 0x40dd19
leaq (%r15,%r15,2), %rax
leaq 0x8(,%rax,8), %rsi
movq %rbx, %rdi
callq 0x417800
incb %r14b
movzbl %r14b, %eax
movzwl 0x1fd7fb(%rip), %ecx    # 0x60b552
addl $0x2, %ecx
cmpl %eax, %ecx
ja 0x40dbcc
movq 0x1fd91f(%rip), %rdi    # 0x60b688
testq %rdi, %rdi
je 0x40dd73
callq 0x4177f0
movq 0x1fd916(%rip), %rdi    # 0x60b690
testq %rdi, %rdi
je 0x40dd84
callq 0x4177f0
movq 0x1fd90d(%rip), %rdi    # 0x60b698
testq %rdi, %rdi
je 0x40dd95
callq 0x4177f0
movq 0x1fd904(%rip), %rdi    # 0x60b6a0
testq %rdi, %rdi
je 0x40dda6
callq 0x4177f0
movq 0x1fd8fb(%rip), %rdi    # 0x60b6a8
testq %rdi, %rdi
je 0x40ddb7
callq 0x4177f0
movq 0x1fd8f2(%rip), %rdi    # 0x60b6b0
testq %rdi, %rdi
je 0x40ddc8
callq 0x4177f0
movq 0x1fd8e9(%rip), %rdi    # 0x60b6b8
testq %rdi, %rdi
je 0x40ddd9
callq 0x4177f0
movq 0x1fd8e0(%rip), %rdi    # 0x60b6c0
testq %rdi, %rdi
je 0x40ddea
callq 0x4177f0
movq 0x1fd8d7(%rip), %rdi    # 0x60b6c8
testq %rdi, %rdi
je 0x40ddfb
callq 0x4177f0
movq 0x1fd8ce(%rip), %rdi    # 0x60b6d0
testq %rdi, %rdi
je 0x40de0c
callq 0x4177f0
xorl %ebx, %ebx
movq 0x1fd8cb(%rip), %rax    # 0x60b6e0
movzbl %bl, %ebx
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de26
callq 0x4177f0
movq 0x1fd8bb(%rip), %rax    # 0x60b6e8
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de3b
callq 0x4177f0
movq 0x1fd8ae(%rip), %rax    # 0x60b6f0
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de50
callq 0x4177f0
movq 0x1fd8a1(%rip), %rax    # 0x60b6f8
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de65
callq 0x4177f0
movq 0x1fd894(%rip), %rax    # 0x60b700
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de7a
callq 0x4177f0
movq 0x1fd887(%rip), %rax    # 0x60b708
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40de8f
callq 0x4177f0
movq 0x1fd87a(%rip), %rax    # 0x60b710
movq (%rax,%rbx,8), %rdi
testq %rdi, %rdi
je 0x40dea4
callq 0x4177f0
incb %bl
movzbl %bl, %eax
movzwl 0x1fd6a2(%rip), %ecx    # 0x60b552
addl $0x2, %ecx
cmpl %eax, %ecx
ja 0x40de0e
movq 0x1fd81e(%rip), %rdi    # 0x60b6e0
testq %rdi, %rdi
je 0x40decc
callq 0x4177f0
movq 0x1fd815(%rip), %rdi    # 0x60b6e8
testq %rdi, %rdi
je 0x40dedd
callq 0x4177f0
movq 0x1fd80c(%rip), %rdi    # 0x60b6f0
testq %rdi, %rdi
je 0x40deee
callq 0x4177f0
movq 0x1fd803(%rip), %rdi    # 0x60b6f8
testq %rdi, %rdi
je 0x40deff
callq 0x4177f0
movq 0x1fd7fa(%rip), %rdi    # 0x60b700
testq %rdi, %rdi
je 0x40df10
callq 0x4177f0
movq 0x1fd7f1(%rip), %rdi    # 0x60b708
testq %rdi, %rdi
je 0x40df21
callq 0x4177f0
movq 0x1fd7e8(%rip), %rdi    # 0x60b710
testq %rdi, %rdi
je 0x40df3a
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x4177f0
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq