// File: /workspace/github_cpp_makefile_star2_O2/nwieder[P]SSTS/src/Input/Standard_Ipt.cpp
// Function: nw::Standard_Ipt::read_Events(pugi::xml_node const&)
void Standard_Ipt::read_Events(xml_node const& nod){
	cout << "read_Events... ";
	info_path << "############ EVENTS ############" << endl;
	xml_node_iterator evt_it, li_it; // event iterator, special event iterator, list iterator

//	runs through every item of the Reaction Event List and creates the corresponding struct
	for(evt_it = nod.child("reactionEvtList").begin();
			evt_it != nod.child("reactionEvtList").end(); ++evt_it){
		Standard_Ipt::xml_Rct_Evt* xevt = new Standard_Ipt::xml_Rct_Evt;
		xevt->xml_id = atol(evt_it->attribute("id").value());
		info_path<< "id: " << xevt->xml_id;
		xevt->xml_name = (string)evt_it->child("name").child_value();
		info_path<< ", name: " << xevt->xml_name;
		xevt->xml_k = atof(evt_it->child("k").child_value());
		info_path<< ", k: " <<xevt->xml_k;
		info_path<< ", Voxel: ";
		for (li_it = evt_it->child("voxelVector").begin();
				li_it != evt_it->child("voxelVector").end(); ++li_it){
			xevt->xml_vxl.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();}
		info_path<< ", Educts: ";
		for (li_it = evt_it->child("educts").begin();
				li_it != evt_it->child("educts").end(); ++li_it){
			xevt->xml_educts.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();}
		info_path<< ", Products: ";
		for (li_it = evt_it->child("products").begin();
				li_it != evt_it->child("products").end(); ++li_it){
			xevt->xml_products.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();}
		info_path<< endl;
		xgd.xml_rct_evt_list.push_back(xevt);
	}

//	runs through every item of the Reaction Sub Unit Switch Reaction Event List and
//	creates the corresponding struct
	for(evt_it = nod.child("subUnitSwitchRctEvtList").begin();
			evt_it != nod.child("subUnitSwitchRctEvtList").end(); ++evt_it){
		Standard_Ipt::xml_SuSwitch_Rct_Evt* xevt = new Standard_Ipt::xml_SuSwitch_Rct_Evt;
		xevt->xml_id = atol(evt_it->attribute("id").value());
		info_path<< "id: " << xevt->xml_id;
		xevt->xml_name = (string)evt_it->child("name").child_value();
		info_path<< ", name: " << xevt->xml_name;
		xevt->xml_k = atof(evt_it->child("k").child_value());
		info_path<< ", k: " <<xevt->xml_k;
		xevt->xml_channel_id = atol(evt_it->child("channel").child_value());
		info_path<< ", channel; " << xevt->xml_channel_id;
		xevt->xml_actSu_id = atol(evt_it->child("actSubUnitID").child_value());
		info_path<< ", act su ID: " << xevt->xml_actSu_id;

		info_path<< ", Voxel: ";
		for (li_it = evt_it->child("voxelVector").begin();
				li_it != evt_it->child("voxelVector").end(); ++li_it){
			xevt->xml_vxl.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}
		info_path<< ", Educts: ";
		for (li_it = evt_it->child("educts").begin();
				li_it != evt_it->child("educts").end(); ++li_it){
			xevt->xml_educts.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}
		info_path<< ", Products: ";
		for (li_it = evt_it->child("products").begin();
				li_it != evt_it->child("products").end(); ++li_it){
			xevt->xml_products.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}
		info_path<< endl;
		xgd.xml_suSwitch_rct_evt_list.push_back(xevt);
	}

//	runs through every item of the Channel Flux Reaction Event List
//	and creates the corresponding struct
	for(evt_it = nod.child("channelFluxEvtList").begin();
		evt_it != nod.child("channelFluxEvtList").end(); ++evt_it){
		Standard_Ipt::xml_ChFlux_Rct_Evt* xevt = new Standard_Ipt::xml_ChFlux_Rct_Evt;
		xevt->xml_id = atol(evt_it->attribute("id").value());
		info_path<< "id: " << xevt->xml_id;
		xevt->xml_name = (string)evt_it->child("name").child_value();
		info_path<< ", name: " << xevt->xml_name;
		xevt->xml_k = atof(evt_it->child("k").child_value());
		info_path<< ", k: " <<xevt->xml_k;
		xevt->xml_channel_id = atol(evt_it->child("channel").child_value());
		info_path<< ", channel; " << xevt->xml_channel_id;

		info_path<< ", Voxel: ";
		for (li_it = evt_it->child("voxelVector").begin();
				li_it != evt_it->child("voxelVector").end(); ++li_it){
			xevt->xml_vxl.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}

		info_path<< ", Products: ";
		for (li_it = evt_it->child("products").begin();
				li_it != evt_it->child("products").end(); ++li_it){
			xevt->xml_products.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}
		info_path<< endl;
		xgd.xml_chFlux_rct_evt_list.push_back(xevt);
	}

//	runs through every item of the Diffusion Event List and creates the corresponding struct
	for(evt_it = nod.child("diffusionEvtList").begin();
			evt_it != nod.child("diffusionEvtList").end(); ++evt_it){
		Standard_Ipt::xml_Dif_Evt* xevt = new Standard_Ipt::xml_Dif_Evt;
		xevt->xml_id = atol(evt_it->attribute("id").value());
		info_path<< "id: " << xevt->xml_id;
		xevt->xml_name = (string)evt_it->child("name").child_value();
		info_path<< ", name: " << xevt->xml_name;
		xevt->xml_k = atof(evt_it->child("k").child_value());
		info_path<< ", k: " <<xevt->xml_k;
		xevt->xml_diff_spc = atol(evt_it->child("diffusionSpcID").child_value());
		info_path<< ", diffSpcID: " << xevt->xml_diff_spc;

		info_path<< ", Voxel: ";
		for (li_it = evt_it->child("voxelVector").begin();
				li_it != evt_it->child("voxelVector").end(); ++li_it){
			xevt->xml_vxl.push_back(atol(li_it->child_value()));
			info_path<< li_it->child_value();
		}
//		add the border voxel to the voxel vector of all diffusion events.
		if (xgd.xml_border_condition == "equilibrium"){
//		since the border voxel doesn't exist yet, xgd.xml_vxl_list.size() is the correct index.
			xevt->xml_vxl.push_back(xgd.xml_vxl_list.size());
			info_path << (xgd.xml_vxl_list.size());
		}
		info_path<< endl;

		xgd.xml_dif_evt_list.push_back(xevt);
	}
	cout << "DONE" << endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rsi, %r12
movq %rdi, %rbp
movq 0x280b7(%rip), %rdi     # 0x2efc8
leaq 0x1764d(%rip), %rsi     # 0x1e565
callq 0x4240
leaq 0x248(%rbp), %r15
leaq 0x1764a(%rip), %rsi     # 0x1e575
movq %r15, %rdi
callq 0x4240
movq %rax, %rdi
callq 0x4100
leaq 0x68(%rsp), %rbx
movq %rbx, %rdi
callq 0x10efc
leaq 0x38(%rsp), %r14
movq %r14, %rdi
callq 0x10efc
leaq 0x1763a(%rip), %rsi     # 0x1e596
movq %r12, 0x50(%rsp)
movq %r12, %rdi
callq 0xd3d6
leaq 0x18(%rsp), %r13
movq %rax, (%r13)
movq %r13, %rdi
callq 0xd348
movq %rax, (%rbx)
movq %rdx, 0x8(%rbx)
movq %rbp, 0x58(%rsp)
leaq 0xc8(%rbp), %rax
movq %rax, 0x48(%rsp)
movq %rsp, %r12
leaq 0x10(%rsp), %rbp
movq 0x50(%rsp), %rdi
leaq 0x175f0(%rip), %rsi     # 0x1e596
callq 0xd3d6
movq %rax, (%rsp)
movq %r12, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbx, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x73b5
pushq $0x78
popq %rdi
callq 0x4260
leaq 0x18(%rax), %rcx
movq %rcx, 0x8(%rax)
andq $0x0, 0x10(%rax)
movb $0x0, 0x18(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movups %xmm0, 0x60(%rax)
andq $0x0, 0x70(%rax)
movq %rax, (%rsp)
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x178d9(%rip), %rsi     # 0x1e8f4
callq 0xd512
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xcc7a
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, (%rcx)
movq %r15, %rdi
leaq 0x1742f(%rip), %rsi     # 0x1e475
callq 0x4240
movq (%rsp), %rcx
movq (%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1a1c8(%rip), %rsi     # 0x21234
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %rbp, %rdi
callq 0xd748
movq %r13, %rdi
movq %rax, %rsi
leaq 0xf(%rsp), %rdx
callq 0x8e86
movq (%rsp), %rdi
addq $0x8, %rdi
movq %r13, %rsi
callq 0x42e0
movq %r13, %rdi
callq 0x4568
movq %r15, %rdi
leaq 0x173ca(%rip), %rsi     # 0x1e47a
callq 0x4240
movq (%rsp), %rsi
addq $0x8, %rsi
movq %rax, %rdi
callq 0x4210
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x174cf(%rip), %rsi     # 0x1e5a6
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42f0
movq (%rsp), %rax
movsd %xmm0, 0x28(%rax)
movq %r15, %rdi
leaq 0x174a4(%rip), %rsi     # 0x1e5a8
callq 0x4240
movq (%rsp), %rcx
movsd 0x28(%rcx), %xmm0
movq %rax, %rdi
callq 0x4460
movq %r15, %rdi
leaq 0x1748a(%rip), %rsi     # 0x1e5ae
callq 0x4240
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1747d(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1744f(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %rbp, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x71ec
movq (%rsp), %r12
addq $0x30, %r12
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r12, %rdi
movq %r13, %rsi
callq 0x5908
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %r14, %rdi
callq 0x10fb8
jmp 0x7157
movq %r15, %rdi
leaq 0x173ce(%rip), %rsi     # 0x1e5c4
callq 0x4240
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x173c2(%rip), %rsi     # 0x1e5cf
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x17394(%rip), %rsi     # 0x1e5cf
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %rbp, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x72be
movq (%rsp), %r12
addq $0x48, %r12
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r12, %rdi
movq %r13, %rsi
callq 0x5908
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %r14, %rdi
callq 0x10fb8
jmp 0x7229
movq %r15, %rdi
leaq 0x1730e(%rip), %rsi     # 0x1e5d6
callq 0x4240
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x17304(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x172d6(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %rbp, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x7390
movq (%rsp), %r12
addq $0x60, %r12
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r12, %rdi
movq %r13, %rsi
callq 0x5908
movq %r14, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %r14, %rdi
callq 0x10fb8
jmp 0x72fb
movq %r15, %rdi
callq 0x4100
movq 0x48(%rsp), %rdi
movq %rsp, %r12
movq %r12, %rsi
callq 0x9046
movq %rbx, %rdi
callq 0x10fb8
jmp 0x6f9a
leaq 0x17230(%rip), %rsi     # 0x1e5ec
movq 0x50(%rsp), %rdi
callq 0xd3d6
leaq 0x18(%rsp), %r13
movq %rax, (%r13)
movq %r13, %rdi
callq 0xd348
leaq 0x68(%rsp), %rbp
movq %rax, (%rbp)
movq %rdx, 0x8(%rbp)
movq 0x58(%rsp), %rax
addq $0xf8, %rax
movq %rax, 0x48(%rsp)
movq %rsp, %r14
leaq 0x10(%rsp), %r12
leaq 0x38(%rsp), %rbx
movq 0x50(%rsp), %rdi
leaq 0x171df(%rip), %rsi     # 0x1e5ec
callq 0xd3d6
movq %rax, (%rsp)
movq %r14, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbp, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x78ca
movl $0x88, %edi
callq 0x4260
leaq 0x18(%rax), %rcx
movq %rcx, 0x8(%rax)
andq $0x0, 0x10(%rax)
movb $0x0, 0x18(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movups %xmm0, 0x60(%rax)
andq $0x0, 0x70(%rax)
movq %rax, (%rsp)
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x17470(%rip), %rsi     # 0x1e8f4
callq 0xd512
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xcc7a
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, (%rcx)
movq %r15, %rdi
leaq 0x16fc6(%rip), %rsi     # 0x1e475
callq 0x4240
movq (%rsp), %rcx
movq (%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x19d5f(%rip), %rsi     # 0x21234
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %r12, %rdi
callq 0xd748
movq %r13, %rdi
movq %rax, %rsi
leaq 0xf(%rsp), %rdx
callq 0x8e86
movq (%rsp), %rdi
addq $0x8, %rdi
movq %r13, %rsi
callq 0x42e0
movq %r13, %rdi
callq 0x4568
movq %r15, %rdi
leaq 0x16f61(%rip), %rsi     # 0x1e47a
callq 0x4240
movq (%rsp), %rsi
addq $0x8, %rsi
movq %rax, %rdi
callq 0x4210
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x17066(%rip), %rsi     # 0x1e5a6
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42f0
movq (%rsp), %rax
movsd %xmm0, 0x28(%rax)
movq %r15, %rdi
leaq 0x1703b(%rip), %rsi     # 0x1e5a8
callq 0x4240
movq (%rsp), %rcx
movsd 0x28(%rcx), %xmm0
movq %rax, %rdi
callq 0x4460
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1706f(%rip), %rsi     # 0x1e604
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, 0x80(%rcx)
movq %r15, %rdi
leaq 0x17048(%rip), %rsi     # 0x1e60c
callq 0x4240
movq (%rsp), %rcx
movq 0x80(%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1702a(%rip), %rsi     # 0x1e618
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, 0x78(%rcx)
movq %r15, %rdi
leaq 0x1700b(%rip), %rsi     # 0x1e625
callq 0x4240
movq (%rsp), %rcx
movq 0x78(%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %r15, %rdi
leaq 0x16f75(%rip), %rsi     # 0x1e5ae
callq 0x4240
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16f68(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16f3a(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %r12, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbx, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x7701
movq (%rsp), %r14
addq $0x30, %r14
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x5908
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbx, %rdi
callq 0x10fb8
jmp 0x766c
movq %r15, %rdi
leaq 0x16eb9(%rip), %rsi     # 0x1e5c4
callq 0x4240
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16ead(%rip), %rsi     # 0x1e5cf
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16e7f(%rip), %rsi     # 0x1e5cf
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %r12, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbx, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x77d3
movq (%rsp), %r14
addq $0x48, %r14
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x5908
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbx, %rdi
callq 0x10fb8
jmp 0x773e
movq %r15, %rdi
leaq 0x16df9(%rip), %rsi     # 0x1e5d6
callq 0x4240
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16def(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r13, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16dc1(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x10(%rsp)
movq %r12, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbx, %rdi
movq %r13, %rsi
callq 0x10f44
testb %al, %al
je 0x78a5
movq (%rsp), %r14
addq $0x60, %r14
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x5908
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbx, %rdi
callq 0x10fb8
jmp 0x7810
movq %r15, %rdi
callq 0x4100
movq 0x48(%rsp), %rdi
movq %rsp, %r14
movq %r14, %rsi
callq 0x9064
movq %rbp, %rdi
callq 0x10fb8
jmp 0x7401
leaq 0x16d62(%rip), %rsi     # 0x1e633
movq 0x50(%rsp), %rdi
callq 0xd3d6
leaq 0x18(%rsp), %r14
movq %rax, (%r14)
movq %r14, %rdi
callq 0xd348
leaq 0x68(%rsp), %r12
movq %rax, (%r12)
movq %rdx, 0x8(%r12)
movq 0x58(%rsp), %rax
addq $0x110, %rax            # imm = 0x110
movq %rax, 0x48(%rsp)
movq %rsp, %r13
leaq 0x38(%rsp), %rbp
movq 0x50(%rsp), %rdi
leaq 0x16d16(%rip), %rsi     # 0x1e633
callq 0xd3d6
movq %rax, (%rsp)
movq %r13, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %r12, %rdi
movq %r14, %rsi
callq 0x10f44
testb %al, %al
je 0x7cbb
movq %r13, %rbx
movl $0x80, %edi
callq 0x4260
leaq 0x18(%rax), %rcx
movq %rcx, 0x8(%rax)
andq $0x0, 0x10(%rax)
movb $0x0, 0x18(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rax)
movups %xmm0, 0x40(%rax)
movups %xmm0, 0x50(%rax)
movups %xmm0, 0x60(%rax)
andq $0x0, 0x70(%rax)
movq %rax, (%rsp)
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16f5d(%rip), %rsi     # 0x1e8f4
callq 0xd512
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xcc7a
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, (%rcx)
movq %r15, %rdi
leaq 0x16ab3(%rip), %rsi     # 0x1e475
callq 0x4240
movq (%rsp), %rcx
movq (%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1984c(%rip), %rsi     # 0x21234
callq 0xd3d6
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
callq 0xd748
movq %r14, %rdi
movq %rax, %rsi
leaq 0xf(%rsp), %rdx
callq 0x8e86
movq (%rsp), %rdi
addq $0x8, %rdi
movq %r14, %rsi
callq 0x42e0
movq %r14, %rdi
callq 0x4568
movq %r15, %rdi
leaq 0x16a4c(%rip), %rsi     # 0x1e47a
callq 0x4240
movq (%rsp), %rsi
addq $0x8, %rsi
movq %rax, %rdi
callq 0x4210
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16b51(%rip), %rsi     # 0x1e5a6
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42f0
movq (%rsp), %rax
movsd %xmm0, 0x28(%rax)
movq %r15, %rdi
leaq 0x16b26(%rip), %rsi     # 0x1e5a8
callq 0x4240
movq (%rsp), %rcx
movsd 0x28(%rcx), %xmm0
movq %rax, %rdi
callq 0x4460
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16b5a(%rip), %rsi     # 0x1e604
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, 0x78(%rcx)
movq %r15, %rdi
leaq 0x16b36(%rip), %rsi     # 0x1e60c
callq 0x4240
movq (%rsp), %rcx
movq 0x78(%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %r15, %rdi
leaq 0x16ab9(%rip), %rsi     # 0x1e5ae
callq 0x4240
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16aac(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16a7e(%rip), %rsi     # 0x1e5b8
callq 0xd3d6
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbp, %rdi
movq %r14, %rsi
callq 0x10f44
testb %al, %al
je 0x7bbf
movq (%rsp), %r13
addq $0x30, %r13
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r13, %rdi
movq %r14, %rsi
callq 0x5908
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbp, %rdi
callq 0x10fb8
jmp 0x7b28
movq %r15, %rdi
leaq 0x16a0d(%rip), %rsi     # 0x1e5d6
callq 0x4240
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16a03(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %rbx, %r13
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x169d2(%rip), %rsi     # 0x1e5e3
callq 0xd3d6
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbp, %rdi
movq %r14, %rsi
callq 0x10f44
testb %al, %al
je 0x7c99
movq (%rsp), %r13
addq $0x60, %r13
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r13, %rdi
movq %rbx, %r13
movq %r14, %rsi
callq 0x5908
movq %rbp, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbp, %rdi
callq 0x10fb8
jmp 0x7bff
movq %r15, %rdi
callq 0x4100
movq 0x48(%rsp), %rdi
movq %r13, %rsi
callq 0x9082
movq %r12, %rdi
callq 0x10fb8
jmp 0x7911
leaq 0x16984(%rip), %rsi     # 0x1e646
movq 0x50(%rsp), %rdi
callq 0xd3d6
leaq 0x18(%rsp), %r14
movq %rax, (%r14)
movq %r14, %rdi
callq 0xd348
leaq 0x68(%rsp), %r12
movq %rax, (%r12)
movq %rdx, 0x8(%r12)
movq 0x58(%rsp), %rax
leaq 0x50(%rax), %rcx
movq %rcx, 0x48(%rsp)
addq $0xe0, %rax
movq %rax, 0x60(%rsp)
movq %rsp, %r13
leaq 0x168ab(%rip), %rbp     # 0x1e5b8
leaq 0x38(%rsp), %rbx
movq 0x50(%rsp), %rdi
leaq 0x16928(%rip), %rsi     # 0x1e646
callq 0xd3d6
movq %rax, (%rsp)
movq %r13, %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %r12, %rdi
movq %r14, %rsi
callq 0x10f44
testb %al, %al
je 0x802a
pushq $0x50
popq %rdi
callq 0x4260
leaq 0x18(%rax), %rcx
movq %rcx, 0x8(%rax)
andq $0x0, 0x10(%rax)
movb $0x0, 0x18(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x30(%rax)
andq $0x0, 0x40(%rax)
movq %rax, (%rsp)
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16b6d(%rip), %rsi     # 0x1e8f4
callq 0xd512
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xcc7a
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, (%rcx)
movq %r15, %rdi
leaq 0x166c3(%rip), %rsi     # 0x1e475
callq 0x4240
movq (%rsp), %rcx
movq (%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x1945c(%rip), %rsi     # 0x21234
callq 0xd3d6
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
callq 0xd748
movq %r14, %rdi
movq %rax, %rsi
leaq 0xf(%rsp), %rdx
callq 0x8e86
movq (%rsp), %rdi
addq $0x8, %rdi
movq %r14, %rsi
callq 0x42e0
movq %r14, %rdi
callq 0x4568
movq %r15, %rdi
leaq 0x1665c(%rip), %rsi     # 0x1e47a
callq 0x4240
movq (%rsp), %rsi
addq $0x8, %rsi
movq %rax, %rdi
callq 0x4210
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x16761(%rip), %rsi     # 0x1e5a6
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42f0
movq (%rsp), %rax
movsd %xmm0, 0x28(%rax)
movq %r15, %rdi
leaq 0x16736(%rip), %rsi     # 0x1e5a8
callq 0x4240
movq (%rsp), %rcx
movsd 0x28(%rcx), %xmm0
movq %rax, %rdi
callq 0x4460
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
leaq 0x167bd(%rip), %rsi     # 0x1e657
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq (%rsp), %rcx
movq %rax, 0x48(%rcx)
movq %r15, %rdi
leaq 0x167a0(%rip), %rsi     # 0x1e666
callq 0x4240
movq (%rsp), %rcx
movq 0x48(%rcx), %rsi
movq %rax, %rdi
callq 0x4230
movq %r15, %rdi
leaq 0x166c9(%rip), %rsi     # 0x1e5ae
callq 0x4240
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
movq %rbp, %rsi
callq 0xd3d6
movq %rax, 0x18(%rsp)
movq %r14, %rdi
callq 0xd348
movq %rax, 0x38(%rsp)
movq %rdx, 0x40(%rsp)
movq %r12, %rdi
callq 0x10f8e
movq %rax, %rdi
movq %rbp, %rsi
callq 0xd3d6
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
callq 0xd358
movq %rax, 0x18(%rsp)
movq %rdx, 0x20(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x10f44
testb %al, %al
je 0x7faa
movq (%rsp), %r13
addq $0x30, %r13
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %rax, %rdi
callq 0x42c0
movq %rax, 0x18(%rsp)
movq %r13, %rdi
movq %rsp, %r13
movq %r14, %rsi
callq 0x5908
movq %rbx, %rdi
callq 0x10f8e
movq %rax, %rdi
callq 0xd748
movq %r15, %rdi
movq %rax, %rsi
callq 0x4240
movq %rbx, %rdi
callq 0x10fb8
jmp 0x7f14
movq 0x48(%rsp), %rdi
leaq 0x166be(%rip), %rsi     # 0x1e674
callq 0x909f
testb %al, %al
je 0x8008
movq (%rsp), %rdi
addq $0x30, %rdi
movq 0x58(%rsp), %r13
movq 0x130(%r13), %rax
subq 0x128(%r13), %rax
sarq $0x3, %rax
movq %rax, 0x18(%rsp)
movq %r14, %rsi
callq 0x5908
movq 0x130(%r13), %rsi
subq 0x128(%r13), %rsi
movq %rsp, %r13
sarq $0x3, %rsi
movq %r15, %rdi
callq 0x4160
movq %r15, %rdi
callq 0x4100
movq 0x60(%rsp), %rdi
movq %r13, %rsi
callq 0x90ac
movq %r12, %rdi
callq 0x10fb8
jmp 0x7d12
movq 0x26f97(%rip), %rdi     # 0x2efc8
leaq 0x164b1(%rip), %rsi     # 0x1e4e9
callq 0x4240
movq %rax, %rdi
callq 0x4100
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq