Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //[00C68E08] stores the last return address
- //KNOWN GOOD CODE (AKA NOT RETN ADDRESS CHECKS):
- *(_DWORD *)(dwEbp - 24) = lpvCClientSocket;
- v8 = *(_DWORD *)(dwEbp - 24);
- sub_401FB0((void *)(dwEbp - 20), v8 + 0x7C);
- // sub_401FB0(0xB13600, lpvCClientSocket + 0x7C)
- v7 = *(_DWORD *)(v8 + 8);
- if ( v7 )
- {
- if ( v7 != -1 )
- {
- if ( !*(_DWORD *)(v8 + 20) )
- {
- sub_68D050(*(_DWORD *)(dwEbp + 8), v8 + 0x50, 0x5Fu, v8 + 0x84, 1, *(_DWORD *)(v8 + 0x84));
- // sub_68D050(lpvPacket, lpvCClientSocket + 0x50, 0x5F, lpvCClientSocket + 0x84, 1, *(DWORD*)(lpvCClientSocket + 0x84))
- /*
- ___:004AFBE1 loc_4AFBE1:
- ___:004AFBE1 mov edx, [edi+84h]
- ___:004AFBE7 mov ecx, [ebp+arg_0]
- ___:004AFBEA lea esi, [edi+84h]
- ___:004AFBF0 push edx
- ___:004AFBF1 push 1
- ___:004AFBF3 push esi
- ___:004AFBF4 push 5Fh
- ___:004AFBF6 lea eax, [edi+50h]
- ___:004AFBF9 push eax
- ___:004AFBFA call sub_68D050
- */
- *(_DWORD *)(v8 + 0x84) = sub_A1C1A0(v8 + 0x84, 4, 0);
- // sub_A1C1A0(lpvCClientSocket + 0x7C, 4, 0)
- /*
- ___:004AFC19 loc_4AFC19:
- ___:004AFC19 push 0
- ___:004AFC1B push 4
- ___:004AFC1D push esi
- ___:004AFC1E call sub_A1C1A0
- */
- sub_4AF6A0(v8);
- // sub_4AF6A0(lpvCClientSocket)
- /*
- ___:004AFC42 loc_4AFC42:
- ___:004AFC42 mov ecx, edi ;socket class
- ___:004AFC44 call sub_4AF6A0
- */
- }
- }
- }
- result = *(_DWORD *)(dwEbp - 20); //[ebp-0x14] == 0xB13600
- //result = [0xB13600]
- v14 = *(_DWORD *)(result + 4)-- == 1; //v14 is a char
- if ( v14 )
- *(_DWORD *)result = 0;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement