// File: /workspace/github_cpp_makefile_star2_O3/OpenFodder[P]SOS_Unpacker/stdafx.cpp
// Function: local_DirectoryList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::vector<std::string> local_DirectoryList(const std::string& pPath, const std::string& pExtension) {
    struct dirent		**directFiles;
    std::vector<std::string>		  results;

    // Build the file path

    std::string finalPath;

    finalPath += pPath;
    finalPath += "/";

    findType = pExtension;

    transform(findType.begin(), findType.end(), findType.begin(), ::toupper);

    int count = scandir(finalPath.c_str(), (dirent***)&directFiles, file_select, 0);

    for (int i = 0; i < count; ++i) {

        results.push_back(std::string(directFiles[i]->d_name));
    }

    transform(findType.begin(), findType.end(), findType.begin(), ::tolower);

    count = scandir(finalPath.c_str(), (dirent***)&directFiles, file_select, 0);

    for (int i = 0; i < count; ++i) {

        results.push_back(std::string(directFiles[i]->d_name));
    }

    return results;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdx, %r14
xorl %eax, %eax
movq %rax, 0x10(%rdi)
xorps %xmm0, %xmm0
movq %rdi, 0x8(%rsp)
movups %xmm0, (%rdi)
leaq 0x48(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb $0x0, (%rcx)
movq (%rsi), %rax
movq 0x8(%rsi), %rdx
leaq 0x38(%rsp), %rdi
movq %rax, %rsi
callq 0x40a0
leaq 0x1355(%rip), %rsi      # 0x125ca
leaq 0x38(%rsp), %rdi
callq 0x43d0
leaq 0xa3ea(%rip), %rdi      # 0x1b670
movq %r14, %rsi
callq 0x4130
movq 0xa3e3(%rip), %r14      # 0x1b678
testq %r14, %r14
je 0x112ba
movq 0xa3cf(%rip), %r15      # 0x1b670
xorl %r12d, %r12d
movsbl (%r15,%r12), %edi
callq 0x43c0
movb %al, (%r15,%r12)
incq %r12
cmpq %r12, %r14
jne 0x112a4
movq 0x38(%rsp), %rdi
leaq -0x14a(%rip), %rdx      # 0x1117c
leaq 0x10(%rsp), %rsi
xorl %ecx, %ecx
callq 0x4060
leaq 0x28(%rsp), %r13
testl %eax, %eax
jle 0x1133e
movl %eax, %ebp
xorl %r12d, %r12d
leaq 0x18(%rsp), %r14
movq 0x10(%rsp), %rax
movq (%rax,%r12,8), %rbx
leaq 0x13(%rbx), %r15
movq %r13, 0x18(%rsp)
movq %r15, %rdi
callq 0x40f0
leaq (%rbx,%rax), %rdx
addq $0x13, %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x10bd4
movq 0x8(%rsp), %rdi
movq %r14, %rsi
callq 0x114d2
movq 0x18(%rsp), %rdi
cmpq %r13, %rdi
je 0x11336
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x4210
incq %r12
cmpq %r12, %rbp
jne 0x112e5
movq 0xa333(%rip), %r14      # 0x1b678
testq %r14, %r14
je 0x1136a
movq 0xa31f(%rip), %r15      # 0x1b670
xorl %r12d, %r12d
movsbl (%r15,%r12), %edi
callq 0x42b0
movb %al, (%r15,%r12)
incq %r12
cmpq %r12, %r14
jne 0x11354
movq 0x38(%rsp), %rdi
leaq -0x1fa(%rip), %rdx      # 0x1117c
leaq 0x10(%rsp), %rsi
xorl %ecx, %ecx
callq 0x4060
testl %eax, %eax
jle 0x113e9
movl %eax, %ebp
xorl %r12d, %r12d
leaq 0x18(%rsp), %r14
movq 0x10(%rsp), %rax
movq (%rax,%r12,8), %rbx
leaq 0x13(%rbx), %r15
movq %r13, 0x18(%rsp)
movq %r15, %rdi
callq 0x40f0
leaq (%rbx,%rax), %rdx
addq $0x13, %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x10bd4
movq 0x8(%rsp), %rdi
movq %r14, %rsi
callq 0x114d2
movq 0x18(%rsp), %rdi
cmpq %r13, %rdi
je 0x113e1
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x4210
incq %r12
cmpq %r12, %rbp
jne 0x11390
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x11405
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x4210
movq 0x8(%rsp), %rax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x11421
jmp 0x11421
jmp 0x11421
jmp 0x11426
movq %rax, %r14
jmp 0x11440
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r13, %rdi
je 0x11440
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x4210
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x1145c
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x4210
movq 0x8(%rsp), %rdi
callq 0x10aec
movq %r14, %rdi
callq 0x43a0