pedump 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.github/FUNDING.yml +2 -0
  3. data/.github/dependabot.yml +8 -0
  4. data/CODE_OF_CONDUCT.md +76 -0
  5. data/Gemfile +11 -16
  6. data/Gemfile.lock +73 -27
  7. data/README.md +15 -6
  8. data/Rakefile +5 -44
  9. data/VERSION +1 -1
  10. data/lib/pedump.rb +101 -29
  11. data/lib/pedump/cli.rb +29 -18
  12. data/lib/pedump/loader.rb +1 -1
  13. data/lib/pedump/loader/minidump.rb +195 -31
  14. data/lib/pedump/ne.rb +1 -1
  15. data/lib/pedump/pe.rb +63 -54
  16. data/lib/pedump/te.rb +51 -0
  17. data/lib/pedump/unpacker/aspack.rb +1 -1
  18. data/lib/pedump/version.rb +2 -5
  19. data/misc/aspack/aspack_unlzx.c +5 -3
  20. data/pedump.gemspec +47 -74
  21. metadata +50 -101
  22. data/.document +0 -5
  23. data/.rspec +0 -1
  24. data/.travis.yml +0 -4
  25. data/samples/bad/68.exe +0 -0
  26. data/samples/bad/data_dir_15_entries.exe +0 -0
  27. data/spec/65535sects_spec.rb +0 -8
  28. data/spec/bad_imports_spec.rb +0 -20
  29. data/spec/bad_samples_spec.rb +0 -13
  30. data/spec/composite_io_spec.rb +0 -122
  31. data/spec/data/calc.exe_sections.yml +0 -49
  32. data/spec/data/data_dir_15_entries.exe_sections.yml +0 -95
  33. data/spec/dllord_spec.rb +0 -21
  34. data/spec/foldedhdr_spec.rb +0 -28
  35. data/spec/imports_badterm_spec.rb +0 -52
  36. data/spec/imports_vterm_spec.rb +0 -52
  37. data/spec/loader/names_spec.rb +0 -24
  38. data/spec/loader/va_spec.rb +0 -44
  39. data/spec/manyimportsW7_spec.rb +0 -22
  40. data/spec/ne_spec.rb +0 -125
  41. data/spec/packer_spec.rb +0 -17
  42. data/spec/pe_spec.rb +0 -67
  43. data/spec/pedump_spec.rb +0 -19
  44. data/spec/resource_spec.rb +0 -13
  45. data/spec/sections_spec.rb +0 -11
  46. data/spec/sig_all_packers_spec.rb +0 -24
  47. data/spec/sig_spec.rb +0 -68
  48. data/spec/spec_helper.rb +0 -24
  49. data/spec/support/samples.rb +0 -24
  50. data/spec/unpackers/aspack_spec.rb +0 -69
  51. data/spec/unpackers/find_spec.rb +0 -21
  52. data/spec/virtsectblXP_spec.rb +0 -12
  53. data/tmp/.keep +0 -0
@@ -0,0 +1,51 @@
1
+ class PEdump
2
+ # https://www.intel.com/content/www/us/en/architecture-and-technology/unified-extensible-firmware-interface/efi-specifications-general-technology.html
3
+ # http://wiki.phoenix.com/wiki/index.php/EFI_TE_IMAGE_HEADER
4
+ # https://formats.kaitai.io/uefi_te/index.html
5
+ # http://ho.ax/tag/efi/
6
+
7
+ class EFI_TE_IMAGE_HEADER < IOStruct.new 'vvCCvVVQ',
8
+ :Signature,
9
+ :Machine,
10
+ :NumberOfSections,
11
+ :Subsystem,
12
+ :StrippedSize,
13
+ :AddressOfEntryPoint,
14
+ :BaseOfCode,
15
+ :ImageBase,
16
+ :DataDirectory # readed manually: EFI_IMAGE_DATA_DIRECTORY DataDirectory[2]
17
+
18
+ attr_accessor :sections
19
+
20
+ def self.read io, args = {}
21
+ super(io).tap do |te|
22
+ te.DataDirectory = 2.times.map do
23
+ EFI_IMAGE_DATA_DIRECTORY.read(io)
24
+ end
25
+ te.sections = PE.read_sections(io, te.NumberOfSections, args)
26
+ end
27
+ end
28
+ end
29
+ TE = EFI_TE_IMAGE_HEADER
30
+
31
+ EFI_IMAGE_DATA_DIRECTORY = IOStruct.new( "VV", :va, :size )
32
+ EFI_IMAGE_DATA_DIRECTORY::TYPES = %w'BASERELOC DEBUG'
33
+ EFI_IMAGE_DATA_DIRECTORY::TYPES.each_with_index do |type,idx|
34
+ EFI_IMAGE_DATA_DIRECTORY.const_set(type,idx)
35
+ end
36
+
37
+ def te f=@io
38
+ return @te if defined?(@te)
39
+ @te ||=
40
+ begin
41
+ te_offset = 0
42
+ f.seek te_offset
43
+ if f.read(2) == 'VZ'
44
+ f.seek te_offset
45
+ EFI_TE_IMAGE_HEADER.read f, :force => @force
46
+ else
47
+ nil
48
+ end
49
+ end
50
+ end
51
+ end
@@ -607,7 +607,7 @@ class PEdump::Unpacker::ASPack
607
607
  if m = @data.match(RELOCS_RE)
