コード例 #1
0
ファイル: formchooser.py プロジェクト: bronxc/IDAplugins-1
    def __init__(self):
        # Load custom icon
        self.icon_id = idaapi.load_custom_icon(data=MyChooserForm.icon_data)
        if self.icon_id == 0:
            raise RuntimeError("Failed to load icon data!")

        self.main_current_index = -1
        self.EChMain = MainChooserClass("MainChooser", self.icon_id)
        self.EChAux = AuxChooserClass("AuxChooser", self.icon_id)

        # Link the form to the EChooser
        self.EChMain.form = self
        self.EChAux.form = self

        Form.__init__(
            self, r"""STARTITEM 0
Form with choosers

    {FormChangeCb}
    Select an item in the main chooser:

    <Main chooser:{ctrlMainChooser}><Auxiliar chooser (multi):{ctrlAuxChooser}>


    <Selection:{ctrlSelectionEdit}>

""", {
                'ctrlSelectionEdit': Form.StringInput(),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
                'ctrlMainChooser': Form.EmbeddedChooserControl(self.EChMain),
                'ctrlAuxChooser': Form.EmbeddedChooserControl(self.EChAux),
            })
コード例 #2
0
ファイル: ex_askusingform.py プロジェクト: mfhw20/idapython-1
    def __init__(self):
        self.__n = 0
        Form.__init__(
            self, r"""BUTTON YES* Yeah
BUTTON NO Nope
BUTTON CANCEL NONE
Dropdown list test

{FormChangeCb}
<Dropdown list (readonly):{cbReadonly}> <Add element:{iButtonAddelement}> <Set index:{iButtonSetIndex}>
<Dropdown list (editable):{cbEditable}> <Set string:{iButtonSetString}>
""", {
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'cbReadonly':
                Form.DropdownListControl(
                    items=["red", "green", "blue"], readonly=True, selval=1),
                'cbEditable':
                Form.DropdownListControl(items=["1MB", "2MB", "3MB", "4MB"],
                                         readonly=False,
                                         selval="4MB"),
                'iButtonAddelement':
                Form.ButtonInput(self.OnButtonNop),
                'iButtonSetIndex':
                Form.ButtonInput(self.OnButtonNop),
                'iButtonSetString':
                Form.ButtonInput(self.OnButtonNop),
            })
コード例 #3
0
    def __init__(self, crawled_apis, from_addr=0, to_addr=0):
        self.invert = False
        self.chosenApis = []
        self.apiChooser = ApiChooser("Apis", crawled_apis, flags=Choose.CH_MULTI)
        Form.__init__(self, r"""STARTITEM {id:rNormal}
BUTTON YES* Annotate
BUTTON CANCEL Cancel
IDA ApiScout (Results)

{FormChangeCb}
ApiScout has found the following APIs (select to annotate, e.g. CTRL+A):

<APIs:{cApiChooser}>
{cApiInfo}

Filter APIs by Range -  
<##from  :{iAddrFrom}>
<##to    :{iAddrTo}>
Filter APIs by Grouping - require another API 
<##within:{iByteRange}> bytes
<##Apply Filter:{bApplyFilter}>
""", {
    'cApiInfo': Form.StringLabel("APIs (unfiltered)"),
    'bApplyFilter': Form.ButtonInput(self.OnButtonApplyFilter),
    'iAddrFrom': Form.NumericInput(tp=Form.FT_ADDR, value=from_addr),
    'iAddrTo': Form.NumericInput(tp=Form.FT_ADDR, value=to_addr),
    'iByteRange': Form.NumericInput(tp=Form.FT_UINT64, value=0x100),
    'cGroup1': Form.ChkGroupControl(("rFilter", "rNormal")),
    'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
    'cApiChooser' : Form.EmbeddedChooserControl(self.apiChooser)
})
コード例 #4
0
    def __init__(self, manager, message="Search Configuration:"):
        self.cnn = manager.connector
        Form.__init__(
            self, r"""BUTTON YES* Apply
BUTTON CANCEL Cancel
Kam1n0
{FormChangeCb}
%s
<Protocol :{txtProtocol}>
<Server   :{txtServer}>
<Port     :{txtPort}>
Login Info:
<User     :{txtUser}>
<Password :{txtPw}>
<  >
""" % message, {
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'txtServer':
                Form.StringInput(
                    swidth=30, tp=Form.FT_ASCII, value=self.cnn.server),
                'txtProtocol':
                Form.StringInput(
                    swidth=30, tp=Form.FT_ASCII, value=self.cnn.protocol),
                'txtPort':
                Form.StringInput(
                    swidth=30, tp=Form.FT_ASCII, value=self.cnn.port),
                'txtUser':
                Form.StringInput(
                    swidth=30, tp=Form.FT_ASCII, value=self.cnn.un),
                'txtPw':
                Form.StringInput(
                    swidth=30, tp=Form.FT_ASCII, value=self.cnn.pw),
            })
        self.Compile()
