7
7
#include " utility/dummy_object.hpp"
8
8
9
9
typedef dummy_object_vmt<0x20 , 0x4C5540 > CAtomicModelInfo_SA;
10
+ typedef dummy_object_vmt<0x44 , 0x5602D0 > CAtomicModelInfo_VC;
10
11
11
12
13
+ struct AtomicModelsVC : public StoreAdjuster <CAtomicModelInfo_VC, 0x709EAC , 3885 > // T, pDefaultStore, dwDefaultCapacity
14
+ {
15
+ const char * GetLimitName ()
16
+ {
17
+ return IsVC () ? " AtomicModels" : nullptr ;
18
+ }
19
+
20
+ AtomicModelsVC ()
21
+ {
22
+ if (*(DWORD *)0x55FEC1 != 3885 ) // exe modified by another adjuster
23
+ return ;
24
+
25
+ this ->SetGrower (0x48C688 );
26
+ this ->AddPointer (0x55F732 , 0x0 );
27
+ this ->AddPointer (0x55F755 , 0x0 );
28
+ this ->AddPointer (0x55F75B , 0x0 );
29
+ this ->AddPointer (0x55F764 , 0x0 );
30
+ this ->AddPointer (0x55F83A , 0x0 );
31
+ this ->AddPointer (0x55F842 , 0x0 );
32
+ this ->AddPointer (0x55F858 , 0x0 );
33
+ this ->AddPointer (0x55F9BA , 0x0 );
34
+ this ->AddPointer (0x55FB24 , 0x0 );
35
+ this ->AddPointer (0x55FB2E , 0x0 );
36
+ this ->AddPointer (0x55FBB3 , 0x0 );
37
+ this ->AddPointer (0x55FBB9 , 0x0 );
38
+ this ->AddPointer (0x55FBC2 , 0x0 );
39
+ this ->AddPointer (0x55FBFA , 0x0 );
40
+ this ->AddPointer (0x55FC17 , 0x0 );
41
+ this ->AddPointer (0x55FC1D , 0x0 );
42
+ this ->AddPointer (0x55FC26 , 0x0 );
43
+ this ->AddPointer (0x55FC5E , 0x0 );
44
+ this ->AddPointer (0x55FC7B , 0x0 );
45
+ this ->AddPointer (0x55FC81 , 0x0 );
46
+ this ->AddPointer (0x55FC8A , 0x0 );
47
+ this ->AddPointer (0x55FCC2 , 0x0 );
48
+ this ->AddPointer (0x55FCDF , 0x0 );
49
+ this ->AddPointer (0x55FCE5 , 0x0 );
50
+ this ->AddPointer (0x55FCEE , 0x0 );
51
+ this ->AddPointer (0x55FD26 , 0x0 );
52
+ this ->AddPointer (0x55FD43 , 0x0 );
53
+ this ->AddPointer (0x55FD49 , 0x0 );
54
+ this ->AddPointer (0x55FD52 , 0x0 );
55
+ this ->AddPointer (0x55FD8A , 0x0 );
56
+ this ->AddPointer (0x55FDA7 , 0x0 );
57
+ this ->AddPointer (0x55FDAD , 0x0 );
58
+ this ->AddPointer (0x55FDB6 , 0x0 );
59
+ this ->AddPointer (0x55FDEE , 0x0 );
60
+ this ->AddPointer (0x55FE0B , 0x0 );
61
+ this ->AddPointer (0x55FE11 , 0x0 );
62
+ this ->AddPointer (0x55FE1A , 0x0 );
63
+ this ->AddPointer (0x55FE52 , 0x0 );
64
+ this ->AddPointer (0x55FE6F , 0x0 );
65
+ this ->AddPointer (0x55FE75 , 0x0 );
66
+ this ->AddPointer (0x55FE7E , 0x0 );
67
+ // this->AddPointer(0x55FEE0, 0x0);
68
+ // this->AddPointer(0x55FEF3, 0x0);
69
+ if (GetLimitName ()) injector::MakeNOP (0x55F74C , 5 , true );
70
+ }
71
+
72
+ } AtomicModelsVC;
73
+
12
74
struct AtomicModelsSA : public StoreAdjuster <CAtomicModelInfo_SA, 0xAAE950 , 14000 > // T, pDefaultStore, dwDefaultCapacity
13
75
{
14
- const char * GetLimitName ()
76
+ const char * GetLimitName ()
15
77
{
16
78
return IsSA ()? " AtomicModels" : nullptr ;
17
79
}
18
80
19
- AtomicModelsSA ()
20
- {
81
+ AtomicModelsSA ()
82
+ {
21
83
this ->SetGrower (0x5B3D9A );
22
84
this ->AddPointer (0x4C63E1 , 0x0 );
23
85
this ->AddPointer (0x4C63FE , 0x0 );
@@ -56,6 +118,6 @@ struct AtomicModelsSA : public StoreAdjuster<CAtomicModelInfo_SA, 0xAAE950, 1400
56
118
this ->AddPointer (0x4C69EF , 0x4 );
57
119
this ->AddPointer (0x4C6A2E , 0x4 );
58
120
this ->AddPointer (0x4C68AC , 0x1C );
59
- }
121
+ }
60
122
61
- } AtomicModelInfoSA;
123
+ } AtomicModelInfoSA;
0 commit comments