tweak hook swift 崩溃问题以及参数对应问题

Hook的目标APP是swift写的,通过frida是可以正常hook的,但是通过tweak 写插件就不行,经过查阅资料,有两种Hook方式,第一种:直接通过MSFindSymbol 查找目标函数,目标函数我是从IDA中按N然后拷贝下来的,效果就是死活找不到
第二种:通过dlopen 去加载目标库,然后再用dlsym 获取对应函数地址。出现的问题就是能给找到函数地址。但是也能Hook上,但是就是打印出来的地址和frida中打印出来的不一样,并且会崩溃,不知道如何解决。console 也没提示什么错误信息就很迷。

还有一个问题,比如 swift 中函数是public init(uint32 arg1,uint32 userid,int64 usernum,…);共有15个参数,如果想打印usernum的话在frida中不应该就是 args[2]么? 可是就是对不上,经过把所有参数打印出来,发现是arg[8],这个好奇怪,初学ios逆向,很多东西不懂,不知道是不是有什么地方缺失,还请论坛大佬指点一下

或者有没有办法像frida那样获取任意模块的基地址,然后自己再根据Ida中的偏移加上去,得到目标地址hook呢?