Is there any easy way to get a function call graph of a binary program using IDApython then convert it to a networkx graph other than going through every function and constructing the call-graph ourselves?
Basically i want to have a call graph that i can tell which nodes are library calls and which are locals, and not including functions that are called by libraries ( so i dont go deep into nested library functions calling each other)
i tried gen_simple_call_chart() but there are two big problems :
there is no difference between library nodes and local nodes in the generated DOT file (no color or anything)
CHART_IGNORE_LIB_FROM doesnt work, i dont want to include nodes that are called by library calls :(
For example all the nodes are black no matter library or local :
"205" [ label = "sub_40AF20", pencolor = black ];
"206" [ label = "ShellExecuteW", pencolor = black ];