metasm 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile +3 -3
- data/Rakefile +1 -1
- data/cortex.yaml +17 -0
- data/metasm/cpu/arm64/decode.rb +87 -11
- data/metasm/cpu/arm64/decompile.rb +142 -0
- data/metasm/cpu/arm64/opcodes.rb +53 -23
- data/metasm/cpu/arm64.rb +1 -0
- data/metasm/cpu/dwarf/debug.rb +39 -0
- data/metasm/cpu/dwarf/decode.rb +124 -0
- data/metasm/cpu/dwarf/decompile.rb +212 -0
- data/metasm/cpu/dwarf/encode.rb +49 -0
- data/metasm/cpu/dwarf/main.rb +37 -0
- data/metasm/cpu/dwarf/opcodes.rb +107 -0
- data/metasm/cpu/dwarf.rb +11 -0
- data/metasm/cpu/ia32/debug.rb +8 -0
- data/metasm/cpu/ia32/decode.rb +25 -1
- data/metasm/cpu/ia32/decompile.rb +205 -342
- data/metasm/cpu/mips/decode.rb +1 -1
- data/metasm/cpu/ppc/decode.rb +1 -1
- data/metasm/cpu/sh4/decode.rb +1 -1
- data/metasm/cpu/x86_64/decompile.rb +68 -0
- data/metasm/cpu/x86_64.rb +1 -0
- data/metasm/decode.rb +14 -0
- data/metasm/decompile.rb +51 -27
- data/metasm/disassemble.rb +24 -15
- data/metasm/dynldr.rb +23 -4
- data/metasm/encode.rb +11 -0
- data/metasm/exe_format/coff_encode.rb +6 -7
- data/metasm/exe_format/elf.rb +60 -2
- data/metasm/exe_format/elf_decode.rb +201 -6
- data/metasm/exe_format/shellcode.rb +39 -0
- data/metasm/gui/dasm_decomp.rb +1 -0
- data/metasm/os/emulator.rb +7 -0
- data/metasm/parse_c.rb +1 -1
- data/metasm.gemspec +1 -2
- data/metasm.rb +1 -1
- data/samples/disassemble-gui.rb +27 -11
- data/samples/disassemble.rb +9 -12
- data/samples/emudbg.rb +1 -1
- data/samples/factorize-headers-elfimports.rb +4 -1
- data/samples/lindebug.rb +16 -2
- data/tests/shellcode.rb +111 -0
- metadata +19 -107
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -3
- metadata.gz.sig +0 -2
data/tests/shellcode.rb
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
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 TestShellcode < Test::Unit::TestCase
|
|
11
|
+
@@cpu = Metasm::Ia32.new
|
|
12
|
+
|
|
13
|
+
def assert_equal(a, b) super(b, a) end
|
|
14
|
+
|
|
15
|
+
def bin(s)
|
|
16
|
+
if s.respond_to?(:force_encoding)
|
|
17
|
+
s.force_encoding('BINARY')
|
|
18
|
+
else
|
|
19
|
+
s
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def assemble(src)
|
|
24
|
+
Metasm::Shellcode.assemble(@@cpu, src).encode_string
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# ---- define_data ----
|
|
28
|
+
|
|
29
|
+
def test_define_data_basic
|
|
30
|
+
assert_equal(Metasm::Shellcode.define_data("ABCD".b), 'db 0x41, 0x42, 0x43, 0x44')
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def test_define_data_empty
|
|
34
|
+
assert_equal(Metasm::Shellcode.define_data("".b), '')
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def test_define_data_nil
|
|
38
|
+
assert_equal(Metasm::Shellcode.define_data(nil), '')
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def test_define_data_full_range
|
|
42
|
+
assert_equal(Metasm::Shellcode.define_data("\x00\x01\x9f\xa0\xff".b),
|
|
43
|
+
'db 0x00, 0x01, 0x9f, 0xa0, 0xff')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def test_define_data_roundtrip_printable
|
|
47
|
+
src = Metasm::Shellcode.define_data("ABCD".b)
|
|
48
|
+
assert_equal(assemble(src), bin("ABCD"))
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def test_define_data_roundtrip_full_range
|
|
52
|
+
bytes = (0..255).map(&:chr).join.b
|
|
53
|
+
src = Metasm::Shellcode.define_data(bytes)
|
|
54
|
+
assert_equal(assemble(src), bin(bytes))
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# ---- define_cstring ----
|
|
58
|
+
|
|
59
|
+
def test_define_cstring_basic
|
|
60
|
+
assert_equal(Metasm::Shellcode.define_cstring("ABCD".b), 'db "ABCD", 0')
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def test_define_cstring_empty
|
|
64
|
+
assert_equal(Metasm::Shellcode.define_cstring("".b), 'db 0')
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def test_define_cstring_nil
|
|
68
|
+
assert_equal(Metasm::Shellcode.define_cstring(nil), 'db 0')
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def test_define_cstring_escape_quote
|
|
72
|
+
assert_equal(Metasm::Shellcode.define_cstring("a\"b".b), 'db "a\"b", 0')
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def test_define_cstring_escape_backslash
|
|
76
|
+
# input: one backslash; expected output: backslash-backslash inside string literal
|
|
77
|
+
assert_equal(Metasm::Shellcode.define_cstring("a\\b".b), 'db "a\\\\b", 0')
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
def test_define_cstring_mixed_printable_and_binary
|
|
81
|
+
assert_equal(Metasm::Shellcode.define_cstring("AB\x05CD".b),
|
|
82
|
+
'db "AB", 0x05, "CD", 0')
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def test_define_cstring_single_high_byte
|
|
86
|
+
assert_equal(Metasm::Shellcode.define_cstring("\xff".b), 'db 0xff, 0')
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
def test_define_cstring_roundtrip_printable
|
|
90
|
+
src = Metasm::Shellcode.define_cstring("ABCD".b)
|
|
91
|
+
assert_equal(assemble(src), bin("ABCD\x00"))
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def test_define_cstring_roundtrip_with_binary
|
|
95
|
+
input = "AB\x05CD".b
|
|
96
|
+
src = Metasm::Shellcode.define_cstring(input)
|
|
97
|
+
assert_equal(assemble(src), bin(input + "\x00"))
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def test_define_cstring_roundtrip_escapes
|
|
101
|
+
input = "a\"b\\c".b
|
|
102
|
+
src = Metasm::Shellcode.define_cstring(input)
|
|
103
|
+
assert_equal(assemble(src), bin(input + "\x00"))
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
def test_define_cstring_roundtrip_high_byte
|
|
107
|
+
input = "\xff".b
|
|
108
|
+
src = Metasm::Shellcode.define_cstring(input)
|
|
109
|
+
assert_equal(assemble(src), bin(input + "\x00"))
|
|
110
|
+
end
|
|
111
|
+
end
|
metadata
CHANGED
|
@@ -1,114 +1,15 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: metasm
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Yoann Guillot
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
|
-
cert_chain:
|
|
11
|
-
-
|
|
12
|
-
-----BEGIN CERTIFICATE-----
|
|
13
|
-
MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
|
|
14
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
15
|
-
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
|
16
|
-
b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
|
|
17
|
-
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
|
18
|
-
cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
|
|
19
|
-
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
|
|
20
|
-
JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
|
|
21
|
-
mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
|
|
22
|
-
wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
|
|
23
|
-
VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
|
|
24
|
-
AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
|
|
25
|
-
AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
|
|
26
|
-
BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
|
|
27
|
-
pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
|
|
28
|
-
dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
|
|
29
|
-
fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
|
|
30
|
-
NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
|
|
31
|
-
H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
|
|
32
|
-
+o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
|
|
33
|
-
-----END CERTIFICATE-----
|
|
34
|
-
- |
|
|
35
|
-
-----BEGIN CERTIFICATE-----
|
|
36
|
-
MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl
|
|
37
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
38
|
-
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
|
39
|
-
b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG
|
|
40
|
-
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
|
41
|
-
cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT
|
|
42
|
-
aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O
|
|
43
|
-
Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq
|
|
44
|
-
8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp
|
|
45
|
-
wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p
|
|
46
|
-
fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3
|
|
47
|
-
jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye
|
|
48
|
-
n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
|
|
49
|
-
HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr
|
|
50
|
-
MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH
|
|
51
|
-
MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ
|
|
52
|
-
RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj
|
|
53
|
-
ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6
|
|
54
|
-
Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww
|
|
55
|
-
TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
|
|
56
|
-
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq
|
|
57
|
-
CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP
|
|
58
|
-
MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX
|
|
59
|
-
fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf
|
|
60
|
-
RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al
|
|
61
|
-
EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+
|
|
62
|
-
L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8
|
|
63
|
-
B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv
|
|
64
|
-
-----END CERTIFICATE-----
|
|
65
|
-
- |
|
|
66
|
-
-----BEGIN CERTIFICATE-----
|
|
67
|
-
MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
|
|
68
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
69
|
-
d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
|
|
70
|
-
SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
|
|
71
|
-
MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
|
|
72
|
-
BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
|
|
73
|
-
IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
|
|
74
|
-
4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
|
|
75
|
-
WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
|
|
76
|
-
gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
|
|
77
|
-
9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
|
|
78
|
-
yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
|
|
79
|
-
r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
|
|
80
|
-
dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
|
|
81
|
-
B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
|
|
82
|
-
L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
|
|
83
|
-
L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
|
|
84
|
-
MEwGA1UdIARFMEMwNwYJYIZIAYb9bAMBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
|
|
85
|
-
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYw
|
|
86
|
-
JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
|
|
87
|
-
AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
|
|
88
|
-
ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
|
|
89
|
-
BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
|
|
90
|
-
37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
|
|
91
|
-
YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
|
|
92
|
-
dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
|
|
93
|
-
EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
|
|
94
|
-
9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
|
|
95
|
-
-----END CERTIFICATE-----
|
|
96
|
-
date: 2021-07-02 00:00:00.000000000 Z
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2026-05-20 00:00:00.000000000 Z
|
|
97
12
|
dependencies:
|
|
98
|
-
- !ruby/object:Gem::Dependency
|
|
99
|
-
name: bundler
|
|
100
|
-
requirement: !ruby/object:Gem::Requirement
|
|
101
|
-
requirements:
|
|
102
|
-
- - "~>"
|
|
103
|
-
- !ruby/object:Gem::Version
|
|
104
|
-
version: '1.7'
|
|
105
|
-
type: :development
|
|
106
|
-
prerelease: false
|
|
107
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
108
|
-
requirements:
|
|
109
|
-
- - "~>"
|
|
110
|
-
- !ruby/object:Gem::Version
|
|
111
|
-
version: '1.7'
|
|
112
13
|
- !ruby/object:Gem::Dependency
|
|
113
14
|
name: rake
|
|
114
15
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -154,6 +55,7 @@ files:
|
|
|
154
55
|
- README
|
|
155
56
|
- Rakefile
|
|
156
57
|
- TODO
|
|
58
|
+
- cortex.yaml
|
|
157
59
|
- doc/code_organisation.txt
|
|
158
60
|
- doc/const_missing.txt
|
|
159
61
|
- doc/core/DynLdr.txt
|
|
@@ -191,6 +93,7 @@ files:
|
|
|
191
93
|
- metasm/cpu/arm64.rb
|
|
192
94
|
- metasm/cpu/arm64/debug.rb
|
|
193
95
|
- metasm/cpu/arm64/decode.rb
|
|
96
|
+
- metasm/cpu/arm64/decompile.rb
|
|
194
97
|
- metasm/cpu/arm64/encode.rb
|
|
195
98
|
- metasm/cpu/arm64/main.rb
|
|
196
99
|
- metasm/cpu/arm64/opcodes.rb
|
|
@@ -210,6 +113,13 @@ files:
|
|
|
210
113
|
- metasm/cpu/dalvik/decode.rb
|
|
211
114
|
- metasm/cpu/dalvik/main.rb
|
|
212
115
|
- metasm/cpu/dalvik/opcodes.rb
|
|
116
|
+
- metasm/cpu/dwarf.rb
|
|
117
|
+
- metasm/cpu/dwarf/debug.rb
|
|
118
|
+
- metasm/cpu/dwarf/decode.rb
|
|
119
|
+
- metasm/cpu/dwarf/decompile.rb
|
|
120
|
+
- metasm/cpu/dwarf/encode.rb
|
|
121
|
+
- metasm/cpu/dwarf/main.rb
|
|
122
|
+
- metasm/cpu/dwarf/opcodes.rb
|
|
213
123
|
- metasm/cpu/ebpf.rb
|
|
214
124
|
- metasm/cpu/ebpf/debug.rb
|
|
215
125
|
- metasm/cpu/ebpf/decode.rb
|
|
@@ -283,6 +193,7 @@ files:
|
|
|
283
193
|
- metasm/cpu/x86_64/compile_c.rb
|
|
284
194
|
- metasm/cpu/x86_64/debug.rb
|
|
285
195
|
- metasm/cpu/x86_64/decode.rb
|
|
196
|
+
- metasm/cpu/x86_64/decompile.rb
|
|
286
197
|
- metasm/cpu/x86_64/encode.rb
|
|
287
198
|
- metasm/cpu/x86_64/main.rb
|
|
288
199
|
- metasm/cpu/x86_64/opcodes.rb
|
|
@@ -460,12 +371,13 @@ files:
|
|
|
460
371
|
- tests/mips.rb
|
|
461
372
|
- tests/parse_c.rb
|
|
462
373
|
- tests/preprocessor.rb
|
|
374
|
+
- tests/shellcode.rb
|
|
463
375
|
- tests/x86_64.rb
|
|
464
376
|
homepage: http://metasm.cr0.org
|
|
465
377
|
licenses:
|
|
466
378
|
- LGPL-2.1
|
|
467
379
|
metadata: {}
|
|
468
|
-
post_install_message:
|
|
380
|
+
post_install_message:
|
|
469
381
|
rdoc_options: []
|
|
470
382
|
require_paths:
|
|
471
383
|
- "."
|
|
@@ -480,9 +392,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
480
392
|
- !ruby/object:Gem::Version
|
|
481
393
|
version: '0'
|
|
482
394
|
requirements: []
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
signing_key:
|
|
395
|
+
rubygems_version: 3.4.19
|
|
396
|
+
signing_key:
|
|
486
397
|
specification_version: 4
|
|
487
398
|
summary: Metasm is a cross-architecture assembler, disassembler, linker, and debugger.
|
|
488
399
|
test_files:
|
|
@@ -498,4 +409,5 @@ test_files:
|
|
|
498
409
|
- tests/mips.rb
|
|
499
410
|
- tests/parse_c.rb
|
|
500
411
|
- tests/preprocessor.rb
|
|
412
|
+
- tests/shellcode.rb
|
|
501
413
|
- tests/x86_64.rb
|
checksums.yaml.gz.sig
DELETED
|
Binary file
|
data.tar.gz.sig
DELETED
metadata.gz.sig
DELETED