; assembly | /* r2dec pseudo code output */ | /* ball_log.t/none @ 0x498300 */ | #include | ; (fcn) method.BloombergLP::ball::Record.Record_BloombergLP::ball::Record_const__BloombergLP::bslma::Allocator_ () | int64_t method_BloombergLP::ball::Record_Record_BloombergLP::ball::Record_const_BloombergLP::bslma::Allocator_ (int64_t arg3, int64_t arg2, int64_t arg1) { | rdx = arg3; | rsi = arg2; | rdi = arg1; | /* BloombergLP::ball::Record::Record(BloombergLP::ball::Record const&, BloombergLP::bslma::Allocator*) */ 0x00498300 push rbp | 0x00498301 push r15 | 0x00498303 push r14 | 0x00498305 push r13 | 0x00498307 push r12 | 0x00498309 push rbx | 0x0049830a push rax | 0x0049830b mov r14, rdx | r14 = rdx; 0x0049830e mov rbx, rsi | rbx = rsi; 0x00498311 mov r13, rdi | r13 = rdi; 0x00498314 mov qword [rdi], 0x50e8a8 | *(rdi) = vtable.BloombergLP::ball::CountingAllocator.0; 0x0049831b mov qword [rdi + 8], 0 | *((rdi + 8)) = 0; 0x00498323 mov rax, rdx | rax = rdx; 0x00498326 test rdx, rdx | | if (rdx == 0) { 0x00498329 jne 0x49833c | 0x0049832b mov rax, qword [rip + 0x2dcace] | rax = BloombergLP::bslma::Default::s_defaultAllocator; 0x00498332 test rax, rax | | if (rax != 0) { 0x00498335 jne 0x49833c | goto label_0; | } 0x00498337 call 0x4db190 | rax = BloombergLP::bslma::Default::determineAndReturnDefaultAllocator() (); | } | label_0: 0x0049833c mov qword [r13 + 0x10], rax | *((r13 + 0x10)) = rax; 0x00498340 lea rdi, [r13 + 0x18] | 0x00498344 lea rsi, [rbx + 0x18] | 0x00498348 mov rdx, r13 | 0x0049834b call 0x4b0d40 | BloombergLP::ball::RecordAttributes::RecordAttributes(BloombergLP::ball::RecordAttributesconst&,BloombergLP::bslma::Allocator*) (r13 + 0x18, rbx + 0x18, r13); 0x00498350 lea r15, [r13 + 0xe8] | r15 = r13 + 0xe8; 0x00498357 lea rsi, [rbx + 0xe8] | 0x0049835e mov qword [rsp], r13 | *(rsp) = r13; 0x00498362 mov rdx, rsp | 0x00498365 mov rdi, r15 | 0x00498368 call 0x49bd30 | bsl::vector>::vector(bsl::vector>const&,bsl::allocatorconst&) (r15, rbx + 0xe8, rsp); 0x0049836d lea r12, [r13 + 0x108] | r12 = r13 + 0x108; 0x00498374 mov qword [rsp], r13 | *(rsp) = r13; 0x00498378 add rbx, 0x108 | rbx += 0x108; 0x0049837f mov rdx, rsp | 0x00498382 mov rdi, r12 | 0x00498385 mov rsi, rbx | 0x00498388 call 0x49bc90 | bsl::vector>::vector(bsl::vector>const&,bsl::allocatorconst&) (r12, rbx, rsp); 0x0049838d test r14, r14 | | if (r14 == 0) { 0x00498390 jne 0x4983a6 | 0x00498392 mov r14, qword [rip + 0x2dca67] | r14 = BloombergLP::bslma::Default::s_defaultAllocator; 0x00498399 test r14, r14 | | if (r14 != 0) { 0x0049839c jne 0x4983a6 | goto label_1; | } 0x0049839e call 0x4db190 | rax = BloombergLP::bslma::Default::determineAndReturnDefaultAllocator() (); 0x004983a3 mov r14, rax | r14 = rax; | } | label_1: 0x004983a6 mov qword [r13 + 0x128], r14 | *((r13 + 0x128)) = r14; 0x004983ad add rsp, 8 | 0x004983b1 pop rbx | 0x004983b2 pop r12 | 0x004983b4 pop r13 | 0x004983b6 pop r14 | 0x004983b8 pop r15 | 0x004983ba pop rbp | 0x004983bb ret | return rax; | }