Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6
[7.72 (Tibianic)] Calling "talk" function from DLL (OllyDbg help needed)
Results 1 to 4 of 4

Thread: [7.72 (Tibianic)] Calling "talk" function from DLL (OllyDbg help needed)

  1. #1
    Junior Member
    Join Date
    Feb 2011
    Posts
    9

    [7.72 (Tibianic)] Calling "talk" function from DLL (OllyDbg help needed)

    Hey

    I'm trying to call "Talk" function from attached DLL. I'm not a OllyDbg nor assembly expert, and probably I've missed something simple.

    I've found, that when I'm sending message, this function is called:



    So function address is Tibia.0041F940. And my questions are:

    1. how to discover which stack variable is (if any) used by Tibia.0041F940? I see that first variable on stack is 13 which is Enter key ASCII code, second pointer is something related to current character (changes if I relogin on different one)
    2. how to discover return value type?
    3. is there a method to call function from OllyDbg by address (just to avoid compling c++?) Or any other tool for that?


    Currently, when I'm trying to call this function, client closes with error (Instruction from 0x0041f966 reads memory from address 0xc704ecaf. Memory can't be read). Any ideas?

    Thank you for help

  2. #2
    Senior Member Lolrapa's Avatar
    Join Date
    Mar 2014
    Posts
    125
    Hey! sorry I post a question inside your question but how do you call a tibia function form your injected dll? Do you use a pointer to a function?

  3. #3
    Junior Member
    Join Date
    Feb 2011
    Posts
    9
    Quote Originally Posted by Lolrapa View Post
    Hey! sorry I post a question inside your question but how do you call a tibia function form your injected dll? Do you use a pointer to a function?
    I've used this tutorial:
    http://www.codeproject.com/Articles/...ling-by-Addres

    And yes, I'm using pointer.

  4. #4
    Junior Member
    Join Date
    Feb 2011
    Posts
    9
    Ok folks, I've worked it out

    Valid function pointer is: 0x004067C0, pattern is (int, char*).

    thanks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •