-
-
Notifications
You must be signed in to change notification settings - Fork 92
/
test-bin-orig.py
49 lines (40 loc) · 945 Bytes
/
test-bin-orig.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/python
from r2.r_bin import *
import ctypes
a=RBin()
if not a.load("/bin/ls", False):
print "Fuck. cannot load /bin/ls"
exit(1)
print ("------")
info = a.get_info ()
print ("type: "+info.type)
print ("arch: "+info.arch)
print ("mach: "+info.machine)
print ("os: "+info.os)
print ("subsys: "+info.subsystem)
print ("------")
o = a.get_object ()
print ("object: "+str(o))
baddr= a.get_baddr ()
print ("base address: "+str(baddr))
sect = a.get_sections ()
#sect._o = addressof (sect)
print(dir(sect))
it = sect.iterator ()
print(dir(it))
while True:
data = it.get_data ()
print ("+++++",sect._o)
ds = cast (data, POINTER(RBinSection)).contents
print ("Section: ", ds.name)
if it.n == None:
print ("GO BREAK")
break
it = it.get_next ()
exit(0)
sect._o = addressof (sect)
print ("_________________O ",a._o)
print ("sections: "+str(sect))
print dir(sect)
#sectlist = cast(a, ctypes.c_void_p)
#print ("iter "+str(iter))