///block 的签名信息@“RACSignal”@?@“HTTPRequestContext”@?<@“RACSignal”@?>
_block(__int64 a1, __int64 a2, __int64 a3) {
v3 = a3;
v4 = objc_retain(a2, a2);
v5 = (*(__int64 (__fastcall **)(__int64))(v3 + 16))(v3);就是这句
v6 = (void *)objc_retainAutoreleasedReturnValue(v5);
v22 = _NSConcreteStackBlock;
v23 = 3254779904LL;
v24 = +[CBLInjectionLauncher addErrorUploadInject]_block_block;
v25 = &unk_1009CDAC8;
v8 = objc_retain(v4, v7);
v9 = v8;
v26 = v8;
v10 = objc_msgSend(v6, “doNext:”, &v22);
v11 = (void *)objc_retainAutoreleasedReturnValue(v10);
v17 = _NSConcreteStackBlock;
v18 = 3254779904LL;
v19 = +[FHInjectionLauncher addErrorUploadInject]_block_block_0;
v20 = &unk_1009CDAF8;
v21 = v9;
v13 = objc_retain(v9, v12);
v14 = objc_msgSend(
v11,
“doError:”,
&v17,
_NSConcreteStackBlock,
3254779904LL,
+[FHInjectionLauncher addErrorUploadInject]_block_block_0,
&unk_1009CDAF8);
v15 = objc_retainAutoreleasedReturnValue(v14);
objc_release(v11);
objc_release(v21);
objc_release(v26);
objc_release(v13);
objc_release(v6);
return objc_autoreleaseReturnValue(v15);
}
求大佬解释下**_v5 = (*(__int64 (__fastcall **)(__int64))(v3 + 16))(v3);这句怎么理解啊
假如v3本身是个block的话 ,v3+16是什么啊