; assembly | /* r2dec pseudo code output */ | /* baljsn_encoder.t/none @ 0x4b67b0 */ | #include | ; (fcn) method.BloombergLP::s_baltst::MySequenceWithChoiceChoice.operator_BloombergLP::s_baltst::MySequenceWithChoiceChoice_const_ () | int64_t method_BloombergLP::s_baltst::MySequenceWithChoiceChoice_operator_BloombergLP::s_baltst::MySequenceWithChoiceChoice_const_ (uint32_t arg2, uint32_t arg1) { | rsi = arg2; | rdi = arg1; | /* BloombergLP::s_baltst::MySequenceWithChoiceChoice::operator=(BloombergLP::s_baltst::MySequenceWithChoiceChoice const&) */ 0x004b67b0 mov rax, rdi | rax = rdi; 0x004b67b3 cmp rdi, rsi | | if (rdi == rsi) { 0x004b67b6 je 0x4b67c5 | goto label_0; | } 0x004b67b8 cmp dword [rsi + 4], 0 | | if (*((rsi + 4)) == 0) { 0x004b67bc je 0x4b67c6 | goto label_1; | } 0x004b67be mov dword [rax + 4], 0xffffffff | *((rax + 4)) = 0xffffffff; | do { | label_0: 0x004b67c5 ret | return rax; | label_1: 0x004b67c6 mov ecx, dword [rsi] | ecx = *(rsi); 0x004b67c8 cmp dword [rax + 4], 0 | 0x004b67cc mov dword [rax], ecx | *(rax) = ecx; 0x004b67ce je 0x4b67c5 | | } while (*((rax + 4)) == 0); 0x004b67d0 mov dword [rax + 4], 0 | *((rax + 4)) = 0; 0x004b67d7 ret | return rax; | }