コード例 #5
0
    def __init__(self, engine, modules):
        Form.__init__(
            self, r"""STARTITEM {id:address}
BUTTON YES* OK
BUTTON CANCEL Cancel
Convert real address to IDB offset

{FormChangeCb}
<Module\: :{module}>
<##Real address\::{address}>
Module base: {mod_base}
<##IDB address\: :{idb_addr}>
""", {
                'module':
                Form.DropdownListControl(items=modules,
                                         readonly=True,
                                         selval=0,
                                         swidth=20,
                                         width=20),
                'address':
                Form.NumericInput(swidth=20, tp=Form.FT_HEX),
                'mod_base':
                Form.StringLabel("0x0", tp='A'),
                'idb_addr':
                Form.NumericInput(swidth=20, tp=Form.FT_HEX),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange)
            })
        self.engine = engine
コード例 #6
0
    def __init__(self, start_ea, end_ea):
        Form.__init__(
            self, r"""BUTTON YES* Import
Import data

{FormChangeCb}
<##Start EA   :{intStartEA}>
<##End EA     :{intEndEA}>

Import type:                    Patching options:
<hex string:{rHex}><##Trim to selection:{cSize}>{cGroup}>
<string literal:{rString}>
<binary file:{rFile}>{rGroup}>

<:{strPatch}>
<##Import BIN file:{impFile}>
""", {
                'intStartEA':
                Form.NumericInput(swidth=40, tp=Form.FT_ADDR, value=start_ea),
                'intEndEA':
                Form.NumericInput(swidth=40, tp=Form.FT_ADDR, value=end_ea),
                'cGroup':
                Form.ChkGroupControl(("cSize", )),
                'rGroup':
                Form.RadGroupControl(("rHex", "rString", "rFile")),
                'strPatch':
                Form.MultiLineTextControl(
                    swidth=80, flags=Form.MultiLineTextControl.TXTF_FIXEDFONT),
                'impFile':
                Form.FileInput(swidth=50, open=True),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
            })

        self.Compile()
コード例 #7
0
    def __init__(self):
        self.invert = False
        self.EChooser = EmbeddedChooserClass("Title", flags=Choose.CH_MODAL)
        self.selected_id = 0
        self.s = ""
        self.fst = FuzzySearchThread()
        self.fst.refresh_list.connect(self.refresh_list)
        self.fst.finished.connect(self.finished)
        # self.EChooser = EmbeddedChooserClass("Title", flags=Choose.CH_CAN_REFRESH)

        # Portability fix from Python2 to Python3.
        try:
            self.cEChooser = super(
            ).cEChooser  #super() will raise exception in python2
        except:
            pass

        Form.__init__(
            self, r"""STARTITEM 
        IDA Fuzzy Search
        {FormChangeCb}
        <:{iStr1}>

        <Results:{cEChooser}>
""", {
                'iStr1': Form.StringInput(),
                'cEChooser': Form.EmbeddedChooserControl(self.EChooser),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
            })
