// File: AlexTheMagnus[P]Project_Hex/src/infraestructure/fileReaderMapper.cc
// Function: NativeFileReaderMapper::mapFileToApps(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
std::vector<App> mapFileToApps(string infoFilePath) {
        vector<App> apps;
        ifstream fileInfo = openFile(infoFilePath);
        string settingfileName, newIconName;

        while (getline(fileInfo, settingfileName, ',')) {
            getline(fileInfo, newIconName, '\n');

            App *auxiliaryApp = new App;
            auxiliaryApp->setSettingFileName(settingfileName);
            auxiliaryApp->setNewIconName(newIconName);

            apps.push_back(*auxiliaryApp);
        }

        return apps;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x330, %rsp            # imm = 0x330
movq %rdx, -0x2e8(%rbp)
movq %rdi, -0x300(%rbp)
movq %rdi, %rax
movq %rax, -0x2f8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x2f0(%rbp)
movb $0x0, -0x19(%rbp)
callq 0x4330
movq -0x2e8(%rbp), %rsi
leaq -0x248(%rbp), %rdi
callq 0x30d0
jmp 0x3bc8
movq -0x2f0(%rbp), %rsi
leaq -0x228(%rbp), %rdi
leaq -0x248(%rbp), %rdx
callq 0x4350
jmp 0x3be4
leaq -0x248(%rbp), %rdi
callq 0x3140
leaq -0x278(%rbp), %rdi
callq 0x32c0
leaq -0x298(%rbp), %rdi
callq 0x32c0
leaq -0x228(%rbp), %rdi
leaq -0x278(%rbp), %rsi
movl $0x2c, %edx
callq 0x3390
movq %rax, -0x308(%rbp)
jmp 0x3c29
movq -0x308(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x32a0
movb %al, -0x309(%rbp)
jmp 0x3c47
movb -0x309(%rbp), %al
testb $0x1, %al
jne 0x3c56
jmp 0x3dcd
leaq -0x228(%rbp), %rdi
leaq -0x298(%rbp), %rsi
movl $0xa, %edx
callq 0x3390
jmp 0x3c70
movl $0x40, %edi
callq 0x3200
movq %rax, -0x318(%rbp)
jmp 0x3c83
movq -0x318(%rbp), %rdi
callq 0x4410
movq -0x318(%rbp), %rax
movq %rax, -0x2a0(%rbp)
movq -0x2a0(%rbp), %rax
movq %rax, -0x320(%rbp)
leaq -0x2c0(%rbp), %rdi
leaq -0x278(%rbp), %rsi
callq 0x30d0
jmp 0x3cc0
movq -0x320(%rbp), %rdi
leaq -0x2c0(%rbp), %rsi
callq 0x4440
jmp 0x3cd5
leaq -0x2c0(%rbp), %rdi
callq 0x3140
movq -0x2a0(%rbp), %rax
movq %rax, -0x328(%rbp)
leaq -0x2e0(%rbp), %rdi
leaq -0x298(%rbp), %rsi
callq 0x30d0
jmp 0x3d04
movq -0x328(%rbp), %rdi
leaq -0x2e0(%rbp), %rsi
callq 0x4460
jmp 0x3d19
leaq -0x2e0(%rbp), %rdi
callq 0x3140
movq -0x300(%rbp), %rdi
movq -0x2a0(%rbp), %rsi
callq 0x4490
jmp 0x3d3a
jmp 0x3c08
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x250(%rbp)
movl %eax, -0x254(%rbp)
jmp 0x3e3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x250(%rbp)
movl %eax, -0x254(%rbp)
leaq -0x248(%rbp), %rdi
callq 0x3140
jmp 0x3e3f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x250(%rbp)
movl %eax, -0x254(%rbp)
jmp 0x3dfd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x250(%rbp)
movl %eax, -0x254(%rbp)
leaq -0x2c0(%rbp), %rdi
callq 0x3140
jmp 0x3dfd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x250(%rbp)
movl %eax, -0x254(%rbp)
leaq -0x2e0(%rbp), %rdi
callq 0x3140
jmp 0x3dfd
movb $0x1, -0x19(%rbp)
leaq -0x298(%rbp), %rdi
callq 0x3140
leaq -0x278(%rbp), %rdi
callq 0x3140
leaq -0x228(%rbp), %rdi
callq 0x3080
testb $0x1, -0x19(%rbp)
jne 0x3e2f
jmp 0x3e23
leaq -0x298(%rbp), %rdi
callq 0x3140
leaq -0x278(%rbp), %rdi
callq 0x3140
leaq -0x228(%rbp), %rdi
callq 0x3080
jmp 0x3e3f
movq -0x300(%rbp), %rdi
callq 0x4290
movq -0x2f8(%rbp), %rax
addq $0x330, %rsp            # imm = 0x330
popq %rbp
retq
movq -0x300(%rbp), %rdi
callq 0x4290
movq -0x250(%rbp), %rdi
callq 0x3350
nopw (%rax,%rax)