Th11/Binary hacks

From Touhou Patch Center
Jump to: navigation, search

Bugs

Safe sprintf (call #1)
(sprintf_call_1)
Address
v1.00a0x454c8d
Code
  1. 50
  2. e8 [strings_vsprintf]
  3. 8944e4 14
  1. push eax
  2. call [strings_vsprintf]
  3. mov dword ptr ss:[esp+0x14],eax
Safe sprintf (call #2)
(sprintf_call_2)
Address
v1.00a0x454d39, 0x454e19
Code
  1. 50
  2. e8 [strings_vsprintf]
  3. 8944e4 1c
  1. push eax
  2. call [strings_vsprintf]
  3. mov dword ptr ss:[esp+0x1c],eax
Safe sprintf (replace pointer)
(sprintf_rep)
Address
v1.00a0x454cd3, 0x454db6, 0x454e8a
Code
  1. 8b5ce4
  1. mov ebx, dword ptr ss:[esp+

Spells

Spell card alignment
(spell_align)
Address
v1.00a0x454d67
Code
  1. 8b96 08040000
  2. 51
  3. d1ea
  4. 83e2 01
  5. 52
  6. ffb4e4 a8000000
  7. ffb4e4 a8000000
  8. ff35 ec2e4c00
  9. 53
  10. e8 [GetTextExtentForFont]
  11. 83c0 04
  12. 50
  13. db04e4
  14. 58
  15. 85c0
  1. mov edx, dword ptr ds:[esi+408]
  2. push ecx
  3. shr edx, 1
  4. and edx, 00000001
  5. push edx
  6. push dword ptr ss:[esp+0xa8]
  7. push dword ptr ss:[esp+0xa8]
  8. push dword ptr ds:[th11.004c2eec]
  9. push ebx
  10. call [GetTextExtentForFont]
  11. add eax, 4
  12. push eax
  13. fild dword ptr ss:[esp]
  14. pop eax
  15. test eax, eax

Player data

Remove spell "alignment" in the result screen
(result_spell_align)
Address
v1.00a0x454e79
Code
  1. 31c0
  1. xor eax,eax

Compatibility

Reset English patch assist font width
(unpatch_font_assist)
Address
v1.00a0x4445c5
Code
  1. 6a 00
  1. push 0