// File: /workspace/github_cpp_makefile_star2_O1/EmbeddedPaul166[P]SNMP-Agent/src/manager.cpp
// Function: Manager::getOIDVector(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
std::vector<unsigned int> Manager::getOIDVector(std::string & input)
{
    unsigned int n = 0;
    std::vector<unsigned int> numbersVector;
    std::vector<unsigned int> digitsVector;
    while(input.size() != n)
    {
        if (std::isdigit(input[n]))
        {
            digitsVector.push_back(input[n] - '0');
        }
        else if (input[n] == '.')
        {
            if (digitsVector.size() == 1)
            {
                numbersVector.push_back(digitsVector.back());
                digitsVector.clear();
            }
            else
            {
                unsigned int multiplier = static_cast<unsigned int>(std::pow(10, digitsVector.size() - 1));
                unsigned int number = 0;
                for (std::vector<std::string>::size_type i = 0; i != digitsVector.size(); i++)
                {
                    number += digitsVector[i]*multiplier;
                    multiplier /= 10;
                }
                numbersVector.push_back(number);
                digitsVector.clear(); 
            }
        }
        n++;
    }
    return numbersVector;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
xorl %r13d, %r13d
movq %r13, 0x10(%rdi)
xorpd %xmm0, %xmm0
movupd %xmm0, (%rdi)
movq %r13, 0x20(%rsp)
movapd %xmm0, 0x10(%rsp)
cmpq %r13, 0x8(%rdx)
je 0x7a36
movq %rdx, %r14
leaq 0x10(%rsp), %r15
leaq 0xc(%rsp), %r12
movl $0xcccccccd, %ebp       # imm = 0xCCCCCCCD
movq (%r14), %rax
movsbl (%rax,%r13), %ecx
leal -0x30(%rcx), %edx
cmpl $0x9, %edx
ja 0x7929
movsbl (%rax,%r13), %eax
addl $-0x30, %eax
movl %eax, 0xc(%rsp)
movq 0x18(%rsp), %rsi
cmpq 0x20(%rsp), %rsi
je 0x795e
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x18(%rsp)
jmp 0x7a29
cmpb $0x2e, %cl
jne 0x7a29
movq 0x18(%rsp), %rdx
movq %rdx, %rax
subq 0x10(%rsp), %rax
cmpq $0x4, %rax
jne 0x796e
addq $-0x4, %rdx
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x7a03
movl (%rdx), %eax
jmp 0x79f7
movq %r15, %rdi
movq %r12, %rdx
callq 0x707e
jmp 0x7a29
sarq $0x2, %rax
decq %rax
movq %rax, %xmm0
punpckldq 0x1780e(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x17816(%rip), %xmm0    # 0x1f1a0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movsd 0x17812(%rip), %xmm0    # 0x1f1b0
callq 0x5540
movq 0x10(%rsp), %rax
movq 0x18(%rsp), %rcx
movl $0x0, 0xc(%rsp)
subq %rax, %rcx
je 0x79e9
sarq $0x2, %rcx
movl 0xc(%rsp), %edx
cvttsd2si %xmm0, %rdi
xorl %esi, %esi
movl %edi, %r8d
imull (%rax,%rsi,4), %edi
addl %edi, %edx
movl %edx, 0xc(%rsp)
imulq %rbp, %r8
shrq $0x23, %r8
incq %rsi
movl %r8d, %edi
cmpq %rsi, %rcx
jne 0x79c9
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x7a0d
movl 0xc(%rsp), %eax
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x7a18
movq %rbx, %rdi
callq 0x8c60
jmp 0x7a18
movq %rbx, %rdi
movq %r12, %rdx
callq 0x8c60
movq 0x10(%rsp), %rax
cmpq %rax, 0x18(%rsp)
je 0x7a29
movq %rax, 0x18(%rsp)
incl %r13d
cmpq %r13, 0x8(%r14)
jne 0x78f1
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x7a4d
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x5320
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x7a63
jmp 0x7a63
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x7a7d
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x5320
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x7a91
movq 0x10(%rbx), %rsi
subq %rdi, %rsi
callq 0x5320
movq %r14, %rdi
callq 0x5550
nop