// File: /workspace/github_cpp_makefile_star2_O3/EmbeddedPaul166[P]SNMP-Agent/src/parser.cpp
// Function: Parser::addParentNodes(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&, std::vector<unsigned int, std::allocator<unsigned int>>&)
void Parser::addParentNodes(std::vector<std::string> & parentVector, std::vector<unsigned int> & vectorOID)
{ 
    std::regex patternParentOID("\\(.\\)");
    std::smatch match;
    DataType dataType;
    for (std::vector<std::string>::size_type i = parentVector.size() - 1; i != (std::vector<std::string>::size_type) - 1; i--)
    {
        if (parentVector[i] == "iso")
        {
            m_pNode = m_pTree -> m_rootOfTheTree;
        }
        else
        {
            m_pNode = m_pTree -> addNode(vectorOID[i], parentVector[i], dataType, "", AccessType::NOT_ACCESSIBLE, StatusType::MANDATORY, m_pNode);
        }    
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x128, %rsp            # imm = 0x128
movq %rdx, 0x48(%rsp)
movq %rsi, %rbx
movq %rdi, %r12
leaq 0x13763(%rip), %rsi     # 0x1e5a8
leaq 0xb8(%rsp), %rdi
movl $0x10, %edx
callq 0xe4b4
leaq 0xd8(%rsp), %rdi
callq 0x1cc78
movq 0x8(%rbx), %r13
movq %rbx, 0x50(%rsp)
subq (%rbx), %r13
je 0xafd1
movq %r13, %rbp
sarq $0x5, %rbp
addq $-0x20, %r13
leaq 0x20(%rsp), %r14
movq %r12, 0x40(%rsp)
movq 0x50(%rsp), %r15
decq %rbp
movq (%r15), %rdi
addq %r13, %rdi
leaq 0x1370e(%rip), %rsi     # 0x1e5ae
callq 0x40d0
movq 0x60(%r12), %rbx
testl %eax, %eax
movq %rbp, 0x58(%rsp)
je 0xafb7
movq 0x48(%rsp), %rax
movq (%rax), %rax
movl (%rax,%rbp,4), %r12d
movq (%r15), %rax
leaq 0x10(%rsp), %rcx
movq %rcx, (%rsp)
movq (%rax,%r13), %rsi
movq 0x8(%rax,%r13), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0x5f70
movups 0xd8(%rsp), %xmm0
movups 0xe8(%rsp), %xmm1
movaps %xmm1, 0x70(%rsp)
movaps %xmm0, 0x60(%rsp)
leaq 0x80(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x7892
leaq 0x98(%rsp), %rdi
leaq 0x110(%rsp), %rsi
callq 0x791c
leaq 0x30(%rsp), %rax
movq %rax, 0x20(%rsp)
movq %r14, %rdi
leaq 0x138d9(%rip), %rdx     # 0x1e814
movq %rdx, %rsi
callq 0x6006
movq %rbx, %rdi
movl %r12d, %esi
movq %rsp, %rdx
leaq 0x60(%rsp), %rcx
movq %r14, %r8
movl $0x3, %r9d
movq 0x40(%rsp), %r12
pushq 0x68(%r12)
pushq $0x0
callq 0x1cfaa
addq $0x10, %rsp
movq %rax, 0x68(%r12)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0xaf90
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x4320
leaq 0x60(%rsp), %rdi
callq 0x1cc96
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xafbf
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4320
jmp 0xafbf
movq (%rbx), %rax
movq %rax, 0x68(%r12)
addq $-0x20, %r13
movq 0x58(%rsp), %rbp
testq %rbp, %rbp
jne 0xae90
leaq 0xd8(%rsp), %rdi
callq 0x1cc96
leaq 0xb8(%rsp), %rdi
callq 0xe6fa
addq $0x128, %rsp            # imm = 0x128
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0xb074
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0xb042
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x4320
jmp 0xb042
movq %rax, %rbx
jmp 0xb067
movq %rax, %rbx
jmp 0xb04c
movq %rax, %rbx
leaq 0x80(%rsp), %rdi
callq 0x5f12
jmp 0xb04c
movq %rax, %rbx
leaq 0x60(%rsp), %rdi
callq 0x1cc96
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xb067
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4320
leaq 0xd8(%rsp), %rdi
callq 0x1cc96
leaq 0xb8(%rsp), %rdi
callq 0xe6fa
movq %rbx, %rdi
callq 0x4550
nop