diff --git a/Sources/WeChatTweak/Command.swift b/Sources/WeChatTweak/Command.swift index f0642b3..c07d960 100644 --- a/Sources/WeChatTweak/Command.swift +++ b/Sources/WeChatTweak/Command.swift @@ -24,7 +24,13 @@ struct Command { } static func patch(app: URL, config: Config) async throws { - try Patcher.patch(binary: app.appendingPathComponent("Contents/MacOS/WeChat"), config: config) + let dylibURL = app.appendingPathComponent("Contents/Frameworks/wechat.dylib") + let mainURL = app.appendingPathComponent("Contents/MacOS/WeChat") + + // Check for the newer directory structure first: if wechat.dylib exists, patch it only. + // Otherwise, fall back to the main WeChat binary. + let targetURL = FileManager.default.fileExists(atPath: dylibURL.path) ? dylibURL : mainURL + try Patcher.patch(binary: targetURL, config: config) } static func resign(app: URL) async throws { diff --git a/config.json b/config.json index e818069..40d9fcf 100644 --- a/config.json +++ b/config.json @@ -303,5 +303,600 @@ ] } ] + }, + { + "version": "34888", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "103fc3ea8", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1001c3610", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1001c59fc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1001c5738", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1001c5ddc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1001cc640", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1001cc650", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1001bb334", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "36559", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "40e5a08", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1bea50", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c0f3c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c0c6c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c135c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c7f78", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c7f88", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1b6dac", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "36571", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "40e67d0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1bfa50", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c1f3c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c1c6c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c235c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c8f78", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c8f88", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1b7dac", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "36603", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "40eb2b0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1c0a50", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c2f3c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c2c6c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c335c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c9f78", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c9f88", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1b8dac", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "36677", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "4117b8c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1c0a50", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c2f3c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c2c6c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c335c", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c9f78", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c9f88", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1b8dac", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "37261", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "41a85cc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1c1294", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c3780", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c34b0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c3ba0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1ca7bc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1ca7cc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "1b95a8", + "asm": "20008052C0035FD6" + } + ] + } + ] + }, + { + "version": "37342", + "targets": [ + { + "identifier": "revoke", + "entries": [ + { + "arch": "arm64", + "addr": "41b4808", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startUpdater", + "entries": [ + { + "arch": "arm64", + "addr": "1c1294", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "startBackgroundUpdatesCheck", + "entries": [ + { + "arch": "arm64", + "addr": "1c3780", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "checkForUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1c34b0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "enableAutoUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1c3ba0", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "automaticallyDownloadsUpdates", + "entries": [ + { + "arch": "arm64", + "addr": "1ca7bc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "canCheckForUpdate", + "entries": [ + { + "arch": "arm64", + "addr": "1ca7cc", + "asm": "00008052C0035FD6" + } + ] + }, + { + "identifier": "multiInstance", + "entries": [ + { + "arch": "arm64", + "addr": "26ef0", + "asm": "20008052C0035FD6" + } + ] + } + ] } ]