コード例 #8
0
    def __init__(self):
        self.invert = False
        Form.__init__(
            self,
            r"""STARTITEM {id:cGoVers}
GoLoader

{FormChangeCb}
<##Try to detemine go version based on moduledata:{iButton1}>
<##Try to detemine go version based on version string:{iButton2}>
<##Rename functions:{iButton3}>
Go version:
<Go1.2:{r2}>
<Go1.4:{r4}>
<Go1.5:{r5}>
<Go1.6:{r6}>
<Go1.7:{r7}>
<Go1.8:{r8}>
<Go1.9:{r9}>
<Go1.10:{r10}>{cGoVers}>
<##Add standard go types:{iButton4}>
<##Parse types by moduledata:{iButton5}>
""",
            {
                "iButton1": Form.ButtonInput(self.OnButton1),
                "iButton2": Form.ButtonInput(self.OnButton2),
                "iButton3": Form.ButtonInput(self.OnButton3),
                "iButton4": Form.ButtonInput(self.OnButton4),
                "iButton5": Form.ButtonInput(self.OnButton5),
                "cGoVers": Form.RadGroupControl(("r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10")),
                "FormChangeCb": Form.FormChangeCb(self.OnFormChange),
            },
        )
コード例 #9
0
    def __init__(self, start_ea, end_ea, org_file, bkp_file):
        Form.__init__(
            self, r"""Apply patches to input file

{FormChangeCb}
<##Start EA   :{intStartEA}>
<##End EA     :{intEndEA}>
<##Input file :{orgFile}>
<##Backup file:{bkpFile}>

<##Create backup:{rBackup}>
<##Restore original bytes:{rRestore}>{cGroup1}>
""", {
                'intStartEA':
                Form.NumericInput(swidth=40, tp=Form.FT_ADDR, value=start_ea),
                'intEndEA':
                Form.NumericInput(swidth=40, tp=Form.FT_ADDR, value=end_ea),
                'orgFile':
                Form.FileInput(swidth=50, open=True, value=org_file),
                'bkpFile':
                Form.FileInput(swidth=50, open=True, value=bkp_file),
                'cGroup1':
                Form.ChkGroupControl(("rBackup", "rRestore")),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
            })

        self.Compile()
コード例 #10
0
    def __init__(self, api_db_folder):
        self.invert = False
        self.chosenValues = []
        self.apiDbChooser = ApiDbChooser("ApiDBs", api_db_folder, flags=Choose.CH_MULTI)
        Form.__init__(self, r"""STARTITEM {id:rNormal}
BUTTON YES* Run
BUTTON CANCEL Cancel
IDA ApiScout

{FormChangeCb}
Please select one or more API DBs from your apiscout/dbs folder:

<Available API DBs:{cApiDbChooser}>

or load a database from another location:

<#Select a file to open#:{iFileOpen}>

<##Ignore ASLR offsets:{rAslr}>{cGroup1}>
""", {
    'iAslrOffset': Form.NumericInput(tp=Form.FT_UINT64, value=0x0),
    'iFileOpen': Form.FileInput(swidth=40, open=True, value="*.*"),
    'cGroup1': Form.ChkGroupControl(("rAslr", "rNormal")),
    'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
    'cApiDbChooser' : Form.EmbeddedChooserControl(self.apiDbChooser)
})
コード例 #11
0
    def __init__(self, pomidor):

        self.pomidor = pomidor

        Form.__init__(self, 
r"""BUTTON YES* NONE
BUTTON NO NONE
BUTTON CANCEL NONE
IDA Pomidor
{FormChangeCb}
          {imgPomidor}  
<Pomidor:{iButtonPomidor}> <Short Break:{iButtonShortBreak}> <Long Break:{iButtonLongBreak}>
   {strTime}
<Pomidor Log:{cEChooser}>
""", {
                'imgPomidor'      : Form.StringLabel(""),
                'FormChangeCb'    : Form.FormChangeCb(self.OnFormChange),
                'cEChooser'       : Form.EmbeddedChooserControl(self.pomidor.pomidorView, swidth=50),

                'strTime'         : Form.StringLabel(""),

                'iButtonPomidor'   : Form.ButtonInput(self.OnButtonPomidor, swidth=16),
                'iButtonShortBreak': Form.ButtonInput(self.OnButtonShortBreak, swidth=16),
                'iButtonLongBreak' : Form.ButtonInput(self.OnButtonLongBreak, swidth=16),
            })

        self.Compile()
