Advertisement
Souhail_Hammou

calc!putnum

Dec 22nd, 2013
6,368
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.48 KB | None | 0 0
  1. calc!putnum+0x102:
  2. 00000000`ff9a279d 8b0dc5080700 mov ecx,dword ptr [calc!g_nRadix (00000000`ffa13068)]
  3. 00000000`ff9a27a3 8bd1 mov edx,ecx
  4. 00000000`ff9a27a5 e81e290000 call calc!longtonum (00000000`ff9a50c8)
  5. 00000000`ff9a27aa 488b1597090700 mov rdx,qword ptr [calc!num_two (00000000`ffa13148)]
  6. 00000000`ff9a27b1 837a0401 cmp dword ptr [rdx+4],1
  7. 00000000`ff9a27b5 488be8 mov rbp,rax
  8. 00000000`ff9a27b8 4889442438 mov qword ptr [rsp+38h],rax
  9. 00000000`ff9a27bd 7f0a jg calc!putnum+0x13c (00000000`ff9a27c9)
  10.  
  11. calc!putnum+0x124:
  12. 00000000`ff9a27bf 837a0c01 cmp dword ptr [rdx+0Ch],1
  13. 00000000`ff9a27c3 0f84b48c0300 je calc!putnum+0x12a (00000000`ff9db47d)
  14.  
  15. calc!putnum+0x13c:
  16. 00000000`ff9a27c9 448b0598080700 mov r8d,dword ptr [calc!g_nRadix (00000000`ffa13068)]
  17. 00000000`ff9a27d0 488d4c2438 lea rcx,[rsp+38h]
  18. 00000000`ff9a27d5 e8e64b0000 call calc!_divnum (00000000`ff9a73c0)
  19. 00000000`ff9a27da 488b6c2438 mov rbp,qword ptr [rsp+38h]
  20. 00000000`ff9a27df 4533d2 xor r10d,r10d
  21.  
  22. calc!putnum+0x155:
  23. 00000000`ff9a27e2 488b442428 mov rax,qword ptr [rsp+28h]
  24. 00000000`ff9a27e7 448b059e080700 mov r8d,dword ptr [calc!g_maxout (00000000`ffa1308c)]
  25. 00000000`ff9a27ee 8b4808 mov ecx,dword ptr [rax+8]
  26. 00000000`ff9a27f1 2b4d04 sub ecx,dword ptr [rbp+4]
  27. 00000000`ff9a27f4 034804 add ecx,dword ptr [rax+4]
  28. 00000000`ff9a27f7 412bc8 sub ecx,r8d
  29. 00000000`ff9a27fa 894d08 mov dword ptr [rbp+8],ecx
  30. 00000000`ff9a27fd 488b442428 mov rax,qword ptr [rsp+28h]
  31. 00000000`ff9a2802 8b08 mov ecx,dword ptr [rax]
  32. 00000000`ff9a2804 894d00 mov dword ptr [rbp],ecx
  33.  
  34. calc!putnum+0x17a:
  35. 00000000`ff9a2807 8b8c2488000000 mov ecx,dword ptr [rsp+88h]
  36. 00000000`ff9a280e e92a310000 jmp calc!putnum+0x181 (00000000`ff9a593d)
  37.  
  38. calc!putnum+0x354:
  39. 00000000`ff9a28ef 66890b mov word ptr [rbx],cx
  40. 00000000`ff9a28f2 4883c302 add rbx,2
  41. 00000000`ff9a28f6 2bf7 sub esi,edi
  42. 00000000`ff9a28f8 0f851b310000 jne calc!putnum+0x36d (00000000`ff9a5a19)
  43.  
  44. calc!putnum+0x35f:
  45. 00000000`ff9a28fe 0fb705cb1e0700 movzx eax,word ptr [calc!gszDec (00000000`ffa147d0)]
  46. 00000000`ff9a2905 668903 mov word ptr [rbx],ax
  47. 00000000`ff9a2908 4883c302 add rbx,2
  48. 00000000`ff9a290c e908310000 jmp calc!putnum+0x36d (00000000`ff9a5a19)
  49.  
  50. calc!putnum:
  51. 00000000`ff9a5860 488bc4 mov rax,rsp
  52. 00000000`ff9a5863 44894018 mov dword ptr [rax+18h],r8d
  53. 00000000`ff9a5867 48895010 mov qword ptr [rax+10h],rdx
  54. 00000000`ff9a586b 48894808 mov qword ptr [rax+8],rcx
  55. 00000000`ff9a586f 53 push rbx
  56. 00000000`ff9a5870 55 push rbp
  57. 00000000`ff9a5871 56 push rsi
  58. 00000000`ff9a5872 57 push rdi
  59. 00000000`ff9a5873 4883ec48 sub rsp,48h
  60. 00000000`ff9a5877 488b0a mov rcx,qword ptr [rdx]
  61. 00000000`ff9a587a 8b150cd80600 mov edx,dword ptr [calc!g_maxout (00000000`ffa1308c)]
  62. 00000000`ff9a5880 33db xor ebx,ebx
  63. 00000000`ff9a5882 83c202 add edx,2
  64. 00000000`ff9a5885 418bf8 mov edi,r8d
  65. 00000000`ff9a5888 488beb mov rbp,rbx
  66. 00000000`ff9a588b 4489442420 mov dword ptr [rsp+20h],r8d
  67. 00000000`ff9a5890 488948c0 mov qword ptr [rax-40h],rcx
  68. 00000000`ff9a5894 e827020000 call calc!stripzeroesnum (00000000`ff9a5ac0)
  69. 00000000`ff9a5899 488b442428 mov rax,qword ptr [rsp+28h]
  70. 00000000`ff9a589e 8d5301 lea edx,[rbx+1]
  71. 00000000`ff9a58a1 8b4804 mov ecx,dword ptr [rax+4]
  72. 00000000`ff9a58a4 8b4008 mov eax,dword ptr [rax+8]
  73. 00000000`ff9a58a7 8d3401 lea esi,[rcx+rax]
  74. 00000000`ff9a58aa 8b05dcd70600 mov eax,dword ptr [calc!g_maxout (00000000`ffa1308c)]
  75. 00000000`ff9a58b0 3bf0 cmp esi,eax
  76. 00000000`ff9a58b2 0f8fb2460000 jg calc!putnum+0x54 (00000000`ff9a9f6a)
  77.  
  78. calc!putnum+0x60:
  79. 00000000`ff9a58b8 3bc8 cmp ecx,eax
  80. 00000000`ff9a58ba 8d5810 lea ebx,[rax+10h]
  81. 00000000`ff9a58bd 0f4fc8 cmovg ecx,eax
  82. 00000000`ff9a58c0 4863d3 movsxd rdx,ebx
  83. 00000000`ff9a58c3 898c2488000000 mov dword ptr [rsp+88h],ecx
  84. 00000000`ff9a58ca 8d4eff lea ecx,[rsi-1]
  85. 00000000`ff9a58cd 4803d2 add rdx,rdx
  86. 00000000`ff9a58d0 894c2424 mov dword ptr [rsp+24h],ecx
  87. 00000000`ff9a58d4 b940000000 mov ecx,40h
  88. 00000000`ff9a58d9 ff1589cb0500 call qword ptr [calc!_imp_LocalAlloc (00000000`ffa02468)]
  89. 00000000`ff9a58df 4533d2 xor r10d,r10d
  90. 00000000`ff9a58e2 488bc8 mov rcx,rax
  91. 00000000`ff9a58e5 4889442430 mov qword ptr [rsp+30h],rax
  92. 00000000`ff9a58ea 488b442470 mov rax,qword ptr [rsp+70h]
  93. 00000000`ff9a58ef 493bc2 cmp rax,r10
  94. 00000000`ff9a58f2 7402 je calc!putnum+0x9e (00000000`ff9a58f6)
  95.  
  96. calc!putnum+0x9c:
  97. 00000000`ff9a58f4 8918 mov dword ptr [rax],ebx
  98.  
  99. calc!putnum+0x9e:
  100. 00000000`ff9a58f6 488bd9 mov rbx,rcx
  101. 00000000`ff9a58f9 493bca cmp rcx,r10
  102. 00000000`ff9a58fc 0f84485b0300 je calc!putnum+0xa6 (00000000`ff9db44a)
  103.  
  104. calc!putnum+0xc6:
  105. 00000000`ff9a5902 4c8b4c2428 mov r9,qword ptr [rsp+28h]
  106. 00000000`ff9a5907 498bc9 mov rcx,r9
  107. 00000000`ff9a590a e821f8ffff call calc!zernum (00000000`ff9a5130)
  108. 00000000`ff9a590f 448b0576d70600 mov r8d,dword ptr [calc!g_maxout (00000000`ffa1308c)]
  109. 00000000`ff9a5916 413bc2 cmp eax,r10d
  110. 00000000`ff9a5919 0f85e8ceffff jne calc!putnum+0x17a (00000000`ff9a2807)
  111.  
  112. calc!putnum+0xe3:
  113. 00000000`ff9a591f 45394104 cmp dword ptr [r9+4],r8d
  114. 00000000`ff9a5923 0f8d74ceffff jge calc!putnum+0x102 (00000000`ff9a279d)
  115.  
  116. calc!putnum+0xe9:
  117. 00000000`ff9a5929 8b8c2488000000 mov ecx,dword ptr [rsp+88h]
  118. 00000000`ff9a5930 8bc1 mov eax,ecx
  119. 00000000`ff9a5932 2bc6 sub eax,esi
  120. 00000000`ff9a5934 413bc0 cmp eax,r8d
  121. 00000000`ff9a5937 0f8f325b0300 jg calc!putnum+0xfd (00000000`ff9db46f)
  122.  
  123. calc!putnum+0x181:
  124. 00000000`ff9a593d 413bfa cmp edi,r10d
  125. 00000000`ff9a5940 0f8500010000 jne calc!putnum+0x1d3 (00000000`ff9a5a46)
  126.  
  127. calc!putnum+0x186:
  128. 00000000`ff9a5946 8bc1 mov eax,ecx
  129. 00000000`ff9a5948 2bc6 sub eax,esi
  130. 00000000`ff9a594a 413bc0 cmp eax,r8d
  131. 00000000`ff9a594d 0f8fdf000000 jg calc!putnum+0x1b3 (00000000`ff9a5a32)
  132.  
  133. calc!putnum+0x18f:
  134. 00000000`ff9a5953 418d4003 lea eax,[r8+3]
  135. 00000000`ff9a5957 3bf0 cmp esi,eax
  136. 00000000`ff9a5959 0f8fd3000000 jg calc!putnum+0x1b3 (00000000`ff9a5a32)
  137.  
  138. calc!putnum+0x197:
  139. 00000000`ff9a595f 8bc6 mov eax,esi
  140. 00000000`ff9a5961 99 cdq
  141. 00000000`ff9a5962 33c2 xor eax,edx
  142. 00000000`ff9a5964 2bc2 sub eax,edx
  143. 00000000`ff9a5966 03c1 add eax,ecx
  144. 00000000`ff9a5968 413bc0 cmp eax,r8d
  145. 00000000`ff9a596b 0f8dd5000000 jge calc!putnum+0x1d3 (00000000`ff9a5a46)
  146.  
  147. calc!putnum+0x1a5:
  148. 00000000`ff9a5971 493bea cmp rbp,r10
  149. 00000000`ff9a5974 0f851c5b0300 jne calc!putnum+0x1ae (00000000`ff9db496)
  150.  
  151. calc!putnum+0x232:
  152. 00000000`ff9a597a 488b4c2428 mov rcx,qword ptr [rsp+28h]
  153. 00000000`ff9a597f 418bd0 mov edx,r8d
  154. 00000000`ff9a5982 e839010000 call calc!stripzeroesnum (00000000`ff9a5ac0)
  155. 00000000`ff9a5987 33d2 xor edx,edx
  156.  
  157. calc!putnum+0x241:
  158. 00000000`ff9a5989 488b4c2428 mov rcx,qword ptr [rsp+28h]
  159. 00000000`ff9a598e bf01000000 mov edi,1
  160. 00000000`ff9a5993 48634104 movsxd rax,dword ptr [rcx+4]
  161. 00000000`ff9a5997 4c8d5c8108 lea r11,[rcx+rax*4+8]
  162. 00000000`ff9a599c 8b842480000000 mov eax,dword ptr [rsp+80h]
  163. 00000000`ff9a59a3 3bc7 cmp eax,edi
  164. 00000000`ff9a59a5 0f84984d0000 je calc!putnum+0x26c (00000000`ff9aa743)
  165.  
  166. calc!putnum+0x25f:
  167. 00000000`ff9a59ab 83f802 cmp eax,2
  168. 00000000`ff9a59ae 0f848f4d0000 je calc!putnum+0x26c (00000000`ff9aa743)
  169.  
  170. calc!putnum+0x264:
  171. 00000000`ff9a59b4 448bca mov r9d,edx
  172. 00000000`ff9a59b7 448bd2 mov r10d,edx
  173. 00000000`ff9a59ba eb00 jmp calc!putnum+0x2a9 (00000000`ff9a59bc)
  174.  
  175. calc!putnum+0x2a9:
  176. 00000000`ff9a59bc 8339ff cmp dword ptr [rcx],0FFFFFFFFh
  177. 00000000`ff9a59bf 448b842488000000 mov r8d,dword ptr [rsp+88h]
  178. 00000000`ff9a59c7 b82d000000 mov eax,2Dh
  179. 00000000`ff9a59cc 488beb mov rbp,rbx
  180. 00000000`ff9a59cf 0f84085b0300 je calc!putnum+0x2be (00000000`ff9db4dd)
  181.  
  182. calc!putnum+0x2ca:
  183. 00000000`ff9a59d5 3bf2 cmp esi,edx
  184. 00000000`ff9a59d7 b930000000 mov ecx,30h
  185. 00000000`ff9a59dc 0f8ed7410000 jle calc!putnum+0x2d3 (00000000`ff9a9bb9)
  186.  
  187. calc!putnum+0x30c:
  188. 00000000`ff9a59e2 443bc2 cmp r8d,edx
  189. 00000000`ff9a59e5 7e32 jle calc!putnum+0x36d (00000000`ff9a5a19)
  190.  
  191. calc!putnum+0x311:
  192. 00000000`ff9a59e7 488d0d92f10600 lea rcx,[calc!digits (00000000`ffa14b80)]
  193.  
  194. calc!putnum+0x318:
  195. 00000000`ff9a59ee 418b03 mov eax,dword ptr [r11]
  196. 00000000`ff9a59f1 2bf7 sub esi,edi
  197. 00000000`ff9a59f3 442bc7 sub r8d,edi
  198. 00000000`ff9a59f6 0fb70441 movzx eax,word ptr [rcx+rax*2]
  199. 00000000`ff9a59fa 4983eb04 sub r11,4
  200. 00000000`ff9a59fe 668903 mov word ptr [rbx],ax
  201. 00000000`ff9a5a01 4883c302 add rbx,2
  202. 00000000`ff9a5a05 3bf2 cmp esi,edx
  203. 00000000`ff9a5a07 0f840c060000 je calc!putnum+0x333 (00000000`ff9a6019)
  204.  
  205. calc!putnum+0x341:
  206. 00000000`ff9a5a0d 443bc2 cmp r8d,edx
  207. 00000000`ff9a5a10 7fdc jg calc!putnum+0x318 (00000000`ff9a59ee)
  208.  
  209. calc!putnum+0x346:
  210. 00000000`ff9a5a12 b930000000 mov ecx,30h
  211. 00000000`ff9a5a17 eb00 jmp calc!putnum+0x36d (00000000`ff9a5a19)
  212.  
  213. calc!putnum+0x36d:
  214. 00000000`ff9a5a19 3bf2 cmp esi,edx
  215. 00000000`ff9a5a1b 0f8fceceffff jg calc!putnum+0x354 (00000000`ff9a28ef)
  216.  
  217. calc!putnum+0x371:
  218. 00000000`ff9a5a21 443bca cmp r9d,edx
  219. 00000000`ff9a5a24 0f853a4d0000 jne calc!putnum+0x37a (00000000`ff9aa764)
  220.  
  221. calc!putnum+0x3fd:
  222. 00000000`ff9a5a2a 668913 mov word ptr [rbx],dx
  223. 00000000`ff9a5a2d 488bc5 mov rax,rbp
  224. 00000000`ff9a5a30 eb78 jmp calc!putnum+0x403 (00000000`ff9a5aaa)
  225.  
  226. calc!putnum+0x1b3:
  227. 00000000`ff9a5a32 83fefe cmp esi,0FFFFFFFEh
  228. 00000000`ff9a5a35 0f8d635a0300 jge calc!putnum+0x1b8 (00000000`ff9db49e)
  229.  
  230. calc!putnum+0x1c8:
  231. 00000000`ff9a5a3b c784248000000001000000 mov dword ptr [rsp+80h],1
  232.  
  233. calc!putnum+0x1d3:
  234. 00000000`ff9a5a46 493bea cmp rbp,r10
  235. 00000000`ff9a5a49 0f842bffffff je calc!putnum+0x232 (00000000`ff9a597a)
  236.  
  237. calc!putnum+0x1d8:
  238. 00000000`ff9a5a4f 488b7c2478 mov rdi,qword ptr [rsp+78h]
  239. 00000000`ff9a5a54 448b050dd60600 mov r8d,dword ptr [calc!g_nRadix (00000000`ffa13068)]
  240. 00000000`ff9a5a5b 488bd5 mov rdx,rbp
  241. 00000000`ff9a5a5e 488bcf mov rcx,rdi
  242. 00000000`ff9a5a61 e8ba010000 call calc!addnum (00000000`ff9a5c20)
  243. 00000000`ff9a5a66 488b0f mov rcx,qword ptr [rdi]
  244. 00000000`ff9a5a69 48894c2428 mov qword ptr [rsp+28h],rcx
  245. 00000000`ff9a5a6e 8b5108 mov edx,dword ptr [rcx+8]
  246. 00000000`ff9a5a71 2b5508 sub edx,dword ptr [rbp+8]
  247. 00000000`ff9a5a74 2b5504 sub edx,dword ptr [rbp+4]
  248. 00000000`ff9a5a77 035104 add edx,dword ptr [rcx+4]
  249. 00000000`ff9a5a7a e841000000 call calc!stripzeroesnum (00000000`ff9a5ac0)
  250. 00000000`ff9a5a7f 488bcd mov rcx,rbp
  251. 00000000`ff9a5a82 8bf8 mov edi,eax
  252. 00000000`ff9a5a84 ff15d6c90500 call qword ptr [calc!_imp_LocalFree (00000000`ffa02460)]
  253. 00000000`ff9a5a8a 33d2 xor edx,edx
  254. 00000000`ff9a5a8c 3bfa cmp edi,edx
  255. 00000000`ff9a5a8e 0f84f5feffff je calc!putnum+0x241 (00000000`ff9a5989)
  256.  
  257. calc!putnum+0x219:
  258. 00000000`ff9a5a94 448b442420 mov r8d,dword ptr [rsp+20h]
  259. 00000000`ff9a5a99 488b4c2470 mov rcx,qword ptr [rsp+70h]
  260. 00000000`ff9a5a9e 488d542428 lea rdx,[rsp+28h]
  261. 00000000`ff9a5aa3 e8b8fdffff call calc!putnum (00000000`ff9a5860)
  262. 00000000`ff9a5aa8 eb00 jmp calc!putnum+0x403 (00000000`ff9a5aaa)
  263.  
  264. calc!putnum+0x403:
  265. 00000000`ff9a5aaa 4883c448 add rsp,48h
  266. 00000000`ff9a5aae 5f pop rdi
  267. 00000000`ff9a5aaf 5e pop rsi
  268. 00000000`ff9a5ab0 5d pop rbp
  269. 00000000`ff9a5ab1 5b pop rbx
  270. 00000000`ff9a5ab2 c3 ret
  271.  
  272. calc!putnum+0x333:
  273. 00000000`ff9a6019 0fb705b0e70600 movzx eax,word ptr [calc!gszDec (00000000`ffa147d0)]
  274. 00000000`ff9a6020 668903 mov word ptr [rbx],ax
  275. 00000000`ff9a6023 4883c302 add rbx,2
  276. 00000000`ff9a6027 e9e1f9ffff jmp calc!putnum+0x341 (00000000`ff9a5a0d)
  277.  
  278. calc!putnum+0x2d3:
  279. 00000000`ff9a9bb9 443bca cmp r9d,edx
  280. 00000000`ff9a9bbc 7512 jne calc!putnum+0x2ea (00000000`ff9a9bd0)
  281.  
  282. calc!putnum+0x2d8:
  283. 00000000`ff9a9bbe 66890b mov word ptr [rbx],cx
  284. 00000000`ff9a9bc1 0fb70508ac0600 movzx eax,word ptr [calc!gszDec (00000000`ffa147d0)]
  285. 00000000`ff9a9bc8 4883c304 add rbx,4
  286. 00000000`ff9a9bcc 668943fe mov word ptr [rbx-2],ax
  287.  
  288. calc!putnum+0x2ea:
  289. 00000000`ff9a9bd0 3bf2 cmp esi,edx
  290. 00000000`ff9a9bd2 0f8d0abeffff jge calc!putnum+0x30c (00000000`ff9a59e2)
  291.  
  292. calc!putnum+0x2ee:
  293. 00000000`ff9a9bd8 8bd6 mov edx,esi
  294. 00000000`ff9a9bda 0fb7c1 movzx eax,cx
  295. 00000000`ff9a9bdd 488bfb mov rdi,rbx
  296. 00000000`ff9a9be0 f7da neg edx
  297. 00000000`ff9a9be2 488bca mov rcx,rdx
  298. 00000000`ff9a9be5 03f2 add esi,edx
  299. 00000000`ff9a9be7 66f3ab rep stos word ptr [rdi]
  300. 00000000`ff9a9bea 488d1c53 lea rbx,[rbx+rdx*2]
  301. 00000000`ff9a9bee 33d2 xor edx,edx
  302. 00000000`ff9a9bf0 8d7a01 lea edi,[rdx+1]
  303. 00000000`ff9a9bf3 8d4a30 lea ecx,[rdx+30h]
  304. 00000000`ff9a9bf6 e9e7bdffff jmp calc!putnum+0x30c (00000000`ff9a59e2)
  305.  
  306. calc!putnum+0x54:
  307. 00000000`ff9a9f6a 3bfb cmp edi,ebx
  308. 00000000`ff9a9f6c 0f44fa cmove edi,edx
  309. 00000000`ff9a9f6f 89bc2480000000 mov dword ptr [rsp+80h],edi
  310. 00000000`ff9a9f76 e93db9ffff jmp calc!putnum+0x60 (00000000`ff9a58b8)
  311.  
  312. calc!putnum+0x26c:
  313. 00000000`ff9aa743 448b542424 mov r10d,dword ptr [rsp+24h]
  314. 00000000`ff9aa748 448bcf mov r9d,edi
  315. 00000000`ff9aa74b 443bd2 cmp r10d,edx
  316. 00000000`ff9aa74e 0f8468b2ffff je calc!putnum+0x2a9 (00000000`ff9a59bc)
  317.  
  318. calc!putnum+0x279:
  319. 00000000`ff9aa754 83f802 cmp eax,2
  320. 00000000`ff9aa757 0f84540d0300 je calc!putnum+0x282 (00000000`ff9db4b1)
  321.  
  322. calc!putnum+0x34d:
  323. 00000000`ff9aa75d 8bf7 mov esi,edi
  324. 00000000`ff9aa75f e958b2ffff jmp calc!putnum+0x2a9 (00000000`ff9a59bc)
  325.  
  326. calc!putnum+0x37a:
  327. 00000000`ff9aa764 448b05fd880600 mov r8d,dword ptr [calc!g_nRadix (00000000`ffa13068)]
  328. 00000000`ff9aa76b b865000000 mov eax,65h
  329. 00000000`ff9aa770 4183f80a cmp r8d,0Ah
  330. 00000000`ff9aa774 0f85780d0300 jne calc!putnum+0x38c (00000000`ff9db4f2)
  331.  
  332. calc!putnum+0x391:
  333. 00000000`ff9aa77a 668903 mov word ptr [rbx],ax
  334. 00000000`ff9aa77d 4883c302 add rbx,2
  335. 00000000`ff9aa781 b92b000000 mov ecx,2Bh
  336. 00000000`ff9aa786 8d4102 lea eax,[rcx+2]
  337. 00000000`ff9aa789 443bd2 cmp r10d,edx
  338. 00000000`ff9aa78c 488d2deda30600 lea rbp,[calc!digits (00000000`ffa14b80)]
  339. 00000000`ff9aa793 660f4cc8 cmovl cx,ax
  340. 00000000`ff9aa797 418bc2 mov eax,r10d
  341. 00000000`ff9aa79a 99 cdq
  342. 00000000`ff9aa79b 66890b mov word ptr [rbx],cx
  343. 00000000`ff9aa79e 4883c302 add rbx,2
  344. 00000000`ff9aa7a2 8bf8 mov edi,eax
  345. 00000000`ff9aa7a4 33fa xor edi,edx
  346. 00000000`ff9aa7a6 2bfa sub edi,edx
  347. 00000000`ff9aa7a8 4533c9 xor r9d,r9d
  348. 00000000`ff9aa7ab 418bc9 mov ecx,r9d
  349.  
  350. calc!putnum+0x3c5:
  351. 00000000`ff9aa7ae 8bc7 mov eax,edi
  352. 00000000`ff9aa7b0 ffc1 inc ecx
  353. 00000000`ff9aa7b2 99 cdq
  354. 00000000`ff9aa7b3 41f7f8 idiv eax,r8d
  355. 00000000`ff9aa7b6 8bf8 mov edi,eax
  356. 00000000`ff9aa7b8 4863c2 movsxd rax,edx
  357. 00000000`ff9aa7bb 0fb7444500 movzx eax,word ptr [rbp+rax*2]
  358. 00000000`ff9aa7c0 668903 mov word ptr [rbx],ax
  359. 00000000`ff9aa7c3 4883c302 add rbx,2
  360. 00000000`ff9aa7c7 413bf9 cmp edi,r9d
  361. 00000000`ff9aa7ca 7fe2 jg calc!putnum+0x3c5 (00000000`ff9aa7ae)
  362.  
  363. calc!putnum+0x3e3:
  364. 00000000`ff9aa7cc f7d9 neg ecx
  365. 00000000`ff9aa7ce 6644890b mov word ptr [rbx],r9w
  366. 00000000`ff9aa7d2 4863c1 movsxd rax,ecx
  367. 00000000`ff9aa7d5 488d0c43 lea rcx,[rbx+rax*2]
  368. 00000000`ff9aa7d9 ff1551840500 call qword ptr [calc!_imp__wcsrev (00000000`ffa02c30)]
  369. 00000000`ff9aa7df 488b6c2430 mov rbp,qword ptr [rsp+30h]
  370. 00000000`ff9aa7e4 33d2 xor edx,edx
  371. 00000000`ff9aa7e6 e93fb2ffff jmp calc!putnum+0x3fd (00000000`ff9a5a2a)
  372.  
  373. calc!putnum+0xa6:
  374. 00000000`ff9db44a 488d15b7ad0200 lea rdx,[calc!TI1K (00000000`ffa06208)]
  375. 00000000`ff9db451 488d8c2480000000 lea rcx,[rsp+80h]
  376. 00000000`ff9db459 c784248000000007000080 mov dword ptr [rsp+80h],80000007h
  377. 00000000`ff9db464 e8a31e0200 call calc!CxxThrowException (00000000`ff9fd30c)
  378. 00000000`ff9db469 cc int 3
  379. 00000000`ff9db46a e993a4fcff jmp calc!putnum+0xc6 (00000000`ff9a5902)
  380.  
  381. calc!putnum+0xfd:
  382. 00000000`ff9db46f 83fefe cmp esi,0FFFFFFFEh
  383. 00000000`ff9db472 0f8d2573fcff jge calc!putnum+0x102 (00000000`ff9a279d)
  384.  
  385. calc!putnum+0x106:
  386. 00000000`ff9db478 e9c0a4fcff jmp calc!putnum+0x181 (00000000`ff9a593d)
  387.  
  388. calc!putnum+0x12a:
  389. 00000000`ff9db47d 4533d2 xor r10d,r10d
  390. 00000000`ff9db480 44395208 cmp dword ptr [rdx+8],r10d
  391. 00000000`ff9db484 0f853f73fcff jne calc!putnum+0x13c (00000000`ff9a27c9)
  392.  
  393. calc!putnum+0x133:
  394. 00000000`ff9db48a 8b08 mov ecx,dword ptr [rax]
  395. 00000000`ff9db48c 0faf0a imul ecx,dword ptr [rdx]
  396. 00000000`ff9db48f 8908 mov dword ptr [rax],ecx
  397. 00000000`ff9db491 e94c73fcff jmp calc!putnum+0x155 (00000000`ff9a27e2)
  398.  
  399. calc!putnum+0x1ae:
  400. 00000000`ff9db496 297508 sub dword ptr [rbp+8],esi
  401. 00000000`ff9db499 e9a8a5fcff jmp calc!putnum+0x1d3 (00000000`ff9a5a46)
  402.  
  403. calc!putnum+0x1b8:
  404. 00000000`ff9db49e 297508 sub dword ptr [rbp+8],esi
  405. 00000000`ff9db4a1 418d0430 lea eax,[r8+rsi]
  406. 00000000`ff9db4a5 89842488000000 mov dword ptr [rsp+88h],eax
  407. 00000000`ff9db4ac e995a5fcff jmp calc!putnum+0x1d3 (00000000`ff9a5a46)
  408.  
  409. calc!putnum+0x282:
  410. 00000000`ff9db4b1 418bf2 mov esi,r10d
  411. 00000000`ff9db4b4 b856555555 mov eax,55555556h
  412. 00000000`ff9db4b9 41f7ea imul r10d
  413. 00000000`ff9db4bc 8bc2 mov eax,edx
  414. 00000000`ff9db4be c1e81f shr eax,1Fh
  415. 00000000`ff9db4c1 03d0 add edx,eax
  416. 00000000`ff9db4c3 8d0452 lea eax,[rdx+rdx*2]
  417. 00000000`ff9db4c6 2bf0 sub esi,eax
  418. 00000000`ff9db4c8 442bd6 sub r10d,esi
  419. 00000000`ff9db4cb 03f7 add esi,edi
  420. 00000000`ff9db4cd 7907 jns calc!putnum+0x2a7 (00000000`ff9db4d6)
  421.  
  422. calc!putnum+0x2a0:
  423. 00000000`ff9db4cf 83c603 add esi,3
  424. 00000000`ff9db4d2 4183ea03 sub r10d,3
  425.  
  426. calc!putnum+0x2a7:
  427. 00000000`ff9db4d6 33d2 xor edx,edx
  428. 00000000`ff9db4d8 e9dfa4fcff jmp calc!putnum+0x2a9 (00000000`ff9a59bc)
  429.  
  430. calc!putnum+0x2be:
  431. 00000000`ff9db4dd 443bc2 cmp r8d,edx
  432. 00000000`ff9db4e0 0f8eefa4fcff jle calc!putnum+0x2ca (00000000`ff9a59d5)
  433.  
  434. calc!putnum+0x2c3:
  435. 00000000`ff9db4e6 668903 mov word ptr [rbx],ax
  436. 00000000`ff9db4e9 488d5b02 lea rbx,[rbx+2]
  437. 00000000`ff9db4ed e9e3a4fcff jmp calc!putnum+0x2ca (00000000`ff9a59d5)
  438.  
  439. calc!putnum+0x38c:
  440. 00000000`ff9db4f2 b85e000000 mov eax,5Eh
  441. 00000000`ff9db4f7 e97ef2fcff jmp calc!putnum+0x391 (00000000`ff9aa77a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement