smda 2.4.2__tar.gz → 2.4.3__tar.gz
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.
- {smda-2.4.2/smda.egg-info → smda-2.4.3}/PKG-INFO +2 -1
- {smda-2.4.2 → smda-2.4.3}/README.md +1 -0
- {smda-2.4.2 → smda-2.4.3}/setup.py +1 -1
- {smda-2.4.2 → smda-2.4.3}/smda/SmdaConfig.py +1 -1
- {smda-2.4.2 → smda-2.4.3}/smda/ida/IdaInterface.py +6 -6
- {smda-2.4.2 → smda-2.4.3/smda.egg-info}/PKG-INFO +2 -1
- {smda-2.4.2 → smda-2.4.3}/LICENSE +0 -0
- {smda-2.4.2 → smda-2.4.3}/pyproject.toml +0 -0
- {smda-2.4.2 → smda-2.4.3}/setup.cfg +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/Disassembler.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/DisassemblyResult.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/DisassemblyStatistics.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/cil/CilDisassembler.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/cil/CilInstructionEscaper.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/cil/FunctionAnalysisState.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/cil/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/BasicBlock.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/BinaryInfo.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/BlockLocator.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/CodeXref.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/DominatorTree.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/SmdaBasicBlock.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/SmdaFunction.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/SmdaInstruction.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/SmdaReport.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/TailcallAnalyzer.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/Tarjan.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/AbstractLabelProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/CilSymbolProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/DelphiKbSymbolProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/DelphiReSymProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/ElfApiResolver.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/ElfSymbolProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/GoLabelProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/OrdinalHelper.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/PdbSymbolProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/PeSymbolProvider.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/WinApiResolver.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/common/labelprovider/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/ida/BackendInterface.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/ida/IdaExporter.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/ida/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/BitnessAnalyzer.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/FunctionAnalysisState.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/FunctionCandidate.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/FunctionCandidateManager.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/IndirectCallAnalyzer.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/IntelDisassembler.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/IntelInstructionEscaper.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/JumpTableAnalyzer.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/LanguageAnalyzer.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/MnemonicTfIdf.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/intel/definitions.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/BracketQueue.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/DelphiKbFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/ElfFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/FileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/MachoFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/MemoryFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/PeFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/PriorityQueue.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/StringExtractor.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda/utility/__init__.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda.egg-info/SOURCES.txt +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda.egg-info/dependency_links.txt +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda.egg-info/requires.txt +0 -0
- {smda-2.4.2 → smda-2.4.3}/smda.egg-info/top_level.txt +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testBracketQueue.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testEscaper.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testFileFormatParsers.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testIntegration.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testPeFileLoader.py +0 -0
- {smda-2.4.2 → smda-2.4.3}/tests/testTarjan.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: smda
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.3
|
|
4
4
|
Summary: A recursive disassmbler optimized for CFG recovery from memory dumps. Based on capstone.
|
|
5
5
|
Home-page: https://github.com/danielplohmann/smda
|
|
6
6
|
Author: Daniel Plohmann
|
|
@@ -133,6 +133,7 @@ make test
|
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
## Version History
|
|
136
|
+
* 2025-12-10: v2.4.3 - Compatibility issue for IDA export, API changes happened already in 8.5, so adjusted the version check.
|
|
136
137
|
* 2025-11-28: v2.4.2 - Fix for a bug when extracting and merging code areas from section tables. (THX: @r0ny123)
|
|
137
138
|
* 2025-11-28: v2.4.1 - Modernized packaging by also building a wheel. (THX: @dimbleby)
|
|
138
139
|
* 2025-11-21: v2.4.0 - Integration of DelphiReSym by @WenzWenzWenz for Delphi VMT parsing, thanks to @r0ny123 for adapting it!!
|
|
@@ -101,6 +101,7 @@ make test
|
|
|
101
101
|
```
|
|
102
102
|
|
|
103
103
|
## Version History
|
|
104
|
+
* 2025-12-10: v2.4.3 - Compatibility issue for IDA export, API changes happened already in 8.5, so adjusted the version check.
|
|
104
105
|
* 2025-11-28: v2.4.2 - Fix for a bug when extracting and merging code areas from section tables. (THX: @r0ny123)
|
|
105
106
|
* 2025-11-28: v2.4.1 - Modernized packaging by also building a wheel. (THX: @dimbleby)
|
|
106
107
|
* 2025-11-21: v2.4.0 - Integration of DelphiReSym by @WenzWenzWenz for Delphi VMT parsing, thanks to @r0ny123 for adapting it!!
|
|
@@ -12,7 +12,7 @@ requirements.append("lief>=0.16.0")
|
|
|
12
12
|
setup(
|
|
13
13
|
name="smda",
|
|
14
14
|
# note to self: always change this in config as well.
|
|
15
|
-
version="2.4.
|
|
15
|
+
version="2.4.3",
|
|
16
16
|
description="A recursive disassmbler optimized for CFG recovery from memory dumps. Based on capstone.",
|
|
17
17
|
long_description_content_type="text/markdown",
|
|
18
18
|
long_description=long_description,
|
|
@@ -4,7 +4,7 @@ import os
|
|
|
4
4
|
|
|
5
5
|
class SmdaConfig:
|
|
6
6
|
# note to self: always change this in setup.py as well!
|
|
7
|
-
VERSION = "2.4.
|
|
7
|
+
VERSION = "2.4.3"
|
|
8
8
|
ESCAPER_DOWNWARD_COMPATIBILITY = "1.13.16"
|
|
9
9
|
CONFIG_FILE_PATH = str(os.path.abspath(__file__))
|
|
10
10
|
PROJECT_ROOT = str(os.path.abspath(os.sep.join([CONFIG_FILE_PATH, "..", ".."])))
|
|
@@ -32,10 +32,10 @@ class IdaInterface:
|
|
|
32
32
|
|
|
33
33
|
def __init__(self):
|
|
34
34
|
if not IdaInterface.instance:
|
|
35
|
-
if idaapi.IDA_SDK_VERSION >= 740 and idaapi.IDA_SDK_VERSION <
|
|
35
|
+
if idaapi.IDA_SDK_VERSION >= 740 and idaapi.IDA_SDK_VERSION < 850:
|
|
36
36
|
IdaInterface.instance = Ida74Interface()
|
|
37
|
-
if idaapi.IDA_SDK_VERSION >=
|
|
38
|
-
IdaInterface.instance =
|
|
37
|
+
if idaapi.IDA_SDK_VERSION >= 850:
|
|
38
|
+
IdaInterface.instance = Ida85Interface()
|
|
39
39
|
else:
|
|
40
40
|
IdaInterface.instance = Ida73Interface()
|
|
41
41
|
|
|
@@ -48,7 +48,7 @@ class IdaInterface:
|
|
|
48
48
|
|
|
49
49
|
class Ida74Interface(BackendInterface):
|
|
50
50
|
def __init__(self):
|
|
51
|
-
self.version = "IDA Pro 7.4"
|
|
51
|
+
self.version = "IDA Pro 7.4 - 8.4"
|
|
52
52
|
self._processor_map = {"metapc": "intel"}
|
|
53
53
|
self._api_map = {}
|
|
54
54
|
self._import_module_name = ""
|
|
@@ -277,9 +277,9 @@ class Ida73Interface(BackendInterface):
|
|
|
277
277
|
return True
|
|
278
278
|
|
|
279
279
|
|
|
280
|
-
class
|
|
280
|
+
class Ida85Interface(BackendInterface):
|
|
281
281
|
def __init__(self):
|
|
282
|
-
self.version = "IDA Pro
|
|
282
|
+
self.version = "IDA Pro 8.5+"
|
|
283
283
|
self._processor_map = {"metapc": "intel"}
|
|
284
284
|
self._api_map = {}
|
|
285
285
|
self._import_module_name = ""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: smda
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.3
|
|
4
4
|
Summary: A recursive disassmbler optimized for CFG recovery from memory dumps. Based on capstone.
|
|
5
5
|
Home-page: https://github.com/danielplohmann/smda
|
|
6
6
|
Author: Daniel Plohmann
|
|
@@ -133,6 +133,7 @@ make test
|
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
## Version History
|
|
136
|
+
* 2025-12-10: v2.4.3 - Compatibility issue for IDA export, API changes happened already in 8.5, so adjusted the version check.
|
|
136
137
|
* 2025-11-28: v2.4.2 - Fix for a bug when extracting and merging code areas from section tables. (THX: @r0ny123)
|
|
137
138
|
* 2025-11-28: v2.4.1 - Modernized packaging by also building a wheel. (THX: @dimbleby)
|
|
138
139
|
* 2025-11-21: v2.4.0 - Integration of DelphiReSym by @WenzWenzWenz for Delphi VMT parsing, thanks to @r0ny123 for adapting it!!
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|