Advertisement
ThirteenAG

bink

Jun 16th, 2013
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. {$cleo}
  2. 0000:
  3. wait 1
  4. for 30@ = 0x00C9AEDB downto 0x00C9ADD8 step 0x1
  5. 0A8D: 31@ = read_memory 30@ size 1 virtual_protect 1
  6. if
  7. 31@ == 0x5C
  8. then
  9. break
  10. end
  11. end
  12. 30@ += 2
  13. 0A8D: 5@ = read_memory 30@ size 4 virtual_protect 1
  14. if or
  15. not 5@ == 0x735F6174 //ta_s
  16. not $Mission_Intro_Passed == 0
  17. then
  18. 0A93:
  19. end
  20. while true
  21. wait 0
  22. 0AAA: 1@ = thread 'INTRO' pointer
  23. if
  24. 1@ <> 0
  25. then
  26. break
  27. end
  28. end
  29. 09FB: 1@ = current_language
  30. if
  31. 1@ == 4 //rus
  32. then
  33. 0A9F: 10@ = current_thread_pointer
  34. 000A: 10@ += 0x10
  35. 0A8D: 10@ = read_memory 10@ size 4 virtual_protect 0
  36. 000E: 10@ -= @STRING_RUS
  37. else
  38. 0A9F: 10@ = current_thread_pointer
  39. 000A: 10@ += 0x10
  40. 0A8D: 10@ = read_memory 10@ size 4 virtual_protect 0
  41. 000E: 10@ -= @STRING
  42. end
  43.  
  44. while 86B9: not cutscene_data_loaded
  45. wait 0
  46. end
  47.  
  48. while 82E9: not cutscene_reached_end
  49. wait 0
  50. end
  51.  
  52. while 016B: fading
  53. wait 0
  54. end
  55.  
  56. while 816B: not fading
  57. wait 0
  58. end
  59.  
  60. if
  61. 0AAB: file_exists "SanBINK.dll"
  62. then
  63. if
  64. 0AA2: 0@ = load_library "SanBINK.dll" // IF and SET
  65. then
  66. if
  67. 0AA4: 1@ = get_proc_address "CreateBINK" library 0@ // IF and SET
  68. then
  69. 0AA5: call 1@ num_params 1 pop 1 10@
  70. end
  71. end
  72. end
  73. //wait 1000
  74. 0AA4: 2@ = get_proc_address "HasVideoEnded" library 0@ // IF and SET
  75. //freezing
  76. 0A8C: write_memory 0x53BF8A size 2 value 0x9090 virtual_protect 1
  77. 0A8C: write_memory 0x53BF96 size 4 value 0x90909090 virtual_protect 1
  78. 0A8C: write_memory 0x53BF9A size 2 value 0x9090 virtual_protect 1
  79. 0A8C: write_memory 0x58FCC2 size 4 value 0x90909090 virtual_protect 1
  80. 0A8C: write_memory 0x58D4BE size 4 value 0x90909090 virtual_protect 1
  81. 0A8C: write_memory 0x58D4C2 size 4 value 0x90909090 virtual_protect 1
  82. 0A8C: write_memory 0xB7CB49 size 1 value 1 virtual_protect 0
  83. //freezing
  84. while true
  85. wait 0
  86. 0AA7: call_function 2@ num_params 0 pop 0 3@
  87. if or
  88. 056A: intro_skipped
  89. 0AB0: key_pressed 27
  90. 0AB0: key_pressed 70
  91. 3@ <> false
  92. then
  93. break
  94. end
  95. end
  96. 0AA4: 4@ = get_proc_address "ReleaseBINK" library 0@ // IF and SET
  97. 0AA5: call 4@ num_params 0 pop 0
  98. 0A8C: write_memory 0xB7CB49 size 1 value 0 virtual_protect 0 // Unfreeze
  99. 0A8C: write_memory 0x53BF8A size 2 value 0xC084 virtual_protect 1 // Disable frozen game stuff
  100. 0A8C: write_memory 0x53BF96 size 4 value 0x0298850F virtual_protect 1 // Disable frozen game stuff
  101. 0A8C: write_memory 0x53BF9A size 2 value 0x0 virtual_protect 1 // Disable frozen game stuff
  102. 0A8C: write_memory 0x58FCC2 size 4 value 0x4D75C084 virtual_protect 1 // Disable frozen game text draw
  103. 0A8C: write_memory 0x58D4BE size 4 value 0x850FC084 virtual_protect 1 // Disable frozen game texture draw
  104. 0A8C: write_memory 0x58D4C2 size 4 value 0x000000AF virtual_protect 1 // Disable frozen game texture draw
  105. 0AA3: free_library 0@
  106. 0A93:
  107.  
  108.  
  109. :STRING
  110. hex
  111. "movies\\Introduction.bik" 00
  112. end
  113.  
  114. :STRING_RUS
  115. hex
  116. "movies\\Introduction_rus.bik" 00
  117. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement