rizin/test/db/analysis/dalvik
2021-10-27 09:31:50 +02:00

43 lines
1.8 KiB
Text

NAME=Dalvik HelloWorld afl
FILE=bins/dex/HelloWorld.dex
CMDS=e io.va=0; aa; afl
EXPECT=<<EOF
0x0000025c 1 34 entry0
0x00000238 1 20 method.public.constructor.LHello_._init___V
0x00000290 1 84 method.public.LHello_.foo_I_V
0x000002f4 1 20 method.public.constructor.LWorld_._init___V
0x00000318 1 68 method.public.LWorld_.foo_I_V
0x00000000 4 72 sym.Ljava_lang_System_.out
EOF
RUN
NAME=Dalvik HelloWorld string xref
FILE=bins/dex/HelloWorld.dex
CMDS=aa; axt @ str.Findus
EXPECT=<<EOF
entry0 0x260 [DATA] const-string v1, str.Findus
EOF
RUN
NAME=Dalvik HelloWorld func xref
FILE=bins/dex/HelloWorld.dex
CMDS=aa; axt @ sym.LHello_._init___V
EXPECT=<<EOF
sym.Ljava_lang_System_.out 0x24 [CALL] invoke-direct {}, LHello;-><init>()V
sym.Ljava_lang_System_.out 0x3c [CALL] invoke-direct {}, LHello;-><init>()V
entry0 0x26e [CALL] invoke-direct {v0}, LHello;-><init>()V
method.public.LHello_.foo_I_V 0x298 [CALL] invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
method.public.constructor.LWorld_._init___V; [03] -r-x section size 20 named code.World._init 0x2f4 [CALL] invoke-direct {v1}, Ljava/lang/Object;-><init>()V
method.public.LWorld_.foo_I_V 0x320 [CALL] invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
EOF
RUN
NAME=Dalvik resolve virtual methods called via invoke-virtual
FILE=apk://bins/dex/org.radare.radare2installer.apk
CMDS=e scr.prompt=false ; aaa ; axt @ sym.Lcom_ice_tar_TarEntry_.getUserName__Ljava_lang_String
EXPECT=<<EOF
entry0 0xc8ba [CALL] invoke-virtual {v1}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
entry0 0xc9e6 [CALL] invoke-virtual {v1}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
method.public.Lcom_ice_tar_TarEntry_.toString__Ljava_lang_String 0xf04a [CALL] invoke-virtual {v4}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
EOF
RUN