Distinguish the existence of two separate strings

Viewed 42

I have an assembly source file, named: helloworld.s:

.global _start            
_start: mov X0, #1    
    ldr X1, =helloworld 
    mov X2, #13     
    mov X8, #64   
    svc 0       
    mov     X0, #0      
    mov     X8, #93     
    svc     0           
.data
helloworld:   .ascii  "Hello nice warm World"
              .ascii  "Hello nice warm World2"

I created an executable file:

/usr/aarch64-linux-gnu/bin/as -o helloworld.o helloworld.s
/usr/aarch64-linux-gnu/bin/ld -o helloworld helloworld.o

and then, created an objdump output of the executable file:

/usr/aarch64-linux-gnu/bin/objdump  -s -D    helloworld > objdum_output_helloworld.txt

This gives:

helloworld:     file format elf64-littleaarch64


Contents of section .text:
...
 4000b0 200080d2 e1000058 a20180d2 080880d2   ......X........
 4000c0 010000d4 000080d2 a80b80d2 010000d4  ................
 4000d0 d8004100 00000000                    ..A.....        
...

Contents of section .data:
...
 4100d8 48656c6c 6f206e69 63652077 61726d20  Hello nice warm 
 4100e8 576f726c 6448656c 6c6f206e 69636520  WorldHello nice 
 4100f8 7761726d 20576f72 6c6432             warm World2     
...

Disassembly of section .text:

00000000004000b0 <_start>:

...
  4000b0:   d2800020    mov x0, #0x1                    // #1
  4000b4:   580000e1    ldr x1, 4000d0 <_start+0x20>
  4000b8:   d28001a2    mov x2, #0xd                    // #13
  4000bc:   d2800808    mov x8, #0x40                   // #64
  4000c0:   d4000001    svc #0x0
  4000c4:   d2800000    mov x0, #0x0                    // #0
  4000c8:   d2800ba8    mov x8, #0x5d                   // #93
  4000cc:   d4000001    svc #0x0
  4000d0:   004100d8    .inst   0x004100d8 ; undefined
  4000d4:   00000000    .inst   0x00000000 ; undefined
...

Disassembly of section .data:


00000000004100d8 <helloworld>:

...
  4100d8:   6c6c6548    ldnp    d8, d25, [x10, #-320]
  4100dc:   696e206f    ldpsw   x15, x8, [x3, #-144]
  4100e0:   77206563    .inst   0x77206563 ; undefined
  4100e4:   206d7261    .inst   0x206d7261 ; undefined
  4100e8:   6c726f57    ldnp    d23, d27, [x26, #-224]
  4100ec:   6c654864    ldnp    d4, d18, [x3, #-432]
  4100f0:   6e206f6c    umin    v12.16b, v27.16b, v0.16b
  4100f4:   20656369    .inst   0x20656369 ; undefined
  4100f8:   6d726177    ldp d23, d24, [x11, #-224]
  4100fc:   726f5720    .inst   0x726f5720 ; undefined
  410100:   Address 0x0000000000410100 is out of bounds.

The question:

How can I see from the objdump output only, the existence of two separate strings:

"Hello nice warm World"

and

"Hello nice warm World2"  ?

Thanks

0 Answers
Related