如何还原一个函数?

用Hopper逆向了一个应用,其中一个函数的伪代码如何,如何还原成OC代码?其他的还可以看懂,就是
var_30 = objc_retainAutoreleaseReturnValue(CFDataCreate(*_kCFAllocatorDefault, sp + 0x1c, 0x10));
这句,不知道如何还原?

sp = sp - 0x4 - 0x4 - 0x30;
var_4 = *___stack_chk_guard;
for (var_20 = 0x0; var_20 < 0x10; var_20 = var_20 + 0x1) {
        if ((var_20 > 0x3) && (var_20 < 0x9)) {
                arc4random();
                *(var_20 + sp + 0x1c) = __umodsi3() + 0x30;
        }
        else {
                arc4random();
                *(var_20 + sp + 0x1c) = __umodsi3() + 0x41;
        }
}
var_30 = objc_retainAutoreleaseReturnValue(CFDataCreate(*_kCFAllocatorDefault, sp + 0x1c, 0x10));
if (*___stack_chk_guard == var_4) {
        r0 = var_30;
}
else {
        r0 = __stack_chk_fail();
}
return r0;