/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x14005a530 FUN_14005a530 * Pseudocode, not original source. */ /* WARNING: Function: __chkstk replaced with injection: alloca_probe */ /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */ undefined8 FUN_14005a530(longlong *param_1,ulonglong **param_2,ulonglong *param_3,undefined8 param_4, undefined4 param_5) { longlong lVar1; longlong *_Memory; double dVar2; undefined1 **ppuVar3; code *pcVar4; char *pcVar5; undefined1 *puVar6; ulonglong **ppuVar7; void *pvVar8; int iVar9; ulonglong uVar10; longlong *plVar11; ulonglong uVar12; undefined4 *puVar13; undefined8 *puVar14; undefined8 *puVar15; ulonglong *puVar16; uint *puVar17; uint *puVar18; int *piVar19; longlong *extraout_RAX; longlong *extraout_RAX_00; longlong *extraout_RAX_01; longlong lVar20; undefined1 **ppuVar21; uint uVar22; undefined1 *puVar23; undefined1 *puVar24; longlong lVar25; int iVar26; int iVar27; ulonglong **ppuVar28; SIZE_T SVar29; ulonglong **ppuVar30; uint uVar31; int iVar32; undefined4 uVar33; undefined4 uVar34; undefined1 auStack_2aa8 [32]; int local_2a88 [2]; undefined8 *local_2a80; int local_2a78 [2]; ulonglong local_2a70; ulonglong *local_2a68; uint local_2a60; int local_2a5c; ulonglong **local_2a50; ulonglong *local_2a48; uint uStack_2a40; undefined4 uStack_2a3c; longlong *local_2a38; ulonglong *local_2a30; ulonglong local_2a28; undefined1 local_2a20; int local_2a1c; undefined1 local_2a18; undefined1 local_2a17; uint local_2a10; int *local_2a08; undefined1 local_2a00; int *local_29f8; undefined1 local_29f0; int *local_29e8; undefined1 local_29e0; undefined8 local_29d8; exception local_29d0 [72]; void *local_2988; longlong local_2980; ulonglong local_2978; longlong local_2970; uint local_2968 [4]; undefined1 local_2958 [384]; ulonglong *local_27d8; undefined8 local_27d0; ulonglong local_27c8; undefined8 local_27c0; undefined1 *local_2628; longlong local_2620; ulonglong local_2618; undefined8 local_2610; undefined1 local_2608 [3200]; ulonglong *local_1988 [400]; ulonglong **local_d08; undefined4 local_d00; int local_cfc; ulonglong *local_cf8; undefined8 uStack_cf0; ulonglong **local_78; undefined4 local_70; int local_6c; ulonglong local_68; undefined8 uStack_48; uStack_48 = 0x14005a547; puVar24 = auStack_2aa8; local_29d8 = 0xfffffffffffffffe; local_68 = DAT_1401555a0 ^ (ulonglong)local_2a88; local_2a50 = param_2; local_2a48 = param_3; local_2a08 = (int *)(**(code **)(*param_1 + 0x58))(); FUN_14002e6e0(local_2a08); local_2a00 = 1; if (DAT_14015bfcf != '\0') { (**(code **)(*param_1 + 200))(param_1,L"Proud::CNetServerImpl::Send_BroadcastLayer"); } uVar31 = 0; uVar22 = 0; if (0 < (int)*(uint *)((longlong)param_3 + 4)) { uVar22 = *(uint *)((longlong)param_3 + 4); } dVar2 = (double)param_3[1]; uVar33 = SUB84(dVar2,0); uVar34 = (int)((ulonglong)dVar2 >> 0x20); if (dVar2 <= 0.0) { uVar33 = 0; uVar34 = 0; } local_27d8 = (ulonglong *)0x0; local_27c0 = 0; local_27d0 = 0; local_27c8 = 100; ppuVar30 = &local_27d8; (**(code **)(*param_1 + 0x50))(param_1,param_5,param_4); local_2628 = (undefined1 *)0x0; local_2610 = 0; local_2620 = 0; local_2618 = 100; ppuVar28 = &local_27d8; ppuVar21 = &local_2628; FUN_140042e50((longlong)param_1,(longlong *)ppuVar21,(longlong *)ppuVar28); iVar9 = (int)local_2620; lVar25 = (longlong)iVar9 * 8; uVar12 = lVar25 + 0x10; if (uVar12 < 0x401) { uVar10 = lVar25 + 0x1f; if (uVar10 <= uVar12) { uVar10 = 0xffffffffffffff0; } lVar25 = -(uVar10 & 0xfffffffffffffff0); puVar24 = auStack_2aa8 + lVar25; local_2a80 = (undefined8 *)((longlong)local_2a88 + lVar25); if (local_2a80 != (undefined8 *)0x0) { *(undefined4 *)local_2a80 = 0xcccc; puVar24 = auStack_2aa8 + lVar25; LAB_14005a6b8: local_2a80 = local_2a80 + 2; } } else { local_2a80 = malloc(uVar12); if (local_2a80 != (undefined8 *)0x0) { *(undefined4 *)local_2a80 = 0xdddd; puVar24 = auStack_2aa8; goto LAB_14005a6b8; } } lVar25 = (longlong)iVar9 * 8; uVar12 = lVar25 + 0x10; if (uVar12 < 0x401) { uVar10 = lVar25 + 0x1f; if (uVar10 <= uVar12) { uVar10 = 0xffffffffffffff0; } *(undefined8 *)(puVar24 + -8) = 0x14005a6e6; lVar25 = -(uVar10 & 0xfffffffffffffff0); puVar23 = puVar24 + lVar25; plVar11 = (longlong *)(puVar24 + lVar25 + 0x20); puVar24 = puVar24 + lVar25; local_2a38 = plVar11; if (plVar11 == (longlong *)0x0) goto LAB_14005a71f; *(undefined4 *)plVar11 = 0xcccc; puVar24 = puVar23; } else { *(undefined8 *)(puVar24 + -8) = 0x14005a705; plVar11 = malloc(uVar12); local_2a38 = plVar11; if (plVar11 == (longlong *)0x0) goto LAB_14005a71f; *(undefined4 *)plVar11 = 0xdddd; } local_2a38 = plVar11 + 2; LAB_14005a71f: plVar11 = local_2a38; local_2a10 = 0; iVar26 = 0; local_2a88[0] = 0; if ((int)*param_3 == 1) { puVar15 = local_2a80; if (iVar9 < 1) { iVar27 = 0; uVar31 = 0; } else { do { if ((iVar26 < 0) || (local_2620 <= iVar26)) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005a8c9; FUN_14002f590(); } puVar6 = local_2628; if (local_2618 < 0x65) { puVar6 = local_2608; } plVar11 = *(longlong **)(puVar6 + (longlong)iVar26 * 0x20 + 8); if ((plVar11 == param_1 + 0xe) && (*(char *)((longlong)param_3 + 0x2d) != '\0')) { *(undefined8 *)(puVar24 + -8) = 0x14005a79e; FUN_1400806d0(local_2a78); ppuVar7 = local_2a50; piVar19 = local_2a78; *(undefined8 *)(puVar24 + -8) = 0x14005a7ac; FUN_1400a2150((longlong)ppuVar7,piVar19,(SIZE_T)ppuVar28,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005a7b5; uVar12 = FUN_1400a1c10((longlong)local_2a78,piVar19,ppuVar28,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005a7cb; puVar13 = FUN_140056fa0((undefined4 *)&local_2988,local_2a78,uVar12 & 0xffffffff, CONCAT71((int7)((ulonglong)ppuVar30 >> 8),1)); ppuVar30 = (ulonglong **)0x0; ppuVar28 = (ulonglong **)param_1[0x8d]; *(undefined8 *)(puVar24 + -8) = 0x14005a7e7; puVar14 = FUN_14005a220(param_1 + 0x8b,puVar13,(SIZE_T)ppuVar28,0); if ((undefined8 *)param_1[0x8d] == (undefined8 *)0x0) { param_1[0x8c] = (longlong)puVar14; } else { *(undefined8 *)param_1[0x8d] = puVar14; } param_1[0x8d] = (longlong)puVar14; *(undefined8 *)(puVar24 + -8) = 0x14005a815; FUN_140056f10((longlong)local_2958,puVar13,ppuVar28,ppuVar30); local_2a48 = &local_2978; *(undefined8 *)(puVar24 + -8) = 0x14005a82d; FUN_140095270((longlong *)&local_2978); if ((local_2970 != 0) && ((int)local_2968[1] < 0)) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005a8b5; FUN_14002f590(); } ppuVar21 = (undefined1 **)(param_1 + 0xf); lVar25 = param_1[0x7c]; *(undefined8 *)(puVar24 + -8) = 0x14005a85a; FUN_1400a25d0(lVar25 + 0x160,(longlong)ppuVar21,ppuVar28,ppuVar30); local_2a48 = &local_2a70; *(undefined8 *)(puVar24 + -8) = 0x14005a86c; FUN_140095270((longlong *)&local_2a70); if ((local_2a68 != (ulonglong *)0x0) && (local_2a5c < 0)) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005a8bb; FUN_14002f590(); } } else if (plVar11 != (longlong *)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005a889; puVar14 = FUN_1400a2560(plVar11); if (puVar14 != (undefined8 *)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005a89a; FUN_14009c460((longlong)(plVar11 + 0x18)); *puVar15 = plVar11; uVar31 = uVar31 + 1; puVar15 = puVar15 + 1; } } iVar26 = iVar26 + 1; iVar27 = local_2a88[0]; } while (iVar26 < iVar9); } } else { ppuVar28 = (ulonglong **)(ulonglong)uVar22; ppuVar21 = &local_2628; *(undefined8 *)(puVar24 + -8) = 0x14005a8e0; FUN_1400518f0(param_1,(longlong *)ppuVar21,ppuVar28,(double)CONCAT44(uVar34,uVar33)); iVar9 = 0; iVar32 = (int)local_2620; param_3 = local_2a48; iVar27 = iVar26; if (0 < iVar32) { do { lVar25 = (longlong)iVar9; if ((iVar9 < 0) || (local_2620 <= lVar25)) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005aadc; FUN_14002f590(); } puVar6 = local_2628; if (local_2618 < 0x65) { puVar6 = local_2608; } ppuVar3 = *(undefined1 ***)(puVar6 + lVar25 * 0x20 + 8); if ((ppuVar3 == (undefined1 **)(param_1 + 0xe)) && (*(char *)((longlong)local_2a48 + 0x2d) != '\0')) { *(undefined8 *)(puVar24 + -8) = 0x14005a968; FUN_1400806d0(local_2a78); ppuVar7 = local_2a50; piVar19 = local_2a78; *(undefined8 *)(puVar24 + -8) = 0x14005a976; FUN_1400a2150((longlong)ppuVar7,piVar19,(SIZE_T)ppuVar28,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005a97f; uVar12 = FUN_1400a1c10((longlong)local_2a78,piVar19,ppuVar28,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005a995; puVar13 = FUN_140056fa0((undefined4 *)&local_2988,local_2a78,uVar12 & 0xffffffff, CONCAT71((int7)((ulonglong)ppuVar30 >> 8),1)); ppuVar30 = (ulonglong **)0x0; ppuVar28 = (ulonglong **)param_1[0x8d]; *(undefined8 *)(puVar24 + -8) = 0x14005a9b1; puVar15 = FUN_14005a220(param_1 + 0x8b,puVar13,(SIZE_T)ppuVar28,0); if ((undefined8 *)param_1[0x8d] == (undefined8 *)0x0) { param_1[0x8c] = (longlong)puVar15; } else { *(undefined8 *)param_1[0x8d] = puVar15; } param_1[0x8d] = (longlong)puVar15; *(undefined8 *)(puVar24 + -8) = 0x14005a9df; FUN_140056f10((longlong)local_2958,puVar13,ppuVar28,ppuVar30); local_2a30 = &local_2978; *(undefined8 *)(puVar24 + -8) = 0x14005a9f7; FUN_140095270((longlong *)&local_2978); if ((local_2970 != 0) && ((int)local_2968[1] < 0)) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005aac4; FUN_14002f590(); } ppuVar21 = (undefined1 **)(param_1 + 0xf); lVar25 = param_1[0x7c]; *(undefined8 *)(puVar24 + -8) = 0x14005aa28; FUN_1400a25d0(lVar25 + 0x160,(longlong)ppuVar21,ppuVar28,ppuVar30); local_2a30 = &local_2a70; *(undefined8 *)(puVar24 + -8) = 0x14005aa3a; FUN_140095270((longlong *)&local_2a70); if ((local_2a68 != (ulonglong *)0x0) && (local_2a5c < 0)) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005aaca; FUN_14002f590(); } } else if (ppuVar3 != (undefined1 **)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005aa5b; puVar15 = FUN_1400a2560(ppuVar3); if (puVar15 != (undefined8 *)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005aa6b; ppuVar21 = ppuVar3; FUN_140054c90(param_1,(longlong *)ppuVar3,(longlong **)ppuVar28,(uint **)ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005aa77; FUN_14009c460((longlong)(ppuVar3 + 0x18)); if (local_2620 <= lVar25) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005aad0; FUN_14002f590(); } puVar6 = local_2628; if (local_2618 < 0x65) { puVar6 = local_2608; } *plVar11 = (longlong)(puVar6 + lVar25 * 0x20); local_2a88[0] = local_2a88[0] + 1; plVar11 = plVar11 + 1; } } iVar9 = iVar9 + 1; param_3 = local_2a48; iVar27 = local_2a88[0]; uVar31 = local_2a10; } while (iVar9 < iVar32); } } piVar19 = local_2a08; lVar25 = 0; *(undefined8 *)(puVar24 + -8) = 0x14005aaf3; FUN_14002e770((longlong)piVar19); local_2a00 = 0; if ((int)*param_3 == 1) { if (0 < (int)uVar31) { do { lVar20 = local_2a80[lVar25]; pcVar4 = *(code **)(*(longlong *)(lVar20 + 0x108) + 0x10); *(undefined8 *)(puVar24 + -8) = 0x14005ab25; puVar16 = (ulonglong *)(*pcVar4)(); local_2a48 = puVar16; *(undefined8 *)(puVar24 + -8) = 0x14005ab34; FUN_14002e6e0((int *)puVar16); ppuVar28 = local_2a50; uStack_2a40._0_1_ = 1; local_2a30 = (ulonglong *)0x0; local_2a28 = CONCAT71(local_2a28._1_7_,1); pcVar5 = *(char **)(lVar20 + 0x748); *(undefined8 *)(puVar24 + -8) = 0x14005ab58; FUN_14009c2b0(pcVar5,(longlong)ppuVar28,(SIZE_T *)&local_2a30,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005ab60; FUN_14002e770((longlong)puVar16); uStack_2a40 = (uint)uStack_2a40._1_3_ << 8; *(undefined8 *)(puVar24 + -8) = 0x14005ab70; FUN_14009c470(lVar20 + 0xc0); lVar25 = lVar25 + 1; } while (lVar25 < (int)uVar31); } } else if (0 < iVar27) { do { puVar18 = (uint *)local_2a38[lVar25]; plVar11 = *(longlong **)(puVar18 + 2); if (*(longlong *)(puVar18 + 4) == 0) { if (*(longlong *)(puVar18 + 6) == 0) { pcVar4 = *(code **)(plVar11[0x21] + 0x10); *(undefined8 *)(puVar24 + -8) = 0x14005aeb1; piVar19 = (int *)(*pcVar4)(); local_29f8 = piVar19; *(undefined8 *)(puVar24 + -8) = 0x14005aec3; FUN_14002e6e0(piVar19); local_29f0 = 1; local_2a30 = (ulonglong *)CONCAT44(local_2a30._4_4_,(int)param_3[4]); local_2a28 = param_3[3]; local_2a20 = *(undefined1 *)((longlong)param_3 + 0x2d); local_2a1c = (int)param_3[6]; local_2a18 = *(undefined1 *)((longlong)param_3 + 0x41); local_2a17 = (undefined1)param_3[8]; pcVar4 = *(code **)(*plVar11 + 0x10); *(undefined8 *)(puVar24 + -8) = 0x14005af02; uVar22 = (*pcVar4)(plVar11); ppuVar28 = local_2a50; ppuVar21 = (undefined1 **)(ulonglong)uVar22; ppuVar30 = &local_2a30; *(undefined8 *)(puVar24 + -8) = 0x14005af18; FUN_14009dae0((char *)(plVar11 + 0xe0),uVar22,(longlong)ppuVar28,(uint *)ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005af20; FUN_14002e770((longlong)piVar19); local_29f0 = 0; } else { *(undefined8 *)(puVar24 + -8) = 0x14005abbb; FUN_1400806d0(local_2a78); *(undefined8 *)(puVar24 + -8) = 0x14005abc5; FUN_1400801a0((longlong)local_2a78,ppuVar21,(SIZE_T)ppuVar28,ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005abd0; FUN_14001ba80((longlong)local_2a78,CONCAT71((int7)((ulonglong)ppuVar21 >> 8),0x22), (SIZE_T)ppuVar28,ppuVar30); uVar12 = param_3[4]; *(undefined8 *)(puVar24 + -8) = 0x14005abde; FUN_14001ba80((longlong)local_2a78,(ulonglong)(byte)uVar12,(SIZE_T)ppuVar28,ppuVar30); uVar12 = param_3[3]; *(undefined8 *)(puVar24 + -8) = 0x14005abeb; FUN_140081aa0((longlong)local_2a78,uVar12,(SIZE_T)ppuVar28,ppuVar30); local_2988 = (void *)0x0; local_2970 = 0; local_2980 = 0; local_2978 = 100; do { lVar20 = local_2980; uVar22 = *puVar18; if (local_2980 < 0) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005afc1; FUN_14002f590(); } lVar1 = local_2980 + 1; SVar29 = 0xffffffffffffffff; *(undefined8 *)(puVar24 + -8) = 0x14005ac2f; FUN_14003f250(&local_2988,lVar1,-1); if (local_2980 <= lVar20) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005afbb; FUN_14002f590(); } if (local_2978 < 0x65) { puVar17 = local_2968 + lVar20; } else { puVar17 = (uint *)((longlong)local_2988 + lVar20 * 4); } *puVar17 = uVar22; puVar18 = *(uint **)(puVar18 + 6); } while (puVar18 != (uint *)0x0); uVar12 = (ulonglong)(int)local_2980; *(undefined8 *)(puVar24 + -8) = 0x14005ac7f; FUN_140081aa0((longlong)local_2a78,uVar12,SVar29,ppuVar30); if (0 < local_2980) { lVar20 = 0; puVar16 = (ulonglong *)0x0; do { if ((lVar20 < 0) || (local_2980 <= lVar20)) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005af49; FUN_14002f590(); } if (local_2978 < 0x65) { puVar18 = local_2968 + lVar20; } else { puVar18 = (uint *)((longlong)local_2988 + lVar20 * 4); } uVar12 = (ulonglong)*puVar18; *(undefined8 *)(puVar24 + -8) = 0x14005accd; FUN_140021e80((longlong)local_2a78,uVar12,SVar29,ppuVar30); uVar22 = (int)puVar16 + 1; puVar16 = (ulonglong *)(ulonglong)uVar22; lVar20 = (longlong)(int)uVar22; } while (lVar20 < local_2980); } ppuVar28 = local_2a50; *(undefined8 *)(puVar24 + -8) = 0x14005acea; iVar9 = FUN_1400a1f10((longlong)ppuVar28,uVar12,SVar29,ppuVar30); lVar20 = (longlong)iVar9; *(undefined8 *)(puVar24 + -8) = 0x14005acf6; FUN_140081aa0((longlong)local_2a78,lVar20,SVar29,ppuVar30); local_cfc = 200; local_d00 = 0; local_d08 = local_1988; local_6c = 200; local_70 = 0; local_78 = &local_cf8; if (local_2a70 == 0) { uVar22 = local_2a60; if (local_2a68 == (ulonglong *)0x0) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005afb5; FUN_140095370(0,lVar20,SVar29,ppuVar30); } } else { uVar22 = *(uint *)(local_2a70 + 0x18); } puVar16 = local_2a68; if (local_2a68 == (ulonglong *)0x0) { if (local_2a70 == 0) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005afaf; FUN_140095370(0,(ulonglong)uVar22,SVar29,ppuVar30); } puVar16 = (ulonglong *)0x0; if (*(int *)(local_2a70 + 0x18) != 0) { puVar16 = *(ulonglong **)(local_2a70 + 0x10); } } local_70 = 1; uStack_cf0 = CONCAT44(uStack_2a3c,uVar22); local_2a48 = puVar16; uStack_2a40 = uVar22; *(undefined8 *)(puVar24 + -8) = 0x14005ad99; local_cf8 = puVar16; FUN_140040a60((longlong)local_1988,(longlong)&local_cf8,SVar29,ppuVar30); if (local_78 == (ulonglong **)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005af96; FUN_14002f1e0(local_29d0,(wchar_t *)PTR_u_ArrayWithExternalBuffer_is_unini_1401569a0, SVar29,ppuVar30); /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005afa9; _CxxThrowException(local_29d0,(ThrowInfo *)&DAT_140151b88); } if (local_6c < 0) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005af82; FUN_14002f590(); } *(undefined8 *)(puVar24 + -8) = 0x14005adc4; FUN_140040a60((longlong)local_1988,(longlong)ppuVar28,SVar29,ppuVar30); pcVar4 = *(code **)(plVar11[0x21] + 0x10); *(undefined8 *)(puVar24 + -8) = 0x14005add1; piVar19 = (int *)(*pcVar4)(); local_29e8 = piVar19; *(undefined8 *)(puVar24 + -8) = 0x14005ade3; FUN_14002e6e0(piVar19); local_29e0 = 1; local_2a30 = (ulonglong *)CONCAT44(local_2a30._4_4_,(int)param_3[4]); local_2a28 = param_3[3]; local_2a20 = *(undefined1 *)((longlong)param_3 + 0x2d); local_2a1c = (int)param_3[6]; local_2a18 = *(undefined1 *)((longlong)param_3 + 0x41); local_2a17 = (undefined1)param_3[8]; ppuVar30 = &local_2a30; ppuVar28 = local_1988; ppuVar21 = (undefined1 **)0x0; *(undefined8 *)(puVar24 + -8) = 0x14005ae31; FUN_14009dae0((char *)(plVar11 + 0xe0),0,(longlong)ppuVar28,(uint *)ppuVar30); *(undefined8 *)(puVar24 + -8) = 0x14005ae39; FUN_14002e770((longlong)piVar19); pvVar8 = local_2988; local_29e0 = 0; if (local_d08 == (ulonglong **)0x0) { *(undefined8 *)(puVar24 + -8) = 0x14005af69; FUN_14002f1e0(local_29d0,(wchar_t *)PTR_u_ArrayWithExternalBuffer_is_unini_1401569a0, ppuVar28,ppuVar30); /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005af7c; _CxxThrowException(local_29d0,(ThrowInfo *)&DAT_140151b88); } if (local_cfc < 0) { /* WARNING: Subroutine does not return */ *(undefined **)(puVar24 + -8) = &UNK_14005af55; FUN_14002f590(); } local_d00 = 0; if (100 < local_2978) { *(undefined8 *)(puVar24 + -8) = 0x14005ae77; operator_delete__(pvVar8); } local_2a30 = &local_2a70; *(undefined8 *)(puVar24 + -8) = 0x14005ae89; FUN_140095270((longlong *)&local_2a70); if ((local_2a68 != (ulonglong *)0x0) && (local_2a5c < 0)) { /* WARNING: Subroutine does not return */ *(undefined8 *)(puVar24 + -8) = 0x14005af4f; FUN_14002f590(); } } } *(undefined8 *)(puVar24 + -8) = 0x14005af33; FUN_14009c470((longlong)(plVar11 + 0x18)); lVar25 = lVar25 + 1; } while (lVar25 < iVar27); } if ((local_2a80 != (undefined8 *)0x0) && (piVar19 = (int *)(local_2a80 + -2), *piVar19 == 0xdddd)) { *(undefined8 *)(puVar24 + -8) = 0x14005afdd; free(piVar19); } plVar11 = local_2a38; if ((local_2a38 != (longlong *)0x0) && (_Memory = local_2a38 + -2, (int)*_Memory == 0xdddd)) { *(undefined8 *)(puVar24 + -8) = 0x14005aff8; free(_Memory); plVar11 = extraout_RAX; } puVar6 = local_2628; if (100 < local_2618) { *(undefined8 *)(puVar24 + -8) = 0x14005b00f; operator_delete__(puVar6); plVar11 = extraout_RAX_00; } puVar16 = local_27d8; if (100 < local_27c8) { *(undefined8 *)(puVar24 + -8) = 0x14005b026; operator_delete__(puVar16); plVar11 = extraout_RAX_01; } *(undefined8 *)(puVar24 + -8) = 0x14005b038; return CONCAT71((int7)((ulonglong)plVar11 >> 8),1); }