コード例 #12
0
    def __init__(self, manager, disable_param=False):

        self.disable_param = disable_param

        self.all_funcs = IDAUtils.get_all_ida_funcs()
        self.funcList = FunctionListView("asm",
                                         flags=Choose.CH_MULTI,
                                         all_funcs=self.all_funcs)
        self.selected_funcs = []

        self.configuration = manager.configuration
        apps = self.configuration['apps'].keys()
        default_app = self.configuration['default-app']
        if self.configuration['default-app'] is not None:
            default_index = apps.index(default_app)
        else:
            default_index = 0
        self.selected_app_key = default_app

        self.threshold = self.configuration['default-threshold']
        self.topk = self.configuration['default-topk']
        self.avoidSameBinary = self.configuration['default-avoidSameBinary']

        Form.__init__(
            self, r"""BUTTON YES* Continue
BUTTON CANCEL Cancel
Kam1n0
{FormChangeCb}
Select Function:
<(Use ctrl/shift + click to select multiple functions):{fvChooser}>
<Select all functions:{chkSearchAll}><Skip library functions:{chkSkipLib}>{adSearchGroup}>
Configuration
<Threshold:{txtSim}>
<TopK     :{txtTopK}>
<Avoid Same Binary  :{chkSameBin}>{chkGroup}>
<App   :{dpServer}>
""", {
                'adSearchGroup':
                Form.ChkGroupControl(["chkSearchAll", "chkSkipLib"]),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'txtSim':
                Form.StringInput(
                    swidth=25, tp=Form.FT_ASCII, value=str(self.threshold)),
                'txtTopK':
                Form.StringInput(
                    swidth=25, tp=Form.FT_ASCII, value=str(self.topk)),
                'chkGroup':
                Form.ChkGroupControl(("chkSameBin", "")),
                'dpServer':
                Form.DropdownListControl(swidth=45,
                                         width=45,
                                         selval=default_index,
                                         items=apps,
                                         readonly=True),
                'fvChooser':
                Form.EmbeddedChooserControl(self.funcList)
            })
        self.Compile()
コード例 #13
0
    def __init__(self, manager):
        self.cnn = manager.connector
        self.Kconf = manager.Kconf
        self.listView = ConnectionListView(manager)

        dpItems = self.Kconf['cnns'].keys()
        if self.Kconf['default-cnn'] is not None:
            defaultIndex = self.Kconf['cnns'].keys().index(
                self.Kconf['default-cnn'])

        else:
            defaultIndex = 0

        Form.__init__(
            self, r"""BUTTON YES* OK
BUTTON CANCEL NONE
Kam1n0 - Manage connections
{FormChangeCb}
Manage Connections:
<(Click to edit):{fvChooser}>
<Remove :{btnRemove}> Remove selected connection.
<Protocol :{txtProtocol}>
<Server   :{txtServer}>
<Port     :{txtPort}>
Login Info:
<User     :{txtUser}>
<Password :{txtPw}>
<Update / Add:{btnUpdate}>
<Default  :{dpCnn}>
<  >
""", {
                'fvChooser':
                Form.EmbeddedChooserControl(self.listView),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'txtServer':
                Form.StringInput(swidth=30, tp=Form.FT_ASCII),
                'txtProtocol':
                Form.StringInput(swidth=30, tp=Form.FT_ASCII),
                'txtPort':
                Form.StringInput(swidth=30, tp=Form.FT_ASCII),
                'txtUser':
                Form.StringInput(swidth=30, tp=Form.FT_ASCII),
                'txtPw':
                Form.StringInput(swidth=30, tp=Form.FT_ASCII),
                'btnRemove':
                Form.ButtonInput(self.OnButtonRemove),
                'btnUpdate':
                Form.ButtonInput(self.OnButtonUpdate),
                'dpCnn':
                Form.DropdownListControl(swidth=45,
                                         width=45,
                                         selval=defaultIndex,
                                         items=dpItems,
                                         readonly=True)
            })
        self.Compile()
