; assembly | /* r2dec pseudo code output */ | /* balxml_decoder.t/assume @ 0x4f9a80 */ | #include | ; (fcn) method.int_BloombergLP::s_baltst::MySequenceWithAnonymousChoiceChoice::manipulateSelection_BloombergLP::balxml.Decoder_ParseObject__BloombergLP::balxml::Decoder_ParseObject_ () | int32_t method_int_BloombergLP::s_baltst::MySequenceWithAnonymousChoiceChoice::manipulateSelection_BloombergLP::balxml_Decoder_ParseObject_BloombergLP::balxml::Decoder_ParseObject_ (int64_t arg2, int64_t arg1) { | int64_t var_8h; | int64_t var_10h; | rsi = arg2; | rdi = arg1; | /* int BloombergLP::s_baltst::MySequenceWithAnonymousChoiceChoice::manipulateSelection(BloombergLP::balxml::Decoder_ParseObject&) */ 0x004f9a80 push r14 | 0x004f9a82 push rbx | 0x004f9a83 sub rsp, 0x48 | 0x004f9a87 mov rbx, rsi | rbx = rsi; 0x004f9a8a mov rsi, rdi | rsi = rdi; 0x004f9a8d mov eax, dword [rdi + 0x30] | eax = *((rdi + 0x30)); 0x004f9a90 cmp eax, 1 | | if (eax != 1) { 0x004f9a93 je 0x4f9ac7 | 0x004f9a95 test eax, eax | | if (eax == 0) { 0x004f9a97 jne 0x4f9aef | 0x004f9a99 mov eax, dword [rip + 0x10dff1] | eax = *(0x00607a90); 0x004f9a9f mov qword [rsp], 0x6057b8 | *(rsp) = vtable.BloombergLP::balxml::Decoder_SimpleContext_int_.0; 0x004f9aa7 mov dword [rsp + 8], eax | *((rsp + 8)) = eax; 0x004f9aab mov qword [rsp + 0x10], rsi | *((rsp + 0x10)) = rsi; 0x004f9ab0 mov rsi, qword [rbx] | 0x004f9ab3 mov rdi, rsp | 0x004f9ab6 call 0x4fe170 | eax = BloombergLP::balxml::Decoder_ElementContext::beginParse(BloombergLP::balxml::Decoder*) (rsp, *(rbx)); 0x004f9abb mov ebx, eax | ebx = eax; 0x004f9abd mov rdi, rsp | rdi = rsp; 0x004f9ac0 call 0x4ffa80 | BloombergLP::balxml::Decoder_ElementContext::~Decoder_ElementContext() (); 0x004f9ac5 jmp 0x4f9af4 | | } else { 0x004f9ac7 mov edx, dword [rip + 0x10dfeb] | edx = *(0x00607ab8); 0x004f9acd mov r14, rsp | r14 = rsp; 0x004f9ad0 mov rdi, r14 | 0x004f9ad3 call 0x4ff6b0 | BloombergLP::balxml::Decoder_StdStringContext::Decoder_StdStringContext(bsl::basic_string,bsl::allocator>*,int) (rsp, rsi); 0x004f9ad8 mov rsi, qword [rbx] | 0x004f9adb mov rdi, r14 | 0x004f9ade call 0x4fe170 | eax = BloombergLP::balxml::Decoder_ElementContext::beginParse(BloombergLP::balxml::Decoder*) (r14, *(rbx)); 0x004f9ae3 mov ebx, eax | ebx = eax; 0x004f9ae5 mov rdi, rsp | rdi = rsp; 0x004f9ae8 call 0x4ff740 | BloombergLP::balxml::Decoder_StdStringContext::~Decoder_StdStringContext() (); 0x004f9aed jmp 0x4f9af4 | | } else { 0x004f9aef mov ebx, 0xffffffff | ebx = 0xffffffff; | } | } 0x004f9af4 mov eax, ebx | eax = 0xffffffff; 0x004f9af6 add rsp, 0x48 | 0x004f9afa pop rbx | 0x004f9afb pop r14 | 0x004f9afd ret | return eax; | }