flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
coconut 19 Dec 2006, 01:35
maybe tomasz' quetannon example can help; look at examples page
|
|||
![]() |
|
kohlrak 19 Dec 2006, 02:39
I guess here would be a good place to ask instead of creating my own thread and clutter up stuff...... Does anyone happen to have a decent tutorial to other features of winsocks rather than just the TCP example uses? Since TCP is supposed to allow only one connection at a time, i'd like to learn a little about UDP as well. I've started to read that winsocks tutorial that comes with fasm, but it seems to not be going anywhere except explaining all the features of winsocks2.
|
|||
![]() |
|
coconut 19 Dec 2006, 03:01
|
|||
![]() |
|
kohlrak 19 Dec 2006, 03:32
Thank you.
|
|||
![]() |
|
AlexMihaj 19 Dec 2006, 06:11
coconut wrote: maybe tomasz' quetannon example can help; look at examples page didn't understand a thing. It looks quite cluttered to my eyes. Anyway I already know how to use the Winsock API. What I need is something that can explain why I only receive zeros when really send something different. Are there any rules about what I may or may not use as a buffer when sending? |
|||
![]() |
|
RedGhost 19 Dec 2006, 08:38
Code injection + sockets, oh my
![]() _________________ redghost.ca |
|||
![]() |
|
AlexMihaj 19 Dec 2006, 14:54
RedGhost wrote: Code injection + sockets, oh my Yep that's right ![]() Got any tips? This is kind of a first try for me. |
|||
![]() |
|
RedGhost 19 Dec 2006, 22:00
AlexMihaj wrote:
Since the programme has loaded the .dll you require, enumerate its EAT via ReadProcessMemory( ) to get the proper address of the function(s) you want rather than rely on a constant to ensure compatibility. _________________ redghost.ca |
|||
![]() |
|
AlexMihaj 19 Dec 2006, 23:00
RedGhost wrote:
I don't get it. Compatibility with what? I call the functions just like it's done in the rest of the program: Code: call [address_to_an_entry_in_some_table] Why should I use ReadProcessMemory? Can't I just read from memory the "normal" way? After all, my code is part of the app ![]() |
|||
![]() |
|
kohlrak 19 Dec 2006, 23:05
i don't know much about winsocks, but the DLL is part of the OS, so if it has security things that disable doign things the normal way, you'll have to do it another way.
|
|||
![]() |
|
AlexMihaj 21 Dec 2006, 02:13
This is so embarrasing...
![]() When pushing 0 dwords I cleared the EDX reg and pushed it. Everything to save space. ![]() However after calling connect I "forgot" to clear it again so instead of 0 I passed god knows what as flags. No wonder it failed. I fixed it by using ESI as my 0 dword instead. Thanks for your attempts to help me ![]() Good bye |
|||
![]() |
|
RedGhost 21 Dec 2006, 03:24
AlexMihaj wrote: This is so embarrasing... The winsock DLL's are not loaded by every single process like ntdll.dll and kernel32.dll, there is no guarantee the functions reside at the same addresses and the dll's have the same base address in every process. _________________ redghost.ca |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2023, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.