lief 0.17.3__cp38-cp38-manylinux_2_28_x86_64.whl

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.
lief/PE/__init__.pyi ADDED
@@ -0,0 +1,4710 @@
1
+ from collections.abc import Callable, Sequence
2
+ import enum
3
+ import io
4
+ import lief.PE
5
+ import os
6
+ from typing import Iterator, Optional, Union, overload
7
+
8
+ from . import (
9
+ unwind_aarch64 as unwind_aarch64,
10
+ unwind_x64 as unwind_x64
11
+ )
12
+ import lief
13
+ import lief.COFF
14
+
15
+
16
+ class PE_TYPE(enum.Enum):
17
+ @staticmethod
18
+ def from_value(arg: int, /) -> PE_TYPE: ...
19
+
20
+ def __eq__(self, arg, /) -> bool: ...
21
+
22
+ def __ne__(self, arg, /) -> bool: ...
23
+
24
+ def __int__(self) -> int: ...
25
+
26
+ PE32 = 267
27
+
28
+ PE32_PLUS = 523
29
+
30
+ class ALGORITHMS(enum.Enum):
31
+ @staticmethod
32
+ def from_value(arg: int, /) -> ALGORITHMS: ...
33
+
34
+ def __eq__(self, arg, /) -> bool: ...
35
+
36
+ def __ne__(self, arg, /) -> bool: ...
37
+
38
+ def __int__(self) -> int: ...
39
+
40
+ UNKNOWN = 0
41
+
42
+ SHA_512 = 1
43
+
44
+ SHA_384 = 2
45
+
46
+ SHA_256 = 3
47
+
48
+ SHA_1 = 4
49
+
50
+ MD5 = 5
51
+
52
+ MD4 = 6
53
+
54
+ MD2 = 7
55
+
56
+ RSA = 8
57
+
58
+ EC = 9
59
+
60
+ MD5_RSA = 10
61
+
62
+ SHA1_DSA = 11
63
+
64
+ SHA1_RSA = 12
65
+
66
+ SHA_256_RSA = 13
67
+
68
+ SHA_384_RSA = 14
69
+
70
+ SHA_512_RSA = 15
71
+
72
+ SHA1_ECDSA = 16
73
+
74
+ SHA_256_ECDSA = 17
75
+
76
+ SHA_384_ECDSA = 18
77
+
78
+ SHA_512_ECDSA = 19
79
+
80
+ class ParserConfig:
81
+ def __init__(self) -> None: ...
82
+
83
+ parse_signature: bool
84
+
85
+ parse_exports: bool
86
+
87
+ parse_imports: bool
88
+
89
+ parse_rsrc: bool
90
+
91
+ parse_reloc: bool
92
+
93
+ parse_exceptions: bool
94
+
95
+ parse_arm64x_binary: bool
96
+
97
+ default_conf: ParserConfig = ...
98
+
99
+ all: ParserConfig = ...
100
+
101
+ def __str__(self) -> str: ...
102
+
103
+ def parse(obj: Union[str | io.IOBase | os.PathLike | bytes | list[int]], config: ParserConfig = ...) -> Optional[Binary]: ...
104
+
105
+ class DosHeader(lief.Object):
106
+ @staticmethod
107
+ def create(arg: PE_TYPE, /) -> DosHeader: ...
108
+
109
+ magic: int
110
+
111
+ used_bytes_in_last_page: int
112
+
113
+ file_size_in_pages: int
114
+
115
+ numberof_relocation: int
116
+
117
+ header_size_in_paragraphs: int
118
+
119
+ minimum_extra_paragraphs: int
120
+
121
+ maximum_extra_paragraphs: int
122
+
123
+ initial_relative_ss: int
124
+
125
+ initial_sp: int
126
+
127
+ checksum: int
128
+
129
+ initial_ip: int
130
+
131
+ initial_relative_cs: int
132
+
133
+ addressof_relocation_table: int
134
+
135
+ overlay_number: int
136
+
137
+ oem_id: int
138
+
139
+ oem_info: int
140
+
141
+ addressof_new_exeheader: int
142
+
143
+ def copy(self) -> DosHeader: ...
144
+
145
+ def __str__(self) -> str: ...
146
+
147
+ class Header(lief.Object):
148
+ class MACHINE_TYPES(enum.Enum):
149
+ @staticmethod
150
+ def from_value(arg: int, /) -> Header.MACHINE_TYPES: ...
151
+
152
+ def __eq__(self, arg, /) -> bool: ...
153
+
154
+ def __ne__(self, arg, /) -> bool: ...
155
+
156
+ def __int__(self) -> int: ...
157
+
158
+ UNKNOWN = 0
159
+
160
+ ALPHA = 388
161
+
162
+ ALPHA64 = 644
163
+
164
+ AM33 = 467
165
+
166
+ AMD64 = 34404
167
+
168
+ ARM = 448
169
+
170
+ ARMNT = 452
171
+
172
+ ARM64 = 43620
173
+
174
+ EBC = 3772
175
+
176
+ I386 = 332
177
+
178
+ IA64 = 512
179
+
180
+ LOONGARCH32 = 25138
181
+
182
+ LOONGARCH64 = 25188
183
+
184
+ M32R = 36929
185
+
186
+ MIPS16 = 614
187
+
188
+ MIPSFPU = 870
189
+
190
+ MIPSFPU16 = 1126
191
+
192
+ POWERPC = 496
193
+
194
+ POWERPCFP = 497
195
+
196
+ POWERPCBE = 498
197
+
198
+ R4000 = 358
199
+
200
+ SH3 = 418
201
+
202
+ SH3DSP = 419
203
+
204
+ SH4 = 422
205
+
206
+ SH5 = 424
207
+
208
+ THUMB = 450
209
+
210
+ WCEMIPSV2 = 361
211
+
212
+ ARM64EC = 42561
213
+
214
+ ARM64X = 42574
215
+
216
+ CHPE_X86 = 14948
217
+
218
+ class CHARACTERISTICS(enum.Flag):
219
+ @staticmethod
220
+ def from_value(arg: int, /) -> Header.CHARACTERISTICS: ...
221
+
222
+ def __eq__(self, arg, /) -> bool: ...
223
+
224
+ def __ne__(self, arg, /) -> bool: ...
225
+
226
+ def __int__(self) -> int: ...
227
+
228
+ RELOCS_STRIPPED = 1
229
+
230
+ EXECUTABLE_IMAGE = 2
231
+
232
+ LINE_NUMS_STRIPPED = 4
233
+
234
+ LOCAL_SYMS_STRIPPED = 8
235
+
236
+ AGGRESSIVE_WS_TRIM = 16
237
+
238
+ LARGE_ADDRESS_AWARE = 32
239
+
240
+ BYTES_REVERSED_LO = 128
241
+
242
+ NEED_32BIT_MACHINE = 256
243
+
244
+ DEBUG_STRIPPED = 512
245
+
246
+ REMOVABLE_RUN_FROM_SWAP = 1024
247
+
248
+ NET_RUN_FROM_SWAP = 2048
249
+
250
+ SYSTEM = 4096
251
+
252
+ DLL = 8192
253
+
254
+ UP_SYSTEM_ONLY = 16384
255
+
256
+ BYTES_REVERSED_HI = 32768
257
+
258
+ @staticmethod
259
+ def create(type: PE_TYPE) -> Header: ...
260
+
261
+ signature: list[int]
262
+
263
+ machine: Header.MACHINE_TYPES
264
+
265
+ numberof_sections: int
266
+
267
+ time_date_stamps: int
268
+
269
+ pointerto_symbol_table: int
270
+
271
+ numberof_symbols: int
272
+
273
+ sizeof_optional_header: int
274
+
275
+ characteristics: int
276
+
277
+ def has_characteristic(self, characteristic: Header.CHARACTERISTICS) -> bool: ...
278
+
279
+ def add_characteristic(self, characteristic: Header.CHARACTERISTICS) -> None: ...
280
+
281
+ def remove_characteristic(self, characteristic: Header.CHARACTERISTICS) -> None: ...
282
+
283
+ @property
284
+ def characteristics_list(self) -> list[Header.CHARACTERISTICS]: ...
285
+
286
+ def copy(self) -> Header: ...
287
+
288
+ def __str__(self) -> str: ...
289
+
290
+ class OptionalHeader(lief.Object):
291
+ class SUBSYSTEM(enum.Enum):
292
+ @staticmethod
293
+ def from_value(arg: int, /) -> OptionalHeader.SUBSYSTEM: ...
294
+
295
+ def __eq__(self, arg, /) -> bool: ...
296
+
297
+ def __ne__(self, arg, /) -> bool: ...
298
+
299
+ def __int__(self) -> int: ...
300
+
301
+ UNKNOWN = 0
302
+
303
+ NATIVE = 1
304
+
305
+ WINDOWS_GUI = 2
306
+
307
+ WINDOWS_CUI = 3
308
+
309
+ OS2_CUI = 5
310
+
311
+ POSIX_CUI = 7
312
+
313
+ NATIVE_WINDOWS = 8
314
+
315
+ WINDOWS_CE_GUI = 9
316
+
317
+ EFI_APPLICATION = 10
318
+
319
+ EFI_BOOT_SERVICE_DRIVER = 11
320
+
321
+ EFI_RUNTIME_DRIVER = 12
322
+
323
+ EFI_ROM = 13
324
+
325
+ XBOX = 14
326
+
327
+ WINDOWS_BOOT_APPLICATION = 16
328
+
329
+ class DLL_CHARACTERISTICS(enum.IntFlag):
330
+ def __repr__(self, /): ...
331
+
332
+ @staticmethod
333
+ def from_value(arg: int, /) -> OptionalHeader.DLL_CHARACTERISTICS: ...
334
+
335
+ def __eq__(self, arg, /) -> bool: ...
336
+
337
+ def __ne__(self, arg, /) -> bool: ...
338
+
339
+ def __int__(self) -> int: ...
340
+
341
+ HIGH_ENTROPY_VA = 32
342
+
343
+ DYNAMIC_BASE = 64
344
+
345
+ FORCE_INTEGRITY = 128
346
+
347
+ NX_COMPAT = 256
348
+
349
+ NO_ISOLATION = 512
350
+
351
+ NO_SEH = 1024
352
+
353
+ NO_BIND = 2048
354
+
355
+ APPCONTAINER = 4096
356
+
357
+ WDM_DRIVER = 8192
358
+
359
+ GUARD_CF = 16384
360
+
361
+ TERMINAL_SERVER_AWARE = 32768
362
+
363
+ @staticmethod
364
+ def create(type: PE_TYPE) -> OptionalHeader: ...
365
+
366
+ magic: PE_TYPE
367
+
368
+ major_linker_version: int
369
+
370
+ minor_linker_version: int
371
+
372
+ sizeof_code: int
373
+
374
+ sizeof_initialized_data: int
375
+
376
+ sizeof_uninitialized_data: int
377
+
378
+ addressof_entrypoint: int
379
+
380
+ baseof_code: int
381
+
382
+ baseof_data: int
383
+
384
+ imagebase: int
385
+
386
+ section_alignment: int
387
+
388
+ file_alignment: int
389
+
390
+ major_operating_system_version: int
391
+
392
+ minor_operating_system_version: int
393
+
394
+ major_image_version: int
395
+
396
+ minor_image_version: int
397
+
398
+ major_subsystem_version: int
399
+
400
+ minor_subsystem_version: int
401
+
402
+ win32_version_value: int
403
+
404
+ sizeof_image: int
405
+
406
+ sizeof_headers: int
407
+
408
+ checksum: int
409
+
410
+ subsystem: OptionalHeader.SUBSYSTEM
411
+
412
+ dll_characteristics: int
413
+
414
+ def add(self, characteristic: OptionalHeader.DLL_CHARACTERISTICS) -> None: ...
415
+
416
+ def remove(self, characteristic: OptionalHeader.DLL_CHARACTERISTICS) -> None: ...
417
+
418
+ @property
419
+ def dll_characteristics_lists(self) -> list[OptionalHeader.DLL_CHARACTERISTICS]: ...
420
+
421
+ def has(self, characteristics: OptionalHeader.DLL_CHARACTERISTICS) -> bool: ...
422
+
423
+ sizeof_stack_reserve: int
424
+
425
+ sizeof_stack_commit: int
426
+
427
+ sizeof_heap_reserve: int
428
+
429
+ sizeof_heap_commit: int
430
+
431
+ loader_flags: int
432
+
433
+ numberof_rva_and_size: int
434
+
435
+ def __iadd__(self, arg: OptionalHeader.DLL_CHARACTERISTICS, /) -> OptionalHeader: ...
436
+
437
+ def __isub__(self, arg: OptionalHeader.DLL_CHARACTERISTICS, /) -> OptionalHeader: ...
438
+
439
+ def __contains__(self, arg: OptionalHeader.DLL_CHARACTERISTICS, /) -> bool: ...
440
+
441
+ def copy(self) -> OptionalHeader: ...
442
+
443
+ def __str__(self) -> str: ...
444
+
445
+ class RichHeader(lief.Object):
446
+ def __init__(self) -> None: ...
447
+
448
+ class it_entries:
449
+ def __getitem__(self, arg: int, /) -> RichEntry: ...
450
+
451
+ def __len__(self) -> int: ...
452
+
453
+ def __iter__(self) -> RichHeader.it_entries: ...
454
+
455
+ def __next__(self) -> RichEntry: ...
456
+
457
+ key: int
458
+
459
+ @property
460
+ def entries(self) -> RichHeader.it_entries: ...
461
+
462
+ @overload
463
+ def add_entry(self, entry: RichEntry) -> None: ...
464
+
465
+ @overload
466
+ def add_entry(self, id: int, build_id: int, count: int) -> None: ...
467
+
468
+ @overload
469
+ def raw(self) -> list[int]: ...
470
+
471
+ @overload
472
+ def raw(self, xor_key: int) -> list[int]: ...
473
+
474
+ @overload
475
+ def hash(self, algo: ALGORITHMS) -> list[int]: ...
476
+
477
+ @overload
478
+ def hash(self, algo: ALGORITHMS, xor_key: int) -> list[int]: ...
479
+
480
+ def copy(self) -> RichHeader: ...
481
+
482
+ def __str__(self) -> str: ...
483
+
484
+ class RichEntry(lief.Object):
485
+ @overload
486
+ def __init__(self) -> None: ...
487
+
488
+ @overload
489
+ def __init__(self, id: int, build_id: int, count: int) -> None: ...
490
+
491
+ id: int
492
+
493
+ build_id: int
494
+
495
+ count: int
496
+
497
+ def copy(self) -> RichEntry: ...
498
+
499
+ def __str__(self) -> str: ...
500
+
501
+ class DataDirectory(lief.Object):
502
+ def __init__(self) -> None: ...
503
+
504
+ class TYPES(enum.Enum):
505
+ @staticmethod
506
+ def from_value(arg: int, /) -> DataDirectory.TYPES: ...
507
+
508
+ def __eq__(self, arg, /) -> bool: ...
509
+
510
+ def __ne__(self, arg, /) -> bool: ...
511
+
512
+ def __int__(self) -> int: ...
513
+
514
+ EXPORT_TABLE = 0
515
+
516
+ IMPORT_TABLE = 1
517
+
518
+ RESOURCE_TABLE = 2
519
+
520
+ EXCEPTION_TABLE = 3
521
+
522
+ CERTIFICATE_TABLE = 4
523
+
524
+ BASE_RELOCATION_TABLE = 5
525
+
526
+ DEBUG_DIR = 6
527
+
528
+ ARCHITECTURE = 7
529
+
530
+ GLOBAL_PTR = 8
531
+
532
+ TLS_TABLE = 9
533
+
534
+ LOAD_CONFIG_TABLE = 10
535
+
536
+ BOUND_IMPORT = 11
537
+
538
+ IAT = 12
539
+
540
+ DELAY_IMPORT_DESCRIPTOR = 13
541
+
542
+ CLR_RUNTIME_HEADER = 14
543
+
544
+ RESERVED = 15
545
+
546
+ UNKNOWN = 16
547
+
548
+ rva: int
549
+
550
+ size: int
551
+
552
+ @property
553
+ def section(self) -> Section: ...
554
+
555
+ @property
556
+ def content(self) -> memoryview: ...
557
+
558
+ @property
559
+ def type(self) -> DataDirectory.TYPES: ...
560
+
561
+ @property
562
+ def has_section(self) -> bool: ...
563
+
564
+ def copy(self) -> DataDirectory: ...
565
+
566
+ def __str__(self) -> str: ...
567
+
568
+ class Section(lief.Section):
569
+ @overload
570
+ def __init__(self) -> None: ...
571
+
572
+ @overload
573
+ def __init__(self, name: str, content: Sequence[int]) -> None: ...
574
+
575
+ @overload
576
+ def __init__(self, name: str) -> None: ...
577
+
578
+ class CHARACTERISTICS(enum.Flag):
579
+ @staticmethod
580
+ def from_value(arg: int, /) -> Section.CHARACTERISTICS: ...
581
+
582
+ def __eq__(self, arg, /) -> bool: ...
583
+
584
+ def __ne__(self, arg, /) -> bool: ...
585
+
586
+ def __int__(self) -> int: ...
587
+
588
+ TYPE_NO_PAD = 8
589
+
590
+ CNT_CODE = 32
591
+
592
+ CNT_INITIALIZED_DATA = 64
593
+
594
+ CNT_UNINITIALIZED_DATA = 128
595
+
596
+ LNK_OTHER = 256
597
+
598
+ LNK_INFO = 512
599
+
600
+ LNK_REMOVE = 2048
601
+
602
+ LNK_COMDAT = 4096
603
+
604
+ GPREL = 32768
605
+
606
+ MEM_PURGEABLE = 65536
607
+
608
+ MEM_16BIT = 131072
609
+
610
+ MEM_LOCKED = 262144
611
+
612
+ MEM_PRELOAD = 524288
613
+
614
+ ALIGN_1BYTES = 1048576
615
+
616
+ ALIGN_2BYTES = 2097152
617
+
618
+ ALIGN_4BYTES = 3145728
619
+
620
+ ALIGN_8BYTES = 4194304
621
+
622
+ ALIGN_16BYTES = 5242880
623
+
624
+ ALIGN_32BYTES = 6291456
625
+
626
+ ALIGN_64BYTES = 7340032
627
+
628
+ ALIGN_128BYTES = 8388608
629
+
630
+ ALIGN_256BYTES = 9437184
631
+
632
+ ALIGN_512BYTES = 10485760
633
+
634
+ ALIGN_1024BYTES = 11534336
635
+
636
+ ALIGN_2048BYTES = 12582912
637
+
638
+ ALIGN_4096BYTES = 13631488
639
+
640
+ ALIGN_8192BYTES = 14680064
641
+
642
+ LNK_NRELOC_OVFL = 16777216
643
+
644
+ MEM_DISCARDABLE = 33554432
645
+
646
+ MEM_NOT_CACHED = 67108864
647
+
648
+ MEM_NOT_PAGED = 134217728
649
+
650
+ MEM_SHARED = 268435456
651
+
652
+ MEM_EXECUTE = 536870912
653
+
654
+ MEM_READ = 1073741824
655
+
656
+ MEM_WRITE = 2147483648
657
+
658
+ virtual_size: int
659
+
660
+ sizeof_raw_data: int
661
+
662
+ pointerto_raw_data: int
663
+
664
+ pointerto_relocation: int
665
+
666
+ pointerto_line_numbers: int
667
+
668
+ numberof_relocations: int
669
+
670
+ numberof_line_numbers: int
671
+
672
+ characteristics: int
673
+
674
+ @property
675
+ def characteristics_lists(self) -> list[Section.CHARACTERISTICS]: ...
676
+
677
+ def has_characteristic(self, characteristic: Section.CHARACTERISTICS) -> bool: ...
678
+
679
+ @property
680
+ def is_discardable(self) -> bool: ...
681
+
682
+ @property
683
+ def coff_string(self) -> lief.COFF.String: ...
684
+
685
+ @property
686
+ def padding(self) -> bytes: ...
687
+
688
+ def copy(self) -> Section: ...
689
+
690
+ def __str__(self) -> str: ...
691
+
692
+ class Relocation(lief.Object):
693
+ def __init__(self) -> None: ...
694
+
695
+ class it_entries:
696
+ def __getitem__(self, arg: int, /) -> RelocationEntry: ...
697
+
698
+ def __len__(self) -> int: ...
699
+
700
+ def __iter__(self) -> Relocation.it_entries: ...
701
+
702
+ def __next__(self) -> RelocationEntry: ...
703
+
704
+ virtual_address: int
705
+
706
+ block_size: int
707
+
708
+ @property
709
+ def entries(self) -> Relocation.it_entries: ...
710
+
711
+ def add_entry(self, new_entry: RelocationEntry) -> RelocationEntry: ...
712
+
713
+ def copy(self) -> Relocation: ...
714
+
715
+ def __str__(self) -> str: ...
716
+
717
+ class RelocationEntry(lief.Relocation):
718
+ @overload
719
+ def __init__(self) -> None: ...
720
+
721
+ @overload
722
+ def __init__(self, arg0: int, arg1: RelocationEntry.BASE_TYPES, /) -> None: ...
723
+
724
+ class BASE_TYPES(enum.Enum):
725
+ @staticmethod
726
+ def from_value(arg: int, /) -> RelocationEntry.BASE_TYPES: ...
727
+
728
+ def __eq__(self, arg, /) -> bool: ...
729
+
730
+ def __ne__(self, arg, /) -> bool: ...
731
+
732
+ def __int__(self) -> int: ...
733
+
734
+ UNKNOWN = -1
735
+
736
+ ABS = 0
737
+
738
+ HIGH = 1
739
+
740
+ LOW = 2
741
+
742
+ HIGHLOW = 3
743
+
744
+ HIGHADJ = 4
745
+
746
+ MIPS_JMPADDR = 261
747
+
748
+ ARM_MOV32 = 517
749
+
750
+ RISCV_HI20 = 1029
751
+
752
+ SECTION = 6
753
+
754
+ THUMB_MOV32 = 2055
755
+
756
+ RISCV_LOW12I = 4103
757
+
758
+ RISCV_LOW12S = 8200
759
+
760
+ MIPS_JMPADDR16 = 9
761
+
762
+ DIR64 = 10
763
+
764
+ HIGH3ADJ = 11
765
+
766
+ @property
767
+ def data(self) -> int: ...
768
+
769
+ position: int
770
+
771
+ type: RelocationEntry.BASE_TYPES
772
+
773
+ def __str__(self) -> str: ...
774
+
775
+ class Export(lief.Object):
776
+ @overload
777
+ def __init__(self) -> None: ...
778
+
779
+ @overload
780
+ def __init__(self, name: str, entries: Sequence[ExportEntry]) -> None: ...
781
+
782
+ class it_entries:
783
+ def __getitem__(self, arg: int, /) -> ExportEntry: ...
784
+
785
+ def __len__(self) -> int: ...
786
+
787
+ def __iter__(self) -> Export.it_entries: ...
788
+
789
+ def __next__(self) -> ExportEntry: ...
790
+
791
+ name: Union[str, bytes]
792
+
793
+ export_flags: int
794
+
795
+ timestamp: int
796
+
797
+ major_version: int
798
+
799
+ minor_version: int
800
+
801
+ ordinal_base: int
802
+
803
+ @property
804
+ def entries(self) -> Export.it_entries: ...
805
+
806
+ @property
807
+ def name_rva(self) -> int: ...
808
+
809
+ @property
810
+ def export_addr_table_rva(self) -> int: ...
811
+
812
+ @property
813
+ def export_addr_table_cnt(self) -> int: ...
814
+
815
+ @property
816
+ def names_addr_table_rva(self) -> int: ...
817
+
818
+ @property
819
+ def names_addr_table_cnt(self) -> int: ...
820
+
821
+ @property
822
+ def ord_addr_table_rva(self) -> int: ...
823
+
824
+ @overload
825
+ def find_entry(self, name: str) -> ExportEntry: ...
826
+
827
+ @overload
828
+ def find_entry(self, ordinal: int) -> ExportEntry: ...
829
+
830
+ def find_entry_at(self, rva_addr: int) -> ExportEntry: ...
831
+
832
+ @overload
833
+ def add_entry(self, exp: ExportEntry) -> ExportEntry: ...
834
+
835
+ @overload
836
+ def add_entry(self, name: str, addr: int) -> ExportEntry: ...
837
+
838
+ @overload
839
+ def remove_entry(self, entry: ExportEntry) -> bool: ...
840
+
841
+ @overload
842
+ def remove_entry(self, name: str) -> bool: ...
843
+
844
+ @overload
845
+ def remove_entry(self, rva: int) -> bool: ...
846
+
847
+ def copy(self) -> Export: ...
848
+
849
+ def __str__(self) -> str: ...
850
+
851
+ class ExportEntry(lief.Symbol):
852
+ @overload
853
+ def __init__(self) -> None: ...
854
+
855
+ @overload
856
+ def __init__(self, name: str, addr: int) -> None: ...
857
+
858
+ class forward_information_t:
859
+ library: str
860
+
861
+ function: str
862
+
863
+ def __str__(self) -> str: ...
864
+
865
+ name: Union[str, bytes]
866
+
867
+ ordinal: int
868
+
869
+ address: int
870
+
871
+ is_extern: bool
872
+
873
+ @property
874
+ def is_forwarded(self) -> bool: ...
875
+
876
+ @property
877
+ def forward_information(self) -> ExportEntry.forward_information_t: ...
878
+
879
+ @property
880
+ def function_rva(self) -> int: ...
881
+
882
+ @property
883
+ def demangled_name(self) -> str: ...
884
+
885
+ def set_forward_info(self, lib: str, function: str) -> None: ...
886
+
887
+ def __str__(self) -> str: ...
888
+
889
+ class TLS(lief.Object):
890
+ def __init__(self) -> None: ...
891
+
892
+ callbacks: list[int]
893
+
894
+ addressof_index: int
895
+
896
+ addressof_callbacks: int
897
+
898
+ sizeof_zero_fill: int
899
+
900
+ characteristics: int
901
+
902
+ addressof_raw_data: tuple[int, int]
903
+
904
+ data_template: memoryview
905
+
906
+ @property
907
+ def has_section(self) -> bool: ...
908
+
909
+ @property
910
+ def has_data_directory(self) -> bool: ...
911
+
912
+ @property
913
+ def directory(self) -> DataDirectory: ...
914
+
915
+ @property
916
+ def section(self) -> Section: ...
917
+
918
+ def add_callback(self, addr: int) -> TLS: ...
919
+
920
+ def copy(self) -> TLS: ...
921
+
922
+ def __str__(self) -> str: ...
923
+
924
+ class Import(lief.Object):
925
+ @overload
926
+ def __init__(self) -> None: ...
927
+
928
+ @overload
929
+ def __init__(self, library_name: str) -> None: ...
930
+
931
+ class it_entries:
932
+ def __getitem__(self, arg: int, /) -> ImportEntry: ...
933
+
934
+ def __len__(self) -> int: ...
935
+
936
+ def __iter__(self) -> Import.it_entries: ...
937
+
938
+ def __next__(self) -> ImportEntry: ...
939
+
940
+ @property
941
+ def forwarder_chain(self) -> int: ...
942
+
943
+ @property
944
+ def timedatestamp(self) -> int: ...
945
+
946
+ @property
947
+ def entries(self) -> Import.it_entries: ...
948
+
949
+ name: Union[str, bytes]
950
+
951
+ @property
952
+ def directory(self) -> DataDirectory: ...
953
+
954
+ @property
955
+ def iat_directory(self) -> DataDirectory: ...
956
+
957
+ import_address_table_rva: int
958
+
959
+ import_lookup_table_rva: int
960
+
961
+ def get_function_rva_from_iat(self, function_name: str) -> Union[int, lief.lief_errors]: ...
962
+
963
+ @overload
964
+ def add_entry(self, entry: ImportEntry) -> ImportEntry: ...
965
+
966
+ @overload
967
+ def add_entry(self, function_name: str) -> ImportEntry: ...
968
+
969
+ def get_entry(self, function_name: str) -> ImportEntry: ...
970
+
971
+ @property
972
+ def name_rva(self) -> int: ...
973
+
974
+ @overload
975
+ def remove_entry(self, name: str) -> bool: ...
976
+
977
+ @overload
978
+ def remove_entry(self, ord: int) -> bool: ...
979
+
980
+ def __str__(self) -> str: ...
981
+
982
+ class ImportEntry(lief.Symbol):
983
+ @overload
984
+ def __init__(self) -> None: ...
985
+
986
+ @overload
987
+ def __init__(self, import_name: str) -> None: ...
988
+
989
+ @overload
990
+ def __init__(self, data: int, type: PE_TYPE) -> None: ...
991
+
992
+ name: Union[str, bytes]
993
+
994
+ data: int
995
+
996
+ @property
997
+ def demangled_name(self) -> str: ...
998
+
999
+ @property
1000
+ def is_ordinal(self) -> bool: ...
1001
+
1002
+ @property
1003
+ def ordinal(self) -> int: ...
1004
+
1005
+ @property
1006
+ def hint(self) -> int: ...
1007
+
1008
+ @property
1009
+ def iat_value(self) -> int: ...
1010
+
1011
+ @property
1012
+ def ilt_value(self) -> int: ...
1013
+
1014
+ @property
1015
+ def iat_address(self) -> int: ...
1016
+
1017
+ def copy(self) -> ImportEntry: ...
1018
+
1019
+ def __str__(self) -> str: ...
1020
+
1021
+ class DelayImport(lief.Object):
1022
+ def __init__(self, library_name: str) -> None: ...
1023
+
1024
+ class it_entries:
1025
+ def __getitem__(self, arg: int, /) -> DelayImportEntry: ...
1026
+
1027
+ def __len__(self) -> int: ...
1028
+
1029
+ def __iter__(self) -> DelayImport.it_entries: ...
1030
+
1031
+ def __next__(self) -> DelayImportEntry: ...
1032
+
1033
+ @property
1034
+ def entries(self) -> DelayImport.it_entries: ...
1035
+
1036
+ name: Union[str, bytes]
1037
+
1038
+ attribute: int
1039
+
1040
+ handle: int
1041
+
1042
+ iat: int
1043
+
1044
+ names_table: int
1045
+
1046
+ biat: int
1047
+
1048
+ uiat: int
1049
+
1050
+ timestamp: int
1051
+
1052
+ def copy(self) -> DelayImport: ...
1053
+
1054
+ def __str__(self) -> str: ...
1055
+
1056
+ class DelayImportEntry(lief.Symbol):
1057
+ def __init__(self) -> None: ...
1058
+
1059
+ @property
1060
+ def demangled_name(self) -> str: ...
1061
+
1062
+ name: Union[str, bytes]
1063
+
1064
+ data: int
1065
+
1066
+ @property
1067
+ def is_ordinal(self) -> bool: ...
1068
+
1069
+ @property
1070
+ def ordinal(self) -> int: ...
1071
+
1072
+ @property
1073
+ def hint(self) -> int: ...
1074
+
1075
+ @property
1076
+ def iat_value(self) -> int: ...
1077
+
1078
+ def copy(self) -> DelayImportEntry: ...
1079
+
1080
+ def __str__(self) -> str: ...
1081
+
1082
+ class ExceptionInfo:
1083
+ class ARCH(enum.Enum):
1084
+ UNKNOWN = 0
1085
+
1086
+ ARM64 = 1
1087
+
1088
+ X86_64 = 2
1089
+
1090
+ @property
1091
+ def arch(self) -> ExceptionInfo.ARCH: ...
1092
+
1093
+ @property
1094
+ def rva_start(self) -> int: ...
1095
+
1096
+ @property
1097
+ def offset(self) -> int: ...
1098
+
1099
+ def copy(self) -> Optional[ExceptionInfo]: ...
1100
+
1101
+ def __str__(self) -> str: ...
1102
+
1103
+ class RuntimeFunctionX64(ExceptionInfo):
1104
+ class UNWIND_FLAGS(enum.Flag):
1105
+ @staticmethod
1106
+ def from_value(arg: int, /) -> RuntimeFunctionX64.UNWIND_FLAGS: ...
1107
+
1108
+ def __eq__(self, arg, /) -> bool: ...
1109
+
1110
+ def __ne__(self, arg, /) -> bool: ...
1111
+
1112
+ def __int__(self) -> int: ...
1113
+
1114
+ EXCEPTION_HANDLER = 1
1115
+
1116
+ TERMINATE_HANDLER = 2
1117
+
1118
+ CHAIN_INFO = 4
1119
+
1120
+ class UNWIND_OPCODES(enum.Enum):
1121
+ @staticmethod
1122
+ def from_value(arg: int, /) -> RuntimeFunctionX64.UNWIND_OPCODES: ...
1123
+
1124
+ def __eq__(self, arg, /) -> bool: ...
1125
+
1126
+ def __ne__(self, arg, /) -> bool: ...
1127
+
1128
+ def __int__(self) -> int: ...
1129
+
1130
+ PUSH_NONVOL = 0
1131
+
1132
+ ALLOC_LARGE = 1
1133
+
1134
+ ALLOC_SMALL = 2
1135
+
1136
+ SET_FPREG = 3
1137
+
1138
+ SAVE_NONVOL = 4
1139
+
1140
+ SAVE_NONVOL_FAR = 5
1141
+
1142
+ SAVE_XMM128 = 8
1143
+
1144
+ SAVE_XMM128_FAR = 9
1145
+
1146
+ PUSH_MACHFRAME = 10
1147
+
1148
+ EPILOG = 6
1149
+
1150
+ SPARE = 7
1151
+
1152
+ class UNWIND_REG(enum.Enum):
1153
+ @staticmethod
1154
+ def from_value(arg: int, /) -> RuntimeFunctionX64.UNWIND_REG: ...
1155
+
1156
+ def __eq__(self, arg, /) -> bool: ...
1157
+
1158
+ def __ne__(self, arg, /) -> bool: ...
1159
+
1160
+ def __int__(self) -> int: ...
1161
+
1162
+ RAX = 0
1163
+
1164
+ RCX = 1
1165
+
1166
+ RDX = 2
1167
+
1168
+ RBX = 3
1169
+
1170
+ RSP = 4
1171
+
1172
+ RBP = 5
1173
+
1174
+ RSI = 6
1175
+
1176
+ RDI = 7
1177
+
1178
+ R8 = 8
1179
+
1180
+ R9 = 9
1181
+
1182
+ R10 = 10
1183
+
1184
+ R11 = 11
1185
+
1186
+ R12 = 12
1187
+
1188
+ R13 = 13
1189
+
1190
+ R14 = 14
1191
+
1192
+ R15 = 15
1193
+
1194
+ class unwind_info_t:
1195
+ version: int
1196
+
1197
+ flags: int
1198
+
1199
+ sizeof_prologue: int
1200
+
1201
+ count_opcodes: int
1202
+
1203
+ frame_reg: int
1204
+
1205
+ frame_reg_offset: int
1206
+
1207
+ raw_opcodes: list[int]
1208
+
1209
+ handler: int | None
1210
+
1211
+ chained: RuntimeFunctionX64
1212
+
1213
+ def has(self, arg: RuntimeFunctionX64.UNWIND_FLAGS, /) -> bool: ...
1214
+
1215
+ @property
1216
+ def opcodes(self) -> list[Optional[unwind_x64.Code]]: ...
1217
+
1218
+ def __str__(self) -> str: ...
1219
+
1220
+ @property
1221
+ def rva_end(self) -> int: ...
1222
+
1223
+ @property
1224
+ def unwind_rva(self) -> int: ...
1225
+
1226
+ @property
1227
+ def size(self) -> int: ...
1228
+
1229
+ @property
1230
+ def unwind_info(self) -> RuntimeFunctionX64.unwind_info_t: ...
1231
+
1232
+ class RuntimeFunctionAArch64(ExceptionInfo):
1233
+ class PACKED_FLAGS(enum.Enum):
1234
+ UNPACKED = 0
1235
+
1236
+ PACKED = 1
1237
+
1238
+ PACKED_FRAGMENT = 2
1239
+
1240
+ RESERVED = 3
1241
+
1242
+ @property
1243
+ def length(self) -> int: ...
1244
+
1245
+ @property
1246
+ def flag(self) -> RuntimeFunctionAArch64.PACKED_FLAGS: ...
1247
+
1248
+ @property
1249
+ def rva_end(self) -> int: ...
1250
+
1251
+ class Debug(lief.Object):
1252
+ def __init__(self) -> None: ...
1253
+
1254
+ class TYPES(enum.Enum):
1255
+ @staticmethod
1256
+ def from_value(arg: int, /) -> Debug.TYPES: ...
1257
+
1258
+ def __eq__(self, arg, /) -> bool: ...
1259
+
1260
+ def __ne__(self, arg, /) -> bool: ...
1261
+
1262
+ def __int__(self) -> int: ...
1263
+
1264
+ UNKNOWN = 0
1265
+
1266
+ COFF = 1
1267
+
1268
+ CODEVIEW = 2
1269
+
1270
+ FPO = 3
1271
+
1272
+ MISC = 4
1273
+
1274
+ EXCEPTION = 5
1275
+
1276
+ FIXUP = 6
1277
+
1278
+ OMAP_TO_SRC = 7
1279
+
1280
+ OMAP_FROM_SRC = 8
1281
+
1282
+ BORLAND = 9
1283
+
1284
+ RESERVED10 = 10
1285
+
1286
+ CLSID = 11
1287
+
1288
+ VC_FEATURE = 12
1289
+
1290
+ POGO = 13
1291
+
1292
+ ILTCG = 14
1293
+
1294
+ MPX = 15
1295
+
1296
+ REPRO = 16
1297
+
1298
+ PDBCHECKSUM = 19
1299
+
1300
+ EX_DLLCHARACTERISTICS = 20
1301
+
1302
+ characteristics: int
1303
+
1304
+ timestamp: int
1305
+
1306
+ major_version: int
1307
+
1308
+ minor_version: int
1309
+
1310
+ @property
1311
+ def type(self) -> Debug.TYPES: ...
1312
+
1313
+ sizeof_data: int
1314
+
1315
+ addressof_rawdata: int
1316
+
1317
+ pointerto_rawdata: int
1318
+
1319
+ @property
1320
+ def section(self) -> Section: ...
1321
+
1322
+ @property
1323
+ def payload(self) -> memoryview: ...
1324
+
1325
+ def copy(self) -> Optional[Debug]: ...
1326
+
1327
+ def __str__(self) -> str: ...
1328
+
1329
+ class CodeView(Debug):
1330
+ @overload
1331
+ def __init__(self) -> None: ...
1332
+
1333
+ @overload
1334
+ def __init__(self, arg: CodeView.SIGNATURES, /) -> None: ...
1335
+
1336
+ class SIGNATURES(enum.Enum):
1337
+ @staticmethod
1338
+ def from_value(arg: int, /) -> CodeView.SIGNATURES: ...
1339
+
1340
+ def __eq__(self, arg, /) -> bool: ...
1341
+
1342
+ def __ne__(self, arg, /) -> bool: ...
1343
+
1344
+ def __int__(self) -> int: ...
1345
+
1346
+ UNKNOWN = 0
1347
+
1348
+ PDB_70 = 1396986706
1349
+
1350
+ PDB_20 = 808534606
1351
+
1352
+ CV_50 = 825311822
1353
+
1354
+ CV_41 = 959464014
1355
+
1356
+ @property
1357
+ def cv_signature(self) -> CodeView.SIGNATURES: ...
1358
+
1359
+ def __str__(self) -> str: ...
1360
+
1361
+ class CodeViewPDB(CodeView):
1362
+ @overload
1363
+ def __init__(self) -> None: ...
1364
+
1365
+ @overload
1366
+ def __init__(self, filename: str) -> None: ...
1367
+
1368
+ @property
1369
+ def parent(self) -> lief.PE.CodeView: ...
1370
+
1371
+ @property
1372
+ def guid(self) -> str: ...
1373
+
1374
+ signature: list[int]
1375
+
1376
+ age: int
1377
+
1378
+ filename: Union[str, bytes]
1379
+
1380
+ def __str__(self) -> str: ...
1381
+
1382
+ class Repro(Debug):
1383
+ hash: memoryview
1384
+
1385
+ def __str__(self) -> str: ...
1386
+
1387
+ class Pogo(Debug):
1388
+ def __init__(self) -> None: ...
1389
+
1390
+ class it_entries:
1391
+ def __getitem__(self, arg: int, /) -> PogoEntry: ...
1392
+
1393
+ def __len__(self) -> int: ...
1394
+
1395
+ def __iter__(self) -> Pogo.it_entries: ...
1396
+
1397
+ def __next__(self) -> PogoEntry: ...
1398
+
1399
+ class SIGNATURES(enum.Enum):
1400
+ @staticmethod
1401
+ def from_value(arg: int, /) -> Pogo.SIGNATURES: ...
1402
+
1403
+ def __eq__(self, arg, /) -> bool: ...
1404
+
1405
+ def __ne__(self, arg, /) -> bool: ...
1406
+
1407
+ def __int__(self) -> int: ...
1408
+
1409
+ UNKNOWN = 268435455
1410
+
1411
+ ZERO = 0
1412
+
1413
+ LCTG = 1280590663
1414
+
1415
+ PGI = 1346849024
1416
+
1417
+ @property
1418
+ def entries(self) -> Pogo.it_entries: ...
1419
+
1420
+ @property
1421
+ def signature(self) -> Pogo.SIGNATURES: ...
1422
+
1423
+ def __str__(self) -> str: ...
1424
+
1425
+ class PogoEntry(lief.Object):
1426
+ def __init__(self) -> None: ...
1427
+
1428
+ name: Union[str, bytes]
1429
+
1430
+ start_rva: int
1431
+
1432
+ size: int
1433
+
1434
+ def copy(self) -> PogoEntry: ...
1435
+
1436
+ def __str__(self) -> str: ...
1437
+
1438
+ class PDBChecksum(Debug):
1439
+ def __init__(self, algo: PDBChecksum.HASH_ALGO, hash: Sequence[int]) -> None: ...
1440
+
1441
+ class HASH_ALGO(enum.Enum):
1442
+ UNKNOWN = 0
1443
+
1444
+ SHA256 = 1
1445
+
1446
+ hash: memoryview
1447
+
1448
+ algorithm: PDBChecksum.HASH_ALGO
1449
+
1450
+ def __str__(self) -> str: ...
1451
+
1452
+ class VCFeature(Debug):
1453
+ pre_vcpp: int
1454
+
1455
+ c_cpp: int
1456
+
1457
+ gs: int
1458
+
1459
+ sdl: int
1460
+
1461
+ guards: int
1462
+
1463
+ class ExDllCharacteristics(Debug):
1464
+ class CHARACTERISTICS(enum.Flag):
1465
+ @staticmethod
1466
+ def from_value(arg: int, /) -> ExDllCharacteristics.CHARACTERISTICS: ...
1467
+
1468
+ def __eq__(self, arg, /) -> bool: ...
1469
+
1470
+ def __ne__(self, arg, /) -> bool: ...
1471
+
1472
+ def __int__(self) -> int: ...
1473
+
1474
+ CET_COMPAT = 1
1475
+
1476
+ CET_COMPAT_STRICT_MODE = 2
1477
+
1478
+ CET_SET_CONTEXT_IP_VALIDATION_RELAXED_MODE = 4
1479
+
1480
+ CET_DYNAMIC_APIS_ALLOW_IN_PROC = 8
1481
+
1482
+ CET_RESERVED_1 = 16
1483
+
1484
+ CET_RESERVED_2 = 32
1485
+
1486
+ FORWARD_CFI_COMPAT = 64
1487
+
1488
+ HOTPATCH_COMPATIBLE = 128
1489
+
1490
+ def has(self, characteristic: ExDllCharacteristics.CHARACTERISTICS) -> bool: ...
1491
+
1492
+ @property
1493
+ def ex_characteristics(self) -> ExDllCharacteristics.CHARACTERISTICS: ...
1494
+
1495
+ @property
1496
+ def ex_characteristics_list(self) -> list[ExDllCharacteristics.CHARACTERISTICS]: ...
1497
+
1498
+ class FPO(Debug):
1499
+ class FRAME_TYPE(enum.Enum):
1500
+ @staticmethod
1501
+ def from_value(arg: int, /) -> FPO.FRAME_TYPE: ...
1502
+
1503
+ def __eq__(self, arg, /) -> bool: ...
1504
+
1505
+ def __ne__(self, arg, /) -> bool: ...
1506
+
1507
+ def __int__(self) -> int: ...
1508
+
1509
+ FPO = 0
1510
+
1511
+ TRAP = 1
1512
+
1513
+ TSS = 2
1514
+
1515
+ NON_FPO = 3
1516
+
1517
+ class entry_t:
1518
+ rva: int
1519
+
1520
+ proc_size: int
1521
+
1522
+ nb_locals: int
1523
+
1524
+ parameters_size: int
1525
+
1526
+ prolog_size: int
1527
+
1528
+ nb_saved_regs: int
1529
+
1530
+ use_seh: bool
1531
+
1532
+ use_bp: bool
1533
+
1534
+ reserved: int
1535
+
1536
+ type: FPO.FRAME_TYPE
1537
+
1538
+ def __str__(self) -> str: ...
1539
+
1540
+ class it_entries:
1541
+ def __getitem__(self, arg: int, /) -> FPO.entry_t: ...
1542
+
1543
+ def __len__(self) -> int: ...
1544
+
1545
+ def __iter__(self) -> FPO.it_entries: ...
1546
+
1547
+ def __next__(self) -> FPO.entry_t: ...
1548
+
1549
+ @property
1550
+ def entries(self) -> FPO.it_entries: ...
1551
+
1552
+ class ResourcesManager(lief.Object):
1553
+ def __init__(self, node: ResourceNode) -> None: ...
1554
+
1555
+ class it_const_dialogs:
1556
+ def __getitem__(self, arg: int, /) -> ResourceDialog: ...
1557
+
1558
+ def __len__(self) -> int: ...
1559
+
1560
+ def __iter__(self) -> ResourcesManager.it_const_dialogs: ...
1561
+
1562
+ def __next__(self) -> ResourceDialog: ...
1563
+
1564
+ class it_const_icons:
1565
+ def __getitem__(self, arg: int, /) -> ResourceIcon: ...
1566
+
1567
+ def __len__(self) -> int: ...
1568
+
1569
+ def __iter__(self) -> ResourcesManager.it_const_icons: ...
1570
+
1571
+ def __next__(self) -> ResourceIcon: ...
1572
+
1573
+ class it_const_accelerators:
1574
+ def __getitem__(self, arg: int, /) -> ResourceAccelerator: ...
1575
+
1576
+ def __len__(self) -> int: ...
1577
+
1578
+ def __iter__(self) -> ResourcesManager.it_const_accelerators: ...
1579
+
1580
+ def __next__(self) -> ResourceAccelerator: ...
1581
+
1582
+ class string_entry_t:
1583
+ string: str
1584
+
1585
+ id: int
1586
+
1587
+ def __str__(self) -> str: ...
1588
+
1589
+ class TYPE(enum.Enum):
1590
+ @staticmethod
1591
+ def from_value(arg: int, /) -> ResourcesManager.TYPE: ...
1592
+
1593
+ def __eq__(self, arg, /) -> bool: ...
1594
+
1595
+ def __ne__(self, arg, /) -> bool: ...
1596
+
1597
+ def __int__(self) -> int: ...
1598
+
1599
+ CURSOR = 1
1600
+
1601
+ BITMAP = 2
1602
+
1603
+ ICON = 3
1604
+
1605
+ MENU = 4
1606
+
1607
+ DIALOG = 5
1608
+
1609
+ STRING = 6
1610
+
1611
+ FONTDIR = 7
1612
+
1613
+ FONT = 8
1614
+
1615
+ ACCELERATOR = 9
1616
+
1617
+ RCDATA = 10
1618
+
1619
+ MESSAGETABLE = 11
1620
+
1621
+ GROUP_CURSOR = 12
1622
+
1623
+ GROUP_ICON = 14
1624
+
1625
+ VERSION = 16
1626
+
1627
+ DLGINCLUDE = 17
1628
+
1629
+ PLUGPLAY = 19
1630
+
1631
+ VXD = 20
1632
+
1633
+ ANICURSOR = 21
1634
+
1635
+ ANIICON = 22
1636
+
1637
+ HTML = 23
1638
+
1639
+ MANIFEST = 24
1640
+
1641
+ @property
1642
+ def has_manifest(self) -> bool: ...
1643
+
1644
+ manifest: Union[str, bytes]
1645
+
1646
+ @property
1647
+ def has_version(self) -> bool: ...
1648
+
1649
+ @property
1650
+ def version(self) -> list[ResourceVersion]: ...
1651
+
1652
+ @property
1653
+ def has_icons(self) -> bool: ...
1654
+
1655
+ @property
1656
+ def icons(self) -> ResourcesManager.it_const_icons: ...
1657
+
1658
+ def change_icon(self, old_one: ResourceIcon, new_one: ResourceIcon) -> None: ...
1659
+
1660
+ @property
1661
+ def has_dialogs(self) -> bool: ...
1662
+
1663
+ @property
1664
+ def dialogs(self) -> ResourcesManager.it_const_dialogs: ...
1665
+
1666
+ @property
1667
+ def types(self) -> list[ResourcesManager.TYPE]: ...
1668
+
1669
+ def add_icon(self, icon: ResourceIcon) -> None: ...
1670
+
1671
+ def has_type(self, type: ResourcesManager.TYPE) -> bool: ...
1672
+
1673
+ @property
1674
+ def has_string_table(self) -> bool: ...
1675
+
1676
+ @property
1677
+ def string_table(self) -> list[ResourcesManager.string_entry_t]: ...
1678
+
1679
+ @property
1680
+ def has_html(self) -> bool: ...
1681
+
1682
+ @property
1683
+ def html(self) -> list[str]: ...
1684
+
1685
+ @property
1686
+ def has_accelerator(self) -> bool: ...
1687
+
1688
+ @property
1689
+ def accelerator(self) -> ResourcesManager.it_const_accelerators: ...
1690
+
1691
+ def get_node_type(self, type: ResourcesManager.TYPE) -> ResourceNode: ...
1692
+
1693
+ def print(self, max_depth: int = 0) -> str: ...
1694
+
1695
+ def __str__(self) -> str: ...
1696
+
1697
+ class ResourceNode(lief.Object):
1698
+ class it_childs:
1699
+ def __getitem__(self, arg: int, /) -> ResourceNode: ...
1700
+
1701
+ def __len__(self) -> int: ...
1702
+
1703
+ def __iter__(self) -> ResourceNode.it_childs: ...
1704
+
1705
+ def __next__(self) -> ResourceNode: ...
1706
+
1707
+ @staticmethod
1708
+ def parse(bytes: bytes, rva: int) -> Optional[ResourceNode]: ...
1709
+
1710
+ id: int
1711
+
1712
+ @property
1713
+ def is_directory(self) -> bool: ...
1714
+
1715
+ @property
1716
+ def is_data(self) -> bool: ...
1717
+
1718
+ @property
1719
+ def has_name(self) -> bool: ...
1720
+
1721
+ name: str
1722
+
1723
+ @property
1724
+ def childs(self) -> ResourceNode.it_childs: ...
1725
+
1726
+ def add_child(self, node: ResourceNode) -> ResourceNode: ...
1727
+
1728
+ @overload
1729
+ def delete_child(self, node: ResourceNode) -> None: ...
1730
+
1731
+ @overload
1732
+ def delete_child(self, id: int) -> None: ...
1733
+
1734
+ @property
1735
+ def depth(self) -> int: ...
1736
+
1737
+ def __eq__(self, arg, /) -> bool: ...
1738
+
1739
+ def __ne__(self, arg, /) -> bool: ...
1740
+
1741
+ def copy(self) -> Optional[ResourceNode]: ...
1742
+
1743
+ def __str__(self) -> str: ...
1744
+
1745
+ class ResourceData(ResourceNode):
1746
+ @overload
1747
+ def __init__(self) -> None: ...
1748
+
1749
+ @overload
1750
+ def __init__(self, content: Sequence[int], code_page: int = 0) -> None: ...
1751
+
1752
+ code_page: int
1753
+
1754
+ content: memoryview
1755
+
1756
+ reserved: int
1757
+
1758
+ @property
1759
+ def offset(self) -> int: ...
1760
+
1761
+ def __str__(self) -> str: ...
1762
+
1763
+ class ResourceDirectory(ResourceNode):
1764
+ @overload
1765
+ def __init__(self) -> None: ...
1766
+
1767
+ @overload
1768
+ def __init__(self, arg: int, /) -> None: ...
1769
+
1770
+ characteristics: int
1771
+
1772
+ time_date_stamp: int
1773
+
1774
+ major_version: int
1775
+
1776
+ minor_version: int
1777
+
1778
+ numberof_name_entries: int
1779
+
1780
+ numberof_id_entries: int
1781
+
1782
+ def __str__(self) -> str: ...
1783
+
1784
+ class ResourceVersion(lief.Object):
1785
+ class fixed_file_info_t:
1786
+ class VERSION_OS(enum.Enum):
1787
+ DOS_WINDOWS16 = 65537
1788
+
1789
+ DOS_WINDOWS32 = 65540
1790
+
1791
+ NT = 262144
1792
+
1793
+ NT_WINDOWS32 = 262148
1794
+
1795
+ OS216 = 131072
1796
+
1797
+ OS216_PM16 = 131074
1798
+
1799
+ OS232 = 196608
1800
+
1801
+ OS232_PM32 = 196611
1802
+
1803
+ PM16 = 2
1804
+
1805
+ PM32 = 3
1806
+
1807
+ UNKNOWN = 0
1808
+
1809
+ WINCE = 327680
1810
+
1811
+ WINDOWS16 = 1
1812
+
1813
+ WINDOWS32 = 4
1814
+
1815
+ class FILE_TYPE(enum.Enum):
1816
+ UNKNOWN = 0
1817
+
1818
+ APP = 1
1819
+
1820
+ DLL = 2
1821
+
1822
+ DRV = 3
1823
+
1824
+ FONT = 4
1825
+
1826
+ STATIC_LIB = 7
1827
+
1828
+ VXD = 5
1829
+
1830
+ class FILE_FLAGS(enum.Enum):
1831
+ DEBUG = 1
1832
+
1833
+ INFO_INFERRED = 16
1834
+
1835
+ PATCHED = 4
1836
+
1837
+ PRERELEASE = 2
1838
+
1839
+ PRIVATEBUILD = 8
1840
+
1841
+ SPECIALBUILD = 32
1842
+
1843
+ class FILE_TYPE_DETAILS(enum.Enum):
1844
+ DRV_COMM = 8589934602
1845
+
1846
+ DRV_DISPLAY = 8589934596
1847
+
1848
+ DRV_INPUTMETHOD = 8589934603
1849
+
1850
+ DRV_INSTALLABLE = 8589934600
1851
+
1852
+ DRV_KEYBOARD = 8589934594
1853
+
1854
+ DRV_LANGUAGE = 8589934595
1855
+
1856
+ DRV_MOUSE = 8589934597
1857
+
1858
+ DRV_NETWORK = 8589934598
1859
+
1860
+ DRV_PRINTER = 8589934593
1861
+
1862
+ DRV_SOUND = 8589934601
1863
+
1864
+ DRV_SYSTEM = 8589934599
1865
+
1866
+ DRV_VERSIONED_PRINTER = 12
1867
+
1868
+ FONT_RASTER = 17179869185
1869
+
1870
+ FONT_TRUETYPE = 17179869187
1871
+
1872
+ FONT_VECTOR = 17179869186
1873
+
1874
+ UNKNOWN = 0
1875
+
1876
+ signature: int
1877
+
1878
+ struct_version: int
1879
+
1880
+ file_version_ms: int
1881
+
1882
+ file_version_ls: int
1883
+
1884
+ product_version_ms: int
1885
+
1886
+ product_version_ls: int
1887
+
1888
+ file_flags_mask: int
1889
+
1890
+ file_flags: int
1891
+
1892
+ file_os: int
1893
+
1894
+ file_type: int
1895
+
1896
+ file_subtype: int
1897
+
1898
+ file_date_ms: int
1899
+
1900
+ file_date_ls: int
1901
+
1902
+ def has(self, flag: ResourceVersion.fixed_file_info_t.FILE_FLAGS) -> bool: ...
1903
+
1904
+ @property
1905
+ def flags(self) -> list[ResourceVersion.fixed_file_info_t.FILE_FLAGS]: ...
1906
+
1907
+ @property
1908
+ def file_type_details(self) -> ResourceVersion.fixed_file_info_t.FILE_TYPE_DETAILS: ...
1909
+
1910
+ def __str__(self) -> str: ...
1911
+
1912
+ @property
1913
+ def key(self) -> str: ...
1914
+
1915
+ @property
1916
+ def type(self) -> int: ...
1917
+
1918
+ @property
1919
+ def file_info(self) -> ResourceVersion.fixed_file_info_t: ...
1920
+
1921
+ @property
1922
+ def string_file_info(self) -> ResourceStringFileInfo: ...
1923
+
1924
+ @property
1925
+ def var_file_info(self) -> ResourceVarFileInfo: ...
1926
+
1927
+ def __str__(self) -> str: ...
1928
+
1929
+ class ResourceStringTable(lief.Object):
1930
+ class it_entries:
1931
+ def __getitem__(self, arg: int, /) -> ResourceStringTable.entry_t: ...
1932
+
1933
+ def __len__(self) -> int: ...
1934
+
1935
+ def __iter__(self) -> ResourceStringTable.it_entries: ...
1936
+
1937
+ def __next__(self) -> ResourceStringTable.entry_t: ...
1938
+
1939
+ class entry_t:
1940
+ key: str
1941
+
1942
+ value: str
1943
+
1944
+ def __bool__(self) -> bool: ...
1945
+
1946
+ @property
1947
+ def key(self) -> str: ...
1948
+
1949
+ @property
1950
+ def type(self) -> int: ...
1951
+
1952
+ @property
1953
+ def entries(self) -> ResourceStringTable.it_entries: ...
1954
+
1955
+ def get(self, key: str) -> str | None: ...
1956
+
1957
+ def __getitem__(self, arg: str, /) -> str | None: ...
1958
+
1959
+ class ResourceStringFileInfo(lief.Object):
1960
+ class it_elements:
1961
+ def __getitem__(self, arg: int, /) -> ResourceStringTable: ...
1962
+
1963
+ def __len__(self) -> int: ...
1964
+
1965
+ def __iter__(self) -> ResourceStringFileInfo.it_elements: ...
1966
+
1967
+ def __next__(self) -> ResourceStringTable: ...
1968
+
1969
+ @property
1970
+ def type(self) -> int: ...
1971
+
1972
+ @property
1973
+ def key(self) -> str: ...
1974
+
1975
+ @property
1976
+ def children(self) -> ResourceStringFileInfo.it_elements: ...
1977
+
1978
+ def __str__(self) -> str: ...
1979
+
1980
+ class ResourceVar:
1981
+ @property
1982
+ def type(self) -> int: ...
1983
+
1984
+ @property
1985
+ def key(self) -> str: ...
1986
+
1987
+ @property
1988
+ def values(self) -> list[int]: ...
1989
+
1990
+ def __str__(self) -> str: ...
1991
+
1992
+ class ResourceVarFileInfo(lief.Object):
1993
+ class it_vars:
1994
+ def __getitem__(self, arg: int, /) -> ResourceVar: ...
1995
+
1996
+ def __len__(self) -> int: ...
1997
+
1998
+ def __iter__(self) -> ResourceVarFileInfo.it_vars: ...
1999
+
2000
+ def __next__(self) -> ResourceVar: ...
2001
+
2002
+ @property
2003
+ def type(self) -> int: ...
2004
+
2005
+ @property
2006
+ def key(self) -> str: ...
2007
+
2008
+ @property
2009
+ def vars(self) -> ResourceVarFileInfo.it_vars: ...
2010
+
2011
+ def __str__(self) -> str: ...
2012
+
2013
+ class ResourceIcon(lief.Object):
2014
+ id: int
2015
+
2016
+ lang: int
2017
+
2018
+ sublang: int
2019
+
2020
+ width: int
2021
+
2022
+ height: int
2023
+
2024
+ color_count: int
2025
+
2026
+ reserved: int
2027
+
2028
+ planes: int
2029
+
2030
+ bit_count: int
2031
+
2032
+ pixels: memoryview
2033
+
2034
+ def save(self, filepath: str) -> None: ...
2035
+
2036
+ def serialize(self) -> bytes: ...
2037
+
2038
+ @staticmethod
2039
+ def from_serialization(arg: bytes, /) -> Union[ResourceIcon, lief.lief_errors]: ...
2040
+
2041
+ def __str__(self) -> str: ...
2042
+
2043
+ class ResourceDialog(lief.Object):
2044
+ class DIALOG_STYLES(enum.Flag):
2045
+ @staticmethod
2046
+ def from_value(arg: int, /) -> ResourceDialog.DIALOG_STYLES: ...
2047
+
2048
+ def __eq__(self, arg, /) -> bool: ...
2049
+
2050
+ def __ne__(self, arg, /) -> bool: ...
2051
+
2052
+ def __int__(self) -> int: ...
2053
+
2054
+ ABSALIGN = 1
2055
+
2056
+ SYSMODAL = 2
2057
+
2058
+ LOCALEDIT = 32
2059
+
2060
+ SETFONT = 64
2061
+
2062
+ MODALFRAME = 128
2063
+
2064
+ NOIDLEMSG = 256
2065
+
2066
+ SETFOREGROUND = 512
2067
+
2068
+ S3DLOOK = 4
2069
+
2070
+ FIXEDSYS = 8
2071
+
2072
+ NOFAILCREATE = 16
2073
+
2074
+ CONTROL = 1024
2075
+
2076
+ CENTER = 2048
2077
+
2078
+ CENTERMOUSE = 4096
2079
+
2080
+ CONTEXTHELP = 8192
2081
+
2082
+ SHELLFONT = 72
2083
+
2084
+ class WINDOW_STYLES(enum.Flag):
2085
+ @staticmethod
2086
+ def from_value(arg: int, /) -> ResourceDialog.WINDOW_STYLES: ...
2087
+
2088
+ def __eq__(self, arg, /) -> bool: ...
2089
+
2090
+ def __ne__(self, arg, /) -> bool: ...
2091
+
2092
+ def __int__(self) -> int: ...
2093
+
2094
+ OVERLAPPED = 0
2095
+
2096
+ POPUP = 2147483648
2097
+
2098
+ CHILD = 1073741824
2099
+
2100
+ MINIMIZE = 536870912
2101
+
2102
+ VISIBLE = 268435456
2103
+
2104
+ DISABLED = 134217728
2105
+
2106
+ CLIPSIBLINGS = 67108864
2107
+
2108
+ CLIPCHILDREN = 33554432
2109
+
2110
+ MAXIMIZE = 16777216
2111
+
2112
+ CAPTION = 12582912
2113
+
2114
+ BORDER = 8388608
2115
+
2116
+ DLGFRAME = 4194304
2117
+
2118
+ VSCROLL = 2097152
2119
+
2120
+ HSCROLL = 1048576
2121
+
2122
+ SYSMENU = 524288
2123
+
2124
+ THICKFRAME = 262144
2125
+
2126
+ GROUP = 131072
2127
+
2128
+ TABSTOP = 65536
2129
+
2130
+ class WINDOW_EXTENDED_STYLES(enum.Flag):
2131
+ @staticmethod
2132
+ def from_value(arg: int, /) -> ResourceDialog.WINDOW_EXTENDED_STYLES: ...
2133
+
2134
+ def __eq__(self, arg, /) -> bool: ...
2135
+
2136
+ def __ne__(self, arg, /) -> bool: ...
2137
+
2138
+ def __int__(self) -> int: ...
2139
+
2140
+ DLGMODALFRAME = 1
2141
+
2142
+ NOPARENTNOTIFY = 4
2143
+
2144
+ TOPMOST = 8
2145
+
2146
+ ACCEPTFILES = 16
2147
+
2148
+ TRANSPARENT_STY = 32
2149
+
2150
+ MDICHILD = 64
2151
+
2152
+ TOOLWINDOW = 128
2153
+
2154
+ WINDOWEDGE = 256
2155
+
2156
+ CLIENTEDGE = 512
2157
+
2158
+ CONTEXTHELP = 1024
2159
+
2160
+ RIGHT = 4096
2161
+
2162
+ LEFT = 0
2163
+
2164
+ RTLREADING = 8192
2165
+
2166
+ LEFTSCROLLBAR = 16384
2167
+
2168
+ CONTROLPARENT = 65536
2169
+
2170
+ STATICEDGE = 131072
2171
+
2172
+ APPWINDOW = 262144
2173
+
2174
+ class CONTROL_STYLES(enum.Flag):
2175
+ @staticmethod
2176
+ def from_value(arg: int, /) -> ResourceDialog.CONTROL_STYLES: ...
2177
+
2178
+ def __eq__(self, arg, /) -> bool: ...
2179
+
2180
+ def __ne__(self, arg, /) -> bool: ...
2181
+
2182
+ def __int__(self) -> int: ...
2183
+
2184
+ TOP = 1
2185
+
2186
+ NOMOVEY = 2
2187
+
2188
+ BOTTOM = 3
2189
+
2190
+ NORESIZE = 4
2191
+
2192
+ NOPARENTALIGN = 8
2193
+
2194
+ ADJUSTABLE = 32
2195
+
2196
+ NODIVIDER = 64
2197
+
2198
+ VERT = 128
2199
+
2200
+ LEFT = 129
2201
+
2202
+ RIGHT = 131
2203
+
2204
+ NOMOVEX = 130
2205
+
2206
+ class TYPE(enum.Enum):
2207
+ UNKNOWN = 0
2208
+
2209
+ REGULAR = 1
2210
+
2211
+ EXTENDED = 2
2212
+
2213
+ class Item:
2214
+ style: int
2215
+
2216
+ extended_style: int
2217
+
2218
+ id: int
2219
+
2220
+ x: int
2221
+
2222
+ y: int
2223
+
2224
+ cx: int
2225
+
2226
+ cy: int
2227
+
2228
+ @overload
2229
+ def has(self, style: ResourceDialog.WINDOW_STYLES) -> bool: ...
2230
+
2231
+ @overload
2232
+ def has(self, style: ResourceDialog.CONTROL_STYLES) -> bool: ...
2233
+
2234
+ @property
2235
+ def window_styles(self) -> list[ResourceDialog.WINDOW_STYLES]: ...
2236
+
2237
+ @property
2238
+ def control_styles(self) -> list[ResourceDialog.CONTROL_STYLES]: ...
2239
+
2240
+ @property
2241
+ def clazz(self) -> Optional[Union[int, str]]: ...
2242
+
2243
+ @property
2244
+ def title(self) -> Optional[Union[int, str]]: ...
2245
+
2246
+ @property
2247
+ def creation_data(self) -> memoryview: ...
2248
+
2249
+ def __str__(self) -> str: ...
2250
+
2251
+ @property
2252
+ def type(self) -> ResourceDialog.TYPE: ...
2253
+
2254
+ style: int
2255
+
2256
+ extended_style: int
2257
+
2258
+ x: int
2259
+
2260
+ y: int
2261
+
2262
+ cx: int
2263
+
2264
+ cy: int
2265
+
2266
+ @overload
2267
+ def has(self, arg: ResourceDialog.DIALOG_STYLES, /) -> bool: ...
2268
+
2269
+ @overload
2270
+ def has(self, arg: ResourceDialog.WINDOW_STYLES, /) -> bool: ...
2271
+
2272
+ @overload
2273
+ def has(self, arg: ResourceDialog.WINDOW_EXTENDED_STYLES, /) -> bool: ...
2274
+
2275
+ @property
2276
+ def styles_list(self) -> list[ResourceDialog.DIALOG_STYLES]: ...
2277
+
2278
+ @property
2279
+ def windows_styles_list(self) -> list[ResourceDialog.WINDOW_STYLES]: ...
2280
+
2281
+ @property
2282
+ def windows_ext_styles_list(self) -> list[ResourceDialog.WINDOW_EXTENDED_STYLES]: ...
2283
+
2284
+ title: str
2285
+
2286
+ @property
2287
+ def menu(self) -> Optional[Union[int, str]]: ...
2288
+
2289
+ @property
2290
+ def window_class(self) -> Optional[Union[int, str]]: ...
2291
+
2292
+ def copy(self) -> Optional[ResourceDialog]: ...
2293
+
2294
+ def __str__(self) -> str: ...
2295
+
2296
+ class ResourceDialogExtended(ResourceDialog):
2297
+ def __init__(self) -> None: ...
2298
+
2299
+ class it_items:
2300
+ def __getitem__(self, arg: int, /) -> ResourceDialogExtended.Item: ...
2301
+
2302
+ def __len__(self) -> int: ...
2303
+
2304
+ def __iter__(self) -> ResourceDialogExtended.it_items: ...
2305
+
2306
+ def __next__(self) -> ResourceDialogExtended.Item: ...
2307
+
2308
+ class font_t:
2309
+ point_size: int
2310
+
2311
+ weight: int
2312
+
2313
+ italic: bool
2314
+
2315
+ charset: int
2316
+
2317
+ typeface: str
2318
+
2319
+ def __bool__(self) -> bool: ...
2320
+
2321
+ def __str__(self) -> str: ...
2322
+
2323
+ class Item(ResourceDialog.Item):
2324
+ def __init__(self) -> None: ...
2325
+
2326
+ help_id: int
2327
+
2328
+ def __str__(self) -> str: ...
2329
+
2330
+ @property
2331
+ def version(self) -> int: ...
2332
+
2333
+ @property
2334
+ def signature(self) -> int: ...
2335
+
2336
+ @property
2337
+ def help_id(self) -> int: ...
2338
+
2339
+ @property
2340
+ def items(self) -> ResourceDialogExtended.it_items: ...
2341
+
2342
+ @property
2343
+ def font(self) -> ResourceDialogExtended.font_t: ...
2344
+
2345
+ def add_item(self, item: ResourceDialogExtended.Item) -> None: ...
2346
+
2347
+ def __str__(self) -> str: ...
2348
+
2349
+ class ResourceDialogRegular(ResourceDialog):
2350
+ def __init__(self) -> None: ...
2351
+
2352
+ class it_items:
2353
+ def __getitem__(self, arg: int, /) -> ResourceDialogRegular.Item: ...
2354
+
2355
+ def __len__(self) -> int: ...
2356
+
2357
+ def __iter__(self) -> ResourceDialogRegular.it_items: ...
2358
+
2359
+ def __next__(self) -> ResourceDialogRegular.Item: ...
2360
+
2361
+ class font_t:
2362
+ point_size: int
2363
+
2364
+ name: str
2365
+
2366
+ def __bool__(self) -> bool: ...
2367
+
2368
+ def __str__(self) -> str: ...
2369
+
2370
+ class Item(ResourceDialog.Item):
2371
+ def __init__(self) -> None: ...
2372
+
2373
+ def __str__(self) -> str: ...
2374
+
2375
+ @property
2376
+ def nb_items(self) -> int: ...
2377
+
2378
+ @property
2379
+ def items(self) -> ResourceDialogRegular.it_items: ...
2380
+
2381
+ @property
2382
+ def font(self) -> ResourceDialogRegular.font_t: ...
2383
+
2384
+ def add_item(self, item: ResourceDialogRegular.Item) -> None: ...
2385
+
2386
+ def __str__(self) -> str: ...
2387
+
2388
+ class ACCELERATOR_CODES(enum.Enum):
2389
+ @staticmethod
2390
+ def from_value(arg: int, /) -> ACCELERATOR_CODES: ...
2391
+
2392
+ def __eq__(self, arg, /) -> bool: ...
2393
+
2394
+ def __ne__(self, arg, /) -> bool: ...
2395
+
2396
+ def __int__(self) -> int: ...
2397
+
2398
+ LBUTTON = 1
2399
+
2400
+ RBUTTON = 2
2401
+
2402
+ CANCEL = 3
2403
+
2404
+ MBUTTON = 4
2405
+
2406
+ XBUTTON1_K = 5
2407
+
2408
+ XBUTTON2_K = 6
2409
+
2410
+ BACK = 8
2411
+
2412
+ TAB = 9
2413
+
2414
+ CLEAR = 12
2415
+
2416
+ RETURN = 13
2417
+
2418
+ SHIFT = 16
2419
+
2420
+ CONTROL = 17
2421
+
2422
+ MENU = 18
2423
+
2424
+ PAUSE = 19
2425
+
2426
+ CAPITAL = 20
2427
+
2428
+ KANA = 21
2429
+
2430
+ IME_ON = 22
2431
+
2432
+ JUNJA = 23
2433
+
2434
+ FINAL = 24
2435
+
2436
+ KANJI = 25
2437
+
2438
+ IME_OFF = 26
2439
+
2440
+ ESCAPE = 27
2441
+
2442
+ CONVERT = 28
2443
+
2444
+ NONCONVERT = 29
2445
+
2446
+ ACCEPT = 30
2447
+
2448
+ MODECHANGE = 31
2449
+
2450
+ SPACE = 32
2451
+
2452
+ PRIOR = 33
2453
+
2454
+ NEXT = 34
2455
+
2456
+ END = 35
2457
+
2458
+ HOME = 36
2459
+
2460
+ LEFT = 37
2461
+
2462
+ UP = 38
2463
+
2464
+ RIGHT = 39
2465
+
2466
+ DOWN = 40
2467
+
2468
+ SELECT = 41
2469
+
2470
+ PRINT = 42
2471
+
2472
+ EXECUTE = 43
2473
+
2474
+ SNAPSHOT = 44
2475
+
2476
+ INSERT = 45
2477
+
2478
+ DELETE_K = 46
2479
+
2480
+ HELP = 47
2481
+
2482
+ NUM_0 = 48
2483
+
2484
+ NUM_1 = 49
2485
+
2486
+ NUM_2 = 50
2487
+
2488
+ NUM_3 = 51
2489
+
2490
+ NUM_4 = 52
2491
+
2492
+ NUM_5 = 53
2493
+
2494
+ NUM_6 = 54
2495
+
2496
+ NUM_7 = 55
2497
+
2498
+ NUM_8 = 56
2499
+
2500
+ NUM_9 = 57
2501
+
2502
+ A = 65
2503
+
2504
+ B = 66
2505
+
2506
+ C = 67
2507
+
2508
+ D = 68
2509
+
2510
+ E = 69
2511
+
2512
+ F = 70
2513
+
2514
+ G = 71
2515
+
2516
+ H = 72
2517
+
2518
+ I = 73
2519
+
2520
+ J = 74
2521
+
2522
+ K = 75
2523
+
2524
+ L = 76
2525
+
2526
+ M = 77
2527
+
2528
+ N = 78
2529
+
2530
+ O = 79
2531
+
2532
+ P = 80
2533
+
2534
+ Q = 81
2535
+
2536
+ R = 82
2537
+
2538
+ S = 83
2539
+
2540
+ T = 84
2541
+
2542
+ U = 85
2543
+
2544
+ V = 86
2545
+
2546
+ W = 87
2547
+
2548
+ X = 88
2549
+
2550
+ Y = 89
2551
+
2552
+ Z = 90
2553
+
2554
+ LWIN = 91
2555
+
2556
+ RWIN = 92
2557
+
2558
+ APPS = 93
2559
+
2560
+ SLEEP = 95
2561
+
2562
+ NUMPAD0 = 96
2563
+
2564
+ NUMPAD1 = 97
2565
+
2566
+ NUMPAD2 = 98
2567
+
2568
+ NUMPAD3 = 99
2569
+
2570
+ NUMPAD4 = 100
2571
+
2572
+ NUMPAD5 = 101
2573
+
2574
+ NUMPAD6 = 102
2575
+
2576
+ NUMPAD7 = 103
2577
+
2578
+ NUMPAD8 = 104
2579
+
2580
+ NUMPAD9 = 105
2581
+
2582
+ MULTIPLY = 106
2583
+
2584
+ ADD = 107
2585
+
2586
+ SEPARATOR = 108
2587
+
2588
+ SUBTRACT = 109
2589
+
2590
+ DECIMAL = 110
2591
+
2592
+ DIVIDE = 111
2593
+
2594
+ F1 = 112
2595
+
2596
+ F2 = 113
2597
+
2598
+ F3 = 114
2599
+
2600
+ F4 = 115
2601
+
2602
+ F5 = 116
2603
+
2604
+ F6 = 117
2605
+
2606
+ F7 = 118
2607
+
2608
+ F8 = 119
2609
+
2610
+ F9 = 120
2611
+
2612
+ F10 = 121
2613
+
2614
+ F11 = 122
2615
+
2616
+ F12 = 123
2617
+
2618
+ F13 = 124
2619
+
2620
+ F14 = 125
2621
+
2622
+ F15 = 126
2623
+
2624
+ F16 = 127
2625
+
2626
+ F17 = 128
2627
+
2628
+ F18 = 129
2629
+
2630
+ F19 = 130
2631
+
2632
+ F20 = 131
2633
+
2634
+ F21 = 132
2635
+
2636
+ F22 = 133
2637
+
2638
+ F23 = 134
2639
+
2640
+ F24 = 135
2641
+
2642
+ NUMLOCK = 144
2643
+
2644
+ SCROLL = 145
2645
+
2646
+ LSHIFT = 160
2647
+
2648
+ RSHIFT = 161
2649
+
2650
+ LCONTROL = 162
2651
+
2652
+ RCONTROL = 163
2653
+
2654
+ LMENU = 164
2655
+
2656
+ RMENU = 165
2657
+
2658
+ BROWSER_BACK = 166
2659
+
2660
+ BROWSER_FORWARD = 167
2661
+
2662
+ BROWSER_REFRESH = 168
2663
+
2664
+ BROWSER_STOP = 169
2665
+
2666
+ BROWSER_SEARCH = 170
2667
+
2668
+ BROWSER_FAVORITES = 171
2669
+
2670
+ BROWSER_HOME = 172
2671
+
2672
+ VOLUME_MUTE = 173
2673
+
2674
+ VOLUME_DOWN = 174
2675
+
2676
+ VOLUME_UP = 175
2677
+
2678
+ MEDIA_NEXT_TRACK = 176
2679
+
2680
+ MEDIA_PREV_TRACK = 177
2681
+
2682
+ MEDIA_STOP = 178
2683
+
2684
+ MEDIA_PLAY_PAUSE = 179
2685
+
2686
+ LAUNCH_MAIL = 180
2687
+
2688
+ LAUNCH_MEDIA_SELECT = 181
2689
+
2690
+ LAUNCH_APP1 = 182
2691
+
2692
+ LAUNCH_APP2 = 183
2693
+
2694
+ OEM_1 = 186
2695
+
2696
+ OEM_PLUS = 187
2697
+
2698
+ OEM_COMMA = 188
2699
+
2700
+ OEM_MINUS = 189
2701
+
2702
+ OEM_PERIOD = 190
2703
+
2704
+ OEM_2 = 191
2705
+
2706
+ OEM_4 = 219
2707
+
2708
+ OEM_5 = 220
2709
+
2710
+ OEM_6 = 221
2711
+
2712
+ OEM_7 = 222
2713
+
2714
+ OEM_8 = 223
2715
+
2716
+ OEM_102 = 226
2717
+
2718
+ PROCESSKEY = 229
2719
+
2720
+ PACKET = 231
2721
+
2722
+ ATTN = 246
2723
+
2724
+ CRSEL = 247
2725
+
2726
+ EXSEL = 248
2727
+
2728
+ EREOF = 249
2729
+
2730
+ PLAY = 250
2731
+
2732
+ ZOOM = 251
2733
+
2734
+ NONAME = 252
2735
+
2736
+ PA1 = 253
2737
+
2738
+ OEM_CLEAR = 254
2739
+
2740
+ class ResourceAccelerator(lief.Object):
2741
+ class FLAGS(enum.Flag):
2742
+ @staticmethod
2743
+ def from_value(arg: int, /) -> ResourceAccelerator.FLAGS: ...
2744
+
2745
+ def __eq__(self, arg, /) -> bool: ...
2746
+
2747
+ def __ne__(self, arg, /) -> bool: ...
2748
+
2749
+ def __int__(self) -> int: ...
2750
+
2751
+ VIRTKEY = 1
2752
+
2753
+ NOINVERT = 2
2754
+
2755
+ SHIFT = 4
2756
+
2757
+ CONTROL = 8
2758
+
2759
+ ALT = 16
2760
+
2761
+ END = 128
2762
+
2763
+ @property
2764
+ def flags(self) -> int: ...
2765
+
2766
+ @property
2767
+ def ansi(self) -> int: ...
2768
+
2769
+ @property
2770
+ def ansi_str(self) -> str: ...
2771
+
2772
+ @property
2773
+ def id(self) -> int: ...
2774
+
2775
+ @property
2776
+ def padding(self) -> int: ...
2777
+
2778
+ def has(self, arg: ResourceAccelerator.FLAGS, /) -> bool: ...
2779
+
2780
+ def add(self, arg: ResourceAccelerator.FLAGS, /) -> ResourceAccelerator: ...
2781
+
2782
+ def remove(self, arg: ResourceAccelerator.FLAGS, /) -> ResourceAccelerator: ...
2783
+
2784
+ def __str__(self) -> str: ...
2785
+
2786
+ class RESOURCE_LANGS(enum.Enum):
2787
+ @staticmethod
2788
+ def from_value(arg: int, /) -> RESOURCE_LANGS: ...
2789
+
2790
+ def __eq__(self, arg, /) -> bool: ...
2791
+
2792
+ def __ne__(self, arg, /) -> bool: ...
2793
+
2794
+ def __int__(self) -> int: ...
2795
+
2796
+ NEUTRAL = 0
2797
+
2798
+ INVARIANT = 127
2799
+
2800
+ AFRIKAANS = 54
2801
+
2802
+ ALBANIAN = 28
2803
+
2804
+ ARABIC = 1
2805
+
2806
+ ARMENIAN = 43
2807
+
2808
+ ASSAMESE = 77
2809
+
2810
+ AZERI = 44
2811
+
2812
+ BASQUE = 45
2813
+
2814
+ BELARUSIAN = 35
2815
+
2816
+ BANGLA = 69
2817
+
2818
+ BULGARIAN = 2
2819
+
2820
+ CATALAN = 3
2821
+
2822
+ CHINESE = 4
2823
+
2824
+ CROATIAN = 26
2825
+
2826
+ BOSNIAN = 26
2827
+
2828
+ CZECH = 5
2829
+
2830
+ DANISH = 6
2831
+
2832
+ DIVEHI = 101
2833
+
2834
+ DUTCH = 19
2835
+
2836
+ ENGLISH = 9
2837
+
2838
+ ESTONIAN = 37
2839
+
2840
+ FAEROESE = 56
2841
+
2842
+ FARSI = 41
2843
+
2844
+ FINNISH = 11
2845
+
2846
+ FRENCH = 12
2847
+
2848
+ GALICIAN = 86
2849
+
2850
+ GEORGIAN = 55
2851
+
2852
+ GERMAN = 7
2853
+
2854
+ GREEK = 8
2855
+
2856
+ GUJARATI = 71
2857
+
2858
+ HEBREW = 13
2859
+
2860
+ HINDI = 57
2861
+
2862
+ HUNGARIAN = 14
2863
+
2864
+ ICELANDIC = 15
2865
+
2866
+ INDONESIAN = 33
2867
+
2868
+ ITALIAN = 16
2869
+
2870
+ JAPANESE = 17
2871
+
2872
+ KANNADA = 75
2873
+
2874
+ KASHMIRI = 96
2875
+
2876
+ KAZAK = 63
2877
+
2878
+ KONKANI = 87
2879
+
2880
+ KOREAN = 18
2881
+
2882
+ KYRGYZ = 64
2883
+
2884
+ LATVIAN = 38
2885
+
2886
+ LITHUANIAN = 39
2887
+
2888
+ MACEDONIAN = 47
2889
+
2890
+ MALAY = 62
2891
+
2892
+ MALAYALAM = 76
2893
+
2894
+ MANIPURI = 88
2895
+
2896
+ MARATHI = 78
2897
+
2898
+ MONGOLIAN = 80
2899
+
2900
+ NEPALI = 97
2901
+
2902
+ NORWEGIAN = 20
2903
+
2904
+ ORIYA = 72
2905
+
2906
+ POLISH = 21
2907
+
2908
+ PORTUGUESE = 22
2909
+
2910
+ PUNJABI = 70
2911
+
2912
+ ROMANIAN = 24
2913
+
2914
+ RUSSIAN = 25
2915
+
2916
+ SANSKRIT = 79
2917
+
2918
+ SERBIAN = 26
2919
+
2920
+ SINDHI = 89
2921
+
2922
+ SLOVAK = 27
2923
+
2924
+ SLOVENIAN = 36
2925
+
2926
+ SPANISH = 10
2927
+
2928
+ SWAHILI = 65
2929
+
2930
+ SWEDISH = 29
2931
+
2932
+ SYRIAC = 90
2933
+
2934
+ TAMIL = 73
2935
+
2936
+ TATAR = 68
2937
+
2938
+ TELUGU = 74
2939
+
2940
+ THAI = 30
2941
+
2942
+ TURKISH = 31
2943
+
2944
+ UKRAINIAN = 34
2945
+
2946
+ URDU = 32
2947
+
2948
+ UZBEK = 67
2949
+
2950
+ VIETNAMESE = 42
2951
+
2952
+ GAELIC = 60
2953
+
2954
+ MALTESE = 58
2955
+
2956
+ MAORI = 40
2957
+
2958
+ RHAETO_ROMANCE = 23
2959
+
2960
+ SAMI = 59
2961
+
2962
+ SORBIAN = 46
2963
+
2964
+ SUTU = 48
2965
+
2966
+ TSONGA = 49
2967
+
2968
+ TSWANA = 50
2969
+
2970
+ VENDA = 51
2971
+
2972
+ XHOSA = 52
2973
+
2974
+ ZULU = 53
2975
+
2976
+ ESPERANTO = 143
2977
+
2978
+ WALON = 144
2979
+
2980
+ CORNISH = 145
2981
+
2982
+ WELSH = 146
2983
+
2984
+ BRETON = 147
2985
+
2986
+ INUKTITUT = 93
2987
+
2988
+ IRISH = 60
2989
+
2990
+ LOWER_SORBIAN = 46
2991
+
2992
+ PULAR = 103
2993
+
2994
+ QUECHUA = 107
2995
+
2996
+ TAMAZIGHT = 95
2997
+
2998
+ TIGRINYA = 115
2999
+
3000
+ VALENCIAN = 3
3001
+
3002
+ class Signature(lief.Object):
3003
+ class VERIFICATION_FLAGS(enum.Flag):
3004
+ @staticmethod
3005
+ def from_value(arg: int, /) -> Signature.VERIFICATION_FLAGS: ...
3006
+
3007
+ def __eq__(self, arg, /) -> bool: ...
3008
+
3009
+ def __ne__(self, arg, /) -> bool: ...
3010
+
3011
+ def __int__(self) -> int: ...
3012
+
3013
+ OK = 0
3014
+
3015
+ INVALID_SIGNER = 1
3016
+
3017
+ UNSUPPORTED_ALGORITHM = 2
3018
+
3019
+ INCONSISTENT_DIGEST_ALGORITHM = 4
3020
+
3021
+ CERT_NOT_FOUND = 8
3022
+
3023
+ CORRUPTED_CONTENT_INFO = 16
3024
+
3025
+ CORRUPTED_AUTH_DATA = 32
3026
+
3027
+ MISSING_PKCS9_MESSAGE_DIGEST = 64
3028
+
3029
+ BAD_DIGEST = 128
3030
+
3031
+ BAD_SIGNATURE = 256
3032
+
3033
+ NO_SIGNATURE = 512
3034
+
3035
+ CERT_EXPIRED = 1024
3036
+
3037
+ CERT_FUTURE = 2048
3038
+
3039
+ class VERIFICATION_CHECKS(enum.Flag):
3040
+ @staticmethod
3041
+ def from_value(arg: int, /) -> Signature.VERIFICATION_CHECKS: ...
3042
+
3043
+ def __eq__(self, arg, /) -> bool: ...
3044
+
3045
+ def __ne__(self, arg, /) -> bool: ...
3046
+
3047
+ def __int__(self) -> int: ...
3048
+
3049
+ DEFAULT = 1
3050
+
3051
+ HASH_ONLY = 2
3052
+
3053
+ LIFETIME_SIGNING = 4
3054
+
3055
+ SKIP_CERT_TIME = 8
3056
+
3057
+ class it_const_crt:
3058
+ def __getitem__(self, arg: int, /) -> x509: ...
3059
+
3060
+ def __len__(self) -> int: ...
3061
+
3062
+ def __iter__(self) -> Signature.it_const_crt: ...
3063
+
3064
+ def __next__(self) -> x509: ...
3065
+
3066
+ class it_const_signers_t:
3067
+ def __getitem__(self, arg: int, /) -> SignerInfo: ...
3068
+
3069
+ def __len__(self) -> int: ...
3070
+
3071
+ def __iter__(self) -> Signature.it_const_signers_t: ...
3072
+
3073
+ def __next__(self) -> SignerInfo: ...
3074
+
3075
+ @overload
3076
+ @staticmethod
3077
+ def parse(path: Union[str | os.PathLike]) -> Optional[Signature]: ...
3078
+
3079
+ @overload
3080
+ @staticmethod
3081
+ def parse(raw: Sequence[int], skip_header: bool = False) -> Optional[Signature]: ...
3082
+
3083
+ @property
3084
+ def version(self) -> int: ...
3085
+
3086
+ @property
3087
+ def digest_algorithm(self) -> ALGORITHMS: ...
3088
+
3089
+ @property
3090
+ def content_info(self) -> ContentInfo: ...
3091
+
3092
+ @property
3093
+ def certificates(self) -> Signature.it_const_crt: ...
3094
+
3095
+ @property
3096
+ def signers(self) -> Signature.it_const_signers_t: ...
3097
+
3098
+ def find_crt(self, serialno: Sequence[int]) -> x509: ...
3099
+
3100
+ @overload
3101
+ def find_crt_subject(self, subject: str) -> x509: ...
3102
+
3103
+ @overload
3104
+ def find_crt_subject(self, subject: str, serialno: Sequence[int]) -> x509: ...
3105
+
3106
+ @overload
3107
+ def find_crt_issuer(self, issuer: str) -> x509: ...
3108
+
3109
+ @overload
3110
+ def find_crt_issuer(self, issuer: str, serialno: Sequence[int]) -> x509: ...
3111
+
3112
+ def check(self, checks: Signature.VERIFICATION_CHECKS = Signature.VERIFICATION_CHECKS.DEFAULT) -> Signature.VERIFICATION_FLAGS: ...
3113
+
3114
+ @property
3115
+ def raw_der(self) -> memoryview: ...
3116
+
3117
+ def __str__(self) -> str: ...
3118
+
3119
+ class RsaInfo:
3120
+ @property
3121
+ def has_public_key(self) -> bool: ...
3122
+
3123
+ @property
3124
+ def has_private_key(self) -> bool: ...
3125
+
3126
+ @property
3127
+ def N(self) -> bytes: ...
3128
+
3129
+ @property
3130
+ def E(self) -> bytes: ...
3131
+
3132
+ @property
3133
+ def D(self) -> bytes: ...
3134
+
3135
+ @property
3136
+ def P(self) -> bytes: ...
3137
+
3138
+ @property
3139
+ def Q(self) -> bytes: ...
3140
+
3141
+ @property
3142
+ def key_size(self) -> int: ...
3143
+
3144
+ @property
3145
+ def __len__(self) -> int: ...
3146
+
3147
+ def __str__(self) -> str: ...
3148
+
3149
+ class x509(lief.Object):
3150
+ class VERIFICATION_FLAGS(enum.Flag):
3151
+ @staticmethod
3152
+ def from_value(arg: int, /) -> x509.VERIFICATION_FLAGS: ...
3153
+
3154
+ def __eq__(self, arg, /) -> bool: ...
3155
+
3156
+ def __ne__(self, arg, /) -> bool: ...
3157
+
3158
+ def __int__(self) -> int: ...
3159
+
3160
+ OK = 0
3161
+
3162
+ BADCERT_EXPIRED = 1
3163
+
3164
+ BADCERT_REVOKED = 2
3165
+
3166
+ BADCERT_CN_MISMATCH = 4
3167
+
3168
+ BADCERT_NOT_TRUSTED = 8
3169
+
3170
+ BADCRL_NOT_TRUSTED = 16
3171
+
3172
+ BADCRL_EXPIRED = 32
3173
+
3174
+ BADCERT_MISSING = 64
3175
+
3176
+ BADCERT_SKIP_VERIFY = 128
3177
+
3178
+ BADCERT_OTHERNATURE = 256
3179
+
3180
+ BADCERT_FUTURE = 512
3181
+
3182
+ BADCRL_FUTURE = 1024
3183
+
3184
+ BADCERT_KEY_USAGE = 2048
3185
+
3186
+ BADCERT_EXT_KEY_USAGE = 4096
3187
+
3188
+ BADCERT_NS_CERT_TYPE = 8192
3189
+
3190
+ BADCERT_BAD_MD = 16384
3191
+
3192
+ BADCERT_BAD_PK = 32768
3193
+
3194
+ BADCERT_BAD_KEY = 65536
3195
+
3196
+ BADCRL_BAD_MD = 131072
3197
+
3198
+ BADCRL_BAD_PK = 262144
3199
+
3200
+ BADCRL_BAD_KEY = 524288
3201
+
3202
+ class KEY_TYPES(enum.Enum):
3203
+ @staticmethod
3204
+ def from_value(arg: int, /) -> x509.KEY_TYPES: ...
3205
+
3206
+ def __eq__(self, arg, /) -> bool: ...
3207
+
3208
+ def __ne__(self, arg, /) -> bool: ...
3209
+
3210
+ def __int__(self) -> int: ...
3211
+
3212
+ NONE = 0
3213
+
3214
+ RSA = 1
3215
+
3216
+ ECKEY = 2
3217
+
3218
+ ECKEY_DH = 3
3219
+
3220
+ ECDSA = 4
3221
+
3222
+ RSA_ALT = 5
3223
+
3224
+ RSASSA_PSS = 6
3225
+
3226
+ class KEY_USAGE(enum.Enum):
3227
+ @staticmethod
3228
+ def from_value(arg: int, /) -> x509.KEY_USAGE: ...
3229
+
3230
+ def __eq__(self, arg, /) -> bool: ...
3231
+
3232
+ def __ne__(self, arg, /) -> bool: ...
3233
+
3234
+ def __int__(self) -> int: ...
3235
+
3236
+ DIGITAL_SIGNATURE = 0
3237
+
3238
+ NON_REPUDIATION = 1
3239
+
3240
+ KEY_ENCIPHERMENT = 2
3241
+
3242
+ DATA_ENCIPHERMENT = 3
3243
+
3244
+ KEY_AGREEMENT = 4
3245
+
3246
+ KEY_CERT_SIGN = 5
3247
+
3248
+ CRL_SIGN = 6
3249
+
3250
+ ENCIPHER_ONLY = 7
3251
+
3252
+ DECIPHER_ONLY = 8
3253
+
3254
+ @overload
3255
+ @staticmethod
3256
+ def parse(path: str) -> list[x509]: ...
3257
+
3258
+ @overload
3259
+ @staticmethod
3260
+ def parse(raw: Sequence[int]) -> list[x509]: ...
3261
+
3262
+ @property
3263
+ def version(self) -> int: ...
3264
+
3265
+ @property
3266
+ def serial_number(self) -> bytes: ...
3267
+
3268
+ @property
3269
+ def signature_algorithm(self) -> str: ...
3270
+
3271
+ @property
3272
+ def valid_from(self) -> list[int]: ...
3273
+
3274
+ @property
3275
+ def valid_to(self) -> list[int]: ...
3276
+
3277
+ @property
3278
+ def issuer(self) -> Union[str, bytes]: ...
3279
+
3280
+ @property
3281
+ def subject(self) -> Union[str, bytes]: ...
3282
+
3283
+ @property
3284
+ def raw(self) -> bytes: ...
3285
+
3286
+ @property
3287
+ def key_type(self) -> x509.KEY_TYPES: ...
3288
+
3289
+ @property
3290
+ def rsa_info(self) -> Optional[RsaInfo]: ...
3291
+
3292
+ @property
3293
+ def key_usage(self) -> list[x509.KEY_USAGE]: ...
3294
+
3295
+ @property
3296
+ def ext_key_usage(self) -> list[str]: ...
3297
+
3298
+ @property
3299
+ def certificate_policies(self) -> list[str]: ...
3300
+
3301
+ @property
3302
+ def is_ca(self) -> bool: ...
3303
+
3304
+ @property
3305
+ def signature(self) -> bytes: ...
3306
+
3307
+ def verify(self, ca: x509) -> x509.VERIFICATION_FLAGS: ...
3308
+
3309
+ def is_trusted_by(self, ca_list: Sequence[x509]) -> x509.VERIFICATION_FLAGS: ...
3310
+
3311
+ def __str__(self) -> str: ...
3312
+
3313
+ class ContentInfo(lief.Object):
3314
+ class Content(lief.Object):
3315
+ @property
3316
+ def content_type(self) -> str: ...
3317
+
3318
+ def copy(self) -> Optional[ContentInfo.Content]: ...
3319
+
3320
+ @property
3321
+ def content_type(self) -> str: ...
3322
+
3323
+ @property
3324
+ def digest(self) -> bytes: ...
3325
+
3326
+ @property
3327
+ def digest_algorithm(self) -> ALGORITHMS: ...
3328
+
3329
+ @property
3330
+ def value(self) -> ContentInfo.Content: ...
3331
+
3332
+ def copy(self) -> ContentInfo: ...
3333
+
3334
+ def __str__(self) -> str: ...
3335
+
3336
+ class GenericContent(ContentInfo.Content):
3337
+ pass
3338
+
3339
+ class SpcIndirectData(ContentInfo.Content):
3340
+ @property
3341
+ def digest_algorithm(self) -> ALGORITHMS: ...
3342
+
3343
+ @property
3344
+ def digest(self) -> memoryview: ...
3345
+
3346
+ @property
3347
+ def file(self) -> str: ...
3348
+
3349
+ @property
3350
+ def url(self) -> str: ...
3351
+
3352
+ def __str__(self) -> str: ...
3353
+
3354
+ class SignerInfo(lief.Object):
3355
+ class it_const_attributes_t:
3356
+ def __getitem__(self, arg: int, /) -> Attribute: ...
3357
+
3358
+ def __len__(self) -> int: ...
3359
+
3360
+ def __iter__(self) -> SignerInfo.it_const_attributes_t: ...
3361
+
3362
+ def __next__(self) -> Attribute: ...
3363
+
3364
+ @property
3365
+ def version(self) -> int: ...
3366
+
3367
+ @property
3368
+ def serial_number(self) -> bytes: ...
3369
+
3370
+ @property
3371
+ def issuer(self) -> Union[str, bytes]: ...
3372
+
3373
+ @property
3374
+ def digest_algorithm(self) -> ALGORITHMS: ...
3375
+
3376
+ @property
3377
+ def encryption_algorithm(self) -> ALGORITHMS: ...
3378
+
3379
+ @property
3380
+ def encrypted_digest(self) -> bytes: ...
3381
+
3382
+ @property
3383
+ def authenticated_attributes(self) -> SignerInfo.it_const_attributes_t: ...
3384
+
3385
+ @property
3386
+ def unauthenticated_attributes(self) -> SignerInfo.it_const_attributes_t: ...
3387
+
3388
+ def get_attribute(self, type: Attribute.TYPE) -> Attribute: ...
3389
+
3390
+ def get_auth_attribute(self, type: Attribute.TYPE) -> Attribute: ...
3391
+
3392
+ def get_unauth_attribute(self, type: Attribute.TYPE) -> Attribute: ...
3393
+
3394
+ @property
3395
+ def cert(self) -> x509: ...
3396
+
3397
+ def __str__(self) -> str: ...
3398
+
3399
+ class CodeIntegrity(lief.Object):
3400
+ def __init__(self) -> None: ...
3401
+
3402
+ flags: int
3403
+
3404
+ catalog: int
3405
+
3406
+ catalog_offset: int
3407
+
3408
+ reserved: int
3409
+
3410
+ def __str__(self) -> str: ...
3411
+
3412
+ class Attribute(lief.Object):
3413
+ class TYPE(enum.Enum):
3414
+ @staticmethod
3415
+ def from_value(arg: int, /) -> Attribute.TYPE: ...
3416
+
3417
+ def __eq__(self, arg, /) -> bool: ...
3418
+
3419
+ def __ne__(self, arg, /) -> bool: ...
3420
+
3421
+ def __int__(self) -> int: ...
3422
+
3423
+ UNKNOWN = 0
3424
+
3425
+ CONTENT_TYPE = 1
3426
+
3427
+ GENERIC_TYPE = 2
3428
+
3429
+ SPC_SP_OPUS_INFO = 4
3430
+
3431
+ MS_COUNTER_SIGN = 6
3432
+
3433
+ MS_SPC_NESTED_SIGN = 7
3434
+
3435
+ MS_SPC_STATEMENT_TYPE = 8
3436
+
3437
+ SPC_RELAXED_PE_MARKER_CHECK = 5
3438
+
3439
+ SIGNING_CERTIFICATE_V2 = 3
3440
+
3441
+ MS_PLATFORM_MANIFEST_BINARY_ID = 9
3442
+
3443
+ PKCS9_AT_SEQUENCE_NUMBER = 10
3444
+
3445
+ PKCS9_COUNTER_SIGNATURE = 11
3446
+
3447
+ PKCS9_MESSAGE_DIGEST = 12
3448
+
3449
+ PKCS9_SIGNING_TIME = 13
3450
+
3451
+ @property
3452
+ def type(self) -> Attribute.TYPE: ...
3453
+
3454
+ def __str__(self) -> str: ...
3455
+
3456
+ class ContentType(Attribute):
3457
+ @property
3458
+ def oid(self) -> str: ...
3459
+
3460
+ class GenericType(Attribute):
3461
+ @property
3462
+ def oid(self) -> str: ...
3463
+
3464
+ @property
3465
+ def raw_content(self) -> memoryview: ...
3466
+
3467
+ class MsSpcNestedSignature(Attribute):
3468
+ @property
3469
+ def signature(self) -> Signature: ...
3470
+
3471
+ class MsSpcStatementType(Attribute):
3472
+ @property
3473
+ def oid(self) -> str: ...
3474
+
3475
+ class MsManifestBinaryID(Attribute):
3476
+ manifest_id: str
3477
+
3478
+ def __str__(self) -> str: ...
3479
+
3480
+ class PKCS9AtSequenceNumber(Attribute):
3481
+ @property
3482
+ def number(self) -> int: ...
3483
+
3484
+ class PKCS9CounterSignature(Attribute):
3485
+ @property
3486
+ def signer(self) -> SignerInfo: ...
3487
+
3488
+ class PKCS9MessageDigest(Attribute):
3489
+ @property
3490
+ def digest(self) -> bytes: ...
3491
+
3492
+ class PKCS9SigningTime(Attribute):
3493
+ @property
3494
+ def time(self) -> list[int]: ...
3495
+
3496
+ class SpcSpOpusInfo(Attribute):
3497
+ @property
3498
+ def program_name(self) -> Union[str, bytes]: ...
3499
+
3500
+ @property
3501
+ def more_info(self) -> Union[str, bytes]: ...
3502
+
3503
+ class MsCounterSign(Attribute):
3504
+ class it_const_crt:
3505
+ def __getitem__(self, arg: int, /) -> x509: ...
3506
+
3507
+ def __len__(self) -> int: ...
3508
+
3509
+ def __iter__(self) -> MsCounterSign.it_const_crt: ...
3510
+
3511
+ def __next__(self) -> x509: ...
3512
+
3513
+ class it_const_signers_t:
3514
+ def __getitem__(self, arg: int, /) -> SignerInfo: ...
3515
+
3516
+ def __len__(self) -> int: ...
3517
+
3518
+ def __iter__(self) -> MsCounterSign.it_const_signers_t: ...
3519
+
3520
+ def __next__(self) -> SignerInfo: ...
3521
+
3522
+ @property
3523
+ def version(self) -> int: ...
3524
+
3525
+ @property
3526
+ def digest_algorithm(self) -> ALGORITHMS: ...
3527
+
3528
+ @property
3529
+ def content_info(self) -> ContentInfo: ...
3530
+
3531
+ @property
3532
+ def certificates(self) -> MsCounterSign.it_const_crt: ...
3533
+
3534
+ @property
3535
+ def signers(self) -> MsCounterSign.it_const_signers_t: ...
3536
+
3537
+ class SpcRelaxedPeMarkerCheck(Attribute):
3538
+ @property
3539
+ def value(self) -> int: ...
3540
+
3541
+ class SigningCertificateV2(Attribute):
3542
+ pass
3543
+
3544
+ class PKCS9TSTInfo(ContentInfo.Content):
3545
+ pass
3546
+
3547
+ class CHPEMetadata:
3548
+ class KIND(enum.Enum):
3549
+ UNKNOWN = 0
3550
+
3551
+ ARM64 = 1
3552
+
3553
+ X86 = 2
3554
+
3555
+ @property
3556
+ def version(self) -> int: ...
3557
+
3558
+ @property
3559
+ def kind(self) -> CHPEMetadata.KIND: ...
3560
+
3561
+ def copy(self) -> Optional[CHPEMetadata]: ...
3562
+
3563
+ def __str__(self) -> str: ...
3564
+
3565
+ class CHPEMetadataARM64(CHPEMetadata):
3566
+ class it_range_entries:
3567
+ def __getitem__(self, arg: int, /) -> CHPEMetadataARM64.range_entry_t: ...
3568
+
3569
+ def __len__(self) -> int: ...
3570
+
3571
+ def __iter__(self) -> CHPEMetadataARM64.it_range_entries: ...
3572
+
3573
+ def __next__(self) -> CHPEMetadataARM64.range_entry_t: ...
3574
+
3575
+ class it_redirection_entries:
3576
+ def __getitem__(self, arg: int, /) -> CHPEMetadataARM64.redirection_entry_t: ...
3577
+
3578
+ def __len__(self) -> int: ...
3579
+
3580
+ def __iter__(self) -> CHPEMetadataARM64.it_redirection_entries: ...
3581
+
3582
+ def __next__(self) -> CHPEMetadataARM64.redirection_entry_t: ...
3583
+
3584
+ class it_code_range_entry_point:
3585
+ def __getitem__(self, arg: int, /) -> CHPEMetadataARM64.code_range_entry_point_t: ...
3586
+
3587
+ def __len__(self) -> int: ...
3588
+
3589
+ def __iter__(self) -> CHPEMetadataARM64.it_code_range_entry_point: ...
3590
+
3591
+ def __next__(self) -> CHPEMetadataARM64.code_range_entry_point_t: ...
3592
+
3593
+ class range_entry_t:
3594
+ class TYPE(enum.Enum):
3595
+ ARM64 = 0
3596
+
3597
+ ARM64EC = 1
3598
+
3599
+ AMD64 = 2
3600
+
3601
+ start_offset: int
3602
+
3603
+ length: int
3604
+
3605
+ @property
3606
+ def type(self) -> CHPEMetadataARM64.range_entry_t.TYPE: ...
3607
+
3608
+ @property
3609
+ def start(self) -> int: ...
3610
+
3611
+ @property
3612
+ def end(self) -> int: ...
3613
+
3614
+ class redirection_entry_t:
3615
+ src: int
3616
+
3617
+ dst: int
3618
+
3619
+ class code_range_entry_point_t:
3620
+ start_rva: int
3621
+
3622
+ end_rva: int
3623
+
3624
+ entrypoint: int
3625
+
3626
+ code_map: int
3627
+
3628
+ code_map_count: int
3629
+
3630
+ code_ranges_to_entrypoints: int
3631
+
3632
+ redirection_metadata: int
3633
+
3634
+ os_arm64x_dispatch_call_no_redirect: int
3635
+
3636
+ os_arm64x_dispatch_ret: int
3637
+
3638
+ os_arm64x_dispatch_call: int
3639
+
3640
+ os_arm64x_dispatch_icall: int
3641
+
3642
+ os_arm64x_dispatch_icall_cfg: int
3643
+
3644
+ alternate_entry_point: int
3645
+
3646
+ auxiliary_iat: int
3647
+
3648
+ code_ranges_to_entry_points_count: int
3649
+
3650
+ redirection_metadata_count: int
3651
+
3652
+ get_x64_information_function_pointer: int
3653
+
3654
+ set_x64_information_function_pointer: int
3655
+
3656
+ extra_rfe_table: int
3657
+
3658
+ extra_rfe_table_size: int
3659
+
3660
+ os_arm64x_dispatch_fptr: int
3661
+
3662
+ auxiliary_iat_copy: int
3663
+
3664
+ auxiliary_delay_import: int
3665
+
3666
+ auxiliary_delay_import_copy: int
3667
+
3668
+ bitfield_info: int
3669
+
3670
+ @property
3671
+ def code_ranges(self) -> CHPEMetadataARM64.it_range_entries: ...
3672
+
3673
+ @property
3674
+ def redirections(self) -> CHPEMetadataARM64.it_redirection_entries: ...
3675
+
3676
+ @property
3677
+ def code_range_entry_point(self) -> CHPEMetadataARM64.it_code_range_entry_point: ...
3678
+
3679
+ class CHPEMetadataX86(CHPEMetadata):
3680
+ chpe_code_address_range_offset: int
3681
+
3682
+ chpe_code_address_range_count: int
3683
+
3684
+ wowa64_exception_handler_function_pointer: int
3685
+
3686
+ wowa64_dispatch_call_function_pointer: int
3687
+
3688
+ wowa64_dispatch_indirect_call_function_pointer: int
3689
+
3690
+ wowa64_dispatch_indirect_call_cfg_function_pointer: int
3691
+
3692
+ wowa64_dispatch_ret_function_pointer: int
3693
+
3694
+ wowa64_dispatch_ret_leaf_function_pointer: int
3695
+
3696
+ wowa64_dispatch_jump_function_pointer: int
3697
+
3698
+ compiler_iat_pointer: int | None
3699
+
3700
+ wowa64_rdtsc_function_pointer: int | None
3701
+
3702
+ class DynamicRelocation:
3703
+ class IMAGE_DYNAMIC_RELOCATION(enum.Enum):
3704
+ @staticmethod
3705
+ def from_value(arg: int, /) -> DynamicRelocation.IMAGE_DYNAMIC_RELOCATION: ...
3706
+
3707
+ def __eq__(self, arg, /) -> bool: ...
3708
+
3709
+ def __ne__(self, arg, /) -> bool: ...
3710
+
3711
+ def __int__(self) -> int: ...
3712
+
3713
+ RELOCATION_GUARD_RF_PROLOGUE = 1
3714
+
3715
+ RELOCATION_GUARD_RF_EPILOGUE = 2
3716
+
3717
+ RELOCATION_GUARD_IMPORT_CONTROL_TRANSFER = 3
3718
+
3719
+ RELOCATION_GUARD_INDIR_CONTROL_TRANSFER = 4
3720
+
3721
+ RELOCATION_GUARD_SWITCHTABLE_BRANCH = 5
3722
+
3723
+ RELOCATION_ARM64X = 6
3724
+
3725
+ RELOCATION_FUNCTION_OVERRIDE = 7
3726
+
3727
+ RELOCATION_ARM64_KERNEL_IMPORT_CALL_TRANSFER = 8
3728
+
3729
+ @property
3730
+ def version(self) -> int: ...
3731
+
3732
+ symbol: int
3733
+
3734
+ @property
3735
+ def fixups(self) -> DynamicFixup: ...
3736
+
3737
+ def __str__(self) -> str: ...
3738
+
3739
+ def copy(self) -> Optional[DynamicRelocation]: ...
3740
+
3741
+ class DynamicRelocationV1(DynamicRelocation):
3742
+ pass
3743
+
3744
+ class DynamicRelocationV2(DynamicRelocation):
3745
+ pass
3746
+
3747
+ class DynamicFixup:
3748
+ class KIND(enum.Enum):
3749
+ @staticmethod
3750
+ def from_value(arg: int, /) -> DynamicFixup.KIND: ...
3751
+
3752
+ def __eq__(self, arg, /) -> bool: ...
3753
+
3754
+ def __ne__(self, arg, /) -> bool: ...
3755
+
3756
+ def __int__(self) -> int: ...
3757
+
3758
+ UNKNOWN = 0
3759
+
3760
+ GENERIC = 1
3761
+
3762
+ ARM64X = 2
3763
+
3764
+ FUNCTION_OVERRIDE = 3
3765
+
3766
+ ARM64_KERNEL_IMPORT_CALL_TRANSFER = 4
3767
+
3768
+ @property
3769
+ def kind(self) -> DynamicFixup.KIND: ...
3770
+
3771
+ def __str__(self) -> str: ...
3772
+
3773
+ def copy(self) -> Optional[DynamicFixup]: ...
3774
+
3775
+ class DynamicFixupARM64X(DynamicFixup):
3776
+ class FIXUP_TYPE(enum.Enum):
3777
+ @staticmethod
3778
+ def from_value(arg: int, /) -> DynamicFixupARM64X.FIXUP_TYPE: ...
3779
+
3780
+ def __eq__(self, arg, /) -> bool: ...
3781
+
3782
+ def __ne__(self, arg, /) -> bool: ...
3783
+
3784
+ def __int__(self) -> int: ...
3785
+
3786
+ ZEROFILL = 0
3787
+
3788
+ VALUE = 1
3789
+
3790
+ DELTA = 2
3791
+
3792
+ class reloc_entry_t:
3793
+ rva: int
3794
+
3795
+ type: DynamicFixupARM64X.FIXUP_TYPE
3796
+
3797
+ size: int
3798
+
3799
+ raw_bytes: list[int]
3800
+
3801
+ value: int
3802
+
3803
+ def __str__(self) -> str: ...
3804
+
3805
+ class it_relocations:
3806
+ def __getitem__(self, arg: int, /) -> DynamicFixupARM64X.reloc_entry_t: ...
3807
+
3808
+ def __len__(self) -> int: ...
3809
+
3810
+ def __iter__(self) -> DynamicFixupARM64X.it_relocations: ...
3811
+
3812
+ def __next__(self) -> DynamicFixupARM64X.reloc_entry_t: ...
3813
+
3814
+ @property
3815
+ def relocations(self) -> DynamicFixupARM64X.it_relocations: ...
3816
+
3817
+ class DynamicFixupControlTransfer(DynamicFixup):
3818
+ NO_IAT_INDEX: int = ...
3819
+
3820
+ class it_relocations:
3821
+ def __getitem__(self, arg: int, /) -> DynamicFixupControlTransfer.reloc_entry_t: ...
3822
+
3823
+ def __len__(self) -> int: ...
3824
+
3825
+ def __iter__(self) -> DynamicFixupControlTransfer.it_relocations: ...
3826
+
3827
+ def __next__(self) -> DynamicFixupControlTransfer.reloc_entry_t: ...
3828
+
3829
+ class reloc_entry_t:
3830
+ rva: int
3831
+
3832
+ is_call: bool
3833
+
3834
+ iat_index: int
3835
+
3836
+ def __str__(self) -> str: ...
3837
+
3838
+ @property
3839
+ def relocations(self) -> DynamicFixupControlTransfer.it_relocations: ...
3840
+
3841
+ class DynamicFixupARM64Kernel(DynamicFixup):
3842
+ NO_IAT_INDEX: int = ...
3843
+
3844
+ class IMPORT_TYPE(enum.Enum):
3845
+ STATIC = 0
3846
+
3847
+ DELAYED = 1
3848
+
3849
+ class it_relocations:
3850
+ def __getitem__(self, arg: int, /) -> DynamicFixupARM64Kernel.reloc_entry_t: ...
3851
+
3852
+ def __len__(self) -> int: ...
3853
+
3854
+ def __iter__(self) -> DynamicFixupARM64Kernel.it_relocations: ...
3855
+
3856
+ def __next__(self) -> DynamicFixupARM64Kernel.reloc_entry_t: ...
3857
+
3858
+ class reloc_entry_t:
3859
+ rva: int
3860
+
3861
+ indirect_call: bool
3862
+
3863
+ register_index: int
3864
+
3865
+ import_type: DynamicFixupARM64Kernel.IMPORT_TYPE
3866
+
3867
+ iat_index: int
3868
+
3869
+ def __str__(self) -> str: ...
3870
+
3871
+ @property
3872
+ def relocations(self) -> DynamicFixupARM64Kernel.it_relocations: ...
3873
+
3874
+ class DynamicFixupGeneric(DynamicFixup):
3875
+ class it_relocations:
3876
+ def __getitem__(self, arg: int, /) -> Relocation: ...
3877
+
3878
+ def __len__(self) -> int: ...
3879
+
3880
+ def __iter__(self) -> DynamicFixupGeneric.it_relocations: ...
3881
+
3882
+ def __next__(self) -> Relocation: ...
3883
+
3884
+ @property
3885
+ def relocations(self) -> DynamicFixupGeneric.it_relocations: ...
3886
+
3887
+ class DynamicFixupUnknown(DynamicFixup):
3888
+ @property
3889
+ def payload(self) -> memoryview: ...
3890
+
3891
+ class FunctionOverrideInfo:
3892
+ class it_relocations:
3893
+ def __getitem__(self, arg: int, /) -> Relocation: ...
3894
+
3895
+ def __len__(self) -> int: ...
3896
+
3897
+ def __iter__(self) -> DynamicFixupGeneric.it_relocations: ...
3898
+
3899
+ def __next__(self) -> Relocation: ...
3900
+
3901
+ original_rva: int
3902
+
3903
+ bdd_offset: int
3904
+
3905
+ @property
3906
+ def rva_size(self) -> int: ...
3907
+
3908
+ @property
3909
+ def base_reloc_size(self) -> int: ...
3910
+
3911
+ @property
3912
+ def relocations(self) -> DynamicFixupGeneric.it_relocations: ...
3913
+
3914
+ @property
3915
+ def functions_rva(self) -> list[int]: ...
3916
+
3917
+ def __str__(self) -> str: ...
3918
+
3919
+ class FunctionOverride(DynamicFixup):
3920
+ class image_bdd_dynamic_relocation_t:
3921
+ left: int
3922
+
3923
+ right: int
3924
+
3925
+ value: int
3926
+
3927
+ class image_bdd_info_t:
3928
+ version: int
3929
+
3930
+ original_size: int
3931
+
3932
+ original_offset: int
3933
+
3934
+ relocations: list[FunctionOverride.image_bdd_dynamic_relocation_t]
3935
+
3936
+ payload: list[int]
3937
+
3938
+ class it_func_overriding_info:
3939
+ def __getitem__(self, arg: int, /) -> FunctionOverrideInfo: ...
3940
+
3941
+ def __len__(self) -> int: ...
3942
+
3943
+ def __iter__(self) -> FunctionOverride.it_func_overriding_info: ...
3944
+
3945
+ def __next__(self) -> FunctionOverrideInfo: ...
3946
+
3947
+ class it_bdd_info:
3948
+ def __getitem__(self, arg: int, /) -> FunctionOverride.image_bdd_info_t: ...
3949
+
3950
+ def __len__(self) -> int: ...
3951
+
3952
+ def __iter__(self) -> FunctionOverride.it_bdd_info: ...
3953
+
3954
+ def __next__(self) -> FunctionOverride.image_bdd_info_t: ...
3955
+
3956
+ @property
3957
+ def func_overriding_info(self) -> FunctionOverride.it_func_overriding_info: ...
3958
+
3959
+ @property
3960
+ def bdd_info(self) -> FunctionOverride.it_bdd_info: ...
3961
+
3962
+ @overload
3963
+ def find_bdd_info(self, arg: int, /) -> FunctionOverride.image_bdd_info_t: ...
3964
+
3965
+ @overload
3966
+ def find_bdd_info(self, arg: FunctionOverrideInfo, /) -> FunctionOverride.image_bdd_info_t: ...
3967
+
3968
+ class EnclaveImport:
3969
+ class TYPE(enum.Enum):
3970
+ NONE = 0
3971
+
3972
+ UNIQUE_ID = 1
3973
+
3974
+ AUTHOR_ID = 2
3975
+
3976
+ FAMILY_ID = 3
3977
+
3978
+ IMAGE_ID = 4
3979
+
3980
+ type: EnclaveImport.TYPE
3981
+
3982
+ min_security_version: int
3983
+
3984
+ id: list[int]
3985
+
3986
+ family_id: list[int]
3987
+
3988
+ image_id: list[int]
3989
+
3990
+ import_name_rva: int
3991
+
3992
+ import_name: str
3993
+
3994
+ reserved: int
3995
+
3996
+ def __str__(self) -> str: ...
3997
+
3998
+ class EnclaveConfiguration:
3999
+ class it_imports:
4000
+ def __getitem__(self, arg: int, /) -> EnclaveImport: ...
4001
+
4002
+ def __len__(self) -> int: ...
4003
+
4004
+ def __iter__(self) -> EnclaveConfiguration.it_imports: ...
4005
+
4006
+ def __next__(self) -> EnclaveImport: ...
4007
+
4008
+ size: int
4009
+
4010
+ min_required_config_size: int
4011
+
4012
+ policy_flags: int
4013
+
4014
+ @property
4015
+ def is_debuggable(self) -> bool: ...
4016
+
4017
+ import_list_rva: int
4018
+
4019
+ import_entry_size: int
4020
+
4021
+ @property
4022
+ def nb_imports(self) -> int: ...
4023
+
4024
+ @property
4025
+ def imports(self) -> EnclaveConfiguration.it_imports: ...
4026
+
4027
+ family_id: list[int]
4028
+
4029
+ image_id: list[int]
4030
+
4031
+ image_version: int
4032
+
4033
+ security_version: int
4034
+
4035
+ enclave_size: int
4036
+
4037
+ nb_threads: int
4038
+
4039
+ enclave_flags: int
4040
+
4041
+ def __str__(self) -> str: ...
4042
+
4043
+ class VolatileMetadata:
4044
+ class range_t:
4045
+ start: int
4046
+
4047
+ size: int
4048
+
4049
+ @property
4050
+ def end(self) -> int: ...
4051
+
4052
+ class it_info_ranges_t:
4053
+ def __getitem__(self, arg: int, /) -> VolatileMetadata.range_t: ...
4054
+
4055
+ def __len__(self) -> int: ...
4056
+
4057
+ def __iter__(self) -> VolatileMetadata.it_info_ranges_t: ...
4058
+
4059
+ def __next__(self) -> VolatileMetadata.range_t: ...
4060
+
4061
+ size: int
4062
+
4063
+ min_version: int
4064
+
4065
+ max_version: int
4066
+
4067
+ access_table_rva: int
4068
+
4069
+ @property
4070
+ def access_table(self) -> list[int]: ...
4071
+
4072
+ @property
4073
+ def access_table_size(self) -> int: ...
4074
+
4075
+ info_range_rva: int
4076
+
4077
+ @property
4078
+ def info_ranges_size(self) -> int: ...
4079
+
4080
+ @property
4081
+ def info_ranges(self) -> VolatileMetadata.it_info_ranges_t: ...
4082
+
4083
+ def __str__(self) -> str: ...
4084
+
4085
+ class LoadConfiguration(lief.Object):
4086
+ class guard_function_t:
4087
+ rva: int
4088
+
4089
+ extra: int
4090
+
4091
+ class it_guard_functions:
4092
+ def __getitem__(self, arg: int, /) -> LoadConfiguration.guard_function_t: ...
4093
+
4094
+ def __len__(self) -> int: ...
4095
+
4096
+ def __iter__(self) -> LoadConfiguration.it_guard_functions: ...
4097
+
4098
+ def __next__(self) -> LoadConfiguration.guard_function_t: ...
4099
+
4100
+ class it_dynamic_relocations_t:
4101
+ def __getitem__(self, arg: int, /) -> DynamicRelocation: ...
4102
+
4103
+ def __len__(self) -> int: ...
4104
+
4105
+ def __iter__(self) -> LoadConfiguration.it_dynamic_relocations_t: ...
4106
+
4107
+ def __next__(self) -> DynamicRelocation: ...
4108
+
4109
+ class IMAGE_GUARD(enum.Flag):
4110
+ @staticmethod
4111
+ def from_value(arg: int, /) -> LoadConfiguration.IMAGE_GUARD: ...
4112
+
4113
+ def __eq__(self, arg, /) -> bool: ...
4114
+
4115
+ def __ne__(self, arg, /) -> bool: ...
4116
+
4117
+ def __int__(self) -> int: ...
4118
+
4119
+ NONE = 0
4120
+
4121
+ CF_INSTRUMENTED = 256
4122
+
4123
+ CFW_INSTRUMENTED = 512
4124
+
4125
+ CF_FUNCTION_TABLE_PRESENT = 1024
4126
+
4127
+ SECURITY_COOKIE_UNUSED = 2048
4128
+
4129
+ PROTECT_DELAYLOAD_IAT = 4096
4130
+
4131
+ DELAYLOAD_IAT_IN_ITS_OWN_SECTION = 8192
4132
+
4133
+ CF_EXPORT_SUPPRESSION_INFO_PRESENT = 16384
4134
+
4135
+ CF_ENABLE_EXPORT_SUPPRESSION = 32768
4136
+
4137
+ CF_LONGJUMP_TABLE_PRESENT = 65536
4138
+
4139
+ RF_INSTRUMENTED = 131072
4140
+
4141
+ RF_ENABLE = 262144
4142
+
4143
+ RF_STRICT = 524288
4144
+
4145
+ RETPOLINE_PRESENT = 1048576
4146
+
4147
+ EH_CONTINUATION_TABLE_PRESENT = 4194304
4148
+
4149
+ XFG_ENABLED = 8388608
4150
+
4151
+ CASTGUARD_PRESENT = 16777216
4152
+
4153
+ MEMCPY_PRESENT = 33554432
4154
+
4155
+ characteristics: int
4156
+
4157
+ size: int
4158
+
4159
+ timedatestamp: int
4160
+
4161
+ major_version: int
4162
+
4163
+ minor_version: int
4164
+
4165
+ global_flags_clear: int
4166
+
4167
+ global_flags_set: int
4168
+
4169
+ critical_section_default_timeout: int
4170
+
4171
+ decommit_free_block_threshold: int
4172
+
4173
+ decommit_total_free_threshold: int
4174
+
4175
+ lock_prefix_table: int
4176
+
4177
+ maximum_allocation_size: int
4178
+
4179
+ virtual_memory_threshold: int
4180
+
4181
+ process_affinity_mask: int
4182
+
4183
+ process_heap_flags: int
4184
+
4185
+ csd_version: int
4186
+
4187
+ dependent_load_flags: int
4188
+
4189
+ reserved1: int
4190
+
4191
+ editlist: int
4192
+
4193
+ security_cookie: int
4194
+
4195
+ se_handler_table: int | None
4196
+
4197
+ @property
4198
+ def seh_functions(self) -> list[int]: ...
4199
+
4200
+ se_handler_count: int | None
4201
+
4202
+ guard_cf_check_function_pointer: int | None
4203
+
4204
+ guard_cf_dispatch_function_pointer: int | None
4205
+
4206
+ guard_cf_function_table: int | None
4207
+
4208
+ guard_cf_function_count: int | None
4209
+
4210
+ @property
4211
+ def guard_cf_functions(self) -> LoadConfiguration.it_guard_functions: ...
4212
+
4213
+ guard_flags: int | None
4214
+
4215
+ def has(self, arg: LoadConfiguration.IMAGE_GUARD, /) -> bool: ...
4216
+
4217
+ @property
4218
+ def guard_cf_flags_list(self) -> list[LoadConfiguration.IMAGE_GUARD]: ...
4219
+
4220
+ code_integrity: CodeIntegrity
4221
+
4222
+ guard_address_taken_iat_entry_table: int | None
4223
+
4224
+ guard_address_taken_iat_entry_count: int | None
4225
+
4226
+ @property
4227
+ def guard_address_taken_iat_entries(self) -> LoadConfiguration.it_guard_functions: ...
4228
+
4229
+ guard_long_jump_target_table: int | None
4230
+
4231
+ guard_long_jump_target_count: int | None
4232
+
4233
+ @property
4234
+ def guard_long_jump_targets(self) -> LoadConfiguration.it_guard_functions: ...
4235
+
4236
+ dynamic_value_reloc_table: int | None
4237
+
4238
+ hybrid_metadata_pointer: int | None
4239
+
4240
+ @property
4241
+ def chpe_metadata_pointer(self) -> int | None: ...
4242
+
4243
+ @property
4244
+ def chpe_metadata(self) -> CHPEMetadata: ...
4245
+
4246
+ guard_rf_failure_routine: int | None
4247
+
4248
+ guard_rf_failure_routine_function_pointer: int | None
4249
+
4250
+ dynamic_value_reloctable_offset: int | None
4251
+
4252
+ dynamic_value_reloctable_section: int | None
4253
+
4254
+ @property
4255
+ def dynamic_relocations(self) -> LoadConfiguration.it_dynamic_relocations_t: ...
4256
+
4257
+ reserved2: int | None
4258
+
4259
+ guard_rf_verify_stackpointer_function_pointer: int | None
4260
+
4261
+ hotpatch_table_offset: int | None
4262
+
4263
+ reserved3: int | None
4264
+
4265
+ enclave_configuration_ptr: int | None
4266
+
4267
+ @property
4268
+ def enclave_config(self) -> EnclaveConfiguration: ...
4269
+
4270
+ volatile_metadata_pointer: int | None
4271
+
4272
+ @property
4273
+ def volatile_metadata(self) -> VolatileMetadata: ...
4274
+
4275
+ guard_eh_continuation_table: int | None
4276
+
4277
+ guard_eh_continuation_count: int | None
4278
+
4279
+ @property
4280
+ def guard_eh_continuation_functions(self) -> LoadConfiguration.it_guard_functions: ...
4281
+
4282
+ guard_xfg_check_function_pointer: int | None
4283
+
4284
+ guard_xfg_dispatch_function_pointer: int | None
4285
+
4286
+ guard_xfg_table_dispatch_function_pointer: int | None
4287
+
4288
+ cast_guard_os_determined_failure_mode: int | None
4289
+
4290
+ guard_memcpy_function_pointer: int | None
4291
+
4292
+ uma_function_pointers: int | None
4293
+
4294
+ def copy(self) -> LoadConfiguration: ...
4295
+
4296
+ def __str__(self) -> str: ...
4297
+
4298
+ class Binary(lief.Binary):
4299
+ class it_section:
4300
+ def __getitem__(self, arg: int, /) -> Section: ...
4301
+
4302
+ def __len__(self) -> int: ...
4303
+
4304
+ def __iter__(self) -> Binary.it_section: ...
4305
+
4306
+ def __next__(self) -> Section: ...
4307
+
4308
+ class it_data_directories:
4309
+ def __getitem__(self, arg: int, /) -> DataDirectory: ...
4310
+
4311
+ def __len__(self) -> int: ...
4312
+
4313
+ def __iter__(self) -> Binary.it_data_directories: ...
4314
+
4315
+ def __next__(self) -> DataDirectory: ...
4316
+
4317
+ class it_relocations:
4318
+ def __getitem__(self, arg: int, /) -> Relocation: ...
4319
+
4320
+ def __len__(self) -> int: ...
4321
+
4322
+ def __iter__(self) -> DynamicFixupGeneric.it_relocations: ...
4323
+
4324
+ def __next__(self) -> Relocation: ...
4325
+
4326
+ class it_imports:
4327
+ def __getitem__(self, arg: int, /) -> Import: ...
4328
+
4329
+ def __len__(self) -> int: ...
4330
+
4331
+ def __iter__(self) -> Binary.it_imports: ...
4332
+
4333
+ def __next__(self) -> Import: ...
4334
+
4335
+ class it_delay_imports:
4336
+ def __getitem__(self, arg: int, /) -> DelayImport: ...
4337
+
4338
+ def __len__(self) -> int: ...
4339
+
4340
+ def __iter__(self) -> Binary.it_delay_imports: ...
4341
+
4342
+ def __next__(self) -> DelayImport: ...
4343
+
4344
+ class it_symbols:
4345
+ def __getitem__(self, arg: int, /) -> lief.COFF.Symbol: ...
4346
+
4347
+ def __len__(self) -> int: ...
4348
+
4349
+ def __iter__(self) -> Binary.it_symbols: ...
4350
+
4351
+ def __next__(self) -> lief.COFF.Symbol: ...
4352
+
4353
+ class it_const_signatures:
4354
+ def __getitem__(self, arg: int, /) -> Signature: ...
4355
+
4356
+ def __len__(self) -> int: ...
4357
+
4358
+ def __iter__(self) -> Binary.it_const_signatures: ...
4359
+
4360
+ def __next__(self) -> Signature: ...
4361
+
4362
+ class it_debug:
4363
+ def __getitem__(self, arg: int, /) -> Debug: ...
4364
+
4365
+ def __len__(self) -> int: ...
4366
+
4367
+ def __iter__(self) -> Binary.it_debug: ...
4368
+
4369
+ def __next__(self) -> Debug: ...
4370
+
4371
+ class it_strings_table:
4372
+ def __getitem__(self, arg: int, /) -> lief.COFF.String: ...
4373
+
4374
+ def __len__(self) -> int: ...
4375
+
4376
+ def __iter__(self) -> Binary.it_strings_table: ...
4377
+
4378
+ def __next__(self) -> lief.COFF.String: ...
4379
+
4380
+ class it_exceptions:
4381
+ def __getitem__(self, arg: int, /) -> ExceptionInfo: ...
4382
+
4383
+ def __len__(self) -> int: ...
4384
+
4385
+ def __iter__(self) -> Binary.it_exceptions: ...
4386
+
4387
+ def __next__(self) -> ExceptionInfo: ...
4388
+
4389
+ @property
4390
+ def sections(self) -> Binary.it_section: ... # type: ignore
4391
+
4392
+ @property
4393
+ def dos_header(self) -> DosHeader: ...
4394
+
4395
+ @property
4396
+ def header(self) -> Header: ... # type: ignore
4397
+
4398
+ @property
4399
+ def optional_header(self) -> OptionalHeader: ...
4400
+
4401
+ def compute_checksum(self) -> int: ...
4402
+
4403
+ @property
4404
+ def virtual_size(self) -> int: ...
4405
+
4406
+ @property
4407
+ def sizeof_headers(self) -> int: ...
4408
+
4409
+ def rva_to_offset(self, rva_address: int) -> int: ...
4410
+
4411
+ def va_to_offset(self, va_address: int) -> int: ...
4412
+
4413
+ def section_from_offset(self, offset: int) -> Section: ...
4414
+
4415
+ def section_from_rva(self, rva: int) -> Section: ...
4416
+
4417
+ tls: TLS
4418
+
4419
+ def remove_tls(self) -> None: ...
4420
+
4421
+ rich_header: RichHeader
4422
+
4423
+ @property
4424
+ def has_rich_header(self) -> bool: ...
4425
+
4426
+ @property
4427
+ def has_debug(self) -> bool: ...
4428
+
4429
+ @property
4430
+ def has_tls(self) -> bool: ...
4431
+
4432
+ @property
4433
+ def has_imports(self) -> bool: ...
4434
+
4435
+ @property
4436
+ def has_exports(self) -> bool: ...
4437
+
4438
+ @property
4439
+ def has_resources(self) -> bool: ...
4440
+
4441
+ @property
4442
+ def has_exceptions(self) -> bool: ...
4443
+
4444
+ @property
4445
+ def has_relocations(self) -> bool: ...
4446
+
4447
+ @property
4448
+ def has_configuration(self) -> bool: ...
4449
+
4450
+ @property
4451
+ def has_signatures(self) -> bool: ...
4452
+
4453
+ @property
4454
+ def is_reproducible_build(self) -> bool: ...
4455
+
4456
+ @property
4457
+ def functions(self) -> list[lief.Function]: ...
4458
+
4459
+ @property
4460
+ def exception_functions(self) -> list[lief.Function]: ...
4461
+
4462
+ @property
4463
+ def signatures(self) -> Binary.it_const_signatures: ...
4464
+
4465
+ def authentihash(self, algorithm: ALGORITHMS) -> bytes: ...
4466
+
4467
+ @overload
4468
+ def verify_signature(self, checks: Signature.VERIFICATION_CHECKS = Signature.VERIFICATION_CHECKS.DEFAULT) -> Signature.VERIFICATION_FLAGS: ...
4469
+
4470
+ @overload
4471
+ def verify_signature(self, signature: Signature, checks: Signature.VERIFICATION_CHECKS = Signature.VERIFICATION_CHECKS.DEFAULT) -> Signature.VERIFICATION_FLAGS: ...
4472
+
4473
+ @property
4474
+ def authentihash_md5(self) -> bytes: ...
4475
+
4476
+ @property
4477
+ def authentihash_sha1(self) -> bytes: ...
4478
+
4479
+ @property
4480
+ def authentihash_sha256(self) -> bytes: ...
4481
+
4482
+ @property
4483
+ def authentihash_sha512(self) -> bytes: ...
4484
+
4485
+ @property
4486
+ def debug(self) -> Binary.it_debug: ...
4487
+
4488
+ def add_debug_info(self, entry: Debug) -> Debug: ...
4489
+
4490
+ def remove_debug(self, entry: Debug) -> bool: ...
4491
+
4492
+ def clear_debug(self) -> bool: ...
4493
+
4494
+ @property
4495
+ def codeview_pdb(self) -> CodeViewPDB: ...
4496
+
4497
+ @property
4498
+ def load_configuration(self) -> LoadConfiguration: ...
4499
+
4500
+ def get_export(self) -> Export: ...
4501
+
4502
+ def set_export(self, arg: Export, /) -> Export: ...
4503
+
4504
+ @property
4505
+ def symbols(self) -> Binary.it_symbols: ... # type: ignore
4506
+
4507
+ def get_section(self, section_name: str) -> Section: ...
4508
+
4509
+ def add_section(self, section: Section) -> Section: ...
4510
+
4511
+ @property
4512
+ def relocations(self) -> DynamicFixupGeneric.it_relocations: ... # type: ignore
4513
+
4514
+ def add_relocation(self, relocation: Relocation) -> Relocation: ...
4515
+
4516
+ def remove_all_relocations(self) -> None: ...
4517
+
4518
+ def remove(self, section: Section, clear: bool = False) -> None: ...
4519
+
4520
+ @property
4521
+ def data_directories(self) -> Binary.it_data_directories: ...
4522
+
4523
+ def data_directory(self, type: DataDirectory.TYPES) -> DataDirectory: ...
4524
+
4525
+ @property
4526
+ def imports(self) -> Binary.it_imports: ...
4527
+
4528
+ def has_import(self, import_name: str) -> bool: ...
4529
+
4530
+ def get_import(self, import_name: str) -> Import: ...
4531
+
4532
+ @property
4533
+ def delay_imports(self) -> Binary.it_delay_imports: ...
4534
+
4535
+ @property
4536
+ def has_delay_imports(self) -> bool: ...
4537
+
4538
+ def has_delay_import(self, import_name: str) -> bool: ...
4539
+
4540
+ def get_delay_import(self, import_name: str) -> DelayImport: ...
4541
+
4542
+ @property
4543
+ def resources_manager(self) -> Union[ResourcesManager, lief.lief_errors]: ...
4544
+
4545
+ @property
4546
+ def resources(self) -> ResourceNode: ...
4547
+
4548
+ @property
4549
+ def overlay(self) -> memoryview: ...
4550
+
4551
+ @property
4552
+ def overlay_offset(self) -> int: ...
4553
+
4554
+ dos_stub: memoryview
4555
+
4556
+ def add_import(self, import_name: str) -> Import: ...
4557
+
4558
+ def remove_import(self, name: str) -> bool: ...
4559
+
4560
+ def remove_all_imports(self) -> None: ...
4561
+
4562
+ def set_resources(self, new_tree: ResourceNode) -> ResourceNode: ...
4563
+
4564
+ @property
4565
+ def exceptions(self) -> Binary.it_exceptions: ...
4566
+
4567
+ @property
4568
+ def export_dir(self) -> DataDirectory: ...
4569
+
4570
+ @property
4571
+ def import_dir(self) -> DataDirectory: ...
4572
+
4573
+ @property
4574
+ def rsrc_dir(self) -> DataDirectory: ...
4575
+
4576
+ @property
4577
+ def exceptions_dir(self) -> DataDirectory: ...
4578
+
4579
+ @property
4580
+ def cert_dir(self) -> DataDirectory: ...
4581
+
4582
+ @property
4583
+ def relocation_dir(self) -> DataDirectory: ...
4584
+
4585
+ @property
4586
+ def debug_dir(self) -> DataDirectory: ...
4587
+
4588
+ @property
4589
+ def tls_dir(self) -> DataDirectory: ...
4590
+
4591
+ @property
4592
+ def load_config_dir(self) -> DataDirectory: ...
4593
+
4594
+ @property
4595
+ def iat_dir(self) -> DataDirectory: ...
4596
+
4597
+ @property
4598
+ def delay_dir(self) -> DataDirectory: ...
4599
+
4600
+ @property
4601
+ def is_arm64ec(self) -> bool: ...
4602
+
4603
+ @property
4604
+ def is_arm64x(self) -> bool: ...
4605
+
4606
+ @overload
4607
+ def write(self, output_path: Union[str | os.PathLike]) -> None: ...
4608
+
4609
+ @overload
4610
+ def write(self, output_path: Union[str | os.PathLike], config: Builder.config_t) -> None: ...
4611
+
4612
+ @overload
4613
+ def write_to_bytes(self, config: Builder.config_t) -> bytes: ...
4614
+
4615
+ @overload
4616
+ def write_to_bytes(self) -> bytes: ...
4617
+
4618
+ def fill_address(self, address: int, size: int, value: int = 0, addr_type: lief.Binary.VA_TYPES = lief.Binary.VA_TYPES.AUTO) -> None: ...
4619
+
4620
+ @property
4621
+ def coff_string_table(self) -> Binary.it_strings_table: ...
4622
+
4623
+ def find_coff_string(self, offset: int) -> lief.COFF.String: ...
4624
+
4625
+ def find_exception_at(self, rva: int) -> ExceptionInfo: ...
4626
+
4627
+ @property
4628
+ def nested_pe_binary(self) -> Binary: ...
4629
+
4630
+ def __str__(self) -> str: ...
4631
+
4632
+ class Builder:
4633
+ def __init__(self, binary: Binary, config: Builder.config_t) -> None: ...
4634
+
4635
+ class config_t:
4636
+ def __init__(self) -> None: ...
4637
+
4638
+ imports: bool
4639
+
4640
+ exports: bool
4641
+
4642
+ resources: bool
4643
+
4644
+ relocations: bool
4645
+
4646
+ load_configuration: bool
4647
+
4648
+ tls: bool
4649
+
4650
+ overlay: bool
4651
+
4652
+ debug: bool
4653
+
4654
+ dos_stub: bool
4655
+
4656
+ rsrc_section: str
4657
+
4658
+ idata_section: str
4659
+
4660
+ tls_section: str
4661
+
4662
+ reloc_section: str
4663
+
4664
+ export_section: str
4665
+
4666
+ debug_section: str
4667
+
4668
+ resolved_iat_cbk: Callable[[Binary, Import, ImportEntry, int], None]
4669
+
4670
+ force_relocating: bool
4671
+
4672
+ @property
4673
+ def rsrc_data(self) -> memoryview: ...
4674
+
4675
+ def build(self) -> Union[lief.ok_t, lief.lief_errors]: ...
4676
+
4677
+ def write(self, output: str) -> None: ...
4678
+
4679
+ def bytes(self) -> bytes: ...
4680
+
4681
+ class Factory:
4682
+ @staticmethod
4683
+ def create(arg: PE_TYPE, /) -> Optional[Factory]: ...
4684
+
4685
+ def add_section(self, arg: Section, /) -> Factory: ...
4686
+
4687
+ def get(self) -> Optional[Binary]: ...
4688
+
4689
+ class IMPHASH_MODE(enum.Enum):
4690
+ DEFAULT = 0
4691
+
4692
+ LIEF = 0
4693
+
4694
+ PEFILE = 1
4695
+
4696
+ VT = 1
4697
+
4698
+ def oid_to_string(arg: str, /) -> str: ...
4699
+
4700
+ @overload
4701
+ def get_type(file: Union[str | os.PathLike]) -> Union[PE_TYPE, lief.lief_errors]: ...
4702
+
4703
+ @overload
4704
+ def get_type(raw: Sequence[int]) -> Union[PE_TYPE, lief.lief_errors]: ...
4705
+
4706
+ def get_imphash(binary: Binary, mode: IMPHASH_MODE = IMPHASH_MODE.DEFAULT) -> str: ...
4707
+
4708
+ def resolve_ordinals(imp: Import, strict: bool = False, use_std: bool = False) -> Union[Import, lief.lief_errors]: ...
4709
+
4710
+ def check_layout(binary: Binary) -> tuple[bool, str]: ...