// File: pelrun[P]aft/COptionParser.cpp
// Function: COptionParser::PrintUsage(std::ostream&) const
void COptionParser::PrintUsage(std::ostream &str) const
{
	int i=0;
	int j=0;
	str << "Usage : " << _applicationName << " " << _applicationShortUsage << " ";
	while (_options[i].shortName !=0)
	{
		if (_options[i].nbMin == 0)
			str << "[";
		else
			str << "<";
		str << "-" << _options[i].shortName;
		for (j=0;j<_options[i].nbArgs;j++)
			str << " $" << j+1;
		if (_options[i].nbMin == 0)
		{
			str << "]";
			if (_options[i].nbMax == 0)
				str << "*";
		}
		else
		{
			str << ">";
			if (_options[i].nbMax == 0)
				str << "+";
		}
		str << " ";
		i++;
	}
	str << "[-h]";
	str << std::endl << std::endl << _applicationName <<  _applicationLongUsage << std::endl << std::endl;
	i = 0;
	while (_options[i].shortName !=0)
	{
		str << "\t-" << _options[i].shortName;
		for (j=0;j<_options[i].nbArgs;j++)
			str << " <$" << j+1 << ">";
		str << " | --" << _options[i].longName;
		for (j=0;j<_options[i].nbArgs;j++)
			str << " <$" << j+1 << ">";
		str << "\n\t\t" << _options[i].description << std::endl;
		i++;
	}
	str << "\t-h | --help\n\t\tDisplay help" << std::endl << std::endl;

	str << "Mail : " << _authorMail << std::endl;
}

