void FUN_140002400(LPCWSTR param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { longlong lVar1; char *pcVar2; undefined8 *puVar3; undefined8 *puVar4; undefined8 uVar5; ulonglong uVar6; wchar_t *pwVar7; if ((DAT_14017d37c & 1) == 0) { DAT_14017d37c = DAT_14017d37c | 1; FUN_1400ef080(); atexit((_func_5014 *)&LAB_140104340); if ((DAT_14017d37c & 1) == 0) { DAT_14017d37c = DAT_14017d37c | 1; FUN_1400ef080(); atexit((_func_5014 *)&LAB_140104340); } } if ((DAT_14017d140 != 200) && (DAT_14017d140 != 100)) { if ((DAT_14017d37c & 1) == 0) { DAT_14017d37c = DAT_14017d37c | 1; FUN_1400ef080(); atexit((_func_5014 *)&LAB_140104340); } if (DAT_14017d140 != 1000) goto LAB_1400024b1; } setlocale(0,"kor"); LAB_1400024b1: pcVar2 = setlocale(0,(char *)0x0); printf("Locale is: %s\n"); puVar3 = operator_new(8); puVar4 = (undefined8 *)0x0; if (puVar3 != (undefined8 *)0x0) { puVar4 = FUN_14003acf0(puVar3,pcVar2,param_3,param_4); } lVar1 = DAT_14017cf28; DAT_14017cf30 = puVar4; *(undefined1 *)(DAT_14017cf28 + 0x1e8) = 0x15; FUN_14002fc00(lVar1,param_1,param_3,param_4); uVar5 = FUN_140032f70(DAT_14017cf28,param_1,param_3,param_4); if ((char)uVar5 == '\0') { printf("DB PASE ERROR !!! \n"); } _wmkdir(L"Log"); puVar3 = operator_new(0xe8); puVar4 = (undefined8 *)0x0; if (puVar3 != (undefined8 *)0x0) { puVar4 = FUN_1400ef640(puVar3); } DAT_14017c8a8 = puVar4; FUN_1400ef910((longlong)puVar4,param_1,param_3,param_4); puVar4 = DAT_14017c8a8; EnterCriticalSection(DAT_14017cf60); uVar5 = 0x19; pwVar7 = L"Log\\Protocol_AgentManager"; FUN_140001710(puVar4 + 3,L"Log\\Protocol_AgentManager",0x19); LeaveCriticalSection(DAT_14017cf60); FUN_1400efa40((longlong)DAT_14017c8a8); puVar3 = operator_new(0x98); puVar4 = (undefined8 *)0x0; if (puVar3 != (undefined8 *)0x0) { puVar4 = FUN_1400ed450(puVar3,pwVar7,uVar5,param_4); } DAT_14017cf18 = puVar4; DAT_14017cf40 = operator_new(8); if (DAT_14017cf40 != (undefined8 *)0x0) { *DAT_14017cf40 = MagiXmlFormat::vftable; } puVar3 = operator_new(0xb0); puVar4 = (undefined8 *)0x0; if (puVar3 != (undefined8 *)0x0) { puVar4 = FUN_14000da20(puVar3,pwVar7,uVar5,param_4); } DAT_14017cf38 = puVar4; puVar4 = operator_new(0x80); if (puVar4 == (undefined8 *)0x0) { puVar4 = (undefined8 *)0x0; } else { *puVar4 = MagiStatistics::vftable; FUN_14000c1f0(puVar4 + 1); uVar6 = FUN_140094860(); uVar5 = CONCAT71((int7)((ulonglong)uVar5 >> 8),1); FUN_14003cf60((undefined4 *)(puVar4 + 9),uVar6 & 0xffffffff,uVar5,param_4); } DAT_14017cf48 = puVar4; FUN_1400ef250((longlong)DAT_14017c8a8,L"\t # INIT # \n",uVar5,param_4); return; }