-
Notifications
You must be signed in to change notification settings - Fork 144
/
sample1-virt-dispatcher-linear.py
166 lines (162 loc) · 7.1 KB
/
sample1-virt-dispatcher-linear.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
#!/usr/bin/env python2
## -*- coding: utf-8 -*-
import sys
def sx(bits, value):
sign_bit = 1 << (bits - 1)
return (value & (sign_bit - 1)) - (value & sign_bit)
SymVar_0 = int(sys.argv[1])
ref_264 = SymVar_0
ref_279 = ref_264 # MOV operation
ref_15057 = ref_279 # MOV operation
ref_16997 = ref_15057 # MOV operation
ref_17005 = ((ref_16997 << (0x39 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_17012 = ref_17005 # MOV operation
ref_21805 = ref_279 # MOV operation
ref_23495 = ref_21805 # MOV operation
ref_23503 = (ref_23495 >> (0x7 & 0x3F)) # SHR operation
ref_23510 = ref_23503 # MOV operation
ref_24351 = ref_23510 # MOV operation
ref_24363 = ref_17012 # MOV operation
ref_24365 = (ref_24363 | ref_24351) # OR operation
ref_24569 = ref_24365 # MOV operation
ref_35995 = ref_24569 # MOV operation
ref_37139 = ref_35995 # MOV operation
ref_37141 = ((ref_37139 + 0x2D4AF89B) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_37650 = ref_37141 # MOV operation
ref_37652 = (ref_37650 & 0x1D5ABF66) # AND operation
ref_42450 = ref_279 # MOV operation
ref_44390 = ref_42450 # MOV operation
ref_44398 = ((ref_44390 << (0x35 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_44405 = ref_44398 # MOV operation
ref_49198 = ref_279 # MOV operation
ref_50888 = ref_49198 # MOV operation
ref_50896 = (ref_50888 >> (0xB & 0x3F)) # SHR operation
ref_50903 = ref_50896 # MOV operation
ref_51744 = ref_50903 # MOV operation
ref_51756 = ref_44405 # MOV operation
ref_51758 = (ref_51756 | ref_51744) # OR operation
ref_52304 = ref_51758 # MOV operation
ref_52316 = ref_37652 # MOV operation
ref_52318 = ((ref_52304 - ref_52316) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_52326 = ref_52318 # MOV operation
ref_52525 = ref_52326 # MOV operation
ref_63116 = ref_279 # MOV operation
ref_63637 = ref_63116 # MOV operation
ref_63651 = ((ref_63637 - 0xE8D4346) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_63659 = ref_63651 # MOV operation
ref_63858 = ref_63659 # MOV operation
ref_75284 = ref_24569 # MOV operation
ref_75655 = ref_75284 # MOV operation
ref_75669 = ((0x20453EE3 + ref_75655) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_80468 = ref_279 # MOV operation
ref_80989 = ref_80468 # MOV operation
ref_81001 = ref_75669 # MOV operation
ref_81003 = ((ref_80989 - ref_81001) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_81011 = ref_81003 # MOV operation
ref_81210 = ref_81011 # MOV operation
ref_99381 = ref_24569 # MOV operation
ref_106894 = ref_63858 # MOV operation
ref_107715 = ref_106894 # MOV operation
ref_107727 = ref_99381 # MOV operation
ref_107729 = (ref_107727 | ref_107715) # OR operation
ref_108994 = ref_107729 # MOV operation
ref_109000 = (0x3F & ref_108994) # AND operation
ref_110965 = ref_109000 # MOV operation
ref_110973 = ((ref_110965 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_110980 = ref_110973 # MOV operation
ref_117341 = ref_24569 # MOV operation
ref_118162 = ref_117341 # MOV operation
ref_118174 = ref_110980 # MOV operation
ref_118176 = (ref_118174 | ref_118162) # OR operation
ref_118380 = ref_118176 # MOV operation
ref_130950 = ref_52525 # MOV operation
ref_138052 = ref_118380 # MOV operation
ref_139742 = ref_138052 # MOV operation
ref_139750 = (ref_139742 >> (0x1 & 0x3F)) # SHR operation
ref_139757 = ref_139750 # MOV operation
ref_141017 = ref_139757 # MOV operation
ref_141023 = (0xF & ref_141017) # AND operation
ref_141869 = ref_141023 # MOV operation
ref_141883 = (0x1 | ref_141869) # OR operation
ref_143202 = ref_141883 # MOV operation
ref_143204 = ((0x40 - ref_143202) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_143212 = ref_143204 # MOV operation
ref_144411 = ref_130950 # MOV operation
ref_144415 = ref_143212 # MOV operation
ref_144417 = (ref_144415 & 0xFFFFFFFF) # MOV operation
ref_144419 = ((ref_144411 << ((ref_144417 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_144426 = ref_144419 # MOV operation
ref_150054 = ref_52525 # MOV operation
ref_157156 = ref_118380 # MOV operation
ref_158846 = ref_157156 # MOV operation
ref_158854 = (ref_158846 >> (0x1 & 0x3F)) # SHR operation
ref_158861 = ref_158854 # MOV operation
ref_160121 = ref_158861 # MOV operation
ref_160127 = (0xF & ref_160121) # AND operation
ref_160973 = ref_160127 # MOV operation
ref_160987 = (0x1 | ref_160973) # OR operation
ref_161941 = ref_150054 # MOV operation
ref_161945 = ref_160987 # MOV operation
ref_161947 = (ref_161945 & 0xFFFFFFFF) # MOV operation
ref_161949 = (ref_161941 >> ((ref_161947 & 0xFF) & 0x3F)) # SHR operation
ref_161956 = ref_161949 # MOV operation
ref_162797 = ref_161956 # MOV operation
ref_162809 = ref_144426 # MOV operation
ref_162811 = (ref_162809 | ref_162797) # OR operation
ref_163015 = ref_162811 # MOV operation
ref_173680 = ref_81210 # MOV operation
ref_181193 = ref_163015 # MOV operation
ref_181714 = ref_181193 # MOV operation
ref_181726 = ref_173680 # MOV operation
ref_181728 = ((ref_181714 - ref_181726) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_181736 = ref_181728 # MOV operation
ref_181935 = ref_181736 # MOV operation
ref_200970 = ref_118380 # MOV operation
ref_207339 = ref_52525 # MOV operation
ref_208579 = ref_207339 # MOV operation
ref_208585 = (0xF & ref_208579) # AND operation
ref_209431 = ref_208585 # MOV operation
ref_209445 = (0x1 | ref_209431) # OR operation
ref_210764 = ref_209445 # MOV operation
ref_210766 = ((0x40 - ref_210764) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_210774 = ref_210766 # MOV operation
ref_211973 = ref_200970 # MOV operation
ref_211977 = ref_210774 # MOV operation
ref_211979 = (ref_211977 & 0xFFFFFFFF) # MOV operation
ref_211981 = ((ref_211973 << ((ref_211979 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_211988 = ref_211981 # MOV operation
ref_217616 = ref_118380 # MOV operation
ref_223985 = ref_52525 # MOV operation
ref_225225 = ref_223985 # MOV operation
ref_225231 = (0xF & ref_225225) # AND operation
ref_226077 = ref_225231 # MOV operation
ref_226091 = (0x1 | ref_226077) # OR operation
ref_227045 = ref_217616 # MOV operation
ref_227049 = ref_226091 # MOV operation
ref_227051 = (ref_227049 & 0xFFFFFFFF) # MOV operation
ref_227053 = (ref_227045 >> ((ref_227051 & 0xFF) & 0x3F)) # SHR operation
ref_227060 = ref_227053 # MOV operation
ref_227901 = ref_227060 # MOV operation
ref_227913 = ref_211988 # MOV operation
ref_227915 = (ref_227913 | ref_227901) # OR operation
ref_234309 = ref_81210 # MOV operation
ref_239917 = ref_181935 # MOV operation
ref_240738 = ref_239917 # MOV operation
ref_240750 = ref_234309 # MOV operation
ref_240752 = (ref_240750 | ref_240738) # OR operation
ref_242467 = ref_240752 # MOV operation
ref_242475 = (ref_242467 >> (0x1 & 0x3F)) # SHR operation
ref_242482 = ref_242475 # MOV operation
ref_243742 = ref_242482 # MOV operation
ref_243748 = (0x7 & ref_243742) # AND operation
ref_244594 = ref_243748 # MOV operation
ref_244608 = (0x1 | ref_244594) # OR operation
ref_245812 = ref_227915 # MOV operation
ref_245816 = ref_244608 # MOV operation
ref_245818 = (ref_245816 & 0xFFFFFFFF) # MOV operation
ref_245820 = ((ref_245812 << ((ref_245818 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_245827 = ref_245820 # MOV operation
ref_246026 = ref_245827 # MOV operation
ref_247727 = ref_246026 # MOV operation
ref_247729 = ref_247727 # MOV operation
print ref_247729 & 0xffffffffffffffff