undefined1 * FUN_0043a36c(int param_1,undefined4 param_2,undefined4 param_3)
{
undefined1 *puVar1;
if (0 < param_1) {
DAT_004af810 = 0;
if (DAT_004bb960 != (code *)0x0) {
DAT_004af814 = 0;
(*DAT_004bb960)(0,param_1,param_2,param_3,0);
}
puVar1 = (undefined1 *)(*(code *)PTR_thunk_FUN_0048470c_004af834)(param_1,param_2,param_3);
if (DAT_004bb960 != (code *)0x0) {
(*DAT_004bb960)(puVar1,param_1,param_2,param_3,1);
}
if ((puVar1 != (undefined1 *)0x0) && (0x800 < param_1)) {
*puVar1 = DAT_004bb970;
}
return puVar1;
}
return (undefined1 *)0x0;
}