============================== Sample 1 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined _wrap_plfit_continuous_options_t___str__() ;local_10 undefined8 -10 ;local_18 undefined8 -18 PUSH RBP SUB RSP,0x10 MOV RAX,qword ptr FS:[0x28] MOV qword ptr [RSP + local_10+0x18],RAX XOR EAX,EAX MOV qword ptr [RSP]=>local_18,0x0 TEST RSI,RSI JZ LAB_0010a4b8 MOV RDX,qword ptr [.bss:swig_types] ;=?? MOV RDI,RSI XOR ECX,ECX MOV RSI,RSP CALL SWIG_Python_ConvertPtrAndOwn.constprop.0 ;undefined SWIG_Python_ConvertPtrAndO... MOV EDI,EAX TEST EAX,EAX JS LAB_0010a490 MOV RAX,qword ptr [RSP]=>local_18 SUB RSP,0x8 LEA RBP,[.bss:temp.17] ;=?? LEA RCX,[.rodata:s_finite_size_correction_=_%d,_xmi_0010e910] ;= "finite_size_correction = %d, xmin... MOV EDX,0x200 MOV ESI,0x1 MOV RDI=>.bss:temp.17,RBP ;=?? MOVSD XMM0,qword ptr [RAX + 0x10] MOV R9D,dword ptr [RAX + 0x4] MOVZX R8D,word ptr [RAX] MOV EAX,dword ptr [RAX + 0x8] PUSH RAX MOV EAX,0x1 CALL .plt:::__sprintf_chk ;undefined __sprintf_chk() MOV RDI=>.bss:temp.17,RBP ;=?? CALL .plt:::strlen ;size_t strlen(char * __s) LEA RDX,[.rodata:s_surrogateescape_0010c24e] ;= "surrogateescape" MOV RDI=>.bss:temp.17,RBP ;=?? MOV RSI,RAX CALL .plt:::PyUnicode_DecodeUTF8 ;undefined PyUnicode_DecodeUTF8() POP RDX POP RCX LAB_0010a47a: MOV RDX,qword ptr [RSP + local_10+0x18] SUB RDX,qword ptr FS:[0x28] JNZ LAB_0010a4bc ADD RSP,0x10 POP RBP RET LAB_0010a490: CMP EAX,-0x1 MOV EAX,0xfffffffb LEA RSI,[.rodata:s_in_method_'plfit_continuous_opti_0010e8a0] ;= "in method 'plfit_continuous_optio... CMOVZ EDI,EAX CALL SWIG_Python_ErrorType ;undefined SWIG_Python_ErrorType() MOV RDI,RAX CALL .plt:::PyErr_SetString ;undefined PyErr_SetString() XOR EAX,EAX JMP LAB_0010a47a ?? 0Fh ?? 1Fh ?? 44h D ?? 00h ?? 00h LAB_0010a4b8: XOR EAX,EAX JMP LAB_0010a47a LAB_0010a4bc: CALL .plt:::__stack_chk_fail ;undefined __stack_chk_fail() NOP dword ptr CS:[RAX + RAX*0x1] Actual src: SWIGINTERN PyObject *_wrap_plfit_continuous_options_t___str__(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; struct _plfit_continuous_options_t *arg1 = (struct _plfit_continuous_options_t *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; char *result = 0 ; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p__plfit_continuous_options_t, 0 | 0 ); if (!SWIG_IsOK(res1)) { SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plfit_continuous_options_t___str__" "', argument " "1"" of type '" "struct _plfit_continuous_options_t *""'"); } arg1 = (struct _plfit_continuous_options_t *)(argp1); result = (char *)_plfit_continuous_options_t___str__(arg1); resultobj = SWIG_FromCharPtr((const char *)result); return resultobj; fail: return NULL; } Predicted src: SWIGINTERN PyObject *_wrap_hidpp20_str___min_size(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; struct hidpp20_str *arg1 = (struct hidpp20_str *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; char *result = 0 ; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_hidpp20_str, 0 | 0 ); if (!SWIG_IsOK(res1)) { SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "hidpp20_str___min_size" "', argument " "1"" of type '" "struct hidpp20_str *""'"); } arg1 = (struct hidpp20_str *)(argp1); result = (char *)hidpp20_str___min_size((struct hidpp20_str const *)arg1); resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_char, 0 | 0 ); return resultobj; fail: return NULL; } ============================== Sample 2 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined gp_arrow_button_constructed() PUSH RBP MOV RBP,RDI MOV RDI,qword ptr [.bss:gp_arrow_button_parent_class] ;=?? MOV ESI,0x50 CALL .plt:::g_type_check_class_cast ;undefined g_type_check_class_cast() MOV RDI,RBP CALL qword ptr [RAX + 0x48] CALL .plt:::gtk_widget_get_type ;undefined gtk_widget_get_type() MOV RDI,RBP MOV RSI,RAX CALL .plt:::g_type_check_instance_cast ;undefined g_type_check_instance_cast() MOV RDI,RAX CALL .plt:::gtk_widget_get_accessible ;undefined gtk_widget_get_accessible() LEA RSI,[.rodata:s_Hide_Panel_00138771] ;= "Hide Panel" XOR EDI,EDI MOV EDX,0x5 MOV RBP,RAX CALL .plt:::dcgettext ;undefined dcgettext() MOV RDI,RBP POP RBP MOV RSI,RAX JMP .plt:::atk_object_set_name ;undefined atk_object_set_name() ?? 66h f Actual src: static void gp_arrow_button_constructed (GObject *object) { GtkWidget *widget; AtkObject *atk; G_OBJECT_CLASS (gp_arrow_button_parent_class)->constructed (object); widget = GTK_WIDGET (object); atk = gtk_widget_get_accessible (widget); atk_object_set_name (atk, _("Hide Panel")); } Predicted src: static void gtk_accessible_button_set_name (GtkWidget *widget) { GtkButton *accessible; widget = GTK_WIDGET (widget); g_object_set (accessible, "name", NULL); GTK_WIDGET_CLASS (gtk_accessible_button_parent_class)->set_name (widget); } ============================== Sample 3 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined gst_audio_channel_mixer_mix_float_planar_planar() MOVSXD RAX,ECX PUSH R14 PUSH R13 PUSH R12 PUSH RBP PUSH RBX MOV EBX,dword ptr [RDI] MOV R14D,dword ptr [RDI + 0x4] TEST EAX,EAX JLE LAB_00117f1a MOV RBP,RDI LEA R13,[RAX*0x4] MOV R9,RSI XOR EDI,EDI LEA EAX,[R14 + -0x1] MOV R11,RDX PXOR XMM2,XMM2 MOVSXD R10,EBX LEA R12,[0x4 + RAX*0x4] NOP LAB_00117ec0: XOR ESI,ESI TEST R14D,R14D JLE LAB_00117f11 NOP word ptr [RAX + RAX*0x1] LAB_00117ed0: MOVAPS XMM1,XMM2 TEST EBX,EBX JLE LAB_00117eff MOV R8,qword ptr [RBP + 0x8] XOR EAX,EAX MOVAPS XMM1,XMM2 LAB_00117ee0: MOV RCX,qword ptr [R8 + RAX*0x8] MOV RDX,qword ptr [R9 + RAX*0x8] ADD RAX,0x1 MOVSS XMM0,dword ptr [RCX + RSI*0x1] MULSS XMM0,dword ptr [RDX + RDI*0x1] ADDSS XMM1,XMM0 CMP R10,RAX JNZ LAB_00117ee0 LAB_00117eff: MOV RAX,qword ptr [R11 + RSI*0x2] ADD RSI,0x4 MOVSS dword ptr [RAX + RDI*0x1],XMM1 CMP R12,RSI JNZ LAB_00117ed0 LAB_00117f11: ADD RDI,0x4 CMP R13,RDI JNZ LAB_00117ec0 LAB_00117f1a: POP RBX POP RBP POP R12 POP R13 POP R14 RET ?? 66h f Actual src: DEFINE_FLOAT_MIX_FUNC (float, planar, planar); Predicted src: static void gst_audio_audio_audio_channel_audio_float_audio_float (GstAudioChannel * self, guint n, const GValue * value, gpointer user_data) { guint i; guint n = 0; guint i; for (i = 0; i < n; i++) { for (i = 0; i < n; i++) { gst_audio_channel_audio_channel_audio_float_audio_float_audio_float_audio (self, i, value[i]); } } } ============================== Sample 4 ============================== ASM: ;************************************************************************************************************************************************************ ;* pugi::xml_node::hash_value() const * ;************************************************************************************************************************************************************ ;undefined hash_value(xml_node * this) ;this xml_node * RDI MOV RAX,qword ptr [this] SHR RAX,0x6 RET ?? 0Fh Actual src: size_t xml_node::hash_value() const { return static_cast(reinterpret_cast(_root) / sizeof(xml_node_struct)); } Predicted src: const char * xml_node::value_value() const { return m_value; } ============================== Sample 5 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined CompositorNodeBlur_use_bokeh_get() MOV RAX,qword ptr [RDI + 0x10] MOV RAX,qword ptr [RAX + 0xf0] MOVZX EAX,byte ptr [RAX + 0x1e] AND EAX,0x1 RET ?? 66h f Actual src: bool CompositorNodeBlur_use_bokeh_get(PointerRNA *ptr) { NodeBlurData *data = (NodeBlurData *)(((bNode *)ptr->data)->storage); return (((data->bokeh) & 1)!= 0); } Predicted src: bool Brush_use_node_use_get(PointerRNA *ptr) { Brush *data = (Brush *)(ptr->data); return (((data->flag) & 4)!= 0); }