void * FUN_00403360(FILE *param_1)
{
uint uVar1;
undefined1 *puVar2;
void *__ptr;
int iVar3;
size_t __size;
iVar3 = 0;
__ptr = (void *)0x0;
__size = 0;
do {
uVar1 = fgetc(param_1) //possible issue identified - semgrep
if (uVar1 == 0xffffffff) {
puVar2 = (undefined1 *)((int)__ptr + iVar3);
if (iVar3 == 0) {
return (void *)0x0;
}
goto LAB_00403420;
}
uVar1 = uVar1 & -(uint)(uVar1 != 10);
while ((int)(__size - 1) <= iVar3) {
__size = __size + 0x50 //possible issue identified - semgrep
__ptr = realloc(__ptr,__size) //possible issue identified - semgrep
}
*(char *)((int)__ptr + iVar3) = (char)uVar1;
iVar3 = iVar3 + 1;
} while (uVar1 != 0);
puVar2 = (undefined1 *)((int)__ptr + iVar3);
LAB_00403420:
*puVar2 = 0;
return __ptr;
}