- Joined
- Nov 9, 2012
- Messages
- 608
- Reaction score
- 164
That's a bit disappointing
I am curious to know what type of program is he using.
Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!
Join Today!That's a bit disappointing
ollydbg, I use it all the timeI am curious to know what type of program is he using.
ollydbg, I use it all the time
No, no someone can't.Could someone provide a link to KMS v1029 setup?
As far as i can remember I have seen this in GMS v91 (Oldest version I have unpacked and analyzed) but i am pretty sure they have been pasting this naked asm thingy since they started using winlicense . It just washes out the stack to stop reversers from forensic debuggingYou must be registered to see links
after doing this i remembered why i hate this crappy game lol.
this Ducking stack murdering poop is littered everywhere, when the hell did they start doing this?Code:.text:006EC185 loc_6EC185: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1C2j .text:006EC185 cmp eax, ecx .text:006EC187 jbe loc_6EC197 .text:006EC18D sub eax, 4 .text:006EC190 mov [eax], ebx .text:006EC192 jmp loc_6EC185 .text:006EC197 ; --------------------------------------------------------------------------- .text:006EC197 .text:006EC197 loc_6EC197: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1B7j .text:006EC197 xor eax, eax .text:006EC199 xor ecx, ecx .text:006EC19B retn
xor ebx, ebx
xor edx, edx
xor esi, esi
xor edi, edi
xor ebp, ebp
mov eax, large fs:18h
mov ecx, [eax+8]
mov eax, [eax+4]
cmp eax, ecx
jbe label
sub eax, 4
mov [eax], ebx
jmp loc_6EC185
.
label:
xor eax, eax
xor ecx, ecx
retn // no where to retn. Its invalid address.
Could someone provide a link to KMS v1029 setup?
No someone cant, because no one has it, so stop asking. Maybe if you suck spadow's penis on tumblr. He has a thing for big bootyed latinos [OK face emoji]
You must be registered to see links
after doing this i remembered why i hate this crappy game lol.
this Ducking stack murdering poop is littered everywhere, when the hell did they start doing this?Code:.text:006EC185 loc_6EC185: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1C2j .text:006EC185 cmp eax, ecx .text:006EC187 jbe loc_6EC197 .text:006EC18D sub eax, 4 .text:006EC190 mov [eax], ebx .text:006EC192 jmp loc_6EC185 .text:006EC197 ; --------------------------------------------------------------------------- .text:006EC197 .text:006EC197 loc_6EC197: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1B7j .text:006EC197 xor eax, eax .text:006EC199 xor ecx, ecx .text:006EC19B retn
.text:006ED6A8
.text:006ED6A8 loc_6ED6A8: ; CODE XREF: CClientSocket::SendPacket(COutPacket const &)+179j
.text:006ED6A8 push eax
.text:006ED6A9 push ebx
.text:006ED6AA xor eax, eax
.text:006ED6AC xor ebx, ebx
.text:006ED6AE mov eax, [ebp+4]
.text:006ED6B1 mov [ebp+dwRetAddr], eax
.text:006ED6B4 mov ebx, 231457h
.text:006ED6B9 add ebx, 1CFBA9h
.text:006ED6BF cmp ebx, eax
.text:006ED6C1 jg short _BYE_HACKER
.text:006ED6C3 mov ebx, [ebp+dwCodeEnd]
.text:006ED6C6 cmp eax, ebx
.text:006ED6C8 jg short _BYE_HACKER
.text:006ED6CA pop ebx
.text:006ED6CB pop eax
.text:006ED6CC jmp short _BYE
.text:006ED6CE ; ---------------------------------------------------------------------------
.text:006ED6CE
.text:006ED6CE _BYE_HACKER: ; CODE XREF: CClientSocket::SendPacket(COutPacket const &)+1C1j
.text:006ED6CE ; CClientSocket::SendPacket(COutPacket const &)+1C8j
.text:006ED6CE push 0
.text:006ED6D0 retn
.text:006ED6D1 ; ---------------------------------------------------------------------------
.text:006ED6D1
.text:006ED6D1 _BYE: ; CODE XREF: CClientSocket::SendPacket(COutPacket const &)+1CCj
.text:006ED6D1 mov eax, [ebp+dwRetAddr]
.text:006ED6D4 mov ?g_dwRetAddr@@3KA, eax ; ulong g_dwRetAddr
.text:006ED6D9 mov ecx, [ebp+dwRetAddr]
.text:006ED6DC movzx edx, byte ptr [ecx]
.text:006ED6DF cmp edx, 0C3h
.text:006ED6E5 jnz short loc_6ED714
.text:006ED6E7 xor ebx, ebx
.text:006ED6E9 xor edx, edx
.text:006ED6EB xor esi, esi
.text:006ED6ED xor edi, edi
.text:006ED6EF xor ebp, ebp
.text:006ED6F1 mov eax, large fs:18h
.text:006ED6F7 mov ecx, [eax+8]
.text:006ED6FA mov eax, [eax+4]
.text:006ED6FD
.text:006ED6FD loc_6ED6FD: ; CODE XREF: CClientSocket::SendPacket(COutPacket const &)+20Aj
.text:006ED6FD cmp eax, ecx
.text:006ED6FF jbe loc_6ED70F
.text:006ED705 sub eax, 4
.text:006ED708 mov [eax], ebx
.text:006ED70A jmp loc_6ED6FD
.text:006ED70F ; ---------------------------------------------------------------------------
.text:006ED70F
.text:006ED70F loc_6ED70F: ; CODE XREF: CClientSocket::SendPacket(COutPacket const &)+1FFj
.text:006ED70F xor eax, eax
.text:006ED711 xor ecx, ecx
.text:006ED713 retn
You must be registered to see links
after doing this i remembered why i hate this crappy game lol.
this Ducking stack murdering poop is littered everywhere, when the hell did they start doing this?Code:.text:006EC185 loc_6EC185: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1C2j .text:006EC185 cmp eax, ecx .text:006EC187 jbe loc_6EC197 .text:006EC18D sub eax, 4 .text:006EC190 mov [eax], ebx .text:006EC192 jmp loc_6EC185 .text:006EC197 ; --------------------------------------------------------------------------- .text:006EC197 .text:006EC197 loc_6EC197: ; CODE XREF: CClientSocket::Connect(sockaddr_in const *)+1B7j .text:006EC197 xor eax, eax .text:006EC199 xor ecx, ecx .text:006EC19B retn
when you hackers start raping the client
Do you still have kmst 1029 full client? if you do so can you please share?
Please upload the file again The link is invalidI did it myself and woot cwvs does work
Code:void __thiscall CWvsContext::OnPacket(CWvsContext *this, int nType, CInPacket *iPacket) { if ( !*(TSingleton<CWvsApp>::ms_pInstance._m_pStr + 5) ) { switch ( nType ) { case 55: CWvsContext::OnInventoryOperation(this, iPacket); break; case 56: CWvsContext::OnInventoryGrow(this, iPacket); break; case 57: CWvsContext::OnStatChanged(this, iPacket); break; case 58: CWvsContext::OnTemporaryStatSet(this, iPacket); break; case 59: CWvsContext::OnTemporaryStatReset(this, iPacket); break; case 60: CWvsContext::OnForcedStatSet(this, iPacket); break; case 61: CWvsContext::OnForcedStatReset(this, iPacket); break; case 62: CWvsContext::OnChangeSkillRecordResult(this, iPacket); break; case 63: CWvsContext::OnChangeStealMemoryResult(this, iPacket); break; case 64: CWvsContext::OnUserDamageOnFallingCheck(this, iPacket); break; case 65: CWvsContext::OnPersonalShopBuyCheck(this, iPacket); break; case 66: CWvsContext::OnMobDropMesoPickup(this, iPacket); break; case 67: CWvsContext::OnBreakTimeFieldEnter(this, iPacket); break; case 68: CWvsContext::OnRuneActSuccess(this, iPacket); break; case 70: CWvsContext::OnSkillUseResult(this, iPacket); break; case 71: CWvsContext::OnExclRequest(this, iPacket); break; case 72: CWvsContext::OnGivePopularityResult(this, iPacket); break; case 97: CWvsContext::OnCharacterInfo(this, iPacket); break; case 98: CWvsContext::OnPartyResult(this, iPacket); break; case 99: CWvsContext::OnPartyMemberCandidateResult(this, iPacket); break; case 100: CWvsContext::OnUrusPartyMemberCandidateResult(this, iPacket); break; case 101: CWvsContext::OnPartyCandidateResult(this, iPacket); break; case 103: CWvsContext::OnIntrusionFriendCandidateResult(this, iPacket); break; case 104: CWvsContext::OnIntrusionLobbyCandidateResult(this, iPacket); break; case 106: CWvsContext::OnExpedtionResult(this, iPacket); break; case 102: CWvsContext::OnUrusPartyResult(this, iPacket); break; case 111: CWvsContext::OnGuildResult(this, iPacket); break; case 110: CWvsContext::OnGuildRequest(this, iPacket); break; case 112: CWvsContext::OnAllianceResult(this, iPacket); break; case 107: CWvsContext::OnFriendResult(this, iPacket); break; case 108: CWvsContext::OnStarFriendResult(this, iPacket); break; case 109: CWvsContext::OnLoadAccountIDOfCharacterFriendResult(this, iPacket); break; case 113: CWvsContext::OnTownPortal(this, iPacket); break; case 114: CWvsContext::OnBroadcastMsg(this, iPacket); break; case 115: if ( TSingleton<CAswanTimeTableManClient>::ms_pInstance ) CAswanTimeTableManClient::OnPacket(TSingleton<CAswanTimeTableManClient>::ms_pInstance, iPacket); break; case 73: CWvsContext::OnMessage(this, iPacket); break; case 74: CWvsContext::OnMemoResult(this, iPacket); break; case 75: CWvsContext::OnMapTransferResult(this, iPacket); break; case 76: CWvsContext::OnAntiMacroResult(this, iPacket); break; case 77: CWvsContext::OnAntiMacroBombResult(this, iPacket); break; case 84: CWvsContext::OnQuestClear(this, iPacket); break; case 79: CWvsContext::OnClaimResult(this, iPacket); break; case 80: CWvsContext::OnSetClaimSvrAvailableTime(this, iPacket); break; case 81: CWvsContext::OnClaimSvrStatusChanged(this, iPacket); break; case 82: CWvsContext::OnStarPlanetUserCount(this, iPacket); break; case 85: CWvsContext::OnEntrustedShopCheckResult(this, iPacket); break; case 116: CWvsContext::OnIncubatorResult(this, iPacket); break; case 117: CWvsContext::OnIncubatorHotItemResult(this, iPacket); break; case 118: CWvsContext::OnShopScannerResult(this, iPacket); break; case 119: CWvsContext::OnShopLinkResult(this, iPacket); break; case 120: CWvsContext::OnAuctionResult(this, iPacket); break; case 121: CWvsContext::OnAuctionMessage(this, iPacket); break; case 126: CWvsContext::OnCashPetFoodResult(this, iPacket); break; case 127: CWvsContext::OnCashPetPickUpOnOffResult(this, iPacket); break; case 128: CWvsContext::OnCashPetSkillSettingResult(this, iPacket); break; case 129: CWvsContext::OnCashLookChangeResult(this, iPacket); break; case 130: CWvsContext::OnCashPetDyeingResult(this, iPacket); break; case 83: CWvsContext::OnSetTamingMobInfo(this, iPacket); break; case 86: CWvsContext::OnSkillLearnItemResult(this, iPacket); break; case 87: CWvsContext::OnSkillResetItemResult(this, iPacket); break; case 88: CWvsContext::OnAbilityResetItemResult(this, iPacket); break; case 89: CWvsContext::OnExpConsumeItemResult(this, iPacket); break; case 90: CWvsContext::OnExpItemGetResult(this, iPacket); break; case 91: CWvsContext::OnCharSlotIncResult(this, iPacket); break; case 287: CWvsContext::OnPendantSlotIncResult(this, iPacket); break; case 92: CWvsContext::OnCharRenameResult(this, iPacket); break; case 93: CWvsContext::OnGatherItemResult(this, iPacket); break; case 94: CWvsContext::OnSortItemResult(this, iPacket); break; case 131: CWvsContext::OnSetWeekEventMessage(this, iPacket); break; case 132: CWvsContext::OnSetPotionDiscountRate(this, iPacket); break; case 134: CInPacket::Decode1(iPacket); break; case 135: CWvsContext::OnImitatedNPCData(this, iPacket); break; case 137: CWvsContext::OnLimitedNPCDisableInfo(this, iPacket); break; case 122: CWvsContext::OnMarriageRequest(this, iPacket); break; case 123: CWvsContext::OnMarriageResult(this, iPacket); break; case 124: CWvsContext::OnWeddingGiftResult(this, iPacket); break; case 125: CWvsContext::OnNotifyMarriedPartnerMapTransfer(this, iPacket); break; case 358: CWvsContext::OnMacroSysDataInit(this, iPacket); break; case 133: CWvsContext::OnBridleMobCatchFail(this, iPacket); break; case 138: CWvsContext::OnMonsterBookSetCard(this, iPacket); break; case 139: CWvsContext::OnMonsterBookSetCover(this, iPacket); break; case 140: CWvsContext::OnHourChanged(this, iPacket); break; case 141: CWvsContext::OnMiniMapOnOff(this, iPacket); break; case 142: CWvsContext::OnConsultAuthkeyUpdate(this, iPacket); break; case 143: CWvsContext::OnClassCompetitionAuthkeyUpdate(this, iPacket); break; case 144: CWvsContext::OnWebBoardAuthkeyUpdate(this, iPacket); break; case 145: CWvsContext::OnSessionValue(this, iPacket); break; case 148: CWvsContext::OnFieldValue(this, iPacket); break; case 146: CWvsContext::OnPartyValue(this, iPacket); break; case 147: CWvsContext::OnFieldSetVariable(this, iPacket); break; case 149: CWvsContext::OnBonusExpRateChanged(this, iPacket); break; case 150: CWvsContext::OnFamilyChartResult(this, iPacket); break; case 151: CWvsContext::OnFamilyInfoResult(this, iPacket); break; case 152: CWvsContext::OnFamilyResult(this, iPacket); break; case 153: CWvsContext::OnFamilyJoinRequest(this, iPacket); break; case 154: CWvsContext::OnFamilyJoinRequestResult(this, iPacket); break; case 155: CWvsContext::OnFamilyJoinAccepted(this, iPacket); break; case 156: CWvsContext::OnFamilyPrivilegeList(this, iPacket); break; case 157: CWvsContext::OnFamilyFamousPointIncResult(this, iPacket); break; case 158: CWvsContext::OnFamilyNotifyLoginOrLogout(this, iPacket); break; case 159: CWvsContext::OnFamilySetPrivilege(this, iPacket); break; case 160: CWvsContext::OnFamilySummonRequest(this, iPacket); break; case 161: CWvsContext::OnNotifyLevelUp(this, iPacket); break; case 162: CWvsContext::OnNotifyWedding(this, iPacket); break; case 163: CWvsContext::OnNotifyJobChange(this, iPacket); break; case 164: CWvsContext::OnSetBuyEquipExt(this, iPacket); break; case 166: CWvsContext::OnScriptProgressMessageBySoul(this, iPacket); break; case 167: CWvsContext::OnScriptProgressMessage(this, iPacket); break; case 168: CWvsContext::OnScriptProgressItemMessage(this, iPacket); break; case 169: CWvsContext::OnStaticScreenMessage(this, iPacket); break; case 170: CNoticeQuestProgress::OffStaticScreenMessage(this->m_pNoticeQuestProgress.p); break; case 171: CWvsContext::OnWeatherEffectNotice(this, iPacket); break; case 172: CWvsContext::OnWeatherEffectNoticeY(this, iPacket); break; case 173: CWvsContext::OnProgressMessageFont(this, iPacket); break; case 174: CWvsContext::OnDataCRCCheckFailed(this, iPacket); break; case 175: CWvsContext::OnShowSlotMessage(this, iPacket); break; case 165: CWvsContext::OnSetPassenserRequest(this, iPacket); break; case 176: CWvsContext::OnWildHunterInfo(this, iPacket); break; case 177: CWvsContext::OnZeroInfo(this, iPacket); break; case 178: CWvsContext::OnZeroWP(this, iPacket); break; case 179: CWvsContext::OnZeroInfoSubHP(this, iPacket); break; case 180: CWvsContext::UI_Open(this, 39, -1, 0, 0); break; case 181: CWvsContext::ClearAnnouncedQuest(this); break; case 182: CWvsContext::OnResultInstanceTable(this, iPacket); break; case 183: CWvsContext::OnCoolTimeSet(this, iPacket); break; case 184: CWvsContext::OnItemPotChange(this, iPacket); break; case 185: CWvsContext::OnSetItemCoolTime(this, iPacket); break; case 186: CWvsContext::OnSetAdDisplayInfo(this, iPacket); break; case 189: CWvsContext::OnSetMapleStyleInfo(this, iPacket); break; case 295: CWvsContext::OnSetCoordinationContestInfo(this, iPacket); break; case 187: CWvsContext::OnSetAdDisplayStatus(this, iPacket); break; case 188: CWvsContext::OnSetSonOfLinkedSkillResult(this, iPacket); break; case 190: CWvsContext::OnSetBuyLimitCount(this, iPacket); break; case 191: CWvsContext::OnResetBuyLimitCount(this, iPacket); break; case 192: CWvsContext::OnUpdateUIEventListInfo(this, iPacket); break; case 193: CWvsContext::OnDojangRankingResult(this, iPacket); break; case 248: CWvsContext::OnHalloweenCandyRankingResult(this, iPacket); break; case 194: if ( TSingleton<CUIFieldItem>::ms_pInstance ) CUIFieldItem::OnPacket(iPacket); break; case 195: if ( TSingleton<CUIFieldItemInventory>::ms_pInstance ) CUIFieldItemInventory::OnPacket(iPacket); break; case 197: CWvsContext::OnResultSetStealSkill(this, iPacket); break; case 69: CWvsContext::OnResultStealSkillList(this, iPacket); break; case 196: CWvsContext::OnShutdownMessage(this, iPacket); break; case 198: CWvsContext::OnSlashCommand(this, iPacket); break; case 199: CWvsContext::OnStartNavigation(this, iPacket); break; case 200: CWvsContext::OnFunckeySetByScript(this, iPacket); break; case 201: CWvsContext::OnCharacterPotentialSet(this, iPacket); break; case 202: CWvsContext::OnCharacterPotentialReset(this, iPacket); break; case 203: CWvsContext::OnCharacterHonorExp(this, iPacket); break; case 209: CWvsContext::OnCharacterHonorGift(this, iPacket); break; case 204: if ( TSingleton<CUIAswanState>::ms_pInstance ) CUIAswanState::OnPacket(iPacket); break; case 205: CWvsContext::OnAswanResult(this, iPacket); break; case 206: CWvsContext::OnReadyForRespawn(this, iPacket); break; case 207: CWvsContext::OnReadyForRespawnByPoint(this, iPacket); break; case 208: CWvsContext::OpenReadyForRespawnUI(this, iPacket); break; case 210: CWvsContext::OnCrossHunterCompleteResult(this, iPacket); break; case 211: CWvsContext::OnCrossHunterShopResult(this, iPacket); break; case 212: CWvsContext::OnSetCashItemNotice(this, iPacket); break; case 213: CWvsContext::OnSetSpecialCashItem(this, iPacket); break; case 214: CWvsContext::OnShowEventNotice(this, iPacket); break; case 227: CWvsContext::OnSetMiracleTimeInfo(this, iPacket); break; case 256: CWvsContext::OnSetGachaponFeverTimeInfo(this, iPacket); break; case 215: CWvsContext::OnBoardGameResult(this, iPacket); break; case 216: CWvsContext::OnYutGameResult(this, iPacket); break; case 217: CWvsContext::OnValuePackResult(this, iPacket); break; case 219: CWvsContext::OnMapleStyleResult(this, iPacket); break; case 218: CWvsContext::OnNaviFlyingResult(this, iPacket); break; case 220: CWvsContext::OnCheckWeddingExResult(this, iPacket); break; case 221: CWvsContext::OnBingoResult(this, iPacket); break; case 222: CWvsContext::OnBingoCassandraResult(this, iPacket); break; case 223: CWvsContext::OnUpdateVIPGrade(this, iPacket); break; case 224: CWvsContext::OnMesoRangerResult(this, iPacket); break; case 225: CWvsContext::OnSetMaplePoint(this, iPacket); break; case 226: ADDITIONALCASHINFO::Decode(&this->m_AdditionalCashInfo, iPacket); break; case 228: CWvsContext::OnHyperSkillResetResult(this, iPacket); break; case 345: CWvsContext::OnReceiveHyperStatSkillResetResult(this, iPacket); break; case 232: CWvsContext::OnReturnEffectConfirm(this, iPacket); break; case 233: CWvsContext::OnReturnEffectModified(this, iPacket); break; case 237: CWvsContext::OnMemorialCubeModified(this, iPacket); break; case 238: CWvsContext::OnDressUpInfoModified(this, iPacket); break; case 229: CWvsContext::OnGetServerTime(this, iPacket); break; case 230: CWvsContext::OnGetCharacterPosition(this, iPacket); break; case 236: CWvsContext::OnMemorialCubeResult(this, iPacket); break; case 284: CWvsContext::OnChangeSoulCollectionResult(this, iPacket); break; case 285: CWvsContext::OnSelectSoulCollectionResult(this, iPacket); break; case 235: CWvsContext::OnBlackCubeResult(this, iPacket); break; case 234: CWvsContext::OnWhiteAddtionalCubeResult(this, iPacket); break; case 244: CWvsContext::OnActionBarResult(this, iPacket); break; case 245: if ( TSingleton<CUIGuildContentRank>::ms_pInstance ) CUIGuildContentRank::OnPacket(TSingleton<CUIGuildContentRank>::ms_pInstance, iPacket); break; case 246: CWvsContext::OnGuildSearchResult(this, iPacket); break; case 247: if ( TSingleton<CUIButterFlyCustomize>::ms_pInstance ) CUIButterFlyCustomize::OnPacket(TSingleton<CUIButterFlyCustomize>::ms_pInstance, iPacket); break; case 231: CWvsContext::OnSetFixDamage(this, iPacket); break; case 239: CWvsContext::OnResetOnStateForOnOffSkill(this, iPacket); break; case 240: CWvsContext::OnSetOffStateForOnOffSkill(this, iPacket); break; case 242: CWvsContext::OnAvatarPackTest(this, iPacket); break; case 243: CWvsContext::OnEvolvingResult(this, iPacket); break; case 241: CWvsContext::OnIssueReloginCookie(this, iPacket); break; case 249: CWvsContext::OnGetRewardResult(this, iPacket); break; case 250: CWvsContext::OnMentoring(this, iPacket); break; case 251: CWvsContext::OnGetLotteryResult(this, iPacket); break; case 252: CWvsContext::OnCheckProcessResult(this, iPacket); break; case 253: CWvsContext::OnCompleteNpcSpeechSuccess(this, iPacket); break; case 254: CWvsContext::OnCompleteSpecialCheckSuccess(this, iPacket); break; case 257: CWvsContext::OnAvatarMegaphoneRes(this, iPacket); break; case 258: CWvsContext::OnSetAvatarMegaphone(this, iPacket); break; case 259: CWvsContext::OnClearAvatarMegaphone(this, iPacket); break; case 260: CWvsContext::OnRequestEventList(this, iPacket); break; case 261: CWvsContext::OnLikePoint(this, iPacket); break; case 262: CWvsContext::OnSignErrorAck(this, iPacket); break; case 263: CWvsContext::OnAskAfterErrorAck(this, iPacket); break; case 264: CWvsContext::OnEventNameTag(this, iPacket); break; case 265: CWvsContext::OnAcquireEventNameTag(this, iPacket); break; case 266: CWvsContext::OnJobFreeChangeResult(this, iPacket); break; case 267: CWvsContext::OnEventLotteryOpen(this, iPacket); break; case 268: CWvsContext::OnEventLotteryResult(this, iPacket); break; case 276: CWvsContext::OnScreenMsg(this, iPacket); break; case 277: CWvsContext::OnTradeBlockForSnapShot(this, iPacket); break; case 278: CWvsContext::OnLimitGoodsNoticeResult(this, iPacket); break; case 279: CWvsContext::OnMonsterBattleSystemResult(this, iPacket); break; case 280: CWvsContext::OnMonsterBattleCombatResult(this, iPacket); break; case 281: CWvsContext::OnUniverseBossPossible(this, iPacket); break; case 282: CWvsContext::OnUniverseBossImpossible(this, iPacket); break; case 283: CWvsContext::OnCashShopPreviewInfo(this, iPacket); break; case 286: CWvsContext::OnMasterPieceReward(this, iPacket); break; case 288: CWvsContext::OnBossArenaMatchSuccess(this, iPacket); break; case 289: CWvsContext::OnBossArenaMatchFail(this, iPacket); break; case 290: CWvsContext::OnBossArenaMatchRequestDone(this, iPacket); break; case 291: CWvsContext::OnUserSoulMatching(this, iPacket); break; case 292: CWvsContext::OnCatapultUpgradeSkill(this, iPacket); break; case 293: CWvsContext::OnCatapultResetSkill(this, iPacket); break; case 294: CWvsContext::OnPartyQuestRankingResult(this, iPacket); break; case 296: CWvsContext::OnWorldTransferResult(this, iPacket); break; case 297: CWvsContext::OnTrunkSlotIncResult(this, iPacket); break; case 300: CWvsContext::OnNotifyWorldTransferHelper(this, iPacket); break; case 298: CWvsContext::OnEliteMobWMI(this, iPacket); break; case 299: CWvsContext::OnRandomPortalNotice(this, iPacket); break; case 301: if ( TSingleton<CUIEquipmentEnchant>::ms_pInstance ) CUIEquipmentEnchant::OnPacket(TSingleton<CUIEquipmentEnchant>::ms_pInstance, iPacket); break; case 303: CWvsContext::OnFriendTowerRankResult(this, iPacket); break; case 302: CWvsContext::OnTopTowerRankResult(this, iPacket); break; case 304: CWvsContext::OnTowerResultUIOpen(this, iPacket); break; case 305: CWvsContext::OnMannequinResult(this, iPacket); break; case 306: CWvsContext::OnIronBoxPacket(this, iPacket); break; case 307: CWvsContext::OnCreateKoreanJumpingGame(this, iPacket); break; case 308: CWvsContext::OnCreateSwingGame(this, iPacket); break; case 309: CWvsContext::OnUpdateMapleTVShowTime(this, iPacket); break; case 310: CWvsContext::OnReturnToTitle(this, iPacket); break; case 311: CWvsContext::OnReturnToCharacterSelect(this, iPacket); break; case 312: CWvsContext::OnFlameWizardFlameWalkEffect(this, iPacket); break; case 313: CWvsContext::OnFlameWizardFlareBlink(this, iPacket); break; case 314: CWvsContext::OnSummonedAvatarSync(this, iPacket); break; case 315: CWvsContext::OnCashShopEventInfo(this, iPacket); break; case 316: CWvsContext::OnBlackList(this, iPacket); break; case 322: CWvsContext::OnUIStarPlanetMiniGameResult(this, iPacket); break; case 323: CWvsContext::OnUIStarPlanetTrendShop(this, iPacket); break; case 324: CWvsContext::OnUIStarPlanetMiniGameQueue(this, iPacket); break; case 317: CWvsContext::OnOpenUITest(this, iPacket); break; case 318: this->m_bBlackListView = this->m_bBlackListView == 0; break; case 319: CWvsContext::OnScrollUpgradeFeverTime(this, iPacket); break; case 320: CWvsContext::OnTextEquipInfo(this, iPacket); break; case 321: CWvsContext::OnTextEquipUIOpen(this, iPacket); break; case 326: CWvsContext::OnStarPlanetRoundInfo(this, iPacket); break; case 327: CWvsContext::OnStarPlanetResult(this, iPacket); break; case 328: CWvsContext::OnBackSpeedCtrl(this, iPacket); break; case 329: CWvsContext::OnSetMazeArea(this, iPacket); break; case 330: CWvsContext::OnCharacterBurning(this, iPacket); break; case 331: CWvsContext::OnBattleStatCoreInfo(this, iPacket); break; case 332: CWvsContext::OnBattleStatCoreAck(this, iPacket); break; case 333: CWvsContext::OnGachaponTestResult(this, iPacket); break; case 334: CWvsContext::OnMasterPieceTestResult(this, iPacket); break; case 335: CWvsContext::OnRoyalStyleTestResult(this, iPacket); break; case 336: CWvsContext::OnBeautyCouponTestResult(this, iPacket); break; case 337: CWvsContext::OnNickSkillExpired(this, iPacket); break; case 338: CWvsContext::OnRandomMissionResult(this, iPacket); break; case 341: CWvsContext::OnItemCollectionResult(this, iPacket); break; case 342: CWvsContext::OnCheckCollectionCompleteResult(this, iPacket); break; case 343: CWvsContext::OnItemCollectionList(this, iPacket); break; case 339: CWvsContext::On12thTresureResult(this, iPacket); break; case 340: CWvsContext::On12thTresureBuff(this, iPacket); break; case 344: CWvsContext::OnReceiveToadsHammerRequestResult(this, iPacket); break; case 255: CWvsContext::OnSetAccountInfo(this, iPacket); break; case 346: CWvsContext::OnInventoryOperationResult(this, iPacket); break; case 347: CWvsContext::OnGetSavedUrusSkill(this, iPacket); break; case 353: CWvsContext::OnCharacterModified(this, iPacket); break; case 348: CWvsContext::OnSetRolePlayingCharacterInfo(this, iPacket); break; case 349: CWvsContext::OnMVPAlarm(this, iPacket); break; case 351: CWvsContext::OnTowerChairSettingResult(this, iPacket); break; case 350: CWvsContext::OnMonsterCollectionResult(this, iPacket); break; case 352: CWvsContext::OnNeedClientResponse(this, iPacket); break; case 354: CWvsContext::OnTradeKingShopItem(this, iPacket); break; case 355: CWvsContext::OnTradeKingShopRes(this, iPacket); break; case 356: CWvsContext::OnPlatFormarEnterResult(this, iPacket); break; case 357: CWvsContext::OnPlatFormarOxyzen(this, iPacket); break; default: break; } if ( nType == 98 && TSingleton<CUIMiniMap>::ms_pInstance.m_pInterface ) CUIMiniMap::ResetIntrusionOpen(TSingleton<CUIMiniMap>::ms_pInstance.m_pInterface); if ( TSingleton<CInvasionSupportMan>::ms_pInstance ) { switch ( nType ) { case 269: CInvasionSupportMan::OnInvasionSupportStateChange(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; case 270: CInvasionSupportMan::OnInvasionSupportAttackResult(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; case 271: CInvasionSupportMan::OnBossKillResult(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; case 272: CInvasionSupportMan::OnInvasionSupportSettingResult(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; case 273: CInvasionSupportMan::OnInvasionElapsedTime(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; case 274: CInvasionSupportMan::OnInvasionSystemMsg(TSingleton<CInvasionSupportMan>::ms_pInstance, iPacket); break; default: return; } } } }
This uses IDA 6.8 which is available Here!!
Download :You must be registered to see links
As far as i can remember I have seen this in GMS v91 (Oldest version I have unpacked and analyzed) but i am pretty sure they have been pasting this naked asm thingy since they started using winlicense . It just washes out the stack to stop reversers from forensic debugging
In details :
Code:xor ebx, ebx xor edx, edx xor esi, esi xor edi, edi xor ebp, ebp
Makes all the registers 0, ebp being base register one cannot even trace back to the last known working function.
1st gets linear address of the TIB, then gets lower ceiling and next the upper ceilingCode:mov eax, large fs:18h mov ecx, [eax+8] mov eax, [eax+4]
Loop to zero out whole stackCode:cmp eax, ecx jbe label sub eax, 4 mov [eax], ebx jmp loc_6EC185 . label: xor eax, eax xor ecx, ecx retn // no where to retn. Its invalid address.
#include <Windows.h>
int main()
{
// Get a pointer to the TEB for the current thread
PTEB pTeb = NtCurrentTeb();
// Get a pointer to the context structure within the TEB
PCONTEXT pContext = reinterpret_cast<PCONTEXT>(pTeb->TlsSlots[0]);
// Set the values of the register members in the context structure to 0
ZeroMemory(&pContext->Eax, sizeof(pContext->Eax));
ZeroMemory(&pContext->Ebx, sizeof(pContext->Ebx));
ZeroMemory(&pContext->Ecx, sizeof(pContext->Ecx));
ZeroMemory(&pContext->Edx, sizeof(pContext->Edx));
ZeroMemory(&pContext->Esi, sizeof(pContext->Esi));
ZeroMemory(&pContext->Edi, sizeof(pContext->Edi));
ZeroMemory(&pContext->Ebp, sizeof(pContext->Ebp));
ZeroMemory(&pContext->Esp, sizeof(pContext->Esp));
return 0;
}