// Assembly:
subq $0x28, %rsp
movq %rdi, 0x20(%rsp)
movq %rsi, 0x18(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x8(%rsp)
movl $0x0, 0x14(%rsp)
movl $0x0, 0x10(%rsp)
movq 0x18(%rsp), %rdi
leaq 0x8d02(%rip), %rsi      # 0x15986
callq 0x42f0
movq 0x8(%rsp), %rsi
movq %rax, %rdi
addq $0x10, %rsi
callq 0x42b0
movq %rax, %rdi
leaq 0x8cd4(%rip), %rsi      # 0x15978
callq 0x42f0
movq 0x8(%rsp), %rsi
movq %rax, %rdi
addq $0x30, %rsi
callq 0x42b0
movq %rax, %rdi
leaq 0x8cb4(%rip), %rsi      # 0x15978
callq 0x42f0
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
je 0xce60
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x10(%rax)
jne 0xcd16
movq 0x18(%rsp), %rdi
leaq 0x8c80(%rip), %rsi      # 0x1598f
callq 0x42f0
jmp 0xcd27
movq 0x18(%rsp), %rdi
leaq 0x8c6f(%rip), %rsi      # 0x15991
callq 0x42f0
movq 0x18(%rsp), %rdi
leaq 0x8c6d(%rip), %rsi      # 0x159a0
callq 0x42f0
movq %rax, %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movsbl (%rax), %esi
callq 0x4400
movl $0x0, 0x10(%rsp)
movq 0x8(%rsp), %rcx
movl 0x10(%rsp), %eax
movq (%rcx), %rcx
movslq 0x14(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rcx
cmpl 0x18(%rcx), %eax
jge 0xcda9
movq 0x18(%rsp), %rdi
leaq 0x8c0b(%rip), %rsi      # 0x15993
callq 0x42f0
movq %rax, %rdi
movl 0x10(%rsp), %esi
addl $0x1, %esi
callq 0x45f0
movl 0x10(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x10(%rsp)
jmp 0xcd5f
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x10(%rax)
jne 0xce01
movq 0x18(%rsp), %rdi
leaq 0x8bce(%rip), %rsi      # 0x1599d
callq 0x42f0
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x14(%rax)
jne 0xcdff
movq 0x18(%rsp), %rdi
leaq 0x8b9c(%rip), %rsi      # 0x15996
callq 0x42f0
jmp 0xce3f
movq 0x18(%rsp), %rdi
leaq 0x8d18(%rip), %rsi      # 0x15b25
callq 0x42f0
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x14(%rax)
jne 0xce3d
movq 0x18(%rsp), %rdi
leaq 0x8b60(%rip), %rsi      # 0x15998
callq 0x42f0
jmp 0xce3f
movq 0x18(%rsp), %rdi
leaq 0x8b2d(%rip), %rsi      # 0x15978
callq 0x42f0
movl 0x14(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0xccc9
movq 0x18(%rsp), %rdi
leaq 0x8b2e(%rip), %rsi      # 0x1599a
callq 0x42f0
movq 0x18(%rsp), %rdi
movq 0xe12b(%rip), %rsi      # 0x1afa8
callq 0x4360
movq %rax, %rdi
movq 0xe11c(%rip), %rsi      # 0x1afa8
callq 0x4360
movq 0x8(%rsp), %rsi
movq %rax, %rdi
addq $0x10, %rsi
callq 0x42b0
movq 0x8(%rsp), %rsi
movq %rax, %rdi
addq $0x50, %rsi
callq 0x42b0
movq %rax, %rdi
movq 0xe0eb(%rip), %rsi      # 0x1afa8
callq 0x4360
movq %rax, %rdi
movq 0xe0dc(%rip), %rsi      # 0x1afa8
callq 0x4360
movl $0x0, 0x14(%rsp)
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
je 0xd06c
movq 0x18(%rsp), %rdi
leaq 0x8a9a(%rip), %rsi      # 0x1599f
callq 0x42f0
movq %rax, %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movsbl (%rax), %esi
callq 0x4400
movl $0x0, 0x10(%rsp)
movq 0x8(%rsp), %rcx
movl 0x10(%rsp), %eax
movq (%rcx), %rcx
movslq 0x14(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rcx
cmpl 0x18(%rcx), %eax
jge 0xcf8a
movq 0x18(%rsp), %rdi
leaq 0x8a48(%rip), %rsi      # 0x159a2
callq 0x42f0
movq %rax, %rdi
movl 0x10(%rsp), %esi
addl $0x1, %esi
callq 0x45f0
movq %rax, %rdi
leaq 0x8bad(%rip), %rsi      # 0x15b25
callq 0x42f0
movl 0x10(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x10(%rsp)
jmp 0xcf31
movq 0x18(%rsp), %rdi
leaq 0x8a10(%rip), %rsi      # 0x159a6
callq 0x42f0
movq %rax, %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq 0x8(%rax), %rsi
callq 0x42f0
movl $0x0, 0x10(%rsp)
movq 0x8(%rsp), %rcx
movl 0x10(%rsp), %eax
movq (%rcx), %rcx
movslq 0x14(%rsp), %rdx
imulq $0x28, %rdx, %rdx
addq %rdx, %rcx
cmpl 0x18(%rcx), %eax
jge 0xd01c
movq 0x18(%rsp), %rdi
leaq 0x89b6(%rip), %rsi      # 0x159a2
callq 0x42f0
movq %rax, %rdi
movl 0x10(%rsp), %esi
addl $0x1, %esi
callq 0x45f0
movq %rax, %rdi
leaq 0x8b1b(%rip), %rsi      # 0x15b25
callq 0x42f0
movl 0x10(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x10(%rsp)
jmp 0xcfc3
movq 0x18(%rsp), %rdi
leaq 0x8984(%rip), %rsi      # 0x159ac
callq 0x42f0
movq %rax, %rdi
movq 0x8(%rsp), %rax
movq (%rax), %rax
movslq 0x14(%rsp), %rcx
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movq 0x20(%rax), %rsi
callq 0x42f0
movq %rax, %rdi
movq 0xdf51(%rip), %rsi      # 0x1afa8
callq 0x4360
movl 0x14(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x14(%rsp)
jmp 0xced9
movq 0x18(%rsp), %rdi
leaq 0x8938(%rip), %rsi      # 0x159b0
callq 0x42f0
movq %rax, %rdi
movq 0xdf21(%rip), %rsi      # 0x1afa8
callq 0x4360
movq %rax, %rdi
movq 0xdf12(%rip), %rsi      # 0x1afa8
callq 0x4360
movq 0x18(%rsp), %rdi
leaq 0x8925(%rip), %rsi      # 0x159cc
callq 0x42f0
movq 0x8(%rsp), %rsi
movq %rax, %rdi
addq $0x90, %rsi
callq 0x42b0
movq %rax, %rdi
movq 0xdede(%rip), %rsi      # 0x1afa8
callq 0x4360
addq $0x28, %rsp
retq
nopw %cs:(%rax,%rax)
nop