Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<Windows.h>
- #include"gui.h"
- #include"gui_pe.h"
- gui pe;
- list log;
- #define C_SENDHOOK 101
- #define C_RECVHOOK 102
- #define E_RETURNADDRESS 201
- #define E_PACKET 202
- #define E_FORMAT 203
- #define B_CLEAR 301
- #define B_SEND 302
- void gui_create(HWND hWnd){
- pe.CheckBox(C_SENDHOOK, "SendHook", 110, 500, true);
- pe.CheckBox(C_RECVHOOK, "RecvHook", 220, 500, true);
- pe.EditBox(E_RETURNADDRESS, "", 3, 500, 100);
- pe.EditBox(E_PACKET, "", 3, 520, 550);
- pe.EditBox(E_FORMAT, "", 3, 540, 550);
- pe.Button(B_CLEAR, "Clear", 330, 500);
- pe.Button(B_SEND, "Send", 560, 520);
- //List Control
- log.Set(hWnd, 3, 3, 594, 494);
- log.AddHeader("Type", 40);
- log.AddHeader("Return", 60);
- log.AddHeader("Length", 50);
- log.AddHeader("Packet", 400);//Format Packet
- log.AddHeader("", 0);//Original Packet
- }
- void gui_control(WORD wID){
- switch(wID){
- case B_CLEAR:
- log.Clear();
- break;
- default:
- break;
- }
- }
- void gui_notify(HWND hWnd){
- if(hWnd == log.GetHWND()){
- char Buffer[1024 * 4];
- log.GetSelectedItem(1, Buffer);
- if(!Buffer[0]){
- return;
- }
- pe.SetString(E_RETURNADDRESS, Buffer);
- log.GetSelectedItem(4, Buffer);
- pe.SetString(E_PACKET, Buffer);
- log.GetSelectedItem(3, Buffer);
- pe.SetString(E_FORMAT, Buffer);
- }
- }
- #include<stdio.h>
- char Buffer[65536];
- void _stdcall AddLog(DWORD Type, DWORD dwReturn, DWORD Length, BYTE *Packet, char *Format){
- if((Type == 0 && !pe.CheckBoxStatus(C_SENDHOOK)) || (Type == 1 && !pe.CheckBoxStatus(C_RECVHOOK))){
- return;
- }
- if(Type == 0){
- log.AddItem(0, "Out");
- }
- else{
- log.AddItem(0, "In");
- }
- sprintf(Buffer, "%08X", dwReturn);
- log.AddItem(1, Buffer);
- sprintf(Buffer, "%d", Length);
- log.AddItem(2, Buffer);
- log.AddItem(3, Format);
- sprintf(Buffer, "@%04X", *(WORD *)&Packet[0 + Type * 4]);
- for(int i=2; i<Length; i++){
- sprintf(&Buffer[strlen(Buffer)], " %02X", Packet[i + Type * 4]);
- }
- log.AddItem(4, Buffer);
- }
- void gui_pe(HINSTANCE hInstance){
- pe.Run(hInstance, "Packet Test", 800, 600, gui_create, gui_control, gui_notify);
- }
Add Comment
Please, Sign In to add comment