59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
0:
call get_eip
add eax, offset _GLOBAL_OFFSET_TABLE_
lea eax, [eax+\not_found@GOTOFF]
jmp eax
.Ltagged_pointer_\name:
and dl, 0xE
movzx edx, dl
call get_eip
add eax, offset _GLOBAL_OFFSET_TABLE_
lea eax, [eax+objc_tagged_pointer_classes@GOTOFF]
mov edx, [eax+edx*2]
mov edx, [edx+32]
jmp short .Lmain_\name
.type \name, %function
|
<
<
<
>
>
>
>
>
|
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
0:
call get_eip
add eax, offset _GLOBAL_OFFSET_TABLE_
lea eax, [eax+\not_found@GOTOFF]
jmp eax
.Ltagged_pointer_\name:
call get_eip
add eax, offset _GLOBAL_OFFSET_TABLE_
lea ecx, [eax+objc_tagged_pointer_secret@GOTOFF]
xor edx, [ecx]
and dl, 0xE
movzx edx, dl
lea eax, [eax+objc_tagged_pointer_classes@GOTOFF]
mov edx, [eax+edx*2]
mov edx, [edx+32]
jmp short .Lmain_\name
.type \name, %function
|