// File: /workspace/github_cpp_makefile_star2_O2/GAStudyGroup[P]GPX2/src/base/sources/Log.cpp
// Function: Log::initLogFile()
ofstream* Log::initLogFile(){
    string logName{"log/"+to_string(Config::NEW_POP_TYPE)+"/log_"+to_string(Config::ID)+"_"+Config::NAME+"_"+to_string(Config::POP_SIZE)+(Config::LK_PERCENTAGE>0?("_LK-"+to_string(Config::LK_PERCENTAGE*100)):(""))+"_"+to_string(Config::NEW_TOUR_MODE)+".log"};
    
    ofstream *logFile = new ofstream(logName);
    if(!logFile->is_open()){
        cout<<"falha na abertura do arquivo de log"<<endl;
        exit(0);
    }

    return logFile;
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
leaq 0x322f7(%rip), %rax     # 0x3c7a4
movl (%rax), %esi
leaq 0x208(%rsp), %rbx
movq %rbx, %rdi
callq 0xb68c
leaq 0x1cf42(%rip), %rsi     # 0x27408
leaq 0xa8(%rsp), %rdi
movq %rbx, %rdx
callq 0xb668
leaq 0x1cf30(%rip), %rdx     # 0x2740d
leaq 0xc8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0xb5c3
leaq 0x32377(%rip), %rax     # 0x3c870
movl (%rax), %esi
leaq 0x88(%rsp), %rdi
callq 0xb68c
leaq 0xe8(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
leaq 0x88(%rsp), %rdx
callq 0xb5e2
leaq 0x1cee5(%rip), %rdx     # 0x27411
leaq 0x108(%rsp), %rdi
leaq 0xe8(%rsp), %rsi
callq 0xb5c3
leaq 0x32330(%rip), %rdx     # 0x3c878
leaq 0x128(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0xb649
leaq 0x1cead(%rip), %rdx     # 0x27411
leaq 0x148(%rsp), %rdi
leaq 0x128(%rsp), %rsi
callq 0xb5c3
leaq 0x32340(%rip), %rax     # 0x3c8c0
movl (%rax), %esi
leaq 0x68(%rsp), %rdi
callq 0xb68c
leaq 0x168(%rsp), %rdi
leaq 0x148(%rsp), %rsi
leaq 0x68(%rsp), %rdx
callq 0xb5e2
leaq 0x3230b(%rip), %rax     # 0x3c8b8
movsd (%rax), %xmm1
xorpd %xmm0, %xmm0
ucomisd %xmm0, %xmm1
movsd %xmm1, (%rsp)
ja 0xa5d8
leaq 0x1e37f(%rip), %rsi     # 0x28946
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x6cfa
jmp 0xa604
movsd 0x1ce10(%rip), %xmm0    # 0x273f0
mulsd %xmm1, %xmm0
leaq 0x8(%rsp), %rdi
callq 0xb6cb
leaq 0x1ce1e(%rip), %rsi     # 0x27413
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0xb668
leaq 0x188(%rsp), %rdi
leaq 0x168(%rsp), %rsi
leaq 0x28(%rsp), %rdx
callq 0xb5e2
leaq 0x1cdec(%rip), %rdx     # 0x27411
leaq 0x1a8(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0xb5c3
leaq 0x32177(%rip), %rax     # 0x3c7b8
movl (%rax), %esi
leaq 0x48(%rsp), %rdi
callq 0xb68c
leaq 0x1c8(%rsp), %rdi
leaq 0x1a8(%rsp), %rsi
leaq 0x48(%rsp), %rdx
callq 0xb5e2
leaq 0x1cdaa(%rip), %rdx     # 0x27418
leaq 0x1e8(%rsp), %rdi
leaq 0x1c8(%rsp), %rsi
callq 0xb5c3
leaq 0x1c8(%rsp), %rdi
callq 0x56f8
leaq 0x48(%rsp), %rdi
callq 0x56f8
leaq 0x1a8(%rsp), %rdi
callq 0x56f8
leaq 0x188(%rsp), %rdi
callq 0x56f8
leaq 0x28(%rsp), %rdi
callq 0x56f8
xorpd %xmm0, %xmm0
movsd (%rsp), %xmm1
ucomisd %xmm0, %xmm1
jbe 0xa6d7
leaq 0x8(%rsp), %rdi
callq 0x56f8
leaq 0x168(%rsp), %rdi
callq 0x56f8
leaq 0x68(%rsp), %rdi
callq 0x56f8
leaq 0x148(%rsp), %rdi
callq 0x56f8
leaq 0x128(%rsp), %rdi
callq 0x56f8
leaq 0x108(%rsp), %rdi
callq 0x56f8
leaq 0xe8(%rsp), %rdi
callq 0x56f8
leaq 0x88(%rsp), %rdi
callq 0x56f8
leaq 0xc8(%rsp), %rdi
callq 0x56f8
leaq 0xa8(%rsp), %rdi
callq 0x56f8
leaq 0x208(%rsp), %rdi
callq 0x56f8
movl $0x200, %edi            # imm = 0x200
callq 0x5380
movq %rax, %r14
leaq 0x1e8(%rsp), %rsi
pushq $0x10
popq %rdx
movq %rax, %rdi
callq 0x56b0
movq %r14, %rdi
addq $0x70, %rdi
callq 0x50c0
testb %al, %al
je 0xa7a1
leaq 0x1e8(%rsp), %rdi
callq 0x56f8
movq %r14, %rax
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r14
retq
movq 0x317f8(%rip), %rdi     # 0x3bfa0
leaq 0x1cc6e(%rip), %rsi     # 0x2741d
callq 0x5370
movq %rax, %rdi
callq 0x51c0
xorl %edi, %edi
callq 0x5430
movq %rax, %rbx
jmp 0xa84b
jmp 0xa7cd
movq %rax, %rbx
jmp 0xa855
movq %rax, %rbx
movl $0x200, %esi            # imm = 0x200
movq %r14, %rdi
callq 0x5390
jmp 0xa90c
movq %rax, %rbx
leaq 0x1c8(%rsp), %rdi
callq 0x56f8
jmp 0xa7ff
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x56f8
jmp 0xa80e
movq %rax, %rbx
leaq 0x1a8(%rsp), %rdi
callq 0x56f8
jmp 0xa820
movq %rax, %rbx
leaq 0x188(%rsp), %rdi
callq 0x56f8
jmp 0xa832
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x56f8
xorpd %xmm0, %xmm0
movsd (%rsp), %xmm1
ucomisd %xmm0, %xmm1
jbe 0xa855
leaq 0x8(%rsp), %rdi
callq 0x56f8
leaq 0x168(%rsp), %rdi
callq 0x56f8
leaq 0x68(%rsp), %rdi
callq 0x56f8
leaq 0x148(%rsp), %rdi
callq 0x56f8
leaq 0x128(%rsp), %rdi
callq 0x56f8
leaq 0x108(%rsp), %rdi
callq 0x56f8
leaq 0xe8(%rsp), %rdi
callq 0x56f8
leaq 0x88(%rsp), %rdi
callq 0x56f8
leaq 0xc8(%rsp), %rdi
callq 0x56f8
leaq 0xa8(%rsp), %rdi
callq 0x56f8
leaq 0x208(%rsp), %rdi
callq 0x56f8
movq %rbx, %rdi
callq 0x5610
movq %rax, %rbx
jmp 0xa862
movq %rax, %rbx
jmp 0xa86c
movq %rax, %rbx
jmp 0xa879
movq %rax, %rbx
jmp 0xa886
movq %rax, %rbx
jmp 0xa893
movq %rax, %rbx
jmp 0xa8a0
movq %rax, %rbx
jmp 0xa8ad
movq %rax, %rbx
jmp 0xa8ba
movq %rax, %rbx
jmp 0xa8c7
movq %rax, %rbx
leaq 0x1e8(%rsp), %rdi
jmp 0xa8cf