; assembly | /* r2dec pseudo code output */ | /* bdlat_symbolicconverter.t/none @ 0x404a20 */ | #include | ; (fcn) method.BloombergLP::test::MixedSequence.print_std::__1::basic_ostream_char__std::__1::char_traits_char_____int__int__const () | int64_t method_BloombergLP::test::MixedSequence_print_std::_1::basic_ostream_char_std::_1::char_traits_char_int_int_const (int64_t arg4, int64_t arg3, int64_t arg2, uint32_t arg1) { | int64_t var_4h; | int64_t var_5h; | int64_t var_6h; | int64_t var_7h; | int64_t var_8h; | int64_t var_9h; | int64_t var_ah; | int64_t var_bh; | int64_t var_ch; | int64_t var_dh; | int64_t var_eh; | int64_t var_fh; | size_t * var_10h; | rcx = arg4; | rdx = arg3; | rsi = arg2; | rdi = arg1; | /* BloombergLP::test::MixedSequence::print(std::__1::basic_ostream >&, int, int) const */ 0x00404a20 push rbp | 0x00404a21 push r15 | 0x00404a23 push r14 | 0x00404a25 push r13 | 0x00404a27 push r12 | 0x00404a29 push rbx | 0x00404a2a sub rsp, 0x18 | 0x00404a2e mov r15d, ecx | r15d = ecx; 0x00404a31 mov r14d, edx | r14d = edx; 0x00404a34 mov rbx, rsi | rbx = rsi; 0x00404a37 mov rbp, rdi | 0x00404a3a test edx, edx | | if (edx >= 0) { 0x00404a3c js 0x404a4e | 0x00404a3e mov rdi, rbx | 0x00404a41 mov esi, r14d | 0x00404a44 mov edx, r15d | edx = r15d; 0x00404a47 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404a4c jmp 0x404a51 | | } else { 0x00404a4e neg r14d | r14d = -r14d; | } 0x00404a51 test r15d, r15d | 0x00404a54 mov qword [rsp + 0x10], rbp | *((rsp + 0x10)) = rbp; | if (r15d >= 0) { 0x00404a59 js 0x404cf8 | 0x00404a5f lea r12d, [r14 + 1] | r12d = r14 + 1; 0x00404a63 mov esi, 0x437e2e | 0x00404a68 mov edx, 2 | 0x00404a6d mov rdi, rbx | 0x00404a70 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, 0x437e2e, 2); 0x00404a75 mov rdi, rbx | 0x00404a78 mov esi, r12d | 0x00404a7b mov edx, r15d | edx = r15d; 0x00404a7e call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404a83 mov esi, 0x437ea3 | 0x00404a88 mov edx, 0xd | 0x00404a8d mov rdi, rbx | 0x00404a90 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute1 = ", 0xd); 0x00404a95 mov r13d, r14d | r13d = r14d; 0x00404a98 not r13d | r13d = ~r13d; 0x00404a9b mov rdi, rbp | 0x00404a9e mov rsi, rbx | 0x00404aa1 mov edx, r13d | 0x00404aa4 mov ecx, r15d | 0x00404aa7 call 0x403490 | BloombergLP::test::ChoiceA::print(std::_1::basic_ostream>&,int,int)const (rbp, rbx, r13d, r15d); 0x00404aac mov rdi, rbx | 0x00404aaf mov esi, r12d | 0x00404ab2 mov edx, r15d | edx = r15d; 0x00404ab5 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404aba mov esi, 0x437eb1 | 0x00404abf mov edx, 0xd | 0x00404ac4 mov rdi, rbx | 0x00404ac7 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute2 = ", 0xd); 0x00404acc mov rax, qword [rbx] | rax = *(rbx); 0x00404acf mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404ad3 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404ad8 jne 0x404b1e | 0x00404ada mov rbp, r14 | 0x00404add mov rax, qword [rsp + 0x10] | rax = *((rsp + 0x10)); 0x00404ae2 lea r14, [rax + 0x40] | r14 = rax + 0x40; 0x00404ae6 mov rdi, rbx | 0x00404ae9 mov esi, r13d | 0x00404aec mov edx, r15d | edx = r15d; 0x00404aef call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r13d); 0x00404af4 mov rdi, rbx | 0x00404af7 mov rsi, r14 | 0x00404afa mov r14, rbp | r14 = rbp; 0x00404afd mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404b02 call 0x40f270 | std::_1::basic_ostream>&bsl::operator << ,bsl::allocator>(std::_1::basic_ostream>&,bsl::basic_string,bsl::allocator>const&) (rbx, r14); 0x00404b07 mov byte [rsp + 4], 0xa | *((rsp + 4)) = 0xa; 0x00404b0c lea rsi, [rsp + 4] | 0x00404b11 mov edx, 1 | 0x00404b16 mov rdi, rbx | 0x00404b19 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 4, 1); | } 0x00404b1e mov rdi, rbx | 0x00404b21 mov esi, r12d | 0x00404b24 mov edx, r15d | edx = r15d; 0x00404b27 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404b2c mov esi, 0x437f2c | 0x00404b31 mov edx, 0xd | 0x00404b36 mov rdi, rbx | 0x00404b39 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute3 = ", 0xd); 0x00404b3e lea rdi, [rbp + 0x70] | 0x00404b42 mov rsi, rbx | 0x00404b45 mov edx, r13d | 0x00404b48 mov ecx, r15d | 0x00404b4b call 0x40f980 | BloombergLP::bdlb::NullableValue::print(std::_1::basic_ostream>&,int,int)const (rbp + 0x70, rbx, r13d, r15d); 0x00404b50 mov rdi, rbx | 0x00404b53 mov esi, r12d | 0x00404b56 mov edx, r15d | edx = r15d; 0x00404b59 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404b5e mov esi, 0x437f3a | 0x00404b63 mov edx, 0xd | 0x00404b68 mov rdi, rbx | 0x00404b6b call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute4 = ", 0xd); 0x00404b70 mov rax, qword [rbx] | rax = *(rbx); 0x00404b73 mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404b77 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404b7c jne 0x404bdb | 0x00404b7e mov rdi, rbx | 0x00404b81 mov esi, r13d | 0x00404b84 mov edx, r15d | edx = r15d; 0x00404b87 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r13d); 0x00404b8c mov eax, dword [rbp + 0x78] | eax = *((rbp + 0x78)); 0x00404b8f xor ecx, ecx | ecx = 0; 0x00404b91 cmp eax, 2 | 0x00404b94 mov edx, 0x437e86 | edx = "VALUE2"; | if (eax == 2) { 0x00404b99 cmove rcx, rdx | rcx = rdx; | } 0x00404b9d cmp eax, 1 | 0x00404ba0 mov ebp, 0x437e7f | | if (eax != 1) { 0x00404ba5 cmovne rbp, rcx | | } 0x00404ba9 mov rdi, rbp | 0x00404bac call 0x402ef0 | rax = strlen (rbp); 0x00404bb1 mov rdi, rbx | 0x00404bb4 mov rsi, rbp | 0x00404bb7 mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404bbc mov rdx, rax | 0x00404bbf call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rbp, rax); 0x00404bc4 mov byte [rsp + 5], 0xa | *((rsp + 5)) = 0xa; 0x00404bc9 lea rsi, [rsp + 5] | 0x00404bce mov edx, 1 | 0x00404bd3 mov rdi, rbx | 0x00404bd6 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 5, 1); | } 0x00404bdb mov rdi, rbx | 0x00404bde mov esi, r12d | 0x00404be1 mov edx, r15d | edx = r15d; 0x00404be4 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404be9 mov esi, 0x437f48 | 0x00404bee mov edx, 0xd | 0x00404bf3 mov rdi, rbx | 0x00404bf6 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute5 = ", 0xd); 0x00404bfb mov rax, qword [rbx] | rax = *(rbx); 0x00404bfe mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404c02 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404c07 jne 0x404c39 | 0x00404c09 mov rdi, rbx | 0x00404c0c mov esi, r13d | 0x00404c0f mov edx, r15d | edx = r15d; 0x00404c12 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r13d); 0x00404c17 mov esi, dword [rbp + 0x7c] | esi = *((rbp + 0x7c)); 0x00404c1a mov rdi, rbx | rdi = rbx; 0x00404c1d call 0x4030b0 | std::_1::basic_ostream>::operator << (int) (); 0x00404c22 mov byte [rsp + 6], 0xa | *((rsp + 6)) = 0xa; 0x00404c27 lea rsi, [rsp + 6] | 0x00404c2c mov edx, 1 | 0x00404c31 mov rdi, rbx | 0x00404c34 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 6, 1); | } 0x00404c39 mov rdi, rbx | 0x00404c3c mov esi, r12d | 0x00404c3f mov edx, r15d | edx = r15d; 0x00404c42 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404c47 mov esi, 0x437f56 | 0x00404c4c mov edx, 0xd | 0x00404c51 mov rdi, rbx | 0x00404c54 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute6 = ", 0xd); 0x00404c59 mov rax, qword [rbx] | rax = *(rbx); 0x00404c5c mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404c60 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404c65 jne 0x404ca8 | 0x00404c67 mov rax, qword [rsp + 0x10] | rax = *((rsp + 0x10)); 0x00404c6c lea rbp, [rax + 0x80] | rbp = rax + 0x80; 0x00404c73 mov rdi, rbx | 0x00404c76 mov esi, r13d | 0x00404c79 mov edx, r15d | edx = r15d; 0x00404c7c call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r13d); 0x00404c81 mov rdi, rbx | 0x00404c84 mov rsi, rbp | 0x00404c87 mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404c8c call 0x40f270 | std::_1::basic_ostream>&bsl::operator << ,bsl::allocator>(std::_1::basic_ostream>&,bsl::basic_string,bsl::allocator>const&) (rbx, rbp); 0x00404c91 mov byte [rsp + 7], 0xa | *((rsp + 7)) = 0xa; 0x00404c96 lea rsi, [rsp + 7] | 0x00404c9b mov edx, 1 | 0x00404ca0 mov rdi, rbx | 0x00404ca3 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 7, 1); | } 0x00404ca8 mov rdi, rbx | 0x00404cab mov esi, r12d | 0x00404cae mov edx, r15d | edx = r15d; 0x00404cb1 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r12d); 0x00404cb6 mov esi, 0x437f64 | 0x00404cbb mov edx, 0xd | 0x00404cc0 mov rdi, rbx | 0x00404cc3 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute7 = ", 0xd); 0x00404cc8 add rbp, 0xb0 | rbp += 0xb0; 0x00404ccf mov rdi, rbp | 0x00404cd2 mov rsi, rbx | 0x00404cd5 mov edx, r13d | 0x00404cd8 mov ecx, r15d | 0x00404cdb call 0x403bb0 | BloombergLP::test::SequenceA::print(std::_1::basic_ostream>&,int,int)const (rbp, rbx, r13d, r15d); 0x00404ce0 mov rdi, rbx | 0x00404ce3 mov esi, r14d | 0x00404ce6 mov edx, r15d | edx = r15d; 0x00404ce9 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404cee mov esi, 0x437e62 | esi = 0x437e62; 0x00404cf3 jmp 0x404f59 | | } else { 0x00404cf8 mov byte [rsp + 8], 0x5b | *((rsp + 8)) = 0x5b; 0x00404cfd lea rsi, [rsp + 8] | 0x00404d02 mov edx, 1 | 0x00404d07 mov rdi, rbx | 0x00404d0a call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 8, 1); 0x00404d0f mov byte [rsp + 9], 0x20 | *((rsp + 9)) = 0x20; 0x00404d14 lea rsi, [rsp + 9] | 0x00404d19 mov edx, 1 | 0x00404d1e mov rdi, rbx | 0x00404d21 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 9, 1); 0x00404d26 mov esi, 0x437ea3 | 0x00404d2b mov edx, 0xd | 0x00404d30 mov rdi, rbx | 0x00404d33 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute1 = ", 0xd); 0x00404d38 not r14d | r14d = ~r14d; 0x00404d3b mov rdi, rbp | 0x00404d3e mov rsi, rbx | 0x00404d41 mov edx, r14d | 0x00404d44 mov ecx, r15d | 0x00404d47 call 0x403490 | BloombergLP::test::ChoiceA::print(std::_1::basic_ostream>&,int,int)const (rbp, rbx, r14d, r15d); 0x00404d4c mov byte [rsp + 0xa], 0x20 | *((rsp + 0xa)) = 0x20; 0x00404d51 lea rsi, [rsp + 0xa] | 0x00404d56 mov edx, 1 | 0x00404d5b mov rdi, rbx | 0x00404d5e call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xa, 1); 0x00404d63 mov esi, 0x437eb1 | 0x00404d68 mov edx, 0xd | 0x00404d6d mov rdi, rbx | 0x00404d70 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute2 = ", 0xd); 0x00404d75 mov rax, qword [rbx] | rax = *(rbx); 0x00404d78 mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404d7c test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404d81 jne 0x404daa | 0x00404d83 mov rax, qword [rsp + 0x10] | rax = *((rsp + 0x10)); 0x00404d88 lea rbp, [rax + 0x40] | rbp = rax + 0x40; 0x00404d8c mov rdi, rbx | 0x00404d8f mov esi, r14d | 0x00404d92 mov edx, r15d | edx = r15d; 0x00404d95 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404d9a mov rdi, rbx | 0x00404d9d mov rsi, rbp | 0x00404da0 mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404da5 call 0x40f270 | std::_1::basic_ostream>&bsl::operator << ,bsl::allocator>(std::_1::basic_ostream>&,bsl::basic_string,bsl::allocator>const&) (rbx, rbp); | } 0x00404daa mov byte [rsp + 0xb], 0x20 | *((rsp + 0xb)) = 0x20; 0x00404daf lea rsi, [rsp + 0xb] | 0x00404db4 mov edx, 1 | 0x00404db9 mov rdi, rbx | 0x00404dbc call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xb, 1); 0x00404dc1 mov esi, 0x437f2c | 0x00404dc6 mov edx, 0xd | 0x00404dcb mov rdi, rbx | 0x00404dce call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute3 = ", 0xd); 0x00404dd3 lea rdi, [rbp + 0x70] | 0x00404dd7 mov rsi, rbx | 0x00404dda mov edx, r14d | 0x00404ddd mov ecx, r15d | 0x00404de0 call 0x40f980 | BloombergLP::bdlb::NullableValue::print(std::_1::basic_ostream>&,int,int)const (rbp + 0x70, rbx, r14d, r15d); 0x00404de5 mov byte [rsp + 0xc], 0x20 | *((rsp + 0xc)) = 0x20; 0x00404dea lea rsi, [rsp + 0xc] | 0x00404def mov edx, 1 | 0x00404df4 mov rdi, rbx | 0x00404df7 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xc, 1); 0x00404dfc mov esi, 0x437f3a | 0x00404e01 mov edx, 0xd | 0x00404e06 mov rdi, rbx | 0x00404e09 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute4 = ", 0xd); 0x00404e0e mov rax, qword [rbx] | rax = *(rbx); 0x00404e11 mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404e15 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404e1a jne 0x404e62 | 0x00404e1c mov rdi, rbx | 0x00404e1f mov esi, r14d | 0x00404e22 mov edx, r15d | edx = r15d; 0x00404e25 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404e2a mov eax, dword [rbp + 0x78] | eax = *((rbp + 0x78)); 0x00404e2d xor ecx, ecx | ecx = 0; 0x00404e2f cmp eax, 2 | 0x00404e32 mov edx, 0x437e86 | edx = "VALUE2"; | if (eax == 2) { 0x00404e37 cmove rcx, rdx | rcx = rdx; | } 0x00404e3b cmp eax, 1 | 0x00404e3e mov ebp, 0x437e7f | | if (eax != 1) { 0x00404e43 cmovne rbp, rcx | | } 0x00404e47 mov rdi, rbp | 0x00404e4a call 0x402ef0 | rax = strlen (rbp); 0x00404e4f mov rdi, rbx | 0x00404e52 mov rsi, rbp | 0x00404e55 mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404e5a mov rdx, rax | 0x00404e5d call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rbp, rax); | } 0x00404e62 mov byte [rsp + 0xd], 0x20 | *((rsp + 0xd)) = 0x20; 0x00404e67 lea rsi, [rsp + 0xd] | 0x00404e6c mov edx, 1 | 0x00404e71 mov rdi, rbx | 0x00404e74 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xd, 1); 0x00404e79 mov esi, 0x437f48 | 0x00404e7e mov edx, 0xd | 0x00404e83 mov rdi, rbx | 0x00404e86 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute5 = ", 0xd); 0x00404e8b mov rax, qword [rbx] | rax = *(rbx); 0x00404e8e mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404e92 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404e97 jne 0x404eb2 | 0x00404e99 mov rdi, rbx | 0x00404e9c mov esi, r14d | 0x00404e9f mov edx, r15d | edx = r15d; 0x00404ea2 call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404ea7 mov esi, dword [rbp + 0x7c] | esi = *((rbp + 0x7c)); 0x00404eaa mov rdi, rbx | rdi = rbx; 0x00404ead call 0x4030b0 | std::_1::basic_ostream>::operator << (int) (); | } 0x00404eb2 mov byte [rsp + 0xe], 0x20 | *((rsp + 0xe)) = 0x20; 0x00404eb7 lea rsi, [rsp + 0xe] | 0x00404ebc mov edx, 1 | 0x00404ec1 mov rdi, rbx | 0x00404ec4 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xe, 1); 0x00404ec9 mov esi, 0x437f56 | 0x00404ece mov edx, 0xd | 0x00404ed3 mov rdi, rbx | 0x00404ed6 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute6 = ", 0xd); 0x00404edb mov rax, qword [rbx] | rax = *(rbx); 0x00404ede mov rax, qword [rax - 0x18] | rax = *((rax - 0x18)); 0x00404ee2 test byte [rbx + rax + 0x20], 1 | | if ((*((rbx + rax + 0x20)) & 1) == 0) { 0x00404ee7 jne 0x404f13 | 0x00404ee9 mov rax, qword [rsp + 0x10] | rax = *((rsp + 0x10)); 0x00404eee lea rbp, [rax + 0x80] | rbp = rax + 0x80; 0x00404ef5 mov rdi, rbx | 0x00404ef8 mov esi, r14d | 0x00404efb mov edx, r15d | edx = r15d; 0x00404efe call 0x4111e0 | BloombergLP::bdlb::Print::indent(std::_1::basic_ostream>&,int,int) (rbx, r14d); 0x00404f03 mov rdi, rbx | 0x00404f06 mov rsi, rbp | 0x00404f09 mov rbp, qword [rsp + 0x10] | rbp = *((rsp + 0x10)); 0x00404f0e call 0x40f270 | std::_1::basic_ostream>&bsl::operator << ,bsl::allocator>(std::_1::basic_ostream>&,bsl::basic_string,bsl::allocator>const&) (rbx, rbp); | } 0x00404f13 mov byte [rsp + 0xf], 0x20 | *((rsp + 0xf)) = 0x20; 0x00404f18 lea rsi, [rsp + 0xf] | 0x00404f1d mov edx, 1 | 0x00404f22 mov rdi, rbx | 0x00404f25 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, rsp + 0xf, 1); 0x00404f2a mov esi, 0x437f64 | 0x00404f2f mov edx, 0xd | 0x00404f34 mov rdi, rbx | 0x00404f37 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, "Attribute7 = ", 0xd); 0x00404f3c add rbp, 0xb0 | rbp += 0xb0; 0x00404f43 mov rdi, rbp | 0x00404f46 mov rsi, rbx | 0x00404f49 mov edx, r14d | 0x00404f4c mov ecx, r15d | 0x00404f4f call 0x403bb0 | BloombergLP::test::SequenceA::print(std::_1::basic_ostream>&,int,int)const (rbp, rbx, r14d, r15d); 0x00404f54 mov esi, 0x437e7c | | } 0x00404f59 mov edx, 2 | 0x00404f5e mov rdi, rbx | 0x00404f61 call 0x40f6c0 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rbx, 0x437e7c, 2); 0x00404f66 mov rdi, rbx | rdi = rbx; 0x00404f69 call 0x4030c0 | std::_1::basic_ostream>::flush() (); 0x00404f6e mov rax, rbx | rax = rbx; 0x00404f71 add rsp, 0x18 | 0x00404f75 pop rbx | 0x00404f76 pop r12 | 0x00404f78 pop r13 | 0x00404f7a pop r14 | 0x00404f7c pop r15 | 0x00404f7e pop rbp | 0x00404f7f ret | return rax; | }