예제 #1
0
파일: elf.py 프로젝트: tusharkeshav/mitra
 def __init__(self, data=""):
     FType.__init__(self, data)
     self.data = data
     self.bParasite = True
     self.parasite_o = 0x40  # dependant on the host file
     self.parasite_s = 0xFFFFFFFF
     self.cut = 0xb8
예제 #2
0
	def __init__(self, data=""):
		FType.__init__(self, data)
		self.data = data
		self.type = "PHP"
		self.start_o = 4*1024*1024
		self.parasite_o = None
		self.parasite_s = None
예제 #3
0
	def __init__(self, data=""):
		FType.__init__(self, data)
		self.data = data

		self.bParasite = False

		self.start_o = 128*1024 # with WinRar
예제 #4
0
파일: ico.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 0x70  # rought estimate - dependant
        self.parasite_s = 0xFFFFFFFF
예제 #5
0
파일: postscript.py 프로젝트: corkami/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True

        self.FunctionPar = True  # Function parasite or inline parasite

        if self.FunctionPar:
            self.PREWRAP = b"/{("  # nameless function declaration
            self.POSTWRAP = b")}"
            self.validate = bBalancedPar
        else:
            self.PREWRAP = b"%"  # nameless function declaration
            self.POSTWRAP = b"\r\n"
            self.validate = bNoNL

        # Magic can be actually further but only valid characters
        # and postscript logic must be present.
        self.start_o = 0

        self.cut = 0
        self.prewrap = len(self.PREWRAP)
        self.postwrap = len(self.POSTWRAP)

        self.parasite_o = self.prewrap  # right after the function declaration
        self.parasite_s = 0xFFFFFF  # quite unclear
예제 #6
0
파일: iso.py 프로젝트: tusharkeshav/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = False  # no parasiting yet. Would be trivial.

        self.precav_s = 0x8000
예제 #7
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.type = "Bzip2"

        self.start_o = 0  # yes, it's required
        self.bParasite = False  # not sure yet
예제 #8
0
파일: bmp.py 프로젝트: malikakarsh/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 14 + 12  # minimum in OS/2 1.x - BitmapFileHeader + BitmapCoreHeader
        self.parasite_s = 0xFFFFFFFF - 1
        self.cut = self.parasite_o
예제 #9
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.bParasite = True
        self.parasite_o = 9
        self.parasite_s = 0xFFFFFFFF - 1

        self.cut = 9
예제 #10
0
 def __init__(self, data=""):
     FType.__init__(self, data)
     self.data = data
     self.bParasite = True
     # alignment, but actually first physical offset of a section for big headers
     self.parasite_o = 0x200
     self.parasite_s = 0xFFFFFFFF
     self.cut = 0x200
예제 #11
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.bParasite = True
        self.parasite_o = 0x28  # After the JP2 header
        self.parasite_s = 0xFFFFFFFF  # also exists in 64b flavor

        self.cut = 0x20
        self.prewrap = 2 * 4
예제 #12
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 0x1E  # depends on archived file name
        self.parasite_s = 0xffffff  # ?

        self.start_o = 4 * 1024 * 1024  # no actual downward limit
예제 #13
0
파일: mp4.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.bParasite = True
        self.parasite_o = 0x8
        self.parasite_s = 0xFFFFFFFF  # also exists in 64b flavor

        self.cut = 0  # yes
        self.prewrap = 2 * 4
예제 #14
0
파일: js.py 프로젝트: olivierh59500/mitra
	def __init__(self, data=""):
		FType.__init__(self, data)
		self.data = data
		self.type = "JavaScript"
		self.start_o = 4*1024*1024
		self.parasite_o = None
		self.parasite_s = None

		self.terminator = b"<!--"
예제 #15
0
파일: psd.py 프로젝트: tusharkeshav/mitra
	def __init__(self, data=""):
		FType.__init__(self, data)
		self.data = data

		self.bParasite = True
		self.cut = self.COLOR_MODE_DATA_o + 8
		self.parasite_o = self.cut
		self.parasite_s = 0xFFFFFFFF
		self.prewrap = self.IMAGE_RESOURCE_BLOCK_s