コード例 #14
0
    def __init__(self, lines, prompt):
        self.prompt = prompt
        print("in okTextForm init")
        if prompt:
            Form.__init__(
                self, r"""STARTITEM 0
BUTTON YES* OK
BUTTON NO NONE
BUTTON CANCEL NONE
CGC Ida Client Help

{FormChangeCb}
<Don't show help at startup:{nShow}>{cGroup1}>

{cStr1}
{cStr2}

""", {
                    'cStr1': Form.StringLabel(lines['overview']),
                    'cStr2': Form.StringLabel(lines['hotkeys']),
                    'cGroup1': Form.ChkGroupControl(("nShow", "")),
                    'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
                })

        else:
            Form.__init__(
                self, r"""STARTITEM 0
BUTTON YES* OK
BUTTON NO NONE
BUTTON CANCEL NONE
CGC Ida Client Help

{FormChangeCb}
{cStr1}

""", {
                    'cStr1': Form.StringLabel(lines['overview']),
                    'cStr2': Form.StringLabel(lines['hotkeys']),
                    'cGroup1': Form.ChkGroupControl(("nShow", "")),
                    'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
                })
コード例 #15
0
    def __init__(self, manager):
        global funcListG
        self.funcList = FunctionListView("asm", flags=Choose2.CH_MULTI)
        self.funcs = []

        self.cnn = manager.connector

        self.Kconf = manager.Kconf
        dpItems = self.Kconf['cnns'].keys()
        if self.Kconf['default-cnn'] is not None:
            defaultIndex = self.Kconf['cnns'].keys().index(
                self.Kconf['default-cnn'])

        else:
            defaultIndex = 0

        self.threshold = self.Kconf['default-threshold']
        self.topk = self.Kconf['default-topk']

        Form.__init__(
            self, r"""BUTTON YES* Search
BUTTON CANCEL Cancel
Kam1n0
{FormChangeCb}
Select Function to be searched
<(Use ctrl/shift + click to select multiple functions):{fvChooser}>
<Select all functions:{chkSearchAll}><Skip library functions:{chkSkipLib}>{adSearchGroup}>
Search configuration
<Threshold:{txtSim}>
<TopK     :{txtTopK}>
<Server   :{dpServer}>

""", {
                'adSearchGroup':
                Form.ChkGroupControl(["chkSearchAll", "chkSkipLib"]),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'txtSim':
                Form.StringInput(
                    swidth=25, tp=Form.FT_ASCII, value=str(self.threshold)),
                'txtTopK':
                Form.StringInput(
                    swidth=25, tp=Form.FT_ASCII, value=str(self.topk)),
                'dpServer':
                Form.DropdownListControl(swidth=45,
                                         width=45,
                                         selval=defaultIndex,
                                         items=dpItems,
                                         readonly=True),
                'fvChooser':
                Form.EmbeddedChooserControl(self.funcList)
            })
        self.Compile()
コード例 #16
0
    def __init__(self):
        Form.__init__(self, r"""STARTITEM 0
BUTTON YES* Yeah
BUTTON NO Nope
BUTTON CANCEL NONE
Form Test

{FormChangeCb}
<Multilinetext:{txtMultiLineText}>
""", {
            'txtMultiLineText': Form.MultiLineTextControl(text="Hello"),
            'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
        })
コード例 #17
0
	def __init__(self, project_list):
		self.invert = False
		project_list += ["Select public project"]
		self._project_list = project_list
		Form.__init__(self, r"""STARTITEM {id:iProject}
BUTTON CANCEL Cancel
Project selector form
{FormChangeCb}
<##Select your working project:{iProject}>
""", {
			'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
			'iProject': Form.DropdownListControl(project_list)
		})
コード例 #18
0
    def __init__(self):
        Form.__init__(
            self, r"""BUTTON YES* Select
Select Encoding

{FormChangeCb}
<Select an encoding :{cbReadonly}>
""", {
                'cbReadonly':
                Form.DropdownListControl(
                    items=ENCODING_LIST, readonly=True, selval=19),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange)
            })

        self.Compile()
コード例 #19
0
	def __init__(self,defaultpath):
		Form.__init__(self,
r"""BUTTON YES* 保存
BUTTON CANCEL 取消
请选择输出目录

{FormChangeCb}

<##输出目录:{impFile}>
""", {
		'impFile': Form.DirInput(value=defaultpath),

		'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
		})

		self.Compile()
