// File: mahdibohloul[P]SnapTrip/./Business-Logic/Backend.cpp
// Function: Backend::delete_request(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>>>>)
void Backend::delete_request(data_t data)
{
    if(!data.empty())
    {
        auto command_itr = data.begin();
        if(in_the_command(*command_itr, DELETE) != IN)
            throw Exception(ConstNames::Not_Found_msg);
        request_method method = func_delete_map[*command_itr];
        data.erase(command_itr);
        (this->*method)(data);
    }
    else
        throw Exception(ConstNames::Bad_Request_msg);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rsi, -0xc0(%rbp)
movq %rdi, %rax
movq -0xc0(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
movq %rax, -0x8(%rbp)
movq %rdi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xb0(%rbp)
callq 0x80940
testb $0x1, %al
jne 0x78e2f
movq -0xb8(%rbp), %rdi
callq 0x80980
movq %rax, -0x18(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x809b0
movq -0xb0(%rbp), %rdi
movq %rax, %rsi
movl $0x2, %edx
callq 0x78850
andb $0x1, %al
movzbl %al, %eax
cmpl $0x1, %eax
je 0x78d06
movb $0x1, -0x45(%rbp)
movl $0x28, %edi
callq 0x6210
movq %rax, -0xc8(%rbp)
leaq 0x9e716(%rip), %rsi     # 0x1173a0
leaq -0x38(%rbp), %rdi
callq 0x61d0
jmp 0x78c95
movq -0xc8(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0xabc90
jmp 0x78ca7
movq -0xc8(%rbp), %rdi
movb $0x0, -0x45(%rbp)
leaq 0x8efaf(%rip), %rsi     # 0x107c68
leaq 0x33040(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x78ee5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x78ced
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x6828
testb $0x1, -0x45(%rbp)
jne 0x78cf5
jmp 0x78d01
movq -0xc8(%rbp), %rdi
callq 0x6360
jmp 0x78edc
movq -0xb0(%rbp), %rax
addq $0xb0, %rax
movq %rax, -0xe8(%rbp)
leaq -0x18(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x809b0
movq -0xe8(%rbp), %rdi
movq %rax, %rsi
callq 0x809d0
movq -0xe0(%rbp), %rsi
movq %rax, %rcx
movq (%rcx), %rax
movq 0x8(%rcx), %rcx
movq %rcx, -0x50(%rbp)
movq %rax, -0x58(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x80b20
movq -0xb8(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0x80ab0
movq -0xb0(%rbp), %rcx
movq %rax, -0x68(%rbp)
movq -0x58(%rbp), %rax
movq %rax, -0xd8(%rbp)
movq -0x50(%rbp), %rdx
addq %rdx, %rcx
movq %rcx, -0xd0(%rbp)
andq $0x1, %rax
cmpq $0x0, %rax
je 0x78dbb
movq -0xd8(%rbp), %rcx
movq -0xd0(%rbp), %rax
movq (%rax), %rax
subq $0x1, %rcx
movq (%rax,%rcx), %rax
movq %rax, -0xf0(%rbp)
jmp 0x78dc9
movq -0xd8(%rbp), %rax
movq %rax, -0xf0(%rbp)
movq -0xb8(%rbp), %rsi
movq -0xf0(%rbp), %rax
movq %rax, -0xf8(%rbp)
leaq -0x80(%rbp), %rdi
movq %rdi, -0x100(%rbp)
callq 0x72990
movq -0xd0(%rbp), %rdi
movq -0x100(%rbp), %rsi
movq -0xf8(%rbp), %rax
callq *%rax
jmp 0x78e07
leaq -0x80(%rbp), %rdi
callq 0x72a80
jmp 0x78ed3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x72a80
jmp 0x78edc
movb $0x1, -0xa1(%rbp)
movl $0x28, %edi
callq 0x6210
movq %rax, -0x108(%rbp)
leaq 0x9e532(%rip), %rsi     # 0x117380
leaq -0xa0(%rbp), %rdi
callq 0x61d0
jmp 0x78e5c
movq -0x108(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0xabc90
jmp 0x78e71
movq -0x108(%rbp), %rdi
movb $0x0, -0xa1(%rbp)
leaq 0x8ede2(%rip), %rsi     # 0x107c68
leaq 0x32e73(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x78ee5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x78eba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x6828
testb $0x1, -0xa1(%rbp)
jne 0x78ec5
jmp 0x78ed1
movq -0x108(%rbp), %rdi
callq 0x6360
jmp 0x78edc
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
movq -0x40(%rbp), %rdi
callq 0x6750
nopw %cs:(%rax,%rax)