Hacked DLL Documentation

Discussion in 'TemplePlus' started by DarkStorm, Feb 28, 2015.

Remove all ads!
  1. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    I am sifting through the temple.dll currently used by Co8 and the original temple.dll using a Hex-Editor to compare the differences. My goal is to make a somewhat complete documentation of what is different about that DLL.

    1) @0x2D0 (file): Byte pattern changed from "40 00 00 42" to "60 00 00 E0". Reason unknown. This does not seem to be in the code part of the executable. Could be a remapping table change.

    2) Window size has been changed
    @1000164A Arguments have been changed from 800, 600 to 1024, 768

    3) Co8 persistent data
    @10002D29 (gamelib_load) call inserted to 11EB6966
    @10004865 (gamelib_save) call inserted to 11EB6940

    4) Font Change
    @10005366 argument changed from 10->12 and arial-10 to priory-12
    @1005357E same as above

    5) Party Size 5->6 change
    @1002BBED operand changed from 5 to 6

    6) NPC Followers 3->2 ??
    @1002BC4D operand changed from 3 to 2

    7) AI Followers 5->10
    @1002BCAD operand changed from 5 to 10

    8) Paladin Reputation 18 disallowed (?)
    @ 10054808 + 18 value changed from 1 to 0

    9) Unknown
    @100668D1 Call to sub 1002B360 was removed and replaced with result 0
    Seems to be related to party size
    @1006C935 Call to sub 1002B360 was removed and replaced with result 0
    @1006EC34 Entire function seems to have been replaced with jmp to 11EB6650
    @1006FE1B Operand 5077 replaced with 5078
    @1007173C same as above
    @1007661F Call inserted to 11EB6437

    @100777D0 Functions inserted (Used below to replace LUT):
    .text:100777D0 db 3Eh
    .text:100777D0 movzx edx, word_1027827C[edx*2]
    .text:100777D9 retn
    .text:100777DA db 3Eh
    .text:100777DA movzx edx, word_10278294[edx*2]
    .text:100777E3 retn

    @10077880 Lookup table replaced with call to:
    From: mov edx, ds:dword_1027827C[edx*4]
    To: sub_100777D0 (see above)

    @1007788F Lookup table replaced with call to:
    From: mov edx, ds:dword_10278294[edx*4]
    To: call sub_100777DA

    @1007789E Lookup table replaced with call to:
    From: mov edx, ds:dword_102782AC[edx*4]
    To: call sub_10077964

    @10077964 Functions inserted (used above to replace LUT):
    .text:10077964 db 3Eh
    .text:10077964 movzx edx, word_102782AC[edx*2]
    .text:1007796D retn

    @1007BF10 Entire function replaced with call to 11EB6AA0
    (Original function compared something to 649 and 10)

    @1007C49F Argument changed from 5 to 6 (party size related?)
    (although something has feat by class is called below)

    @1007C5F4 Part of function replaced by jmp to 1007C757
    @1007C757 Function inserted:
    .text:1007C757 cmp ebx, 39h ; '9'
    .text:1007C75A jz loc_1007C5F9
    .text:1007C760 cmp ebx, 3Ah ; ':'
    .text:1007C763 jz loc_1007C5F9
    .text:1007C769 jmp loc_1007C613

    Feat related?
     
  2. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    Attached Spell Slinger's Notes

    I'll also poke around for moebius's stuff, and there should be some docs for stuff alteted by TFE-X too.

    Edit: attached DLL notes from 3.0.4 (moebius?)
    Also attaching DLL notes from moebius fixpack itself. Seems like a more advanced version of the 3.0.4 file.
    Now from 4.0.0 as well. The txt files are the same as 3.0.4 (less content than in Moebius' patch), but there's also a .doc that compiles some of Moebius' txts from the latest release.
     

    Attached Files:

    Last edited: Feb 28, 2015
  3. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
  4. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,038
    Likes Received:
    42
    Just remembered - there was a very minor hack that a passerby member suggested and I implemented a couple releases ago. I think it had something to do with correcting a diety. Having a senior moment right now and can't recall more than that, but I'll have a look in the readmes, and I do recall that it was briefly discussed somewhere in GM.

    edit

    Senior moment begone! Here it is:

    http://www.co8.org/forum/showthread.php?t=10275
     
Our Host!