Guest User

Untitled

a guest
Feb 24th, 2017
483
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.92 KB | None | 0 0
  1. sub_1412881C0 proc near ; CODE XREF: sub_141467FE0+11F5p
  2. push rbp
  3. push rbx
  4. lea rbp, [rsp-48h]
  5. sub rsp, 148h
  6. mov rax, cs:__security_cookie
  7. xor rax, rsp
  8. mov [rbp+30h], rax
  9. mov rbx, rcx
  10. test rcx, rcx
  11. jz loc_141288579
  12. cmp dword ptr [rcx+140h], 1
  13. jz loc_141288579
  14. mov edx, [rcx+0Ch]
  15. mov [rsp+170h], rdi
  16. mov cs:dword_142F68BE8, edx
  17. call sub_140C4D3A0
  18. mov rcx, rbx
  19. mov cs:dword_142F68BEC, eax
  20. mov rax, [rbx]
  21. call qword ptr [rax+278h]
  22. mov ecx, eax
  23. mov edx, eax
  24. and ecx, 0FF00h
  25. shl edx, 10h
  26. add edx, ecx
  27. mov ecx, eax
  28. shr eax, 18h
  29. shr ecx, 8
  30. shl edx, 8
  31. and ecx, 0FF00h
  32. add edx, ecx
  33. mov rcx, rbx
  34. add eax, edx
  35. cdqe
  36. mov cs:qword_142FBE330, rax
  37. mov rax, [rbx]
  38. call qword ptr [rax+280h]
  39. movzx ecx, ax
  40. shl ax, 8
  41. movzx eax, ax
  42. shr rcx, 8
  43. xor rcx, rax
  44. mov rax, [rbx+2000h]
  45. mov cs:qword_142FBE328, rcx
  46. test rax, rax
  47. jz short loc_141288285
  48. cmp dword ptr [rax+50h], 6
  49. jnz short loc_141288285
  50. mov byte ptr [rax+78h], 1
  51.  
  52. loc_141288285: ; CODE XREF: sub_1412881C0+B9j
  53. ; sub_1412881C0+BFj
  54. lea rcx, [rsp+78h]
  55. call sub_140B64A60
  56. cmp dword ptr [rax+8], 0
  57. jz short loc_14128829A
  58. mov rcx, [rax]
  59. jmp short loc_1412882A1
  60. ; ---------------------------------------------------------------------------
  61.  
  62. loc_14128829A: ; CODE XREF: sub_1412881C0+D3j
  63. lea rcx, unk_142BE3168
  64.  
  65. loc_1412882A1: ; CODE XREF: sub_1412881C0+D8j
  66. xor edi, edi
  67. mov [rsp+30h], rcx
  68. lea rax, aBinariesWin64B ; "BE.dl"...
  69. lea rdx, [rsp+30h]
  70. lea rcx, [rsp+40h]
  71. lea r8d, [rdi+2]
  72. mov [rsp+38h], rax
  73. mov [rsp+40h], rdi
  74. mov [rsp+48h], rdi
  75. call sub_140B6B0C0
  76. lea rdx, [rsp+40h]
  77. lea rcx, [rsp+30h]
  78. call sub_140B6A330
  79. mov rbx, [rsp+40h]
  80. test rbx, rbx
  81. jz short loc_14128830B
  82. mov rcx, cs:qword_142FAE3D8
  83. test rcx, rcx
  84. jnz short loc_141288302
  85. call sub_140AEDD60
  86. mov rcx, cs:qword_142FAE3D8
  87.  
  88. loc_141288302: ; CODE XREF: sub_1412881C0+134j
  89. mov rax, [rcx]
  90. mov rdx, rbx
  91. call qword ptr [rax+28h]
  92.  
  93. loc_14128830B: ; CODE XREF: sub_1412881C0+128j
  94. mov rbx, [rsp+78h]
  95. test rbx, rbx
  96. jz short loc_141288336
  97. mov rcx, cs:qword_142FAE3D8
  98. test rcx, rcx
  99. jnz short loc_14128832D
  100. call sub_140AEDD60
  101. mov rcx, cs:qword_142FAE3D8
  102.  
  103. loc_14128832D: ; CODE XREF: sub_1412881C0+15Fj
  104. mov rax, [rcx]
  105. mov rdx, rbx
  106. call qword ptr [rax+28h]
  107.  
  108. loc_141288336: ; CODE XREF: sub_1412881C0+153j
  109. cmp [rsp+38h], edi
  110. lea rcx, unk_142BE3168
  111. mov [rsp+140h], r15
  112. cmovnz rcx, [rsp+30h]
  113. call cs:LoadLibraryW
  114. mov cs:qword_142FBE358, rax
  115. test rax, rax
  116. jz loc_141288536
  117. lea rdx, aGetver ; "GetVer"
  118. mov rcx, rax
  119. call cs:GetProcAddress
  120. test rax, rax
  121. jz loc_141288529
  122. call rax
  123. mov rcx, cs:qword_142FBE358
  124. test rcx, rcx
  125. jz loc_141288536
  126. lea rdx, aInit_6 ; "Init"
  127. call cs:GetProcAddress
  128. mov r15, rax
  129. test rax, rax
  130. jz loc_141288529
  131. mov ecx, cs:dword_1430486D0
  132. mov [rsp+168h], rsi
  133. test cl, 1
  134. jnz short loc_141288404
  135. or ecx, 1
  136. lea rdx, aArkD_D ; "ARK %d.%d"
  137. mov r9d, 3B0h
  138. mov cs:dword_1430486D0, ecx
  139. lea rcx, qword_1430486D8
  140. mov r8d, 0FEh
  141. mov cs:dword_142FA22FC, 0FEh
  142. mov cs:dword_142FA22F8, 3B0h
  143. call sub_140AD5AA0
  144. lea rcx, sub_142585950
  145. call sub_142556E2C
  146.  
  147. loc_141288404: ; CODE XREF: sub_1412881C0+1FAj
  148. cmp cs:dword_1430486E0, edi
  149. lea rsi, unk_142BE3168
  150. mov [rbp+10h], rdi
  151. cmovnz rsi, cs:qword_1430486D8
  152. test rsi, rsi
  153. jz short loc_141288495
  154. or rax, 0FFFFFFFFFFFFFFFFh
  155.  
  156. loc_141288426: ; CODE XREF: sub_1412881C0+26Dj
  157. inc rax
  158. cmp [rsi+rax*2], di
  159. jnz short loc_141288426
  160. lea ebx, [rax+1]
  161. lea rcx, [rbp-70h]
  162. mov [rbp+20h], eax
  163. mov r8d, ebx
  164. call sub_1401131C0
  165. mov rax, [rbp+10h]
  166. lea rdx, [rbp-70h]
  167. test rax, rax
  168. mov r9d, ebx
  169. mov r8, rsi
  170. setz dil
  171. neg edi
  172. movsxd rcx, edi
  173. and rcx, rdx
  174. mov edx, ebx
  175. or rcx, rax
  176. mov [rbp+18h], rcx
  177. call sub_140113280
  178. test rax, rax
  179. jnz short loc_14128848F
  180. lea r9, unk_142BE3168
  181. lea r8d, [rax+18h]
  182. lea rdx, aCSvn_arkEng_44 ; "C:\\SVN_Ark\\Engine\\Source\\Runtime\\C"...
  183. lea rcx, aResult ; "Result"
  184. call sub_140B5FD50
  185.  
  186. loc_14128848F: ; CODE XREF: sub_1412881C0+2AFj
  187. mov rdi, [rbp+10h]
  188. jmp short loc_14128849C
  189. ; ---------------------------------------------------------------------------
  190.  
  191. loc_141288495: ; CODE XREF: sub_1412881C0+260j
  192. mov [rbp+18h], rdi
  193. mov [rbp+20h], edi
  194.  
  195. loc_14128849C: ; CODE XREF: sub_1412881C0+2D3j
  196. mov rax, [rbp+18h]
  197. mov rsi, [rsp+168h]
  198. mov [rsp+50h], rax
  199. test rdi, rdi
  200. jz short loc_1412884D3
  201. mov rcx, cs:qword_142FAE3D8
  202. test rcx, rcx
  203. jnz short loc_1412884CA
  204. call sub_140AEDD60
  205. mov rcx, cs:qword_142FAE3D8
  206.  
  207. loc_1412884CA: ; CODE XREF: sub_1412881C0+2FCj
  208. mov rax, [rcx]
  209. mov rdx, rdi
  210. call qword ptr [rax+28h]
  211.  
  212. loc_1412884D3: ; CODE XREF: sub_1412881C0+2F0j
  213. mov eax, dword ptr cs:qword_142FBE330
  214. lea r8, qword_142FBE338
  215. lea rdx, [rsp+50h]
  216. mov [rsp+58h], eax
  217. movzx eax, word ptr cs:qword_142FBE328
  218. mov ecx, 2
  219. mov [rsp+5Ch], ax
  220. lea rax, nullsub_1
  221. mov [rsp+60h], rax
  222. lea rax, sub_141287F00
  223. mov [rsp+68h], rax
  224. lea rax, sub_141287C70
  225. mov [rsp+70h], rax
  226. call r15
  227. test al, al
  228. jz short loc_141288529
  229. mov bl, 1
  230. jmp short loc_141288538
  231. ; ---------------------------------------------------------------------------
  232.  
  233. loc_141288529: ; CODE XREF: sub_1412881C0+1B8j
  234. ; sub_1412881C0+1E3j ...
  235. mov rcx, cs:qword_142FBE358
  236. call cs:FreeLibrary
  237.  
  238. loc_141288536: ; CODE XREF: sub_1412881C0+19Fj
  239. ; sub_1412881C0+1CAj
  240. xor bl, bl
  241.  
  242. loc_141288538: ; CODE XREF: sub_1412881C0+367j
  243. cmp qword ptr [rsp+30h], 0
  244. mov r15, [rsp+140h]
  245. mov rdi, [rsp+170h]
  246. jz short loc_141288574
  247. mov rcx, cs:qword_142FAE3D8
  248. test rcx, rcx
  249. jnz short loc_141288568
  250. call sub_140AEDD60
  251. mov rcx, cs:qword_142FAE3D8
  252.  
  253. loc_141288568: ; CODE XREF: sub_1412881C0+39Aj
  254. mov r8, [rcx]
  255. mov rdx, [rsp+30h]
  256. call qword ptr [r8+28h]
  257.  
  258. loc_141288574: ; CODE XREF: sub_1412881C0+38Ej
  259. movzx eax, bl
  260. jmp short loc_14128857B
  261. ; ---------------------------------------------------------------------------
  262.  
  263. loc_141288579: ; CODE XREF: sub_1412881C0+23j
  264. ; sub_1412881C0+30j
  265. xor al, al
  266.  
  267. loc_14128857B: ; CODE XREF: sub_1412881C0+3B7j
  268. mov rcx, [rbp+30h]
  269. xor rcx, rsp
  270. call sub_142556D00
  271. add rsp, 148h
  272. pop rbx
  273. pop rbp
  274. retn
  275. sub_1412881C0 endp
Advertisement
Add Comment
Please, Sign In to add comment