a³ release 15.10

a³ screenshot

Revamped user interface

The GUI has undergone several major changes to better account for typical workflow patterns, and to make better use of the screen real estate.

Some key improvements are introduced below. Customers with active support can request a free WebEx training by contacting support@absint.com.

The main navigation panel has been split into tabs. This frees up space, notably for projects with dozens of analyses.

The navigation panel can also be folded away completely by double-clicking on any tab, or using the green-arrow button at the bottom. This can come in handy e.g. when viewing large statistics tables or browsing large graphs.

The buttons for running analyses have moved to the left-hand side, underneath the new navigation tabs. They are now always found in this prominent position, rather than being mashed up with the buttons at the top that are context-sensitive to each screen.

Long analysis lists can be filtered using the new box at the bottom.

Analyses can now be grouped. The groups can be folded and unfolded, sorted, and assigned names. Analyses can also be easily moved between groups by drag-and-dropping.

A new dropdown in the upper right corner enables quick navigation between related views, e.g. a graph and its local AIS file.

In the Overview list, the analyses can now be sorted by type, as well as by a unique numerical ID that doesn‘t change.

Analysis messages can now be viewed directly in the Graph and Information views, so you no longer have to jump back and forth between views when looking for a particular address mentioned in a message.

Locations mentioned in messages are now linked to the call graph, disassembly, and C files via blue buttons with an @.

a³ screenshot

Highlighting recursion

In the Graph view, recursive functions can now be highlighted using a dropdown in the toolbar.

a³ screenshot

Macros view

This new view in the Information tab lists macros from source code, extracted from DWARF debug info if available.

a³ screenshot

Improved search for addresses

In the DWARF view, searching for an address will now also look for it inside global variables or functions. In the screenshot above, for example, searching for the address 0x232c finds the variable cmh in struct st.

a³ screenshot

Improved variable-usage stats

The “Variable usage (context)” view now offers a context menu for jumping from a variable to the instructions that access it in the call graph or disassembly.