DHAMP.EXE.a1 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639
  1. main PROC FAR
  2. 000 0008B4 55 PUSH bp
  3. 001 0008B5 8BEC MOV bp, sp
  4. 002 0008B7 81ECD400 SUB sp, 0D4h
  5. 003 0008BB 56 PUSH si
  6. 004 0008BC 33F6 XOR si, si
  7. 005 0008BE B80700 MOV ax, 7
  8. 006 0008C1 50 PUSH ax
  9. 007 0008C2 1E PUSH ds
  10. 008 0008C3 B89800 MOV ax, 98h
  11. 009 0008C6 50 PUSH ax
  12. 010 0008C7 9A02000E05 CALL far ptr printf
  13. 011 0008CC 83C406 ADD sp, 6
  14. 012 0008CF E98401 JMP L1
  15. 013 000A56 83FE06 L1: CMP si, 6
  16. 014 000A59 7D03 JGE L2
  17. 015 000A5B E974FE JMP L3
  18. 016 0008D2 8BC6 L3: MOV ax, si
  19. 017 0008D4 3D0500 CMP ax, 5
  20. 018 0008D7 7603 JBE L4
  21. 019 0008D9 E97701 JMP L5
  22. 020 000A53 EB00 L5: JMP L6
  23. 021 000A55 46 L6: INC si
  24. 022 JMP L1 ;Synthetic inst
  25. 023 0008DC 8BD8 L4: MOV bx, ax
  26. 024 0008DE D1E3 SHL bx, 1
  27. 025 0008E0 2EFFA73500 JMP word ptr cs:[bx+35h];Switch
  28. 026 0008F1 16 PUSH ss ;Case l0
  29. 027 0008F2 8D4690 LEA ax, [bp-70h]
  30. 028 0008F5 50 PUSH ax
  31. 029 0008F6 16 PUSH ss
  32. 030 0008F7 8D862CFF LEA ax, [bp-0D4h]
  33. 031 0008FB 50 PUSH ax
  34. 032 0008FC 9AC2038B00 CALL far ptr proc_1
  35. 033 000901 83C408 ADD sp, 8
  36. 034 000904 A31806 MOV [618h], ax
  37. 035 000907 FF361806 PUSH word ptr [618h]
  38. 036 00090B 1E PUSH ds
  39. 037 00090C B8A500 MOV ax, 0A5h
  40. 038 00090F 50 PUSH ax
  41. 039 000910 9A02000E05 CALL far ptr printf
  42. 040 000915 83C406 ADD sp, 6
  43. 041 000918 E93A01 JMP L6
  44. 042 00091B 9A1E058B00 CALL far ptr proc_4 ;Case l1
  45. 043 000920 A31A06 MOV [61Ah], ax
  46. 044 000923 FF361A06 PUSH word ptr [61Ah]
  47. 045 000927 1E PUSH ds
  48. 046 000928 B8B400 MOV ax, 0B4h
  49. 047 00092B 50 PUSH ax
  50. 048 00092C 9A02000E05 CALL far ptr printf
  51. 049 000931 83C406 ADD sp, 6
  52. 050 000934 E91E01 JMP L6
  53. 051 000937 B81800 MOV ax, 18h ;Case l2
  54. 052 00093A 50 PUSH ax
  55. 053 00093B 9A90038B00 CALL far ptr proc_5
  56. 054 000940 59 POP cx
  57. 055 000941 A31E06 MOV [61Eh], ax
  58. 056 000944 FF361E06 PUSH word ptr [61Eh]
  59. 057 000948 1E PUSH ds
  60. 058 000949 B8C300 MOV ax, 0C3h
  61. 059 00094C 50 PUSH ax
  62. 060 00094D 9A02000E05 CALL far ptr printf
  63. 061 000952 83C406 ADD sp, 6
  64. 062 000955 E9FD00 JMP L6
  65. 063 000958 C746F60000 MOV word ptr [bp-0Ah], 0;Case l3
  66. 064 00095D C746F40000 MOV word ptr [bp-0Ch], 0
  67. 065 000962 FF76F6 PUSH word ptr [bp-0Ah]
  68. 066 000965 FF76F4 PUSH word ptr [bp-0Ch]
  69. 067 000968 9AC4018B00 CALL far ptr proc_6
  70. 068 00096D 59 POP cx
  71. 069 00096E 59 POP cx
  72. 070 00096F 89162206 MOV [622h], dx
  73. 071 000973 A32006 MOV [620h], ax
  74. 072 000976 FF362206 PUSH word ptr [622h]
  75. 073 00097A FF362006 PUSH word ptr [620h]
  76. 074 00097E 9AC4018B00 CALL far ptr proc_6
  77. 075 000983 59 POP cx
  78. 076 000984 59 POP cx
  79. 077 000985 8956F6 MOV [bp-0Ah], dx
  80. 078 000988 8946F4 MOV [bp-0Ch], ax
  81. 079 00098B FF362206 PUSH word ptr [622h]
  82. 080 00098F FF362006 PUSH word ptr [620h]
  83. 081 000993 1E PUSH ds
  84. 082 000994 B8D200 MOV ax, 0D2h
  85. 083 000997 50 PUSH ax
  86. 084 000998 9A02000E05 CALL far ptr printf
  87. 085 00099D 83C408 ADD sp, 8
  88. 086 0009A0 FF76F6 PUSH word ptr [bp-0Ah]
  89. 087 0009A3 FF76F4 PUSH word ptr [bp-0Ch]
  90. 088 0009A6 1E PUSH ds
  91. 089 0009A7 B8E100 MOV ax, 0E1h
  92. 090 0009AA 50 PUSH ax
  93. 091 0009AB 9A02000E05 CALL far ptr printf
  94. 092 0009B0 83C408 ADD sp, 8
  95. 093 0009B3 E99F00 JMP L6
  96. 094 0009B6 8B162206 MOV dx, [622h] ;Case l4
  97. 095 0009BA A12006 MOV ax, [620h]
  98. 096 0009BD 52 PUSH dx
  99. 097 0009BE 50 PUSH ax
  100. 098 0009BF CD378626FF ESC FILD dword ptr [bp-0DAh]
  101. 099 0009C4 CD3D INT 3Dh /* Unknown int */
  102. 100 0009C6 83C404 ADD sp, 4
  103. 101 0009C9 83EC08 SUB sp, 8
  104. 102 0009CC CD399E22FF ESC FSTP qword ptr [bp-0DEh]
  105. 103 0009D1 CD3D INT 3Dh /* Unknown int */
  106. 104 0009D3 9A21028B00 CALL far ptr proc_7
  107. 105 0009D8 83C408 ADD sp, 8
  108. 106 0009DB CD391E2406 ESC FSTP qword ptr [624h]
  109. 107 0009E0 CD3D INT 3Dh /* Unknown int */
  110. 108 0009E2 FF362A06 PUSH word ptr [62Ah]
  111. 109 0009E6 FF362806 PUSH word ptr [628h]
  112. 110 0009EA FF362606 PUSH word ptr [626h]
  113. 111 0009EE FF362406 PUSH word ptr [624h]
  114. 112 0009F2 1E PUSH ds
  115. 113 0009F3 B8F100 MOV ax, 0F1h
  116. 114 0009F6 50 PUSH ax
  117. 115 0009F7 9A02000E05 CALL far ptr printf
  118. 116 0009FC 83C40C ADD sp, 0Ch
  119. 117 0009FF FF362A06 PUSH word ptr [62Ah]
  120. 118 000A03 FF362806 PUSH word ptr [628h]
  121. 119 000A07 FF362606 PUSH word ptr [626h]
  122. 120 000A0B FF362406 PUSH word ptr [624h]
  123. 121 000A0F 9AE6028B00 CALL far ptr proc_9
  124. 122 000A14 83C408 ADD sp, 8
  125. 123 000A17 CD395EF8 ESC FSTP qword ptr [bp-8]
  126. 124 000A1B CD3D INT 3Dh /* Unknown int */
  127. 125 000A1D FF76FE PUSH word ptr [bp-2]
  128. 126 000A20 FF76FC PUSH word ptr [bp-4]
  129. 127 000A23 FF76FA PUSH word ptr [bp-6]
  130. 128 000A26 FF76F8 PUSH word ptr [bp-8]
  131. 129 000A29 1E PUSH ds
  132. 130 000A2A B80001 MOV ax, 100h
  133. 131 000A2D 50 PUSH ax
  134. 132 000A2E 9A02000E05 CALL far ptr printf
  135. 133 000A33 83C40C ADD sp, 0Ch
  136. 134 000A36 EB1D JMP L6
  137. 135 000A38 9A73048B00 CALL far ptr proc_10 ;Case l5
  138. 136 000A3D A31C06 MOV [61Ch], ax
  139. 137 000A40 FF361C06 PUSH word ptr [61Ch]
  140. 138 000A44 1E PUSH ds
  141. 139 000A45 B80E01 MOV ax, 10Eh
  142. 140 000A48 50 PUSH ax
  143. 141 000A49 9A02000E05 CALL far ptr printf
  144. 142 000A4E 83C406 ADD sp, 6
  145. 143 000A51 EB02 JMP L6
  146. 144 000A5E B80700 L2: MOV ax, 7
  147. 145 000A61 50 PUSH ax
  148. 146 000A62 1E PUSH ds
  149. 147 000A63 B81C01 MOV ax, 11Ch
  150. 148 000A66 50 PUSH ax
  151. 149 000A67 9A02000E05 CALL far ptr printf
  152. 150 000A6C 83C406 ADD sp, 6
  153. 151 000A6F 5E POP si
  154. 152 000A70 8BE5 MOV sp, bp
  155. 153 000A72 5D POP bp
  156. 154 000A73 CB RETF
  157. main ENDP
  158. proc_1 PROC FAR
  159. 000 000C72 55 PUSH bp
  160. 001 000C73 8BEC MOV bp, sp
  161. 002 000C75 56 PUSH si
  162. 003 000C76 57 PUSH di
  163. 004 000C77 33F6 XOR si, si
  164. 005 000C79 33FF XOR di, di
  165. 006 000C7B EB3D JMP L7
  166. 007 000CBA 81FE2823 L7: CMP si, 2328h
  167. 008 000CBE 7CBD JL L8
  168. 009 000CC0 8BC7 MOV ax, di
  169. 010 000CC2 EB00 JMP L9
  170. 011 000CC4 5F L9: POP di
  171. 012 000CC5 5E POP si
  172. 013 000CC6 5D POP bp
  173. 014 000CC7 CB RETF
  174. 015 000C7D 1E L8: PUSH ds
  175. 016 000C7E B83701 MOV ax, 137h
  176. 017 000C81 50 PUSH ax
  177. 018 000C82 FF7608 PUSH word ptr [bp+8]
  178. 019 000C85 FF7606 PUSH word ptr [bp+6]
  179. 020 000C88 9A56048B00 CALL far ptr proc_2
  180. 021 000C8D 83C408 ADD sp, 8
  181. 022 000C90 1E PUSH ds
  182. 023 000C91 B84801 MOV ax, 148h
  183. 024 000C94 50 PUSH ax
  184. 025 000C95 FF760C PUSH word ptr [bp+0Ch]
  185. 026 000C98 FF760A PUSH word ptr [bp+0Ah]
  186. 027 000C9B 9A56048B00 CALL far ptr proc_2
  187. 028 000CA0 83C408 ADD sp, 8
  188. 029 000CA3 FF760C PUSH word ptr [bp+0Ch]
  189. 030 000CA6 FF760A PUSH word ptr [bp+0Ah]
  190. 031 000CA9 FF7608 PUSH word ptr [bp+8]
  191. 032 000CAC FF7606 PUSH word ptr [bp+6]
  192. 033 000CAF 9A18048B00 CALL far ptr proc_3
  193. 034 000CB4 83C408 ADD sp, 8
  194. 035 000CB7 03F8 ADD di, ax
  195. 036 000CB9 46 INC si
  196. 037 JMP L7 ;Synthetic inst
  197. proc_1 ENDP
  198. proc_2 PROC FAR
  199. 000 000D06 55 PUSH bp
  200. 001 000D07 8BEC MOV bp, sp
  201. 002 000D09 EB00 JMP L10
  202. 003 000D0B C45E0A L10: LES bx, dword ptr[bp+0Ah]
  203. 004 000D0E FF460A INC word ptr [bp+0Ah]
  204. 005 000D11 268A07 MOV al, es:[bx]
  205. 006 000D14 C45E06 LES bx, dword ptr[bp+6]
  206. 007 000D17 FF4606 INC word ptr [bp+6]
  207. 008 000D1A 268807 MOV es:[bx], al
  208. 009 000D1D 0AC0 OR al, al
  209. 010 000D1F 75EA JNE L10
  210. 011 000D21 5D POP bp
  211. 012 000D22 CB RETF
  212. proc_2 ENDP
  213. proc_3 PROC FAR
  214. 000 000CC8 55 PUSH bp
  215. 001 000CC9 8BEC MOV bp, sp
  216. 002 000CCB EB13 JMP L11
  217. 003 000CE0 C45E06 L11: LES bx, dword ptr[bp+6]
  218. 004 000CE3 268A07 MOV al, es:[bx]
  219. 005 000CE6 C45E0A LES bx, dword ptr[bp+0Ah]
  220. 006 000CE9 263A07 CMP al, es:[bx]
  221. 007 000CEC 74DF JE L12
  222. 008 000CEE C45E06 LES bx, dword ptr[bp+6]
  223. 009 000CF1 268A07 MOV al, es:[bx]
  224. 010 000CF4 98 CWD
  225. 011 000CF5 C45E0A LES bx, dword ptr[bp+0Ah]
  226. 012 000CF8 50 PUSH ax
  227. 013 000CF9 268A07 MOV al, es:[bx]
  228. 014 000CFC 98 CWD
  229. 015 000CFD 8BD0 MOV dx, ax
  230. 016 000CFF 58 POP ax
  231. 017 000D00 2BC2 SUB ax, dx
  232. 018 000D02 EB00 JMP L13
  233. 019 000D04 5D L13: POP bp
  234. 020 000D05 CB RETF
  235. 021 000CCD C45E06 L12: LES bx, dword ptr[bp+6]
  236. 022 000CD0 26803F00 CMP byte ptr es:[bx], 0
  237. 023 000CD4 7504 JNE L14
  238. 024 000CD6 33C0 XOR ax, ax
  239. 025 000CD8 EB2A JMP L13
  240. 026 000CDA FF4606 L14: INC word ptr [bp+6]
  241. 027 000CDD FF460A INC word ptr [bp+0Ah]
  242. 028 JMP L11 ;Synthetic inst
  243. proc_3 ENDP
  244. proc_4 PROC FAR
  245. 000 000DCE 55 PUSH bp
  246. 001 000DCF 8BEC MOV bp, sp
  247. 002 000DD1 83EC04 SUB sp, 4
  248. 003 000DD4 56 PUSH si
  249. 004 000DD5 57 PUSH di
  250. 005 000DD6 33F6 XOR si, si
  251. 006 000DD8 EB20 JMP L15
  252. 007 000DFA 81FEE803 L15: CMP si, 3E8h
  253. 008 000DFE 7CDA JL L16
  254. 009 000E00 8B46FE MOV ax, [bp-2]
  255. 010 000E03 EB00 JMP L17
  256. 011 000E05 5F L17: POP di
  257. 012 000E06 5E POP si
  258. 013 000E07 8BE5 MOV sp, bp
  259. 014 000E09 5D POP bp
  260. 015 000E0A CB RETF
  261. 016 000DDA C746FE0000 L16: MOV word ptr [bp-2], 0
  262. 017 000DDF 33FF XOR di, di
  263. 018 000DE1 C746FC0100 MOV word ptr [bp-4], 1
  264. 019 000DE6 EB0B JMP L18
  265. 020 000DF3 81FFB300 L18: CMP di, 0B3h
  266. 021 000DF7 7CEF JL L19
  267. 022 000DF9 46 INC si
  268. 023 JMP L15 ;Synthetic inst
  269. 024 000DE8 8B46FC L19: MOV ax, [bp-4]
  270. 025 000DEB 0146FE ADD [bp-2], ax
  271. 026 000DEE 8346FC02 ADD word ptr [bp-4], 2
  272. 027 000DF2 47 INC di
  273. 028 JMP L18 ;Synthetic inst
  274. proc_4 ENDP
  275. proc_5 PROC FAR
  276. 000 000C40 55 PUSH bp
  277. 001 000C41 8BEC MOV bp, sp
  278. 002 000C43 56 PUSH si
  279. 003 000C44 8B7606 MOV si, [bp+6]
  280. 004 000C47 83FE02 CMP si, 2
  281. 005 000C4A 7E1E JLE L20
  282. 006 000C4C 8BC6 MOV ax, si
  283. 007 000C4E 48 DEC ax
  284. 008 000C4F 50 PUSH ax
  285. 009 000C50 0E PUSH cs
  286. 010 000C51 E8ECFF CALL near ptr proc_5
  287. 011 000C54 59 POP cx
  288. 012 000C55 50 PUSH ax
  289. 013 000C56 8BC6 MOV ax, si
  290. 014 000C58 05FEFF ADD ax, 0FFFEh
  291. 015 000C5B 50 PUSH ax
  292. 016 000C5C 0E PUSH cs
  293. 017 000C5D E8E0FF CALL near ptr proc_5
  294. 018 000C60 59 POP cx
  295. 019 000C61 8BD0 MOV dx, ax
  296. 020 000C63 58 POP ax
  297. 021 000C64 03C2 ADD ax, dx
  298. 022 000C66 EB07 JMP L21
  299. 023 000C6F 5E L21: POP si
  300. 024 000C70 5D POP bp
  301. 025 000C71 CB RETF
  302. 026 000C6A B80100 L20: MOV ax, 1
  303. 027 000C6D EB00 JMP L21
  304. proc_5 ENDP
  305. proc_6 PROC FAR
  306. 000 000A74 55 PUSH bp
  307. 001 000A75 8BEC MOV bp, sp
  308. 002 000A77 56 PUSH si
  309. 003 000A78 8B4606 MOV ax, [bp+6]
  310. 004 000A7B 0B4608 OR ax, [bp+8]
  311. 005 000A7E 7524 JNE L22
  312. 006 000A80 33F6 XOR si, si
  313. 007 000A82 EB18 JMP L23
  314. 008 000A9C 81FE2823 L23: CMP si, 2328h
  315. 009 000AA0 7CE2 JL L24
  316. 010 000AA2 EB22 JMP L25
  317. 011 000AC6 8B5608 L25: MOV dx, [bp+8]
  318. 012 000AC9 8B4606 MOV ax, [bp+6]
  319. 013 000ACC EB00 JMP L26
  320. 014 000ACE 5E L26: POP si
  321. 015 000ACF 5D POP bp
  322. 016 000AD0 CB RETF
  323. 017 000A84 8B169600 L24: MOV dx, [96h]
  324. 018 000A88 A19400 MOV ax, [94h]
  325. 019 000A8B 014606 ADD [bp+6], ax
  326. 020 000A8E 115608 ADC [bp+8], dx
  327. 021 000A91 8306940002 ADD word ptr [94h], 2
  328. 022 000A96 8316960000 ADC word ptr [96h], 0
  329. 023 000A9B 46 INC si
  330. 024 JMP L23 ;Synthetic inst
  331. 025 000AA4 33F6 L22: XOR si, si
  332. 026 000AA6 EB18 JMP L27
  333. 027 000AC0 81FE2823 L27: CMP si, 2328h
  334. 028 000AC4 7CE2 JL L28
  335. 029 JMP L25 ;Synthetic inst
  336. 030 000AA8 832E940002 L28: SUB word ptr [94h], 2
  337. 031 000AAD 831E960000 SBB word ptr [96h], 0
  338. 032 000AB2 8B169600 MOV dx, [96h]
  339. 033 000AB6 A19400 MOV ax, [94h]
  340. 034 000AB9 294606 SUB [bp+6], ax
  341. 035 000ABC 195608 SBB [bp+8], dx
  342. 036 000ABF 46 INC si
  343. 037 JMP L27 ;Synthetic inst
  344. proc_6 ENDP
  345. proc_7 PROC FAR
  346. 000 000AD1 55 PUSH bp
  347. 001 000AD2 8BEC MOV bp, sp
  348. 002 000AD4 83EC10 SUB sp, 10h
  349. 003 000AD7 CD394606 ESC FLD qword ptr [bp+6]
  350. 004 000ADB CD38362701 ESC FDIV qword ptr [127h]
  351. 005 000AE0 CD395EF8 ESC FSTP qword ptr [bp-8]
  352. 006 000AE4 CD3D INT 3Dh /* Unknown int */
  353. 007 000AE6 8B460C MOV ax, [bp+0Ch]
  354. 008 000AE9 8946F6 MOV [bp-0Ah], ax
  355. 009 000AEC 8B460A MOV ax, [bp+0Ah]
  356. 010 000AEF 8946F4 MOV [bp-0Ch], ax
  357. 011 000AF2 8B4608 MOV ax, [bp+8]
  358. 012 000AF5 8946F2 MOV [bp-0Eh], ax
  359. 013 000AF8 8B4606 MOV ax, [bp+6]
  360. 014 000AFB 8946F0 MOV [bp-10h], ax
  361. 015 000AFE EB43 JMP L29
  362. 016 000B43 CD39062F01 L29: ESC FLD qword ptr [12Fh]
  363. 017 000B48 CD384EF8 ESC FMUL qword ptr [bp-8]
  364. 018 000B4C CD385EF0 ESC FCOMP qword ptr [bp-10h]
  365. 019 000B50 CD393E2C06 ESC FSTSW qword ptr [62Ch]
  366. 020 000B55 CD3D INT 3Dh /* Unknown int */
  367. 021 000B57 8A262D06 MOV ah, [62Dh]
  368. 022 000B5B 9E SAHF
  369. 023 000B5C 72A2 JB L30
  370. 024 000B5E CD3946F8 ESC FLD qword ptr [bp-8]
  371. 025 000B62 EB00 JMP L31
  372. 026 000B64 8BE5 L31: MOV sp, bp
  373. 027 000B66 5D POP bp
  374. 028 000B67 CB RETF
  375. 029 000B00 CD394606 L30: ESC FLD qword ptr [bp+6]
  376. 030 000B04 CD3876F8 ESC FDIV qword ptr [bp-8]
  377. 031 000B08 CD3866F8 ESC FSUB qword ptr [bp-8]
  378. 032 000B0C CD395EF0 ESC FSTP qword ptr [bp-10h]
  379. 033 000B10 CD3D INT 3Dh /* Unknown int */
  380. 034 000B12 FF76F6 PUSH word ptr [bp-0Ah]
  381. 035 000B15 FF76F4 PUSH word ptr [bp-0Ch]
  382. 036 000B18 FF76F2 PUSH word ptr [bp-0Eh]
  383. 037 000B1B FF76F0 PUSH word ptr [bp-10h]
  384. 038 000B1E 9AB8028B00 CALL far ptr proc_8
  385. 039 000B23 83C408 ADD sp, 8
  386. 040 000B26 CD395EF0 ESC FSTP qword ptr [bp-10h]
  387. 041 000B2A CD3D INT 3Dh /* Unknown int */
  388. 042 000B2C CD394606 ESC FLD qword ptr [bp+6]
  389. 043 000B30 CD3876F8 ESC FDIV qword ptr [bp-8]
  390. 044 000B34 CD3846F8 ESC FADD qword ptr [bp-8]
  391. 045 000B38 CD38362701 ESC FDIV qword ptr [127h]
  392. 046 000B3D CD395EF8 ESC FSTP qword ptr [bp-8]
  393. 047 000B41 CD3D INT 3Dh /* Unknown int */
  394. 048 JMP L29 ;Synthetic inst
  395. proc_7 ENDP
  396. proc_8 PROC FAR
  397. 000 000B68 55 PUSH bp
  398. 001 000B69 8BEC MOV bp, sp
  399. 002 000B6B CD39062601 ESC FLD qword ptr [126h]
  400. 003 000B70 CD394606 ESC FLD qword ptr [bp+6]
  401. 004 000B74 CD3AD9 ESC FCOMPP
  402. 005 000B77 CD393E2C06 ESC FSTSW qword ptr [62Ch]
  403. 006 000B7C CD3D INT 3Dh /* Unknown int */
  404. 007 000B7E 8A262D06 MOV ah, [62Dh]
  405. 008 000B82 9E SAHF
  406. 009 000B83 7309 JAE L32
  407. 010 000B85 CD394606 ESC FLD qword ptr [bp+6]
  408. 011 000B89 CD35E0 ESC FCHS
  409. 012 000B8C EB04 JMP L33
  410. 013 000B92 EB00 L33: JMP L34
  411. 014 000B94 5D L34: POP bp
  412. 015 000B95 CB RETF
  413. 016 000B8E CD394606 L32: ESC FLD qword ptr [bp+6]
  414. 017 JMP L33 ;Synthetic inst
  415. proc_8 ENDP
  416. proc_9 PROC FAR
  417. 000 000B96 55 PUSH bp
  418. 001 000B97 8BEC MOV bp, sp
  419. 002 000B99 83EC08 SUB sp, 8
  420. 003 000B9C 56 PUSH si
  421. 004 000B9D BE6400 MOV si, 64h
  422. 005 000BA0 E98800 JMP L35
  423. 006 000C2B 8BC6 L35: MOV ax, si
  424. 007 000C2D 4E DEC si
  425. 008 000C2E 0BC0 OR ax, ax
  426. 009 000C30 7403 JE L36
  427. 010 000C32 E96EFF JMP L37
  428. 011 000BA3 CD394606 L37: ESC FLD qword ptr [bp+6]
  429. 012 000BA7 CD384E06 ESC FMUL qword ptr [bp+6]
  430. 013 000BAB CD384E06 ESC FMUL qword ptr [bp+6]
  431. 014 000BAF CD384E06 ESC FMUL qword ptr [bp+6]
  432. 015 000BB3 CD384E06 ESC FMUL qword ptr [bp+6]
  433. 016 000BB7 CD384E06 ESC FMUL qword ptr [bp+6]
  434. 017 000BBB CD384E06 ESC FMUL qword ptr [bp+6]
  435. 018 000BBF CD395EF8 ESC FSTP qword ptr [bp-8]
  436. 019 000BC3 CD3D INT 3Dh /* Unknown int */
  437. 020 000BC5 CD3946F8 ESC FLD qword ptr [bp-8]
  438. 021 000BC9 CD387606 ESC FDIV qword ptr [bp+6]
  439. 022 000BCD CD387606 ESC FDIV qword ptr [bp+6]
  440. 023 000BD1 CD387606 ESC FDIV qword ptr [bp+6]
  441. 024 000BD5 CD387606 ESC FDIV qword ptr [bp+6]
  442. 025 000BD9 CD387606 ESC FDIV qword ptr [bp+6]
  443. 026 000BDD CD387606 ESC FDIV qword ptr [bp+6]
  444. 027 000BE1 CD395EF8 ESC FSTP qword ptr [bp-8]
  445. 028 000BE5 CD3D INT 3Dh /* Unknown int */
  446. 029 000BE7 CD3946F8 ESC FLD qword ptr [bp-8]
  447. 030 000BEB CD384606 ESC FADD qword ptr [bp+6]
  448. 031 000BEF CD384606 ESC FADD qword ptr [bp+6]
  449. 032 000BF3 CD384606 ESC FADD qword ptr [bp+6]
  450. 033 000BF7 CD384606 ESC FADD qword ptr [bp+6]
  451. 034 000BFB CD384606 ESC FADD qword ptr [bp+6]
  452. 035 000BFF CD384606 ESC FADD qword ptr [bp+6]
  453. 036 000C03 CD395EF8 ESC FSTP qword ptr [bp-8]
  454. 037 000C07 CD3D INT 3Dh /* Unknown int */
  455. 038 000C09 CD3946F8 ESC FLD qword ptr [bp-8]
  456. 039 000C0D CD386606 ESC FSUB qword ptr [bp+6]
  457. 040 000C11 CD386606 ESC FSUB qword ptr [bp+6]
  458. 041 000C15 CD386606 ESC FSUB qword ptr [bp+6]
  459. 042 000C19 CD386606 ESC FSUB qword ptr [bp+6]
  460. 043 000C1D CD386606 ESC FSUB qword ptr [bp+6]
  461. 044 000C21 CD386606 ESC FSUB qword ptr [bp+6]
  462. 045 000C25 CD395EF8 ESC FSTP qword ptr [bp-8]
  463. 046 000C29 CD3D INT 3Dh /* Unknown int */
  464. 047 JMP L35 ;Synthetic inst
  465. 048 000C35 CD3946F8 L36: ESC FLD qword ptr [bp-8]
  466. 049 000C39 EB00 JMP L38
  467. 050 000C3B 5E L38: POP si
  468. 051 000C3C 8BE5 MOV sp, bp
  469. 052 000C3E 5D POP bp
  470. 053 000C3F CB RETF
  471. proc_9 ENDP
  472. proc_10 PROC FAR
  473. 000 000D23 55 PUSH bp
  474. 001 000D24 8BEC MOV bp, sp
  475. 002 000D26 83EC68 SUB sp, 68h
  476. 003 000D29 56 PUSH si
  477. 004 000D2A 57 PUSH di
  478. 005 000D2B 1E PUSH ds
  479. 006 000D2C B85901 MOV ax, 159h
  480. 007 000D2F 50 PUSH ax
  481. 008 000D30 16 PUSH ss
  482. 009 000D31 8D469C LEA ax, [bp-64h]
  483. 010 000D34 50 PUSH ax
  484. 011 000D35 0E PUSH cs
  485. 012 000D36 E8CDFF CALL near ptr proc_2
  486. 013 000D39 83C408 ADD sp, 8
  487. 014 000D3C 1E PUSH ds
  488. 015 000D3D B87001 MOV ax, 170h
  489. 016 000D40 50 PUSH ax
  490. 017 000D41 1E PUSH ds
  491. 018 000D42 B86701 MOV ax, 167h
  492. 019 000D45 50 PUSH ax
  493. 020 000D46 9A24022904 CALL far ptr fopen
  494. 021 000D4B 83C408 ADD sp, 8
  495. 022 000D4E 89569A MOV [bp-66h], dx
  496. 023 000D51 894698 MOV [bp-68h], ax
  497. 024 000D54 0BD0 OR dx, ax
  498. 025 000D56 7516 JNE L39
  499. 026 000D58 1E PUSH ds
  500. 027 000D59 B87201 MOV ax, 172h
  501. 028 000D5C 50 PUSH ax
  502. 029 000D5D 9A02000E05 CALL far ptr printf
  503. 030 000D62 59 POP cx
  504. 031 000D63 59 POP cx
  505. 032 000D64 B8FFFF MOV ax, 0FFFFh
  506. 033 000D67 50 PUSH ax
  507. 034 000D68 9A0200DA03 CALL far ptr exit
  508. 035 000D6D 59 POP cx
  509. 036 000D6E 33FF L39: XOR di, di
  510. 037 000D70 EB3D JMP L40
  511. 038 000DAF 47 L40: INC di
  512. 039 000DB0 8BC7 MOV ax, di
  513. 040 000DB2 3DE803 CMP ax, 3E8h
  514. 041 000DB5 7CBB JL L41
  515. 042 000DB7 FF769A PUSH word ptr [bp-66h]
  516. 043 000DBA FF7698 PUSH word ptr [bp-68h]
  517. 044 000DBD 9A0800A104 CALL far ptr fclose
  518. 045 000DC2 59 POP cx
  519. 046 000DC3 59 POP cx
  520. 047 000DC4 8BC7 MOV ax, di
  521. 048 000DC6 EB00 JMP L42
  522. 049 000DC8 5F L42: POP di
  523. 050 000DC9 5E POP si
  524. 051 000DCA 8BE5 MOV sp, bp
  525. 052 000DCC 5D POP bp
  526. 053 000DCD CB RETF
  527. 054 000D72 33F6 L41: XOR si, si
  528. 055 000D74 EB32 JMP L43
  529. 056 000DA8 36807A9C00 L43: CMP byte ptr ss:[bp+si-64h], 0
  530. 057 000DAD 75C7 JNE L44
  531. 058 JMP L40 ;Synthetic inst
  532. 059 000D76 C45E98 L44: LES bx, dword ptr[bp-68h]
  533. 060 000D79 26FF07 INC word ptr es:[bx]
  534. 061 000D7C 7D17 JGE L45
  535. 062 000D7E 368A429C MOV al, ss:[bp+si-64h]
  536. 063 000D82 C45E98 LES bx, dword ptr[bp-68h]
  537. 064 000D85 26FF470C INC word ptr es:[bx+0Ch]
  538. 065 000D89 26C45F0C LES bx, dword ptres:[bx+0Ch]
  539. 066 000D8D 4B DEC bx
  540. 067 000D8E 268807 MOV es:[bx], al
  541. 068 000D91 B400 MOV ah, 0
  542. 069 000D93 EB12 JMP L46
  543. 070 000DA7 46 L46: INC si
  544. 071 JMP L43 ;Synthetic inst
  545. 072 000D95 FF769A L45: PUSH word ptr [bp-66h]
  546. 073 000D98 FF7698 PUSH word ptr [bp-68h]
  547. 074 000D9B 36FF729C PUSH word ptr ss:[bp+si-64h]
  548. 075 000D9F 9A06001005 CALL far ptr _fputc
  549. 076 000DA4 83C406 ADD sp, 6
  550. 077 JMP L46 ;Synthetic inst
  551. proc_10 ENDP