Skip to content

Commit d4c9401

Browse files
committed
v0.0.3
1 parent 56f2039 commit d4c9401

9 files changed

Lines changed: 18 additions & 14 deletions

File tree

Hook/AntiCheat.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ namespace AntiCheat {
5050
if (uCWvsAppUpdateTimeCall > 0) {
5151
r.WriteByte(uCWvsAppUpdateTimeCall + 2, 0xEB);
5252
}
53+
#pragma endregion
54+
#pragma region CMobPool::Update
55+
ULONG_PTR uMobPoolUpdateAddr = r.Scan(AOB_Scan_CMobPool__Update_Addr);
56+
if (uMobPoolUpdateAddr > 0) {
57+
r.WriteByte(uMobPoolUpdateAddr, 0xEB);
58+
}
5359
#pragma endregion
5460
}
5561

Hook/Hook.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,6 @@ namespace {
8080
if (!ResMan::Mount(gMapleR)) {
8181
DEBUG(L"Unable to mount res man");
8282
}
83-
//RShield::Init();
8483
}
8584
if (lpName && strstr(lpName, "WvsClientMtx")) {
8685
// MultiClient: faking HANDLE is 0xBADF00D(BadFood)
@@ -95,7 +94,7 @@ namespace {
9594
// Customize game window title
9695
lpWindowName = Config::WindowTitle.c_str();
9796
// Show minimize button
98-
dwStyle |= WS_MINIMIZEBOX | WS_SYSMENU;
97+
dwStyle |= WS_MINIMIZEBOX | WS_SYSMENU;
9998
// Place the game window in the center of the screen
10099
RECT screenRect;
101100
GetWindowRect(GetDesktopWindow(), &screenRect);

Hook/Hook.vcxproj

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,17 +90,16 @@
9090
<ClCompile>
9191
<WarningLevel>Level3</WarningLevel>
9292
<SDLCheck>true</SDLCheck>
93-
<PreprocessorDefinitions>WIN32;_DEBUG;HOOK_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
93+
<PreprocessorDefinitions>WIN32;NDEBUG;HOOK_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
<ConformanceMode>true</ConformanceMode>
9595
<PrecompiledHeader>Use</PrecompiledHeader>
9696
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
9797
<UndefinePreprocessorDefinitions>
9898
</UndefinePreprocessorDefinitions>
99-
<DebugInformationFormat>None</DebugInformationFormat>
99+
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
100100
</ClCompile>
101101
<Link>
102102
<SubSystem>Windows</SubSystem>
103-
<GenerateDebugInformation>false</GenerateDebugInformation>
104103
<EnableUAC>false</EnableUAC>
105104
</Link>
106105
</ItemDefinitionGroup>

Hook/Resources/AOBList.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ const std::wstring AOB_Scan_CWvsApp__InitializeResMan_Integrity_Check_Addr = L"7
2020
const std::wstring AOB_Scan_CWvsApp__InitAcGuardian_Addr = L"55 8B EC 81 EC B0 03 00 00 56"; // CMS15(0x00592778)
2121
const std::wstring AOB_Scan_CSecurityThread__Start_Addr = L"B8 B8 2D 5D 00 E8"; // CMS15(0x00593833)
2222
const std::wstring AOB_Scan_CWvsApp__UpdateTime_Call = L"85 D2 75 07 8B CE E8"; // CMS15(0x00593B47)
23+
const std::wstring AOB_Scan_CMobPool__Update_Addr = L"75 0F 8B 0D 80 15 61 00 8D 45 D8 50 E8"; // CMS15(0x004B4B8C)
2324
#pragma endregion
2425

2526
#pragma region CMS48-CMS69
Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#include <tlhelp32.h>
55
#include <vector>
66
#include <string>
7+
#include <comdef.h>
78

89
#pragma region AOBHelper
910
ULONG_PTR GetFuncAddress(ULONG_PTR uAddr);
@@ -52,7 +53,7 @@ class AOBScan {
5253
#define DEBUG(msg)
5354
#endif
5455

55-
#define SCANRES(msg) { DEBUG(L""#msg" = " + DWORD2String(msg));}
56+
#define SCANRES(msg) { DEBUG(L""#msg" = " + Int2String(msg));}
5657

5758
#define CHECK_HRESULT(HR) \
5859
do { \
@@ -66,7 +67,7 @@ do { \
6667

6768
#pragma region ProcessHelper
6869
void GetModuleEntryList(std::vector<MODULEENTRY32W>& vModuleEntryList);
69-
bool FindModuleEntry(const std::wstring& wModuleName, BYTE** ppBaseAddr, DWORD& baseSize);
70+
bool FindModuleEntry(const std::wstring& wModuleName, BYTE** ppBaseAddr, ULONG_PTR& baseSize);
7071
bool IsModuleCalled(const std::wstring& wModuleName, void* pReturnAddress);
7172
bool ExtractSectionList(const std::wstring& wModuleName, std::vector<MEMORY_BASIC_INFORMATION>& vTextSection, std::vector<MEMORY_BASIC_INFORMATION>& vDataSection);
7273
#pragma endregion
@@ -105,6 +106,6 @@ class Rosemary {
105106

106107
#pragma region StringHelper
107108
std::wstring BYTE2String(BYTE b);
108-
std::wstring DWORD2String(DWORD dw);
109+
std::wstring Int2String(ULONG_PTR addr);
109110
std::wstring Str2WStr(const std::string& str);
110111
#pragma endregion

Hook/pch.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
// add headers that you want to pre-compile here
1111
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
12-
#define DIRECTINPUT_VERSION 0x0800
12+
#define DIRECTINPUT_VERSION 0x0800 // dinput.h IDirectInputDevice8A
1313
#include <windows.h>
1414
#include <winsock2.h>
1515
#include <dinput.h>
@@ -25,8 +25,8 @@
2525
#define IS_DEBUG_MODE true
2626
#endif
2727

28-
#include "MapleLib.h"
29-
#pragma comment(lib, "MapleLib.lib")
28+
#include "MemorySDK.h"
29+
#pragma comment(lib, "MemorySDK.lib")
3030

3131
#pragma endregion
3232

Launcher/Launcher.vcxproj

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,9 @@
7777
<SDLCheck>true</SDLCheck>
7878
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7979
<ConformanceMode>true</ConformanceMode>
80-
<DebugInformationFormat>None</DebugInformationFormat>
8180
</ClCompile>
8281
<Link>
8382
<SubSystem>Console</SubSystem>
84-
<GenerateDebugInformation>false</GenerateDebugInformation>
8583
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
8684
</Link>
8785
</ItemDefinitionGroup>

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Please tell me if you find any errors during login to these versions
3333
2. Set `REMOTE_DIR` to MapleStory directory
3434
3. Set options in `Config.h`
3535
4. Set `IS_DEBUG_MODE` true in `pch.h`
36-
5. Build solution with `Release x86` mode
36+
5. Build solution with `Debug x86` mode
3737
6. Run it in Visual Studio will inject hook by remote
3838
7. Recommend using [DebugView](https://learn.microsoft.com/en-us/sysinternals/downloads/debugview) to see debug log
3939

0 commit comments

Comments
 (0)