@isopodlabs/binary_libs 1.1.0 → 1.2.0
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.
- package/README.md +133 -131
- package/dist/CompoundDocument.js +1 -0
- package/dist/CompoundDocument.js.map +1 -0
- package/dist/arch.js +25 -7
- package/dist/arch.js.map +1 -0
- package/dist/clr.js +2 -1
- package/dist/clr.js.map +1 -0
- package/dist/elf.js +1 -0
- package/dist/elf.js.map +1 -0
- package/dist/mach.d.ts +14 -25
- package/dist/mach.js +11 -8
- package/dist/mach.js.map +1 -0
- package/dist/pe.d.ts +35 -1
- package/dist/pe.js +71 -2
- package/dist/pe.js.map +1 -0
- package/package.json +45 -45
package/README.md
CHANGED
|
@@ -1,132 +1,134 @@
|
|
|
1
|
-
# Binary Libs
|
|
2
|
-
|
|
3
|
-
This package provides readers for various library formats, using the @isopodlabs/binary binary file loading library
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
1
|
+
# Binary Libs
|
|
2
|
+
|
|
3
|
+
This package provides readers for various library formats, using the @isopodlabs/binary binary file loading library
|
|
4
|
+
|
|
5
|
+
## ☕ Support My Work
|
|
6
|
+
If you use this package, consider [buying me a tea](https://coff.ee/adrianstephens) to support future updates!
|
|
7
|
+
|
|
8
|
+
## Supported File Types
|
|
9
|
+
|
|
10
|
+
### elf
|
|
11
|
+
ELF
|
|
12
|
+
```typescript
|
|
13
|
+
class ELFFile {
|
|
14
|
+
static check(data: Uint8Array): boolean;
|
|
15
|
+
segments: [string, Segment][];
|
|
16
|
+
sections: [string, Section][];
|
|
17
|
+
header: Header;
|
|
18
|
+
getSymbols(): [string, Symbol][];
|
|
19
|
+
getDynamicSymbols(): [string, Symbol][];
|
|
20
|
+
getSegmentByType(type: string): Segment | undefined;
|
|
21
|
+
getSectionByType(type: string): Section | undefined;
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### pe
|
|
26
|
+
Portable Executable
|
|
27
|
+
```typescript
|
|
28
|
+
class PE {
|
|
29
|
+
static check(data: Uint8Array): boolean;
|
|
30
|
+
header: Header;
|
|
31
|
+
opt?: OptHeader;
|
|
32
|
+
sections: Section[];
|
|
33
|
+
get directories(): {
|
|
34
|
+
[k: string]: any;
|
|
35
|
+
} | undefined;
|
|
36
|
+
FindSectionRVA(rva: number): Section | undefined;
|
|
37
|
+
FindSectionRaw(addr: number): Section | undefined;
|
|
38
|
+
GetDataRVA(rva: number, size?: number): binary.utils.MappedMemory | undefined;
|
|
39
|
+
GetDataRaw(addr: number, size: number): Uint8Array | undefined;
|
|
40
|
+
GetDataDir(dir: { VirtualAddress: number; Size: number; } & {}): binary.utils.MappedMemory | undefined;
|
|
41
|
+
ReadDirectory(name: string): any;
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### clr
|
|
46
|
+
Common Language Runtime (embedded in pe files)
|
|
47
|
+
```typescript
|
|
48
|
+
class CLR {
|
|
49
|
+
header: Header;
|
|
50
|
+
table_info: TableInfo;
|
|
51
|
+
heaps: Uint8Array[];
|
|
52
|
+
tables: Record<TABLE, Table>;
|
|
53
|
+
Resources?: Uint8Array;
|
|
54
|
+
getEntry(t: TABLE, i: number): any;
|
|
55
|
+
getTable(t: TABLE): any;
|
|
56
|
+
getResources(block: string): Record<string, any> | undefined;
|
|
57
|
+
getResource(block: string, name: string): any;
|
|
58
|
+
allResources(): any;
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
### mach
|
|
62
|
+
Apple libraries
|
|
63
|
+
```typescript
|
|
64
|
+
interface Segment {
|
|
65
|
+
data: binary.utils.MappedMemory | undefined;
|
|
66
|
+
segname: string;
|
|
67
|
+
vmaddr: number | bigint;
|
|
68
|
+
vmsize: number | bigint;
|
|
69
|
+
fileoff: number | bigint;
|
|
70
|
+
filesize: number | bigint;
|
|
71
|
+
maxprot: number;
|
|
72
|
+
initprot: number;
|
|
73
|
+
nsects: number;
|
|
74
|
+
flags: Record<string, bigint | boolean> | Record<string, number | boolean>;
|
|
75
|
+
sections: Record<string, any> | undefined;
|
|
76
|
+
};
|
|
77
|
+
class MachFile {
|
|
78
|
+
static check(data: Uint8Array): boolean;
|
|
79
|
+
header: Header;
|
|
80
|
+
commands: { cmd: CMD; data: any; }[];
|
|
81
|
+
constructor(data: Uint8Array, mem?: binary.utils.memory);
|
|
82
|
+
getCommand(cmd: CMD): any;
|
|
83
|
+
getSegment(name: string): Segment;
|
|
84
|
+
}
|
|
85
|
+
class FATMachFile {
|
|
86
|
+
archs: {
|
|
87
|
+
cputype: string;
|
|
88
|
+
cpusubtype: string | number;
|
|
89
|
+
offset: number;
|
|
90
|
+
size: number;
|
|
91
|
+
align: number;
|
|
92
|
+
contents: MachFile | undefined;
|
|
93
|
+
}[];
|
|
94
|
+
static check(data: Uint8Array): boolean;
|
|
95
|
+
constructor(data: Uint8Array, mem?: binary.utils.memory);
|
|
96
|
+
load(file: binary.stream_endian, mem?: binary.utils.memory): void;
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### arch
|
|
101
|
+
Archive files for static linking
|
|
102
|
+
|
|
103
|
+
```typescript
|
|
104
|
+
declare class ArchFile {
|
|
105
|
+
static check(data: Uint8Array): boolean;
|
|
106
|
+
members: {
|
|
107
|
+
name: string;
|
|
108
|
+
date: number;
|
|
109
|
+
uid: number;
|
|
110
|
+
gid: number;
|
|
111
|
+
mode: number;
|
|
112
|
+
size: number;
|
|
113
|
+
fmag: string;
|
|
114
|
+
contents: any;
|
|
115
|
+
}[];
|
|
116
|
+
constructor(data: Uint8Array);
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### CompoundDocument
|
|
121
|
+
Not a library format at all, but useful for loading some related files
|
|
122
|
+
```typescript
|
|
123
|
+
class Reader {
|
|
124
|
+
entries: DirEntry[];
|
|
125
|
+
private entry_chain;
|
|
126
|
+
constructor(sectors: Uint8Array, header: Header);
|
|
127
|
+
find(name: string, i?: number): DirEntry | undefined;
|
|
128
|
+
read(e: DirEntry): Uint8Array;
|
|
129
|
+
write(e: DirEntry, data: Uint8Array): void;
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
## License
|
|
133
|
+
|
|
132
134
|
This project is licensed under the MIT License. See the LICENSE file for more details.
|
package/dist/CompoundDocument.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompoundDocument.js","sourceRoot":"","sources":["../src/CompoundDocument.ts"],"names":[],"mappings":"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"}
|
package/dist/arch.js
CHANGED
|
@@ -52,7 +52,9 @@ class ArchFile {
|
|
|
52
52
|
const header = binary.read(s, binary.StringType(8));
|
|
53
53
|
if (header !== '!<arch>\n')
|
|
54
54
|
throw new Error('Invalid archive file format');
|
|
55
|
+
const nullTerminatedString = binary.NullTerminatedStringType();
|
|
55
56
|
let long_names;
|
|
57
|
+
let blanks = 0;
|
|
56
58
|
while (s.remaining() > 0) {
|
|
57
59
|
const member = binary.read(s, _HEADER);
|
|
58
60
|
const data = s.read_buffer(member.size);
|
|
@@ -67,16 +69,31 @@ class ArchFile {
|
|
|
67
69
|
}
|
|
68
70
|
if (member.name == '') {
|
|
69
71
|
const s2 = new binary.stream(data);
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
72
|
+
switch (++blanks) {
|
|
73
|
+
case 1: {
|
|
74
|
+
const offsets = binary.ArrayType(binary.INT32_BE, binary.INT32_BE).get(s2);
|
|
75
|
+
member.name = 'Symbols';
|
|
76
|
+
member.contents = offsets.map(offset => [
|
|
77
|
+
nullTerminatedString.get(s2),
|
|
78
|
+
offset
|
|
79
|
+
]);
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
case 2: { // microsoft symbols
|
|
83
|
+
const member_offsets = binary.ArrayType(binary.INT32_LE, binary.INT32_LE).get(s2);
|
|
84
|
+
const indices = binary.ArrayType(binary.INT32_LE, binary.INT16_LE).get(s2);
|
|
85
|
+
member.name = 'Symbols2';
|
|
86
|
+
member.contents = indices.map(i => [
|
|
87
|
+
nullTerminatedString.get(s2),
|
|
88
|
+
i
|
|
89
|
+
]);
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
76
93
|
}
|
|
77
94
|
else if (member.name == '/SYM') {
|
|
78
95
|
const s2 = new binary.stream(data);
|
|
79
|
-
const syms = binary.ArrayType(binary.INT32_BE,
|
|
96
|
+
const syms = binary.ArrayType(binary.INT32_BE, nullTerminatedString).get(s2);
|
|
80
97
|
member.contents = syms.map(name => ({
|
|
81
98
|
name,
|
|
82
99
|
offset: binary.INT32_BE.get(s2)
|
|
@@ -94,3 +111,4 @@ class ArchFile {
|
|
|
94
111
|
}
|
|
95
112
|
}
|
|
96
113
|
exports.ArchFile = ArchFile;
|
|
114
|
+
//# sourceMappingURL=arch.js.map
|
package/dist/arch.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arch.js","sourceRoot":"","sources":["../src/arch.ts"],"names":[],"mappings":"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"}
|
package/dist/clr.js
CHANGED
|
@@ -60,7 +60,7 @@ const CLR_HEADER = {
|
|
|
60
60
|
const STREAM_HDR = {
|
|
61
61
|
Offset: binary.UINT32_LE, // Memory offset to start of this stream from start of the metadata root (§II.24.2.1)
|
|
62
62
|
Size: binary.UINT32_LE, // Size of this stream in bytes, shall be a multiple of 4.
|
|
63
|
-
Name: binary.NullTerminatedStringType, // Name of the stream as null-terminated variable length array of ASCII characters, padded to the next 4-byte boundary with \0 characters. The name is limited to 32 characters.
|
|
63
|
+
Name: binary.NullTerminatedStringType(), // Name of the stream as null-terminated variable length array of ASCII characters, padded to the next 4-byte boundary with \0 characters. The name is limited to 32 characters.
|
|
64
64
|
unused: binary.AlignType(4),
|
|
65
65
|
};
|
|
66
66
|
const METADATA_ROOT = {
|
|
@@ -604,3 +604,4 @@ pe.DIRECTORIES.CLR_DESCRIPTOR.read = (pe, data) => {
|
|
|
604
604
|
const clr = new CLR(pe, data.data);
|
|
605
605
|
return Object.fromEntries(Object.entries(clr.tables).map(([k, v]) => [TABLE[+k], fix_names(clr.getTable(+k))]));
|
|
606
606
|
};
|
|
607
|
+
//# sourceMappingURL=clr.js.map
|
package/dist/clr.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clr.js","sourceRoot":"","sources":["../src/clr.ts"],"names":[],"mappings":"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"}
|
package/dist/elf.js
CHANGED
package/dist/elf.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elf.js","sourceRoot":"","sources":["../src/elf.ts"],"names":[],"mappings":"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"}
|
package/dist/mach.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as binary from '@isopodlabs/binary';
|
|
2
2
|
declare class mach_stream extends binary.endianStream {
|
|
3
3
|
base: Uint8Array;
|
|
4
|
+
memflags: number;
|
|
4
5
|
mem?: binary.memory | undefined;
|
|
5
|
-
constructor(base: Uint8Array, data: Uint8Array, be: boolean, mem?: binary.memory | undefined);
|
|
6
|
+
constructor(base: Uint8Array, data: Uint8Array, be: boolean, memflags: number, mem?: binary.memory | undefined);
|
|
6
7
|
subdata(offset: number, size?: number): Uint8Array;
|
|
7
8
|
substream(offset: number, size?: number): mach_stream;
|
|
8
9
|
getmem(address: bigint, size: number): Uint8Array | Promise<Uint8Array> | undefined;
|
|
@@ -82,10 +83,10 @@ declare const cmd_table: {
|
|
|
82
83
|
get(s: mach_stream): {
|
|
83
84
|
data: binary.MappedMemory | undefined;
|
|
84
85
|
segname: string;
|
|
85
|
-
vmaddr: number
|
|
86
|
-
vmsize: number
|
|
87
|
-
fileoff: number
|
|
88
|
-
filesize: number
|
|
86
|
+
vmaddr: binary.hex<number | bigint>;
|
|
87
|
+
vmsize: binary.hex<number | bigint>;
|
|
88
|
+
fileoff: binary.hex<number | bigint>;
|
|
89
|
+
filesize: binary.hex<number | bigint>;
|
|
89
90
|
maxprot: number;
|
|
90
91
|
initprot: number;
|
|
91
92
|
nsects: number;
|
|
@@ -97,10 +98,10 @@ declare const cmd_table: {
|
|
|
97
98
|
get(s: mach_stream): {
|
|
98
99
|
data: binary.MappedMemory | undefined;
|
|
99
100
|
segname: string;
|
|
100
|
-
vmaddr: bigint
|
|
101
|
-
vmsize: bigint
|
|
102
|
-
fileoff: bigint
|
|
103
|
-
filesize: bigint
|
|
101
|
+
vmaddr: binary.hex<number | bigint>;
|
|
102
|
+
vmsize: binary.hex<number | bigint>;
|
|
103
|
+
fileoff: binary.hex<number | bigint>;
|
|
104
|
+
filesize: binary.hex<number | bigint>;
|
|
104
105
|
maxprot: number;
|
|
105
106
|
initprot: number;
|
|
106
107
|
nsects: number;
|
|
@@ -481,22 +482,10 @@ export declare class MachFile {
|
|
|
481
482
|
getSegment(name: string): {
|
|
482
483
|
data: binary.MappedMemory | undefined;
|
|
483
484
|
segname: string;
|
|
484
|
-
vmaddr: number
|
|
485
|
-
vmsize: number
|
|
486
|
-
fileoff: number
|
|
487
|
-
filesize: number
|
|
488
|
-
maxprot: number;
|
|
489
|
-
initprot: number;
|
|
490
|
-
nsects: number;
|
|
491
|
-
flags: Record<string, bigint | boolean> | Record<string, number | boolean>;
|
|
492
|
-
sections: Record<string, any> | undefined;
|
|
493
|
-
} | {
|
|
494
|
-
data: binary.MappedMemory | undefined;
|
|
495
|
-
segname: string;
|
|
496
|
-
vmaddr: bigint;
|
|
497
|
-
vmsize: bigint;
|
|
498
|
-
fileoff: bigint;
|
|
499
|
-
filesize: bigint;
|
|
485
|
+
vmaddr: binary.hex<number | bigint>;
|
|
486
|
+
vmsize: binary.hex<number | bigint>;
|
|
487
|
+
fileoff: binary.hex<number | bigint>;
|
|
488
|
+
filesize: binary.hex<number | bigint>;
|
|
500
489
|
maxprot: number;
|
|
501
490
|
initprot: number;
|
|
502
491
|
nsects: number;
|
package/dist/mach.js
CHANGED
|
@@ -27,17 +27,19 @@ exports.FATMachFile = exports.MachFile = exports.CMD = void 0;
|
|
|
27
27
|
const binary = __importStar(require("@isopodlabs/binary"));
|
|
28
28
|
class mach_stream extends binary.endianStream {
|
|
29
29
|
base;
|
|
30
|
+
memflags;
|
|
30
31
|
mem;
|
|
31
|
-
constructor(base, data, be, mem) {
|
|
32
|
+
constructor(base, data, be, memflags, mem) {
|
|
32
33
|
super(data, be);
|
|
33
34
|
this.base = base;
|
|
35
|
+
this.memflags = memflags;
|
|
34
36
|
this.mem = mem;
|
|
35
37
|
}
|
|
36
38
|
subdata(offset, size) {
|
|
37
39
|
return this.base.subarray(offset, size && offset + size);
|
|
38
40
|
}
|
|
39
41
|
substream(offset, size) {
|
|
40
|
-
return new mach_stream(this.base, this.subdata(offset, size), this.be, this.mem);
|
|
42
|
+
return new mach_stream(this.base, this.subdata(offset, size), this.be, this.memflags, this.mem);
|
|
41
43
|
}
|
|
42
44
|
getmem(address, size) {
|
|
43
45
|
return this.mem?.get(address, size);
|
|
@@ -405,7 +407,7 @@ const SECTION_FLAGS = binary.BitFields({
|
|
|
405
407
|
})],
|
|
406
408
|
});
|
|
407
409
|
function section(bits) {
|
|
408
|
-
const type = binary.UINT(bits);
|
|
410
|
+
const type = binary.asHex(binary.UINT(bits));
|
|
409
411
|
class Section extends binary.Class({
|
|
410
412
|
//data: binary.DontRead<binary.utils.MappedMemory>(),
|
|
411
413
|
sectname: fixed_string16,
|
|
@@ -424,7 +426,7 @@ function section(bits) {
|
|
|
424
426
|
data;
|
|
425
427
|
constructor(s) {
|
|
426
428
|
super(s);
|
|
427
|
-
const prot = this.flags.ATTRIBUTES.SYS.SOME_INSTRUCTIONS ? binary.MappedMemory.EXECUTE |
|
|
429
|
+
const prot = this.flags.ATTRIBUTES.SYS.SOME_INSTRUCTIONS ? binary.MappedMemory.EXECUTE | s.memflags : s.memflags;
|
|
428
430
|
this.data = (async () =>
|
|
429
431
|
//new binary.utils.MappedMemory(await s.file.get(BigInt(this.addr), Number(this.size)), Number(this.addr), prot)
|
|
430
432
|
new binary.MappedMemory(s.subdata(+this.offset, Number(this.size)), Number(this.addr), prot))();
|
|
@@ -439,7 +441,7 @@ const SEGMENT_FLAGS = {
|
|
|
439
441
|
PROTECTED_VERSION_1: 0x8, // This segment is protected. If the segment starts at file offset 0, the first page of the segment is not protected. All other pages of the segment are protected.
|
|
440
442
|
};
|
|
441
443
|
function segment(bits) {
|
|
442
|
-
const type = binary.UINT(bits);
|
|
444
|
+
const type = binary.asHex(binary.UINT(bits));
|
|
443
445
|
const fields = {
|
|
444
446
|
data: binary.DontRead(),
|
|
445
447
|
segname: fixed_string16, // segment name
|
|
@@ -458,7 +460,7 @@ function segment(bits) {
|
|
|
458
460
|
const o = binary.read(s, fields);
|
|
459
461
|
async function load() {
|
|
460
462
|
const data = await s.getmem(BigInt(Number(o.vmaddr)), Number(o.filesize)) ?? s.subdata(Number(o.fileoff), Number(o.filesize));
|
|
461
|
-
o.data = new binary.MappedMemory(data, Number(o.vmaddr), o.initprot |
|
|
463
|
+
o.data = new binary.MappedMemory(data, Number(o.vmaddr), o.initprot | s.memflags);
|
|
462
464
|
//const sect = section(bits);
|
|
463
465
|
if (o.nsects) {
|
|
464
466
|
o.sections = binary.objectWithNames(binary.ArrayType(o.nsects, section(bits)), binary.field('sectname')).get(s);
|
|
@@ -1006,7 +1008,7 @@ class MachFile {
|
|
|
1006
1008
|
file.skip(4);
|
|
1007
1009
|
for (let i = 0; i < h.ncmds; ++i) {
|
|
1008
1010
|
const cmd = binary.read(file, command);
|
|
1009
|
-
const file2 = new mach_stream(data, file.read_buffer(cmd.cmdsize - 8), file.be, mem);
|
|
1011
|
+
const file2 = new mach_stream(data, file.read_buffer(cmd.cmdsize - 8), file.be, h.filetype === 'EXECUTE' ? 0 : binary.MappedMemory.RELATIVE, mem);
|
|
1010
1012
|
const result = binary.read(file2, cmd_table[cmd.cmd] ?? {});
|
|
1011
1013
|
this.commands.push({ cmd: cmd.cmd, data: result });
|
|
1012
1014
|
}
|
|
@@ -1015,7 +1017,7 @@ class MachFile {
|
|
|
1015
1017
|
if (funcs) {
|
|
1016
1018
|
const array = funcs.contents;
|
|
1017
1019
|
const text = this.getSegment('__TEXT');
|
|
1018
|
-
let acc = BigInt(text?.vmaddr ?? 0);
|
|
1020
|
+
let acc = BigInt(text?.vmaddr.value ?? 0);
|
|
1019
1021
|
for (const i in array)
|
|
1020
1022
|
array[i] = (acc += BigInt(array[i]));
|
|
1021
1023
|
}
|
|
@@ -1080,3 +1082,4 @@ export function freestanding(s: binary.stream, cmd: CMD) {
|
|
|
1080
1082
|
return binary.read(s, cmd_table[cmd]);
|
|
1081
1083
|
}
|
|
1082
1084
|
*/
|
|
1085
|
+
//# sourceMappingURL=mach.js.map
|
package/dist/mach.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mach.js","sourceRoot":"","sources":["../src/mach.ts"],"names":[],"mappings":"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"}
|
package/dist/pe.d.ts
CHANGED
|
@@ -27,6 +27,15 @@ export declare class pe_stream extends binary.stream {
|
|
|
27
27
|
constructor(pe: PE, data: Uint8Array);
|
|
28
28
|
get_rva(): Uint8Array | undefined;
|
|
29
29
|
}
|
|
30
|
+
declare const FILE_HEADER: {
|
|
31
|
+
Machine: binary.TypeT<string>;
|
|
32
|
+
NumberOfSections: binary.TypeT<number>;
|
|
33
|
+
TimeDateStamp: binary.TypeT<number>;
|
|
34
|
+
PointerToSymbolTable: binary.TypeT<number>;
|
|
35
|
+
NumberOfSymbols: binary.TypeT<number>;
|
|
36
|
+
SizeOfOptionalHeader: binary.TypeT<number>;
|
|
37
|
+
Characteristics: binary.TypeT<number>;
|
|
38
|
+
};
|
|
30
39
|
declare const Section_base: (new (s: binary._stream) => {
|
|
31
40
|
Name: string;
|
|
32
41
|
VirtualSize: number;
|
|
@@ -41,7 +50,7 @@ declare const Section_base: (new (s: binary._stream) => {
|
|
|
41
50
|
}) & {
|
|
42
51
|
get: <X extends abstract new (...args: any) => any>(this: X, s: binary._stream) => InstanceType<X>;
|
|
43
52
|
};
|
|
44
|
-
declare class Section extends Section_base {
|
|
53
|
+
export declare class Section extends Section_base {
|
|
45
54
|
data?: binary.MappedMemory;
|
|
46
55
|
constructor(r: binary.stream);
|
|
47
56
|
get flags(): number;
|
|
@@ -135,6 +144,31 @@ export declare class PE {
|
|
|
135
144
|
GetDataDir(dir: Directory): binary.MappedMemory | undefined;
|
|
136
145
|
ReadDirectory(name: string): any;
|
|
137
146
|
}
|
|
147
|
+
export declare class COFF {
|
|
148
|
+
static check(data: Uint8Array): boolean;
|
|
149
|
+
header: binary.ReadType<typeof FILE_HEADER>;
|
|
150
|
+
opt?: binary.ReadType<typeof OPTIONAL_HEADER> & (binary.ReadType<typeof OPTIONAL_HEADER32> | binary.ReadType<typeof OPTIONAL_HEADER64>);
|
|
151
|
+
sections: Section[];
|
|
152
|
+
constructor(data: Uint8Array);
|
|
153
|
+
}
|
|
154
|
+
declare const COFFSymbol_base: (new (s: binary._stream) => {
|
|
155
|
+
a: number;
|
|
156
|
+
b: number;
|
|
157
|
+
c: number;
|
|
158
|
+
Architecture: string;
|
|
159
|
+
Id: number;
|
|
160
|
+
Length: number;
|
|
161
|
+
Value: number;
|
|
162
|
+
Type: number;
|
|
163
|
+
Symbol: string;
|
|
164
|
+
Module: string;
|
|
165
|
+
}) & {
|
|
166
|
+
get: <X extends abstract new (...args: any) => any>(this: X, s: binary._stream) => InstanceType<X>;
|
|
167
|
+
};
|
|
168
|
+
export declare class COFFSymbol extends COFFSymbol_base {
|
|
169
|
+
static check(data: Uint8Array): boolean;
|
|
170
|
+
constructor(data: Uint8Array);
|
|
171
|
+
}
|
|
138
172
|
export declare function ReadExports(file: pe_stream): (string | number | binary.MappedMemory | undefined)[][];
|
|
139
173
|
export declare class DLLImports extends Array {
|
|
140
174
|
}
|
package/dist/pe.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.DLLImports = exports.PE = exports.DATA_DIRECTORY = exports.DIRECTORIES = exports.pe_stream = void 0;
|
|
26
|
+
exports.DLLImports = exports.COFFSymbol = exports.COFF = exports.PE = exports.DATA_DIRECTORY = exports.DIRECTORIES = exports.Section = exports.pe_stream = void 0;
|
|
27
27
|
exports.ReadExports = ReadExports;
|
|
28
28
|
exports.ReadImports = ReadImports;
|
|
29
29
|
exports.ReadResourceDirectory = ReadResourceDirectory;
|
|
@@ -91,8 +91,31 @@ const RVA_ARRAY64 = {
|
|
|
91
91
|
get(s) { return binary.utils.to64(s.get_rva()); },
|
|
92
92
|
put(_s) { }
|
|
93
93
|
};
|
|
94
|
+
const MACHINE = binary.asEnum(uint16, {
|
|
95
|
+
UNKNOWN: 0x0,
|
|
96
|
+
AM33: 0x1d3,
|
|
97
|
+
AMD64: 0x8664,
|
|
98
|
+
ARM: 0x1c0,
|
|
99
|
+
ARMV7: 0x1c4,
|
|
100
|
+
EBC: 0xebc,
|
|
101
|
+
I386: 0x14c,
|
|
102
|
+
IA64: 0x200,
|
|
103
|
+
M32R: 0x9041,
|
|
104
|
+
MIPS16: 0x266,
|
|
105
|
+
MIPSFPU: 0x366,
|
|
106
|
+
MIPSFPU16: 0x466,
|
|
107
|
+
POWERPC: 0x1f0,
|
|
108
|
+
POWERPCFP: 0x1f1,
|
|
109
|
+
R4000: 0x166,
|
|
110
|
+
SH3: 0x1a2,
|
|
111
|
+
SH3DSP: 0x1a3,
|
|
112
|
+
SH4: 0x1a6,
|
|
113
|
+
SH5: 0x1a8,
|
|
114
|
+
THUMB: 0x1c2,
|
|
115
|
+
WCEMIPSV2: 0x169,
|
|
116
|
+
});
|
|
94
117
|
const FILE_HEADER = {
|
|
95
|
-
Machine:
|
|
118
|
+
Machine: MACHINE,
|
|
96
119
|
NumberOfSections: uint16,
|
|
97
120
|
TimeDateStamp: uint32,
|
|
98
121
|
PointerToSymbolTable: uint32,
|
|
@@ -173,6 +196,7 @@ class Section extends binary.ReadClass({
|
|
|
173
196
|
| (this.Characteristics.MEM_EXECUTE ? binary.MappedMemory.EXECUTE : 0);
|
|
174
197
|
}
|
|
175
198
|
}
|
|
199
|
+
exports.Section = Section;
|
|
176
200
|
exports.DIRECTORIES = {
|
|
177
201
|
EXPORT: { read: (pe, data) => ReadExports(new pe_stream(pe, data.data)) },
|
|
178
202
|
IMPORT: { read: (pe, data) => ReadImports(new pe_stream(pe, data.data)) },
|
|
@@ -340,6 +364,50 @@ class PE {
|
|
|
340
364
|
}
|
|
341
365
|
}
|
|
342
366
|
exports.PE = PE;
|
|
367
|
+
class COFF {
|
|
368
|
+
static check(data) {
|
|
369
|
+
const header = binary.read(new binary.stream(data), FILE_HEADER);
|
|
370
|
+
return header.Machine != 'UNKNOWN';
|
|
371
|
+
}
|
|
372
|
+
header;
|
|
373
|
+
opt;
|
|
374
|
+
sections;
|
|
375
|
+
constructor(data) {
|
|
376
|
+
const file = new binary.stream(data);
|
|
377
|
+
this.header = binary.read(file, FILE_HEADER);
|
|
378
|
+
if (this.header.SizeOfOptionalHeader) {
|
|
379
|
+
console.log("COFF: SizeOfOptionalHeader", this.header.SizeOfOptionalHeader);
|
|
380
|
+
}
|
|
381
|
+
this.sections = Array.from({ length: this.header.NumberOfSections }, () => new Section(file));
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
exports.COFF = COFF;
|
|
385
|
+
const SYMBOL = {
|
|
386
|
+
a: uint16, //0
|
|
387
|
+
b: uint16, //0xffff
|
|
388
|
+
c: uint16, //0
|
|
389
|
+
Architecture: MACHINE, // 0x14C for x86, 0x8664 for x64
|
|
390
|
+
Id: uint32,
|
|
391
|
+
Length: uint32,
|
|
392
|
+
//union {
|
|
393
|
+
// Hint: uint16,
|
|
394
|
+
// Ordinal: uint16,
|
|
395
|
+
Value: uint16,
|
|
396
|
+
//}
|
|
397
|
+
Type: uint16,
|
|
398
|
+
Symbol: binary.NullTerminatedStringType(),
|
|
399
|
+
Module: binary.NullTerminatedStringType(),
|
|
400
|
+
};
|
|
401
|
+
class COFFSymbol extends binary.ReadClass(SYMBOL) {
|
|
402
|
+
static check(data) {
|
|
403
|
+
const test = binary.read(new binary.stream(data), SYMBOL);
|
|
404
|
+
return test.a === 0 && test.b === 0xffff && test.c === 0 && test.Architecture != 'UNKNOWN';
|
|
405
|
+
}
|
|
406
|
+
constructor(data) {
|
|
407
|
+
super(new binary.stream(data));
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
exports.COFFSymbol = COFFSymbol;
|
|
343
411
|
//-----------------------------------------------------------------------------
|
|
344
412
|
// exports
|
|
345
413
|
//-----------------------------------------------------------------------------
|
|
@@ -480,3 +548,4 @@ function ReadResourceDirectory(file, data, type = 0) {
|
|
|
480
548
|
}
|
|
481
549
|
return result;
|
|
482
550
|
}
|
|
551
|
+
//# sourceMappingURL=pe.js.map
|
package/dist/pe.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pe.js","sourceRoot":"","sources":["../src/pe.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@isopodlabs/binary_libs",
|
|
3
|
-
"description": "A package for reading various library file format with TypeScript.",
|
|
4
|
-
"exports": {
|
|
5
|
-
"./arch": "./dist/arch.js",
|
|
6
|
-
"./clr": "./dist/clr.js",
|
|
7
|
-
"./CompoundDocument": "./dist/CompoundDocument.js",
|
|
8
|
-
"./elf": "./dist/elf.js",
|
|
9
|
-
"./mach": "./dist/mach.js",
|
|
10
|
-
"./pe": "./dist/pe.js"
|
|
11
|
-
},
|
|
12
|
-
"files": [
|
|
13
|
-
"dist",
|
|
14
|
-
"README.md"
|
|
15
|
-
],
|
|
16
|
-
"scripts": {
|
|
17
|
-
"build": "tsc",
|
|
18
|
-
"lint": "eslint \"src/**/*.ts\"",
|
|
19
|
-
"test": "echo \"No tests specified\" && exit 0",
|
|
20
|
-
"patch": "ts-patch install"
|
|
21
|
-
},
|
|
22
|
-
"keywords": [
|
|
23
|
-
"binary",
|
|
24
|
-
"typescript",
|
|
25
|
-
"data",
|
|
26
|
-
"read",
|
|
27
|
-
"write"
|
|
28
|
-
],
|
|
29
|
-
"author": "Adrian Stephens",
|
|
30
|
-
"license": "MIT",
|
|
31
|
-
"devDependencies": {
|
|
32
|
-
"@types/node": "^22.13.8",
|
|
33
|
-
"@typescript-eslint/eslint-plugin": "^8.26.0",
|
|
34
|
-
"@typescript-eslint/parser": "^8.26.0",
|
|
35
|
-
"eslint": "^9.21.0",
|
|
36
|
-
"ts-node": "^10.9.2",
|
|
37
|
-
"ts-patch": "^3.3.0",
|
|
38
|
-
"typescript": "~5.5.0",
|
|
39
|
-
"typescript-eslint": "^8.26.0"
|
|
40
|
-
},
|
|
41
|
-
"dependencies": {
|
|
42
|
-
"@isopodlabs/binary": "^1.4.
|
|
43
|
-
},
|
|
44
|
-
"version": "1.
|
|
45
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@isopodlabs/binary_libs",
|
|
3
|
+
"description": "A package for reading various library file format with TypeScript.",
|
|
4
|
+
"exports": {
|
|
5
|
+
"./arch": "./dist/arch.js",
|
|
6
|
+
"./clr": "./dist/clr.js",
|
|
7
|
+
"./CompoundDocument": "./dist/CompoundDocument.js",
|
|
8
|
+
"./elf": "./dist/elf.js",
|
|
9
|
+
"./mach": "./dist/mach.js",
|
|
10
|
+
"./pe": "./dist/pe.js"
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist",
|
|
14
|
+
"README.md"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "tsc",
|
|
18
|
+
"lint": "eslint \"src/**/*.ts\"",
|
|
19
|
+
"test": "echo \"No tests specified\" && exit 0",
|
|
20
|
+
"patch": "ts-patch install"
|
|
21
|
+
},
|
|
22
|
+
"keywords": [
|
|
23
|
+
"binary",
|
|
24
|
+
"typescript",
|
|
25
|
+
"data",
|
|
26
|
+
"read",
|
|
27
|
+
"write"
|
|
28
|
+
],
|
|
29
|
+
"author": "Adrian Stephens",
|
|
30
|
+
"license": "MIT",
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/node": "^22.13.8",
|
|
33
|
+
"@typescript-eslint/eslint-plugin": "^8.26.0",
|
|
34
|
+
"@typescript-eslint/parser": "^8.26.0",
|
|
35
|
+
"eslint": "^9.21.0",
|
|
36
|
+
"ts-node": "^10.9.2",
|
|
37
|
+
"ts-patch": "^3.3.0",
|
|
38
|
+
"typescript": "~5.5.0",
|
|
39
|
+
"typescript-eslint": "^8.26.0"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@isopodlabs/binary": "^1.4.1"
|
|
43
|
+
},
|
|
44
|
+
"version": "1.2.0"
|
|
45
|
+
}
|