============================== Sample 1 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined vala_ccode_control_flow_module_real_visit_if_statement() TEST RSI,RSI JZ LAB_00171e90 PUSH R13 PUSH R12 MOV R12,RDI PUSH RBP MOV RBP,RSI CALL .plt:vala_ccode_base_module_get_ccode ;undefined vala_ccode_base_module_get... MOV RDI,RBP MOV R13,RAX CALL .plt:::vala_if_statement_get_condition ;undefined vala_if_statement_get_cond... MOV RDI,RAX CALL .plt:vala_get_cvalue ;undefined vala_get_cvalue() MOV RDI,R13 MOV RSI,RAX CALL .plt:vala_ccode_function_open_if ;undefined vala_ccode_function_open_if() MOV RDI,RBP CALL .plt:::vala_if_statement_get_true_statement ;undefined vala_if_statement_get_true... MOV RSI,R12 MOV RDI,RAX CALL .plt:::vala_code_node_emit ;undefined vala_code_node_emit() MOV RDI,RBP CALL .plt:::vala_if_statement_get_false_statement ;undefined vala_if_statement_get_fals... TEST RAX,RAX JZ LAB_00171e7a MOV RDI,R12 CALL .plt:vala_ccode_base_module_get_ccode ;undefined vala_ccode_base_module_get... MOV RDI,RAX CALL .plt:vala_ccode_function_add_else ;undefined vala_ccode_function_add_el... MOV RDI,RBP CALL .plt:::vala_if_statement_get_false_statement ;undefined vala_if_statement_get_fals... MOV RSI,R12 MOV RDI,RAX CALL .plt:::vala_code_node_emit ;undefined vala_code_node_emit() LAB_00171e7a: MOV RDI,R12 CALL .plt:vala_ccode_base_module_get_ccode ;undefined vala_ccode_base_module_get... POP RBP POP R12 MOV RDI,RAX POP R13 JMP .plt:vala_ccode_function_close ;undefined vala_ccode_function_close() ?? 90h LAB_00171e90: LEA RDX,[.rodata:s_stmt_!=_NULL_0020d2df+5] ;= "stmt!= NULL" LEA RSI,[.rodata:__func__.0] ;= "vala_ccode_control_flow_module_re... LEA RDI,[.rodata:s_vala-ccodegen_001f501d] ;= "vala-ccodegen" JMP .plt:::g_return_if_fail_warning ;undefined g_return_if_fail_warning() ?? 66h f Actual src: static void vala_ccode_control_flow_module_real_visit_if_statement (ValaCodeVisitor* base, ValaIfStatement* stmt) { ValaCCodeControlFlowModule * self; ValaCCodeFunction* _tmp0_; ValaCCodeFunction* _tmp1_; ValaExpression* _tmp2_; ValaExpression* _tmp3_; ValaCCodeExpression* _tmp4_; ValaBlock* _tmp5_; ValaBlock* _tmp6_; ValaBlock* _tmp7_; ValaBlock* _tmp8_; ValaCCodeFunction* _tmp13_; ValaCCodeFunction* _tmp14_; self = (ValaCCodeControlFlowModule*) base; g_return_if_fail (stmt!= NULL); _tmp0_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self); _tmp1_ = _tmp0_; _tmp2_ = vala_if_statement_get_condition (stmt); _tmp3_ = _tmp2_; _tmp4_ = vala_get_cvalue (_tmp3_); vala_ccode_function_open_if (_tmp1_, _tmp4_); _tmp5_ = vala_if_statement_get_true_statement (stmt); _tmp6_ = _tmp5_; vala_code_node_emit ((ValaCodeNode*) _tmp6_, (ValaCodeGenerator*) self); _tmp7_ = vala_if_statement_get_false_statement (stmt); _tmp8_ = _tmp7_; if (_tmp8_!= NULL) { ValaCCodeFunction* _tmp9_; ValaCCodeFunction* _tmp10_; ValaBlock* _tmp11_; ValaBlock* _tmp12_; _tmp9_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self); _tmp10_ = _tmp9_; vala_ccode_function_add_else (_tmp10_); _tmp11_ = vala_if_statement_get_false_statement (stmt); _tmp12_ = _tmp11_; vala_code_node_emit ((ValaCodeNode*) _tmp12_, (ValaCodeGenerator*) self); } _tmp13_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self); _tmp14_ = _tmp13_; vala_ccode_function_close (_tmp14_); } Predicted src: static void vala_ccode_function_real_get_code_function_real_real_get_value (ValaDocument* base, ValaNode* base) { ValaDocument* _tmp0_; ValaDocument* _tmp1_; ValaDocument* _tmp2_; ValaDocument* _tmp3_; ValaDocument* _tmp4_; ValaDocument* _tmp4_; ValaDocument* _tmp5_; ValaDocument* _tmp5_; ValaDocument* result = NULL; g_return_if_fail (base!= NULL); g_return_if_fail (base!= NULL); _tmp0_ = vala_ccode_function_get_code (base); _tmp1_ = _tmp0_; _tmp2_ = vala_ccode_function_get_code (base); _tmp3_ = _tmp1_; _tmp4_ = vala_ccode_function_get_code (base); _tmp4_ = _tmp2_; _tmp5_ = vala_ccode_function_get_code (_tmp4_); _tmp5_ = _tmp4_; _tmp5_ = vala_ccode_function_get_code (_tmp5_); _tmp5_ = _tmp5_; _tmp5_ = vala_ccode_function_get_code (_tmp5_); _tmp7_ = _tmp7_; _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = _tmp7_; _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = _tmp7_; _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = _tmp7_; _tmp7_ = vala_ccode_function_get_code (_tmp7_); _tmp7_ = _tmp7_; _tmp7_ = vala_ccode_function_get_code (_tmp7_); } ============================== Sample 2 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined go_conf_set_bool() PUSH R12 MOV R12D,EDX PUSH RBP SUB RSP,0x8 CALL .plt:go_conf_get_node ;undefined go_conf_get_node() TEST RAX,RAX JZ LAB_00164620 MOV RDI,qword ptr [RAX + 0x18] MOV RSI,qword ptr [RAX + 0x10] MOV EDX,R12D MOV RBP,RAX CALL .plt:::g_settings_set_boolean ;undefined g_settings_set_boolean() ADD RSP,0x8 MOV RDI,RBP POP RBP POP R12 JMP .plt.got:go_conf_free_node ;undefined go_conf_free_node() ?? 66h f ?? 2Eh . ?? 0Fh ?? 1Fh ?? 84h ?? 00h ?? 00h ?? 00h ?? 00h ?? 00h LAB_00164620: ADD RSP,0x8 POP RBP POP R12 RET ?? 0Fh Actual src: void go_conf_set_bool (GOConfNode *node, gchar const *key, gboolean val) { GOConfNode *real_node = go_conf_get_node (node, key); if (!real_node) { d (g_warning ("Unable to set key '%s'", key)); return; } g_settings_set_boolean (real_node->settings, real_node->key, val); go_conf_free_node (real_node); } Predicted src: static void node_set_node_bool (GSimpleAction *action, GVariant *value, gpointer user_data) { Node *node = user_data; if (node->priv->node_bool) node_set_bool (node, node->priv->node_bool); else node_node_set_bool (node, node); } ============================== Sample 3 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined enteringPodNotify() MOV byte ptr [RDI + 0x51],0x1 RET ?? 66h f Actual src: static void enteringPodNotify (perlSubparser *perl) { struct FParamsSubparser *fparams = (struct FParamsSubparser *)perl; fparams->inPod = true; } Predicted src: static void addGroup(Widget w, XtPointer client_data, XtPointer call_data) { (void) client_data; (void) client_data; (void) client_data; (void) client_data; (void) client_data; (void) client_data; (void) client_data; (void) client_data; (void) client_data; } ============================== Sample 4 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined snesgetksp_() PUSH RBX MOV RDI,qword ptr [RDI] MOV RBX,RDX CALL .plt:SNESGetKSP ;undefined SNESGetKSP() MOV dword ptr [RBX],EAX POP RBX RET ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined snessetdm_() PUSH RBX Actual src: PETSC_EXTERN void snesgetksp_(SNES snes,KSP *ksp, int *__ierr) { *__ierr = SNESGetKSP( (SNES)PetscToPointer((snes) ),ksp); } Predicted src: PETSC_EXTERN void tsgetgetnum_(DM dm,PetscInt *num, int *__ierr) { *__ierr = MatGet( (DM)PetscToPointer((dm) ),*num,*num); } ============================== Sample 5 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined siridb_series_update_props() PUSH R12 MOV R12,RDI PUSH RBP MOV RBP,RSI SUB RSP,0x8 CMP byte ptr [RSI + 0xf],0x2 MOV RAX,qword ptr [RSI + 0x30] JZ LAB_0013d6c0 TEST RAX,RAX JZ LAB_0013d6a0 MOV EDX,dword ptr [RSI + 0x24] TEST EDX,EDX JZ LAB_0013d680 LAB_0013d61b: MOV RDX,qword ptr [RBP + 0x40] MOV RDX,qword ptr [RDX + 0x10] LAB_0013d623: MOV qword ptr [RBP + 0x10],RDX TEST RAX,RAX JZ LAB_0013d648 LAB_0013d62c: CMP qword ptr [RAX],0x0 JZ LAB_0013d648 MOV RAX,qword ptr [RAX + 0x10] MOV RAX,qword ptr [RAX] CMP RAX,RDX JC LAB_0013d6e0 NOP word ptr [RAX + RAX*0x1] LAB_0013d648: MOV RDI,RBP CALL SERIES_update_end ;undefined SERIES_update_end() MOV ECX,dword ptr [RBP + 0x20] TEST ECX,ECX JNZ LAB_0013d698 CMP dword ptr [.data:Logger[8]],0x2 JLE LAB_0013d6f0 LAB_0013d664: ADD RSP,0x8 MOV RSI,RBP MOV RDI,R12 POP RBP POP R12 JMP siridb_series_drop ;undefined siridb_series_drop() ?? 66h f ?? 2Eh . ?? 0Fh ?? 1Fh ?? 84h ?? 00h ?? 00h ?? 00h ?? 00h ?? 00h LAB_0013d680: MOV qword ptr [RBP + 0x10],-0x1 MOV RDX,-0x1 JMP LAB_0013d62c ?? 0Fh ?? 1Fh ?? 80h ?? 00h ?? 00h ?? 00h ?? 00h LAB_0013d698: ADD RSP,0x8 POP RBP POP R12 RET LAB_0013d6a0: CMP dword ptr [.data:Logger[8]],0x3 JG LAB_0013d664 MOV EDX,dword ptr [RSI + 0x4] MOV RSI,qword ptr [RSI + 0x38] LEA RDI,[.rodata:s_Drop_'%s'_(%u)_since_no_buffer_i_00166038] ;= "Drop '%s' (%u) since no buffer is... CALL log__error ;undefined log__error(undefined param... JMP LAB_0013d664 ?? 66h f ?? 90h LAB_0013d6c0: MOV ESI,dword ptr [RSI + 0x24] MOV RDX,-0x1 TEST ESI,ESI JZ LAB_0013d623 JMP LAB_0013d61b ?? 66h f ?? 0Fh ?? 1Fh ?? 84h ?? 00h ?? 00h ?? 00h ?? 00h ?? 00h LAB_0013d6e0: MOV qword ptr [RBP + 0x10],RAX JMP LAB_0013d648 ?? 0Fh ?? 1Fh ?? 80h ?? 00h ?? 00h ?? 00h ?? 00h LAB_0013d6f0: MOV EDX,dword ptr [RBP + 0x4] MOV RSI,qword ptr [RBP + 0x38] LEA RDI,[.rodata:s_Drop_'%s'_(%u)_since_no_data_is_f_00166070] ;= "Drop '%s' (%u) since no data is f... XOR EAX,EAX CALL log__warning ;undefined log__warning(undefined par... JMP LAB_0013d664 ?? 66h f Actual src: void siridb_series_update_props(siridb_t * siridb, siridb_series_t * series) { if (series->tp!= TP_STRING && series->buffer == NULL) { log_error( "Drop '%s' (%" PRIu32 ") since no buffer is found for this series", series->name, series->id); siridb_series_drop(siridb, series); } else { SERIES_update_start(series); SERIES_update_end(series); if (!series->length) { log_warning( "Drop '%s' (%" PRIu32 ") since no data is found for this series", series->name, series->id); siridb_series_drop(siridb, series); } } } Predicted src: static void update_buffer(struct state *state, void *data) { struct state *state = data; struct state *state = state->state; struct state *state = state->state; if (!state->state) return; state->state = state->state; if (state->flags & state->flags) { if (state->flags & state->flags) { state->flags |= state->flags; } else { state->flags |= state->flags; } } if (state->flags & state->flags) { state->flags |= state->flags; } if (state->flags & state->flags) { state->flags |= state->flags; } if (state->flags & state->flags) { state->flags |= state->flags; } }