; assembly | /* r2dec pseudo code output */ | /* baljsn_decoder.t/none @ 0x4142c0 */ | #include | ; (fcn) method.void_BloombergLP::bslim::Printer::printAttribute_BloombergLP::s_baltst::Colors.Value__BloombergLP::bslstl::StringRefImp_char__const__BloombergLP::s_baltst::Colors::Value_const__const () | uint64_t method_void_BloombergLP::bslim::Printer::printAttribute_BloombergLP::s_baltst::Colors_Value_BloombergLP::bslstl::StringRefImp_char_const_BloombergLP::s_baltst::Colors::Value_const_const (int64_t arg3, int64_t arg2, int64_t arg1) { | int64_t var_7h; | rdx = arg3; | rsi = arg2; | rdi = arg1; | /* void BloombergLP::bslim::Printer::printAttribute(BloombergLP::bslstl::StringRefImp const&, BloombergLP::s_baltst::Colors::Value const&) const */ 0x004142c0 push rbp | 0x004142c1 push r15 | 0x004142c3 push r14 | 0x004142c5 push rbx | 0x004142c6 push rax | 0x004142c7 mov r15, rdx | r15 = rdx; 0x004142ca mov r14, rsi | r14 = rsi; 0x004142cd mov rbx, rdi | rbx = rdi; 0x004142d0 call 0x4ca8a0 | BloombergLP::bslim::Printer::printIndentation()const (rdi); 0x004142d5 mov rdi, qword [rbx] | 0x004142d8 mov rsi, qword [r14] | 0x004142db mov rdx, qword [r14 + 8] | 0x004142df call 0x417b80 | rax = std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (*(rbx), *(r14), *((r14 + 8))); 0x004142e4 mov esi, 0x4f7134 | 0x004142e9 mov edx, 3 | 0x004142ee mov rdi, rax | 0x004142f1 call 0x417b80 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (rax, 0x4f7134, 3); 0x004142f6 mov r14, qword [rbx] | r14 = *(rbx); 0x004142f9 mov ebp, dword [rbx + 0x14] | ebp = *((rbx + 0x14)); 0x004142fc movsxd rax, dword [r15] | rax = *(r15); 0x004142ff cmp rax, 4 | | if (rax <= 4) { 0x00414303 ja 0x41430f | 0x00414305 mov rbx, qword [rax*8 + 0x4f4f98] | rbx = *((rax*8 + 0x4f4f98)); 0x0041430d jmp 0x414311 | | } else { 0x0041430f xor ebx, ebx | ebx = 0; | } 0x00414311 mov rdi, rbx | 0x00414314 call 0x405eb0 | rax = strlen (rbx); 0x00414319 mov rdi, r14 | 0x0041431c mov rsi, rbx | 0x0041431f mov rdx, rax | 0x00414322 call 0x417b80 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (r14, rbx, rax); 0x00414327 test ebp, ebp | | if (ebp >= 0) { 0x00414329 js 0x414342 | 0x0041432b mov byte [rsp + 7], 0xa | *((rsp + 7)) = 0xa; 0x00414330 lea rsi, [rsp + 7] | 0x00414335 mov edx, 1 | 0x0041433a mov rdi, r14 | 0x0041433d call 0x417b80 | std::_1::basic_ostream>&std::_1::_put_character_sequence>(std::_1::basic_ostream>&,char const*,unsigned long) (r14, rsp + 7, 1); | } 0x00414342 add rsp, 8 | 0x00414346 pop rbx | 0x00414347 pop r14 | 0x00414349 pop r15 | 0x0041434b pop rbp | 0x0041434c ret | return rax; | }