// File: /workspace/github_cpp_makefile_star2_O3/tplinderoth[P]introDist/introDist.cpp
// Function: comp3DistInfo(unsigned int, unsigned int)
void comp3DistInfo (unsigned int windsize, unsigned int stepsize) {
	int w = 12;
	std::cerr << "\nintroDist comp3Dist [-freq] [-geno]\n"
	<< "\nInput:\n"
	<< std::setw(w) << std::left << "-freq" << std::setw(w) << "FILE" << "file with (1) chr, (2) position, (3) population1 allele frequency, (4) population2 allele frequency\n"
	<< std::setw(w) << std::left << "-geno" << std::setw(w) << "FILE" << "file with (1) chr, (2) position, (3) individual1 genotypes, (4) individual2 genotypes\n"
	<< std::setw(w) << std::left << "-window" << std::setw(w) << "INT" << "Window size in number of sites " << "[" << windsize << "]" << "\n"
	<< std::setw(w) << std::left << "-step" << std::setw(w) << "INT" << "step size in number of sites " << "[" << stepsize << "]" << "\n"
	<< "\nIt is assumed that individual1 belongs to population1 and that individual2 belongs to population2\n"
	<< "\nOutput:\n"
	<< "(1) chr\n"
	<< "(2) window start\n"
	<< "(3) window stop\n"
	<< "(4) window position midpoint\n"
	<< "(5) genetic distance statistic\n"
	<< "(6) number of sites with data in window\n"
	<< "\n";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %esi, -0x2c(%rbp)
movl %edi, %r15d
movq 0x9143(%rip), %r14      # 0xdff0
leaq 0x5b72(%rip), %rsi      # 0xaa26
movl $0x25, %edx
movq %r14, %rdi
callq 0x3250
leaq 0x5814(%rip), %rsi      # 0xa6dc
movl $0x8, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rcx
movl $0xc, %r12d
movq %r12, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl $0xffffff4f, %r13d      # imm = 0xFFFFFF4F
movl 0x18(%r14,%rax), %ecx
andl %r13d, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x519d(%rip), %rsi      # 0xa0a5
movl $0x5, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %r12, 0x10(%r14,%rax)
leaq 0x57bd(%rip), %rbx      # 0xa6e5
movl $0x4, %edx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3250
leaq 0x57ab(%rip), %rsi      # 0xa6ea
movl $0x64, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r12, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %r13d, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x515e(%rip), %rsi      # 0xa0d1
movl $0x5, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %r12, 0x10(%r14,%rax)
movl $0x4, %edx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3250
leaq 0x5aa9(%rip), %rsi      # 0xaa4c
movl $0x56, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r12, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %r13d, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x511e(%rip), %rsi      # 0xa0f5
movl $0x7, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rax
movq %r12, 0x10(%r14,%rax)
leaq 0x5793(%rip), %rsi      # 0xa78a
movl $0x3, %edx
movq %r14, %rdi
callq 0x3250
leaq 0x5783(%rip), %rsi      # 0xa78e
movl $0x1f, %edx
movq %r14, %rdi
callq 0x3250
leaq 0x578f(%rip), %rsi      # 0xa7ae
movl $0x1, %edx
movq %r14, %rdi
callq 0x3250
movl %r15d, %esi
movq %r14, %rdi
callq 0x3150
movq %rax, %rbx
leaq 0x576f(%rip), %r15      # 0xa7b0
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3250
leaq 0x5b5a(%rip), %r14      # 0xabb2
movl $0x1, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3250
movq (%rbx), %rax
movq -0x18(%rax), %rcx
movq %r12, 0x10(%rbx,%rcx)
movq -0x18(%rax), %rax
andl 0x18(%rbx,%rax), %r13d
orl $0x20, %r13d
movl %r13d, 0x18(%rbx,%rax)
leaq 0x5070(%rip), %rsi      # 0xa0fd
movl $0x5, %edx
movq %rbx, %rdi
callq 0x3250
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %r12, 0x10(%rbx,%rax)
movl $0x3, %edx
movq %rbx, %rdi
leaq 0x56d5(%rip), %rsi      # 0xa78a
callq 0x3250
leaq 0x56f1(%rip), %rsi      # 0xa7b2
movl $0x1d, %edx
movq %rbx, %rdi
callq 0x3250
movl $0x1, %edx
movq %rbx, %rdi
leaq 0x56d1(%rip), %rsi      # 0xa7ae
callq 0x3250
movl -0x2c(%rbp), %esi
movq %rbx, %rdi
callq 0x3150
movq %rax, %rbx
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x3250
movl $0x1, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3250
leaq 0x598c(%rip), %rsi      # 0xaaa3
movl $0x63, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x585e(%rip), %rsi      # 0xa989
movl $0x9, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x5854(%rip), %rsi      # 0xa993
movl $0x8, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x5849(%rip), %rsi      # 0xa99c
movl $0x11, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x5847(%rip), %rsi      # 0xa9ae
movl $0x10, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x5844(%rip), %rsi      # 0xa9bf
movl $0x1d, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x584e(%rip), %rsi      # 0xa9dd
movl $0x1f, %edx
movq %rbx, %rdi
callq 0x3250
leaq 0x585a(%rip), %rsi      # 0xa9fd
movl $0x28, %edx
movq %rbx, %rdi
callq 0x3250
movl $0x1, %edx
movq %rbx, %rdi
movq %r14, %rsi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3250