|
| shellcode.parser = ArgumentParser("Multi-arch (32 bits) assembler") |
|
| shellcode.help |
|
| shellcode.action |
|
| shellcode.nargs |
|
| shellcode.args = parser.parse_args() |
|
| shellcode.machine = Machine(args.architecture) |
|
| shellcode.attrib = machine.dis_engine.attrib |
|
| shellcode.size = int(attrib) |
|
| shellcode.reg_and_id = dict(machine.mn.regs.all_regs_ids_byname) |
|
| shellcode.base_expr = machine.base_expr |
|
| shellcode.dst_interval = None |
|
| shellcode.pe = pe_init.PE(wsize=size) |
|
| shellcode.s_text = pe.SHList.add_section(name="text", addr=0x1000, rawsize=0x1000) |
|
| shellcode.s_iat = pe.SHList.add_section(name="iat", rawsize=0x100) |
|
list | shellcode.new_dll |
|
| shellcode.s_myimp = pe.SHList.add_section(name="myimp", rawsize=len(pe.DirImport)) |
|
| shellcode.AddressOfEntryPoint |
|
| shellcode.addr_main = pe.rva2virt(s_text.addr) |
|
| shellcode.virt = pe.virt |
|
| shellcode.output = pe |
|
| shellcode.st = StrPatchwork() |
|
| shellcode.source = fstream.read() |
|
| shellcode.loc_db = LocationDB() |
|
| shellcode.asmcfg = parse_asm.parse_txt(machine.mn, attrib, source, loc_db) |
|
| shellcode.patches |
|
| shellcode.loc_start = loc_db.get_or_create_name_location(args.encrypt[0]) |
|
| shellcode.loc_stop = loc_db.get_or_create_name_location(args.encrypt[1]) |
|
| shellcode.ad_start = loc_db.get_location_offset(loc_start) |
|
| shellcode.ad_stop = loc_db.get_location_offset(loc_stop) |
|