608
608
  a = m[1..-1].map{|x| x.unpack('V').first }
609
609
  else
610
- logger.error "[!] cannot find imports"
610
+ logger.error "[!] cannot find relocs"
611
611
  raise
612
612
  return
613
613
  end
@@ -1,10 +1,7 @@
1
1
  class PEdump
2
2
  module Version
3
- MAJOR = 0
4
- MINOR = 5
5
- PATCH = 0
3
+ STRING = File.read(File.join(File.dirname(File.dirname(File.dirname(__FILE__))), 'VERSION')).strip
4
+ MAJOR, MINOR, PATCH = STRING.split('.').map(&:to_i)
6
5
  BUILD = nil
7
-
8
- STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
9
6
  end
10
7
  end
@@ -30,6 +30,7 @@ int unpack(BYTE*packed_data, size_t packed_size, size_t unpacked_size){
30
30
  LZX_CONTEXT LZX;
31
31
  BYTE* unpacked_data = NULL;
32
32
  size_t decoded_size;
33
+ int r;
33
34
 
34
35
  bzero(&LZX, sizeof(LZX));
35
36
 
@@ -38,8 +39,9 @@ int unpack(BYTE*packed_data, size_t packed_size, size_t unpacked_size){
38
39
  return(ERR_NO_MEM);
39
40
  }
40
41
 
41
- decoded_size = DecodeLZX(&LZX, packed_data, unpacked_data, packed_size, unpacked_size);
42
- if ( decoded_size < 0 || decoded_size < unpacked_size ) {
42
+ r = DecodeLZX(&LZX, packed_data, unpacked_data, packed_size, unpacked_size);
43
+ decoded_size = (size_t)r;
44
+ if ( r < 0 || decoded_size < unpacked_size ) {
43
45
  free(unpacked_data);
44
46
  fprintf(stderr,"ERR_UNPACK\n");
45
47
  return(ERR_UNPACK);
@@ -58,7 +60,7 @@ int main(int argc, char*argv[]){
58
60
  if(argc != 3){
59
61
  fprintf(stderr, "ASPack unLZX\n");
60
62
  fprintf(stderr, "usage: %s <packed_size> <unpacked_size>\n", argv[0]);
61
- fprintf(stderr, "(data is read from stdin and written to stdout)\n", argv[0]);
63
+ fprintf(stderr, "(data is read from stdin and written to stdout)\n");
62
64
  return 1;
63
65
  }
64
66
 
@@ -2,25 +2,27 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: pedump 0.6.0 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
- s.name = "pedump"
8
- s.version = "0.5.0"
8
+ s.name = "pedump".freeze
9
+ s.version = "0.6.0"
9
10
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Andrey \"Zed\" Zaikin"]
12
- s.date = "2013-04-20"
13
- s.description = "dump headers, sections, extract resources of win32 PE exe,dll,etc"
14
- s.email = "zed.0xff@gmail.com"
15
- s.executables = ["pedump"]
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib".freeze]
13
+ s.authors = ["Andrey \"Zed\" Zaikin".freeze]
14
+ s.date = "2020-07-27"
15
+ s.description = "dump headers, sections, extract resources of win32 PE exe,dll,etc".freeze
16
+ s.email = "zed.0xff@gmail.com".freeze
17
+ s.executables = ["pedump".freeze]
16
18
  s.extra_rdoc_files = [
17
19
  "LICENSE.txt",
18
20
  "README.md"
19
21
  ]
20
22
  s.files = [
21
- ".document",
22
- ".rspec",
23
- ".travis.yml",
23
+ ".github/FUNDING.yml",
24
+ ".github/dependabot.yml",
25
+ "CODE_OF_CONDUCT.md",
24
26
  "Gemfile",
25
27
  "Gemfile.lock",
26
28
  "LICENSE.txt",
@@ -50,6 +52,7 @@ Gem::Specification.new do |s|
50
52
  "lib/pedump/resources.rb",
51
53
  "lib/pedump/security.rb",
52
54
  "lib/pedump/sig_parser.rb",
55
+ "lib/pedump/te.rb",
53
56
  "lib/pedump/tls.rb",
54
57
  "lib/pedump/unpacker.rb",
55
58
  "lib/pedump/unpacker/aspack.rb",
@@ -61,77 +64,47 @@ Gem::Specification.new do |s|
61
64
  "misc/aspack/lzxdec.c",
62
65
  "misc/aspack/lzxdec.h",
63
66
  "misc/nedump.c",
64
- "pedump.gemspec",
65
- "samples/bad/68.exe",
66
- "samples/bad/data_dir_15_entries.exe",
67
- "spec/65535sects_spec.rb",
68
- "spec/bad_imports_spec.rb",
69
- "spec/bad_samples_spec.rb",
70
- "spec/composite_io_spec.rb",
71
- "spec/data/calc.exe_sections.yml",
72
- "spec/data/data_dir_15_entries.exe_sections.yml",
73
- "spec/dllord_spec.rb",
74
- "spec/foldedhdr_spec.rb",
75
- "spec/imports_badterm_spec.rb",
76
- "spec/imports_vterm_spec.rb",
77
- "spec/loader/names_spec.rb",
78
- "spec/loader/va_spec.rb",
79
- "spec/manyimportsW7_spec.rb",
80
- "spec/ne_spec.rb",
81
- "spec/packer_spec.rb",
82
- "spec/pe_spec.rb",
83
- "spec/pedump_spec.rb",
84
- "spec/resource_spec.rb",
85
- "spec/sections_spec.rb",
86
- "spec/sig_all_packers_spec.rb",
87
- "spec/sig_spec.rb",
88
- "spec/spec_helper.rb",
89
- "spec/support/samples.rb",
90
- "spec/unpackers/aspack_spec.rb",
91
- "spec/unpackers/find_spec.rb",
92
- "spec/virtsectblXP_spec.rb",
93
- "tmp/.keep"
67
+ "pedump.gemspec"
94
68
  ]
95
- s.homepage = "http://github.com/zed-0xff/pedump"
96
- s.licenses = ["MIT"]
97
- s.require_paths = ["lib"]
98
- s.rubygems_version = "1.8.24"
99
- s.summary = "dump win32 PE executable files with a pure ruby"
69
+ s.homepage = "http://github.com/zed-0xff/pedump".freeze
70
+ s.licenses = ["MIT".freeze]
71
+ s.rubygems_version = "2.7.10".freeze
72
+ s.summary = "dump win32 PE executable files with a pure ruby".freeze
100
73
 
101
74
  if s.respond_to? :specification_version then
102
- s.specification_version = 3
75
+ s.specification_version = 4
103
76
 
104
77
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
105
- s.add_runtime_dependency(%q<multipart-post>, ["~> 1.1.4"])
106
- s.add_runtime_dependency(%q<progressbar>, [">= 0"])
107
- s.add_runtime_dependency(%q<awesome_print>, [">= 0"])
108
- s.add_runtime_dependency(%q<iostruct>, [">= 0.0.4"])
109
- s.add_runtime_dependency(%q<zhexdump>, [">= 0.0.2"])
110
- s.add_development_dependency(%q<rspec>, [">= 0"])
111
- s.add_development_dependency(%q<bundler>, [">= 0"])
112
- s.add_development_dependency(%q<jeweler>, [">= 0"])
113
- s.add_development_dependency(%q<what_methods>, [">= 0"])
78
+ s.add_runtime_dependency(%q<rainbow>.freeze, [">= 0"])
79
+ s.add_runtime_dependency(%q<awesome_print>.freeze, [">= 0"])
80
+ s.add_runtime_dependency(%q<iostruct>.freeze, [">= 0.0.4"])
81
+ s.add_runtime_dependency(%q<multipart-post>.freeze, [">= 2.0.0"])
82
+ s.add_runtime_dependency(%q<zhexdump>.freeze, [">= 0.0.2"])
83
+ s.add_development_dependency(%q<rspec>.freeze, ["~> 3.9.0"])
84
+ s.add_development_dependency(%q<rspec-its>.freeze, ["~> 1.3.0"])
85
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 2.1.4"])
86
+ s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.3.9"])
114
87
  else
115
- s.add_dependency(%q<multipart-post>, ["~> 1.1.4"])
116
- s.add_dependency(%q<progressbar>, [">= 0"])
117
- s.add_dependency(%q<awesome_print>, [">= 0"])
118
- s.add_dependency(%q<iostruct>, [">= 0.0.4"])
119
- s.add_dependency(%q<zhexdump>, [">= 0.0.2"])
120
- s.add_dependency(%q<rspec>, [">= 0"])
121
- s.add_dependency(%q<bundler>, [">= 0"])
122
- s.add_dependency(%q<jeweler>, [">= 0"])
123
- s.add_dependency(%q<what_methods>, [">= 0"])
88
+ s.add_dependency(%q<rainbow>.freeze, [">= 0"])
89
+ s.add_dependency(%q<awesome_print>.freeze, [">= 0"])
90
+ s.add_dependency(%q<iostruct>.freeze, [">= 0.0.4"])
91
+ s.add_dependency(%q<multipart-post>.freeze, [">= 2.0.0"])
92
+ s.add_dependency(%q<zhexdump>.freeze, [">= 0.0.2"])
93
+ s.add_dependency(%q<rspec>.freeze, ["~> 3.9.0"])
94
+ s.add_dependency(%q<rspec-its>.freeze, ["~> 1.3.0"])
95
+ s.add_dependency(%q<bundler>.freeze, ["~> 2.1.4"])
96
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.3.9"])
124
97
  end
125
98
  else
126
- s.add_dependency(%q<multipart-post>, ["~> 1.1.4"])
127
- s.add_dependency(%q<progressbar>, [">= 0"])
128
- s.add_dependency(%q<awesome_print>, [">= 0"])
129
- s.add_dependency(%q<iostruct>, [">= 0.0.4"])
130
- s.add_dependency(%q<zhexdump>, [">= 0.0.2"])
131
- s.add_dependency(%q<rspec>, [">= 0"])
132
- s.add_dependency(%q<bundler>, [">= 0"])
133
- s.add_dependency(%q<jeweler>, [">= 0"])
134
- s.add_dependency(%q<what_methods>, [">= 0"])
99
+ s.add_dependency(%q<rainbow>.freeze, [">= 0"])
100
+ s.add_dependency(%q<awesome_print>.freeze, [">= 0"])
101
+ s.add_dependency(%q<iostruct>.freeze, [">= 0.0.4"])
102
+ s.add_dependency(%q<multipart-post>.freeze, [">= 2.0.0"])
103
+ s.add_dependency(%q<zhexdump>.freeze, [">= 0.0.2"])
104
+ s.add_dependency(%q<rspec>.freeze, ["~> 3.9.0"])
105
+ s.add_dependency(%q<rspec-its>.freeze, ["~> 1.3.0"])
106
+ s.add_dependency(%q<bundler>.freeze, ["~> 2.1.4"])
107
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.3.9"])
135
108
  end
136
109
  end
137
110
 
metadata CHANGED
@@ -1,160 +1,141 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pedump
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
5
- prerelease:
4
+ version: 0.6.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Andrey "Zed" Zaikin
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-20 00:00:00.000000000 Z
11
+ date: 2020-07-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: multipart-post
14
+ name: rainbow
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 1.1.4
19
+ version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: 1.1.4
26
+ version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
- name: progressbar
28
+ name: awesome_print
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
- name: awesome_print
42
+ name: iostruct
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
- version: '0'
47
+ version: 0.0.4
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
- version: '0'
54
+ version: 0.0.4
62
55
  - !ruby/object:Gem::Dependency
63
- name: iostruct
56
+ name: multipart-post
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
- version: 0.0.4
61
+ version: 2.0.0
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
- version: 0.0.4
68
+ version: 2.0.0
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: zhexdump
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: 0.0.2
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: 0.0.2
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: rspec
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - "~>"
100
88
  - !ruby/object:Gem::Version
101
- version: '0'
89
+ version: 3.9.0
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - "~>"
108
95
  - !ruby/object:Gem::Version
109
- version: '0'
96
+ version: 3.9.0
110
97
  - !ruby/object:Gem::Dependency
111
- name: bundler
98
+ name: rspec-its
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: '0'
103
+ version: 1.3.0
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - "~>"
124
109
  - !ruby/object:Gem::Version
125
- version: '0'
110
+ version: 1.3.0
126
111
  - !ruby/object:Gem::Dependency
127
- name: jeweler
112
+ name: bundler
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - "~>"
132
116
  - !ruby/object:Gem::Version
133
- version: '0'
117
+ version: 2.1.4
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - "~>"
140
123
  - !ruby/object:Gem::Version
141
- version: '0'
124
+ version: 2.1.4
142
125
  - !ruby/object:Gem::Dependency
143
- name: what_methods
126
+ name: jeweler
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ! '>='
129
+ - - "~>"
148
130
  - !ruby/object:Gem::Version
149
- version: '0'
131
+ version: 2.3.9
150
132
  type: :development
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ! '>='
136
+ - - "~>"
156
137
  - !ruby/object:Gem::Version
157
- version: '0'
138
+ version: 2.3.9
158
139
  description: dump headers, sections, extract resources of win32 PE exe,dll,etc
159
140
  email: zed.0xff@gmail.com
160
141
  executables:
@@ -164,9 +145,9 @@ extra_rdoc_files:
164
145
  - LICENSE.txt
165
146
  - README.md
166
147
  files:
167
- - .document
168
- - .rspec
169
- - .travis.yml
148
+ - ".github/FUNDING.yml"
149
+ - ".github/dependabot.yml"
150
+ - CODE_OF_CONDUCT.md
170
151
  - Gemfile
171
152
  - Gemfile.lock
172
153
  - LICENSE.txt
@@ -196,6 +177,7 @@ files:
196
177
  - lib/pedump/resources.rb
197
178
  - lib/pedump/security.rb
198
179
  - lib/pedump/sig_parser.rb
180
+ - lib/pedump/te.rb
199
181
  - lib/pedump/tls.rb
200
182
  - lib/pedump/unpacker.rb
201
183
  - lib/pedump/unpacker/aspack.rb
@@ -208,61 +190,28 @@ files:
208
190
  - misc/aspack/lzxdec.h
209
191
  - misc/nedump.c
210
192
  - pedump.gemspec
211
- - samples/bad/68.exe
212
- - samples/bad/data_dir_15_entries.exe
213
- - spec/65535sects_spec.rb
214
- - spec/bad_imports_spec.rb
215
- - spec/bad_samples_spec.rb
216
- - spec/composite_io_spec.rb
217
- - spec/data/calc.exe_sections.yml
218
- - spec/data/data_dir_15_entries.exe_sections.yml
219
- - spec/dllord_spec.rb
220
- - spec/foldedhdr_spec.rb
221
- - spec/imports_badterm_spec.rb
222
- - spec/imports_vterm_spec.rb
223
- - spec/loader/names_spec.rb
224
- - spec/loader/va_spec.rb
225
- - spec/manyimportsW7_spec.rb
226
- - spec/ne_spec.rb
227
- - spec/packer_spec.rb
228
- - spec/pe_spec.rb
229
- - spec/pedump_spec.rb
230
- - spec/resource_spec.rb
231
- - spec/sections_spec.rb
232
- - spec/sig_all_packers_spec.rb
233
- - spec/sig_spec.rb
234
- - spec/spec_helper.rb
235
- - spec/support/samples.rb
236
- - spec/unpackers/aspack_spec.rb
237
- - spec/unpackers/find_spec.rb
238
- - spec/virtsectblXP_spec.rb
239
- - tmp/.keep
240
193
  homepage: http://github.com/zed-0xff/pedump
241
194
  licenses:
242
195
  - MIT
196
+ metadata: {}
243
197
  post_install_message:
244
198
  rdoc_options: []
245
199
  require_paths:
246
200
  - lib
247
201
  required_ruby_version: !ruby/object:Gem::Requirement
248
- none: false
249
202
  requirements:
250
- - - ! '>='
203
+ - - ">="
251
204
  - !ruby/object:Gem::Version
252
205
  version: '0'
253
- segments:
254
- - 0
255
- hash: -1369606751108388991
256
206
  required_rubygems_version: !ruby/object:Gem::Requirement
257
- none: false
258
207
  requirements:
259
- - - ! '>='
208
+ - - ">="
260
209
  - !ruby/object:Gem::Version
261
210
  version: '0'
262
211
  requirements: []
263
212
  rubyforge_project:
264
- rubygems_version: 1.8.24
213
+ rubygems_version: 2.7.10
265
214
  signing_key:
266
- specification_version: 3
215
+ specification_version: 4
267
216
  summary: dump win32 PE executable files with a pure ruby
268
217
  test_files: []