============================== Sample 1 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined conf_setAudioDefaults() SUB RSP,0x8 MOV RDI,qword ptr [.bss:conf[88]] TEST RDI,RDI JZ LAB_0011bdd5 CALL .plt:::free ;void free(void * __ptr) LAB_0011bdd5: LEA RDI,[.rodata:s_openal_001f5946] ;= "openal" CALL .plt:::strdup ;char * strdup(char * __s) MOV dword ptr [.bss:conf[112]],0x0 MOV qword ptr [.bss:conf[88]],RAX MOV RAX,0x100000080 MOV qword ptr [.bss:conf[96]],RAX MOV RAX,0x8000000001 MOV qword ptr [.bss:conf[104]],RAX MOV RAX,qword ptr [.rodata:DAT_001f43c0] ;= 3FE3333333333333h MOV qword ptr [.bss:conf[120]],RAX MOV RAX,qword ptr [.rodata:DAT_001f49a0] ;= 3FE999999999999Ah MOV qword ptr [.bss:conf[128]],RAX ADD RSP,0x8 RET ?? 66h f Actual src: void conf_setAudioDefaults (void) { if (conf.sound_backend!= NULL) { free(conf.sound_backend); conf.sound_backend = NULL; } /* Sound. */ conf.sound_backend = strdup(BACKEND_DEFAULT); conf.snd_voices = VOICES_DEFAULT; conf.snd_pilotrel = PILOT_RELATIVE_DEFAULT; conf.al_efx = USE_EFX_DEFAULT; conf.al_bufsize = BUFFER_SIZE_DEFAULT; conf.nosound = MUTE_SOUND_DEFAULT; conf.sound = SOUND_VOLUME_DEFAULT; conf.music = MUSIC_VOLUME_DEFAULT; } Predicted src: void set_open(void) { if (open) open->open = strdup("open"); open->open = NULL; open->open = NULL; } ============================== Sample 2 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined geary_imap_engine_account_processor_test_new() SUB RSP,0x8 CALL geary_imap_engine_account_processor_test_get_type ;undefined geary_imap_engine_account_... ADD RSP,0x8 MOV RDI,RAX JMP geary_imap_engine_account_processor_test_construct ;undefined geary_imap_engine_account_... ?? 66h f Actual src: GearyImapEngineAccountProcessorTest* geary_imap_engine_account_processor_test_new (void) { return geary_imap_engine_account_processor_test_construct (GEARY_IMAP_ENGINE_TYPE_ACCOUNT_PROCESSOR_TEST); } Predicted src: GearyFolderFolder* geary_imap_engine_engine_engine_account_new (void) { return geary_imap_engine_engine_account_construct (GEARY_IMAP_TYPE_engine_engine_account_account); } ============================== Sample 3 ============================== ASM: MOV word ptr [RBP + local_3f0+0x8],AX LEA param_3=>local_3f0,[RBP + -0x3e8] LEA RAX=>local_3ee,[RBP + -0x3e6] MOV param_2,param_3 MOV param_1,RAX CALL poly_int<1u,unsigned_short>::poly_int ;undefined poly_int(p... MOVZX EAX,word ptr [RBP + local_3ee+0x8] MOV word ptr [RBP + local_3f2+0x8],AX LEA param_3=>local_3f8,[RBP + -0x3f0] LEA RAX=>local_3f2,[RBP + -0x3ea] MOV param_2,param_3 MOV param_1,RAX CALL operator* ;poly_int operator*(poly_int_pod * pa... MOV qword ptr [RBP + local_400+0x8],RAX LEA param_3=>local_400,[RBP + -0x3f8] LEA RAX=>local_402,[RBP + -0x3fa] MOV param_2,param_3 Actual src: scope_kind innermost_scope_kind (void) { return current_binding_level->kind; } Predicted src: void set_vector_type (tree t) { vector_type (t); } ============================== Sample 4 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined igListBoxFnBoolPtr(char * param_1, int * param_2, FuncDef47 * param_3, void * param_4, int param_5, int param_6) ;param_1 char * RDI ;param_2 int * RSI ;param_3 FuncDef47 * RDX ;param_4 void * RCX ;param_5 int R8D ;param_6 int R9D JMP ImGui::ListBox ?? 66h f Actual src: CIMGUI_API bool igListBoxFnBoolPtr(const char* label,int* current_item,bool(*items_getter)(void* data,int idx,const char** out_text),void* data,int items_count,int height_in_items) { return ImGui::ListBox(label,current_item,items_getter,data,items_count,height_in_items); } Predicted src: CIMGUI_API bool ig igPtr igPtr(const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id,const char* label_id) { return ImGui::Ptr igPtr(label_id, label_id, label_id, label_id, label_id, label_id, label_id, label_id, label_id, label_id, label_id); } ============================== Sample 5 ============================== ASM: ;************************************************************************************************************************************************************ ;*DICOMAppHelper::GetSliceNumberFilenamePairs(std::vector, std::allocator > >,...* ;************************************************************************************************************************************************************ ;undefined GetSliceNumberFilenamePairs(DICOMAppHelper * this, vector * param_1, bool param_2) ;this DICOMAppHel... RDI ;param_1 vector * RSI ;param_2 bool DL PUSH R13 PUSH R12 MOV R12,param_1 PUSH RBP PUSH RBX SUB RSP,0x8 MOV RAX,qword ptr [this + 0x350] CMP qword ptr [RAX + 0x28],0x0 JZ LAB_001107d0 MOV param_1,qword ptr [RAX + 0x18] ADD RSP,0x8 MOVZX ECX,param_2 MOV param_2,R12 POP RBX POP RBP ADD param_1,0x20 POP R12 POP R13 JMP .plt:LAB_00106350 ?? 0Fh ?? 1Fh ?? 84h ?? 00h ?? 00h ?? 00h ?? 00h ?? 00h LAB_001107d0: MOV RBP,qword ptr [param_1] MOV R13,qword ptr [param_1 + 0x8] CMP RBP,R13 JZ LAB_00110808 MOV RBX,RBP NOP LAB_001107e0: MOV this,qword ptr [RBX + 0x8] LEA RAX,[RBX + 0x18] CMP this,RAX JZ LAB_001107fa MOV RAX,qword ptr [RBX + 0x18] LEA param_1,[RAX + 0x1] CALL .plt:::operator.delete ;void operator.delete(void * param_1,... LAB_001107fa: ADD RBX,0x28 CMP R13,RBX JNZ LAB_001107e0 MOV qword ptr [R12 + 0x8],RBP LAB_00110808: ADD RSP,0x8 POP RBX POP RBP POP R12 POP R13 RET ?? 90h Actual src: void DICOMAppHelper::GetSliceNumberFilenamePairs(dicom_stl::vector >& v, bool ascending) { // Default to using the first series if (!this->Implementation->SeriesUIDMap.empty()) { this->GetSliceNumberFilenamePairs( (*this->Implementation->SeriesUIDMap.begin()).first, v, ascending ); } else { v.clear(); } } Predicted src: void std::Find(std::vector> >& out) { if(out) out << std::endl; else out << std::endl; else out << std::endl; }