コード例 #20
0
	def __init__(self,defaultpath):
		Form.__init__(self,
r"""BUTTON YES* 保存
BUTTON CANCEL 取消
请选择输出目录

{FormChangeCb}

<##输出目录:{impFile}>
""".decode('utf-8').encode(sys.getfilesystemencoding()), {
		'impFile': Form.DirInput(value=defaultpath),

		'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
		})

		self.Compile()
コード例 #21
0
    def __init__(self, manager):
        self.allFuncs = [GetFunction(x) for x in GetFunctions()]
        self.funcList = FunctionListView("asm",
                                         allFuncs=self.allFuncs,
                                         flags=Choose2.CH_MULTI)
        self.funcs = []

        self.cnn = manager.connector
        self.Kconf = manager.Kconf
        dpItems = self.Kconf['cnns'].keys()
        if self.Kconf['default-cnn'] is not None:
            defaultIndex = self.Kconf['cnns'].keys().index(
                self.Kconf['default-cnn'])
        else:
            defaultIndex = 0

        Form.__init__(
            self, r"""BUTTON YES* Index
BUTTON CANCEL Cancel
Kam1n0
{FormChangeCb}
Select Function to be indexed
<(Use ctrl/shift + click to select multiple functions):{fvChooser}>
<Select all functions:{chkSearchAll}>
<Select all library functions:{chkOnlyLib}>
<Select all but not library functions:{chkSkipLib}>{adSearchGroup}>
Index configuration
<Server   :{dpServer}>
""", {
                'adSearchGroup':
                Form.ChkGroupControl(
                    ["chkSearchAll", "chkSkipLib", "chkOnlyLib"]),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'txtSim':
                Form.StringInput(swidth=25, tp=Form.FT_ASCII, value='0.5'),
                'dpServer':
                Form.DropdownListControl(swidth=45,
                                         width=45,
                                         selval=defaultIndex,
                                         items=dpItems,
                                         readonly=True),
                'fvChooser':
                Form.EmbeddedChooserControl(self.funcList)
            })
        self.Compile()
        self.activated = False
コード例 #22
0
    def __init__(self):
        self.invert = False
        Form.__init__(
            self, r"""STARTITEM {id:cGoVers}
GoLoader

{FormChangeCb}
<##Try to detemine go version based on moduledata:{iButton1}>
<##Try to detemine go version based on version string:{iButton2}>
<##Rename functions:{iButton3}>
<##Rename structs:{iButton6}>
<##Save package info to txt:{iButton7}>
Go version:
<Go1.2:{r2}>
<Go1.4:{r4}>
<Go1.5:{r5}>
<Go1.6:{r6}>
<Go1.7:{r7}>
<Go1.8:{r8}>
<Go1.9:{r9}>
<Go1.10:{r10}>
<Go1.11:{r11}>
<Go1.12:{r12}>
<Go1.13:{r13}>{cGoVers}>
<##Add standard go types:{iButton4}>
<##Parse types by moduledata:{iButton5}>
""", {
                'iButton1':
                Form.ButtonInput(self.OnButton1),
                'iButton2':
                Form.ButtonInput(self.OnButton2),
                'iButton3':
                Form.ButtonInput(self.OnButton3),
                'iButton4':
                Form.ButtonInput(self.OnButton4),
                'iButton5':
                Form.ButtonInput(self.OnButton5),
                'iButton6':
                Form.ButtonInput(self.OnButton6),
                'iButton7':
                Form.ButtonInput(self.OnButton7),
                'cGoVers':
                Form.RadGroupControl(("r2", "r3", "r4", "r5", "r6", "r7", "r8",
                                      "r9", "r10", "r11", "r12", "r13")),
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
            })
コード例 #23
0
	def __init__(self,bundleFile,impFile):
		Form.__init__(self,
r"""BUTTON YES* 替换
BUTTON CANCEL 取消
请选择文件(文件压缩后数据大小必须小于替换前压缩后数据大小)

{FormChangeCb}
<##选择被打包的文件:{bundleFile}>
<##选择修改后的文件:{impFile}>

""".decode('utf-8').encode(sys.getfilesystemencoding()), {  'bundleFile': Form.FileInput(open=True,value=bundleFile),
		'impFile': Form.FileInput(open=True,value=impFile),

		'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
		})

		self.Compile()
