; assembly | /* r2dec pseudo code output */ | /* bdlma_countingallocator.t/none @ 0x4043f0 */ | #include | ; (fcn) method.DoubleStack.pop__ () | int64_t method_DoubleStack_pop_ (int64_t arg1) { | rdi = arg1; | /* DoubleStack::pop() */ 0x004043f0 push rbx | 0x004043f1 mov rbx, rdi | rbx = rdi; 0x004043f4 mov rax, qword [rdi] | rax = *(rdi); 0x004043f7 mov rdi, qword [rdi + 0x10] | rdi = *((rdi + 0x10)); 0x004043fb movsxd rcx, dword [rbx + 0xc] | rcx = *((rbx + 0xc)); 0x004043ff mov rsi, qword [rax + rcx*8 - 8] | rsi = *((rax + rcx*8 - 8)); 0x00404404 mov rax, qword [rdi] | rax = *(rdi); 0x00404407 call qword [rax + 0x18] | uint64_t (*rax + 0x18)(void) (rbx); 0x0040440a dec dword [rbx + 0xc] | *((rbx + 0xc))--; 0x0040440d pop rbx | 0x0040440e ret | return rax; | }