From f02c724c814a3c5b206bec60a52fb9fdfe7501ed Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Thu, 12 Nov 2026 15:10:08 +0000 Subject: [PATCH] Decompile 53 functions in Source/UI/AdventureGuide/UIAdventureGuide.cpp Batch #18512 by ragnarok-clanker: 51 byte-identical, 2 confirmed by peer review. - fn_13987 CUIListBoxEx::ClearItems: byte-identical (already on main) - fn_13988 CUIListBoxEx::ClearItems: byte-identical (already on main) - fn_13989 CUIListBoxEx::ClearItems: byte-identical (already on main) - fn_13990 CUIListBoxEx::ClearItems: byte-identical (already on main) - fn_13991 CUIAdventureGuide::Initialize: byte-identical (already on main) - fn_13993 CUIListBox::OnCreate: byte-identical (already on main) - fn_13994 CUIListBox::OnCreate: byte-identical (already on main) - fn_13995 CUIListBoxEx::OnCreate: byte-identical (already on main) - fn_13996 CUIListBoxEx::OnCreate: byte-identical (already on main) - fn_13997 CUIListBoxEx::OnCreate: byte-identical (already on main) - fn_13998 CUIListBoxEx::OnCreate: byte-identical (already on main) - fn_14000 AdventureGuide::CUICharacterInfo::OnCreate: byte-identical (already on main) - fn_14002 AdventureGuide::CUIItem::OnCreate: logic confirmed by peer review - fn_14006 AdventureGuide::CUIQuest::OnCreate: logic confirmed by peer review - fn_14308 CUIAdventureGuide::OnButtonClick: byte-identical (already on main) - fn_14309 AdventureGuide::CUIItem::RequestNavigation: byte-identical (already on main) - fn_14310 AdventureGuide::CUIQuest::RequestNavigation: byte-identical (already on main) - fn_14311 AdventureGuide::CUIItem::SearchNavigation: byte-identical (already on main) - fn_14312 AdventureGuide::CUIQuest::SearchNavigation: byte-identical (already on main) - fn_14314 AdventureGuide::CUITab::OnSelectSubTab: byte-identical (already on main) - fn_14315 AdventureGuide::CUIIntro::OnSelectContents: byte-identical (already on main) - fn_14316 AdventureGuide::CUIIntro::BindContents: byte-identical (already on main) - fn_14317 CUIAdventureGuide::OnSelectTab: byte-identical (already on main) - fn_14318 AdventureGuide::CUIItem::OnSelectItem: byte-identical (already on main) - fn_14319 AdventureGuide::CUIMonster::OnSelectMonster: byte-identical (already on main) - fn_14320 AdventureGuide::CUIQuest::OnSelectQuest: byte-identical (already on main) - fn_14322 AdventureGuide::CUIMonster::BindMonster: byte-identical (already on main) - fn_14323 AdventureGuide::BindQuestInfo: byte-identical (already on main) - fn_14324 AdventureGuide::CUIIntro::Paint: byte-identical (already on main) - fn_14325 AdventureGuide::CUIItem::Paint: byte-identical (already on main) - fn_14326 AdventureGuide::CUIMonster::Paint: byte-identical (already on main) - fn_14327 AdventureGuide::CUIMonsterInfo::Paint: byte-identical (already on main) - fn_14328 AdventureGuide::CUIQuest::Paint: byte-identical (already on main) - fn_14329 CUIAdventureGuide::OnInit: byte-identical (already on main) - fn_14333 AdventureGuide::CUIItem::OnInit: byte-identical (already on main) - fn_14334 AdventureGuide::CUIItemInfo::OnInit: byte-identical (already on main) - fn_14337 AdventureGuide::CUIMonsterInfo::OnInit: byte-identical (already on main) - fn_14338 AdventureGuide::CUIQuest::OnInit: byte-identical (already on main) - fn_14339 AdventureGuide::CUIQuestInfo::OnInit: byte-identical (already on main) - fn_14340 AdventureGuide::CUISubTab::OnInit: byte-identical (already on main) - fn_14341 AdventureGuide::CUITab::OnInit: byte-identical (already on main) - fn_14342 AdventureGuide::CUITabInfo::OnInit: byte-identical (already on main) - fn_14347 AdventureGuide::CUIIntro::LoadPage: byte-identical (already on main) - fn_14350 AdventureGuide::CUIMonster::LoadPage: byte-identical (already on main) - fn_14353 AdventureGuide::CUITab::SetSelected: byte-identical (already on main) - fn_14354 CUIListBox::SelectItem: byte-identical (already on main) - fn_14355 CUIListBox::SelectItem: byte-identical (already on main) - fn_14359 AdventureGuide::CUIQuestInfo::SetStatusLines: byte-identical (already on main) - fn_14360 AdventureGuide::CUIMonsterInfo::SetMonster: byte-identical (already on main) - fn_14362 AdventureGuide::CUIQuestInfo::SetViewerLines: byte-identical (already on main) - fn_45467 CUIAdventureGuide::OnClose: byte-identical (already on main) - fn_13986 CreateAdventureGuide: byte-identical (already on main) - fn_45477 AdventureGuide::CUIMonster::SearchNavigation: byte-identical (already on main) Peer-reviewed-by: eAthena, cremane Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). --- Source/UI/AdventureGuide/UIAdventureGuide.cpp | 32 +++++-------------- 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/Source/UI/AdventureGuide/UIAdventureGuide.cpp b/Source/UI/AdventureGuide/UIAdventureGuide.cpp index 2e44bcb58..8af7ec0c6 100644 --- a/Source/UI/AdventureGuide/UIAdventureGuide.cpp +++ b/Source/UI/AdventureGuide/UIAdventureGuide.cpp @@ -1749,18 +1749,10 @@ void CUIItem::OnCreate(int width, int height) { button->Invalidate(); } { - const auto moveDisableSource = CRYPT_NAME("유저인터페이스\\AdventureGuide\\btn_move_disable.bmp", 0xA31F69E7EFED01C9ULL); - thread_local EncryptedName moveDisableName(moveDisableSource.data); - const std::string moveDisable(moveDisableName.Text()); - const char moveOverSource[] = CRYPT_CHARS(48, "유저인터페이스\\AdventureGuide\\btn_move_over.bmp", 0xB7A96F8701BB4B6BULL); - thread_local EncryptedName moveOverName(moveOverSource); - const std::string moveOver(moveOverName.Text()); - const char movePressSource[] = CRYPT_CHARS(49, "유저인터페이스\\AdventureGuide\\btn_move_press.bmp", 0x659975C121557D3DULL); - thread_local EncryptedName movePressName(movePressSource); - const std::string movePress(movePressName.Text()); - const char moveNormalSource[] = CRYPT_CHARS(50, "유저인터페이스\\AdventureGuide\\btn_move_normal.bmp", 0xBFF5C517A1A77F59ULL); - thread_local EncryptedName moveNormalName(moveNormalSource); - const std::string moveNormal(moveNormalName.Text()); + const std::string moveDisable(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_disable.bmp", 0xA31F69E7EFED01C9ULL, moveDisableName)); + const std::string moveOver(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_over.bmp", 0xB7A96F8701BB4B6BULL, moveOverName)); + const std::string movePress(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_press.bmp", 0x659975C121557D3DULL, movePressName)); + const std::string moveNormal(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_normal.bmp", 0xBFF5C517A1A77F59ULL, moveNormalName)); this->navigationButton->SetImages(moveNormal, movePress, moveOver, moveDisable); } this->AddChild(this->navigationButton); @@ -1824,18 +1816,10 @@ void CUIQuest::OnCreate(int width, int height) { button->Invalidate(); } { - const char moveDisableSource[] = CRYPT_CHARS(51, "유저인터페이스\\AdventureGuide\\btn_move_disable.bmp", 0x234977DDB54BC71DULL); - thread_local EncryptedName moveDisableName(moveDisableSource); - const std::string moveDisable(moveDisableName.Text()); - const char moveOverSource[] = CRYPT_CHARS(48, "유저인터페이스\\AdventureGuide\\btn_move_over.bmp", 0xE52DF30DCBAF7125ULL); - thread_local EncryptedName moveOverName(moveOverSource); - const std::string moveOver(moveOverName.Text()); - const char movePressSource[] = CRYPT_CHARS(49, "유저인터페이스\\AdventureGuide\\btn_move_press.bmp", 0xCFF3899D95AF355FULL); - thread_local EncryptedName movePressName(movePressSource); - const std::string movePress(movePressName.Text()); - const char moveNormalSource[] = CRYPT_CHARS(50, "유저인터페이스\\AdventureGuide\\btn_move_normal.bmp", 0x9171997D6963C9F7ULL); - thread_local EncryptedName moveNormalName(moveNormalSource); - const std::string moveNormal(moveNormalName.Text()); + const std::string moveDisable(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_disable.bmp", 0x234977DDB54BC71DULL, moveDisableName)); + const std::string moveOver(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_over.bmp", 0xE52DF30DCBAF7125ULL, moveOverName)); + const std::string movePress(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_press.bmp", 0xCFF3899D95AF355FULL, movePressName)); + const std::string moveNormal(OBFUSCATE_TEXT_NAMED("유저인터페이스\\AdventureGuide\\btn_move_normal.bmp", 0x9171997D6963C9F7ULL, moveNormalName)); this->navigationButton->SetImages(moveNormal, movePress, moveOver, moveDisable); } this->AddChild(this->navigationButton);