コード例 #24
0
    def __init__(self):
        print("in init")
        Form.__init__(
            self, r"""STARTITEM 0
BUTTON YES* OK
BUTTON NO NONE
BUTTON CANCEL NONE
Please wait, CGC Monitor working...

{FormChangeCb}
{cStr1}

""", {
                'cStr1':
                Form.StringLabel("Please wait, CGC Monitor working..."),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
            })
コード例 #25
0
    def __init__(self):

        Form.__init__(
            self, r"""BUTTON YES* NONE
BUTTON NO NONE
BUTTON CANCEL NONE
DIE - Dynamic IDA Enrichment
{FormChangeCb}
            {imgDIE}
DIE - Dynamic IDA Enrichment Framework
Version 0.1

Written by: Yaniv Balmas.
""", {
                'imgDIE': Form.StringLabel(""),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
            })
        self.Compile()
コード例 #26
0
ファイル: getAddrCount.py プロジェクト: mfthomps/RESim
    def __init__(self):
        Form.__init__(
            self, r"""STARTITEM {id:iAddr}
BUTTON YES* OK
BUTTON CANCEL Cancel
Get address and count for memory watch

{FormChangeCb}
<##Enter an address      :{iAddr}>
<##Enter count           :{iRawHex}>

""", {
                'iAddr': Form.NumericInput(tp=Form.FT_ADDR),
                'iRawHex': Form.NumericInput(tp=Form.FT_ADDR),
                'iButton1': Form.ButtonInput(self.OnButton1),
                'iButton2': Form.ButtonInput(self.OnButton2),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
            })
コード例 #27
0
    def __init__(self, cnn, funcs):
        self.cnn = cnn
        self.actionView = ActionView(form=self, funcs=funcs, embedded=True)
        self.initialized = False
        Form.__init__(
            self, r"""BUTTON YES* OK
BUTTON NO NONE
BUTTON CANCEL NONE
Indexing job
{FormChangeCb}
<Index progress:{cEChooser}>
""", {
                'FormChangeCb':
                Form.FormChangeCb(self.OnFormChange),
                'cEChooser':
                Form.EmbeddedChooserControl(self.actionView, swidth=0),
            })
        self.Compile()
コード例 #28
0
ファイル: Auth.py プロジェクト: lolblat/IReal
    def __init__(self):
        self.invert = False
        Form.__init__(
            self, r"""STARTITEM {id:iUserName}
BUTTON YES* Login
BUTTON CANCEL Cancel
Login form
{FormChangeCb}
<##Enter your username:{iUserName}>
<##Enter your password:{iPassword}>
{iResult}
""", {
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
                'iUserName': Form.StringInput(tp=Form.FT_ASCII),
                'iPassword': Form.StringInput(tp=Form.FT_ASCII),
                "iResult": Form.StringLabel(
                    tp=Form.FT_ASCII, value="", sz=1024)
            })
コード例 #29
0
ファイル: neo4ida.py プロジェクト: sam-b/ida-scripts
    def __init__(self, manager):
        self.manager = manager
        self.conf = manager.get_config()
        self.changed = False
        Form.__init__(
            self, """Neo4IDA - Execute Cypher Query
			{form_change}
			<#Query#~Q~uery:{query}>
			<#Execute Query#~E~xecute:{executeButton}>
			""", {
                "form_change": Form.FormChangeCb(self.form_change),
                "query": Form.StringInput(swidth=80),
                "executeButton": Form.ButtonInput(self.button_press)
            })

        self.Compile()
        self.query.value = "START n=node(*) return n;"
        self.Execute()
コード例 #30
0
    def __init__(self):
        Form.__init__(
            self, r"""STARTITEM {id:iAddr}
BUTTON YES* OK
BUTTON CANCEL Cancel
Modify memory with a string

{FormChangeCb}
<#Hint1#Enter string  :{iStr1}>
<##Enter an address      :{iAddr}>

""", {
                'iStr1': Form.StringInput(),
                'iAddr': Form.NumericInput(tp=Form.FT_ADDR),
                'iButton1': Form.ButtonInput(self.OnButton1),
                'iButton2': Form.ButtonInput(self.OnButton2),
                'FormChangeCb': Form.FormChangeCb(self.OnFormChange),
            })