============================== Sample 1 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined ltks_rsp() SUB RSP,0x8 TEST DIL,DIL JZ LAB_001105b8 MOVZX ESI,DIL LEA RDX,[.rodata:s__00131096] ;= "" CMP DIL,0x15 JA LAB_00110598 MOVSXD RAX,ESI LEA RDX,[.data.rel.ro:mgmt_status] MOV RDX=>.data.rel.ro:mgmt_status,qword ptr [RDX + RAX*0x8] LAB_00110598: LEA RDI,[.rodata:DAT_00133660] ;= 01h XOR EAX,EAX CALL bt_shell_printf ;undefined bt_shell_printf(undefined... XOR EDI,EDI ADD RSP,0x8 JMP bt_shell_noninteractive_quit ;undefined bt_shell_noninteractive_qu... ?? 0Fh ?? 1Fh ?? 80h ?? 00h ?? 00h ?? 00h ?? 00h LAB_001105b8: LEA RDI,[.rodata:s_Long_term_keys_successfully_load_001336a0] ;= "Long term keys successfully loade... XOR EAX,EAX CALL bt_shell_printf ;undefined bt_shell_printf(undefined... XOR EDI,EDI ADD RSP,0x8 JMP bt_shell_noninteractive_quit ;undefined bt_shell_noninteractive_qu... ?? 66h f Actual src: static void ltks_rsp(uint8_t status, uint16_t len, const void *param, void *user_data) { if (status!= 0) error("Load keys failed with status 0x%02x (%s)", status, mgmt_errstr(status)); else print("Long term keys successfully loaded"); bt_shell_noninteractive_quit(EXIT_SUCCESS); } Predicted src: static void status_status_status (void) { if (status_status_status_status) status_status_status_status_status (); if (status_status_status_status) status_status_status_status_status (status_status_status); if (status_status_status_status) status_status_status_status_status (status_status_status); status_status_status_status_status (status_status_status); } ============================== Sample 2 ============================== ASM: ;************************************************************************************************************************************************************ ;* TreeMap::getNumSeqs() * ;************************************************************************************************************************************************************ ;undefined getNumSeqs(TreeMap * this) ;this TreeMap * RDI MOV RAX,qword ptr [this + 0x8] SUB RAX,qword ptr [this] SAR RAX,0x5 RET ?? 0Fh Actual src: int TreeMap::getNumSeqs() { return namesOfSeqs.size(); } Predicted src: uint32_t SMapMap::size() { return m_map.size(); } ============================== Sample 3 ============================== ASM: ;************************************************************************************************************************************************************ ;* CSG_Array::Set_Growth(ESG_Array_Growth) * ;************************************************************************************************************************************************************ ;undefined Set_Growth(CSG_Array * this, ESG_Array_Growth param_1) ;this CSG_Array * RDI ;param_1 ESG_Array_G... ESI MOV dword ptr [this],param_1 MOV EAX,0x1 RET ?? 0Fh Actual src: bool CSG_Array::Set_Growth(TSG_Array_Growth Growth) { m_Growth = Growth; return( true ); } Predicted src: int vtkArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArra ============================== Sample 4 ============================== ASM: ;************************************************************************************************************************************************************ ;* Draw_Interpretor::GetDoEcho() const * ;************************************************************************************************************************************************************ ;undefined GetDoEcho(Draw_Interpretor * this) ;this Draw_Interp... RDI MOVZX EAX,byte ptr [this + 0x11] RET ?? 90h Actual src: Standard_Boolean Draw_Interpretor::GetDoEcho () const { return myDoEcho; } Predicted src: Standard_Boolean Standard_IntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntegerIntege ============================== Sample 5 ============================== ASM: ;************************************************************************************************************************************************************ ;* FUNCTION * ;************************************************************************************************************************************************************ ;undefined parse_trap2_fmt() SUB RSP,0x8 MOV RDI,RSI CALL .plt:::strdup ;char * strdup(char * __s) MOV RDX,qword ptr [->print_format2] ;= 0010f168 MOV qword ptr [RDX]=>.bss:print_format2,RAX ;=?? ADD RSP,0x8 RET ?? 0Fh Actual src: static void parse_trap2_fmt(const char *token, char *line) { print_format2 = strdup(line); } Predicted src: static void print_format_format(const char *format, const char *format, const char *format) { print_format(format, format, format); }