// File: /workspace/github_cpp_makefile_star2_O2/BleuLlama[P]msf-tools/VoiceFile.cpp
// Function: VoiceFile::Dump()
int VoiceFile::Dump( void )
{
	if( !this->valid ) {
		std::cerr << "Invalid file!" << std::endl;
		return -10;
	}

	/* meta dump! */

	std::cout << "Folders:" << std::endl;
	std::cout << "   Voice Recorder at " << vrDir << std::endl;
	std::cout << "        Voice Dir is " << vrVoiceDir << std::endl;
	std::cout << "         MSF File is " << vrMSFFile << std::endl;
	std::cout << std::endl;

	/* folder dumps! */

	for( int f=0 ; f < this->GetFolderCount() ; f++ )
	{
		std::cout << "Folder " << f << " is named \"" << this->GetFolderName( f ) << "\"" << std::endl;
		std::cout << "   path: " << this->GetPathForFolder( f ) << std::endl;
		std::cout << "  count: " << this->GetFileCountForFolder( f ) << std::endl;

		for( int i=0 ; i < this->GetFileCountForFolder( f ) ; i++ )
		{
			std::cout << "     " << std::right << std::setw( 2 ) << i << ":" << std::endl;

			std::string indent( "       " );

			std::cout << indent << "  8.3: " << this->GetFileInFolder( i, f ) << std::endl;
			std::cout << indent << " date: " << this->PrintableDateForFileInFolder( i, f ) << std::endl;

			std::string lfn = DiskUtils::LFNFrom83( this->GetPathForFolder( f ), this->GetFileInFolder( i, f) );
			std::cout << indent << "  lfn: " << lfn << std::endl;
			std::cout << indent << "  sfn: " << this->SortableDateForFileInFolder( i, f ) << "__"
							 << this->GetFileInFolder( i, f ) << std::endl;

		}


		std::cout << std::endl;

	}

	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc8, %rsp
cmpb $0x0, (%rdi)
je 0x3157
movq %rdi, %r13
movq 0x426c(%rip), %r12      # 0x6fd0
leaq 0x13c7(%rip), %rsi      # 0x4132
movq %r12, %rdi
callq 0x2100
movq %rax, %rdi
callq 0x2080
leaq 0x13b9(%rip), %rsi      # 0x413b
movq %r12, %rdi
callq 0x2100
leaq 0x10(%r13), %rsi
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
leaq 0x13ac(%rip), %rsi      # 0x4151
movq %r12, %rdi
callq 0x2100
leaq 0x30(%r13), %rsi
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
leaq 0x139f(%rip), %rsi      # 0x4167
movq %r12, %rdi
callq 0x2100
leaq 0x50(%r13), %rsi
movq %rax, %rdi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq %r12, %rdi
callq 0x2080
leaq 0x8(%rsp), %rbp
leaq 0x28(%rsp), %rbx
xorl %r15d, %r15d
movq %r13, (%rsp)
cmpl $0x5, %r15d
je 0x3177
movq %r12, %rdi
leaq 0x136c(%rip), %rsi      # 0x417d
callq 0x2100
movq %rax, %rdi
movl %r15d, %esi
callq 0x21f0
movq %rax, %rdi
leaq 0x135a(%rip), %rsi      # 0x4185
callq 0x2100
movq %rax, %r14
movq %rbp, %rdi
movq %r13, %rsi
movl %r15d, %edx
callq 0x3208
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x1339(%rip), %rsi      # 0x418f
callq 0x2100
movq %rax, %rdi
callq 0x2080
movq %rbp, %rdi
callq 0x2060
movq %r12, %rdi
leaq 0x131c(%rip), %rsi      # 0x4191
callq 0x2100
movq %rax, %r14
movq %rbp, %rdi
movq %r13, %rsi
movl %r15d, %edx
callq 0x3250
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq %rbp, %rdi
callq 0x2060
movq %r12, %rdi
leaq 0x12eb(%rip), %rsi      # 0x419b
callq 0x2100
movq %rax, %r14
movq (%rsp), %rdi
movl %r15d, %esi
callq 0x32e8
movq %r14, %rdi
movl %eax, %esi
callq 0x21f0
movq %rax, %rdi
callq 0x2080
xorl %r12d, %r12d
movq (%rsp), %rdi
movl %r15d, %esi
callq 0x32e8
cmpl %eax, %r12d
jge 0x3137
movq 0x40db(%rip), %r14      # 0x6fd0
movq %r14, %rdi
leaq 0x12a8(%rip), %rsi      # 0x41a7
callq 0x2100
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
movl $0xffffff4f, %edi       # imm = 0xFFFFFF4F
andl %edi, %esi
orl $0x80, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x2, 0x10(%rax,%rcx)
movq %rax, %rdi
movl %r12d, %esi
callq 0x21f0
movq %rax, %rdi
leaq 0x1331(%rip), %rsi      # 0x4273
callq 0x2100
movq %rax, %rdi
callq 0x2080
leaq 0x8(%rsp), %rbp
movq %rbp, %rdi
leaq 0x1247(%rip), %rsi      # 0x41a5
movq %rbx, %rdx
callq 0x2956
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x1232(%rip), %rsi      # 0x41ad
callq 0x2100
movq %rax, %r14
movq %rbx, %rbp
movq %rbx, %rdi
movq (%rsp), %rsi
movl %r12d, %edx
movl %r15d, %ecx
callq 0x331c
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq %rbx, %rdi
callq 0x2060
movq 0x4016(%rip), %rdi      # 0x6fd0
leaq 0x8(%rsp), %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x11e7(%rip), %rsi      # 0x41b5
callq 0x2100
movq %rax, %r14
movq %rbx, %rbp
movq %rbx, %rdi
movq (%rsp), %rsi
movl %r12d, %edx
movl %r15d, %ecx
callq 0x33e4
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq %rbx, %rdi
callq 0x2060
leaq 0x48(%rsp), %rdi
movq (%rsp), %r14
movq %r14, %rsi
movl %r15d, %edx
callq 0x3250
leaq 0xa8(%rsp), %rbp
movq %rbp, %rdi
movq %r14, %rsi
movl %r12d, %edx
movl %r15d, %ecx
callq 0x331c
movq %rbx, %rdi
leaq 0x48(%rsp), %r14
movq %r14, %rsi
movq %rbp, %rdx
callq 0x25e8
movq %rbp, %rdi
callq 0x2060
movq %r14, %rdi
callq 0x2060
movq 0x3f73(%rip), %rdi      # 0x6fd0
leaq 0x8(%rsp), %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x114c(%rip), %rsi      # 0x41bd
callq 0x2100
movq %rax, %rdi
movq %rbx, %rsi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq 0x3f40(%rip), %rdi      # 0x6fd0
leaq 0x8(%rsp), %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x1121(%rip), %rsi      # 0x41c5
callq 0x2100
movq %rax, %r14
leaq 0x88(%rsp), %rbp
movq %rbp, %rdi
movq (%rsp), %rsi
movl %r12d, %edx
movl %r15d, %ecx
callq 0x34c2
movq %r14, %rdi
movq %rbp, %rsi
callq 0x20e0
movq %rax, %rdi
leaq 0x10f2(%rip), %rsi      # 0x41cd
callq 0x2100
movq %rax, %r13
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movq (%rsp), %rsi
movl %r12d, %edx
movl %r15d, %ecx
callq 0x331c
movq %r13, %rdi
movq %r14, %rsi
callq 0x20e0
movq %rax, %rdi
callq 0x2080
movq %r14, %rdi
callq 0x2060
movq %rbp, %rdi
callq 0x2060
movq %rbx, %rdi
callq 0x2060
leaq 0x8(%rsp), %rdi
callq 0x2060
incl %r12d
jmp 0x2ed9
movq 0x3e92(%rip), %r12      # 0x6fd0
movq %r12, %rdi
callq 0x2080
incl %r15d
leaq 0x8(%rsp), %rbp
movq (%rsp), %r13
jmp 0x2dfd
movq 0x3e92(%rip), %rdi      # 0x6ff0
leaq 0xfbf(%rip), %rsi       # 0x4124
callq 0x2100
movq %rax, %rdi
callq 0x2080
pushq $-0xa
popq %rax
jmp 0x3179
xorl %eax, %eax
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x31df
jmp 0x31df
jmp 0x31ba
jmp 0x31e4
movq %rax, %rbx
jmp 0x31fb
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x2060
jmp 0x31af
jmp 0x31df
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
jmp 0x31ec
jmp 0x31df
jmp 0x31df
movq %rax, %rbx
jmp 0x31ce
jmp 0x31e4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2060
leaq 0x88(%rsp), %rdi
callq 0x2060
jmp 0x31e7
jmp 0x31e4
movq %rax, %rbx
jmp 0x31f1
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2060
leaq 0x8(%rsp), %rdi
callq 0x2060
movq %rbx, %rdi
callq 0x2200
nop