Giter Club home page Giter Club logo

cto's People

Contributors

cclauss avatar herosi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cto's Issues

Suggestion:Support for changing the layout structure

This CTO project is great, but when the number of nodes is large, the current layout will take up a lot of screen space. If it can support changing the layout to a mind map, it will save a lot of screen space,thank you.

KeyError: 42248388 plugins cto_func_lister.py line 1576, in count_func_type

2023-11-05 22:03:19.182 IDAPython: Error while calling Python callback :
2023-11-05 22:03:19.182 Traceback (most recent call last):
2023-11-05 22:03:19.182 File "D:\soft\IDA_Pro_7.7\plugins\cto\cto_func_lister.py", line 1370, in OnCreate
2023-11-05 22:03:19.182 self.create_tree()
2023-11-05 22:03:19.182 File "D:\soft\IDA_Pro_7.7\plugins\cto\cto_func_lister.py", line 1386, in create_tree
2023-11-05 22:03:19.182 self.PopulateTree()
2023-11-05 22:03:19.182 File "D:\soft\IDA_Pro_7.7\plugins\cto\cto_func_lister.py", line 1664, in PopulateTree
2023-11-05 22:03:19.182 func_name, ifunc, idx = self.RegisterFuncToTree(imp_dll, imp_ea, imp_name, self.imports, self.imports_ids, other_data=(imp_name, imp_ord, dll_name))
2023-11-05 22:03:19.182 File "D:\soft\IDA_Pro_7.7\plugins\cto\cto_func_lister.py", line 1591, in RegisterFuncToTree
2023-11-05 22:03:19.182 ifunc_internal_funcs_cnt.setData(self.count_func_type(func_ea, [FT_GEN]), QtCore.Qt.DisplayRole)
2023-11-05 22:03:19.182 File "D:\soft\IDA_Pro_7.7\plugins\cto\cto_func_lister.py", line 1576, in count_func_type
2023-11-05 22:03:19.182 r = [d for k,(d,ft,,) in self.func_relations[func_ea]['children'].items() if ft in func_types]
2023-11-05 22:03:19.182 KeyError: 42248388
2023-11-05 22:03:20.747

Pathfinding problem

Does cto have a function to display the call path between two function nodes selected by the user, for example, the main function calls the puts and gets functions, when the user selects to display these two nodes, the call graph from the main node to these two nodes will be automatically generated?

can't use cto

  • Error:
    Failed while executing plugin_t.run():
    Traceback (most recent call last):
    File "C:/Program Files/IDA Pro 7.5 SP3/plugins/cto_plugin.py", line 153, in run
    self.exec_cto()
    File "C:/Program Files/IDA Pro 7.5 SP3/plugins/cto_plugin.py", line 126, in exec_cto
    self.g = cto.exec_cto(cto_data=sync_data, debug=debug)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto.py", line 4058, in exec_cto
    return cto
    UnboundLocalError: local variable 'cto' referenced before assignment

  • Log:
    Launching CTO (Call Tree Overviewer) ...
    For the first execution, CTO will analyze all functions to build the call tree. Please wait for a while.
    data is unavailable. extract data from idb or pickle
    Got a unexpected error (<class 'IndexError'>: pop from empty list) (4049)
    Traceback (most recent call last):
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto.py", line 4049, in exec_cto
    cto = CallTreeOverviewer(ida_kernwin.get_screen_ea(), cto_data=cto_data , debug=debug)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto.py", line 99, in init
    cto_base.cto_base.init(self, cto_data, debug)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto_base.py", line 80, in init
    self.update_data()
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto_base.py", line 223, in update_data
    self.cache_update()
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\cto_base.py", line 153, in cache_update
    self.cto_data["cto_data"]["func_relations"], self.cto_data["cto_data"]["import_eas"], self.cto_data["cto_data"]["string_eas"] = get_func_relation.get_func_relations()
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 875, in get_func_relations
    for func_ea, parents, children, func_type, gvars, strings, stroff, vtbl in get_relation_in_all_funcs(import_eas, string_eas):
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 866, in get_relation_in_all_funcs
    for ea, parents, children, func_type, gvars, strings, stroff, vtbl in get_func_relation(f, import_eas, string_eas):
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 848, in get_func_relation
    parents, children, apicalls, gvars, strings, stroff, vtbl = get_family_members(f.start_ea, bbs, import_eas, string_eas)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 838, in get_family_members
    children, apicalls, gvars, strings, stroff, vtbl = get_children(bbs, import_eas, string_eas)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 684, in get_children
    get_calls_in_bb(bb, bbs, import_eas, string_eas, result=result, apicalls=apicalls, gvars=gvars, strings=strings, stroff=stroff, vtbl=vtbl)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 655, in get_calls_in_bb
    target_ea, func_type, op, target_name = get_funcptr_ea(ea, bbs, import_eas, string_eas)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 509, in get_funcptr_ea
    tmp_func_name, tmp_func_type, _v = get_func_info_by_opstr(ea, i)
    File "C:\Program Files\IDA Pro 7.5 SP3\plugins\cto\get_func_relation.py", line 261, in get_func_info_by_opstr
    member_name = member_names.pop()
    IndexError: pop from empty list

  • IDA Version 7.5 sp3

  • python 3.9.0

AttributeError: module 'comments' has no attribute 'comment_t"

Failed while executing plugin_t.run():
Traceback (most recent call last):
File "C:/IDA Pro 7.7 SP1/plugins/cto_func_lister_plugin.py", line 149, in run
self.exec_cto_func_lister()
File "C:/IDA Pro 7.7 SP1/plugins/cto_func_lister_plugin.py", line 118, in exec_cto_func_lister
self.g = cto_func_lister.exec_cto_function_lister(cto_data=sync_data, debug=debug)
File "C:\IDA Pro 7.7 SP1\plugins\cto\cto_func_lister.py", line 1715, in exec_cto_function_lister
cto_func_lister = cto_func_lister_t(cto_data=cto_data, debug=debug)
File "C:\IDA Pro 7.7 SP1\plugins\cto\cto_func_lister.py", line 535, in init
cto_base.cto_base.init(self, cto_data, curr_view, debug)
File "C:\IDA Pro 7.7 SP1\plugins\cto\cto_base.py", line 62, in init
self.cmt_obj = comments.comment_t()
AttributeError: module 'comments' has no attribute 'comment_t'

I'm going crazy. I tried to solve it myself, everything seems correct, but I keep getting this error.

IDA PRO 7.7
Windows 10
Python 3.8

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.