// File: EmbeddedPaul166[P]SNMP-Agent/src/parser.cpp
// Function: Parser::parseLineForNodeNameDiminished(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
std::string Parser::parseLineForNodeNameDiminished(std::string & nodeLine, std::string & nodeName)
{
    std::regex patternNodeName("(\\S*)\\s*OBJECT IDENTIFIER");
    std::regex patternCutNodeName("");
    std::smatch match;
    if (std::regex_search(nodeLine, match, patternNodeName))
    {
        nodeName = match.str(1);
        patternCutNodeName.assign(nodeName);
        nodeLine = std::regex_replace(nodeLine, patternCutNodeName, "", std::regex_constants::format_first_only);
        return nodeName;
    }
    return "";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0xf0(%rbp)
movq %rdi, %rax
movq %rax, -0xe8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
leaq 0x33c8b(%rip), %rsi     # 0x4858e
leaq -0x40(%rbp), %rdi
movl $0x10, %edx
movl %edx, -0xdc(%rbp)
callq 0x18ef0
movl -0xdc(%rbp), %edx
leaq 0x33f20(%rip), %rsi     # 0x48844
leaq -0x60(%rbp), %rdi
callq 0x18ef0
jmp 0x1492f
leaq -0x90(%rbp), %rdi
callq 0x18eb0
jmp 0x1493d
movq -0x18(%rbp), %rdi
leaq -0x90(%rbp), %rsi
leaq -0x40(%rbp), %rdx
xorl %ecx, %ecx
callq 0x18f90
movb %al, -0xf1(%rbp)
jmp 0x1495b
movb -0xf1(%rbp), %al
testb $0x1, %al
jne 0x1496a
jmp 0x14a55
leaq -0xb0(%rbp), %rdi
leaq -0x90(%rbp), %rsi
movl $0x1, %edx
callq 0x18ff0
jmp 0x14984
movq -0x20(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
movq %rsi, -0x100(%rbp)
callq 0x6560
movq -0x100(%rbp), %rdi
callq 0x62e0
movq -0x20(%rbp), %rsi
leaq -0x60(%rbp), %rdi
movl $0x10, %edx
callq 0x19700
jmp 0x149bb
movq -0x18(%rbp), %rsi
leaq 0x33e7e(%rip), %rcx     # 0x48844
leaq -0xd0(%rbp), %rdi
leaq -0x60(%rbp), %rdx
movl $0x400, %r8d            # imm = 0x400
callq 0x19760
jmp 0x149de
movq -0x18(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
movq %rsi, -0x108(%rbp)
callq 0x6560
movq -0x108(%rbp), %rdi
callq 0x62e0
movq -0xf0(%rbp), %rdi
movq -0x20(%rbp), %rsi
callq 0x61d0
jmp 0x14a13
movl $0x1, -0xd4(%rbp)
jmp 0x14ab6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x14af9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x14af0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x14ae4
leaq -0xd5(%rbp), %rdi
movq %rdi, -0x110(%rbp)
callq 0x67a0
movq -0xf0(%rbp), %rdi
movq -0x110(%rbp), %rdx
leaq 0x33dc7(%rip), %rsi     # 0x48844
callq 0x8130
jmp 0x14a84
leaq -0xd5(%rbp), %rdi
callq 0x64d0
movl $0x1, -0xd4(%rbp)
jmp 0x14ab6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0xd5(%rbp), %rdi
callq 0x64d0
jmp 0x14ae4
leaq -0x90(%rbp), %rdi
callq 0x195a0
leaq -0x60(%rbp), %rdi
callq 0x19570
leaq -0x40(%rbp), %rdi
callq 0x19570
movq -0xe8(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
leaq -0x90(%rbp), %rdi
callq 0x195a0
leaq -0x60(%rbp), %rdi
callq 0x19570
leaq -0x40(%rbp), %rdi
callq 0x19570
movq -0x68(%rbp), %rdi
callq 0x6790
nopl (%rax,%rax)