undefined4 FUN_00403e20(undefined4 param_1,undefined4 param_2,char *param_3)
{
bool bVar1;
int iVar2;
undefined4 uVar3;
double dVar4;
undefined1 auStack_38 [16];
char *local_28;
uint local_24;
memset(param_3,0,0x90) //possible issue identified - semgrep
iVar2 = FUN_00403d38(param_1,param_2,0x8b01,auStack_38);
uVar3 = 0xffffffff;
if (-1 < iVar2) {
strncpy(param_3,(char *)&local_28,0x10) //possible issue identified - semgrep
param_3[0x10] = '\0';
iVar2 = FUN_00403d38(param_1,param_2,0x8b03,auStack_38);
if (-1 < iVar2) {
param_3[0x14] = '\x01';
param_3[0x15] = '\0';
param_3[0x16] = '\0';
param_3[0x17] = '\0';
*(char **)(param_3 + 0x18) = local_28;
*(uint *)(param_3 + 0x1c) = local_24;
}
iVar2 = FUN_00403d38(param_1,param_2,0x8b05,auStack_38);
if (-1 < iVar2) {
param_3[0x20] = '\x01';
param_3[0x21] = '\0';
param_3[0x22] = '\0';
param_3[0x23] = '\0';
dVar4 = (double)(int)local_28;
iVar2 = 0;
while (bVar1 = iVar2 < (short)local_24, iVar2 = iVar2 + 1, bVar1) {
dVar4 = dVar4 * 10.0;
}
*(int *)(param_3 + 0x28) = SUB84(dVar4,0);
*(int *)(param_3 + 0x2c) = (int)((ulonglong)dVar4 >> 0x20);
}
local_28 = param_3 + 0x34;
local_24 = 0x20;
iVar2 = FUN_00403d38(param_1,param_2,0x8b2b,auStack_38);
if (-1 < iVar2) {
param_3[0x30] = '\x01';
param_3[0x31] = '\0';
param_3[0x32] = '\0';
param_3[0x33] = '\0';
*(uint *)(param_3 + 0x54) = local_24 & 0xffff;
*(uint *)(param_3 + 0x58) = local_24 >> 0x10;
}
local_28 = param_3 + 100;
local_24 = 0x21;
iVar2 = FUN_00403d38(param_1,param_2,0x8b1b,auStack_38);
if (-1 < iVar2) {
param_3[0x5c] = '\x01';
param_3[0x5d] = '\0';
param_3[0x5e] = '\0';
param_3[0x5f] = '\0';
*(uint *)(param_3 + 0x60) = local_24 >> 0x10;
}
iVar2 = FUN_00403d38(param_1,param_2,0x8b07,auStack_38);
uVar3 = 0;
if (-1 < iVar2) {
*(char **)(param_3 + 0x8c) = local_28;
if (local_28 < (char *)0x6) {
param_3[0x88] = '\x01';
param_3[0x89] = '\0';
param_3[0x8a] = '\0';
param_3[0x8b] = '\0';
}
uVar3 = 0;
}
}
return uVar3;
}