Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- is_expired(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >):
- push rbp
- mov rbp, rsp
- sub rsp, 48
- mov QWORD PTR [rbp-40], rdi
- mov DWORD PTR [rbp-24], 30
- lea rdx, [rbp-24]
- lea rax, [rbp-28]
- mov rsi, rdx
- mov rdi, rax
- call std::chrono::duration<int, std::ratio<86400l, 1l> >::duration<int, void>(int const&)
- call std::chrono::_V2::system_clock::now()
- mov QWORD PTR [rbp-8], rax
- lea rdx, [rbp-40]
- lea rax, [rbp-8]
- mov rsi, rdx
- mov rdi, rax
- call std::common_type<std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::type std::chrono::operator-<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&)
- mov QWORD PTR [rbp-16], rax
- lea rax, [rbp-16]
- mov rdi, rax
- call std::enable_if<std::chrono::__is_duration<std::chrono::duration<int, std::ratio<86400l, 1l> > >::value, std::chrono::duration<int, std::ratio<86400l, 1l> > >::type std::chrono::duration_cast<std::chrono::duration<int, std::ratio<86400l, 1l> >, long, std::ratio<1l, 1000000000l> >(std::chrono::duration<long, std::ratio<1l, 1000000000l> > const&)
- mov DWORD PTR [rbp-20], eax
- lea rdx, [rbp-28]
- lea rax, [rbp-20]
- mov rsi, rdx
- mov rdi, rax
- call bool std::chrono::operator><int, std::ratio<86400l, 1l>, int, std::ratio<86400l, 1l> >(std::chrono::duration<int, std::ratio<86400l, 1l> > const&, std::chrono::duration<int, std::ratio<86400l, 1l> > const&)
- leave
- ret
- .LC0:
- .string "%Y%m%d"
- operator"" _issued(char const*):
- push rbp
- mov rbp, rsp
- push rbx
- sub rsp, 520
- mov QWORD PTR [rbp-520], rdi
- lea rax, [rbp-17]
- mov rdi, rax
- call std::allocator<char>::allocator() [complete object constructor]
- lea rdx, [rbp-17]
- mov rcx, QWORD PTR [rbp-520]
- lea rax, [rbp-64]
- mov rsi, rcx
- mov rdi, rax
- call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&)
- lea rcx, [rbp-64]
- lea rax, [rbp-448]
- mov edx, 8
- mov rsi, rcx
- mov rdi, rax
- call std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::basic_istringstream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::_Ios_Openmode) [complete object constructor]
- lea rax, [rbp-64]
- mov rdi, rax
- call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor]
- lea rax, [rbp-17]
- mov rdi, rax
- call std::allocator<char>::~allocator() [complete object destructor]
- pxor xmm0, xmm0
- movaps XMMWORD PTR [rbp-512], xmm0
- movaps XMMWORD PTR [rbp-496], xmm0
- movaps XMMWORD PTR [rbp-480], xmm0
- movq QWORD PTR [rbp-464], xmm0
- lea rax, [rbp-512]
- mov esi, OFFSET FLAT:.LC0
- mov rdi, rax
- call std::_Get_time<char> std::get_time<char>(tm*, char const*)
- mov rcx, rax
- mov rbx, rdx
- lea rax, [rbp-448]
- mov rsi, rcx
- mov rdi, rax
- call std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char> >(std::basic_istream<char, std::char_traits<char> >&, std::_Get_time<char>)
- lea rax, [rbp-512]
- mov rdi, rax
- call mktime
- mov rdi, rax
- call std::chrono::_V2::system_clock::from_time_t(long)
- mov rbx, rax
- nop
- lea rax, [rbp-448]
- mov rdi, rax
- call std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream() [complete object destructor]
- mov rax, rbx
- jmp .L26
- mov rbx, rax
- lea rax, [rbp-64]
- mov rdi, rax
- call std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() [complete object destructor]
- jmp .L21
- mov rbx, rax
- .L21:
- lea rax, [rbp-17]
- mov rdi, rax
- call std::allocator<char>::~allocator() [complete object destructor]
- mov rax, rbx
- mov rdi, rax
- call _Unwind_Resume
- mov rbx, rax
- lea rax, [rbp-448]
- mov rdi, rax
- call std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream() [complete object destructor]
- mov rax, rbx
- mov rdi, rax
- call _Unwind_Resume
- .L26:
- mov rbx, QWORD PTR [rbp-8]
- leave
- ret
- .LC1:
- .string "20170101"
- .LC2:
- .string "expired"
- .LC3:
- .string "valid"
- .LC4:
- .string "22000601"
- main:
- push rbp
- mov rbp, rsp
- mov edi, OFFSET FLAT:.LC1
- call operator"" _issued(char const*)
- mov rdi, rax
- call is_expired(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >)
- test al, al
- je .L28
- mov eax, OFFSET FLAT:.LC2
- jmp .L29
- .L28:
- mov eax, OFFSET FLAT:.LC3
- .L29:
- mov rsi, rax
- mov edi, OFFSET FLAT:_ZSt4cout
- call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
- mov esi, OFFSET FLAT:_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
- mov rdi, rax
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
- mov edi, OFFSET FLAT:.LC4
- call operator"" _issued(char const*)
- mov rdi, rax
- call is_expired(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >)
- test al, al
- je .L30
- mov eax, OFFSET FLAT:.LC2
- jmp .L31
- .L30:
- mov eax, OFFSET FLAT:.LC3
- .L31:
- mov rsi, rax
- mov edi, OFFSET FLAT:_ZSt4cout
- call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
- mov esi, OFFSET FLAT:_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
- mov rdi, rax
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
- mov eax, 0
- pop rbp
- ret
- .LC5:
- .string "basic_string: construction from null is not valid"
- __static_initialization_and_destruction_0(int, int):
- push rbp
- mov rbp, rsp
- sub rsp, 16
- mov DWORD PTR [rbp-4], edi
- mov DWORD PTR [rbp-8], esi
- cmp DWORD PTR [rbp-4], 1
- jne .L109
- cmp DWORD PTR [rbp-8], 65535
- jne .L109
- mov edi, OFFSET FLAT:_ZStL8__ioinit
- call std::ios_base::Init::Init() [complete object constructor]
- mov edx, OFFSET FLAT:__dso_handle
- mov esi, OFFSET FLAT:_ZStL8__ioinit
- mov edi, OFFSET FLAT:_ZNSt8ios_base4InitD1Ev
- call __cxa_atexit
- .L109:
- nop
- leave
- ret
- _GLOBAL__sub_I_is_expired(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >):
- push rbp
- mov rbp, rsp
- mov esi, 65535
- mov edi, 1
- call __static_initialization_and_destruction_0(int, int)
- pop rbp
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement