Ejemplo n.º 1
0
 def _read(self):
     self.type_idx = vlq_base128_le.VlqBase128Le(self._io)
     self.size = vlq_base128_le.VlqBase128Le(self._io)
     self.elements = [None] * (self.size.value)
     for i in range(self.size.value):
         self.elements[i] = Dex.AnnotationElement(
             self._io, self, self._root)
Ejemplo n.º 2
0
 def _read(self):
     self.type_idx = vlq_base128_le.VlqBase128Le(self._io)
     self.size = vlq_base128_le.VlqBase128Le(self._io)
     self.elements = []
     for i in range(self.size.value):
         self.elements.append(
             Dex.AnnotationElement(self._io, self, self._root))
Ejemplo n.º 3
0
        def _read(self):
            self.is_present = self._io.read_s1()
            if self.is_present == 11:
                self.len_str = vlq_base128_le.VlqBase128Le(self._io)

            if self.is_present == 11:
                self.value = (self._io.read_bytes(self.len_str.value)).decode(u"UTF-8")
Ejemplo n.º 4
0
 def _read(self):
     self._debug['len']['start'] = self._io.pos()
     self.len = vlq_base128_le.VlqBase128Le(self._io)
     self.len._read()
     self._debug['len']['end'] = self._io.pos()
     self._debug['body']['start'] = self._io.pos()
     self.body = self._io.read_bytes(self.len.value)
     self._debug['body']['end'] = self._io.pos()
Ejemplo n.º 5
0
 def _read(self):
     self._debug['key']['start'] = self._io.pos()
     self.key = vlq_base128_le.VlqBase128Le(self._io)
     self.key._read()
     self._debug['key']['end'] = self._io.pos()
     self._debug['value']['start'] = self._io.pos()
     _on = self.wire_type
     if _on == GoogleProtobuf.Pair.WireTypes.varint:
         self.value = vlq_base128_le.VlqBase128Le(self._io)
         self.value._read()
     elif _on == GoogleProtobuf.Pair.WireTypes.len_delimited:
         self.value = GoogleProtobuf.DelimitedBytes(
             self._io, self, self._root)
         self.value._read()
     elif _on == GoogleProtobuf.Pair.WireTypes.bit_64:
         self.value = self._io.read_u8le()
     elif _on == GoogleProtobuf.Pair.WireTypes.bit_32:
         self.value = self._io.read_u4le()
     self._debug['value']['end'] = self._io.pos()
Ejemplo n.º 6
0
        def _read(self):
            self.static_fields_size = vlq_base128_le.VlqBase128Le(self._io)
            self.instance_fields_size = vlq_base128_le.VlqBase128Le(self._io)
            self.direct_methods_size = vlq_base128_le.VlqBase128Le(self._io)
            self.virtual_methods_size = vlq_base128_le.VlqBase128Le(self._io)
            self.static_fields = []
            for i in range(self.static_fields_size.value):
                self.static_fields.append(
                    Dex.EncodedField(self._io, self, self._root))

            self.instance_fields = []
            for i in range(self.instance_fields_size.value):
                self.instance_fields.append(
                    Dex.EncodedField(self._io, self, self._root))

            self.direct_methods = []
            for i in range(self.direct_methods_size.value):
                self.direct_methods.append(
                    Dex.EncodedMethod(self._io, self, self._root))

            self.virtual_methods = []
            for i in range(self.virtual_methods_size.value):
                self.virtual_methods.append(
                    Dex.EncodedMethod(self._io, self, self._root))
Ejemplo n.º 7
0
def varint(i):
    io = KaitaiStream(BytesIO(i))
    res = vlq_base128_le.VlqBase128Le(io)
    return res.len, res.value
Ejemplo n.º 8
0
 def _read(self):
     self.len = vlq_base128_le.VlqBase128Le(self._io)
     self.body = self._io.read_bytes(self.len.value)
Ejemplo n.º 9
0
 def _read(self):
     self.size = vlq_base128_le.VlqBase128Le(self._io)
     self.values = []
     for i in range(self.size.value):
         self.values.append(Dex.EncodedValue(self._io, self,
                                             self._root))
Ejemplo n.º 10
0
 def _read(self):
     self.method_idx_diff = vlq_base128_le.VlqBase128Le(self._io)
     self.access_flags = vlq_base128_le.VlqBase128Le(self._io)
     self.code_off = vlq_base128_le.VlqBase128Le(self._io)
Ejemplo n.º 11
0
 def _read(self):
     self.utf16_size = vlq_base128_le.VlqBase128Le(self._io)
     self.data = (self._io.read_bytes(
         self.utf16_size.value)).decode(u"ascii")
Ejemplo n.º 12
0
 def _read(self):
     self.field_idx_diff = vlq_base128_le.VlqBase128Le(self._io)
     self.access_flags = vlq_base128_le.VlqBase128Le(self._io)
Ejemplo n.º 13
0
 def _read(self):
     self.name_idx = vlq_base128_le.VlqBase128Le(self._io)
     self.value = Dex.EncodedValue(self._io, self, self._root)
Ejemplo n.º 14
0
 def _read(self):
     self.magic = self._io.ensure_fixed_contents(b"\x1B\x4C\x4A")
     self.version = self._io.read_bytes(1)
     self.flags = vlq_base128_le.VlqBase128Le(self._io)
Ejemplo n.º 15
0
 def _read(self):
     self.header = self._root.DumpHeader(self._io, self, self._root)
     self.length = vlq_base128_le.VlqBase128Le(self._io)
     self.tail = self._io.read_bytes_full()
Ejemplo n.º 16
0
 def _read(self):
     self.size = vlq_base128_le.VlqBase128Le(self._io)
     self.values = [None] * (self.size.value)
     for i in range(self.size.value):
         self.values[i] = Dex.EncodedValue(self._io, self, self._root)