rizin/test/db/formats/pe/96workingsections
Riccardo Schirone 1c78aee3cd
Convert i commands to rzshell (#1238)
* Start to create some RzBinObject specific API

Adding some unit tests

Fix for new relocs storage system

Fix test_bin unit test for oob-write

* Add `iA` command to newshell

Add `ie`/`iee` commands

Add support for `is`/`iE` commands

Add support for `ii` command

Add support for `il` command

Add support for `iM` command

Add support for `ir` command

Add support for `iS`/`iSS` commands

Add support for `iz` command

Add support for `i` command

Add support for `ic` command

Add support for `iC` command

Add support for `ih` and `iHH` commands

Add support for `iI` command

Add support for `iL` command

Fix descriptions of commands already converted

Add support for `idp` commands

Add support for `iD` command

Add support for `im` commands

Add support for `iR` command

Add support for `it` command

Add support for `iV` commands

Add support for `iw` command

Add support for `ix` commands

Add support for `iZ` command

Add support for `ik` command

Add support for `is.` command

Add support for `iS.` command

Reduce arguments in print_arch

Few Doxygen and ownership annotations

Add support for `iS=` command

Add support for `izz` and `izzz` commands

Add support for `ib` command

Add support for `ic*` command

Put section flags as the last field of the table

* Proper language detection.

* Rewritten blang.c

* implemented `icc/icm/icf <class name>`

* ignore blocks when printing langs

Remove num from `iA` output

* Fixed flags on java and added class column

Add support for `ia` commands

Fix `iCj` command

* RzBin: add rz_bin_object_sections_mapping_list API

* Fix rz-bin for new API

Remove unused va var in rz-bin.c

Fix `iA`/`-A` output

* implemented classdump_cpp

* Support namespaces

Use `icc`, `icl` does not exist anymore

Update output of broken tests for `icc`

Add `rz_return_*()` asserts in new `*_print()` functions

* Provide rz_core_bin_print API

* Select which parts to print also based on the mode

* Return bool from all `rz_core_bin_*_print()` API

* Use RzBinFile in new `rz_core_bin_*_print()` API

* Restore `dbg_dmi` test

* Remove oldshell handlers for `i` commands

* Remove `ieq` call in rizin, not needed

* Allow NULL `bf` in `rz_cmd_info_handler()`

* Re-add support for RZ_BIN_PREFIX for symbols/sections/segments/imports/relocs

* Move `ib` command to `obR`

* Show 'N/A' in `i` command when info are not available

* Assert on bf->o, just to be sure

* Make error messages clearer in `idp` commands

Co-authored-by: wargio <wargio@libero.it>
Co-authored-by: Giovanni <561184+wargio@users.noreply.github.com>
2021-09-04 22:37:05 +08:00

239 lines
12 KiB
Text

NAME=PE: corkami 96workingsections.exe - open and analyze
FILE=bins/pe/96workingsections.exe
ARGS=-A
CMDS=q!
EXPECT=<<EOF
EOF
RUN
NAME=PE: corkami 96workingsections.exe - entrypoint
FILE=bins/pe/96workingsections.exe
CMDS=s
EXPECT=<<EOF
0x461000
EOF
RUN
NAME=PE: corkami 96workingsections.exe - pi 1
FILE=bins/pe/96workingsections.exe
CMDS=pi 1
EXPECT=<<EOF
jmp 0x461001
EOF
RUN
NAME=PE: corkami 96workingsections.exe - section list
FILE=bins/pe/96workingsections.exe
ARGS=-n
CMDS=!rz-bin -S bins/pe/96workingsections.exe
EXPECT=<<EOF
[Sections]
paddr size vaddr vsize align perm name type flags
-----------------------------------------------------------------
0x00001200 0x200 0x00402000 0x1000 0x0 -rwx sect_0
0x00001400 0x200 0x00403000 0x1000 0x0 -rwx sect_1
0x00001600 0x200 0x00404000 0x1000 0x0 -rwx sect_2
0x00001800 0x200 0x00405000 0x1000 0x0 -rwx sect_3
0x00001a00 0x200 0x00406000 0x1000 0x0 -rwx sect_4
0x00001c00 0x200 0x00407000 0x1000 0x0 -rwx sect_5
0x00001e00 0x200 0x00408000 0x1000 0x0 -rwx sect_6
0x00002000 0x200 0x00409000 0x1000 0x0 -rwx sect_7
0x00002200 0x200 0x0040a000 0x1000 0x0 -rwx sect_8
0x00002400 0x200 0x0040b000 0x1000 0x0 -rwx sect_9
0x00002600 0x200 0x0040c000 0x1000 0x0 -rwx sect_10
0x00002800 0x200 0x0040d000 0x1000 0x0 -rwx sect_11
0x00002a00 0x200 0x0040e000 0x1000 0x0 -rwx sect_12
0x00002c00 0x200 0x0040f000 0x1000 0x0 -rwx sect_13
0x00002e00 0x200 0x00410000 0x1000 0x0 -rwx sect_14
0x00003000 0x200 0x00411000 0x1000 0x0 -rwx sect_15
0x00003200 0x200 0x00412000 0x1000 0x0 -rwx sect_16
0x00003400 0x200 0x00413000 0x1000 0x0 -rwx sect_17
0x00003600 0x200 0x00414000 0x1000 0x0 -rwx sect_18
0x00003800 0x200 0x00415000 0x1000 0x0 -rwx sect_19
0x00003a00 0x200 0x00416000 0x1000 0x0 -rwx sect_20
0x00003c00 0x200 0x00417000 0x1000 0x0 -rwx sect_21
0x00003e00 0x200 0x00418000 0x1000 0x0 -rwx sect_22
0x00004000 0x200 0x00419000 0x1000 0x0 -rwx sect_23
0x00004200 0x200 0x0041a000 0x1000 0x0 -rwx sect_24
0x00004400 0x200 0x0041b000 0x1000 0x0 -rwx sect_25
0x00004600 0x200 0x0041c000 0x1000 0x0 -rwx sect_26
0x00004800 0x200 0x0041d000 0x1000 0x0 -rwx sect_27
0x00004a00 0x200 0x0041e000 0x1000 0x0 -rwx sect_28
0x00004c00 0x200 0x0041f000 0x1000 0x0 -rwx sect_29
0x00004e00 0x200 0x00420000 0x1000 0x0 -rwx sect_30
0x00005000 0x200 0x00421000 0x1000 0x0 -rwx sect_31
0x00005200 0x200 0x00422000 0x1000 0x0 -rwx sect_32
0x00005400 0x200 0x00423000 0x1000 0x0 -rwx sect_33
0x00005600 0x200 0x00424000 0x1000 0x0 -rwx sect_34
0x00005800 0x200 0x00425000 0x1000 0x0 -rwx sect_35
0x00005a00 0x200 0x00426000 0x1000 0x0 -rwx sect_36
0x00005c00 0x200 0x00427000 0x1000 0x0 -rwx sect_37
0x00005e00 0x200 0x00428000 0x1000 0x0 -rwx sect_38
0x00006000 0x200 0x00429000 0x1000 0x0 -rwx sect_39
0x00006200 0x200 0x0042a000 0x1000 0x0 -rwx sect_40
0x00006400 0x200 0x0042b000 0x1000 0x0 -rwx sect_41
0x00006600 0x200 0x0042c000 0x1000 0x0 -rwx sect_42
0x00006800 0x200 0x0042d000 0x1000 0x0 -rwx sect_43
0x00006a00 0x200 0x0042e000 0x1000 0x0 -rwx sect_44
0x00006c00 0x200 0x0042f000 0x1000 0x0 -rwx sect_45
0x00006e00 0x200 0x00430000 0x1000 0x0 -rwx sect_46
0x00007000 0x200 0x00431000 0x1000 0x0 -rwx sect_47
0x00007200 0x200 0x00432000 0x1000 0x0 -rwx sect_48
0x00007400 0x200 0x00433000 0x1000 0x0 -rwx sect_49
0x00007600 0x200 0x00434000 0x1000 0x0 -rwx sect_50
0x00007800 0x200 0x00435000 0x1000 0x0 -rwx sect_51
0x00007a00 0x200 0x00436000 0x1000 0x0 -rwx sect_52
0x00007c00 0x200 0x00437000 0x1000 0x0 -rwx sect_53
0x00007e00 0x200 0x00438000 0x1000 0x0 -rwx sect_54
0x00008000 0x200 0x00439000 0x1000 0x0 -rwx sect_55
0x00008200 0x200 0x0043a000 0x1000 0x0 -rwx sect_56
0x00008400 0x200 0x0043b000 0x1000 0x0 -rwx sect_57
0x00008600 0x200 0x0043c000 0x1000 0x0 -rwx sect_58
0x00008800 0x200 0x0043d000 0x1000 0x0 -rwx sect_59
0x00008a00 0x200 0x0043e000 0x1000 0x0 -rwx sect_60
0x00008c00 0x200 0x0043f000 0x1000 0x0 -rwx sect_61
0x00008e00 0x200 0x00440000 0x1000 0x0 -rwx sect_62
0x00009000 0x200 0x00441000 0x1000 0x0 -rwx sect_63
0x00009200 0x200 0x00442000 0x1000 0x0 -rwx sect_64
0x00009400 0x200 0x00443000 0x1000 0x0 -rwx sect_65
0x00009600 0x200 0x00444000 0x1000 0x0 -rwx sect_66
0x00009800 0x200 0x00445000 0x1000 0x0 -rwx sect_67
0x00009a00 0x200 0x00446000 0x1000 0x0 -rwx sect_68
0x00009c00 0x200 0x00447000 0x1000 0x0 -rwx sect_69
0x00009e00 0x200 0x00448000 0x1000 0x0 -rwx sect_70
0x0000a000 0x200 0x00449000 0x1000 0x0 -rwx sect_71
0x0000a200 0x200 0x0044a000 0x1000 0x0 -rwx sect_72
0x0000a400 0x200 0x0044b000 0x1000 0x0 -rwx sect_73
0x0000a600 0x200 0x0044c000 0x1000 0x0 -rwx sect_74
0x0000a800 0x200 0x0044d000 0x1000 0x0 -rwx sect_75
0x0000aa00 0x200 0x0044e000 0x1000 0x0 -rwx sect_76
0x0000ac00 0x200 0x0044f000 0x1000 0x0 -rwx sect_77
0x0000ae00 0x200 0x00450000 0x1000 0x0 -rwx sect_78
0x0000b000 0x200 0x00451000 0x1000 0x0 -rwx sect_79
0x0000b200 0x200 0x00452000 0x1000 0x0 -rwx sect_80
0x0000b400 0x200 0x00453000 0x1000 0x0 -rwx sect_81
0x0000b600 0x200 0x00454000 0x1000 0x0 -rwx sect_82
0x0000b800 0x200 0x00455000 0x1000 0x0 -rwx sect_83
0x0000ba00 0x200 0x00456000 0x1000 0x0 -rwx sect_84
0x0000bc00 0x200 0x00457000 0x1000 0x0 -rwx sect_85
0x0000be00 0x200 0x00458000 0x1000 0x0 -rwx sect_86
0x0000c000 0x200 0x00459000 0x1000 0x0 -rwx sect_87
0x0000c200 0x200 0x0045a000 0x1000 0x0 -rwx sect_88
0x0000c400 0x200 0x0045b000 0x1000 0x0 -rwx sect_89
0x0000c600 0x200 0x0045c000 0x1000 0x0 -rwx sect_90
0x0000c800 0x200 0x0045d000 0x1000 0x0 -rwx sect_91
0x0000ca00 0x200 0x0045e000 0x1000 0x0 -rwx sect_92
0x0000cc00 0x200 0x0045f000 0x1000 0x0 -rwx sect_93
0x0000ce00 0x200 0x00460000 0x1000 0x0 -rwx sect_94
0x0000d000 0x200 0x00461000 0x1000 0x0 -rwx sect_95
EOF
RUN
NAME=PE: corkami 96workingsections.exe - section list - unfiltered
FILE=bins/pe/96workingsections.exe
ARGS=-n
CMDS=!rz-bin -uS bins/pe/96workingsections.exe
EXPECT=<<EOF
[Sections]
paddr size vaddr vsize align perm name type flags
-----------------------------------------------------------------
0x00001200 0x200 0x00402000 0x1000 0x0 -rwx sect_0
0x00001400 0x200 0x00403000 0x1000 0x0 -rwx sect_1
0x00001600 0x200 0x00404000 0x1000 0x0 -rwx sect_2
0x00001800 0x200 0x00405000 0x1000 0x0 -rwx sect_3
0x00001a00 0x200 0x00406000 0x1000 0x0 -rwx sect_4
0x00001c00 0x200 0x00407000 0x1000 0x0 -rwx sect_5
0x00001e00 0x200 0x00408000 0x1000 0x0 -rwx sect_6
0x00002000 0x200 0x00409000 0x1000 0x0 -rwx sect_7
0x00002200 0x200 0x0040a000 0x1000 0x0 -rwx sect_8
0x00002400 0x200 0x0040b000 0x1000 0x0 -rwx sect_9
0x00002600 0x200 0x0040c000 0x1000 0x0 -rwx sect_10
0x00002800 0x200 0x0040d000 0x1000 0x0 -rwx sect_11
0x00002a00 0x200 0x0040e000 0x1000 0x0 -rwx sect_12
0x00002c00 0x200 0x0040f000 0x1000 0x0 -rwx sect_13
0x00002e00 0x200 0x00410000 0x1000 0x0 -rwx sect_14
0x00003000 0x200 0x00411000 0x1000 0x0 -rwx sect_15
0x00003200 0x200 0x00412000 0x1000 0x0 -rwx sect_16
0x00003400 0x200 0x00413000 0x1000 0x0 -rwx sect_17
0x00003600 0x200 0x00414000 0x1000 0x0 -rwx sect_18
0x00003800 0x200 0x00415000 0x1000 0x0 -rwx sect_19
0x00003a00 0x200 0x00416000 0x1000 0x0 -rwx sect_20
0x00003c00 0x200 0x00417000 0x1000 0x0 -rwx sect_21
0x00003e00 0x200 0x00418000 0x1000 0x0 -rwx sect_22
0x00004000 0x200 0x00419000 0x1000 0x0 -rwx sect_23
0x00004200 0x200 0x0041a000 0x1000 0x0 -rwx sect_24
0x00004400 0x200 0x0041b000 0x1000 0x0 -rwx sect_25
0x00004600 0x200 0x0041c000 0x1000 0x0 -rwx sect_26
0x00004800 0x200 0x0041d000 0x1000 0x0 -rwx sect_27
0x00004a00 0x200 0x0041e000 0x1000 0x0 -rwx sect_28
0x00004c00 0x200 0x0041f000 0x1000 0x0 -rwx sect_29
0x00004e00 0x200 0x00420000 0x1000 0x0 -rwx sect_30
0x00005000 0x200 0x00421000 0x1000 0x0 -rwx sect_31
0x00005200 0x200 0x00422000 0x1000 0x0 -rwx sect_32
0x00005400 0x200 0x00423000 0x1000 0x0 -rwx sect_33
0x00005600 0x200 0x00424000 0x1000 0x0 -rwx sect_34
0x00005800 0x200 0x00425000 0x1000 0x0 -rwx sect_35
0x00005a00 0x200 0x00426000 0x1000 0x0 -rwx sect_36
0x00005c00 0x200 0x00427000 0x1000 0x0 -rwx sect_37
0x00005e00 0x200 0x00428000 0x1000 0x0 -rwx sect_38
0x00006000 0x200 0x00429000 0x1000 0x0 -rwx sect_39
0x00006200 0x200 0x0042a000 0x1000 0x0 -rwx sect_40
0x00006400 0x200 0x0042b000 0x1000 0x0 -rwx sect_41
0x00006600 0x200 0x0042c000 0x1000 0x0 -rwx sect_42
0x00006800 0x200 0x0042d000 0x1000 0x0 -rwx sect_43
0x00006a00 0x200 0x0042e000 0x1000 0x0 -rwx sect_44
0x00006c00 0x200 0x0042f000 0x1000 0x0 -rwx sect_45
0x00006e00 0x200 0x00430000 0x1000 0x0 -rwx sect_46
0x00007000 0x200 0x00431000 0x1000 0x0 -rwx sect_47
0x00007200 0x200 0x00432000 0x1000 0x0 -rwx sect_48
0x00007400 0x200 0x00433000 0x1000 0x0 -rwx sect_49
0x00007600 0x200 0x00434000 0x1000 0x0 -rwx sect_50
0x00007800 0x200 0x00435000 0x1000 0x0 -rwx sect_51
0x00007a00 0x200 0x00436000 0x1000 0x0 -rwx sect_52
0x00007c00 0x200 0x00437000 0x1000 0x0 -rwx sect_53
0x00007e00 0x200 0x00438000 0x1000 0x0 -rwx sect_54
0x00008000 0x200 0x00439000 0x1000 0x0 -rwx sect_55
0x00008200 0x200 0x0043a000 0x1000 0x0 -rwx sect_56
0x00008400 0x200 0x0043b000 0x1000 0x0 -rwx sect_57
0x00008600 0x200 0x0043c000 0x1000 0x0 -rwx sect_58
0x00008800 0x200 0x0043d000 0x1000 0x0 -rwx sect_59
0x00008a00 0x200 0x0043e000 0x1000 0x0 -rwx sect_60
0x00008c00 0x200 0x0043f000 0x1000 0x0 -rwx sect_61
0x00008e00 0x200 0x00440000 0x1000 0x0 -rwx sect_62
0x00009000 0x200 0x00441000 0x1000 0x0 -rwx sect_63
0x00009200 0x200 0x00442000 0x1000 0x0 -rwx sect_64
0x00009400 0x200 0x00443000 0x1000 0x0 -rwx sect_65
0x00009600 0x200 0x00444000 0x1000 0x0 -rwx sect_66
0x00009800 0x200 0x00445000 0x1000 0x0 -rwx sect_67
0x00009a00 0x200 0x00446000 0x1000 0x0 -rwx sect_68
0x00009c00 0x200 0x00447000 0x1000 0x0 -rwx sect_69
0x00009e00 0x200 0x00448000 0x1000 0x0 -rwx sect_70
0x0000a000 0x200 0x00449000 0x1000 0x0 -rwx sect_71
0x0000a200 0x200 0x0044a000 0x1000 0x0 -rwx sect_72
0x0000a400 0x200 0x0044b000 0x1000 0x0 -rwx sect_73
0x0000a600 0x200 0x0044c000 0x1000 0x0 -rwx sect_74
0x0000a800 0x200 0x0044d000 0x1000 0x0 -rwx sect_75
0x0000aa00 0x200 0x0044e000 0x1000 0x0 -rwx sect_76
0x0000ac00 0x200 0x0044f000 0x1000 0x0 -rwx sect_77
0x0000ae00 0x200 0x00450000 0x1000 0x0 -rwx sect_78
0x0000b000 0x200 0x00451000 0x1000 0x0 -rwx sect_79
0x0000b200 0x200 0x00452000 0x1000 0x0 -rwx sect_80
0x0000b400 0x200 0x00453000 0x1000 0x0 -rwx sect_81
0x0000b600 0x200 0x00454000 0x1000 0x0 -rwx sect_82
0x0000b800 0x200 0x00455000 0x1000 0x0 -rwx sect_83
0x0000ba00 0x200 0x00456000 0x1000 0x0 -rwx sect_84
0x0000bc00 0x200 0x00457000 0x1000 0x0 -rwx sect_85
0x0000be00 0x200 0x00458000 0x1000 0x0 -rwx sect_86
0x0000c000 0x200 0x00459000 0x1000 0x0 -rwx sect_87
0x0000c200 0x200 0x0045a000 0x1000 0x0 -rwx sect_88
0x0000c400 0x200 0x0045b000 0x1000 0x0 -rwx sect_89
0x0000c600 0x200 0x0045c000 0x1000 0x0 -rwx sect_90
0x0000c800 0x200 0x0045d000 0x1000 0x0 -rwx sect_91
0x0000ca00 0x200 0x0045e000 0x1000 0x0 -rwx sect_92
0x0000cc00 0x200 0x0045f000 0x1000 0x0 -rwx sect_93
0x0000ce00 0x200 0x00460000 0x1000 0x0 -rwx sect_94
0x0000d000 0x200 0x00461000 0x1000 0x0 -rwx sect_95
EOF
RUN