* Dex add support for some imports within direct_methods via super calls * Fixed tests and added test
110 lines
3.6 KiB
Text
110 lines
3.6 KiB
Text
NAME=Dalvik HelloWorld afl
|
|
FILE=bins/dex/HelloWorld.dex
|
|
CMDS=aa; afl
|
|
EXPECT=<<EOF
|
|
0x10000025c 1 34 entry0
|
|
0x8000000000 1 2 sym.Ljava_io_PrintStream_.println_Ljava_lang_String__V
|
|
0x100000238 1 20 method.public.constructor.LHello_._init___V
|
|
0x8000000006 1 2 sym.Ljava_lang_Object_._init___V
|
|
0x100000290 1 84 method.public.LHello_.foo_I_V
|
|
0x8000000008 1 2 sym.Ljava_lang_StringBuilder_._init___V
|
|
0x800000000a 1 2 sym.Ljava_lang_StringBuilder_.append_Ljava_lang_String__Ljava_lang_StringBuilder
|
|
0x8000000002 1 2 sym.Ljava_lang_Integer_._init__I_V
|
|
0x8000000004 1 2 sym.Ljava_lang_Integer_.toString__Ljava_lang_String
|
|
0x800000000c 1 2 sym.Ljava_lang_StringBuilder_.toString__Ljava_lang_String
|
|
0x1000002f4 1 20 method.public.constructor.LWorld_._init___V
|
|
0x100000318 1 68 method.public.LWorld_.foo_I_V
|
|
EOF
|
|
RUN
|
|
|
|
NAME=Dalvik HelloWorld string xref
|
|
FILE=bins/dex/HelloWorld.dex
|
|
CMDS=aa; axt @ str.Findus
|
|
EXPECT=<<EOF
|
|
entry0 0x100000260 [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
|
|
entry0 0x10000026e [CALL] invoke-direct {v0}, LHello;-><init>()V
|
|
EOF
|
|
RUN
|
|
|
|
NAME=Dalvik HelloWorld func xref to super method
|
|
FILE=bins/dex/org.radare.radare2installer.dex
|
|
CMDS=aaa; axt @ sym.Landroid_app_Activity_.onDestroy__V~invoke-super
|
|
EXPECT=<<EOF
|
|
method.public.Lorg_radare_radare2installer_ConsoleActivity_.onDestroy__V; void onDestroy() 0x100019e50 [CALL] invoke-super {v1}, Landroid/app/Activity;->onDestroy()V
|
|
method.public.Lorg_radare_radare2installer_LaunchActivity_.onDestroy__V 0x10001a256 [CALL] invoke-super {v1}, Landroid/app/Activity;->onDestroy()V
|
|
method.public.Lorg_radare_radare2installer_WebActivity_.onDestroy__V; void onDestroy() 0x10001e574 [CALL] invoke-super {v2}, Landroid/app/Activity;->onDestroy()V
|
|
EOF
|
|
RUN
|
|
|
|
NAME=Dalvik resolve virtual methods called via invoke-virtual
|
|
FILE=apk://bins/dex/org.radare.radare2installer.apk
|
|
CMDS=aaa ; axt @ sym.Lcom_ice_tar_TarEntry_.getUserName__Ljava_lang_String
|
|
EXPECT=<<EOF
|
|
entry0 0x10000c8ba [CALL] invoke-virtual {v1}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
|
|
entry0 0x10000c9e6 [CALL] invoke-virtual {v1}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
|
|
method.public.Lcom_ice_tar_TarEntry_.toString__Ljava_lang_String 0x10000f04a [CALL] invoke-virtual {v4}, Lcom/ice/tar/TarEntry;->getUserName()Ljava/lang/String;
|
|
EOF
|
|
RUN
|
|
|
|
NAME=Dalvik resolve imports called via invoke-virtual
|
|
FILE=apk://bins/dex/org.radare.radare2installer.apk
|
|
CMDS=aaa ; axt @ sym.Ljava_net_URL_.openStream__Ljava_io_InputStream
|
|
EXPECT=<<EOF
|
|
method.public.Ljavax_activation_URLDataSource_.getInputStream__Ljava_io_InputStream 0x100021180 [CALL] invoke-virtual {v0}, Ljava/net/URL;->openStream()Ljava/io/InputStream;
|
|
EOF
|
|
RUN
|
|
|
|
NAME=Dalvik regs
|
|
FILE=
|
|
CMDS=<<EOF
|
|
e asm.arch=dalvik
|
|
ar
|
|
EOF
|
|
EXPECT=<<EOF
|
|
v0 = 0x00000000
|
|
v1 = 0x00000000
|
|
v2 = 0x00000000
|
|
v3 = 0x00000000
|
|
v4 = 0x00000000
|
|
v5 = 0x00000000
|
|
v6 = 0x00000000
|
|
v7 = 0x00000000
|
|
v8 = 0x00000000
|
|
v9 = 0x00000000
|
|
v10 = 0x00000000
|
|
v11 = 0x00000000
|
|
v12 = 0x00000000
|
|
v13 = 0x00000000
|
|
v14 = 0x00000000
|
|
v15 = 0x00000000
|
|
v16 = 0x00000000
|
|
v17 = 0x00000000
|
|
v18 = 0x00000000
|
|
v19 = 0x00000000
|
|
v20 = 0x00000000
|
|
v21 = 0x00000000
|
|
v22 = 0x00000000
|
|
v23 = 0x00000000
|
|
v24 = 0x00000000
|
|
v25 = 0x00000000
|
|
v26 = 0x00000000
|
|
v27 = 0x00000000
|
|
v28 = 0x00000000
|
|
v29 = 0x00000000
|
|
v30 = 0x00000000
|
|
v31 = 0x00000000
|
|
v32 = 0x00000000
|
|
v33 = 0x00000000
|
|
v34 = 0x00000000
|
|
ip = 0x00000000
|
|
sp = 0x00000000
|
|
bp = 0x00000000
|
|
EOF
|
|
RUN
|