首页 > 代码库 > unity3d 4.6.1 macosx 破解

unity3d 4.6.1 macosx 破解

unity3d 4.6.1 macos 破解流程:
1.网上下载的4.6.0的license文件 Unity_v4.x.ulf
2. cp Unity_v4.x.ulf "/Library/Application Support/Unity/Unity_v4.x.ulf" 


A.使用lldb破解命令行


1. cd /Applications/Unity/Unity.app/Contents/MacOS/
2. lldb  Unity 
3. b main
4. r
5. b DSIGSignature::verify
6. finish
7. register write eax 1




B.修改libxml-security-c.dylib,永久补丁


1.原位置asm代码:
__text:000143E0 55                                      push    ebp
__text:000143E1 89 E5                                   mov     ebp, esp
__text:000143E3 83 EC 28                                sub     esp, 28h
__text:000143E6 89 5D F4                                mov     [ebp+var_C], ebx
__text:000143E9 89 75 F8                                mov     [ebp+var_8], esi
__text:000143EC 89 7D FC                                mov     [ebp+var_4], edi
__text:000143EF E8 00 00 00 00                          call    $+5
__text:000143F4 5B                                      pop     ebx
__text:000143F5 8B 7D 08                                mov     edi, [ebp+arg_0]
__text:000143F8 80 7F 04 00                             cmp     byte ptr [edi+4], 0
__text:000143FC 75 52                                   jnz     short loc_14450
__text:000143FE C7 04 24 08 00 00 00                    mov     dword ptr [esp], 8
__text:00014405 E8 B2 24 07 00                          call    ___cxa_allocate_exception
__text:0001440A 89 C7                                   mov     edi, eax
__text:0001440C 8D 83 D4 79 06 00                       lea     eax, (aDsigsignatureV - 143F4h)[ebx] ; "DSIGSignature::verify() called prior to"...
__text:00014412 89 44 24 08                             mov     [esp+8], eax


改为:
.text:000143E0 B0 01                                   mov     al, 1
.text:000143E2 C3                                      retn




即 55 89 E5 改为 B0 01 C3






2.保存文件


3.cp libxml-security-c.dylib  /Applications/Unity/Unity.app/Contents/Frameworks/libxml-security-c.dylib 

unity3d 4.6.1 macosx 破解