@@ -36,28 +36,25 @@ 0: add ebx, offset _GLOBAL_OFFSET_TABLE_ mov eax, [ebp+8] mov [esp], eax - mov eax, [ebx+object_getClass@GOT] - call eax + call object_getClass@PLT mov [esp], eax lea eax, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], eax - mov eax, [ebx+class_respondsToSelector@GOT] - call eax + call class_respondsToSelector@PLT test eax, eax jz short 1f mov eax, [ebp+8] mov [esp], eax lea eax, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], eax - mov eax, [ebx+objc_msg_lookup@GOT] - call eax + call objc_msg_lookup@PLT mov edx, [ebp+8] mov [esp], edx lea edx, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], edx @@ -72,12 +69,11 @@ mov [ebp+8], eax mov [esp], eax mov eax, [ebp+12] mov [esp+4], eax - mov eax, [ebx+objc_msg_lookup@GOT] - call eax + call objc_msg_lookup@PLT add esp, 20 pop ebx pop ebp @@ -100,33 +96,29 @@ push ebx sub esp, 20 call get_eip -0: add ebx, offset _GLOBAL_OFFSET_TABLE_ mov eax, [ebp+12] mov [esp], eax - mov eax, [ebx+object_getClass@GOT] - call eax + call object_getClass@PLT mov [esp], eax lea eax, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], eax - mov eax, [ebx+class_respondsToSelector@GOT] - call eax + call class_respondsToSelector@PLT test eax, eax jz short 1f mov eax, [ebp+12] mov [esp], eax lea eax, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], eax - mov eax, [ebx+objc_msg_lookup@GOT] - call eax + call objc_msg_lookup@PLT mov edx, [ebp+12] mov [esp], edx lea edx, [ebx+sel_forwardingTargetForSelector_@GOTOFF] mov [esp+4], edx @@ -141,12 +133,11 @@ mov [ebp+12], eax mov [esp], eax mov eax, [ebp+16] mov [esp+4], eax - mov eax, [ebx+objc_msg_lookup_stret@GOT] - call eax + call objc_msg_lookup_stret@PLT add esp, 20 pop ebx pop ebp @@ -169,17 +160,15 @@ push ebx sub esp, 4 call get_eip -0: add ebx, offset _GLOBAL_OFFSET_TABLE_ lea eax, [ebx+module@GOTOFF] mov [esp], eax - mov eax, [ebx+__objc_exec_class@GOT] - call eax + call __objc_exec_class@PLT add esp, 4 pop ebx pop ebp ret