Guest User

Untitled

a guest
Sep 19th, 2019
194
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .text:0070F4E0
  2. .text:0070F4E0 ; =============== S U B R O U T I N E =======================================
  3. .text:0070F4E0
  4. .text:0070F4E0 ; Attributes: bp-based frame
  5. .text:0070F4E0
  6. .text:0070F4E0 ; void __thiscall TryOpenPipboy(InterfaceManager *this, void (*a2)(void), signed int a3)
  7. .text:0070F4E0 TryOpenPipboy proc near ; CODE XREF: MainUILoop+2473↑p
  8. .text:0070F4E0 ; MainUILoop+2594↑p
  9. .text:0070F4E0
  10. .text:0070F4E0 var_4 = dword ptr -4
  11. .text:0070F4E0 arg_0 = dword ptr 8
  12. .text:0070F4E0 a3 = dword ptr 0Ch
  13. .text:0070F4E0
  14. .text:0070F4E0 000 55 push ebp
  15. .text:0070F4E1 004 8B EC mov ebp, esp
  16. .text:0070F4E3 004 51 push ecx
  17. .text:0070F4E4 008 56 push esi
  18. .text:0070F4E5 00C 89 4D FC mov [ebp+var_4], ecx
  19. .text:0070F4E8 00C 6A 04 push 4
  20. .text:0070F4EA 010 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  21. .text:0070F4F0 010 E8 FB 0E E9 FF call PlayerCharacter__CheckPCControlFlags ; Call Procedure
  22. .text:0070F4F5 00C 0F B6 C0 movzx eax, al ; Move with Zero-Extend
  23. .text:0070F4F8 00C 85 C0 test eax, eax ; Logical Compare
  24. .text:0070F4FA 00C 0F 85 69 01 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  25. .text:0070F500 00C 6A 00 push 0
  26. .text:0070F502 010 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  27. .text:0070F508 010 8B 11 mov edx, [ecx]
  28. .text:0070F50A 010 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  29. .text:0070F510 010 8B 82 2C 02 00 00 mov eax, [edx+22Ch]
  30. .text:0070F516 010 FF D0 call eax ; Indirect Call Near Procedure
  31. .text:0070F518 00C 0F B6 C8 movzx ecx, al ; Move with Zero-Extend
  32. .text:0070F51B 00C 85 C9 test ecx, ecx ; Logical Compare
  33. .text:0070F51D 00C 0F 85 46 01 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  34. .text:0070F523 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  35. .text:0070F529 00C E8 B2 42 E6 FF call Player__GetIs3rdPersonView ; Call Procedure
  36. .text:0070F52E 00C 0F B6 F0 movzx esi, al ; Move with Zero-Extend
  37. .text:0070F531 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer ; this
  38. .text:0070F537 00C E8 24 BA DD FF call PlayerCharacter__IsNotFirstPerson ; Call Procedure
  39. .text:0070F53C 00C 0F B6 D0 movzx edx, al ; Move with Zero-Extend
  40. .text:0070F53F 00C 3B F2 cmp esi, edx ; Compare Two Operands
  41. .text:0070F541 00C 0F 85 22 01 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  42. .text:0070F547 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  43. .text:0070F54D 00C E8 EE B1 22 00 call sub_93A740 ; Call Procedure
  44. .text:0070F552 00C 0F B6 C0 movzx eax, al ; Move with Zero-Extend
  45. .text:0070F555 00C 85 C0 test eax, eax ; Logical Compare
  46. .text:0070F557 00C 0F 85 0C 01 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  47. .text:0070F55D 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  48. .text:0070F563 00C E8 78 2C E6 FF call PlayerCharacter__IsUsingScopeOrbyte64D ; Call Procedure
  49. .text:0070F568 00C 0F B6 C8 movzx ecx, al ; Move with Zero-Extend
  50. .text:0070F56B 00C 85 C9 test ecx, ecx ; Logical Compare
  51. .text:0070F56D 00C 0F 85 F6 00 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  52. .text:0070F573 00C 83 3D C0 96 1D 01 00 cmp g_HUDMainMenu, 0 ; Compare Two Operands
  53. .text:0070F57A 00C 74 16 jz short loc_70F592 ; Jump if Zero (ZF=1)
  54. .text:0070F57C 00C 8B 0D C0 96 1D 01 mov ecx, g_HUDMainMenu ; this
  55. .text:0070F582 00C E8 E9 00 00 00 call HUDMainMenu__IsHotkeySelectorVisible ; Call Procedure
  56. .text:0070F587 00C 0F B6 D0 movzx edx, al ; Move with Zero-Extend
  57. .text:0070F58A 00C 85 D2 test edx, edx ; Logical Compare
  58. .text:0070F58C 00C 0F 85 D7 00 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  59. .text:0070F592
  60. .text:0070F592 loc_70F592: ; CODE XREF: TryOpenPipboy+9A↑j
  61. .text:0070F592 00C 6A 00 push 0
  62. .text:0070F594 010 8B 4D FC mov ecx, [ebp+var_4]
  63. .text:0070F597 010 E8 74 73 00 00 call sub_716910 ; Call Procedure
  64. .text:0070F59C 00C 0F B6 C0 movzx eax, al ; Move with Zero-Extend
  65. .text:0070F59F 00C 85 C0 test eax, eax ; Logical Compare
  66. .text:0070F5A1 00C 0F 84 C2 00 00 00 jz loc_70F669 ; Jump if Zero (ZF=1)
  67. .text:0070F5A7 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  68. .text:0070F5AD 00C 8B 11 mov edx, [ecx]
  69. .text:0070F5AF 00C 8B 0D 3C EA 1D 01 mov ecx, g_thePlayer
  70. .text:0070F5B5 00C 8B 82 30 02 00 00 mov eax, [edx+230h]
  71. .text:0070F5BB 00C FF D0 call eax ; Indirect Call Near Procedure
  72. .text:0070F5BD 00C 0F B6 C8 movzx ecx, al ; Move with Zero-Extend
  73. .text:0070F5C0 00C 85 C9 test ecx, ecx ; Logical Compare
  74. .text:0070F5C2 00C 0F 85 A1 00 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  75. .text:0070F5C8 00C B9 50 22 1F 01 mov ecx, offset g_VATSCameraData
  76. .text:0070F5CD 00C E8 EE E7 D3 FF call TESForm__GetFlags ; Microsoft VisualC 2-14/net runtime
  77. .text:0070F5D2 00C 85 C0 test eax, eax ; Logical Compare
  78. .text:0070F5D4 00C 0F 85 8F 00 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  79. .text:0070F5DA 00C 0F B6 15 80 07 1E 01 movzx edx, byte_11E0780 ; Move with Zero-Extend
  80. .text:0070F5E1 00C 85 D2 test edx, edx ; Logical Compare
  81. .text:0070F5E3 00C 0F 85 80 00 00 00 jnz loc_70F669 ; Jump if Not Zero (ZF=0)
  82. .text:0070F5E9 00C E8 02 27 1C 00 call Get_CameraShakeMultMin ; Call Procedure
  83. .text:0070F5EE 00C DC 1D 60 20 01 01 fcomp ds:dlb_zero ; Compare Real and Pop
  84. .text:0070F5F4 00C DF E0 fnstsw ax ; Store Status Word (no wait)
  85. .text:0070F5F6 00C F6 C4 44 test ah, 44h ; Logical Compare
  86. .text:0070F5F9 00C 7A 6E jp short loc_70F669 ; Jump if Parity (PF=1)
  87. .text:0070F5FB 00C 6A 01 push 1
  88. .text:0070F5FD 010 8B 0D 04 88 1D 01 mov ecx, dword_11D8804
  89. .text:0070F603 010 E8 48 1E FF FF call sub_701450 ; Call Procedure
  90. .text:0070F608 00C 0F B6 C0 movzx eax, al ; Move with Zero-Extend
  91. .text:0070F60B 00C 85 C0 test eax, eax ; Logical Compare
  92. .text:0070F60D 00C 75 5A jnz short loc_70F669 ; Jump if Not Zero (ZF=0)
  93. .text:0070F60F 00C 83 7D 0C 00 cmp [ebp+a3], 0 ; Compare Two Operands
  94. .text:0070F613 00C 74 18 jz short loc_70F62D ; Jump if Zero (ZF=1)
  95. .text:0070F615 00C 8B 4D 0C mov ecx, [ebp+a3]
  96. .text:0070F618 00C 51 push ecx ; a3
  97. .text:0070F619 010 68 71 17 00 00 push 1771h ; a2
  98. .text:0070F61E 014 8B 4D FC mov ecx, [ebp+var_4] ; this
  99. .text:0070F621 014 E8 2A 6B E7 FF call TESWorldspace__GetMusic_InterfaceManager__GetRootMenu_GetUnk09C ; Call Procedure
  100. .text:0070F626 014 8B C8 mov ecx, eax ; this
  101. .text:0070F628 014 E8 F3 0C FF FF call Tile__PropagateFloatValue ; Call Procedure
  102. .text:0070F62D
  103. .text:0070F62D loc_70F62D: ; CODE XREF: TryOpenPipboy+133↑j
  104. .text:0070F62D 00C 8B 55 FC mov edx, [ebp+var_4]
  105. .text:0070F630 00C 83 BA BC 04 00 00 03 cmp dword ptr [edx+4BCh], 3 ; Compare Two Operands
  106. .text:0070F637 00C 75 0B jnz short loc_70F644 ; Jump if Not Zero (ZF=0)
  107. .text:0070F639 00C 83 7D 08 00 cmp [ebp+arg_0], 0 ; Compare Two Operands
  108. .text:0070F63D 00C 74 05 jz short loc_70F644 ; Jump if Zero (ZF=1)
  109. .text:0070F63F 00C FF 55 08 call [ebp+arg_0] ; Indirect Call Near Procedure
  110. .text:0070F642 00C EB 25 jmp short loc_70F669 ; Jump
  111. .text:0070F644 ; ---------------------------------------------------------------------------
  112. .text:0070F644
  113. .text:0070F644 loc_70F644: ; CODE XREF: TryOpenPipboy+157↑j
  114. .text:0070F644 ; TryOpenPipboy+15D↑j
  115. .text:0070F644 00C 8B 45 FC mov eax, [ebp+var_4]
  116. .text:0070F647 00C 83 B8 BC 04 00 00 00 cmp dword ptr [eax+4BCh], 0 ; Compare Two Operands
  117. .text:0070F64E 00C 75 19 jnz short loc_70F669 ; Jump if Not Zero (ZF=0)
  118. .text:0070F650 00C 8B 4D FC mov ecx, [ebp+var_4]
  119. .text:0070F653 00C C7 81 BC 04 00 00 01+ mov dword ptr [ecx+4BCh], 1
  120. .text:0070F65D 00C 8B 55 FC mov edx, [ebp+var_4]
  121. .text:0070F660 00C 8B 45 08 mov eax, [ebp+arg_0]
  122. .text:0070F663 00C 89 82 C0 04 00 00 mov [edx+4C0h], eax
  123. .text:0070F669
  124. .text:0070F669 loc_70F669: ; CODE XREF: TryOpenPipboy+1A↑j
  125. .text:0070F669 ; TryOpenPipboy+3D↑j ...
  126. .text:0070F669 00C 5E pop esi
  127. .text:0070F66A 008 8B E5 mov esp, ebp
  128. .text:0070F66C 004 5D pop ebp
  129. .text:0070F66D 000 C2 08 00 retn 8 ; Return Near from Procedure
  130. .text:0070F66D TryOpenPipboy endp
  131. .text:0070F66D
  132. .text:0070F670
  133. .text:0070F670 ; =============== S U B R O U T I N E =======================================
  134. .text:0070F670
  135. .text:0070F670 ; Attributes: bp-based frame
  136. .text:0070F670
  137. .text:0070F670 ; void __thiscall HUDMainMenu__IsHotkeySelectorVisible(HUDMainMenu *this)
  138. .text:0070F670 HUDMainMenu__IsHotkeySelectorVisible proc near
  139. .text:0070F670 ; CODE XREF: TryOpenPipboy+A2↑p
  140. .text:0070F670
  141. .text:0070F670 var_4 = dword ptr -4
  142. .text:0070F670
  143. .text:0070F670 000 55 push ebp
  144. .text:0070F671 004 8B EC mov ebp, esp
  145. .text:0070F673 004 51 push ecx
  146. .text:0070F674 008 89 4D FC mov [ebp+var_4], ecx
  147. .text:0070F677 008 8B 4D FC mov ecx, [ebp+var_4]
  148. .text:0070F67A 008 81 C1 C8 01 00 00 add ecx, 1C8h ; Add
  149. .text:0070F680 008 E8 BB 20 FF FF call TileRect__IsVisible ; Call Procedure
  150. .text:0070F685 008 8B E5 mov esp, ebp
  151. .text:0070F687 004 5D pop ebp
  152. .text:0070F688 000 C3 retn ; Return Near from Procedure
  153. .text:0070F688 HUDMainMenu__IsHotkeySelectorVisible endp
  154. .text:0070F688
  155. .text:0070F688 ; ---------------------------------------------------------------------------
  156. .text:0070F689 CC CC CC CC CC CC CC align 10h
  157. .text:0070F690
  158. .text:0070F690 ; =============== S U B R O U T I N E =======================================
  159. .text:0070F690
  160. .text:0070F690 ; Attributes: bp-based frame
  161. .text:0070F690
  162. .text:0070F690 ; int __thiscall sub_70F690(InterfaceManager *this, int (*a2)(void))
  163. .text:0070F690 sub_70F690 proc near ; CODE XREF: MainUILoop+24FA↑p
  164. .text:0070F690 ; MainUILoop+263E↑p ...
  165. .text:0070F690
  166. .text:0070F690 var_4 = dword ptr -4
  167. .text:0070F690 arg_0 = dword ptr 8
  168. .text:0070F690
  169. .text:0070F690 000 55 push ebp
  170. .text:0070F691 004 8B EC mov ebp, esp
  171. .text:0070F693 004 51 push ecx
  172. .text:0070F694 008 89 4D FC mov [ebp+var_4], ecx
  173. .text:0070F697 008 8B 45 FC mov eax, [ebp+var_4]
  174. .text:0070F69A 008 83 B8 BC 04 00 00 00 cmp dword ptr [eax+4BCh], 0 ; Compare Two Operands
  175. .text:0070F6A1 008 75 0B jnz short loc_70F6AE ; Jump if Not Zero (ZF=0)
  176. .text:0070F6A3 008 83 7D 08 00 cmp [ebp+arg_0], 0 ; Compare Two Operands
  177. .text:0070F6A7 008 74 05 jz short loc_70F6AE ; Jump if Zero (ZF=1)
  178. .text:0070F6A9 008 FF 55 08 call [ebp+arg_0] ; Indirect Call Near Procedure
  179. .text:0070F6AC 008 EB 25 jmp short loc_70F6D3 ; Jump
  180. .text:0070F6AE ; ---------------------------------------------------------------------------
  181. .text:0070F6AE
  182. .text:0070F6AE loc_70F6AE: ; CODE XREF: sub_70F690+11↑j
  183. .text:0070F6AE ; sub_70F690+17↑j
  184. .text:0070F6AE 008 8B 4D FC mov ecx, [ebp+var_4]
  185. .text:0070F6B1 008 83 B9 BC 04 00 00 03 cmp dword ptr [ecx+4BCh], 3 ; Compare Two Operands
  186. .text:0070F6B8 008 75 19 jnz short loc_70F6D3 ; Jump if Not Zero (ZF=0)
  187. .text:0070F6BA 008 8B 55 FC mov edx, [ebp+var_4]
  188. .text:0070F6BD 008 C7 82 BC 04 00 00 04+ mov dword ptr [edx+4BCh], 4
  189. .text:0070F6C7 008 8B 45 FC mov eax, [ebp+var_4]
  190. .text:0070F6CA 008 8B 4D 08 mov ecx, [ebp+arg_0]
  191. .text:0070F6CD 008 89 88 C0 04 00 00 mov [eax+4C0h], ecx
  192. .text:0070F6D3
  193. .text:0070F6D3 loc_70F6D3: ; CODE XREF: sub_70F690+1C↑j
  194. .text:0070F6D3 ; sub_70F690+28↑j
  195. .text:0070F6D3 008 8B E5
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.

×