예제 #16
0
파일: bpg.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.bAppData = False  # rejected by bpgview
        self.bParasite = True
        self.parasite_o = 0x10
        self.parasite_s = 0xffffff  # ?

        self.cut = 9  # TODO: actually variable
        self.prewrap = 3
예제 #17
0
파일: pdfc.py 프로젝트: tusharkeshav/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.start_o = 0
        # the whole `%PDF-1.3` signature has to be present in the first 1kb
        self.precav_s = 1018

        self.bAppData = True
        self.bParasite = False
예제 #18
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 32  # size of section header
        self.parasite_s = 0xFFFF * 3  # max nb of RGB records

        self.cut = 0
        self.prewrap = 32
예제 #19
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 0x17
        self.parasite_s = 999999

        self.cut = 6
        self.prewrap = len(self.TEMPLATE % 0)  # self.parasite_o - self.cut
예제 #20
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = self.TRAINER_o
        self.parasite_s = self.TRAINER_s

        self.cut = self.TRAINER_o
        self.prewrap = self.parasite_o - self.cut
예제 #21
0
파일: zip_.py 프로젝트: olivierh59500/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.type = "Zip"

        self.bParasite = True
        self.parasite_o = 0x1E
        self.parasite_s = 0xffffff  # ?

        self.start_o = 4 * 1024 * 1024  # no actual downward limit
예제 #22
0
파일: svg.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        # disabled because some tools are unhappy with binary in XML comments
        self.bParasite = False
        self.bAppData = False

        self.parasite_o = 0x80  # rough average...
        self.parasite_s = 0xFFFFFFFF
예제 #23
0
파일: riff.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_s = 0xFFFFFFFF

        self.cut = 12
        self.prewrap = 2 * 4
        self.parasite_o = self.cut + self.prewrap
예제 #24
0
파일: icc.py 프로젝트: pombredanne/mitra
	def __init__(self, data=""):
		FType.__init__(self, data)
		self.data = data

		self.bParasite = True
		self.parasite_o = self.tagcount_o + self.tagcount_s
		self.parasite_s = 0xFFFFFFFF

		self.cut = self.parasite_o
		self.prewrap = 0
예제 #25
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.type = "BPG"
        self.bAppData = False  # rejected by bpgview
        self.bParasite = True
        self.parasite_o = 0xC
        self.parasite_s = 0xffffff  # ?

        self.cut = 0xE  # TODO: actually variable
예제 #26
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.start_o = 0  # yes, it's required

        self.bParasite = True
        self.parasite_o = 12  # as extra field
        self.parasite_s = 0xFFFF

        self.cut = 10
        self.prewrap = 2
예제 #27
0
파일: id3v1.py 프로젝트: pombredanne/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        # the L3Frames should start at offset 0 in a pure ID3v1 file
        self.start_o = 0

        # we could put fake data in trailing 00s of the Tag field
        self.bParasite = False

        self.bAppData = False  # it's a footer
예제 #28
0
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.type = "TIFF"

        self.bParasite = True
        self.parasite_o = self.data_o
        self.parasite_s = 0xFFFFFFFF

        self.cut = self.parasite_o
        self.prewrap = 0
예제 #29
0
파일: gif.py 프로젝트: tusharkeshav/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data

        self.bParasite = True
        self.parasite_o = 16  # Extension, right after the header (extreme case if there's no global palette)
        self.parasite_s = 255  # max size of a subblock

        self.cut = 13  # variable if global palette is present
        self.prewrap = 3
        self.postwrap = 1  # terminator of the comment
예제 #30
0
파일: bmp.py 프로젝트: olivierh59500/mitra
    def __init__(self, data=""):
        FType.__init__(self, data)
        self.data = data
        self.type = "BMP"

        self.bParasite = True
        # BM SSSS ???? OOOO
        self.parasite_o = 0x40  # depends on each BMP
        self.parasite_s = 0xFFFFFFFF - 1

        self.cut = 0x40