// File: /workspace/github_cpp_makefile_star2_O1/AlexTheMagnus[P]Project_Hex/src/infraestructure/changeIconsFromFileController.cc
// Function: changeIconsFromFileController::changeIconsFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void changeIconsFromFile(string infoFileName) {
        printWelcomeMessage();

        NativeFileReaderMapper fileReaderMapper;
        vector<App> apps = (fileReaderMapper.mapFileToApps(infoFileName));

        NativeIconChanger iconChanger;

        for (std::vector<App>::iterator iterator = apps.begin(); iterator != apps.end(); ++iterator) {
            printChangingIconMessage(iterator->getSettingFileName());

            iconChanger.changeIconOf(iterator->getSettingFileName(), iterator->getNewIconName());
            printOKMessage();
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
movq %rsi, %r14
movq %rdi, %rbx
callq 0x2a10
leaq 0x4624(%rip), %rax      # 0x6d38
leaq -0x118(%rbp), %r15
movq %rax, (%r15)
leaq -0xb8(%rbp), %r12
movq %r12, -0x10(%r12)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq -0xc8(%rbp), %r14
movq %r14, %rdi
callq 0x4142
leaq -0xa0(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x2afc
movq -0xc8(%rbp), %rdi
cmpq %r12, %rdi
je 0x2770
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x21a0
leaq 0x4601(%rip), %rax      # 0x6d78
leaq -0x108(%rbp), %rdi
movq %rax, -0x8(%rdi)
leaq -0xf8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0xa8(%rbp), %rsi
movq $0x18, (%rsi)
xorl %edx, %edx
callq 0x2270
leaq -0xd8(%rbp), %rsi
movq %rax, -0x30(%rsi)
movq -0xa8(%rbp), %rcx
movq %rcx, -0x20(%rsi)
movups 0x2908(%rip), %xmm0     # 0x50c7
movups %xmm0, (%rax)
movabsq $0x2f736e6f69746163, %rdx # imm = 0x2F736E6F69746163
movq %rdx, 0x10(%rax)
movq %rcx, -0x28(%rsi)
movq -0x30(%rsi), %rax
xorl %edx, %edx
movb %dl, (%rax,%rcx)
movq %rsi, -0x10(%rsi)
movabsq $0x656c6946706d6574, %rax # imm = 0x656C6946706D6574
movq %rax, (%rsi)
movl $0x7478742e, 0x8(%rsi)  # imm = 0x7478742E
movq $0xc, -0x8(%rsi)
movb %dl, 0xc(%rsi)
movq -0xa0(%rbp), %r13
cmpq -0x98(%rbp), %r13
je 0x28fb
leaq -0x88(%rbp), %r14
leaq -0x68(%rbp), %r15
leaq -0x48(%rbp), %r12
leaq -0x78(%rbp), %rax
movq %rax, -0x88(%rbp)
movq (%r13), %rsi
movq 0x8(%r13), %rdx
addq %rsi, %rdx
movq %r14, %rdi
callq 0x4142
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2dd4
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x2868
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x21a0
leaq -0x58(%rbp), %rax
movq %rax, -0x68(%rbp)
movq (%r13), %rsi
movq 0x8(%r13), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x4142
leaq -0x38(%rbp), %rax
movq %rax, -0x48(%rbp)
movq 0x20(%r13), %rsi
movq 0x28(%r13), %rdx
addq %rsi, %rdx
movq %r12, %rdi
callq 0x4142
leaq -0x110(%rbp), %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x2e4a
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x28c9
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21a0
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x28e2
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x21a0
movq %rbx, %rdi
callq 0x2f70
addq $0x40, %r13
cmpq -0x98(%rbp), %r13
jne 0x2823
leaq 0x4476(%rip), %rax      # 0x6d78
movq %rax, -0x110(%rbp)
movq -0xe8(%rbp), %rdi
leaq -0xd8(%rbp), %rax
cmpq %rax, %rdi
je 0x292b
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x21a0
movq -0x108(%rbp), %rdi
leaq -0xf8(%rbp), %rax
cmpq %rax, %rdi
je 0x294d
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x21a0
leaq -0xa0(%rbp), %rdi
callq 0x3036
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0x29fb
movq %rax, %rbx
movq -0xc8(%rbp), %rdi
cmpq %r12, %rdi
je 0x2a07
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x21a0
jmp 0x2a07
movq %rax, %rbx
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x29ef
movq -0x78(%rbp), %rsi
jmp 0x29e2
movq %rax, %rbx
jmp 0x29d1
movq %rax, %rbx
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x29d1
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21a0
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x29ef
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x21a0
jmp 0x29ef
movq %rax, %rbx
leaq -0x110(%rbp), %rdi
callq 0x2fe6
leaq -0xa0(%rbp), %rdi
callq 0x3036
movq %rbx, %rdi
callq 0x2260
nop