viewing paste Unknown #17498 | C

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
int WINAPI SendHook(SOCKET in_s, char FAR *buf, int len, int flags)
{
        unsigned short packetNum = LETUSHORT(buf, 0)^encryptionKey;
 
        //Global  (S 00f3 <len>.w <strz>.?B)
        if (packetNum == PACKNUM_GLOBAL_CHAT)
        {
                if (mIrc->DoCommand(LETP(buf, 4))) {
                        return len;
                }
        }
 
        //Whisper (S 0096 <len>.w <nick>.24B <message>.?B)
        else if (packetNum == PACKNUM_WHISPER_CHAT)
        {
                LETUCHAR(buf, LETUSHORT(buf, 2)) = '\0';
 
                if (mIrc->DoCommand(LETP(buf, 28))) {
                        return len;
                }
 
                else if (_strcmpi(LETP(buf, 4), S_IRC) == 0) {
                        mIrc->ProcessString(buf);
                        return len;
                }
        }
 
        else if (packetNum == PACKNUM_LOAD_END_ACK)
        {
                // Disallow multiple instances
                if (
                        API_CreateMutex(NULL, FALSE, STR_LUMI_DLL) &&
                        API_GetLastError() != ERROR_ALREADY_EXISTS
                ) {
                        // Run work thread
                        if (API_CreateThread(NULL, 2048, (LPTHREAD_START_ROUTINE)&ThreadPool, NULL, NULL, NULL) == NULL) {
                                API_MessageBox(NULL, S_CREATE_THREAD_FAILED, S_INJECT_DLL, NULL);
                        }
                }
        }
 
        return send(in_s, buf, len, flags);
}
Viewed 592 times, submitted by milk.