// File: mahdibohloul[P]SnapTrip/./Business-Logic/Backend.cpp
// Function: Backend::fill_user_info(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>>>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
Database::UserInfo Backend::fill_user_info(const data_t& data, string mode)
{
    Database::UserInfo user_info = Database::UserInfo();
    if(mode == ConstNames::Signup_Order || mode == ConstNames::Login_Order)
    {
        string email = (find_info(ConstNames::Email, data) != ConstNames::Empty_Str) ? find_info(ConstNames::Email, data) : throw Exception(ConstNames::Bad_Request_msg);
        user_info.email = email;
        string password = (find_info(ConstNames::Password, data) != ConstNames::Empty_Str) ? find_info(ConstNames::Password, data) : throw Exception(ConstNames::Bad_Request_msg);
        user_info.password = hashing(password);
        if(!check_email_validity(user_info.email))
            throw Exception(ConstNames::Bad_Request_msg);
        if(mode == ConstNames::Signup_Order){
            string username = (find_info(ConstNames::Username, data) != ConstNames::Empty_Str) ? find_info(ConstNames::Username, data) : throw Exception(ConstNames::Bad_Request_msg);
            user_info.username = username;
            return user_info;
        }
        user_info.username = ConstNames::Empty_Str;
        return user_info;
    }
    else if(mode == ConstNames::POST_Wallet_Order)
    {
        string amount = (find_info(ConstNames::Amount, data) != ConstNames::Empty_Str) ? find_info(ConstNames::Amount, data) : throw Exception(ConstNames::Bad_Request_msg);
        user_info.amount = stold(amount);
        return user_info;
    }
    else if(mode == ConstNames::GET_Wallet_Order)
    {
        string count = (find_info(ConstNames::Count, data) != ConstNames::Empty_Str) ? find_info(ConstNames::Count, data) : throw Exception(ConstNames::Bad_Request_msg);
        user_info.no_transactions = stoi(count);
    }
    return user_info;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x3c0, %rsp            # imm = 0x3C0
movq %rcx, -0x350(%rbp)
movq %rdi, -0x348(%rbp)
movq %rdi, %rax
movq %rax, -0x340(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x338(%rbp)
movb $0x0, -0x21(%rbp)
leaq -0x49(%rbp), %rdi
movq %rdi, -0x330(%rbp)
callq 0x6760
movq -0x330(%rbp), %rdx
leaq 0x3bf48(%rip), %rsi     # 0xb56b8
leaq -0x48(%rbp), %rdi
callq 0x65c0
jmp 0x7977b
leaq -0x81(%rbp), %rdi
movq %rdi, -0x358(%rbp)
callq 0x6760
movq -0x358(%rbp), %rdx
leaq 0x3bf1c(%rip), %rsi     # 0xb56b8
leaq -0x80(%rbp), %rdi
callq 0x65c0
jmp 0x797a7
movq -0x348(%rbp), %rdi
movq %rsp, %rax
fldz
fstpt (%rax)
xorl %eax, %eax
movl %eax, %ecx
leaq -0x48(%rbp), %rsi
leaq -0x80(%rbp), %rdx
callq 0x80c00
jmp 0x797c8
leaq -0x80(%rbp), %rdi
callq 0x6828
leaq -0x81(%rbp), %rdi
callq 0x64b0
leaq -0x48(%rbp), %rdi
callq 0x6828
leaq -0x49(%rbp), %rdi
callq 0x64b0
movq -0x350(%rbp), %rdi
leaq 0x9dcc3(%rip), %rsi     # 0x1174c0
callq 0x55080
testb $0x1, %al
jne 0x79822
movq -0x350(%rbp), %rdi
leaq 0x9dccc(%rip), %rsi     # 0x1174e0
callq 0x55080
testb $0x1, %al
jne 0x79822
jmp 0x79f1b
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
movb $0x0, -0xd1(%rbp)
movb $0x0, -0xf9(%rbp)
leaq 0x9de7e(%rip), %rdx     # 0x1176c0
leaq -0xc8(%rbp), %rdi
callq 0x7bad0
jmp 0x79850
leaq -0xc8(%rbp), %rdi
leaq 0x9d942(%rip), %rsi     # 0x1171a0
callq 0x54fc0
testb $0x1, %al
jne 0x79869
jmp 0x7988b
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
leaq 0x9de45(%rip), %rdx     # 0x1176c0
leaq -0xa8(%rbp), %rdi
callq 0x7bad0
jmp 0x79889
jmp 0x79904
movl $0x28, %edi
callq 0x6210
movq %rax, %rcx
movq %rcx, -0x360(%rbp)
movq %rax, -0xd0(%rbp)
movb $0x1, -0xd1(%rbp)
leaq 0x9dacc(%rip), %rsi     # 0x117380
leaq -0xf8(%rbp), %rdi
callq 0x61d0
jmp 0x798c2
movq -0x360(%rbp), %rdi
movb $0x1, -0xf9(%rbp)
leaq -0xf8(%rbp), %rsi
callq 0xabc90
jmp 0x798de
movq -0x360(%rbp), %rdi
movb $0x0, -0xd1(%rbp)
leaq 0x8e375(%rip), %rsi     # 0x107c68
leaq 0x32406(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
testb $0x1, -0xf9(%rbp)
jne 0x7990f
jmp 0x7991b
leaq -0xf8(%rbp), %rdi
callq 0x6828
leaq -0xc8(%rbp), %rdi
callq 0x6828
movq -0x348(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x6060
jmp 0x7993c
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
movb $0x0, -0x149(%rbp)
movb $0x0, -0x171(%rbp)
leaq 0x9dde4(%rip), %rdx     # 0x117740
leaq -0x140(%rbp), %rdi
callq 0x7bad0
jmp 0x7996a
leaq -0x140(%rbp), %rdi
leaq 0x9d828(%rip), %rsi     # 0x1171a0
callq 0x54fc0
testb $0x1, %al
jne 0x79983
jmp 0x799a5
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
leaq 0x9ddab(%rip), %rdx     # 0x117740
leaq -0x120(%rbp), %rdi
callq 0x7bad0
jmp 0x799a3
jmp 0x79a1e
movl $0x28, %edi
callq 0x6210
movq %rax, %rcx
movq %rcx, -0x368(%rbp)
movq %rax, -0x148(%rbp)
movb $0x1, -0x149(%rbp)
leaq 0x9d9b2(%rip), %rsi     # 0x117380
leaq -0x170(%rbp), %rdi
callq 0x61d0
jmp 0x799dc
movq -0x368(%rbp), %rdi
movb $0x1, -0x171(%rbp)
leaq -0x170(%rbp), %rsi
callq 0xabc90
jmp 0x799f8
movq -0x368(%rbp), %rdi
movb $0x0, -0x149(%rbp)
leaq 0x8e25b(%rip), %rsi     # 0x107c68
leaq 0x322ec(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
testb $0x1, -0x171(%rbp)
jne 0x79a29
jmp 0x79a35
leaq -0x170(%rbp), %rdi
callq 0x6828
leaq -0x140(%rbp), %rdi
callq 0x6828
leaq -0x198(%rbp), %rdi
leaq -0x120(%rbp), %rsi
callq 0x61d0
jmp 0x79a56
movq -0x338(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x80cc0
movq %rax, -0x370(%rbp)
jmp 0x79a72
movq -0x348(%rbp), %rax
movq -0x370(%rbp), %rcx
movq %rcx, 0x40(%rax)
leaq -0x198(%rbp), %rdi
callq 0x6828
movq -0x338(%rbp), %rdi
movq -0x348(%rbp), %rsi
callq 0x7f720
movb %al, -0x371(%rbp)
jmp 0x79aab
movb -0x371(%rbp), %al
testb $0x1, %al
jne 0x79cdf
jmp 0x79abb
movb $0x1, -0x1b9(%rbp)
movl $0x28, %edi
callq 0x6210
movq %rax, -0x380(%rbp)
leaq 0x9d8a6(%rip), %rsi     # 0x117380
leaq -0x1b8(%rbp), %rdi
callq 0x61d0
jmp 0x79ae8
movq -0x380(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
callq 0xabc90
jmp 0x79afd
movq -0x380(%rbp), %rdi
movb $0x0, -0x1b9(%rbp)
leaq 0x8e156(%rip), %rsi     # 0x107c68
leaq 0x321e7(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79b69
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79b54
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x6828
leaq -0x81(%rbp), %rdi
callq 0x64b0
leaq -0x48(%rbp), %rdi
callq 0x6828
leaq -0x49(%rbp), %rdi
callq 0x64b0
jmp 0x7a32c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x7a320
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79be2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79bc9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
testb $0x1, -0xf9(%rbp)
jne 0x79bbb
jmp 0x79bc7
leaq -0xf8(%rbp), %rdi
callq 0x6828
jmp 0x79bc9
testb $0x1, -0xd1(%rbp)
jne 0x79bd4
jmp 0x79be0
movq -0xd0(%rbp), %rdi
callq 0x6360
jmp 0x79be2
leaq -0xc8(%rbp), %rdi
callq 0x6828
jmp 0x7a320
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79f0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79c5e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79c45
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
testb $0x1, -0x171(%rbp)
jne 0x79c37
jmp 0x79c43
leaq -0x170(%rbp), %rdi
callq 0x6828
jmp 0x79c45
testb $0x1, -0x149(%rbp)
jne 0x79c50
jmp 0x79c5c
movq -0x148(%rbp), %rdi
callq 0x6360
jmp 0x79c5e
leaq -0x140(%rbp), %rdi
callq 0x6828
jmp 0x79f0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79efe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x6828
jmp 0x79efe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79cc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1b8(%rbp), %rdi
callq 0x6828
testb $0x1, -0x1b9(%rbp)
jne 0x79cce
jmp 0x79cda
movq -0x380(%rbp), %rdi
callq 0x6360
jmp 0x79efe
movq -0x350(%rbp), %rdi
leaq 0x9d7d3(%rip), %rsi     # 0x1174c0
callq 0x55080
testb $0x1, %al
jne 0x79cfb
jmp 0x79eba
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
movb $0x0, -0x209(%rbp)
movb $0x0, -0x231(%rbp)
leaq 0x9da05(%rip), %rdx     # 0x117720
leaq -0x200(%rbp), %rdi
callq 0x7bad0
jmp 0x79d29
leaq -0x200(%rbp), %rdi
leaq 0x9d469(%rip), %rsi     # 0x1171a0
callq 0x54fc0
testb $0x1, %al
jne 0x79d42
jmp 0x79d64
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
leaq 0x9d9cc(%rip), %rdx     # 0x117720
leaq -0x1e0(%rbp), %rdi
callq 0x7bad0
jmp 0x79d62
jmp 0x79ddd
movl $0x28, %edi
callq 0x6210
movq %rax, %rcx
movq %rcx, -0x388(%rbp)
movq %rax, -0x208(%rbp)
movb $0x1, -0x209(%rbp)
leaq 0x9d5f3(%rip), %rsi     # 0x117380
leaq -0x230(%rbp), %rdi
callq 0x61d0
jmp 0x79d9b
movq -0x388(%rbp), %rdi
movb $0x1, -0x231(%rbp)
leaq -0x230(%rbp), %rsi
callq 0xabc90
jmp 0x79db7
movq -0x388(%rbp), %rdi
movb $0x0, -0x209(%rbp)
leaq 0x8de9c(%rip), %rsi     # 0x107c68
leaq 0x31f2d(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
testb $0x1, -0x231(%rbp)
jne 0x79de8
jmp 0x79df4
leaq -0x230(%rbp), %rdi
callq 0x6828
leaq -0x200(%rbp), %rdi
callq 0x6828
movq -0x348(%rbp), %rdi
addq $0x20, %rdi
leaq -0x1e0(%rbp), %rsi
callq 0x6060
jmp 0x79e19
movb $0x1, -0x21(%rbp)
movl $0x1, -0x238(%rbp)
leaq -0x1e0(%rbp), %rdi
callq 0x6828
jmp 0x79ee1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79e92
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x79e79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
testb $0x1, -0x231(%rbp)
jne 0x79e6b
jmp 0x79e77
leaq -0x230(%rbp), %rdi
callq 0x6828
jmp 0x79e79
testb $0x1, -0x209(%rbp)
jne 0x79e84
jmp 0x79e90
movq -0x208(%rbp), %rdi
callq 0x6360
jmp 0x79e92
leaq -0x200(%rbp), %rdi
callq 0x6828
jmp 0x79efe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1e0(%rbp), %rdi
callq 0x6828
jmp 0x79efe
movq -0x348(%rbp), %rdi
addq $0x20, %rdi
leaq 0x9d2d4(%rip), %rsi     # 0x1171a0
callq 0x6060
jmp 0x79ed3
movb $0x1, -0x21(%rbp)
movl $0x1, -0x238(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x6828
leaq -0xa8(%rbp), %rdi
callq 0x6828
jmp 0x7a2fe
leaq -0x120(%rbp), %rdi
callq 0x6828
leaq -0xa8(%rbp), %rdi
callq 0x6828
jmp 0x7a320
movq -0x350(%rbp), %rdi
leaq 0x9d6d7(%rip), %rsi     # 0x117600
callq 0x55080
testb $0x1, %al
jne 0x79f37
jmp 0x7a10b
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
movb $0x0, -0x281(%rbp)
movb $0x0, -0x2a9(%rbp)
leaq 0x9d789(%rip), %rdx     # 0x1176e0
leaq -0x278(%rbp), %rdi
callq 0x7bad0
jmp 0x79f65
leaq -0x278(%rbp), %rdi
leaq 0x9d22d(%rip), %rsi     # 0x1171a0
callq 0x54fc0
testb $0x1, %al
jne 0x79f7e
jmp 0x79fa0
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
leaq 0x9d750(%rip), %rdx     # 0x1176e0
leaq -0x258(%rbp), %rdi
callq 0x7bad0
jmp 0x79f9e
jmp 0x7a019
movl $0x28, %edi
callq 0x6210
movq %rax, %rcx
movq %rcx, -0x390(%rbp)
movq %rax, -0x280(%rbp)
movb $0x1, -0x281(%rbp)
leaq 0x9d3b7(%rip), %rsi     # 0x117380
leaq -0x2a8(%rbp), %rdi
callq 0x61d0
jmp 0x79fd7
movq -0x390(%rbp), %rdi
movb $0x1, -0x2a9(%rbp)
leaq -0x2a8(%rbp), %rsi
callq 0xabc90
jmp 0x79ff3
movq -0x390(%rbp), %rdi
movb $0x0, -0x281(%rbp)
leaq 0x8dc60(%rip), %rsi     # 0x107c68
leaq 0x31cf1(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
testb $0x1, -0x2a9(%rbp)
jne 0x7a024
jmp 0x7a030
leaq -0x2a8(%rbp), %rdi
callq 0x6828
leaq -0x278(%rbp), %rdi
callq 0x6828
xorl %eax, %eax
movl %eax, %esi
leaq -0x258(%rbp), %rdi
callq 0x74cd0
fstpt -0x39c(%rbp)
jmp 0x7a054
movq -0x348(%rbp), %rax
fldt -0x39c(%rbp)
fstpt 0x50(%rax)
movb $0x1, -0x21(%rbp)
movl $0x1, -0x238(%rbp)
leaq -0x258(%rbp), %rdi
callq 0x6828
jmp 0x7a2fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x7a0dd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x7a0c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
testb $0x1, -0x2a9(%rbp)
jne 0x7a0b6
jmp 0x7a0c2
leaq -0x2a8(%rbp), %rdi
callq 0x6828
jmp 0x7a0c4
testb $0x1, -0x281(%rbp)
jne 0x7a0cf
jmp 0x7a0db
movq -0x280(%rbp), %rdi
callq 0x6360
jmp 0x7a0dd
leaq -0x278(%rbp), %rdi
callq 0x6828
jmp 0x7a320
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x258(%rbp), %rdi
callq 0x6828
jmp 0x7a320
movq -0x350(%rbp), %rdi
leaq 0x9d507(%rip), %rsi     # 0x117620
callq 0x55080
testb $0x1, %al
jne 0x7a127
jmp 0x7a2ec
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
movb $0x0, -0x2f9(%rbp)
movb $0x0, -0x321(%rbp)
leaq 0x9d5b9(%rip), %rdx     # 0x117700
leaq -0x2f0(%rbp), %rdi
callq 0x7bad0
jmp 0x7a155
leaq -0x2f0(%rbp), %rdi
leaq 0x9d03d(%rip), %rsi     # 0x1171a0
callq 0x54fc0
testb $0x1, %al
jne 0x7a16e
jmp 0x7a190
movq -0x338(%rbp), %rsi
movq -0x18(%rbp), %rcx
leaq 0x9d580(%rip), %rdx     # 0x117700
leaq -0x2d0(%rbp), %rdi
callq 0x7bad0
jmp 0x7a18e
jmp 0x7a209
movl $0x28, %edi
callq 0x6210
movq %rax, %rcx
movq %rcx, -0x3a8(%rbp)
movq %rax, -0x2f8(%rbp)
movb $0x1, -0x2f9(%rbp)
leaq 0x9d1c7(%rip), %rsi     # 0x117380
leaq -0x320(%rbp), %rdi
callq 0x61d0
jmp 0x7a1c7
movq -0x3a8(%rbp), %rdi
movb $0x1, -0x321(%rbp)
leaq -0x320(%rbp), %rsi
callq 0xabc90
jmp 0x7a1e3
movq -0x3a8(%rbp), %rdi
movb $0x0, -0x2f9(%rbp)
leaq 0x8da70(%rip), %rsi     # 0x107c68
leaq 0x31b01(%rip), %rdx     # 0xabd00
callq 0x6710
jmp 0x7a335
testb $0x1, -0x321(%rbp)
jne 0x7a214
jmp 0x7a220
leaq -0x320(%rbp), %rdi
callq 0x6828
leaq -0x2f0(%rbp), %rdi
callq 0x6828
xorl %eax, %eax
movl %eax, %esi
leaq -0x2d0(%rbp), %rdi
movl $0xa, %edx
callq 0x74d10
movl %eax, -0x3ac(%rbp)
jmp 0x7a249
movq -0x348(%rbp), %rax
movl -0x3ac(%rbp), %ecx
movl %ecx, 0x60(%rax)
leaq -0x2d0(%rbp), %rdi
callq 0x6828
jmp 0x7a2ec
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x7a2c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x7a2ab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
testb $0x1, -0x321(%rbp)
jne 0x7a29d
jmp 0x7a2a9
leaq -0x320(%rbp), %rdi
callq 0x6828
jmp 0x7a2ab
testb $0x1, -0x2f9(%rbp)
jne 0x7a2b6
jmp 0x7a2c2
movq -0x2f8(%rbp), %rdi
callq 0x6360
jmp 0x7a2c4
leaq -0x2f0(%rbp), %rdi
callq 0x6828
jmp 0x7a320
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2d0(%rbp), %rdi
callq 0x6828
jmp 0x7a320
jmp 0x7a2ee
jmp 0x7a2f0
movb $0x1, -0x21(%rbp)
movl $0x1, -0x238(%rbp)
testb $0x1, -0x21(%rbp)
jne 0x7a310
movq -0x348(%rbp), %rdi
callq 0x54e70
movq -0x340(%rbp), %rax
addq $0x3c0, %rsp            # imm = 0x3C0
popq %rbp
retq
movq -0x348(%rbp), %rdi
callq 0x54e70
movq -0x58(%rbp), %rdi
callq 0x6750
nopw %cs:(%rax,%rax)