diff --git a/scripts/menu.pl b/scripts/menu.pl index 4171858..9d898fe 100644 --- a/scripts/menu.pl +++ b/scripts/menu.pl @@ -352,11 +352,11 @@ my %handlers = ( } }, - '17. Run Build in GDB' => sub { + '20. Run Build in GDB' => sub { my @builds = grep { /linux/ } Util::find_subdirs($local_builds_dir); my @selected_builds = TUI::select_from_list( "Select Build to Run in GDB", 0, @builds ); - die "No experiment selected" unless @selected_builds; + die "No build selected" unless @selected_builds; my $selected_build = $selected_builds[0]; my $build_dir = "$local_builds_dir/$selected_build"; @@ -389,6 +389,73 @@ my %handlers = ( ); }, + '21. Run Objdump on Build' => sub { + my @builds = Util::find_subdirs($local_builds_dir); + my @selected_builds = + TUI::select_from_list( "Select Build to Objdump", 0, @builds ); + die "No build selected" unless @selected_builds; + my $selected_build = $selected_builds[0]; + + my $build_dir = "$local_builds_dir/$selected_build"; + system( + "objdump $build_dir/system.elf -D -M intel -S | bat --color never"); + }, + + '22. Run Wasm-Objdump on Build' => sub { + my @builds = Util::find_subdirs($local_builds_dir); + my @selected_builds = + TUI::select_from_list( "Select Build to Wasm-Objdump", 0, @builds ); + die "No build selected" unless @selected_builds; + my $selected_build = $selected_builds[0]; + + my $build_dir = "$local_builds_dir/$selected_build"; + system( + "wasm-objdump -d $build_dir/wasm_module.wasm | bat --color never"); + }, + + '23. Run Radare2 on Build' => sub { + my @builds = Util::find_subdirs($local_builds_dir); + my @selected_builds = + TUI::select_from_list( "Select Build to Objdump", 0, @builds ); + die "No build selected" unless @selected_builds; + my $selected_build = $selected_builds[0]; + + my $build_dir = "$local_builds_dir/$selected_build"; + say "Radare help:"; + say "s
- Seek to address"; + say "pd