metasm 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/BUGS +11 -0
- data/CREDITS +17 -0
- data/README +270 -0
- data/TODO +114 -0
- data/doc/code_organisation.txt +146 -0
- data/doc/const_missing.txt +16 -0
- data/doc/core_classes.txt +75 -0
- data/doc/feature_list.txt +53 -0
- data/doc/index.txt +59 -0
- data/doc/install_notes.txt +170 -0
- data/doc/style.css +3 -0
- data/doc/use_cases.txt +18 -0
- data/lib/metasm.rb +80 -0
- data/lib/metasm/arm.rb +12 -0
- data/lib/metasm/arm/debug.rb +39 -0
- data/lib/metasm/arm/decode.rb +167 -0
- data/lib/metasm/arm/encode.rb +77 -0
- data/lib/metasm/arm/main.rb +75 -0
- data/lib/metasm/arm/opcodes.rb +177 -0
- data/lib/metasm/arm/parse.rb +130 -0
- data/lib/metasm/arm/render.rb +55 -0
- data/lib/metasm/compile_c.rb +1457 -0
- data/lib/metasm/dalvik.rb +8 -0
- data/lib/metasm/dalvik/decode.rb +196 -0
- data/lib/metasm/dalvik/main.rb +60 -0
- data/lib/metasm/dalvik/opcodes.rb +366 -0
- data/lib/metasm/decode.rb +213 -0
- data/lib/metasm/decompile.rb +2659 -0
- data/lib/metasm/disassemble.rb +2068 -0
- data/lib/metasm/disassemble_api.rb +1280 -0
- data/lib/metasm/dynldr.rb +1329 -0
- data/lib/metasm/encode.rb +333 -0
- data/lib/metasm/exe_format/a_out.rb +194 -0
- data/lib/metasm/exe_format/autoexe.rb +82 -0
- data/lib/metasm/exe_format/bflt.rb +189 -0
- data/lib/metasm/exe_format/coff.rb +455 -0
- data/lib/metasm/exe_format/coff_decode.rb +901 -0
- data/lib/metasm/exe_format/coff_encode.rb +1078 -0
- data/lib/metasm/exe_format/dex.rb +457 -0
- data/lib/metasm/exe_format/dol.rb +145 -0
- data/lib/metasm/exe_format/elf.rb +923 -0
- data/lib/metasm/exe_format/elf_decode.rb +979 -0
- data/lib/metasm/exe_format/elf_encode.rb +1375 -0
- data/lib/metasm/exe_format/macho.rb +827 -0
- data/lib/metasm/exe_format/main.rb +228 -0
- data/lib/metasm/exe_format/mz.rb +164 -0
- data/lib/metasm/exe_format/nds.rb +172 -0
- data/lib/metasm/exe_format/pe.rb +437 -0
- data/lib/metasm/exe_format/serialstruct.rb +246 -0
- data/lib/metasm/exe_format/shellcode.rb +114 -0
- data/lib/metasm/exe_format/xcoff.rb +167 -0
- data/lib/metasm/gui.rb +23 -0
- data/lib/metasm/gui/cstruct.rb +373 -0
- data/lib/metasm/gui/dasm_coverage.rb +199 -0
- data/lib/metasm/gui/dasm_decomp.rb +369 -0
- data/lib/metasm/gui/dasm_funcgraph.rb +103 -0
- data/lib/metasm/gui/dasm_graph.rb +1354 -0
- data/lib/metasm/gui/dasm_hex.rb +543 -0
- data/lib/metasm/gui/dasm_listing.rb +599 -0
- data/lib/metasm/gui/dasm_main.rb +906 -0
- data/lib/metasm/gui/dasm_opcodes.rb +291 -0
- data/lib/metasm/gui/debug.rb +1228 -0
- data/lib/metasm/gui/gtk.rb +884 -0
- data/lib/metasm/gui/qt.rb +495 -0
- data/lib/metasm/gui/win32.rb +3004 -0
- data/lib/metasm/gui/x11.rb +621 -0
- data/lib/metasm/ia32.rb +14 -0
- data/lib/metasm/ia32/compile_c.rb +1523 -0
- data/lib/metasm/ia32/debug.rb +193 -0
- data/lib/metasm/ia32/decode.rb +1167 -0
- data/lib/metasm/ia32/decompile.rb +564 -0
- data/lib/metasm/ia32/encode.rb +314 -0
- data/lib/metasm/ia32/main.rb +233 -0
- data/lib/metasm/ia32/opcodes.rb +872 -0
- data/lib/metasm/ia32/parse.rb +327 -0
- data/lib/metasm/ia32/render.rb +91 -0
- data/lib/metasm/main.rb +1193 -0
- data/lib/metasm/mips.rb +11 -0
- data/lib/metasm/mips/compile_c.rb +7 -0
- data/lib/metasm/mips/decode.rb +253 -0
- data/lib/metasm/mips/encode.rb +51 -0
- data/lib/metasm/mips/main.rb +72 -0
- data/lib/metasm/mips/opcodes.rb +443 -0
- data/lib/metasm/mips/parse.rb +51 -0
- data/lib/metasm/mips/render.rb +43 -0
- data/lib/metasm/os/gnu_exports.rb +270 -0
- data/lib/metasm/os/linux.rb +1112 -0
- data/lib/metasm/os/main.rb +1686 -0
- data/lib/metasm/os/remote.rb +527 -0
- data/lib/metasm/os/windows.rb +2027 -0
- data/lib/metasm/os/windows_exports.rb +745 -0
- data/lib/metasm/parse.rb +876 -0
- data/lib/metasm/parse_c.rb +3938 -0
- data/lib/metasm/pic16c/decode.rb +42 -0
- data/lib/metasm/pic16c/main.rb +17 -0
- data/lib/metasm/pic16c/opcodes.rb +68 -0
- data/lib/metasm/ppc.rb +11 -0
- data/lib/metasm/ppc/decode.rb +264 -0
- data/lib/metasm/ppc/decompile.rb +251 -0
- data/lib/metasm/ppc/encode.rb +51 -0
- data/lib/metasm/ppc/main.rb +129 -0
- data/lib/metasm/ppc/opcodes.rb +410 -0
- data/lib/metasm/ppc/parse.rb +52 -0
- data/lib/metasm/preprocessor.rb +1277 -0
- data/lib/metasm/render.rb +130 -0
- data/lib/metasm/sh4.rb +8 -0
- data/lib/metasm/sh4/decode.rb +336 -0
- data/lib/metasm/sh4/main.rb +292 -0
- data/lib/metasm/sh4/opcodes.rb +381 -0
- data/lib/metasm/x86_64.rb +12 -0
- data/lib/metasm/x86_64/compile_c.rb +1025 -0
- data/lib/metasm/x86_64/debug.rb +59 -0
- data/lib/metasm/x86_64/decode.rb +268 -0
- data/lib/metasm/x86_64/encode.rb +264 -0
- data/lib/metasm/x86_64/main.rb +135 -0
- data/lib/metasm/x86_64/opcodes.rb +118 -0
- data/lib/metasm/x86_64/parse.rb +68 -0
- data/misc/bottleneck.rb +61 -0
- data/misc/cheader-findpppath.rb +58 -0
- data/misc/hexdiff.rb +74 -0
- data/misc/hexdump.rb +55 -0
- data/misc/metasm-all.rb +13 -0
- data/misc/objdiff.rb +47 -0
- data/misc/objscan.rb +40 -0
- data/misc/pdfparse.rb +661 -0
- data/misc/ppc_pdf2oplist.rb +192 -0
- data/misc/tcp_proxy_hex.rb +84 -0
- data/misc/txt2html.rb +440 -0
- data/samples/a.out.rb +31 -0
- data/samples/asmsyntax.rb +77 -0
- data/samples/bindiff.rb +555 -0
- data/samples/compilation-steps.rb +49 -0
- data/samples/cparser_makestackoffset.rb +55 -0
- data/samples/dasm-backtrack.rb +38 -0
- data/samples/dasmnavig.rb +318 -0
- data/samples/dbg-apihook.rb +228 -0
- data/samples/dbghelp.rb +143 -0
- data/samples/disassemble-gui.rb +102 -0
- data/samples/disassemble.rb +133 -0
- data/samples/dump_upx.rb +95 -0
- data/samples/dynamic_ruby.rb +1929 -0
- data/samples/elf_list_needed.rb +46 -0
- data/samples/elf_listexports.rb +33 -0
- data/samples/elfencode.rb +25 -0
- data/samples/exeencode.rb +128 -0
- data/samples/factorize-headers-elfimports.rb +77 -0
- data/samples/factorize-headers-peimports.rb +109 -0
- data/samples/factorize-headers.rb +43 -0
- data/samples/gdbclient.rb +583 -0
- data/samples/generate_libsigs.rb +102 -0
- data/samples/hotfix_gtk_dbg.rb +59 -0
- data/samples/install_win_env.rb +78 -0
- data/samples/lindebug.rb +924 -0
- data/samples/linux_injectsyscall.rb +95 -0
- data/samples/machoencode.rb +31 -0
- data/samples/metasm-shell.rb +91 -0
- data/samples/pe-hook.rb +69 -0
- data/samples/pe-ia32-cpuid.rb +203 -0
- data/samples/pe-mips.rb +35 -0
- data/samples/pe-shutdown.rb +78 -0
- data/samples/pe-testrelocs.rb +51 -0
- data/samples/pe-testrsrc.rb +24 -0
- data/samples/pe_listexports.rb +31 -0
- data/samples/peencode.rb +19 -0
- data/samples/peldr.rb +494 -0
- data/samples/preprocess-flatten.rb +19 -0
- data/samples/r0trace.rb +308 -0
- data/samples/rubstop.rb +399 -0
- data/samples/scan_pt_gnu_stack.rb +54 -0
- data/samples/scanpeexports.rb +62 -0
- data/samples/shellcode-c.rb +40 -0
- data/samples/shellcode-dynlink.rb +146 -0
- data/samples/source.asm +34 -0
- data/samples/struct_offset.rb +47 -0
- data/samples/testpe.rb +32 -0
- data/samples/testraw.rb +45 -0
- data/samples/win32genloader.rb +132 -0
- data/samples/win32hooker-advanced.rb +169 -0
- data/samples/win32hooker.rb +96 -0
- data/samples/win32livedasm.rb +33 -0
- data/samples/win32remotescan.rb +133 -0
- data/samples/wintrace.rb +92 -0
- data/tests/all.rb +8 -0
- data/tests/dasm.rb +39 -0
- data/tests/dynldr.rb +35 -0
- data/tests/encodeddata.rb +132 -0
- data/tests/ia32.rb +82 -0
- data/tests/mips.rb +116 -0
- data/tests/parse_c.rb +239 -0
- data/tests/preprocessor.rb +269 -0
- data/tests/x86_64.rb +62 -0
- metadata +255 -0
data/tests/x86_64.rb
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
# This file is part of Metasm, the Ruby assembly manipulation suite
|
2
|
+
# Copyright (C) 2006-2009 Yoann GUILLOT
|
3
|
+
#
|
4
|
+
# Licence is LGPL, see LICENCE in the top-level directory
|
5
|
+
|
6
|
+
|
7
|
+
require 'test/unit'
|
8
|
+
require 'metasm'
|
9
|
+
|
10
|
+
class TestX86_64 < Test::Unit::TestCase
|
11
|
+
@@cpu = Metasm::X86_64.new
|
12
|
+
def assemble(src, cpu=@@cpu)
|
13
|
+
Metasm::Shellcode.assemble(cpu, src).encode_string
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_user
|
17
|
+
assert_equal(Metasm::X86_64, Metasm::Ia32.new(64).class)
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_basic
|
21
|
+
assert_equal("\x90", assemble("nop"))
|
22
|
+
assert_equal("\x50", assemble("push rax"))
|
23
|
+
assert_equal("\x41\x50", assemble("push r8"))
|
24
|
+
assert_equal("\x6a\x02", assemble("push 2"))
|
25
|
+
assert_equal("\x68\x8e\0\0\0", assemble("push 142"))
|
26
|
+
assert_equal("\x48\xbb\xef\xcd\xab\x89\x67\x45\x23\x01", assemble("mov rbx, 0123456789abcdefh"))
|
27
|
+
assert_equal("\x8d\x05\x0c\0\0\0", assemble("lea eax, [rip+12]"))
|
28
|
+
assert_equal("\x8d\x04\x25\x0c\0\0\0", assemble("lea eax, [12]"))
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_err
|
32
|
+
assert_raise(Metasm::ParseError) { assemble("add eax") }
|
33
|
+
assert_raise(Metasm::ParseError) { assemble("add add, ebx") }
|
34
|
+
assert_raise(Metasm::ParseError) { assemble("add 42, ebx") }
|
35
|
+
assert_raise(Metasm::ParseError) { assemble("add [bx]") }
|
36
|
+
assert_raise(Metasm::ParseError) { assemble("add [eip+4*eax]") }
|
37
|
+
assert_raise(Metasm::ParseError) { assemble("add ah, r8b") }
|
38
|
+
end
|
39
|
+
|
40
|
+
def disassemble(bin, cpu=@@cpu)
|
41
|
+
Metasm::Shellcode.disassemble(cpu, bin)
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_dasm
|
45
|
+
d = disassemble("\x90")
|
46
|
+
assert_equal(Metasm::DecodedInstruction, d.decoded[0].class)
|
47
|
+
assert_equal('nop', d.decoded[0].opcode.name)
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_rex
|
51
|
+
assert_equal("\xfe\xc0", assemble("inc al"))
|
52
|
+
assert_equal("\xfe\xc4", assemble("inc ah"))
|
53
|
+
assert_equal("\x40\xfe\xc4", assemble("inc spl"))
|
54
|
+
assert_equal("\x41\xfe\xc4", assemble("inc r12b"))
|
55
|
+
op = lambda { |s| i = disassemble(s).decoded[0].instruction ; i.to_s ; i.args.last.to_s }
|
56
|
+
assert_equal('al', op["\xfe\xc0"])
|
57
|
+
assert_equal('ah', op["\xfe\xc4"])
|
58
|
+
assert_equal('spl', op["\x40\xfe\xc4"])
|
59
|
+
assert_equal('r12b', op["\x41\xfe\xc4"])
|
60
|
+
assert_equal('[rip-6+12h]', op["\x8d\x05\x0c\0\0\0"])
|
61
|
+
end
|
62
|
+
end
|
metadata
ADDED
@@ -0,0 +1,255 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: metasm
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 23
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
version: 1.0.0
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Yoann Guillot
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2011-04-26 00:00:00 Z
|
19
|
+
dependencies: []
|
20
|
+
|
21
|
+
description: Metasm is a cross-architecture assembler, disassembler, compiler, linker and debugger in pure Ruby with no dependencies.
|
22
|
+
email: yoann@ofjj.net
|
23
|
+
executables: []
|
24
|
+
|
25
|
+
extensions: []
|
26
|
+
|
27
|
+
extra_rdoc_files: []
|
28
|
+
|
29
|
+
files:
|
30
|
+
- BUGS
|
31
|
+
- CREDITS
|
32
|
+
- README
|
33
|
+
- TODO
|
34
|
+
- tests/parse_c.rb
|
35
|
+
- tests/dynldr.rb
|
36
|
+
- tests/encodeddata.rb
|
37
|
+
- tests/mips.rb
|
38
|
+
- tests/x86_64.rb
|
39
|
+
- tests/all.rb
|
40
|
+
- tests/preprocessor.rb
|
41
|
+
- tests/ia32.rb
|
42
|
+
- tests/dasm.rb
|
43
|
+
- misc/objdiff.rb
|
44
|
+
- misc/pdfparse.rb
|
45
|
+
- misc/ppc_pdf2oplist.rb
|
46
|
+
- misc/objscan.rb
|
47
|
+
- misc/tcp_proxy_hex.rb
|
48
|
+
- misc/hexdump.rb
|
49
|
+
- misc/bottleneck.rb
|
50
|
+
- misc/cheader-findpppath.rb
|
51
|
+
- misc/hexdiff.rb
|
52
|
+
- misc/metasm-all.rb
|
53
|
+
- misc/txt2html.rb
|
54
|
+
- doc/const_missing.txt
|
55
|
+
- doc/index.txt
|
56
|
+
- doc/code_organisation.txt
|
57
|
+
- doc/feature_list.txt
|
58
|
+
- doc/style.css
|
59
|
+
- doc/use_cases.txt
|
60
|
+
- doc/core_classes.txt
|
61
|
+
- doc/install_notes.txt
|
62
|
+
- samples/source.asm
|
63
|
+
- samples/win32livedasm.rb
|
64
|
+
- samples/machoencode.rb
|
65
|
+
- samples/hotfix_gtk_dbg.rb
|
66
|
+
- samples/dbg-apihook.rb
|
67
|
+
- samples/rubstop.rb
|
68
|
+
- samples/scan_pt_gnu_stack.rb
|
69
|
+
- samples/pe_listexports.rb
|
70
|
+
- samples/compilation-steps.rb
|
71
|
+
- samples/testraw.rb
|
72
|
+
- samples/bindiff.rb
|
73
|
+
- samples/factorize-headers.rb
|
74
|
+
- samples/pe-ia32-cpuid.rb
|
75
|
+
- samples/a.out.rb
|
76
|
+
- samples/shellcode-dynlink.rb
|
77
|
+
- samples/pe-testrelocs.rb
|
78
|
+
- samples/exeencode.rb
|
79
|
+
- samples/lindebug.rb
|
80
|
+
- samples/elfencode.rb
|
81
|
+
- samples/dynamic_ruby.rb
|
82
|
+
- samples/dump_upx.rb
|
83
|
+
- samples/cparser_makestackoffset.rb
|
84
|
+
- samples/disassemble.rb
|
85
|
+
- samples/win32genloader.rb
|
86
|
+
- samples/pe-mips.rb
|
87
|
+
- samples/disassemble-gui.rb
|
88
|
+
- samples/linux_injectsyscall.rb
|
89
|
+
- samples/peldr.rb
|
90
|
+
- samples/r0trace.rb
|
91
|
+
- samples/elf_list_needed.rb
|
92
|
+
- samples/dasmnavig.rb
|
93
|
+
- samples/win32hooker.rb
|
94
|
+
- samples/peencode.rb
|
95
|
+
- samples/win32hooker-advanced.rb
|
96
|
+
- samples/factorize-headers-elfimports.rb
|
97
|
+
- samples/win32remotescan.rb
|
98
|
+
- samples/struct_offset.rb
|
99
|
+
- samples/wintrace.rb
|
100
|
+
- samples/pe-hook.rb
|
101
|
+
- samples/metasm-shell.rb
|
102
|
+
- samples/pe-shutdown.rb
|
103
|
+
- samples/dasm-backtrack.rb
|
104
|
+
- samples/testpe.rb
|
105
|
+
- samples/generate_libsigs.rb
|
106
|
+
- samples/install_win_env.rb
|
107
|
+
- samples/pe-testrsrc.rb
|
108
|
+
- samples/preprocess-flatten.rb
|
109
|
+
- samples/gdbclient.rb
|
110
|
+
- samples/dbghelp.rb
|
111
|
+
- samples/scanpeexports.rb
|
112
|
+
- samples/factorize-headers-peimports.rb
|
113
|
+
- samples/elf_listexports.rb
|
114
|
+
- samples/shellcode-c.rb
|
115
|
+
- samples/asmsyntax.rb
|
116
|
+
- lib/metasm.rb
|
117
|
+
- lib/metasm/x86_64/decode.rb
|
118
|
+
- lib/metasm/x86_64/main.rb
|
119
|
+
- lib/metasm/x86_64/debug.rb
|
120
|
+
- lib/metasm/x86_64/parse.rb
|
121
|
+
- lib/metasm/x86_64/opcodes.rb
|
122
|
+
- lib/metasm/x86_64/encode.rb
|
123
|
+
- lib/metasm/x86_64/compile_c.rb
|
124
|
+
- lib/metasm/decode.rb
|
125
|
+
- lib/metasm/pic16c/decode.rb
|
126
|
+
- lib/metasm/pic16c/main.rb
|
127
|
+
- lib/metasm/pic16c/opcodes.rb
|
128
|
+
- lib/metasm/main.rb
|
129
|
+
- lib/metasm/sh4/decode.rb
|
130
|
+
- lib/metasm/sh4/main.rb
|
131
|
+
- lib/metasm/sh4/opcodes.rb
|
132
|
+
- lib/metasm/parse_c.rb
|
133
|
+
- lib/metasm/arm.rb
|
134
|
+
- lib/metasm/os/main.rb
|
135
|
+
- lib/metasm/os/gnu_exports.rb
|
136
|
+
- lib/metasm/os/windows_exports.rb
|
137
|
+
- lib/metasm/os/linux.rb
|
138
|
+
- lib/metasm/os/remote.rb
|
139
|
+
- lib/metasm/os/windows.rb
|
140
|
+
- lib/metasm/exe_format/main.rb
|
141
|
+
- lib/metasm/exe_format/dol.rb
|
142
|
+
- lib/metasm/exe_format/elf_encode.rb
|
143
|
+
- lib/metasm/exe_format/elf_decode.rb
|
144
|
+
- lib/metasm/exe_format/shellcode.rb
|
145
|
+
- lib/metasm/exe_format/mz.rb
|
146
|
+
- lib/metasm/exe_format/coff_encode.rb
|
147
|
+
- lib/metasm/exe_format/pe.rb
|
148
|
+
- lib/metasm/exe_format/macho.rb
|
149
|
+
- lib/metasm/exe_format/dex.rb
|
150
|
+
- lib/metasm/exe_format/coff.rb
|
151
|
+
- lib/metasm/exe_format/bflt.rb
|
152
|
+
- lib/metasm/exe_format/autoexe.rb
|
153
|
+
- lib/metasm/exe_format/serialstruct.rb
|
154
|
+
- lib/metasm/exe_format/xcoff.rb
|
155
|
+
- lib/metasm/exe_format/a_out.rb
|
156
|
+
- lib/metasm/exe_format/coff_decode.rb
|
157
|
+
- lib/metasm/exe_format/nds.rb
|
158
|
+
- lib/metasm/exe_format/elf.rb
|
159
|
+
- lib/metasm/parse.rb
|
160
|
+
- lib/metasm/dynldr.rb
|
161
|
+
- lib/metasm/ppc/decode.rb
|
162
|
+
- lib/metasm/ppc/main.rb
|
163
|
+
- lib/metasm/ppc/parse.rb
|
164
|
+
- lib/metasm/ppc/opcodes.rb
|
165
|
+
- lib/metasm/ppc/decompile.rb
|
166
|
+
- lib/metasm/ppc/encode.rb
|
167
|
+
- lib/metasm/disassemble.rb
|
168
|
+
- lib/metasm/gui/dasm_main.rb
|
169
|
+
- lib/metasm/gui/debug.rb
|
170
|
+
- lib/metasm/gui/dasm_hex.rb
|
171
|
+
- lib/metasm/gui/dasm_opcodes.rb
|
172
|
+
- lib/metasm/gui/dasm_graph.rb
|
173
|
+
- lib/metasm/gui/qt.rb
|
174
|
+
- lib/metasm/gui/dasm_funcgraph.rb
|
175
|
+
- lib/metasm/gui/x11.rb
|
176
|
+
- lib/metasm/gui/dasm_coverage.rb
|
177
|
+
- lib/metasm/gui/cstruct.rb
|
178
|
+
- lib/metasm/gui/dasm_listing.rb
|
179
|
+
- lib/metasm/gui/win32.rb
|
180
|
+
- lib/metasm/gui/dasm_decomp.rb
|
181
|
+
- lib/metasm/gui/gtk.rb
|
182
|
+
- lib/metasm/mips.rb
|
183
|
+
- lib/metasm/ia32/decode.rb
|
184
|
+
- lib/metasm/ia32/main.rb
|
185
|
+
- lib/metasm/ia32/debug.rb
|
186
|
+
- lib/metasm/ia32/parse.rb
|
187
|
+
- lib/metasm/ia32/opcodes.rb
|
188
|
+
- lib/metasm/ia32/decompile.rb
|
189
|
+
- lib/metasm/ia32/encode.rb
|
190
|
+
- lib/metasm/ia32/render.rb
|
191
|
+
- lib/metasm/ia32/compile_c.rb
|
192
|
+
- lib/metasm/x86_64.rb
|
193
|
+
- lib/metasm/disassemble_api.rb
|
194
|
+
- lib/metasm/gui.rb
|
195
|
+
- lib/metasm/decompile.rb
|
196
|
+
- lib/metasm/preprocessor.rb
|
197
|
+
- lib/metasm/ppc.rb
|
198
|
+
- lib/metasm/encode.rb
|
199
|
+
- lib/metasm/ia32.rb
|
200
|
+
- lib/metasm/mips/decode.rb
|
201
|
+
- lib/metasm/mips/main.rb
|
202
|
+
- lib/metasm/mips/parse.rb
|
203
|
+
- lib/metasm/mips/opcodes.rb
|
204
|
+
- lib/metasm/mips/encode.rb
|
205
|
+
- lib/metasm/mips/render.rb
|
206
|
+
- lib/metasm/mips/compile_c.rb
|
207
|
+
- lib/metasm/dalvik/decode.rb
|
208
|
+
- lib/metasm/dalvik/main.rb
|
209
|
+
- lib/metasm/dalvik/opcodes.rb
|
210
|
+
- lib/metasm/render.rb
|
211
|
+
- lib/metasm/compile_c.rb
|
212
|
+
- lib/metasm/dalvik.rb
|
213
|
+
- lib/metasm/sh4.rb
|
214
|
+
- lib/metasm/arm/decode.rb
|
215
|
+
- lib/metasm/arm/main.rb
|
216
|
+
- lib/metasm/arm/debug.rb
|
217
|
+
- lib/metasm/arm/parse.rb
|
218
|
+
- lib/metasm/arm/opcodes.rb
|
219
|
+
- lib/metasm/arm/encode.rb
|
220
|
+
- lib/metasm/arm/render.rb
|
221
|
+
homepage: http://metasm.cr0.org
|
222
|
+
licenses:
|
223
|
+
- GPL-2
|
224
|
+
post_install_message:
|
225
|
+
rdoc_options: []
|
226
|
+
|
227
|
+
require_paths:
|
228
|
+
- lib
|
229
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
230
|
+
none: false
|
231
|
+
requirements:
|
232
|
+
- - ">="
|
233
|
+
- !ruby/object:Gem::Version
|
234
|
+
hash: 3
|
235
|
+
segments:
|
236
|
+
- 0
|
237
|
+
version: "0"
|
238
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
239
|
+
none: false
|
240
|
+
requirements:
|
241
|
+
- - ">="
|
242
|
+
- !ruby/object:Gem::Version
|
243
|
+
hash: 3
|
244
|
+
segments:
|
245
|
+
- 0
|
246
|
+
version: "0"
|
247
|
+
requirements: []
|
248
|
+
|
249
|
+
rubyforge_project:
|
250
|
+
rubygems_version: 1.7.2
|
251
|
+
signing_key:
|
252
|
+
specification_version: 3
|
253
|
+
summary: Metasm is a cross-architecture assembler, disassembler, compiler, linker and debugger in pure Ruby with no dependencies.
|
254
|
+
test_files: []
|
255
|
+
|