dword64
0c2e3e122e
updated pe parsing, split operators, update docs
2026-04-05 00:02:58 +02:00
dword64
667eea2b1e
unique_ptr ownership, safer virtual interfaces, and pch/unity speedups and more
2026-04-04 20:13:26 +02:00
dword64
4292245507
possible fix tracer stack overflow vulnerabilities ( #52 , #78 ), cap/keystone version bump, #79 and #81
2026-04-01 16:57:42 +02:00
windy
34f5502b0b
fix https://github.com/vtil-project/VTIL-Core/issues/74
2022-07-13 13:35:18 +08:00
zZzetaS
32ee99ee8d
merged & added tests for bblock_thunk_removal_pass
2022-01-14 22:55:20 +01:00
Duncan Ogilvie
033c7577ce
Improve CMake and add instructions to README
2022-01-14 16:32:31 +01:00
Duncan Ogilvie
cda7694f91
Merge pull request #62 from wallds/patch-1
...
Fix test_access
2022-01-14 13:37:39 +01:00
windy
b92c3f736f
make compatible (x86)
2022-01-14 12:48:12 +01:00
wallds
611c274b2e
Fix test_access
2022-01-13 11:44:45 +08:00
z3t4s
617df086bf
Applied fixes that are not yet available in master. Also added a new thunk removal pass
2022-01-12 23:42:06 +01:00
Duncan Ogilvie
c658914c53
Fix compilation on GCC 11.1
2022-01-10 22:08:33 +01:00
windy
f0316a22ab
Fix bit operation
2021-08-30 23:35:55 +08:00
windy
04fd7da3ac
Make arch::size to signed int
2021-08-26 22:41:46 +08:00
windy
ffaf8ca91f
Add unit tests for optimization passes
2021-08-20 13:03:49 +08:00
windy
566d2a998c
Fix constexpr compile error
2021-08-18 22:05:41 +08:00
windy
57fda60379
Fix all warning in x86
2021-08-17 23:24:32 +08:00
windy
4c465af036
Fix x86 optimizers, demo-tests:
...
```
:: After:
| | Entry point VIP: 0x1337
| | Stack pointer: -0x8
| | Already visited?: N
| | ------------------------
| | 0000: [ PSEUDO ] -0x8 movd eax 0x1
| | 0001: [ PSEUDO ] -0x8 strd $sp -0x4 0x0
| | 0002: [ PSEUDO ] -0x8 strd $sp -0x8 0x1
| | 0003: [ PSEUDO ] -0x8 vpinrd eax
| | 0004: [ PSEUDO ] -0x8 vexitq 0x0
```
2021-08-16 02:54:00 +08:00
windy
37b436a584
x86 Test OK
2021-08-08 23:16:28 +08:00
windy
1004668b55
Add build docs for Visual Studio
2021-08-02 23:41:48 +08:00
nullxzero
dd9edf6634
Fix failed validation for wrong bit_count()
...
For some rare targets, this assertion fails:
```cpp
cvalidate( operands[ idx ].bit_count() == 64 );
```
Can mentioned it should likely be fine if the operand is immediate, so adding this to the equation solved the problem.
2021-03-17 23:05:28 -07:00
Peter Meerwald-Stadler
74134a8f56
Use C++-style include cstdint
2021-02-10 23:20:09 +01:00
Peter Meerwald-Stadler
6e668bdd08
Fix some typos
2021-02-10 23:19:57 +01:00
Can Bölük
7e741095ab
Fixing a bug with calling conventions.
2020-12-06 18:29:37 +01:00
Duncan Ogilvie
9c56d906fd
Add implicit conversion from enum in register_desc
2020-11-16 03:22:49 +01:00
Can Bölük
3ea858c8e6
Fix batch translator for non-free variables, add util finally.
2020-08-24 20:49:53 +02:00
Can Bölük
5b6d37e129
Const-correct VM interface.
2020-08-24 06:08:18 +02:00
Can Bölük
a25ce864fe
Routine uses unordered_map now, other minor changes.
2020-08-24 04:38:15 +02:00
Can Bölük
0b316c6cfd
Implemented basic std::fs support, reworked time/iterator helpers.
2020-08-24 04:00:44 +02:00
Can Bölük
e415dcdcf4
Serialization now checks for invalid files.
2020-08-24 00:23:40 +02:00
Can Bölük
7e85f61632
Don't reset stack.
2020-08-23 23:41:29 +02:00
Can Bölük
e751abf966
Fixing style.
2020-08-23 23:40:15 +02:00
Can Bölük
930843a267
Fixing pathing logic yet again.
2020-08-23 23:38:57 +02:00
Can Bölük
8ce6834536
Fixing pathing logic.
2020-08-23 23:38:21 +02:00
Can Bölük
dd3d0d6946
Converting has_path into debug warning.
2020-08-23 11:12:37 +02:00
Can Bölük
6e174a6492
Fixing access check logic for call conventions.
2020-08-23 07:42:42 +02:00
Can Bölük
0ec97f0c17
Fixing further bugs with test_access, improved access_details interface.
2020-08-23 07:07:11 +02:00
Can Bölük
98e8748dd8
Skipping branches that do not reach the target in rtrace.
2020-08-23 06:41:22 +02:00
Can Bölük
af918e0d74
Fixing a major bug discarding second operation on identical operand.
2020-08-23 06:34:38 +02:00
Can Bölük
e5660264c3
Implementing proper access_details merging.
2020-08-23 06:34:02 +02:00
Can Bölük
1e878c0d83
Fix ::flush lock type.
2020-08-23 05:46:54 +02:00
Can Bölük
0bbc82b8f8
Implemented optimizer::execution_order.
2020-08-23 05:44:11 +02:00
Can Bölük
fbd82c8469
Better naming of depth ordered list.
2020-08-23 03:55:23 +02:00
Can Bölük
3bff85e673
Clone now fixes depth-ord cache, move out of multivariate.
2020-08-23 03:02:13 +02:00
Can Bölük
4c00a06de8
Implemented routine::get_depth_ordered_list, implemented cfg epoch.
2020-08-23 02:31:39 +02:00
Can Bölük
38c882e75f
Uncomment loop detection.
2020-08-22 06:34:14 +02:00
Can Bölük
e9323a0dbb
Implemented epoch tracking for vtil::routine.
2020-08-22 06:32:21 +02:00
Can Bölük
5a2b31e495
Removing tracer limit, implementing more efficient iteration.
2020-08-22 03:48:02 +02:00
Can Bölük
fac4c68236
Removed vector allocating ::recurse, replacing with ::enum_paths.
2020-08-22 03:47:49 +02:00
Can Bölük
01beb45a76
Fixing potential loop detection logic.
2020-08-22 01:23:48 +02:00
Can Bölük
dc4d0d3598
Fixing typo.
2020-08-22 01:21:31 +02:00