undefined4 FUN_0041f1ac(int param_1)
{
short sVar1;
undefined2 uVar2;
undefined4 uVar3;
uint uVar4;
int iVar5;
int iVar6;
iVar5 = *(int *)(param_1 + 0x3c);
if (iVar5 != 0) {
FUN_004176b4(iVar5);
FUN_00471d20(iVar5);
}
uVar3 = FUN_00471da0(0x28);
/* try { // try from 0041f234 to 0041f23b has its CatchHandler @ 0041f4a4 */
FUN_00417e74(uVar3);
*(undefined4 *)(param_1 + 0x3c) = uVar3;
iVar5 = FUN_00471da0(0xbf);
*(undefined1 *)(iVar5 + 10) = 0;
*(undefined1 *)(iVar5 + 0xb) = 0;
*(undefined4 *)(iVar5 + 0xc) = 0;
*(undefined1 *)(iVar5 + 0x10) = 0;
*(undefined1 *)(iVar5 + 0x13) = 0;
*(undefined1 *)(iVar5 + 0x14) = 0;
*(undefined4 *)(iVar5 + 0x15) = 0;
*(undefined4 *)(iVar5 + 0x19) = 0;
*(undefined1 *)(iVar5 + 0x1d) = 0;
*(undefined1 *)(iVar5 + 0x20) = 0;
*(undefined1 *)(iVar5 + 0x21) = 0;
*(undefined4 *)(iVar5 + 0x22) = 0;
*(undefined1 *)(iVar5 + 0x26) = 0;
*(undefined1 *)(iVar5 + 0x27) = 0;
*(undefined1 *)(iVar5 + 0x2a) = 0;
*(undefined1 *)(iVar5 + 0x2b) = 0;
*(undefined4 *)(iVar5 + 0x2c) = 0;
*(undefined1 *)(iVar5 + 0x30) = 0;
*(undefined1 *)(iVar5 + 0x31) = 0;
*(undefined1 *)(iVar5 + 0x34) = 0;
*(undefined1 *)(iVar5 + 0x35) = 0;
*(undefined4 *)(iVar5 + 0x36) = 0;
*(undefined1 *)(iVar5 + 0x3a) = 0;
*(undefined1 *)(iVar5 + 0x3d) = 0;
*(undefined1 *)(iVar5 + 0x3e) = 0;
*(undefined4 *)(iVar5 + 0x3f) = 0;
*(undefined4 *)(iVar5 + 0x43) = 0;
*(undefined1 *)(iVar5 + 0x47) = 0;
*(undefined1 *)(iVar5 + 0x4a) = 0;
*(undefined1 *)(iVar5 + 0x4b) = 0;
*(undefined4 *)(iVar5 + 0x4c) = 0;
*(undefined4 *)(iVar5 + 0x50) = 0;
*(undefined1 *)(iVar5 + 0x54) = 0;
*(undefined1 *)(iVar5 + 0x57) = 0;
*(undefined1 *)(iVar5 + 0x58) = 0;
*(undefined4 *)(iVar5 + 0x59) = 0;
*(undefined4 *)(iVar5 + 0x5d) = 0;
*(undefined1 *)(iVar5 + 0x61) = 0;
*(undefined1 *)(iVar5 + 100) = 0;
*(undefined1 *)(iVar5 + 0x65) = 0;
*(undefined4 *)(iVar5 + 0x66) = 0;
*(undefined4 *)(iVar5 + 0x6a) = 0;
*(undefined1 *)(iVar5 + 0x6e) = 0;
*(undefined1 *)(iVar5 + 0x71) = 0;
*(undefined1 *)(iVar5 + 0x72) = 0;
*(undefined4 *)(iVar5 + 0x73) = 0;
*(undefined4 *)(iVar5 + 0x77) = 0;
*(undefined1 *)(iVar5 + 0x91) = 0;
*(undefined1 *)(iVar5 + 0x92) = 0;
*(undefined1 *)(iVar5 + 0x95) = 0;
*(undefined1 *)(iVar5 + 0x96) = 0;
*(undefined4 *)(iVar5 + 0x97) = 0;
*(undefined4 *)(iVar5 + 0x9b) = 0;
*(undefined1 *)(iVar5 + 0x9f) = 0;
*(undefined1 *)(iVar5 + 0xa2) = 0;
*(undefined1 *)(iVar5 + 0xa3) = 0;
*(undefined4 *)(iVar5 + 0xa4) = 0;
*(undefined4 *)(iVar5 + 0xa8) = 0;
*(undefined1 *)(iVar5 + 0xaf) = 0;
*(undefined1 *)(iVar5 + 0xb0) = 0;
*(undefined1 *)(iVar5 + 0xac) = 0;
*(undefined4 *)(iVar5 + 0xb1) = 0;
*(undefined1 *)(iVar5 + 0xb8) = 0;
*(undefined1 *)(iVar5 + 0xb9) = 0;
*(undefined1 *)(iVar5 + 0xb5) = 0;
*(undefined4 *)(iVar5 + 0xba) = 0;
*(undefined1 *)(iVar5 + 8) = 0x26;
*(undefined1 *)(iVar5 + 9) = 0x10;
*(undefined1 *)(iVar5 + 10) = 1;
*(undefined1 *)(iVar5 + 0xb) = 0;
*(undefined1 *)(iVar5 + 0x10) = 1;
iVar6 = *(int *)(param_1 + 0x20) + 0x11c;
*(undefined1 *)(iVar5 + 0xbe) = 0;
uVar2 = FUN_00483e50(iVar6);
FUN_00414bc0(iVar5 + 0x11,0x1045,iVar6,uVar2);
uVar2 = *(undefined2 *)(*(int *)(param_1 + 0x20) + 0x5f);
*(char *)(iVar5 + 0x27) = (char)((ushort)uVar2 >> 8);
*(undefined1 *)(iVar5 + 0x1e) = 3;
*(undefined1 *)(iVar5 + 0x1f) = 0x10;
*(undefined1 *)(iVar5 + 0x20) = 2;
*(undefined1 *)(iVar5 + 0x21) = 0;
*(char *)(iVar5 + 0x26) = (char)uVar2;
uVar2 = *(undefined2 *)(*(int *)(param_1 + 0x20) + 99);
*(undefined1 *)(iVar5 + 0x28) = 0xf;
*(undefined1 *)(iVar5 + 0x2a) = 2;
*(char *)(iVar5 + 0x31) = (char)((ushort)uVar2 >> 8);
*(undefined1 *)(iVar5 + 0x29) = 0x10;
*(undefined1 *)(iVar5 + 0x2b) = 0;
*(char *)(iVar5 + 0x30) = (char)uVar2;
sVar1 = *(short *)(*(int *)(param_1 + 0x20) + 0x11a) //possible issue identified - semgrep
if (sVar1 == 0) {
*(undefined1 *)(iVar5 + 0x32) = 0x28;
*(undefined1 *)(iVar5 + 0x33) = 0x10;
*(undefined1 *)(iVar5 + 0x3a) = 1;
*(undefined1 *)(iVar5 + 0x34) = 1;
}
else {
*(undefined1 *)(iVar5 + 0x32) = 0x28;
*(undefined1 *)(iVar5 + 0x33) = 0x10;
*(undefined1 *)(iVar5 + 0x34) = 1;
*(char *)(iVar5 + 0x3a) = (char)sVar1;
}
*(undefined1 *)(iVar5 + 0x35) = 0;
iVar6 = *(int *)(param_1 + 0x20);
if (*(char *)(iVar6 + 0x371) == '\0') {
iVar6 = 0;
uVar4 = 0;
}
else {
uVar4 = *(uint *)(iVar6 + 0x374);
iVar6 = iVar6 + 0x331;
}
FUN_004217e0(iVar5 + 0x3b,0x1027,iVar6,uVar4 & 0xffff);
FUN_00414bc0(iVar5 + 0x48,0x1020,*(int *)(param_1 + 0x20) + 0x15,6);
FUN_00401820(**(undefined4 **)(param_1 + 0x3c),iVar5);
return 0x1001;
}