From f6de4aceb0f3ff67cd3db0f371516f4751335a72 Mon Sep 17 00:00:00 2001 From: momo5502 Date: Wed, 21 Sep 2022 16:34:59 +0200 Subject: [PATCH] Some fixes --- deps/premake/rapidjson.lua | 1 + src/client/component/demonware.cpp | 13 ++++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/deps/premake/rapidjson.lua b/deps/premake/rapidjson.lua index d1085120..ee4929d1 100644 --- a/deps/premake/rapidjson.lua +++ b/deps/premake/rapidjson.lua @@ -3,6 +3,7 @@ rapidjson = { } function rapidjson.import() + defines{"RAPIDJSON_HAS_STDSTRING"} rapidjson.includes() end diff --git a/src/client/component/demonware.cpp b/src/client/component/demonware.cpp index 745fa713..998ce528 100644 --- a/src/client/component/demonware.cpp +++ b/src/client/component/demonware.cpp @@ -442,8 +442,8 @@ namespace demonware const utils::nt::library game_module{}; std::optional> result{}; - if(!result) result = utils::hook::iat(game_module, "wsock32.dll", process, stub); - if(!result) result = utils::hook::iat(game_module, "WS2_32.dll", process, stub); + if (!result) result = utils::hook::iat(game_module, "wsock32.dll", process, stub); + if (!result) result = utils::hook::iat(game_module, "WS2_32.dll", process, stub); if (!result) { @@ -469,10 +469,8 @@ namespace demonware tcp_servers.create("prod.umbrella.demonware.net"); } - void post_unpack() override + void pre_start() override { - server_thread = utils::thread::create_named_thread("Demonware", server_main); - register_hook("send", io::send_stub); register_hook("recv", io::recv_stub); register_hook("sendto", io::sendto_stub); @@ -486,6 +484,11 @@ namespace demonware register_hook("freeaddrinfo", io::freeaddrinfo_stub); register_hook("getpeername", io::getpeername_stub); register_hook("getsockname", io::getsockname_stub); + } + + void post_unpack() override + { + server_thread = utils::thread::create_named_thread("Demonware", server_main); utils::hook::set(0x14293E829_g, 0x0); // CURLOPT_SSL_VERIFYPEER utils::hook::set(0x15F3CCFED_g, 0xAF); // CURLOPT_SSL_VERIFYHOST