findlib.disasm 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529
  1. Microsoft (R) COFF/PE Dumper Version 14.29.30148.0
  2. Copyright (C) Microsoft Corporation. All rights reserved.
  3. Dump of file findlib.o
  4. File Type: COFF OBJECT
  5. bofstart:
  6. 0000000000000000: 48 83 EC 28 sub rsp,28h
  7. 0000000000000004: BA 01 00 00 00 mov edx,1
  8. 0000000000000009: B9 00 20 00 00 mov ecx,2000h
  9. 000000000000000E: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$calloc]
  10. 0000000000000014: 48 89 05 00 00 00 mov qword ptr [output],rax
  11. 00
  12. 000000000000001B: 33 C0 xor eax,eax
  13. 000000000000001D: 66 89 05 00 00 00 mov word ptr [currentoutsize],ax
  14. 00
  15. 0000000000000024: B8 01 00 00 00 mov eax,1
  16. 0000000000000029: 48 83 C4 28 add rsp,28h
  17. 000000000000002D: C3 ret
  18. 000000000000002E: CC int 3
  19. 000000000000002F: CC int 3
  20. 0000000000000030: CC int 3
  21. 0000000000000031: CC int 3
  22. 0000000000000032: CC int 3
  23. 0000000000000033: CC int 3
  24. 0000000000000034: CC int 3
  25. 0000000000000035: CC int 3
  26. 0000000000000036: CC int 3
  27. 0000000000000037: CC int 3
  28. 0000000000000038: CC int 3
  29. 0000000000000039: CC int 3
  30. 000000000000003A: CC int 3
  31. 000000000000003B: CC int 3
  32. 000000000000003C: CC int 3
  33. 000000000000003D: CC int 3
  34. 000000000000003E: CC int 3
  35. 000000000000003F: CC int 3
  36. internal_printf:
  37. 0000000000000040: 48 89 4C 24 08 mov qword ptr [rsp+8],rcx
  38. 0000000000000045: 48 89 54 24 10 mov qword ptr [rsp+10h],rdx
  39. 000000000000004A: 4C 89 44 24 18 mov qword ptr [rsp+18h],r8
  40. 000000000000004F: 4C 89 4C 24 20 mov qword ptr [rsp+20h],r9
  41. 0000000000000054: 48 83 EC 58 sub rsp,58h
  42. 0000000000000058: C7 44 24 20 00 00 mov dword ptr [rsp+20h],0
  43. 00 00
  44. 0000000000000060: C7 44 24 24 00 00 mov dword ptr [rsp+24h],0
  45. 00 00
  46. 0000000000000068: 48 C7 44 24 38 00 mov qword ptr [rsp+38h],0
  47. 00 00 00
  48. 0000000000000071: 48 C7 44 24 30 00 mov qword ptr [rsp+30h],0
  49. 00 00 00
  50. 000000000000007A: 48 8D 44 24 68 lea rax,[rsp+68h]
  51. 000000000000007F: 48 89 44 24 28 mov qword ptr [rsp+28h],rax
  52. 0000000000000084: 4C 8B 4C 24 28 mov r9,qword ptr [rsp+28h]
  53. 0000000000000089: 4C 8B 44 24 60 mov r8,qword ptr [rsp+60h]
  54. 000000000000008E: 33 D2 xor edx,edx
  55. 0000000000000090: 33 C9 xor ecx,ecx
  56. 0000000000000092: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$vsnprintf]
  57. 0000000000000098: 89 44 24 20 mov dword ptr [rsp+20h],eax
  58. 000000000000009C: 48 C7 44 24 28 00 mov qword ptr [rsp+28h],0
  59. 00 00 00
  60. 00000000000000A5: 83 7C 24 20 FF cmp dword ptr [rsp+20h],0FFFFFFFFh
  61. 00000000000000AA: 75 05 jne 00000000000000B1
  62. 00000000000000AC: E9 C2 01 00 00 jmp 0000000000000273
  63. 00000000000000B1: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetProcessHeap]
  64. 00000000000000B7: 41 B8 00 20 00 00 mov r8d,2000h
  65. 00000000000000BD: BA 08 00 00 00 mov edx,8
  66. 00000000000000C2: 48 8B C8 mov rcx,rax
  67. 00000000000000C5: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$HeapAlloc]
  68. 00000000000000CB: 48 89 44 24 40 mov qword ptr [rsp+40h],rax
  69. 00000000000000D0: 48 63 44 24 20 movsxd rax,dword ptr [rsp+20h]
  70. 00000000000000D5: 48 89 44 24 48 mov qword ptr [rsp+48h],rax
  71. 00000000000000DA: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetProcessHeap]
  72. 00000000000000E0: 48 8B 4C 24 48 mov rcx,qword ptr [rsp+48h]
  73. 00000000000000E5: 4C 8B C1 mov r8,rcx
  74. 00000000000000E8: BA 08 00 00 00 mov edx,8
  75. 00000000000000ED: 48 8B C8 mov rcx,rax
  76. 00000000000000F0: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$HeapAlloc]
  77. 00000000000000F6: 48 89 44 24 30 mov qword ptr [rsp+30h],rax
  78. 00000000000000FB: 48 8D 44 24 68 lea rax,[rsp+68h]
  79. 0000000000000100: 48 89 44 24 28 mov qword ptr [rsp+28h],rax
  80. 0000000000000105: 48 63 44 24 20 movsxd rax,dword ptr [rsp+20h]
  81. 000000000000010A: 4C 8B 4C 24 28 mov r9,qword ptr [rsp+28h]
  82. 000000000000010F: 4C 8B 44 24 60 mov r8,qword ptr [rsp+60h]
  83. 0000000000000114: 48 8B D0 mov rdx,rax
  84. 0000000000000117: 48 8B 4C 24 30 mov rcx,qword ptr [rsp+30h]
  85. 000000000000011C: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$vsnprintf]
  86. 0000000000000122: 48 C7 44 24 28 00 mov qword ptr [rsp+28h],0
  87. 00 00 00
  88. 000000000000012B: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  89. 00
  90. 0000000000000132: 8B 4C 24 20 mov ecx,dword ptr [rsp+20h]
  91. 0000000000000136: 03 C8 add ecx,eax
  92. 0000000000000138: 8B C1 mov eax,ecx
  93. 000000000000013A: 3D 00 20 00 00 cmp eax,2000h
  94. 000000000000013F: 7D 3E jge 000000000000017F
  95. 0000000000000141: 48 63 44 24 20 movsxd rax,dword ptr [rsp+20h]
  96. 0000000000000146: 0F B7 0D 00 00 00 movzx ecx,word ptr [currentoutsize]
  97. 00
  98. 000000000000014D: 48 8B 15 00 00 00 mov rdx,qword ptr [output]
  99. 00
  100. 0000000000000154: 48 03 D1 add rdx,rcx
  101. 0000000000000157: 48 8B CA mov rcx,rdx
  102. 000000000000015A: 4C 8B C0 mov r8,rax
  103. 000000000000015D: 48 8B 54 24 30 mov rdx,qword ptr [rsp+30h]
  104. 0000000000000162: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$memcpy]
  105. 0000000000000168: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  106. 00
  107. 000000000000016F: 03 44 24 20 add eax,dword ptr [rsp+20h]
  108. 0000000000000173: 66 89 05 00 00 00 mov word ptr [currentoutsize],ax
  109. 00
  110. 000000000000017A: E9 C8 00 00 00 jmp 0000000000000247
  111. 000000000000017F: 48 8B 44 24 30 mov rax,qword ptr [rsp+30h]
  112. 0000000000000184: 48 89 44 24 38 mov qword ptr [rsp+38h],rax
  113. 0000000000000189: 83 7C 24 20 00 cmp dword ptr [rsp+20h],0
  114. 000000000000018E: 0F 8E B3 00 00 00 jle 0000000000000247
  115. 0000000000000194: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  116. 00
  117. 000000000000019B: B9 00 20 00 00 mov ecx,2000h
  118. 00000000000001A0: 2B C8 sub ecx,eax
  119. 00000000000001A2: 8B C1 mov eax,ecx
  120. 00000000000001A4: 89 44 24 24 mov dword ptr [rsp+24h],eax
  121. 00000000000001A8: 8B 44 24 24 mov eax,dword ptr [rsp+24h]
  122. 00000000000001AC: 39 44 24 20 cmp dword ptr [rsp+20h],eax
  123. 00000000000001B0: 7D 08 jge 00000000000001BA
  124. 00000000000001B2: 8B 44 24 20 mov eax,dword ptr [rsp+20h]
  125. 00000000000001B6: 89 44 24 24 mov dword ptr [rsp+24h],eax
  126. 00000000000001BA: 48 63 44 24 24 movsxd rax,dword ptr [rsp+24h]
  127. 00000000000001BF: 0F B7 0D 00 00 00 movzx ecx,word ptr [currentoutsize]
  128. 00
  129. 00000000000001C6: 48 8B 15 00 00 00 mov rdx,qword ptr [output]
  130. 00
  131. 00000000000001CD: 48 03 D1 add rdx,rcx
  132. 00000000000001D0: 48 8B CA mov rcx,rdx
  133. 00000000000001D3: 4C 8B C0 mov r8,rax
  134. 00000000000001D6: 48 8B 54 24 38 mov rdx,qword ptr [rsp+38h]
  135. 00000000000001DB: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$memcpy]
  136. 00000000000001E1: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  137. 00
  138. 00000000000001E8: 03 44 24 24 add eax,dword ptr [rsp+24h]
  139. 00000000000001EC: 66 89 05 00 00 00 mov word ptr [currentoutsize],ax
  140. 00
  141. 00000000000001F3: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  142. 00
  143. 00000000000001FA: 3D 00 20 00 00 cmp eax,2000h
  144. 00000000000001FF: 75 07 jne 0000000000000208
  145. 0000000000000201: 33 C9 xor ecx,ecx
  146. 0000000000000203: E8 00 00 00 00 call printoutput
  147. 0000000000000208: 48 63 44 24 24 movsxd rax,dword ptr [rsp+24h]
  148. 000000000000020D: 4C 8B C0 mov r8,rax
  149. 0000000000000210: 33 D2 xor edx,edx
  150. 0000000000000212: 48 8B 4C 24 40 mov rcx,qword ptr [rsp+40h]
  151. 0000000000000217: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$memset]
  152. 000000000000021D: 48 63 44 24 24 movsxd rax,dword ptr [rsp+24h]
  153. 0000000000000222: 48 8B 4C 24 38 mov rcx,qword ptr [rsp+38h]
  154. 0000000000000227: 48 03 C8 add rcx,rax
  155. 000000000000022A: 48 8B C1 mov rax,rcx
  156. 000000000000022D: 48 89 44 24 38 mov qword ptr [rsp+38h],rax
  157. 0000000000000232: 8B 44 24 24 mov eax,dword ptr [rsp+24h]
  158. 0000000000000236: 8B 4C 24 20 mov ecx,dword ptr [rsp+20h]
  159. 000000000000023A: 2B C8 sub ecx,eax
  160. 000000000000023C: 8B C1 mov eax,ecx
  161. 000000000000023E: 89 44 24 20 mov dword ptr [rsp+20h],eax
  162. 0000000000000242: E9 42 FF FF FF jmp 0000000000000189
  163. 0000000000000247: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetProcessHeap]
  164. 000000000000024D: 4C 8B 44 24 30 mov r8,qword ptr [rsp+30h]
  165. 0000000000000252: 33 D2 xor edx,edx
  166. 0000000000000254: 48 8B C8 mov rcx,rax
  167. 0000000000000257: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$HeapFree]
  168. 000000000000025D: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetProcessHeap]
  169. 0000000000000263: 4C 8B 44 24 40 mov r8,qword ptr [rsp+40h]
  170. 0000000000000268: 33 D2 xor edx,edx
  171. 000000000000026A: 48 8B C8 mov rcx,rax
  172. 000000000000026D: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$HeapFree]
  173. 0000000000000273: 48 83 C4 58 add rsp,58h
  174. 0000000000000277: C3 ret
  175. 0000000000000278: CC int 3
  176. 0000000000000279: CC int 3
  177. 000000000000027A: CC int 3
  178. 000000000000027B: CC int 3
  179. 000000000000027C: CC int 3
  180. 000000000000027D: CC int 3
  181. 000000000000027E: CC int 3
  182. 000000000000027F: CC int 3
  183. printoutput:
  184. 0000000000000280: 89 4C 24 08 mov dword ptr [rsp+8],ecx
  185. 0000000000000284: 48 83 EC 38 sub rsp,38h
  186. 0000000000000288: 48 C7 44 24 20 00 mov qword ptr [rsp+20h],0
  187. 00 00 00
  188. 0000000000000291: 0F B7 05 00 00 00 movzx eax,word ptr [currentoutsize]
  189. 00
  190. 0000000000000298: 44 8B C0 mov r8d,eax
  191. 000000000000029B: 48 8B 15 00 00 00 mov rdx,qword ptr [output]
  192. 00
  193. 00000000000002A2: 33 C9 xor ecx,ecx
  194. 00000000000002A4: FF 15 00 00 00 00 call qword ptr [__imp_BeaconOutput]
  195. 00000000000002AA: 33 C0 xor eax,eax
  196. 00000000000002AC: 66 89 05 00 00 00 mov word ptr [currentoutsize],ax
  197. 00
  198. 00000000000002B3: 41 B8 00 20 00 00 mov r8d,2000h
  199. 00000000000002B9: 33 D2 xor edx,edx
  200. 00000000000002BB: 48 8B 0D 00 00 00 mov rcx,qword ptr [output]
  201. 00
  202. 00000000000002C2: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$memset]
  203. 00000000000002C8: 83 7C 24 40 00 cmp dword ptr [rsp+40h],0
  204. 00000000000002CD: 74 18 je 00000000000002E7
  205. 00000000000002CF: 48 8B 0D 00 00 00 mov rcx,qword ptr [output]
  206. 00
  207. 00000000000002D6: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$free]
  208. 00000000000002DC: 48 C7 05 00 00 00 mov qword ptr [output],0
  209. 00 00 00 00 00
  210. 00000000000002E7: 48 83 C4 38 add rsp,38h
  211. 00000000000002EB: C3 ret
  212. 00000000000002EC: CC int 3
  213. 00000000000002ED: CC int 3
  214. 00000000000002EE: CC int 3
  215. 00000000000002EF: CC int 3
  216. 00000000000002F0: CC int 3
  217. 00000000000002F1: CC int 3
  218. 00000000000002F2: CC int 3
  219. 00000000000002F3: CC int 3
  220. 00000000000002F4: CC int 3
  221. 00000000000002F5: CC int 3
  222. 00000000000002F6: CC int 3
  223. 00000000000002F7: CC int 3
  224. 00000000000002F8: CC int 3
  225. 00000000000002F9: CC int 3
  226. 00000000000002FA: CC int 3
  227. 00000000000002FB: CC int 3
  228. 00000000000002FC: CC int 3
  229. 00000000000002FD: CC int 3
  230. 00000000000002FE: CC int 3
  231. 00000000000002FF: CC int 3
  232. ListModules:
  233. 0000000000000300: 48 89 54 24 10 mov qword ptr [rsp+10h],rdx
  234. 0000000000000305: 89 4C 24 08 mov dword ptr [rsp+8],ecx
  235. 0000000000000309: 48 81 EC 98 02 00 sub rsp,298h
  236. 00
  237. 0000000000000310: 48 C7 44 24 30 00 mov qword ptr [rsp+30h],0
  238. 00 00 00
  239. 0000000000000319: C7 44 24 20 00 00 mov dword ptr [rsp+20h],0
  240. 00 00
  241. 0000000000000321: 44 8B 84 24 A0 02 mov r8d,dword ptr [rsp+2A0h]
  242. 00 00
  243. 0000000000000329: 33 D2 xor edx,edx
  244. 000000000000032B: B9 10 04 00 00 mov ecx,410h
  245. 0000000000000330: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$OpenProcess]
  246. 0000000000000336: 48 89 44 24 28 mov qword ptr [rsp+28h],rax
  247. 000000000000033B: 48 83 7C 24 28 00 cmp qword ptr [rsp+28h],0
  248. 0000000000000341: 75 09 jne 000000000000034C
  249. 0000000000000343: 8B 44 24 20 mov eax,dword ptr [rsp+20h]
  250. 0000000000000347: E9 4E 01 00 00 jmp 000000000000049A
  251. 000000000000034C: 41 B9 30 00 00 00 mov r9d,30h
  252. 0000000000000352: 4C 8D 44 24 38 lea r8,[rsp+38h]
  253. 0000000000000357: 48 8B 54 24 30 mov rdx,qword ptr [rsp+30h]
  254. 000000000000035C: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  255. 0000000000000361: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$VirtualQueryEx]
  256. 0000000000000367: 48 83 F8 30 cmp rax,30h
  257. 000000000000036B: 0F 85 1A 01 00 00 jne 000000000000048B
  258. 0000000000000371: 48 83 BC 24 A8 02 cmp qword ptr [rsp+2A8h],0
  259. 00 00 00
  260. 000000000000037A: 0F 84 A0 00 00 00 je 0000000000000420
  261. 0000000000000380: 48 8B 44 24 38 mov rax,qword ptr [rsp+38h]
  262. 0000000000000385: 48 39 44 24 40 cmp qword ptr [rsp+40h],rax
  263. 000000000000038A: 75 7D jne 0000000000000409
  264. 000000000000038C: 48 83 7C 24 40 00 cmp qword ptr [rsp+40h],0
  265. 0000000000000392: 74 75 je 0000000000000409
  266. 0000000000000394: 41 B9 04 01 00 00 mov r9d,104h
  267. 000000000000039A: 4C 8D 84 24 80 01 lea r8,[rsp+180h]
  268. 00 00
  269. 00000000000003A2: 48 8B 54 24 40 mov rdx,qword ptr [rsp+40h]
  270. 00000000000003A7: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  271. 00000000000003AC: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$K32GetModuleBaseNameA]
  272. 00000000000003B2: 85 C0 test eax,eax
  273. 00000000000003B4: 74 53 je 0000000000000409
  274. 00000000000003B6: 48 8D 94 24 80 01 lea rdx,[rsp+180h]
  275. 00 00
  276. 00000000000003BE: 48 8B 8C 24 A8 02 mov rcx,qword ptr [rsp+2A8h]
  277. 00 00
  278. 00000000000003C6: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$strcmp]
  279. 00000000000003CC: 85 C0 test eax,eax
  280. 00000000000003CE: 75 39 jne 0000000000000409
  281. 00000000000003D0: 41 B9 04 01 00 00 mov r9d,104h
  282. 00000000000003D6: 4C 8D 44 24 70 lea r8,[rsp+70h]
  283. 00000000000003DB: 48 8B 54 24 40 mov rdx,qword ptr [rsp+40h]
  284. 00000000000003E0: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  285. 00000000000003E5: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$K32GetModuleFileNameExA]
  286. 00000000000003EB: 4C 8B 44 24 40 mov r8,qword ptr [rsp+40h]
  287. 00000000000003F0: 48 8D 54 24 70 lea rdx,[rsp+70h]
  288. 00000000000003F5: 48 8D 0D 00 00 00 lea rcx,[$SG102248]
  289. 00
  290. 00000000000003FC: E8 00 00 00 00 call internal_printf
  291. 0000000000000401: C7 44 24 20 01 00 mov dword ptr [rsp+20h],1
  292. 00 00
  293. 0000000000000409: 48 8B 44 24 50 mov rax,qword ptr [rsp+50h]
  294. 000000000000040E: 48 8B 4C 24 30 mov rcx,qword ptr [rsp+30h]
  295. 0000000000000413: 48 03 C8 add rcx,rax
  296. 0000000000000416: 48 8B C1 mov rax,rcx
  297. 0000000000000419: 48 89 44 24 30 mov qword ptr [rsp+30h],rax
  298. 000000000000041E: EB 66 jmp 0000000000000486
  299. 0000000000000420: 48 8B 44 24 38 mov rax,qword ptr [rsp+38h]
  300. 0000000000000425: 48 39 44 24 40 cmp qword ptr [rsp+40h],rax
  301. 000000000000042A: 75 45 jne 0000000000000471
  302. 000000000000042C: 48 83 7C 24 40 00 cmp qword ptr [rsp+40h],0
  303. 0000000000000432: 74 3D je 0000000000000471
  304. 0000000000000434: 41 B9 04 01 00 00 mov r9d,104h
  305. 000000000000043A: 4C 8D 44 24 70 lea r8,[rsp+70h]
  306. 000000000000043F: 48 8B 54 24 40 mov rdx,qword ptr [rsp+40h]
  307. 0000000000000444: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  308. 0000000000000449: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$K32GetModuleFileNameExA]
  309. 000000000000044F: 85 C0 test eax,eax
  310. 0000000000000451: 74 1E je 0000000000000471
  311. 0000000000000453: 4C 8D 44 24 70 lea r8,[rsp+70h]
  312. 0000000000000458: 48 8B 54 24 40 mov rdx,qword ptr [rsp+40h]
  313. 000000000000045D: 48 8D 0D 00 00 00 lea rcx,[$SG102251]
  314. 00
  315. 0000000000000464: E8 00 00 00 00 call internal_printf
  316. 0000000000000469: C7 44 24 20 01 00 mov dword ptr [rsp+20h],1
  317. 00 00
  318. 0000000000000471: 48 8B 44 24 50 mov rax,qword ptr [rsp+50h]
  319. 0000000000000476: 48 8B 4C 24 30 mov rcx,qword ptr [rsp+30h]
  320. 000000000000047B: 48 03 C8 add rcx,rax
  321. 000000000000047E: 48 8B C1 mov rax,rcx
  322. 0000000000000481: 48 89 44 24 30 mov qword ptr [rsp+30h],rax
  323. 0000000000000486: E9 C1 FE FF FF jmp 000000000000034C
  324. 000000000000048B: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  325. 0000000000000490: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$CloseHandle]
  326. 0000000000000496: 8B 44 24 20 mov eax,dword ptr [rsp+20h]
  327. 000000000000049A: 48 81 C4 98 02 00 add rsp,298h
  328. 00
  329. 00000000000004A1: C3 ret
  330. 00000000000004A2: CC int 3
  331. 00000000000004A3: CC int 3
  332. 00000000000004A4: CC int 3
  333. 00000000000004A5: CC int 3
  334. 00000000000004A6: CC int 3
  335. 00000000000004A7: CC int 3
  336. 00000000000004A8: CC int 3
  337. 00000000000004A9: CC int 3
  338. 00000000000004AA: CC int 3
  339. 00000000000004AB: CC int 3
  340. 00000000000004AC: CC int 3
  341. 00000000000004AD: CC int 3
  342. 00000000000004AE: CC int 3
  343. 00000000000004AF: CC int 3
  344. FindProcess:
  345. 00000000000004B0: 48 89 4C 24 08 mov qword ptr [rsp+8],rcx
  346. 00000000000004B5: 48 81 EC 78 02 00 sub rsp,278h
  347. 00
  348. 00000000000004BC: C7 44 24 30 00 00 mov dword ptr [rsp+30h],0
  349. 00 00
  350. 00000000000004C4: 48 C7 44 24 40 00 mov qword ptr [rsp+40h],0
  351. 00 00 00
  352. 00000000000004CD: C7 44 24 34 00 00 mov dword ptr [rsp+34h],0
  353. 00 00
  354. 00000000000004D5: C7 44 24 38 00 00 mov dword ptr [rsp+38h],0
  355. 00 00
  356. 00000000000004DD: 48 8D 0D 00 00 00 lea rcx,[$SG102268]
  357. 00
  358. 00000000000004E4: FF 15 00 00 00 00 call qword ptr [__imp_GetModuleHandleA]
  359. 00000000000004EA: 48 8D 15 00 00 00 lea rdx,[$SG102267]
  360. 00
  361. 00000000000004F1: 48 8B C8 mov rcx,rax
  362. 00000000000004F4: FF 15 00 00 00 00 call qword ptr [__imp_GetProcAddress]
  363. 00000000000004FA: 48 89 44 24 48 mov qword ptr [rsp+48h],rax
  364. 00000000000004FF: 48 8D 44 24 40 lea rax,[rsp+40h]
  365. 0000000000000504: 48 89 44 24 20 mov qword ptr [rsp+20h],rax
  366. 0000000000000509: 45 33 C9 xor r9d,r9d
  367. 000000000000050C: 45 33 C0 xor r8d,r8d
  368. 000000000000050F: BA 00 00 00 02 mov edx,2000000h
  369. 0000000000000514: 48 8B 4C 24 40 mov rcx,qword ptr [rsp+40h]
  370. 0000000000000519: FF 54 24 48 call qword ptr [rsp+48h]
  371. 000000000000051D: 85 C0 test eax,eax
  372. 000000000000051F: 0F 85 B0 00 00 00 jne 00000000000005D5
  373. 0000000000000525: 48 8B 4C 24 40 mov rcx,qword ptr [rsp+40h]
  374. 000000000000052A: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetProcessId]
  375. 0000000000000530: 89 44 24 30 mov dword ptr [rsp+30h],eax
  376. 0000000000000534: 83 7C 24 30 04 cmp dword ptr [rsp+30h],4
  377. 0000000000000539: 75 02 jne 000000000000053D
  378. 000000000000053B: EB C2 jmp 00000000000004FF
  379. 000000000000053D: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$GetCurrentProcessId]
  380. 0000000000000543: 48 63 4C 24 30 movsxd rcx,dword ptr [rsp+30h]
  381. 0000000000000548: 48 3B C8 cmp rcx,rax
  382. 000000000000054B: 75 02 jne 000000000000054F
  383. 000000000000054D: EB B0 jmp 00000000000004FF
  384. 000000000000054F: 83 7C 24 30 00 cmp dword ptr [rsp+30h],0
  385. 0000000000000554: 74 15 je 000000000000056B
  386. 0000000000000556: 48 8B 94 24 80 02 mov rdx,qword ptr [rsp+280h]
  387. 00 00
  388. 000000000000055E: 8B 4C 24 30 mov ecx,dword ptr [rsp+30h]
  389. 0000000000000562: E8 00 00 00 00 call ListModules
  390. 0000000000000567: 89 44 24 34 mov dword ptr [rsp+34h],eax
  391. 000000000000056B: 83 7C 24 34 00 cmp dword ptr [rsp+34h],0
  392. 0000000000000570: 74 5E je 00000000000005D0
  393. 0000000000000572: 41 B8 04 01 00 00 mov r8d,104h
  394. 0000000000000578: 48 8D 54 24 50 lea rdx,[rsp+50h]
  395. 000000000000057D: 48 8B 4C 24 40 mov rcx,qword ptr [rsp+40h]
  396. 0000000000000582: FF 15 00 00 00 00 call qword ptr [__imp_KERNEL32$K32GetProcessImageFileNameA]
  397. 0000000000000588: 48 8D 4C 24 50 lea rcx,[rsp+50h]
  398. 000000000000058D: FF 15 00 00 00 00 call qword ptr [__imp_SHLWAPI$PathFindFileNameA]
  399. 0000000000000593: 41 B8 04 01 00 00 mov r8d,104h
  400. 0000000000000599: 48 8B D0 mov rdx,rax
  401. 000000000000059C: 48 8D 8C 24 60 01 lea rcx,[rsp+160h]
  402. 00 00
  403. 00000000000005A4: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$strncpy]
  404. 00000000000005AA: 4C 8D 4C 24 50 lea r9,[rsp+50h]
  405. 00000000000005AF: 44 8B 44 24 30 mov r8d,dword ptr [rsp+30h]
  406. 00000000000005B4: 48 8D 94 24 60 01 lea rdx,[rsp+160h]
  407. 00 00
  408. 00000000000005BC: 48 8D 0D 00 00 00 lea rcx,[$SG102273]
  409. 00
  410. 00000000000005C3: E8 00 00 00 00 call internal_printf
  411. 00000000000005C8: C7 44 24 38 01 00 mov dword ptr [rsp+38h],1
  412. 00 00
  413. 00000000000005D0: E9 2A FF FF FF jmp 00000000000004FF
  414. 00000000000005D5: 8B 44 24 38 mov eax,dword ptr [rsp+38h]
  415. 00000000000005D9: 48 81 C4 78 02 00 add rsp,278h
  416. 00
  417. 00000000000005E0: C3 ret
  418. 00000000000005E1: CC int 3
  419. 00000000000005E2: CC int 3
  420. 00000000000005E3: CC int 3
  421. 00000000000005E4: CC int 3
  422. 00000000000005E5: CC int 3
  423. 00000000000005E6: CC int 3
  424. 00000000000005E7: CC int 3
  425. 00000000000005E8: CC int 3
  426. 00000000000005E9: CC int 3
  427. 00000000000005EA: CC int 3
  428. 00000000000005EB: CC int 3
  429. 00000000000005EC: CC int 3
  430. 00000000000005ED: CC int 3
  431. 00000000000005EE: CC int 3
  432. 00000000000005EF: CC int 3
  433. go:
  434. 00000000000005F0: 89 54 24 10 mov dword ptr [rsp+10h],edx
  435. 00000000000005F4: 48 89 4C 24 08 mov qword ptr [rsp+8],rcx
  436. 00000000000005F9: 48 83 EC 58 sub rsp,58h
  437. 00000000000005FD: C7 44 24 20 00 00 mov dword ptr [rsp+20h],0
  438. 00 00
  439. 0000000000000605: C7 44 24 24 00 00 mov dword ptr [rsp+24h],0
  440. 00 00
  441. 000000000000060D: 44 8B 44 24 68 mov r8d,dword ptr [rsp+68h]
  442. 0000000000000612: 48 8B 54 24 60 mov rdx,qword ptr [rsp+60h]
  443. 0000000000000617: 48 8D 4C 24 38 lea rcx,[rsp+38h]
  444. 000000000000061C: FF 15 00 00 00 00 call qword ptr [__imp_BeaconDataParse]
  445. 0000000000000622: 33 D2 xor edx,edx
  446. 0000000000000624: 48 8D 4C 24 38 lea rcx,[rsp+38h]
  447. 0000000000000629: FF 15 00 00 00 00 call qword ptr [__imp_BeaconDataExtract]
  448. 000000000000062F: 48 89 44 24 28 mov qword ptr [rsp+28h],rax
  449. 0000000000000634: E8 00 00 00 00 call bofstart
  450. 0000000000000639: 85 C0 test eax,eax
  451. 000000000000063B: 75 05 jne 0000000000000642
  452. 000000000000063D: E9 EB 00 00 00 jmp 000000000000072D
  453. 0000000000000642: 48 8D 15 00 00 00 lea rdx,[$SG102292]
  454. 00
  455. 0000000000000649: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  456. 000000000000064E: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$strcmp]
  457. 0000000000000654: 85 C0 test eax,eax
  458. 0000000000000656: 75 40 jne 0000000000000698
  459. 0000000000000658: 48 8D 4C 24 38 lea rcx,[rsp+38h]
  460. 000000000000065D: FF 15 00 00 00 00 call qword ptr [__imp_BeaconDataInt]
  461. 0000000000000663: 89 44 24 20 mov dword ptr [rsp+20h],eax
  462. 0000000000000667: 44 8B 44 24 20 mov r8d,dword ptr [rsp+20h]
  463. 000000000000066C: 48 8D 15 00 00 00 lea rdx,[$SG102293]
  464. 00
  465. 0000000000000673: 33 C9 xor ecx,ecx
  466. 0000000000000675: FF 15 00 00 00 00 call qword ptr [__imp_BeaconPrintf]
  467. 000000000000067B: 48 8D 0D 00 00 00 lea rcx,[$SG102294]
  468. 00
  469. 0000000000000682: E8 00 00 00 00 call internal_printf
  470. 0000000000000687: 33 D2 xor edx,edx
  471. 0000000000000689: 8B 4C 24 20 mov ecx,dword ptr [rsp+20h]
  472. 000000000000068D: E8 00 00 00 00 call ListModules
  473. 0000000000000692: 89 44 24 24 mov dword ptr [rsp+24h],eax
  474. 0000000000000696: EB 6E jmp 0000000000000706
  475. 0000000000000698: 48 8D 15 00 00 00 lea rdx,[$SG102297]
  476. 00
  477. 000000000000069F: 48 8B 4C 24 28 mov rcx,qword ptr [rsp+28h]
  478. 00000000000006A4: FF 15 00 00 00 00 call qword ptr [__imp_MSVCRT$strcmp]
  479. 00000000000006AA: 85 C0 test eax,eax
  480. 00000000000006AC: 75 42 jne 00000000000006F0
  481. 00000000000006AE: 33 D2 xor edx,edx
  482. 00000000000006B0: 48 8D 4C 24 38 lea rcx,[rsp+38h]
  483. 00000000000006B5: FF 15 00 00 00 00 call qword ptr [__imp_BeaconDataExtract]
  484. 00000000000006BB: 48 89 44 24 30 mov qword ptr [rsp+30h],rax
  485. 00000000000006C0: 4C 8B 44 24 30 mov r8,qword ptr [rsp+30h]
  486. 00000000000006C5: 48 8D 15 00 00 00 lea rdx,[$SG102298]
  487. 00
  488. 00000000000006CC: 33 C9 xor ecx,ecx
  489. 00000000000006CE: FF 15 00 00 00 00 call qword ptr [__imp_BeaconPrintf]
  490. 00000000000006D4: 48 8D 0D 00 00 00 lea rcx,[$SG102299]
  491. 00
  492. 00000000000006DB: E8 00 00 00 00 call internal_printf
  493. 00000000000006E0: 48 8B 4C 24 30 mov rcx,qword ptr [rsp+30h]
  494. 00000000000006E5: E8 00 00 00 00 call FindProcess
  495. 00000000000006EA: 89 44 24 24 mov dword ptr [rsp+24h],eax
  496. 00000000000006EE: EB 16 jmp 0000000000000706
  497. 00000000000006F0: 48 8D 15 00 00 00 lea rdx,[$SG102300]
  498. 00
  499. 00000000000006F7: B9 0D 00 00 00 mov ecx,0Dh
  500. 00000000000006FC: FF 15 00 00 00 00 call qword ptr [__imp_BeaconPrintf]
  501. 0000000000000702: 33 C0 xor eax,eax
  502. 0000000000000704: EB 27 jmp 000000000000072D
  503. 0000000000000706: 83 7C 24 24 00 cmp dword ptr [rsp+24h],0
  504. 000000000000070B: 75 14 jne 0000000000000721
  505. 000000000000070D: 48 8D 15 00 00 00 lea rdx,[$SG102303]
  506. 00
  507. 0000000000000714: B9 0D 00 00 00 mov ecx,0Dh
  508. 0000000000000719: FF 15 00 00 00 00 call qword ptr [__imp_BeaconPrintf]
  509. 000000000000071F: EB 0A jmp 000000000000072B
  510. 0000000000000721: B9 01 00 00 00 mov ecx,1
  511. 0000000000000726: E8 00 00 00 00 call printoutput
  512. 000000000000072B: 33 C0 xor eax,eax
  513. 000000000000072D: 48 83 C4 58 add rsp,58h
  514. 0000000000000731: C3 ret
  515. Summary
  516. 18 .bss
  517. 40 .chks64
  518. 2A2 .data
  519. 8C .debug$S
  520. 8F .drectve
  521. 48 .pdata
  522. 732 .text$mn
  523. 30 .xdata