// File: martinferianc[P]CPUSimulator-EIE2/src/mips_cpu_execute.cpp
// Function: mips_execute_R(mips_cpu_impl*, unsigned int&, unsigned int&, unsigned int const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, unsigned int&, unsigned int&)
mips_error mips_execute_R(mips_cpu_h state, uint32_t& hi, uint32_t& lo, const uint32_t* instruction_data, string& instruction, uint32_t& pcN, uint32_t& pc){
	uint32_t source1 = instruction_data[1];
	uint32_t source2 = instruction_data[2];
	uint32_t destination = instruction_data[3];
	uint32_t shift = instruction_data[4];
	uint32_t function = instruction_data[5];

	switch(function){
		case 0b100001:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data,"ADDU", instruction, pcN, pc);
		break;
		case 0b100101:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data,"OR", instruction, pcN, pc);
		break;
		case 0b100100:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "AND", instruction, pcN, pc);
		break;
		case 0b100110:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "XOR", instruction, pcN, pc);
		break;
		case 0b100011:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SUBU", instruction, pcN, pc);
		break;
		case 0b100010:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SUB", instruction, pcN, pc);
		break;
		case 0b100000:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "ADD", instruction, pcN, pc);
		break;
		case 0b000010:
		if ((source1==0) && (shift<=31))
			return mips_execute_R_X(state, hi, lo, instruction_data, "SRL", instruction, pcN, pc);
		break;
		case 0b000011:
		if ((source1==0) && (shift<=31))
			return mips_execute_R_X(state, hi, lo, instruction_data, "SRA", instruction, pcN, pc);
		break;
		case 0b000111:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SRAV", instruction,pcN, pc);
		break;
		case 0b000110:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SRLV", instruction, pcN, pc);
		break;
		case 0b000000:
		if (source1==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SLL", instruction, pcN, pc);
		break;
		case 0b101011:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SLTU", instruction, pcN, pc);
		break;
		case 0b101010:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SLT", instruction, pcN, pc);
		break;
		case 0b000100:
		if (shift==0)
			return mips_execute_R_X(state, hi, lo, instruction_data, "SLLV", instruction, pcN, pc);
		break;
		case 0b010010:
		if ((source1==0) && (source2==0) && (shift==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MFLO", instruction, pcN, pc);
		break;
		case 0b010000:
		if ((source1==0) && (source2==0) && (shift==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MFHI", instruction, pcN, pc);
		break;
		case 0b010011:
		if ((source2==0) && (destination==0) && (shift==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MTLO", instruction, pcN, pc);
		break;
		case 0b010001:
		if ((source2==0) && (destination==0) && (shift==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MTHI", instruction, pcN, pc);
		break;
		case 0b011010:
		if ((shift==0) && (destination==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "DIV", instruction, pcN, pc);
		break;
		case 0b011011:
		if ((shift==0) && (destination==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "DIVU", instruction, pcN, pc);
		break;
		case 0b011001:
		if ((shift==0) && (destination==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MULTU", instruction, pcN, pc);
		break;
		case 0b011000:
		if ((shift==0) && (destination==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "MULT", instruction, pcN, pc);
		break;
		case 0b001001:
		if ((source2==0) && (shift==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "JALR", instruction, pcN, pc);
		break;
		case 0b001000:
		if ((source2==0) && (shift==0) && (destination==0))
			return mips_execute_R_X(state, hi, lo, instruction_data, "JR", instruction, pcN, pc);
		break;
		default:
		break;
	}
	instruction = "Invalid instruction format";
	return mips_ExceptionInvalidInstruction;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x910, %rsp            # imm = 0x910
movq 0x10(%rbp), %rax
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movq %r9, -0x38(%rbp)
movq -0x28(%rbp), %rax
movl 0x4(%rax), %eax
movl %eax, -0x3c(%rbp)
movq -0x28(%rbp), %rax
movl 0x8(%rax), %eax
movl %eax, -0x40(%rbp)
movq -0x28(%rbp), %rax
movl 0xc(%rax), %eax
movl %eax, -0x44(%rbp)
movq -0x28(%rbp), %rax
movl 0x10(%rax), %eax
movl %eax, -0x48(%rbp)
movq -0x28(%rbp), %rax
movl 0x14(%rax), %eax
movl %eax, -0x4c(%rbp)
movl -0x4c(%rbp), %eax
movq %rax, -0x450(%rbp)
subq $0x2b, %rax
ja 0xa29b
movq -0x450(%rbp), %rax
leaq 0xa3f9(%rip), %rcx      # 0x12b24
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
cmpl $0x0, -0x48(%rbp)
jne 0x882d
movq -0x10(%rbp), %rax
movq %rax, -0x478(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x470(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x468(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x460(%rbp)
leaq -0x71(%rbp), %rdi
movq %rdi, -0x458(%rbp)
callq 0x3450
movq -0x458(%rbp), %rdx
leaq 0x9e0c(%rip), %rsi      # 0x12594
leaq -0x70(%rbp), %rdi
callq 0x4250
jmp 0x8793
movq -0x460(%rbp), %rcx
movq -0x468(%rbp), %rdx
movq -0x470(%rbp), %rsi
movq -0x478(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x70(%rbp), %r8
callq 0xbd40
movl %eax, -0x47c(%rbp)
jmp 0x87d6
movl -0x47c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x3170
leaq -0x71(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x881f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x3170
leaq -0x71(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8940
movq -0x10(%rbp), %rax
movq %rax, -0x4a8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x4a0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x498(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x490(%rbp)
leaq -0xa9(%rbp), %rdi
movq %rdi, -0x488(%rbp)
callq 0x3450
movq -0x488(%rbp), %rdx
leaq 0xa19e(%rip), %rsi      # 0x12a27
leaq -0xa8(%rbp), %rdi
callq 0x4250
jmp 0x8897
movq -0x490(%rbp), %rcx
movq -0x498(%rbp), %rdx
movq -0x4a0(%rbp), %rsi
movq -0x4a8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0xa8(%rbp), %r8
callq 0xbd40
movl %eax, -0x4ac(%rbp)
jmp 0x88dd
movl -0x4ac(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0x3170
leaq -0xa9(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x892f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0x3170
leaq -0xa9(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8a53
movq -0x10(%rbp), %rax
movq %rax, -0x4d8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x4d0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x4c8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x4c0(%rbp)
leaq -0xd1(%rbp), %rdi
movq %rdi, -0x4b8(%rbp)
callq 0x3450
movq -0x4b8(%rbp), %rdx
leaq 0x9c18(%rip), %rsi      # 0x125b4
leaq -0xd0(%rbp), %rdi
callq 0x4250
jmp 0x89aa
movq -0x4c0(%rbp), %rcx
movq -0x4c8(%rbp), %rdx
movq -0x4d0(%rbp), %rsi
movq -0x4d8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0xd0(%rbp), %r8
callq 0xbd40
movl %eax, -0x4dc(%rbp)
jmp 0x89f0
movl -0x4dc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0xd0(%rbp), %rdi
callq 0x3170
leaq -0xd1(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8a42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xd0(%rbp), %rdi
callq 0x3170
leaq -0xd1(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8b66
movq -0x10(%rbp), %rax
movq %rax, -0x508(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x500(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x4f8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x4f0(%rbp)
leaq -0xf9(%rbp), %rdi
movq %rdi, -0x4e8(%rbp)
callq 0x3450
movq -0x4e8(%rbp), %rdx
leaq 0x9f77(%rip), %rsi      # 0x12a26
leaq -0xf8(%rbp), %rdi
callq 0x4250
jmp 0x8abd
movq -0x4f0(%rbp), %rcx
movq -0x4f8(%rbp), %rdx
movq -0x500(%rbp), %rsi
movq -0x508(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0xf8(%rbp), %r8
callq 0xbd40
movl %eax, -0x50c(%rbp)
jmp 0x8b03
movl -0x50c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0xf8(%rbp), %rdi
callq 0x3170
leaq -0xf9(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8b55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xf8(%rbp), %rdi
callq 0x3170
leaq -0xf9(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8c79
movq -0x10(%rbp), %rax
movq %rax, -0x538(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x530(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x528(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x520(%rbp)
leaq -0x121(%rbp), %rdi
movq %rdi, -0x518(%rbp)
callq 0x3450
movq -0x518(%rbp), %rdx
leaq 0x9e3f(%rip), %rsi      # 0x12a01
leaq -0x120(%rbp), %rdi
callq 0x4250
jmp 0x8bd0
movq -0x520(%rbp), %rcx
movq -0x528(%rbp), %rdx
movq -0x530(%rbp), %rsi
movq -0x538(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x120(%rbp), %r8
callq 0xbd40
movl %eax, -0x53c(%rbp)
jmp 0x8c16
movl -0x53c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x3170
leaq -0x121(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8c68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x3170
leaq -0x121(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8d8c
movq -0x10(%rbp), %rax
movq %rax, -0x568(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x560(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x558(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x550(%rbp)
leaq -0x149(%rbp), %rdi
movq %rdi, -0x548(%rbp)
callq 0x3450
movq -0x548(%rbp), %rdx
leaq 0x9d1f(%rip), %rsi      # 0x129f4
leaq -0x148(%rbp), %rdi
callq 0x4250
jmp 0x8ce3
movq -0x550(%rbp), %rcx
movq -0x558(%rbp), %rdx
movq -0x560(%rbp), %rsi
movq -0x568(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x148(%rbp), %r8
callq 0xbd40
movl %eax, -0x56c(%rbp)
jmp 0x8d29
movl -0x56c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x148(%rbp), %rdi
callq 0x3170
leaq -0x149(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8d7b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x148(%rbp), %rdi
callq 0x3170
leaq -0x149(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x8e9f
movq -0x10(%rbp), %rax
movq %rax, -0x598(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x590(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x588(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x580(%rbp)
leaq -0x171(%rbp), %rdi
movq %rdi, -0x578(%rbp)
callq 0x3450
movq -0x578(%rbp), %rdx
leaq 0x9746(%rip), %rsi      # 0x1252e
leaq -0x170(%rbp), %rdi
callq 0x4250
jmp 0x8df6
movq -0x580(%rbp), %rcx
movq -0x588(%rbp), %rdx
movq -0x590(%rbp), %rsi
movq -0x598(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x170(%rbp), %r8
callq 0xbd40
movl %eax, -0x59c(%rbp)
jmp 0x8e3c
movl -0x59c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x170(%rbp), %rdi
callq 0x3170
leaq -0x171(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8e8e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x170(%rbp), %rdi
callq 0x3170
leaq -0x171(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x3c(%rbp)
jne 0x8fbc
cmpl $0x1f, -0x48(%rbp)
ja 0x8fbc
movq -0x10(%rbp), %rax
movq %rax, -0x5c8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x5c0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x5b8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x5b0(%rbp)
leaq -0x199(%rbp), %rdi
movq %rdi, -0x5a8(%rbp)
callq 0x3450
movq -0x5a8(%rbp), %rdx
leaq 0x9ab5(%rip), %rsi      # 0x129ba
leaq -0x198(%rbp), %rdi
callq 0x4250
jmp 0x8f13
movq -0x5b0(%rbp), %rcx
movq -0x5b8(%rbp), %rdx
movq -0x5c0(%rbp), %rsi
movq -0x5c8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x198(%rbp), %r8
callq 0xbd40
movl %eax, -0x5cc(%rbp)
jmp 0x8f59
movl -0x5cc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x3170
leaq -0x199(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x8fab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x3170
leaq -0x199(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x3c(%rbp)
jne 0x90d9
cmpl $0x1f, -0x48(%rbp)
ja 0x90d9
movq -0x10(%rbp), %rax
movq %rax, -0x5f8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x5f0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x5e8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x5e0(%rbp)
leaq -0x1c1(%rbp), %rdi
movq %rdi, -0x5d8(%rbp)
callq 0x3450
movq -0x5d8(%rbp), %rdx
leaq 0x9958(%rip), %rsi      # 0x1297a
leaq -0x1c0(%rbp), %rdi
callq 0x4250
jmp 0x9030
movq -0x5e0(%rbp), %rcx
movq -0x5e8(%rbp), %rdx
movq -0x5f0(%rbp), %rsi
movq -0x5f8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x1c0(%rbp), %r8
callq 0xbd40
movl %eax, -0x5fc(%rbp)
jmp 0x9076
movl -0x5fc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x1c0(%rbp), %rdi
callq 0x3170
leaq -0x1c1(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x90c8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x1c0(%rbp), %rdi
callq 0x3170
leaq -0x1c1(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x91ec
movq -0x10(%rbp), %rax
movq %rax, -0x628(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x620(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x618(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x610(%rbp)
leaq -0x1e9(%rbp), %rdi
movq %rdi, -0x608(%rbp)
callq 0x3450
movq -0x608(%rbp), %rdx
leaq 0x9860(%rip), %rsi      # 0x12995
leaq -0x1e8(%rbp), %rdi
callq 0x4250
jmp 0x9143
movq -0x610(%rbp), %rcx
movq -0x618(%rbp), %rdx
movq -0x620(%rbp), %rsi
movq -0x628(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x1e8(%rbp), %r8
callq 0xbd40
movl %eax, -0x62c(%rbp)
jmp 0x9189
movl -0x62c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x1e8(%rbp), %rdi
callq 0x3170
leaq -0x1e9(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x91db
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x1e8(%rbp), %rdi
callq 0x3170
leaq -0x1e9(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x92ff
movq -0x10(%rbp), %rax
movq %rax, -0x658(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x650(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x648(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x640(%rbp)
leaq -0x211(%rbp), %rdi
movq %rdi, -0x638(%rbp)
callq 0x3450
movq -0x638(%rbp), %rdx
leaq 0x978a(%rip), %rsi      # 0x129d2
leaq -0x210(%rbp), %rdi
callq 0x4250
jmp 0x9256
movq -0x640(%rbp), %rcx
movq -0x648(%rbp), %rdx
movq -0x650(%rbp), %rsi
movq -0x658(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x210(%rbp), %r8
callq 0xbd40
movl %eax, -0x65c(%rbp)
jmp 0x929c
movl -0x65c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x3170
leaq -0x211(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x92ee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x3170
leaq -0x211(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x3c(%rbp)
jne 0x9412
movq -0x10(%rbp), %rax
movq %rax, -0x688(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x680(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x678(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x670(%rbp)
leaq -0x239(%rbp), %rdi
movq %rdi, -0x668(%rbp)
callq 0x3450
movq -0x668(%rbp), %rdx
leaq 0x9557(%rip), %rsi      # 0x128b2
leaq -0x238(%rbp), %rdi
callq 0x4250
jmp 0x9369
movq -0x670(%rbp), %rcx
movq -0x678(%rbp), %rdx
movq -0x680(%rbp), %rsi
movq -0x688(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x238(%rbp), %r8
callq 0xbd40
movl %eax, -0x68c(%rbp)
jmp 0x93af
movl -0x68c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x3170
leaq -0x239(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9401
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x3170
leaq -0x239(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x9525
movq -0x10(%rbp), %rax
movq %rax, -0x6b8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x6b0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x6a8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x6a0(%rbp)
leaq -0x261(%rbp), %rdi
movq %rdi, -0x698(%rbp)
callq 0x3450
movq -0x698(%rbp), %rdx
leaq 0x94ed(%rip), %rsi      # 0x1295b
leaq -0x260(%rbp), %rdi
callq 0x4250
jmp 0x947c
movq -0x6a0(%rbp), %rcx
movq -0x6a8(%rbp), %rdx
movq -0x6b0(%rbp), %rsi
movq -0x6b8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x260(%rbp), %r8
callq 0xbd40
movl %eax, -0x6bc(%rbp)
jmp 0x94c2
movl -0x6bc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x260(%rbp), %rdi
callq 0x3170
leaq -0x261(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9514
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x260(%rbp), %rdi
callq 0x3170
leaq -0x261(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x9638
movq -0x10(%rbp), %rax
movq %rax, -0x6e8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x6e0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x6d8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x6d0(%rbp)
leaq -0x289(%rbp), %rdi
movq %rdi, -0x6c8(%rbp)
callq 0x3450
movq -0x6c8(%rbp), %rdx
leaq 0x9369(%rip), %rsi      # 0x128ea
leaq -0x288(%rbp), %rdi
callq 0x4250
jmp 0x958f
movq -0x6d0(%rbp), %rcx
movq -0x6d8(%rbp), %rdx
movq -0x6e0(%rbp), %rsi
movq -0x6e8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x288(%rbp), %r8
callq 0xbd40
movl %eax, -0x6ec(%rbp)
jmp 0x95d5
movl -0x6ec(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x288(%rbp), %rdi
callq 0x3170
leaq -0x289(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9627
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x288(%rbp), %rdi
callq 0x3170
leaq -0x289(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x974b
movq -0x10(%rbp), %rax
movq %rax, -0x718(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x710(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x708(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x700(%rbp)
leaq -0x2b1(%rbp), %rdi
movq %rdi, -0x6f8(%rbp)
callq 0x3450
movq -0x6f8(%rbp), %rdx
leaq 0x9235(%rip), %rsi      # 0x128c9
leaq -0x2b0(%rbp), %rdi
callq 0x4250
jmp 0x96a2
movq -0x700(%rbp), %rcx
movq -0x708(%rbp), %rdx
movq -0x710(%rbp), %rsi
movq -0x718(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x2b0(%rbp), %r8
callq 0xbd40
movl %eax, -0x71c(%rbp)
jmp 0x96e8
movl -0x71c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x2b0(%rbp), %rdi
callq 0x3170
leaq -0x2b1(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x973a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x2b0(%rbp), %rdi
callq 0x3170
leaq -0x2b1(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x3c(%rbp)
jne 0x9872
cmpl $0x0, -0x40(%rbp)
jne 0x9872
cmpl $0x0, -0x48(%rbp)
jne 0x9872
movq -0x10(%rbp), %rax
movq %rax, -0x748(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x740(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x738(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x730(%rbp)
leaq -0x2d9(%rbp), %rdi
movq %rdi, -0x728(%rbp)
callq 0x3450
movq -0x728(%rbp), %rdx
leaq 0x905e(%rip), %rsi      # 0x12819
leaq -0x2d8(%rbp), %rdi
callq 0x4250
jmp 0x97c9
movq -0x730(%rbp), %rcx
movq -0x738(%rbp), %rdx
movq -0x740(%rbp), %rsi
movq -0x748(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x2d8(%rbp), %r8
callq 0xbd40
movl %eax, -0x74c(%rbp)
jmp 0x980f
movl -0x74c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x2d8(%rbp), %rdi
callq 0x3170
leaq -0x2d9(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9861
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x2d8(%rbp), %rdi
callq 0x3170
leaq -0x2d9(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x3c(%rbp)
jne 0x9999
cmpl $0x0, -0x40(%rbp)
jne 0x9999
cmpl $0x0, -0x48(%rbp)
jne 0x9999
movq -0x10(%rbp), %rax
movq %rax, -0x778(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x770(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x768(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x760(%rbp)
leaq -0x301(%rbp), %rdi
movq %rdi, -0x758(%rbp)
callq 0x3450
movq -0x758(%rbp), %rdx
leaq 0x8f25(%rip), %rsi      # 0x12807
leaq -0x300(%rbp), %rdi
callq 0x4250
jmp 0x98f0
movq -0x760(%rbp), %rcx
movq -0x768(%rbp), %rdx
movq -0x770(%rbp), %rsi
movq -0x778(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x300(%rbp), %r8
callq 0xbd40
movl %eax, -0x77c(%rbp)
jmp 0x9936
movl -0x77c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x300(%rbp), %rdi
callq 0x3170
leaq -0x301(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9988
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x300(%rbp), %rdi
callq 0x3170
leaq -0x301(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x40(%rbp)
jne 0x9ac0
cmpl $0x0, -0x44(%rbp)
jne 0x9ac0
cmpl $0x0, -0x48(%rbp)
jne 0x9ac0
movq -0x10(%rbp), %rax
movq %rax, -0x7a8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x7a0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x798(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x790(%rbp)
leaq -0x329(%rbp), %rdi
movq %rdi, -0x788(%rbp)
callq 0x3450
movq -0x788(%rbp), %rdx
leaq 0x8e32(%rip), %rsi      # 0x1283b
leaq -0x328(%rbp), %rdi
callq 0x4250
jmp 0x9a17
movq -0x790(%rbp), %rcx
movq -0x798(%rbp), %rdx
movq -0x7a0(%rbp), %rsi
movq -0x7a8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x328(%rbp), %r8
callq 0xbd40
movl %eax, -0x7ac(%rbp)
jmp 0x9a5d
movl -0x7ac(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x328(%rbp), %rdi
callq 0x3170
leaq -0x329(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9aaf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x328(%rbp), %rdi
callq 0x3170
leaq -0x329(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x40(%rbp)
jne 0x9be7
cmpl $0x0, -0x44(%rbp)
jne 0x9be7
cmpl $0x0, -0x48(%rbp)
jne 0x9be7
movq -0x10(%rbp), %rax
movq %rax, -0x7d8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x7d0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x7c8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x7c0(%rbp)
leaq -0x351(%rbp), %rdi
movq %rdi, -0x7b8(%rbp)
callq 0x3450
movq -0x7b8(%rbp), %rdx
leaq 0x8cfb(%rip), %rsi      # 0x1282b
leaq -0x350(%rbp), %rdi
callq 0x4250
jmp 0x9b3e
movq -0x7c0(%rbp), %rcx
movq -0x7c8(%rbp), %rdx
movq -0x7d0(%rbp), %rsi
movq -0x7d8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x350(%rbp), %r8
callq 0xbd40
movl %eax, -0x7dc(%rbp)
jmp 0x9b84
movl -0x7dc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x350(%rbp), %rdi
callq 0x3170
leaq -0x351(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9bd6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x350(%rbp), %rdi
callq 0x3170
leaq -0x351(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x9d04
cmpl $0x0, -0x44(%rbp)
jne 0x9d04
movq -0x10(%rbp), %rax
movq %rax, -0x808(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x800(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x7f8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x7f0(%rbp)
leaq -0x379(%rbp), %rdi
movq %rdi, -0x7e8(%rbp)
callq 0x3450
movq -0x7e8(%rbp), %rdx
leaq 0x8ab5(%rip), %rsi      # 0x12702
leaq -0x378(%rbp), %rdi
callq 0x4250
jmp 0x9c5b
movq -0x7f0(%rbp), %rcx
movq -0x7f8(%rbp), %rdx
movq -0x800(%rbp), %rsi
movq -0x808(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x378(%rbp), %r8
callq 0xbd40
movl %eax, -0x80c(%rbp)
jmp 0x9ca1
movl -0x80c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x378(%rbp), %rdi
callq 0x3170
leaq -0x379(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9cf3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x378(%rbp), %rdi
callq 0x3170
leaq -0x379(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x9e21
cmpl $0x0, -0x44(%rbp)
jne 0x9e21
movq -0x10(%rbp), %rax
movq %rax, -0x838(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x830(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x828(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x820(%rbp)
leaq -0x3a1(%rbp), %rdi
movq %rdi, -0x818(%rbp)
callq 0x3450
movq -0x818(%rbp), %rdx
leaq 0x89a3(%rip), %rsi      # 0x1270d
leaq -0x3a0(%rbp), %rdi
callq 0x4250
jmp 0x9d78
movq -0x820(%rbp), %rcx
movq -0x828(%rbp), %rdx
movq -0x830(%rbp), %rsi
movq -0x838(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x3a0(%rbp), %r8
callq 0xbd40
movl %eax, -0x83c(%rbp)
jmp 0x9dbe
movl -0x83c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x3a0(%rbp), %rdi
callq 0x3170
leaq -0x3a1(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9e10
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x3a0(%rbp), %rdi
callq 0x3170
leaq -0x3a1(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0x9f3e
cmpl $0x0, -0x44(%rbp)
jne 0x9f3e
movq -0x10(%rbp), %rax
movq %rax, -0x868(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x860(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x858(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x850(%rbp)
leaq -0x3c9(%rbp), %rdi
movq %rdi, -0x848(%rbp)
callq 0x3450
movq -0x848(%rbp), %rdx
leaq 0x89d2(%rip), %rsi      # 0x12859
leaq -0x3c8(%rbp), %rdi
callq 0x4250
jmp 0x9e95
movq -0x850(%rbp), %rcx
movq -0x858(%rbp), %rdx
movq -0x860(%rbp), %rsi
movq -0x868(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x3c8(%rbp), %r8
callq 0xbd40
movl %eax, -0x86c(%rbp)
jmp 0x9edb
movl -0x86c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x3c8(%rbp), %rdi
callq 0x3170
leaq -0x3c9(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x9f2d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x3c8(%rbp), %rdi
callq 0x3170
leaq -0x3c9(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x48(%rbp)
jne 0xa05b
cmpl $0x0, -0x44(%rbp)
jne 0xa05b
movq -0x10(%rbp), %rax
movq %rax, -0x898(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x890(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x888(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x880(%rbp)
leaq -0x3f1(%rbp), %rdi
movq %rdi, -0x878(%rbp)
callq 0x3450
movq -0x878(%rbp), %rdx
leaq 0x88a7(%rip), %rsi      # 0x1284b
leaq -0x3f0(%rbp), %rdi
callq 0x4250
jmp 0x9fb2
movq -0x880(%rbp), %rcx
movq -0x888(%rbp), %rdx
movq -0x890(%rbp), %rsi
movq -0x898(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x3f0(%rbp), %r8
callq 0xbd40
movl %eax, -0x89c(%rbp)
jmp 0x9ff8
movl -0x89c(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x3f0(%rbp), %rdi
callq 0x3170
leaq -0x3f1(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0xa04a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x3f0(%rbp), %rdi
callq 0x3170
leaq -0x3f1(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x40(%rbp)
jne 0xa178
cmpl $0x0, -0x48(%rbp)
jne 0xa178
movq -0x10(%rbp), %rax
movq %rax, -0x8c8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x8c0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8b8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8b0(%rbp)
leaq -0x419(%rbp), %rdi
movq %rdi, -0x8a8(%rbp)
callq 0x3450
movq -0x8a8(%rbp), %rdx
leaq 0x867a(%rip), %rsi      # 0x1273b
leaq -0x418(%rbp), %rdi
callq 0x4250
jmp 0xa0cf
movq -0x8b0(%rbp), %rcx
movq -0x8b8(%rbp), %rdx
movq -0x8c0(%rbp), %rsi
movq -0x8c8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x418(%rbp), %r8
callq 0xbd40
movl %eax, -0x8cc(%rbp)
jmp 0xa115
movl -0x8cc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x418(%rbp), %rdi
callq 0x3170
leaq -0x419(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0xa167
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x418(%rbp), %rdi
callq 0x3170
leaq -0x419(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
cmpl $0x0, -0x40(%rbp)
jne 0xa299
cmpl $0x0, -0x48(%rbp)
jne 0xa299
cmpl $0x0, -0x44(%rbp)
jne 0xa299
movq -0x10(%rbp), %rax
movq %rax, -0x8f8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x8f0(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8e8(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8e0(%rbp)
leaq -0x441(%rbp), %rdi
movq %rdi, -0x8d8(%rbp)
callq 0x3450
movq -0x8d8(%rbp), %rdx
leaq 0x856f(%rip), %rsi      # 0x12757
leaq -0x440(%rbp), %rdi
callq 0x4250
jmp 0xa1f6
movq -0x8e0(%rbp), %rcx
movq -0x8e8(%rbp), %rdx
movq -0x8f0(%rbp), %rsi
movq -0x8f8(%rbp), %rdi
movq -0x30(%rbp), %r9
movq -0x38(%rbp), %r8
movq 0x10(%rbp), %r10
movq %rsp, %rax
movq %r10, 0x8(%rax)
movq %r8, (%rax)
leaq -0x440(%rbp), %r8
callq 0xbd40
movl %eax, -0x8fc(%rbp)
jmp 0xa23c
movl -0x8fc(%rbp), %eax
movl %eax, -0x4(%rbp)
leaq -0x440(%rbp), %rdi
callq 0x3170
leaq -0x441(%rbp), %rdi
callq 0x32c0
jmp 0xa2b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0xa28b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x440(%rbp), %rdi
callq 0x3170
leaq -0x441(%rbp), %rdi
callq 0x32c0
jmp 0xa2c0
jmp 0xa29d
jmp 0xa29d
movq -0x30(%rbp), %rdi
leaq 0x89d8(%rip), %rsi      # 0x12c80
callq 0x33a0
movl $0x2005, -0x4(%rbp)     # imm = 0x2005
movl -0x4(%rbp), %eax
addq $0x910, %rsp            # imm = 0x910
popq %rbp
retq
movq -0x80(%rbp), %rdi
callq 0x3440
nopl (%rax)