
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */
/* WARNING: Enum "ChannelType": Some values do not have unique names */
/* WARNING: Enum "GravityType": Some values do not have unique names */
/* WARNING: Enum "DisposeType": Some values do not have unique names */
/* WARNING: Enum "PixelChannel": Some values do not have unique names */

ImageInfo * CloneImageInfo(ImageInfo *image_info)

{
  ImageInfo *image_info_00;
  Cache pvVar1;
  StringInfo *pSVar2;
  MagickBooleanType MVar3;
  int iVar4;
  PixelInfo *pPVar5;
  PixelInfo *pPVar6;
  byte bVar7;
  
  bVar7 = 0;
  image_info_00 = AcquireImageInfo();
  if (image_info != (ImageInfo *)0x0) {
    image_info_00->compression = image_info->compression;
    image_info_00->temporary = image_info->temporary;
    image_info_00->adjoin = image_info->adjoin;
    image_info_00->antialias = image_info->antialias;
    image_info_00->scene = image_info->scene;
    image_info_00->number_scenes = image_info->number_scenes;
    image_info_00->depth = image_info->depth;
    if (image_info->size != (char *)0x0) {
      CloneString(&image_info_00->size,image_info->size);
    }
    if (image_info->extract != (char *)0x0) {
      CloneString(&image_info_00->extract,image_info->extract);
    }
    if (image_info->scenes != (char *)0x0) {
      CloneString(&image_info_00->scenes,image_info->scenes);
    }
    if (image_info->page != (char *)0x0) {
      CloneString(&image_info_00->page,image_info->page);
    }
    image_info_00->interlace = image_info->interlace;
    image_info_00->endian = image_info->endian;
    image_info_00->units = image_info->units;
    image_info_00->quality = image_info->quality;
    if (image_info->sampling_factor != (char *)0x0) {
      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);
    }
    if (image_info->server_name != (char *)0x0) {
      CloneString(&image_info_00->server_name,image_info->server_name);
    }
    if (image_info->font != (char *)0x0) {
      CloneString(&image_info_00->font,image_info->font);
    }
    if (image_info->texture != (char *)0x0) {
      CloneString(&image_info_00->texture,image_info->texture);
    }
    if (image_info->density != (char *)0x0) {
      CloneString(&image_info_00->density,image_info->density);
    }
    MVar3 = image_info->dither;
    image_info_00->pointsize = image_info->pointsize;
    image_info_00->fuzz = image_info->fuzz;
    pPVar5 = &image_info->matte_color;
    pPVar6 = &image_info_00->matte_color;
    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);
      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);
    }
    pPVar5 = &image_info->background_color;
    pPVar6 = &image_info_00->background_color;
    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);
      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);
    }
    pPVar5 = &image_info->border_color;
    pPVar6 = &image_info_00->border_color;
    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);
      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);
    }
    pPVar5 = &image_info->transparent_color;
    pPVar6 = &image_info_00->transparent_color;
    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);
      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);
    }
    image_info_00->dither = MVar3;
    image_info_00->monochrome = image_info->monochrome;
    image_info_00->colorspace = image_info->colorspace;
    image_info_00->type = image_info->type;
    image_info_00->orientation = image_info->orientation;
    image_info_00->ping = image_info->ping;
    image_info_00->verbose = image_info->verbose;
    image_info_00->progress_monitor = image_info->progress_monitor;
    image_info_00->client_data = image_info->client_data;
    image_info_00->cache = image_info->cache;
    if (image_info->cache != (Cache)0x0) {
      pvVar1 = ReferencePixelCache(image_info->cache);
      image_info_00->cache = pvVar1;
    }
    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {
      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);
      image_info_00->profile = pSVar2;
    }
    SetImageInfoFile(image_info_00,image_info->file);
    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);
    image_info_00->stream = image_info->stream;
    image_info_00->custom_stream = image_info->custom_stream;
    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);
    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);
    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);
    image_info_00->channel = image_info->channel;
    CloneImageOptions(image_info_00,image_info);
    MVar3 = IsEventLogging();
    image_info_00->debug = MVar3;
    image_info_00->signature = image_info->signature;
  }
  return image_info_00;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 * CloneImageInfo(undefined4 *param_1)

{
  undefined4 *puVar1;
  undefined4 uVar2;
  int iVar3;
  undefined4 *puVar4;
  undefined4 *puVar5;
  byte bVar6;
  
  bVar6 = 0;
  puVar1 = (undefined4 *)AcquireImageInfo();
  if (param_1 != (undefined4 *)0x0) {
    *puVar1 = *param_1;
    puVar1[2] = param_1[2];
    puVar1[3] = param_1[3];
    puVar1[5] = param_1[5];
    puVar1[10] = param_1[10];
    puVar1[0xb] = param_1[0xb];
    puVar1[0xc] = param_1[0xc];
    if (param_1[6] != 0) {
      CloneString(puVar1 + 6,param_1[6]);
    }
    if (param_1[7] != 0) {
      CloneString(puVar1 + 7,param_1[7]);
    }
    if (param_1[9] != 0) {
      CloneString(puVar1 + 9,param_1[9]);
    }
    if (param_1[8] != 0) {
      CloneString(puVar1 + 8,param_1[8]);
    }
    puVar1[0xd] = param_1[0xd];
    puVar1[0xe] = param_1[0xe];
    puVar1[0xf] = param_1[0xf];
    puVar1[0x10] = param_1[0x10];
    if (param_1[0x11] != 0) {
      CloneString(puVar1 + 0x11,param_1[0x11]);
    }
    if (param_1[0x12] != 0) {
      CloneString(puVar1 + 0x12,param_1[0x12]);
    }
    if (param_1[0x13] != 0) {
      CloneString(puVar1 + 0x13,param_1[0x13]);
    }
    if (param_1[0x14] != 0) {
      CloneString(puVar1 + 0x14,param_1[0x14]);
    }
    if (param_1[0x15] != 0) {
      CloneString(puVar1 + 0x15,param_1[0x15]);
    }
    uVar2 = param_1[0x6a];
    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);
    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);
    puVar4 = param_1 + 0xc7f;
    puVar5 = puVar1 + 0xc7f;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x2e;
    puVar5 = puVar1 + 0x2e;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x42;
    puVar5 = puVar1 + 0x42;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x56;
    puVar5 = puVar1 + 0x56;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar1[0x6a] = uVar2;
    puVar1[0x6b] = param_1[0x6b];
    puVar1[0x6c] = param_1[0x6c];
    puVar1[0x6e] = param_1[0x6e];
    puVar1[1] = param_1[1];
    puVar1[0x6f] = param_1[0x6f];
    puVar1[0x70] = param_1[0x70];
    puVar1[0x75] = param_1[0x75];
    puVar1[0x76] = param_1[0x76];
    puVar1[0x77] = param_1[0x77];
    if (param_1[0x77] != 0) {
      uVar2 = FUN_00053ba0(param_1[0x77]);
      puVar1[0x77] = uVar2;
    }
    if (param_1[0x73] != 0) {
      uVar2 = CloneStringInfo(param_1[0x73]);
      puVar1[0x73] = uVar2;
    }
    SetImageInfoFile(puVar1,param_1[0x79]);
    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);
    puVar1[0x78] = param_1[0x78];
    puVar1[0xc7e] = param_1[0xc7e];
    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);
    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);
    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);
    puVar1[0x71] = param_1[0x71];
    CloneImageOptions(puVar1,param_1);
    uVar2 = IsEventLogging();
    puVar1[0xc7c] = uVar2;
    puVar1[0xc7d] = param_1[0xc7d];
  }
  return puVar1;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00038830
ADD EBX,0x2f5dc7
SUB ESP,0x1c
MOV EBP,dword ptr [ESP + 0x30]
CALL 0x000323f0
MOV EDX,EAX
TEST EBP,EBP
JZ 0x000e35a3
MOV EAX,dword ptr [EBP]
MOV dword ptr [EDX],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EDX + 0x8],EAX
MOV EAX,dword ptr [EBP + 0xc]
MOV dword ptr [EDX + 0xc],EAX
MOV EAX,dword ptr [EBP + 0x14]
MOV dword ptr [EDX + 0x14],EAX
MOV EAX,dword ptr [EBP + 0x28]
MOV dword ptr [EDX + 0x28],EAX
MOV EAX,dword ptr [EBP + 0x2c]
MOV dword ptr [EDX + 0x2c],EAX
MOV EAX,dword ptr [EBP + 0x30]
MOV dword ptr [EDX + 0x30],EAX
MOV EAX,dword ptr [EBP + 0x18]
TEST EAX,EAX
JZ 0x000e329d
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x18]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x1c]
TEST EAX,EAX
JZ 0x000e32bc
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x1c]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x24]
TEST EAX,EAX
JZ 0x000e32db
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x24]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x20]
TEST EAX,EAX
JZ 0x000e32fa
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x20]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x34]
MOV dword ptr [EDX + 0x34],EAX
MOV EAX,dword ptr [EBP + 0x38]
MOV dword ptr [EDX + 0x38],EAX
MOV EAX,dword ptr [EBP + 0x3c]
MOV dword ptr [EDX + 0x3c],EAX
MOV EAX,dword ptr [EBP + 0x40]
MOV dword ptr [EDX + 0x40],EAX
MOV EAX,dword ptr [EBP + 0x44]
TEST EAX,EAX
JZ 0x000e3331
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x44]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x48]
TEST EAX,EAX
JZ 0x000e3350
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x48]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x4c]
TEST EAX,EAX
JZ 0x000e336f
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x4c]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x50]
TEST EAX,EAX
JZ 0x000e338e
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x50]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
MOV EAX,dword ptr [EBP + 0x54]
TEST EAX,EAX
JZ 0x000e33ad
SUB ESP,0x8
PUSH EAX
LEA EAX,[EDX + 0x54]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00031990
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
FLD qword ptr [EBP + 0x58]
LEA EDI,[EDX + 0x31fc]
MOV ECX,0x14
MOV EAX,dword ptr [EBP + 0x1a8]
FSTP qword ptr [EDX + 0x58]
LEA ESI,[EBP + 0x31fc]
FLD qword ptr [EBP + 0x60]
FSTP qword ptr [EDX + 0x60]
MOVSD.REP ES:EDI,ESI
LEA EDI,[EDX + 0xb8]
MOV ECX,0x14
LEA ESI,[EBP + 0xb8]
MOVSD.REP ES:EDI,ESI
LEA EDI,[EDX + 0x108]
MOV ECX,0x14
LEA ESI,[EBP + 0x108]
MOVSD.REP ES:EDI,ESI
LEA EDI,[EDX + 0x158]
MOV ECX,0x14
LEA ESI,[EBP + 0x158]
MOVSD.REP ES:EDI,ESI
MOV dword ptr [EDX + 0x1a8],EAX
MOV EAX,dword ptr [EBP + 0x1ac]
MOV dword ptr [EDX + 0x1ac],EAX
MOV EAX,dword ptr [EBP + 0x1b0]
MOV dword ptr [EDX + 0x1b0],EAX
MOV EAX,dword ptr [EBP + 0x1b8]
MOV dword ptr [EDX + 0x1b8],EAX
MOV EAX,dword ptr [EBP + 0x4]
MOV dword ptr [EDX + 0x4],EAX
MOV EAX,dword ptr [EBP + 0x1bc]
MOV dword ptr [EDX + 0x1bc],EAX
MOV EAX,dword ptr [EBP + 0x1c0]
MOV dword ptr [EDX + 0x1c0],EAX
MOV EAX,dword ptr [EBP + 0x1d4]
MOV dword ptr [EDX + 0x1d4],EAX
MOV EAX,dword ptr [EBP + 0x1d8]
MOV dword ptr [EDX + 0x1d8],EAX
MOV EAX,dword ptr [EBP + 0x1dc]
MOV dword ptr [EDX + 0x1dc],EAX
MOV EAX,dword ptr [EBP + 0x1dc]
TEST EAX,EAX
JZ 0x000e349b
MOV dword ptr [ESP + 0xc],EDX
SUB ESP,0xc
PUSH EAX
CALL 0x00053ba0
MOV EDX,dword ptr [ESP + 0x1c]
ADD ESP,0x10
MOV dword ptr [EDX + 0x1dc],EAX
MOV EAX,dword ptr [EBP + 0x1cc]
TEST EAX,EAX
JZ 0x000e34bf
MOV dword ptr [ESP + 0xc],EDX
SUB ESP,0xc
PUSH EAX
CALL 0x00033ad0
MOV EDX,dword ptr [ESP + 0x1c]
ADD ESP,0x10
MOV dword ptr [EDX + 0x1cc],EAX
SUB ESP,0x8
PUSH dword ptr [EBP + 0x1e4]
PUSH EDX
MOV dword ptr [ESP + 0x1c],EDX
CALL 0x00031880
ADD ESP,0xc
PUSH dword ptr [EBP + 0x1ec]
PUSH dword ptr [EBP + 0x1e8]
MOV EDX,dword ptr [ESP + 0x18]
PUSH EDX
MOV dword ptr [ESP + 0x1c],EDX
CALL 0x00030b50
MOV EAX,dword ptr [EBP + 0x1e0]
MOV EDX,dword ptr [ESP + 0x1c]
ADD ESP,0xc
MOV dword ptr [EDX + 0x1e0],EAX
MOV EAX,dword ptr [EBP + 0x31f8]
MOV dword ptr [EDX + 0x31f8],EAX
LEA EAX,[EBP + 0x1f0]
PUSH 0x1000
PUSH EAX
LEA EAX,[EDX + 0x1f0]
MOV dword ptr [ESP + 0x18],EDX
PUSH EAX
CALL 0x00030b70
LEA EAX,[EBP + 0x11f0]
ADD ESP,0xc
PUSH 0x1000
PUSH EAX
MOV EDX,dword ptr [ESP + 0x18]
LEA EAX,[EDX + 0x11f0]
PUSH EAX
CALL 0x00030b70
LEA EAX,[EBP + 0x21f0]
ADD ESP,0xc
PUSH 0x1000
PUSH EAX
MOV EDX,dword ptr [ESP + 0x18]
LEA EAX,[EDX + 0x21f0]
PUSH EAX
CALL 0x00030b70
MOV EDX,dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [EBP + 0x1c4]
MOV dword ptr [EDX + 0x1c4],EAX
POP EAX
POP ECX
PUSH EBP
PUSH EDX
MOV dword ptr [ESP + 0x1c],EDX
CALL 0x00032a10
ADD ESP,0x10
CALL 0x00030d70
MOV EDX,dword ptr [ESP + 0xc]
MOV dword ptr [EDX + 0x31f0],EAX
MOV EAX,dword ptr [EBP + 0x31f4]
MOV dword ptr [EDX + 0x31f4],EAX
ADD ESP,0x1c
MOV EAX,EDX
POP EBX
POP ESI
POP EDI
POP EBP
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 * CloneImageInfo(undefined4 *param_1)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}\n\n" comment (function_definition "undefined4 * CloneImageInfo(undefined4 *param_1)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" type_identifier (pointer_declarator "* CloneImageInfo(undefined4 *param_1)" * (function_declarator "CloneImageInfo(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) )))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "byte bVar6;" type_identifier identifier ;) (expression_statement "bVar6 = 0;" (assignment_expression "bVar6 = 0" identifier = number_literal) ;) (expression_statement "puVar1 = (undefined4 *)AcquireImageInfo();" (assignment_expression "puVar1 = (undefined4 *)AcquireImageInfo()" identifier = (cast_expression "(undefined4 *)AcquireImageInfo()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "AcquireImageInfo()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" { (expression_statement "*puVar1 = *param_1;" (assignment_expression "*puVar1 = *param_1" (pointer_expression "*puVar1" * identifier) = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "puVar1[2] = param_1[2];" (assignment_expression "puVar1[2] = param_1[2]" (subscript_expression "puVar1[2]" identifier [ number_literal ]) = (subscript_expression "param_1[2]" identifier [ number_literal ])) ;) (expression_statement "puVar1[3] = param_1[3];" (assignment_expression "puVar1[3] = param_1[3]" (subscript_expression "puVar1[3]" identifier [ number_literal ]) = (subscript_expression "param_1[3]" identifier [ number_literal ])) ;) (expression_statement "puVar1[5] = param_1[5];" (assignment_expression "puVar1[5] = param_1[5]" (subscript_expression "puVar1[5]" identifier [ number_literal ]) = (subscript_expression "param_1[5]" identifier [ number_literal ])) ;) (expression_statement "puVar1[10] = param_1[10];" (assignment_expression "puVar1[10] = param_1[10]" (subscript_expression "puVar1[10]" identifier [ number_literal ]) = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xb] = param_1[0xb];" (assignment_expression "puVar1[0xb] = param_1[0xb]" (subscript_expression "puVar1[0xb]" identifier [ number_literal ]) = (subscript_expression "param_1[0xb]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xc] = param_1[0xc];" (assignment_expression "puVar1[0xc] = param_1[0xc]" (subscript_expression "puVar1[0xc]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc]" identifier [ number_literal ])) ;) (if_statement "if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }" if (parenthesized_expression "(param_1[6] != 0)" ( (binary_expression "param_1[6] != 0" (subscript_expression "param_1[6]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 6,param_1[6]);\n    }" { (expression_statement "CloneString(puVar1 + 6,param_1[6]);" (call_expression "CloneString(puVar1 + 6,param_1[6])" identifier (argument_list "(puVar1 + 6,param_1[6])" ( (binary_expression "puVar1 + 6" identifier + number_literal) , (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }" if (parenthesized_expression "(param_1[7] != 0)" ( (binary_expression "param_1[7] != 0" (subscript_expression "param_1[7]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 7,param_1[7]);\n    }" { (expression_statement "CloneString(puVar1 + 7,param_1[7]);" (call_expression "CloneString(puVar1 + 7,param_1[7])" identifier (argument_list "(puVar1 + 7,param_1[7])" ( (binary_expression "puVar1 + 7" identifier + number_literal) , (subscript_expression "param_1[7]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }" if (parenthesized_expression "(param_1[9] != 0)" ( (binary_expression "param_1[9] != 0" (subscript_expression "param_1[9]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 9,param_1[9]);\n    }" { (expression_statement "CloneString(puVar1 + 9,param_1[9]);" (call_expression "CloneString(puVar1 + 9,param_1[9])" identifier (argument_list "(puVar1 + 9,param_1[9])" ( (binary_expression "puVar1 + 9" identifier + number_literal) , (subscript_expression "param_1[9]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }" if (parenthesized_expression "(param_1[8] != 0)" ( (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 8,param_1[8]);\n    }" { (expression_statement "CloneString(puVar1 + 8,param_1[8]);" (call_expression "CloneString(puVar1 + 8,param_1[8])" identifier (argument_list "(puVar1 + 8,param_1[8])" ( (binary_expression "puVar1 + 8" identifier + number_literal) , (subscript_expression "param_1[8]" identifier [ number_literal ]) ))) ;) })) (expression_statement "puVar1[0xd] = param_1[0xd];" (assignment_expression "puVar1[0xd] = param_1[0xd]" (subscript_expression "puVar1[0xd]" identifier [ number_literal ]) = (subscript_expression "param_1[0xd]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xe] = param_1[0xe];" (assignment_expression "puVar1[0xe] = param_1[0xe]" (subscript_expression "puVar1[0xe]" identifier [ number_literal ]) = (subscript_expression "param_1[0xe]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xf] = param_1[0xf];" (assignment_expression "puVar1[0xf] = param_1[0xf]" (subscript_expression "puVar1[0xf]" identifier [ number_literal ]) = (subscript_expression "param_1[0xf]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x10] = param_1[0x10];" (assignment_expression "puVar1[0x10] = param_1[0x10]" (subscript_expression "puVar1[0x10]" identifier [ number_literal ]) = (subscript_expression "param_1[0x10]" identifier [ number_literal ])) ;) (if_statement "if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" if (parenthesized_expression "(param_1[0x11] != 0)" ( (binary_expression "param_1[0x11] != 0" (subscript_expression "param_1[0x11]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" { (expression_statement "CloneString(puVar1 + 0x11,param_1[0x11]);" (call_expression "CloneString(puVar1 + 0x11,param_1[0x11])" identifier (argument_list "(puVar1 + 0x11,param_1[0x11])" ( (binary_expression "puVar1 + 0x11" identifier + number_literal) , (subscript_expression "param_1[0x11]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" if (parenthesized_expression "(param_1[0x12] != 0)" ( (binary_expression "param_1[0x12] != 0" (subscript_expression "param_1[0x12]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" { (expression_statement "CloneString(puVar1 + 0x12,param_1[0x12]);" (call_expression "CloneString(puVar1 + 0x12,param_1[0x12])" identifier (argument_list "(puVar1 + 0x12,param_1[0x12])" ( (binary_expression "puVar1 + 0x12" identifier + number_literal) , (subscript_expression "param_1[0x12]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" if (parenthesized_expression "(param_1[0x13] != 0)" ( (binary_expression "param_1[0x13] != 0" (subscript_expression "param_1[0x13]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" { (expression_statement "CloneString(puVar1 + 0x13,param_1[0x13]);" (call_expression "CloneString(puVar1 + 0x13,param_1[0x13])" identifier (argument_list "(puVar1 + 0x13,param_1[0x13])" ( (binary_expression "puVar1 + 0x13" identifier + number_literal) , (subscript_expression "param_1[0x13]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" if (parenthesized_expression "(param_1[0x14] != 0)" ( (binary_expression "param_1[0x14] != 0" (subscript_expression "param_1[0x14]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" { (expression_statement "CloneString(puVar1 + 0x14,param_1[0x14]);" (call_expression "CloneString(puVar1 + 0x14,param_1[0x14])" identifier (argument_list "(puVar1 + 0x14,param_1[0x14])" ( (binary_expression "puVar1 + 0x14" identifier + number_literal) , (subscript_expression "param_1[0x14]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" if (parenthesized_expression "(param_1[0x15] != 0)" ( (binary_expression "param_1[0x15] != 0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" { (expression_statement "CloneString(puVar1 + 0x15,param_1[0x15]);" (call_expression "CloneString(puVar1 + 0x15,param_1[0x15])" identifier (argument_list "(puVar1 + 0x15,param_1[0x15])" ( (binary_expression "puVar1 + 0x15" identifier + number_literal) , (subscript_expression "param_1[0x15]" identifier [ number_literal ]) ))) ;) })) (expression_statement "uVar2 = param_1[0x6a];" (assignment_expression "uVar2 = param_1[0x6a]" identifier = (subscript_expression "param_1[0x6a]" identifier [ number_literal ])) ;) (expression_statement "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);" (assignment_expression "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16)" (pointer_expression "*(undefined8 *)(puVar1 + 0x16)" * (cast_expression "(undefined8 *)(puVar1 + 0x16)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x16)" ( (binary_expression "puVar1 + 0x16" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(param_1 + 0x16)" * (cast_expression "(undefined8 *)(param_1 + 0x16)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x16)" ( (binary_expression "param_1 + 0x16" identifier + number_literal) ))))) ;) (expression_statement "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);" (assignment_expression "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18)" (pointer_expression "*(undefined8 *)(puVar1 + 0x18)" * (cast_expression "(undefined8 *)(puVar1 + 0x18)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x18)" ( (binary_expression "puVar1 + 0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(param_1 + 0x18)" * (cast_expression "(undefined8 *)(param_1 + 0x18)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar4 = param_1 + 0xc7f;" (assignment_expression "puVar4 = param_1 + 0xc7f" identifier = (binary_expression "param_1 + 0xc7f" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0xc7f;" (assignment_expression "puVar5 = puVar1 + 0xc7f" identifier = (binary_expression "puVar1 + 0xc7f" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x2e;" (assignment_expression "puVar4 = param_1 + 0x2e" identifier = (binary_expression "param_1 + 0x2e" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x2e;" (assignment_expression "puVar5 = puVar1 + 0x2e" identifier = (binary_expression "puVar1 + 0x2e" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x42;" (assignment_expression "puVar4 = param_1 + 0x42" identifier = (binary_expression "param_1 + 0x42" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x42;" (assignment_expression "puVar5 = puVar1 + 0x42" identifier = (binary_expression "puVar1 + 0x42" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x56;" (assignment_expression "puVar4 = param_1 + 0x56" identifier = (binary_expression "param_1 + 0x56" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x56;" (assignment_expression "puVar5 = puVar1 + 0x56" identifier = (binary_expression "puVar1 + 0x56" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar1[0x6a] = uVar2;" (assignment_expression "puVar1[0x6a] = uVar2" (subscript_expression "puVar1[0x6a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x6b] = param_1[0x6b];" (assignment_expression "puVar1[0x6b] = param_1[0x6b]" (subscript_expression "puVar1[0x6b]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6b]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6c] = param_1[0x6c];" (assignment_expression "puVar1[0x6c] = param_1[0x6c]" (subscript_expression "puVar1[0x6c]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6c]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6e] = param_1[0x6e];" (assignment_expression "puVar1[0x6e] = param_1[0x6e]" (subscript_expression "puVar1[0x6e]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6e]" identifier [ number_literal ])) ;) (expression_statement "puVar1[1] = param_1[1];" (assignment_expression "puVar1[1] = param_1[1]" (subscript_expression "puVar1[1]" identifier [ number_literal ]) = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6f] = param_1[0x6f];" (assignment_expression "puVar1[0x6f] = param_1[0x6f]" (subscript_expression "puVar1[0x6f]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6f]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x70] = param_1[0x70];" (assignment_expression "puVar1[0x70] = param_1[0x70]" (subscript_expression "puVar1[0x70]" identifier [ number_literal ]) = (subscript_expression "param_1[0x70]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x75] = param_1[0x75];" (assignment_expression "puVar1[0x75] = param_1[0x75]" (subscript_expression "puVar1[0x75]" identifier [ number_literal ]) = (subscript_expression "param_1[0x75]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x76] = param_1[0x76];" (assignment_expression "puVar1[0x76] = param_1[0x76]" (subscript_expression "puVar1[0x76]" identifier [ number_literal ]) = (subscript_expression "param_1[0x76]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x77] = param_1[0x77];" (assignment_expression "puVar1[0x77] = param_1[0x77]" (subscript_expression "puVar1[0x77]" identifier [ number_literal ]) = (subscript_expression "param_1[0x77]" identifier [ number_literal ])) ;) (if_statement "if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" if (parenthesized_expression "(param_1[0x77] != 0)" ( (binary_expression "param_1[0x77] != 0" (subscript_expression "param_1[0x77]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" { (expression_statement "uVar2 = FUN_00053ba0(param_1[0x77]);" (assignment_expression "uVar2 = FUN_00053ba0(param_1[0x77])" identifier = (call_expression "FUN_00053ba0(param_1[0x77])" identifier (argument_list "(param_1[0x77])" ( (subscript_expression "param_1[0x77]" identifier [ number_literal ]) )))) ;) (expression_statement "puVar1[0x77] = uVar2;" (assignment_expression "puVar1[0x77] = uVar2" (subscript_expression "puVar1[0x77]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" if (parenthesized_expression "(param_1[0x73] != 0)" ( (binary_expression "param_1[0x73] != 0" (subscript_expression "param_1[0x73]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" { (expression_statement "uVar2 = CloneStringInfo(param_1[0x73]);" (assignment_expression "uVar2 = CloneStringInfo(param_1[0x73])" identifier = (call_expression "CloneStringInfo(param_1[0x73])" identifier (argument_list "(param_1[0x73])" ( (subscript_expression "param_1[0x73]" identifier [ number_literal ]) )))) ;) (expression_statement "puVar1[0x73] = uVar2;" (assignment_expression "puVar1[0x73] = uVar2" (subscript_expression "puVar1[0x73]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "SetImageInfoFile(puVar1,param_1[0x79]);" (call_expression "SetImageInfoFile(puVar1,param_1[0x79])" identifier (argument_list "(puVar1,param_1[0x79])" ( identifier , (subscript_expression "param_1[0x79]" identifier [ number_literal ]) ))) ;) (expression_statement "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);" (call_expression "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b])" identifier (argument_list "(puVar1,param_1[0x7a],param_1[0x7b])" ( identifier , (subscript_expression "param_1[0x7a]" identifier [ number_literal ]) , (subscript_expression "param_1[0x7b]" identifier [ number_literal ]) ))) ;) (expression_statement "puVar1[0x78] = param_1[0x78];" (assignment_expression "puVar1[0x78] = param_1[0x78]" (subscript_expression "puVar1[0x78]" identifier [ number_literal ]) = (subscript_expression "param_1[0x78]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xc7e] = param_1[0xc7e];" (assignment_expression "puVar1[0xc7e] = param_1[0xc7e]" (subscript_expression "puVar1[0xc7e]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc7e]" identifier [ number_literal ])) ;) (expression_statement "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" identifier (argument_list "(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" ( (binary_expression "puVar1 + 0x7c" identifier + number_literal) , (binary_expression "param_1 + 0x7c" identifier + number_literal) , number_literal ))) ;) (expression_statement "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" identifier (argument_list "(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" ( (binary_expression "puVar1 + 0x47c" identifier + number_literal) , (binary_expression "param_1 + 0x47c" identifier + number_literal) , number_literal ))) ;) (expression_statement "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" identifier (argument_list "(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" ( (binary_expression "puVar1 + 0x87c" identifier + number_literal) , (binary_expression "param_1 + 0x87c" identifier + number_literal) , number_literal ))) ;) (expression_statement "puVar1[0x71] = param_1[0x71];" (assignment_expression "puVar1[0x71] = param_1[0x71]" (subscript_expression "puVar1[0x71]" identifier [ number_literal ]) = (subscript_expression "param_1[0x71]" identifier [ number_literal ])) ;) (expression_statement "CloneImageOptions(puVar1,param_1);" (call_expression "CloneImageOptions(puVar1,param_1)" identifier (argument_list "(puVar1,param_1)" ( identifier , identifier ))) ;) (expression_statement "uVar2 = IsEventLogging();" (assignment_expression "uVar2 = IsEventLogging()" identifier = (call_expression "IsEventLogging()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar1[0xc7c] = uVar2;" (assignment_expression "puVar1[0xc7c] = uVar2" (subscript_expression "puVar1[0xc7c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0xc7d] = param_1[0xc7d];" (assignment_expression "puVar1[0xc7d] = param_1[0xc7d]" (subscript_expression "puVar1[0xc7d]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc7d]" identifier [ number_literal ])) ;) })) (return_statement "return puVar1;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n/* WARNING: Enum "ChannelType": Some values do not have unique names */\n/* WARNING: Enum "GravityType": Some values do not have unique names */\n/* WARNING: Enum "DisposeType": Some values do not have unique names */\n/* WARNING: Enum "PixelChannel": Some values do not have unique names */\n\nImageInfo * CloneImageInfo(ImageInfo *image_info)\n\n{\n  ImageInfo *image_info_00;\n  Cache pvVar1;\n  StringInfo *pSVar2;\n  MagickBooleanType MVar3;\n  int iVar4;\n  PixelInfo *pPVar5;\n  PixelInfo *pPVar6;\n  byte bVar7;\n  \n  bVar7 = 0;\n  image_info_00 = AcquireImageInfo();\n  if (image_info != (ImageInfo *)0x0) {\n    image_info_00->compression = image_info->compression;\n    image_info_00->temporary = image_info->temporary;\n    image_info_00->adjoin = image_info->adjoin;\n    image_info_00->antialias = image_info->antialias;\n    image_info_00->scene = image_info->scene;\n    image_info_00->number_scenes = image_info->number_scenes;\n    image_info_00->depth = image_info->depth;\n    if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }\n    if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }\n    if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }\n    if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }\n    image_info_00->interlace = image_info->interlace;\n    image_info_00->endian = image_info->endian;\n    image_info_00->units = image_info->units;\n    image_info_00->quality = image_info->quality;\n    if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }\n    if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }\n    if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }\n    if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }\n    if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }\n    MVar3 = image_info->dither;\n    image_info_00->pointsize = image_info->pointsize;\n    image_info_00->fuzz = image_info->fuzz;\n    pPVar5 = &image_info->matte_color;\n    pPVar6 = &image_info_00->matte_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->background_color;\n    pPVar6 = &image_info_00->background_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->border_color;\n    pPVar6 = &image_info_00->border_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->transparent_color;\n    pPVar6 = &image_info_00->transparent_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    image_info_00->dither = MVar3;\n    image_info_00->monochrome = image_info->monochrome;\n    image_info_00->colorspace = image_info->colorspace;\n    image_info_00->type = image_info->type;\n    image_info_00->orientation = image_info->orientation;\n    image_info_00->ping = image_info->ping;\n    image_info_00->verbose = image_info->verbose;\n    image_info_00->progress_monitor = image_info->progress_monitor;\n    image_info_00->client_data = image_info->client_data;\n    image_info_00->cache = image_info->cache;\n    if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }\n    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }\n    SetImageInfoFile(image_info_00,image_info->file);\n    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);\n    image_info_00->stream = image_info->stream;\n    image_info_00->custom_stream = image_info->custom_stream;\n    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);\n    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);\n    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);\n    image_info_00->channel = image_info->channel;\n    CloneImageOptions(image_info_00,image_info);\n    MVar3 = IsEventLogging();\n    image_info_00->debug = MVar3;\n    image_info_00->signature = image_info->signature;\n  }\n  return image_info_00;\n}\n\n" comment comment comment comment comment comment (function_definition "ImageInfo * CloneImageInfo(ImageInfo *image_info)\n\n{\n  ImageInfo *image_info_00;\n  Cache pvVar1;\n  StringInfo *pSVar2;\n  MagickBooleanType MVar3;\n  int iVar4;\n  PixelInfo *pPVar5;\n  PixelInfo *pPVar6;\n  byte bVar7;\n  \n  bVar7 = 0;\n  image_info_00 = AcquireImageInfo();\n  if (image_info != (ImageInfo *)0x0) {\n    image_info_00->compression = image_info->compression;\n    image_info_00->temporary = image_info->temporary;\n    image_info_00->adjoin = image_info->adjoin;\n    image_info_00->antialias = image_info->antialias;\n    image_info_00->scene = image_info->scene;\n    image_info_00->number_scenes = image_info->number_scenes;\n    image_info_00->depth = image_info->depth;\n    if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }\n    if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }\n    if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }\n    if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }\n    image_info_00->interlace = image_info->interlace;\n    image_info_00->endian = image_info->endian;\n    image_info_00->units = image_info->units;\n    image_info_00->quality = image_info->quality;\n    if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }\n    if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }\n    if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }\n    if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }\n    if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }\n    MVar3 = image_info->dither;\n    image_info_00->pointsize = image_info->pointsize;\n    image_info_00->fuzz = image_info->fuzz;\n    pPVar5 = &image_info->matte_color;\n    pPVar6 = &image_info_00->matte_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->background_color;\n    pPVar6 = &image_info_00->background_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->border_color;\n    pPVar6 = &image_info_00->border_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->transparent_color;\n    pPVar6 = &image_info_00->transparent_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    image_info_00->dither = MVar3;\n    image_info_00->monochrome = image_info->monochrome;\n    image_info_00->colorspace = image_info->colorspace;\n    image_info_00->type = image_info->type;\n    image_info_00->orientation = image_info->orientation;\n    image_info_00->ping = image_info->ping;\n    image_info_00->verbose = image_info->verbose;\n    image_info_00->progress_monitor = image_info->progress_monitor;\n    image_info_00->client_data = image_info->client_data;\n    image_info_00->cache = image_info->cache;\n    if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }\n    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }\n    SetImageInfoFile(image_info_00,image_info->file);\n    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);\n    image_info_00->stream = image_info->stream;\n    image_info_00->custom_stream = image_info->custom_stream;\n    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);\n    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);\n    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);\n    image_info_00->channel = image_info->channel;\n    CloneImageOptions(image_info_00,image_info);\n    MVar3 = IsEventLogging();\n    image_info_00->debug = MVar3;\n    image_info_00->signature = image_info->signature;\n  }\n  return image_info_00;\n}" type_identifier (pointer_declarator "* CloneImageInfo(ImageInfo *image_info)" * (function_declarator "CloneImageInfo(ImageInfo *image_info)" identifier (parameter_list "(ImageInfo *image_info)" ( (parameter_declaration "ImageInfo *image_info" type_identifier (pointer_declarator "*image_info" * identifier)) )))) (compound_statement "{\n  ImageInfo *image_info_00;\n  Cache pvVar1;\n  StringInfo *pSVar2;\n  MagickBooleanType MVar3;\n  int iVar4;\n  PixelInfo *pPVar5;\n  PixelInfo *pPVar6;\n  byte bVar7;\n  \n  bVar7 = 0;\n  image_info_00 = AcquireImageInfo();\n  if (image_info != (ImageInfo *)0x0) {\n    image_info_00->compression = image_info->compression;\n    image_info_00->temporary = image_info->temporary;\n    image_info_00->adjoin = image_info->adjoin;\n    image_info_00->antialias = image_info->antialias;\n    image_info_00->scene = image_info->scene;\n    image_info_00->number_scenes = image_info->number_scenes;\n    image_info_00->depth = image_info->depth;\n    if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }\n    if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }\n    if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }\n    if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }\n    image_info_00->interlace = image_info->interlace;\n    image_info_00->endian = image_info->endian;\n    image_info_00->units = image_info->units;\n    image_info_00->quality = image_info->quality;\n    if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }\n    if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }\n    if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }\n    if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }\n    if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }\n    MVar3 = image_info->dither;\n    image_info_00->pointsize = image_info->pointsize;\n    image_info_00->fuzz = image_info->fuzz;\n    pPVar5 = &image_info->matte_color;\n    pPVar6 = &image_info_00->matte_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->background_color;\n    pPVar6 = &image_info_00->background_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->border_color;\n    pPVar6 = &image_info_00->border_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->transparent_color;\n    pPVar6 = &image_info_00->transparent_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    image_info_00->dither = MVar3;\n    image_info_00->monochrome = image_info->monochrome;\n    image_info_00->colorspace = image_info->colorspace;\n    image_info_00->type = image_info->type;\n    image_info_00->orientation = image_info->orientation;\n    image_info_00->ping = image_info->ping;\n    image_info_00->verbose = image_info->verbose;\n    image_info_00->progress_monitor = image_info->progress_monitor;\n    image_info_00->client_data = image_info->client_data;\n    image_info_00->cache = image_info->cache;\n    if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }\n    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }\n    SetImageInfoFile(image_info_00,image_info->file);\n    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);\n    image_info_00->stream = image_info->stream;\n    image_info_00->custom_stream = image_info->custom_stream;\n    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);\n    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);\n    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);\n    image_info_00->channel = image_info->channel;\n    CloneImageOptions(image_info_00,image_info);\n    MVar3 = IsEventLogging();\n    image_info_00->debug = MVar3;\n    image_info_00->signature = image_info->signature;\n  }\n  return image_info_00;\n}" { (declaration "ImageInfo *image_info_00;" type_identifier (pointer_declarator "*image_info_00" * identifier) ;) (declaration "Cache pvVar1;" type_identifier identifier ;) (declaration "StringInfo *pSVar2;" type_identifier (pointer_declarator "*pSVar2" * identifier) ;) (declaration "MagickBooleanType MVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "PixelInfo *pPVar5;" type_identifier (pointer_declarator "*pPVar5" * identifier) ;) (declaration "PixelInfo *pPVar6;" type_identifier (pointer_declarator "*pPVar6" * identifier) ;) (declaration "byte bVar7;" type_identifier identifier ;) (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" identifier = number_literal) ;) (expression_statement "image_info_00 = AcquireImageInfo();" (assignment_expression "image_info_00 = AcquireImageInfo()" identifier = (call_expression "AcquireImageInfo()" identifier (argument_list "()" ( )))) ;) (if_statement "if (image_info != (ImageInfo *)0x0) {\n    image_info_00->compression = image_info->compression;\n    image_info_00->temporary = image_info->temporary;\n    image_info_00->adjoin = image_info->adjoin;\n    image_info_00->antialias = image_info->antialias;\n    image_info_00->scene = image_info->scene;\n    image_info_00->number_scenes = image_info->number_scenes;\n    image_info_00->depth = image_info->depth;\n    if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }\n    if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }\n    if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }\n    if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }\n    image_info_00->interlace = image_info->interlace;\n    image_info_00->endian = image_info->endian;\n    image_info_00->units = image_info->units;\n    image_info_00->quality = image_info->quality;\n    if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }\n    if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }\n    if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }\n    if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }\n    if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }\n    MVar3 = image_info->dither;\n    image_info_00->pointsize = image_info->pointsize;\n    image_info_00->fuzz = image_info->fuzz;\n    pPVar5 = &image_info->matte_color;\n    pPVar6 = &image_info_00->matte_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->background_color;\n    pPVar6 = &image_info_00->background_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->border_color;\n    pPVar6 = &image_info_00->border_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->transparent_color;\n    pPVar6 = &image_info_00->transparent_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    image_info_00->dither = MVar3;\n    image_info_00->monochrome = image_info->monochrome;\n    image_info_00->colorspace = image_info->colorspace;\n    image_info_00->type = image_info->type;\n    image_info_00->orientation = image_info->orientation;\n    image_info_00->ping = image_info->ping;\n    image_info_00->verbose = image_info->verbose;\n    image_info_00->progress_monitor = image_info->progress_monitor;\n    image_info_00->client_data = image_info->client_data;\n    image_info_00->cache = image_info->cache;\n    if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }\n    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }\n    SetImageInfoFile(image_info_00,image_info->file);\n    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);\n    image_info_00->stream = image_info->stream;\n    image_info_00->custom_stream = image_info->custom_stream;\n    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);\n    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);\n    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);\n    image_info_00->channel = image_info->channel;\n    CloneImageOptions(image_info_00,image_info);\n    MVar3 = IsEventLogging();\n    image_info_00->debug = MVar3;\n    image_info_00->signature = image_info->signature;\n  }" if (parenthesized_expression "(image_info != (ImageInfo *)0x0)" ( (binary_expression "image_info != (ImageInfo *)0x0" identifier != (cast_expression "(ImageInfo *)0x0" ( (type_descriptor "ImageInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    image_info_00->compression = image_info->compression;\n    image_info_00->temporary = image_info->temporary;\n    image_info_00->adjoin = image_info->adjoin;\n    image_info_00->antialias = image_info->antialias;\n    image_info_00->scene = image_info->scene;\n    image_info_00->number_scenes = image_info->number_scenes;\n    image_info_00->depth = image_info->depth;\n    if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }\n    if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }\n    if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }\n    if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }\n    image_info_00->interlace = image_info->interlace;\n    image_info_00->endian = image_info->endian;\n    image_info_00->units = image_info->units;\n    image_info_00->quality = image_info->quality;\n    if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }\n    if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }\n    if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }\n    if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }\n    if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }\n    MVar3 = image_info->dither;\n    image_info_00->pointsize = image_info->pointsize;\n    image_info_00->fuzz = image_info->fuzz;\n    pPVar5 = &image_info->matte_color;\n    pPVar6 = &image_info_00->matte_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->background_color;\n    pPVar6 = &image_info_00->background_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->border_color;\n    pPVar6 = &image_info_00->border_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    pPVar5 = &image_info->transparent_color;\n    pPVar6 = &image_info_00->transparent_color;\n    for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }\n    image_info_00->dither = MVar3;\n    image_info_00->monochrome = image_info->monochrome;\n    image_info_00->colorspace = image_info->colorspace;\n    image_info_00->type = image_info->type;\n    image_info_00->orientation = image_info->orientation;\n    image_info_00->ping = image_info->ping;\n    image_info_00->verbose = image_info->verbose;\n    image_info_00->progress_monitor = image_info->progress_monitor;\n    image_info_00->client_data = image_info->client_data;\n    image_info_00->cache = image_info->cache;\n    if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }\n    if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }\n    SetImageInfoFile(image_info_00,image_info->file);\n    SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);\n    image_info_00->stream = image_info->stream;\n    image_info_00->custom_stream = image_info->custom_stream;\n    CopyMagickString(image_info_00->magick,image_info->magick,0x1000);\n    CopyMagickString(image_info_00->unique,image_info->unique,0x1000);\n    CopyMagickString(image_info_00->filename,image_info->filename,0x1000);\n    image_info_00->channel = image_info->channel;\n    CloneImageOptions(image_info_00,image_info);\n    MVar3 = IsEventLogging();\n    image_info_00->debug = MVar3;\n    image_info_00->signature = image_info->signature;\n  }" { (expression_statement "image_info_00->compression = image_info->compression;" (assignment_expression "image_info_00->compression = image_info->compression" (field_expression "image_info_00->compression" identifier -> field_identifier) = (field_expression "image_info->compression" identifier -> field_identifier)) ;) (expression_statement "image_info_00->temporary = image_info->temporary;" (assignment_expression "image_info_00->temporary = image_info->temporary" (field_expression "image_info_00->temporary" identifier -> field_identifier) = (field_expression "image_info->temporary" identifier -> field_identifier)) ;) (expression_statement "image_info_00->adjoin = image_info->adjoin;" (assignment_expression "image_info_00->adjoin = image_info->adjoin" (field_expression "image_info_00->adjoin" identifier -> field_identifier) = (field_expression "image_info->adjoin" identifier -> field_identifier)) ;) (expression_statement "image_info_00->antialias = image_info->antialias;" (assignment_expression "image_info_00->antialias = image_info->antialias" (field_expression "image_info_00->antialias" identifier -> field_identifier) = (field_expression "image_info->antialias" identifier -> field_identifier)) ;) (expression_statement "image_info_00->scene = image_info->scene;" (assignment_expression "image_info_00->scene = image_info->scene" (field_expression "image_info_00->scene" identifier -> field_identifier) = (field_expression "image_info->scene" identifier -> field_identifier)) ;) (expression_statement "image_info_00->number_scenes = image_info->number_scenes;" (assignment_expression "image_info_00->number_scenes = image_info->number_scenes" (field_expression "image_info_00->number_scenes" identifier -> field_identifier) = (field_expression "image_info->number_scenes" identifier -> field_identifier)) ;) (expression_statement "image_info_00->depth = image_info->depth;" (assignment_expression "image_info_00->depth = image_info->depth" (field_expression "image_info_00->depth" identifier -> field_identifier) = (field_expression "image_info->depth" identifier -> field_identifier)) ;) (if_statement "if (image_info->size != (char *)0x0) {\n      CloneString(&image_info_00->size,image_info->size);\n    }" if (parenthesized_expression "(image_info->size != (char *)0x0)" ( (binary_expression "image_info->size != (char *)0x0" (field_expression "image_info->size" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->size,image_info->size);\n    }" { (expression_statement "CloneString(&image_info_00->size,image_info->size);" (call_expression "CloneString(&image_info_00->size,image_info->size)" identifier (argument_list "(&image_info_00->size,image_info->size)" ( (pointer_expression "&image_info_00->size" & (field_expression "image_info_00->size" identifier -> field_identifier)) , (field_expression "image_info->size" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->extract != (char *)0x0) {\n      CloneString(&image_info_00->extract,image_info->extract);\n    }" if (parenthesized_expression "(image_info->extract != (char *)0x0)" ( (binary_expression "image_info->extract != (char *)0x0" (field_expression "image_info->extract" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->extract,image_info->extract);\n    }" { (expression_statement "CloneString(&image_info_00->extract,image_info->extract);" (call_expression "CloneString(&image_info_00->extract,image_info->extract)" identifier (argument_list "(&image_info_00->extract,image_info->extract)" ( (pointer_expression "&image_info_00->extract" & (field_expression "image_info_00->extract" identifier -> field_identifier)) , (field_expression "image_info->extract" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->scenes != (char *)0x0) {\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }" if (parenthesized_expression "(image_info->scenes != (char *)0x0)" ( (binary_expression "image_info->scenes != (char *)0x0" (field_expression "image_info->scenes" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->scenes,image_info->scenes);\n    }" { (expression_statement "CloneString(&image_info_00->scenes,image_info->scenes);" (call_expression "CloneString(&image_info_00->scenes,image_info->scenes)" identifier (argument_list "(&image_info_00->scenes,image_info->scenes)" ( (pointer_expression "&image_info_00->scenes" & (field_expression "image_info_00->scenes" identifier -> field_identifier)) , (field_expression "image_info->scenes" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->page != (char *)0x0) {\n      CloneString(&image_info_00->page,image_info->page);\n    }" if (parenthesized_expression "(image_info->page != (char *)0x0)" ( (binary_expression "image_info->page != (char *)0x0" (field_expression "image_info->page" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->page,image_info->page);\n    }" { (expression_statement "CloneString(&image_info_00->page,image_info->page);" (call_expression "CloneString(&image_info_00->page,image_info->page)" identifier (argument_list "(&image_info_00->page,image_info->page)" ( (pointer_expression "&image_info_00->page" & (field_expression "image_info_00->page" identifier -> field_identifier)) , (field_expression "image_info->page" identifier -> field_identifier) ))) ;) })) (expression_statement "image_info_00->interlace = image_info->interlace;" (assignment_expression "image_info_00->interlace = image_info->interlace" (field_expression "image_info_00->interlace" identifier -> field_identifier) = (field_expression "image_info->interlace" identifier -> field_identifier)) ;) (expression_statement "image_info_00->endian = image_info->endian;" (assignment_expression "image_info_00->endian = image_info->endian" (field_expression "image_info_00->endian" identifier -> field_identifier) = (field_expression "image_info->endian" identifier -> field_identifier)) ;) (expression_statement "image_info_00->units = image_info->units;" (assignment_expression "image_info_00->units = image_info->units" (field_expression "image_info_00->units" identifier -> field_identifier) = (field_expression "image_info->units" identifier -> field_identifier)) ;) (expression_statement "image_info_00->quality = image_info->quality;" (assignment_expression "image_info_00->quality = image_info->quality" (field_expression "image_info_00->quality" identifier -> field_identifier) = (field_expression "image_info->quality" identifier -> field_identifier)) ;) (if_statement "if (image_info->sampling_factor != (char *)0x0) {\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }" if (parenthesized_expression "(image_info->sampling_factor != (char *)0x0)" ( (binary_expression "image_info->sampling_factor != (char *)0x0" (field_expression "image_info->sampling_factor" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);\n    }" { (expression_statement "CloneString(&image_info_00->sampling_factor,image_info->sampling_factor);" (call_expression "CloneString(&image_info_00->sampling_factor,image_info->sampling_factor)" identifier (argument_list "(&image_info_00->sampling_factor,image_info->sampling_factor)" ( (pointer_expression "&image_info_00->sampling_factor" & (field_expression "image_info_00->sampling_factor" identifier -> field_identifier)) , (field_expression "image_info->sampling_factor" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->server_name != (char *)0x0) {\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }" if (parenthesized_expression "(image_info->server_name != (char *)0x0)" ( (binary_expression "image_info->server_name != (char *)0x0" (field_expression "image_info->server_name" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->server_name,image_info->server_name);\n    }" { (expression_statement "CloneString(&image_info_00->server_name,image_info->server_name);" (call_expression "CloneString(&image_info_00->server_name,image_info->server_name)" identifier (argument_list "(&image_info_00->server_name,image_info->server_name)" ( (pointer_expression "&image_info_00->server_name" & (field_expression "image_info_00->server_name" identifier -> field_identifier)) , (field_expression "image_info->server_name" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->font != (char *)0x0) {\n      CloneString(&image_info_00->font,image_info->font);\n    }" if (parenthesized_expression "(image_info->font != (char *)0x0)" ( (binary_expression "image_info->font != (char *)0x0" (field_expression "image_info->font" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->font,image_info->font);\n    }" { (expression_statement "CloneString(&image_info_00->font,image_info->font);" (call_expression "CloneString(&image_info_00->font,image_info->font)" identifier (argument_list "(&image_info_00->font,image_info->font)" ( (pointer_expression "&image_info_00->font" & (field_expression "image_info_00->font" identifier -> field_identifier)) , (field_expression "image_info->font" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->texture != (char *)0x0) {\n      CloneString(&image_info_00->texture,image_info->texture);\n    }" if (parenthesized_expression "(image_info->texture != (char *)0x0)" ( (binary_expression "image_info->texture != (char *)0x0" (field_expression "image_info->texture" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->texture,image_info->texture);\n    }" { (expression_statement "CloneString(&image_info_00->texture,image_info->texture);" (call_expression "CloneString(&image_info_00->texture,image_info->texture)" identifier (argument_list "(&image_info_00->texture,image_info->texture)" ( (pointer_expression "&image_info_00->texture" & (field_expression "image_info_00->texture" identifier -> field_identifier)) , (field_expression "image_info->texture" identifier -> field_identifier) ))) ;) })) (if_statement "if (image_info->density != (char *)0x0) {\n      CloneString(&image_info_00->density,image_info->density);\n    }" if (parenthesized_expression "(image_info->density != (char *)0x0)" ( (binary_expression "image_info->density != (char *)0x0" (field_expression "image_info->density" identifier -> field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      CloneString(&image_info_00->density,image_info->density);\n    }" { (expression_statement "CloneString(&image_info_00->density,image_info->density);" (call_expression "CloneString(&image_info_00->density,image_info->density)" identifier (argument_list "(&image_info_00->density,image_info->density)" ( (pointer_expression "&image_info_00->density" & (field_expression "image_info_00->density" identifier -> field_identifier)) , (field_expression "image_info->density" identifier -> field_identifier) ))) ;) })) (expression_statement "MVar3 = image_info->dither;" (assignment_expression "MVar3 = image_info->dither" identifier = (field_expression "image_info->dither" identifier -> field_identifier)) ;) (expression_statement "image_info_00->pointsize = image_info->pointsize;" (assignment_expression "image_info_00->pointsize = image_info->pointsize" (field_expression "image_info_00->pointsize" identifier -> field_identifier) = (field_expression "image_info->pointsize" identifier -> field_identifier)) ;) (expression_statement "image_info_00->fuzz = image_info->fuzz;" (assignment_expression "image_info_00->fuzz = image_info->fuzz" (field_expression "image_info_00->fuzz" identifier -> field_identifier) = (field_expression "image_info->fuzz" identifier -> field_identifier)) ;) (expression_statement "pPVar5 = &image_info->matte_color;" (assignment_expression "pPVar5 = &image_info->matte_color" identifier = (pointer_expression "&image_info->matte_color" & (field_expression "image_info->matte_color" identifier -> field_identifier))) ;) (expression_statement "pPVar6 = &image_info_00->matte_color;" (assignment_expression "pPVar6 = &image_info_00->matte_color" identifier = (pointer_expression "&image_info_00->matte_color" & (field_expression "image_info_00->matte_color" identifier -> field_identifier))) ;) (for_statement "for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" for ( (assignment_expression "iVar4 = 0x14" identifier = number_literal) ; (binary_expression "iVar4 != 0" identifier != number_literal) ; (assignment_expression "iVar4 = iVar4 + -1" identifier = (binary_expression "iVar4 + -1" identifier + number_literal)) ) (compound_statement "{\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" { (expression_statement "pPVar6->storage_class = pPVar5->storage_class;" (assignment_expression "pPVar6->storage_class = pPVar5->storage_class" (field_expression "pPVar6->storage_class" identifier -> field_identifier) = (field_expression "pPVar5->storage_class" identifier -> field_identifier)) ;) (expression_statement "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar5 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar5 + (uint)bVar7 * -8" (cast_expression "(int)pPVar5" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar6 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar6 + (uint)bVar7 * -8" (cast_expression "(int)pPVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "pPVar5 = &image_info->background_color;" (assignment_expression "pPVar5 = &image_info->background_color" identifier = (pointer_expression "&image_info->background_color" & (field_expression "image_info->background_color" identifier -> field_identifier))) ;) (expression_statement "pPVar6 = &image_info_00->background_color;" (assignment_expression "pPVar6 = &image_info_00->background_color" identifier = (pointer_expression "&image_info_00->background_color" & (field_expression "image_info_00->background_color" identifier -> field_identifier))) ;) (for_statement "for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" for ( (assignment_expression "iVar4 = 0x14" identifier = number_literal) ; (binary_expression "iVar4 != 0" identifier != number_literal) ; (assignment_expression "iVar4 = iVar4 + -1" identifier = (binary_expression "iVar4 + -1" identifier + number_literal)) ) (compound_statement "{\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" { (expression_statement "pPVar6->storage_class = pPVar5->storage_class;" (assignment_expression "pPVar6->storage_class = pPVar5->storage_class" (field_expression "pPVar6->storage_class" identifier -> field_identifier) = (field_expression "pPVar5->storage_class" identifier -> field_identifier)) ;) (expression_statement "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar5 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar5 + (uint)bVar7 * -8" (cast_expression "(int)pPVar5" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar6 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar6 + (uint)bVar7 * -8" (cast_expression "(int)pPVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "pPVar5 = &image_info->border_color;" (assignment_expression "pPVar5 = &image_info->border_color" identifier = (pointer_expression "&image_info->border_color" & (field_expression "image_info->border_color" identifier -> field_identifier))) ;) (expression_statement "pPVar6 = &image_info_00->border_color;" (assignment_expression "pPVar6 = &image_info_00->border_color" identifier = (pointer_expression "&image_info_00->border_color" & (field_expression "image_info_00->border_color" identifier -> field_identifier))) ;) (for_statement "for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" for ( (assignment_expression "iVar4 = 0x14" identifier = number_literal) ; (binary_expression "iVar4 != 0" identifier != number_literal) ; (assignment_expression "iVar4 = iVar4 + -1" identifier = (binary_expression "iVar4 + -1" identifier + number_literal)) ) (compound_statement "{\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" { (expression_statement "pPVar6->storage_class = pPVar5->storage_class;" (assignment_expression "pPVar6->storage_class = pPVar5->storage_class" (field_expression "pPVar6->storage_class" identifier -> field_identifier) = (field_expression "pPVar5->storage_class" identifier -> field_identifier)) ;) (expression_statement "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar5 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar5 + (uint)bVar7 * -8" (cast_expression "(int)pPVar5" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar6 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar6 + (uint)bVar7 * -8" (cast_expression "(int)pPVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "pPVar5 = &image_info->transparent_color;" (assignment_expression "pPVar5 = &image_info->transparent_color" identifier = (pointer_expression "&image_info->transparent_color" & (field_expression "image_info->transparent_color" identifier -> field_identifier))) ;) (expression_statement "pPVar6 = &image_info_00->transparent_color;" (assignment_expression "pPVar6 = &image_info_00->transparent_color" identifier = (pointer_expression "&image_info_00->transparent_color" & (field_expression "image_info_00->transparent_color" identifier -> field_identifier))) ;) (for_statement "for (iVar4 = 0x14; iVar4 != 0; iVar4 = iVar4 + -1) {\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" for ( (assignment_expression "iVar4 = 0x14" identifier = number_literal) ; (binary_expression "iVar4 != 0" identifier != number_literal) ; (assignment_expression "iVar4 = iVar4 + -1" identifier = (binary_expression "iVar4 + -1" identifier + number_literal)) ) (compound_statement "{\n      pPVar6->storage_class = pPVar5->storage_class;\n      pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);\n      pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);\n    }" { (expression_statement "pPVar6->storage_class = pPVar5->storage_class;" (assignment_expression "pPVar6->storage_class = pPVar5->storage_class" (field_expression "pPVar6->storage_class" identifier -> field_identifier) = (field_expression "pPVar5->storage_class" identifier -> field_identifier)) ;) (expression_statement "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar5 = (PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar5 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar5 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar5 + (uint)bVar7 * -8" (cast_expression "(int)pPVar5" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4);" (assignment_expression "pPVar6 = (PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" identifier = (cast_expression "(PixelInfo *)((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pPVar6 + (uint)bVar7 * -8 + 4)" ( (binary_expression "(int)pPVar6 + (uint)bVar7 * -8 + 4" (binary_expression "(int)pPVar6 + (uint)bVar7 * -8" (cast_expression "(int)pPVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar7 * -8" (cast_expression "(uint)bVar7" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "image_info_00->dither = MVar3;" (assignment_expression "image_info_00->dither = MVar3" (field_expression "image_info_00->dither" identifier -> field_identifier) = identifier) ;) (expression_statement "image_info_00->monochrome = image_info->monochrome;" (assignment_expression "image_info_00->monochrome = image_info->monochrome" (field_expression "image_info_00->monochrome" identifier -> field_identifier) = (field_expression "image_info->monochrome" identifier -> field_identifier)) ;) (expression_statement "image_info_00->colorspace = image_info->colorspace;" (assignment_expression "image_info_00->colorspace = image_info->colorspace" (field_expression "image_info_00->colorspace" identifier -> field_identifier) = (field_expression "image_info->colorspace" identifier -> field_identifier)) ;) (expression_statement "image_info_00->type = image_info->type;" (assignment_expression "image_info_00->type = image_info->type" (field_expression "image_info_00->type" identifier -> field_identifier) = (field_expression "image_info->type" identifier -> field_identifier)) ;) (expression_statement "image_info_00->orientation = image_info->orientation;" (assignment_expression "image_info_00->orientation = image_info->orientation" (field_expression "image_info_00->orientation" identifier -> field_identifier) = (field_expression "image_info->orientation" identifier -> field_identifier)) ;) (expression_statement "image_info_00->ping = image_info->ping;" (assignment_expression "image_info_00->ping = image_info->ping" (field_expression "image_info_00->ping" identifier -> field_identifier) = (field_expression "image_info->ping" identifier -> field_identifier)) ;) (expression_statement "image_info_00->verbose = image_info->verbose;" (assignment_expression "image_info_00->verbose = image_info->verbose" (field_expression "image_info_00->verbose" identifier -> field_identifier) = (field_expression "image_info->verbose" identifier -> field_identifier)) ;) (expression_statement "image_info_00->progress_monitor = image_info->progress_monitor;" (assignment_expression "image_info_00->progress_monitor = image_info->progress_monitor" (field_expression "image_info_00->progress_monitor" identifier -> field_identifier) = (field_expression "image_info->progress_monitor" identifier -> field_identifier)) ;) (expression_statement "image_info_00->client_data = image_info->client_data;" (assignment_expression "image_info_00->client_data = image_info->client_data" (field_expression "image_info_00->client_data" identifier -> field_identifier) = (field_expression "image_info->client_data" identifier -> field_identifier)) ;) (expression_statement "image_info_00->cache = image_info->cache;" (assignment_expression "image_info_00->cache = image_info->cache" (field_expression "image_info_00->cache" identifier -> field_identifier) = (field_expression "image_info->cache" identifier -> field_identifier)) ;) (if_statement "if (image_info->cache != (Cache)0x0) {\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }" if (parenthesized_expression "(image_info->cache != (Cache)0x0)" ( (binary_expression "image_info->cache != (Cache)0x0" (field_expression "image_info->cache" identifier -> field_identifier) != (cast_expression "(Cache)0x0" ( (type_descriptor "Cache" type_identifier) ) number_literal)) )) (compound_statement "{\n      pvVar1 = ReferencePixelCache(image_info->cache);\n      image_info_00->cache = pvVar1;\n    }" { (expression_statement "pvVar1 = ReferencePixelCache(image_info->cache);" (assignment_expression "pvVar1 = ReferencePixelCache(image_info->cache)" identifier = (call_expression "ReferencePixelCache(image_info->cache)" identifier (argument_list "(image_info->cache)" ( (field_expression "image_info->cache" identifier -> field_identifier) )))) ;) (expression_statement "image_info_00->cache = pvVar1;" (assignment_expression "image_info_00->cache = pvVar1" (field_expression "image_info_00->cache" identifier -> field_identifier) = identifier) ;) })) (if_statement "if ((StringInfo *)image_info->profile != (StringInfo *)0x0) {\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }" if (parenthesized_expression "((StringInfo *)image_info->profile != (StringInfo *)0x0)" ( (binary_expression "(StringInfo *)image_info->profile != (StringInfo *)0x0" (cast_expression "(StringInfo *)image_info->profile" ( (type_descriptor "StringInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "image_info->profile" identifier -> field_identifier)) != (cast_expression "(StringInfo *)0x0" ( (type_descriptor "StringInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);\n      image_info_00->profile = pSVar2;\n    }" { (expression_statement "pSVar2 = CloneStringInfo((StringInfo *)image_info->profile);" (assignment_expression "pSVar2 = CloneStringInfo((StringInfo *)image_info->profile)" identifier = (call_expression "CloneStringInfo((StringInfo *)image_info->profile)" identifier (argument_list "((StringInfo *)image_info->profile)" ( (cast_expression "(StringInfo *)image_info->profile" ( (type_descriptor "StringInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "image_info->profile" identifier -> field_identifier)) )))) ;) (expression_statement "image_info_00->profile = pSVar2;" (assignment_expression "image_info_00->profile = pSVar2" (field_expression "image_info_00->profile" identifier -> field_identifier) = identifier) ;) })) (expression_statement "SetImageInfoFile(image_info_00,image_info->file);" (call_expression "SetImageInfoFile(image_info_00,image_info->file)" identifier (argument_list "(image_info_00,image_info->file)" ( identifier , (field_expression "image_info->file" identifier -> field_identifier) ))) ;) (expression_statement "SetImageInfoBlob(image_info_00,image_info->blob,image_info->length);" (call_expression "SetImageInfoBlob(image_info_00,image_info->blob,image_info->length)" identifier (argument_list "(image_info_00,image_info->blob,image_info->length)" ( identifier , (field_expression "image_info->blob" identifier -> field_identifier) , (field_expression "image_info->length" identifier -> field_identifier) ))) ;) (expression_statement "image_info_00->stream = image_info->stream;" (assignment_expression "image_info_00->stream = image_info->stream" (field_expression "image_info_00->stream" identifier -> field_identifier) = (field_expression "image_info->stream" identifier -> field_identifier)) ;) (expression_statement "image_info_00->custom_stream = image_info->custom_stream;" (assignment_expression "image_info_00->custom_stream = image_info->custom_stream" (field_expression "image_info_00->custom_stream" identifier -> field_identifier) = (field_expression "image_info->custom_stream" identifier -> field_identifier)) ;) (expression_statement "CopyMagickString(image_info_00->magick,image_info->magick,0x1000);" (call_expression "CopyMagickString(image_info_00->magick,image_info->magick,0x1000)" identifier (argument_list "(image_info_00->magick,image_info->magick,0x1000)" ( (field_expression "image_info_00->magick" identifier -> field_identifier) , (field_expression "image_info->magick" identifier -> field_identifier) , number_literal ))) ;) (expression_statement "CopyMagickString(image_info_00->unique,image_info->unique,0x1000);" (call_expression "CopyMagickString(image_info_00->unique,image_info->unique,0x1000)" identifier (argument_list "(image_info_00->unique,image_info->unique,0x1000)" ( (field_expression "image_info_00->unique" identifier -> field_identifier) , (field_expression "image_info->unique" identifier -> field_identifier) , number_literal ))) ;) (expression_statement "CopyMagickString(image_info_00->filename,image_info->filename,0x1000);" (call_expression "CopyMagickString(image_info_00->filename,image_info->filename,0x1000)" identifier (argument_list "(image_info_00->filename,image_info->filename,0x1000)" ( (field_expression "image_info_00->filename" identifier -> field_identifier) , (field_expression "image_info->filename" identifier -> field_identifier) , number_literal ))) ;) (expression_statement "image_info_00->channel = image_info->channel;" (assignment_expression "image_info_00->channel = image_info->channel" (field_expression "image_info_00->channel" identifier -> field_identifier) = (field_expression "image_info->channel" identifier -> field_identifier)) ;) (expression_statement "CloneImageOptions(image_info_00,image_info);" (call_expression "CloneImageOptions(image_info_00,image_info)" identifier (argument_list "(image_info_00,image_info)" ( identifier , identifier ))) ;) (expression_statement "MVar3 = IsEventLogging();" (assignment_expression "MVar3 = IsEventLogging()" identifier = (call_expression "IsEventLogging()" identifier (argument_list "()" ( )))) ;) (expression_statement "image_info_00->debug = MVar3;" (assignment_expression "image_info_00->debug = MVar3" (field_expression "image_info_00->debug" identifier -> field_identifier) = identifier) ;) (expression_statement "image_info_00->signature = image_info->signature;" (assignment_expression "image_info_00->signature = image_info->signature" (field_expression "image_info_00->signature" identifier -> field_identifier) = (field_expression "image_info->signature" identifier -> field_identifier)) ;) })) (return_statement "return image_info_00;" return identifier ;) })))
(translation_unit "undefined4 * CloneImageInfo(undefined4 *param_1)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}\n\n" (function_definition "undefined4 * CloneImageInfo(undefined4 *param_1)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" type_identifier (pointer_declarator "* CloneImageInfo(undefined4 *param_1)" * (function_declarator "CloneImageInfo(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) )))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "byte bVar6;" type_identifier identifier ;) (expression_statement "bVar6 = 0;" (assignment_expression "bVar6 = 0" identifier = number_literal) ;) (expression_statement "puVar1 = (undefined4 *)AcquireImageInfo();" (assignment_expression "puVar1 = (undefined4 *)AcquireImageInfo()" identifier = (cast_expression "(undefined4 *)AcquireImageInfo()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "AcquireImageInfo()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" { (expression_statement "*puVar1 = *param_1;" (assignment_expression "*puVar1 = *param_1" (pointer_expression "*puVar1" * identifier) = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "puVar1[2] = param_1[2];" (assignment_expression "puVar1[2] = param_1[2]" (subscript_expression "puVar1[2]" identifier [ number_literal ]) = (subscript_expression "param_1[2]" identifier [ number_literal ])) ;) (expression_statement "puVar1[3] = param_1[3];" (assignment_expression "puVar1[3] = param_1[3]" (subscript_expression "puVar1[3]" identifier [ number_literal ]) = (subscript_expression "param_1[3]" identifier [ number_literal ])) ;) (expression_statement "puVar1[5] = param_1[5];" (assignment_expression "puVar1[5] = param_1[5]" (subscript_expression "puVar1[5]" identifier [ number_literal ]) = (subscript_expression "param_1[5]" identifier [ number_literal ])) ;) (expression_statement "puVar1[10] = param_1[10];" (assignment_expression "puVar1[10] = param_1[10]" (subscript_expression "puVar1[10]" identifier [ number_literal ]) = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xb] = param_1[0xb];" (assignment_expression "puVar1[0xb] = param_1[0xb]" (subscript_expression "puVar1[0xb]" identifier [ number_literal ]) = (subscript_expression "param_1[0xb]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xc] = param_1[0xc];" (assignment_expression "puVar1[0xc] = param_1[0xc]" (subscript_expression "puVar1[0xc]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc]" identifier [ number_literal ])) ;) (if_statement "if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }" if (parenthesized_expression "(param_1[6] != 0)" ( (binary_expression "param_1[6] != 0" (subscript_expression "param_1[6]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 6,param_1[6]);\n    }" { (expression_statement "CloneString(puVar1 + 6,param_1[6]);" (call_expression "CloneString(puVar1 + 6,param_1[6])" identifier (argument_list "(puVar1 + 6,param_1[6])" ( (binary_expression "puVar1 + 6" identifier + number_literal) , (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }" if (parenthesized_expression "(param_1[7] != 0)" ( (binary_expression "param_1[7] != 0" (subscript_expression "param_1[7]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 7,param_1[7]);\n    }" { (expression_statement "CloneString(puVar1 + 7,param_1[7]);" (call_expression "CloneString(puVar1 + 7,param_1[7])" identifier (argument_list "(puVar1 + 7,param_1[7])" ( (binary_expression "puVar1 + 7" identifier + number_literal) , (subscript_expression "param_1[7]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }" if (parenthesized_expression "(param_1[9] != 0)" ( (binary_expression "param_1[9] != 0" (subscript_expression "param_1[9]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 9,param_1[9]);\n    }" { (expression_statement "CloneString(puVar1 + 9,param_1[9]);" (call_expression "CloneString(puVar1 + 9,param_1[9])" identifier (argument_list "(puVar1 + 9,param_1[9])" ( (binary_expression "puVar1 + 9" identifier + number_literal) , (subscript_expression "param_1[9]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }" if (parenthesized_expression "(param_1[8] != 0)" ( (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 8,param_1[8]);\n    }" { (expression_statement "CloneString(puVar1 + 8,param_1[8]);" (call_expression "CloneString(puVar1 + 8,param_1[8])" identifier (argument_list "(puVar1 + 8,param_1[8])" ( (binary_expression "puVar1 + 8" identifier + number_literal) , (subscript_expression "param_1[8]" identifier [ number_literal ]) ))) ;) })) (expression_statement "puVar1[0xd] = param_1[0xd];" (assignment_expression "puVar1[0xd] = param_1[0xd]" (subscript_expression "puVar1[0xd]" identifier [ number_literal ]) = (subscript_expression "param_1[0xd]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xe] = param_1[0xe];" (assignment_expression "puVar1[0xe] = param_1[0xe]" (subscript_expression "puVar1[0xe]" identifier [ number_literal ]) = (subscript_expression "param_1[0xe]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xf] = param_1[0xf];" (assignment_expression "puVar1[0xf] = param_1[0xf]" (subscript_expression "puVar1[0xf]" identifier [ number_literal ]) = (subscript_expression "param_1[0xf]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x10] = param_1[0x10];" (assignment_expression "puVar1[0x10] = param_1[0x10]" (subscript_expression "puVar1[0x10]" identifier [ number_literal ]) = (subscript_expression "param_1[0x10]" identifier [ number_literal ])) ;) (if_statement "if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" if (parenthesized_expression "(param_1[0x11] != 0)" ( (binary_expression "param_1[0x11] != 0" (subscript_expression "param_1[0x11]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" { (expression_statement "CloneString(puVar1 + 0x11,param_1[0x11]);" (call_expression "CloneString(puVar1 + 0x11,param_1[0x11])" identifier (argument_list "(puVar1 + 0x11,param_1[0x11])" ( (binary_expression "puVar1 + 0x11" identifier + number_literal) , (subscript_expression "param_1[0x11]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" if (parenthesized_expression "(param_1[0x12] != 0)" ( (binary_expression "param_1[0x12] != 0" (subscript_expression "param_1[0x12]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" { (expression_statement "CloneString(puVar1 + 0x12,param_1[0x12]);" (call_expression "CloneString(puVar1 + 0x12,param_1[0x12])" identifier (argument_list "(puVar1 + 0x12,param_1[0x12])" ( (binary_expression "puVar1 + 0x12" identifier + number_literal) , (subscript_expression "param_1[0x12]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" if (parenthesized_expression "(param_1[0x13] != 0)" ( (binary_expression "param_1[0x13] != 0" (subscript_expression "param_1[0x13]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" { (expression_statement "CloneString(puVar1 + 0x13,param_1[0x13]);" (call_expression "CloneString(puVar1 + 0x13,param_1[0x13])" identifier (argument_list "(puVar1 + 0x13,param_1[0x13])" ( (binary_expression "puVar1 + 0x13" identifier + number_literal) , (subscript_expression "param_1[0x13]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" if (parenthesized_expression "(param_1[0x14] != 0)" ( (binary_expression "param_1[0x14] != 0" (subscript_expression "param_1[0x14]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" { (expression_statement "CloneString(puVar1 + 0x14,param_1[0x14]);" (call_expression "CloneString(puVar1 + 0x14,param_1[0x14])" identifier (argument_list "(puVar1 + 0x14,param_1[0x14])" ( (binary_expression "puVar1 + 0x14" identifier + number_literal) , (subscript_expression "param_1[0x14]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" if (parenthesized_expression "(param_1[0x15] != 0)" ( (binary_expression "param_1[0x15] != 0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" { (expression_statement "CloneString(puVar1 + 0x15,param_1[0x15]);" (call_expression "CloneString(puVar1 + 0x15,param_1[0x15])" identifier (argument_list "(puVar1 + 0x15,param_1[0x15])" ( (binary_expression "puVar1 + 0x15" identifier + number_literal) , (subscript_expression "param_1[0x15]" identifier [ number_literal ]) ))) ;) })) (expression_statement "uVar2 = param_1[0x6a];" (assignment_expression "uVar2 = param_1[0x6a]" identifier = (subscript_expression "param_1[0x6a]" identifier [ number_literal ])) ;) (expression_statement "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);" (assignment_expression "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16)" (pointer_expression "*(undefined8 *)(puVar1 + 0x16)" * (cast_expression "(undefined8 *)(puVar1 + 0x16)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x16)" ( (binary_expression "puVar1 + 0x16" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(param_1 + 0x16)" * (cast_expression "(undefined8 *)(param_1 + 0x16)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x16)" ( (binary_expression "param_1 + 0x16" identifier + number_literal) ))))) ;) (expression_statement "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);" (assignment_expression "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18)" (pointer_expression "*(undefined8 *)(puVar1 + 0x18)" * (cast_expression "(undefined8 *)(puVar1 + 0x18)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + 0x18)" ( (binary_expression "puVar1 + 0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(param_1 + 0x18)" * (cast_expression "(undefined8 *)(param_1 + 0x18)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar4 = param_1 + 0xc7f;" (assignment_expression "puVar4 = param_1 + 0xc7f" identifier = (binary_expression "param_1 + 0xc7f" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0xc7f;" (assignment_expression "puVar5 = puVar1 + 0xc7f" identifier = (binary_expression "puVar1 + 0xc7f" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x2e;" (assignment_expression "puVar4 = param_1 + 0x2e" identifier = (binary_expression "param_1 + 0x2e" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x2e;" (assignment_expression "puVar5 = puVar1 + 0x2e" identifier = (binary_expression "puVar1 + 0x2e" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x42;" (assignment_expression "puVar4 = param_1 + 0x42" identifier = (binary_expression "param_1 + 0x42" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x42;" (assignment_expression "puVar5 = puVar1 + 0x42" identifier = (binary_expression "puVar1 + 0x42" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar4 = param_1 + 0x56;" (assignment_expression "puVar4 = param_1 + 0x56" identifier = (binary_expression "param_1 + 0x56" identifier + number_literal)) ;) (expression_statement "puVar5 = puVar1 + 0x56;" (assignment_expression "puVar5 = puVar1 + 0x56" identifier = (binary_expression "puVar1 + 0x56" identifier + number_literal)) ;) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" for ( (assignment_expression "iVar3 = 0x14" identifier = number_literal) ; (binary_expression "iVar3 != 0" identifier != number_literal) ; (assignment_expression "iVar3 = iVar3 + -1" identifier = (binary_expression "iVar3 + -1" identifier + number_literal)) ) (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" { (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar4" * identifier)) ;) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" identifier = (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" identifier + (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "puVar1[0x6a] = uVar2;" (assignment_expression "puVar1[0x6a] = uVar2" (subscript_expression "puVar1[0x6a]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0x6b] = param_1[0x6b];" (assignment_expression "puVar1[0x6b] = param_1[0x6b]" (subscript_expression "puVar1[0x6b]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6b]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6c] = param_1[0x6c];" (assignment_expression "puVar1[0x6c] = param_1[0x6c]" (subscript_expression "puVar1[0x6c]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6c]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6e] = param_1[0x6e];" (assignment_expression "puVar1[0x6e] = param_1[0x6e]" (subscript_expression "puVar1[0x6e]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6e]" identifier [ number_literal ])) ;) (expression_statement "puVar1[1] = param_1[1];" (assignment_expression "puVar1[1] = param_1[1]" (subscript_expression "puVar1[1]" identifier [ number_literal ]) = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x6f] = param_1[0x6f];" (assignment_expression "puVar1[0x6f] = param_1[0x6f]" (subscript_expression "puVar1[0x6f]" identifier [ number_literal ]) = (subscript_expression "param_1[0x6f]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x70] = param_1[0x70];" (assignment_expression "puVar1[0x70] = param_1[0x70]" (subscript_expression "puVar1[0x70]" identifier [ number_literal ]) = (subscript_expression "param_1[0x70]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x75] = param_1[0x75];" (assignment_expression "puVar1[0x75] = param_1[0x75]" (subscript_expression "puVar1[0x75]" identifier [ number_literal ]) = (subscript_expression "param_1[0x75]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x76] = param_1[0x76];" (assignment_expression "puVar1[0x76] = param_1[0x76]" (subscript_expression "puVar1[0x76]" identifier [ number_literal ]) = (subscript_expression "param_1[0x76]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0x77] = param_1[0x77];" (assignment_expression "puVar1[0x77] = param_1[0x77]" (subscript_expression "puVar1[0x77]" identifier [ number_literal ]) = (subscript_expression "param_1[0x77]" identifier [ number_literal ])) ;) (if_statement "if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" if (parenthesized_expression "(param_1[0x77] != 0)" ( (binary_expression "param_1[0x77] != 0" (subscript_expression "param_1[0x77]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" { (expression_statement "uVar2 = FUN_00053ba0(param_1[0x77]);" (assignment_expression "uVar2 = FUN_00053ba0(param_1[0x77])" identifier = (call_expression "FUN_00053ba0(param_1[0x77])" identifier (argument_list "(param_1[0x77])" ( (subscript_expression "param_1[0x77]" identifier [ number_literal ]) )))) ;) (expression_statement "puVar1[0x77] = uVar2;" (assignment_expression "puVar1[0x77] = uVar2" (subscript_expression "puVar1[0x77]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" if (parenthesized_expression "(param_1[0x73] != 0)" ( (binary_expression "param_1[0x73] != 0" (subscript_expression "param_1[0x73]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" { (expression_statement "uVar2 = CloneStringInfo(param_1[0x73]);" (assignment_expression "uVar2 = CloneStringInfo(param_1[0x73])" identifier = (call_expression "CloneStringInfo(param_1[0x73])" identifier (argument_list "(param_1[0x73])" ( (subscript_expression "param_1[0x73]" identifier [ number_literal ]) )))) ;) (expression_statement "puVar1[0x73] = uVar2;" (assignment_expression "puVar1[0x73] = uVar2" (subscript_expression "puVar1[0x73]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "SetImageInfoFile(puVar1,param_1[0x79]);" (call_expression "SetImageInfoFile(puVar1,param_1[0x79])" identifier (argument_list "(puVar1,param_1[0x79])" ( identifier , (subscript_expression "param_1[0x79]" identifier [ number_literal ]) ))) ;) (expression_statement "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);" (call_expression "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b])" identifier (argument_list "(puVar1,param_1[0x7a],param_1[0x7b])" ( identifier , (subscript_expression "param_1[0x7a]" identifier [ number_literal ]) , (subscript_expression "param_1[0x7b]" identifier [ number_literal ]) ))) ;) (expression_statement "puVar1[0x78] = param_1[0x78];" (assignment_expression "puVar1[0x78] = param_1[0x78]" (subscript_expression "puVar1[0x78]" identifier [ number_literal ]) = (subscript_expression "param_1[0x78]" identifier [ number_literal ])) ;) (expression_statement "puVar1[0xc7e] = param_1[0xc7e];" (assignment_expression "puVar1[0xc7e] = param_1[0xc7e]" (subscript_expression "puVar1[0xc7e]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc7e]" identifier [ number_literal ])) ;) (expression_statement "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" identifier (argument_list "(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" ( (binary_expression "puVar1 + 0x7c" identifier + number_literal) , (binary_expression "param_1 + 0x7c" identifier + number_literal) , number_literal ))) ;) (expression_statement "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" identifier (argument_list "(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" ( (binary_expression "puVar1 + 0x47c" identifier + number_literal) , (binary_expression "param_1 + 0x47c" identifier + number_literal) , number_literal ))) ;) (expression_statement "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" identifier (argument_list "(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" ( (binary_expression "puVar1 + 0x87c" identifier + number_literal) , (binary_expression "param_1 + 0x87c" identifier + number_literal) , number_literal ))) ;) (expression_statement "puVar1[0x71] = param_1[0x71];" (assignment_expression "puVar1[0x71] = param_1[0x71]" (subscript_expression "puVar1[0x71]" identifier [ number_literal ]) = (subscript_expression "param_1[0x71]" identifier [ number_literal ])) ;) (expression_statement "CloneImageOptions(puVar1,param_1);" (call_expression "CloneImageOptions(puVar1,param_1)" identifier (argument_list "(puVar1,param_1)" ( identifier , identifier ))) ;) (expression_statement "uVar2 = IsEventLogging();" (assignment_expression "uVar2 = IsEventLogging()" identifier = (call_expression "IsEventLogging()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar1[0xc7c] = uVar2;" (assignment_expression "puVar1[0xc7c] = uVar2" (subscript_expression "puVar1[0xc7c]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1[0xc7d] = param_1[0xc7d];" (assignment_expression "puVar1[0xc7d] = param_1[0xc7d]" (subscript_expression "puVar1[0xc7d]" identifier [ number_literal ]) = (subscript_expression "param_1[0xc7d]" identifier [ number_literal ])) ;) })) (return_statement "return puVar1;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) )))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (subscript_expression IDENT [ LIT ]) ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) })) (return_statement return IDENT ;) })))
(function_definition "undefined4 * CloneImageInfo(undefined4 *param_1)\n\n{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" (type_identifier "undefined4") (pointer_declarator "* CloneImageInfo(undefined4 *param_1)" (* "*") (function_declarator "CloneImageInfo(undefined4 *param_1)" (identifier "CloneImageInfo") (parameter_list "(undefined4 *param_1)" (( "(") (parameter_declaration "undefined4 *param_1" (type_identifier "undefined4") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")")))) (compound_statement "{\n  undefined4 *puVar1;\n  undefined4 uVar2;\n  int iVar3;\n  undefined4 *puVar4;\n  undefined4 *puVar5;\n  byte bVar6;\n  \n  bVar6 = 0;\n  puVar1 = (undefined4 *)AcquireImageInfo();\n  if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }\n  return puVar1;\n}" ({ "{") (declaration "undefined4 *puVar1;" (type_identifier "undefined4") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined4 *puVar4;" (type_identifier "undefined4") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "undefined4 *puVar5;" (type_identifier "undefined4") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "byte bVar6;" (type_identifier "byte") (identifier "bVar6") (; ";")) (expression_statement "bVar6 = 0;" (assignment_expression "bVar6 = 0" (identifier "bVar6") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar1 = (undefined4 *)AcquireImageInfo();" (assignment_expression "puVar1 = (undefined4 *)AcquireImageInfo()" (identifier "puVar1") (= "=") (cast_expression "(undefined4 *)AcquireImageInfo()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "AcquireImageInfo()" (identifier "AcquireImageInfo") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (param_1 != (undefined4 *)0x0) {\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" (if "if") (parenthesized_expression "(param_1 != (undefined4 *)0x0)" (( "(") (binary_expression "param_1 != (undefined4 *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    *puVar1 = *param_1;\n    puVar1[2] = param_1[2];\n    puVar1[3] = param_1[3];\n    puVar1[5] = param_1[5];\n    puVar1[10] = param_1[10];\n    puVar1[0xb] = param_1[0xb];\n    puVar1[0xc] = param_1[0xc];\n    if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }\n    if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }\n    if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }\n    if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }\n    puVar1[0xd] = param_1[0xd];\n    puVar1[0xe] = param_1[0xe];\n    puVar1[0xf] = param_1[0xf];\n    puVar1[0x10] = param_1[0x10];\n    if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }\n    if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }\n    if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }\n    if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }\n    if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }\n    uVar2 = param_1[0x6a];\n    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);\n    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);\n    puVar4 = param_1 + 0xc7f;\n    puVar5 = puVar1 + 0xc7f;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x2e;\n    puVar5 = puVar1 + 0x2e;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x42;\n    puVar5 = puVar1 + 0x42;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar4 = param_1 + 0x56;\n    puVar5 = puVar1 + 0x56;\n    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }\n    puVar1[0x6a] = uVar2;\n    puVar1[0x6b] = param_1[0x6b];\n    puVar1[0x6c] = param_1[0x6c];\n    puVar1[0x6e] = param_1[0x6e];\n    puVar1[1] = param_1[1];\n    puVar1[0x6f] = param_1[0x6f];\n    puVar1[0x70] = param_1[0x70];\n    puVar1[0x75] = param_1[0x75];\n    puVar1[0x76] = param_1[0x76];\n    puVar1[0x77] = param_1[0x77];\n    if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }\n    if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }\n    SetImageInfoFile(puVar1,param_1[0x79]);\n    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);\n    puVar1[0x78] = param_1[0x78];\n    puVar1[0xc7e] = param_1[0xc7e];\n    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);\n    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);\n    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);\n    puVar1[0x71] = param_1[0x71];\n    CloneImageOptions(puVar1,param_1);\n    uVar2 = IsEventLogging();\n    puVar1[0xc7c] = uVar2;\n    puVar1[0xc7d] = param_1[0xc7d];\n  }" ({ "{") (expression_statement "*puVar1 = *param_1;" (assignment_expression "*puVar1 = *param_1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "puVar1[2] = param_1[2];" (assignment_expression "puVar1[2] = param_1[2]" (subscript_expression "puVar1[2]" (identifier "puVar1") ([ "[") (number_literal "2") (] "]")) (= "=") (subscript_expression "param_1[2]" (identifier "param_1") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "puVar1[3] = param_1[3];" (assignment_expression "puVar1[3] = param_1[3]" (subscript_expression "puVar1[3]" (identifier "puVar1") ([ "[") (number_literal "3") (] "]")) (= "=") (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "puVar1[5] = param_1[5];" (assignment_expression "puVar1[5] = param_1[5]" (subscript_expression "puVar1[5]" (identifier "puVar1") ([ "[") (number_literal "5") (] "]")) (= "=") (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "puVar1[10] = param_1[10];" (assignment_expression "puVar1[10] = param_1[10]" (subscript_expression "puVar1[10]" (identifier "puVar1") ([ "[") (number_literal "10") (] "]")) (= "=") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "puVar1[0xb] = param_1[0xb];" (assignment_expression "puVar1[0xb] = param_1[0xb]" (subscript_expression "puVar1[0xb]" (identifier "puVar1") ([ "[") (number_literal "0xb") (] "]")) (= "=") (subscript_expression "param_1[0xb]" (identifier "param_1") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "puVar1[0xc] = param_1[0xc];" (assignment_expression "puVar1[0xc] = param_1[0xc]" (subscript_expression "puVar1[0xc]" (identifier "puVar1") ([ "[") (number_literal "0xc") (] "]")) (= "=") (subscript_expression "param_1[0xc]" (identifier "param_1") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (if_statement "if (param_1[6] != 0) {\n      CloneString(puVar1 + 6,param_1[6]);\n    }" (if "if") (parenthesized_expression "(param_1[6] != 0)" (( "(") (binary_expression "param_1[6] != 0" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 6,param_1[6]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 6,param_1[6]);" (call_expression "CloneString(puVar1 + 6,param_1[6])" (identifier "CloneString") (argument_list "(puVar1 + 6,param_1[6])" (( "(") (binary_expression "puVar1 + 6" (identifier "puVar1") (+ "+") (number_literal "6")) (, ",") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[7] != 0) {\n      CloneString(puVar1 + 7,param_1[7]);\n    }" (if "if") (parenthesized_expression "(param_1[7] != 0)" (( "(") (binary_expression "param_1[7] != 0" (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 7,param_1[7]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 7,param_1[7]);" (call_expression "CloneString(puVar1 + 7,param_1[7])" (identifier "CloneString") (argument_list "(puVar1 + 7,param_1[7])" (( "(") (binary_expression "puVar1 + 7" (identifier "puVar1") (+ "+") (number_literal "7")) (, ",") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[9] != 0) {\n      CloneString(puVar1 + 9,param_1[9]);\n    }" (if "if") (parenthesized_expression "(param_1[9] != 0)" (( "(") (binary_expression "param_1[9] != 0" (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 9,param_1[9]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 9,param_1[9]);" (call_expression "CloneString(puVar1 + 9,param_1[9])" (identifier "CloneString") (argument_list "(puVar1 + 9,param_1[9])" (( "(") (binary_expression "puVar1 + 9" (identifier "puVar1") (+ "+") (number_literal "9")) (, ",") (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[8] != 0) {\n      CloneString(puVar1 + 8,param_1[8]);\n    }" (if "if") (parenthesized_expression "(param_1[8] != 0)" (( "(") (binary_expression "param_1[8] != 0" (subscript_expression "param_1[8]" (identifier "param_1") ([ "[") (number_literal "8") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 8,param_1[8]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 8,param_1[8]);" (call_expression "CloneString(puVar1 + 8,param_1[8])" (identifier "CloneString") (argument_list "(puVar1 + 8,param_1[8])" (( "(") (binary_expression "puVar1 + 8" (identifier "puVar1") (+ "+") (number_literal "8")) (, ",") (subscript_expression "param_1[8]" (identifier "param_1") ([ "[") (number_literal "8") (] "]")) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar1[0xd] = param_1[0xd];" (assignment_expression "puVar1[0xd] = param_1[0xd]" (subscript_expression "puVar1[0xd]" (identifier "puVar1") ([ "[") (number_literal "0xd") (] "]")) (= "=") (subscript_expression "param_1[0xd]" (identifier "param_1") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (expression_statement "puVar1[0xe] = param_1[0xe];" (assignment_expression "puVar1[0xe] = param_1[0xe]" (subscript_expression "puVar1[0xe]" (identifier "puVar1") ([ "[") (number_literal "0xe") (] "]")) (= "=") (subscript_expression "param_1[0xe]" (identifier "param_1") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (expression_statement "puVar1[0xf] = param_1[0xf];" (assignment_expression "puVar1[0xf] = param_1[0xf]" (subscript_expression "puVar1[0xf]" (identifier "puVar1") ([ "[") (number_literal "0xf") (] "]")) (= "=") (subscript_expression "param_1[0xf]" (identifier "param_1") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "puVar1[0x10] = param_1[0x10];" (assignment_expression "puVar1[0x10] = param_1[0x10]" (subscript_expression "puVar1[0x10]" (identifier "puVar1") ([ "[") (number_literal "0x10") (] "]")) (= "=") (subscript_expression "param_1[0x10]" (identifier "param_1") ([ "[") (number_literal "0x10") (] "]"))) (; ";")) (if_statement "if (param_1[0x11] != 0) {\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" (if "if") (parenthesized_expression "(param_1[0x11] != 0)" (( "(") (binary_expression "param_1[0x11] != 0" (subscript_expression "param_1[0x11]" (identifier "param_1") ([ "[") (number_literal "0x11") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 0x11,param_1[0x11]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 0x11,param_1[0x11]);" (call_expression "CloneString(puVar1 + 0x11,param_1[0x11])" (identifier "CloneString") (argument_list "(puVar1 + 0x11,param_1[0x11])" (( "(") (binary_expression "puVar1 + 0x11" (identifier "puVar1") (+ "+") (number_literal "0x11")) (, ",") (subscript_expression "param_1[0x11]" (identifier "param_1") ([ "[") (number_literal "0x11") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[0x12] != 0) {\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" (if "if") (parenthesized_expression "(param_1[0x12] != 0)" (( "(") (binary_expression "param_1[0x12] != 0" (subscript_expression "param_1[0x12]" (identifier "param_1") ([ "[") (number_literal "0x12") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 0x12,param_1[0x12]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 0x12,param_1[0x12]);" (call_expression "CloneString(puVar1 + 0x12,param_1[0x12])" (identifier "CloneString") (argument_list "(puVar1 + 0x12,param_1[0x12])" (( "(") (binary_expression "puVar1 + 0x12" (identifier "puVar1") (+ "+") (number_literal "0x12")) (, ",") (subscript_expression "param_1[0x12]" (identifier "param_1") ([ "[") (number_literal "0x12") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[0x13] != 0) {\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" (if "if") (parenthesized_expression "(param_1[0x13] != 0)" (( "(") (binary_expression "param_1[0x13] != 0" (subscript_expression "param_1[0x13]" (identifier "param_1") ([ "[") (number_literal "0x13") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 0x13,param_1[0x13]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 0x13,param_1[0x13]);" (call_expression "CloneString(puVar1 + 0x13,param_1[0x13])" (identifier "CloneString") (argument_list "(puVar1 + 0x13,param_1[0x13])" (( "(") (binary_expression "puVar1 + 0x13" (identifier "puVar1") (+ "+") (number_literal "0x13")) (, ",") (subscript_expression "param_1[0x13]" (identifier "param_1") ([ "[") (number_literal "0x13") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[0x14] != 0) {\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" (if "if") (parenthesized_expression "(param_1[0x14] != 0)" (( "(") (binary_expression "param_1[0x14] != 0" (subscript_expression "param_1[0x14]" (identifier "param_1") ([ "[") (number_literal "0x14") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 0x14,param_1[0x14]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 0x14,param_1[0x14]);" (call_expression "CloneString(puVar1 + 0x14,param_1[0x14])" (identifier "CloneString") (argument_list "(puVar1 + 0x14,param_1[0x14])" (( "(") (binary_expression "puVar1 + 0x14" (identifier "puVar1") (+ "+") (number_literal "0x14")) (, ",") (subscript_expression "param_1[0x14]" (identifier "param_1") ([ "[") (number_literal "0x14") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_1[0x15] != 0) {\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" (if "if") (parenthesized_expression "(param_1[0x15] != 0)" (( "(") (binary_expression "param_1[0x15] != 0" (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      CloneString(puVar1 + 0x15,param_1[0x15]);\n    }" ({ "{") (expression_statement "CloneString(puVar1 + 0x15,param_1[0x15]);" (call_expression "CloneString(puVar1 + 0x15,param_1[0x15])" (identifier "CloneString") (argument_list "(puVar1 + 0x15,param_1[0x15])" (( "(") (binary_expression "puVar1 + 0x15" (identifier "puVar1") (+ "+") (number_literal "0x15")) (, ",") (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")) () ")"))) (; ";")) (} "}"))) (expression_statement "uVar2 = param_1[0x6a];" (assignment_expression "uVar2 = param_1[0x6a]" (identifier "uVar2") (= "=") (subscript_expression "param_1[0x6a]" (identifier "param_1") ([ "[") (number_literal "0x6a") (] "]"))) (; ";")) (expression_statement "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);" (assignment_expression "*(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16)" (pointer_expression "*(undefined8 *)(puVar1 + 0x16)" (* "*") (cast_expression "(undefined8 *)(puVar1 + 0x16)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 0x16)" (( "(") (binary_expression "puVar1 + 0x16" (identifier "puVar1") (+ "+") (number_literal "0x16")) () ")")))) (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x16)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x16)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x16)" (( "(") (binary_expression "param_1 + 0x16" (identifier "param_1") (+ "+") (number_literal "0x16")) () ")"))))) (; ";")) (expression_statement "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);" (assignment_expression "*(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18)" (pointer_expression "*(undefined8 *)(puVar1 + 0x18)" (* "*") (cast_expression "(undefined8 *)(puVar1 + 0x18)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + 0x18)" (( "(") (binary_expression "puVar1 + 0x18" (identifier "puVar1") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x18)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x18)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "puVar4 = param_1 + 0xc7f;" (assignment_expression "puVar4 = param_1 + 0xc7f" (identifier "puVar4") (= "=") (binary_expression "param_1 + 0xc7f" (identifier "param_1") (+ "+") (number_literal "0xc7f"))) (; ";")) (expression_statement "puVar5 = puVar1 + 0xc7f;" (assignment_expression "puVar5 = puVar1 + 0xc7f" (identifier "puVar5") (= "=") (binary_expression "puVar1 + 0xc7f" (identifier "puVar1") (+ "+") (number_literal "0xc7f"))) (; ";")) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" (for "for") (( "(") (assignment_expression "iVar3 = 0x14" (identifier "iVar3") (= "=") (number_literal "0x14")) (; ";") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar3 = iVar3 + -1" (identifier "iVar3") (= "=") (binary_expression "iVar3 + -1" (identifier "iVar3") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" ({ "{") (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (pointer_expression "*puVar4" (* "*") (identifier "puVar4"))) (; ";")) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" (identifier "puVar4") (= "=") (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" (identifier "puVar4") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" (identifier "puVar5") (= "=") (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" (identifier "puVar5") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "puVar4 = param_1 + 0x2e;" (assignment_expression "puVar4 = param_1 + 0x2e" (identifier "puVar4") (= "=") (binary_expression "param_1 + 0x2e" (identifier "param_1") (+ "+") (number_literal "0x2e"))) (; ";")) (expression_statement "puVar5 = puVar1 + 0x2e;" (assignment_expression "puVar5 = puVar1 + 0x2e" (identifier "puVar5") (= "=") (binary_expression "puVar1 + 0x2e" (identifier "puVar1") (+ "+") (number_literal "0x2e"))) (; ";")) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" (for "for") (( "(") (assignment_expression "iVar3 = 0x14" (identifier "iVar3") (= "=") (number_literal "0x14")) (; ";") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar3 = iVar3 + -1" (identifier "iVar3") (= "=") (binary_expression "iVar3 + -1" (identifier "iVar3") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" ({ "{") (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (pointer_expression "*puVar4" (* "*") (identifier "puVar4"))) (; ";")) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" (identifier "puVar4") (= "=") (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" (identifier "puVar4") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" (identifier "puVar5") (= "=") (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" (identifier "puVar5") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "puVar4 = param_1 + 0x42;" (assignment_expression "puVar4 = param_1 + 0x42" (identifier "puVar4") (= "=") (binary_expression "param_1 + 0x42" (identifier "param_1") (+ "+") (number_literal "0x42"))) (; ";")) (expression_statement "puVar5 = puVar1 + 0x42;" (assignment_expression "puVar5 = puVar1 + 0x42" (identifier "puVar5") (= "=") (binary_expression "puVar1 + 0x42" (identifier "puVar1") (+ "+") (number_literal "0x42"))) (; ";")) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" (for "for") (( "(") (assignment_expression "iVar3 = 0x14" (identifier "iVar3") (= "=") (number_literal "0x14")) (; ";") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar3 = iVar3 + -1" (identifier "iVar3") (= "=") (binary_expression "iVar3 + -1" (identifier "iVar3") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" ({ "{") (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (pointer_expression "*puVar4" (* "*") (identifier "puVar4"))) (; ";")) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" (identifier "puVar4") (= "=") (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" (identifier "puVar4") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" (identifier "puVar5") (= "=") (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" (identifier "puVar5") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "puVar4 = param_1 + 0x56;" (assignment_expression "puVar4 = param_1 + 0x56" (identifier "puVar4") (= "=") (binary_expression "param_1 + 0x56" (identifier "param_1") (+ "+") (number_literal "0x56"))) (; ";")) (expression_statement "puVar5 = puVar1 + 0x56;" (assignment_expression "puVar5 = puVar1 + 0x56" (identifier "puVar5") (= "=") (binary_expression "puVar1 + 0x56" (identifier "puVar1") (+ "+") (number_literal "0x56"))) (; ";")) (for_statement "for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" (for "for") (( "(") (assignment_expression "iVar3 = 0x14" (identifier "iVar3") (= "=") (number_literal "0x14")) (; ";") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar3 = iVar3 + -1" (identifier "iVar3") (= "=") (binary_expression "iVar3 + -1" (identifier "iVar3") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n      *puVar5 = *puVar4;\n      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;\n      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;\n    }" ({ "{") (expression_statement "*puVar5 = *puVar4;" (assignment_expression "*puVar5 = *puVar4" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (pointer_expression "*puVar4" (* "*") (identifier "puVar4"))) (; ";")) (expression_statement "puVar4 = puVar4 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar4 = puVar4 + (uint)bVar6 * -2 + 1" (identifier "puVar4") (= "=") (binary_expression "puVar4 + (uint)bVar6 * -2 + 1" (binary_expression "puVar4 + (uint)bVar6 * -2" (identifier "puVar4") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar5 = puVar5 + (uint)bVar6 * -2 + 1;" (assignment_expression "puVar5 = puVar5 + (uint)bVar6 * -2 + 1" (identifier "puVar5") (= "=") (binary_expression "puVar5 + (uint)bVar6 * -2 + 1" (binary_expression "puVar5 + (uint)bVar6 * -2" (identifier "puVar5") (+ "+") (binary_expression "(uint)bVar6 * -2" (cast_expression "(uint)bVar6" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar6")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "puVar1[0x6a] = uVar2;" (assignment_expression "puVar1[0x6a] = uVar2" (subscript_expression "puVar1[0x6a]" (identifier "puVar1") ([ "[") (number_literal "0x6a") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (expression_statement "puVar1[0x6b] = param_1[0x6b];" (assignment_expression "puVar1[0x6b] = param_1[0x6b]" (subscript_expression "puVar1[0x6b]" (identifier "puVar1") ([ "[") (number_literal "0x6b") (] "]")) (= "=") (subscript_expression "param_1[0x6b]" (identifier "param_1") ([ "[") (number_literal "0x6b") (] "]"))) (; ";")) (expression_statement "puVar1[0x6c] = param_1[0x6c];" (assignment_expression "puVar1[0x6c] = param_1[0x6c]" (subscript_expression "puVar1[0x6c]" (identifier "puVar1") ([ "[") (number_literal "0x6c") (] "]")) (= "=") (subscript_expression "param_1[0x6c]" (identifier "param_1") ([ "[") (number_literal "0x6c") (] "]"))) (; ";")) (expression_statement "puVar1[0x6e] = param_1[0x6e];" (assignment_expression "puVar1[0x6e] = param_1[0x6e]" (subscript_expression "puVar1[0x6e]" (identifier "puVar1") ([ "[") (number_literal "0x6e") (] "]")) (= "=") (subscript_expression "param_1[0x6e]" (identifier "param_1") ([ "[") (number_literal "0x6e") (] "]"))) (; ";")) (expression_statement "puVar1[1] = param_1[1];" (assignment_expression "puVar1[1] = param_1[1]" (subscript_expression "puVar1[1]" (identifier "puVar1") ([ "[") (number_literal "1") (] "]")) (= "=") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "puVar1[0x6f] = param_1[0x6f];" (assignment_expression "puVar1[0x6f] = param_1[0x6f]" (subscript_expression "puVar1[0x6f]" (identifier "puVar1") ([ "[") (number_literal "0x6f") (] "]")) (= "=") (subscript_expression "param_1[0x6f]" (identifier "param_1") ([ "[") (number_literal "0x6f") (] "]"))) (; ";")) (expression_statement "puVar1[0x70] = param_1[0x70];" (assignment_expression "puVar1[0x70] = param_1[0x70]" (subscript_expression "puVar1[0x70]" (identifier "puVar1") ([ "[") (number_literal "0x70") (] "]")) (= "=") (subscript_expression "param_1[0x70]" (identifier "param_1") ([ "[") (number_literal "0x70") (] "]"))) (; ";")) (expression_statement "puVar1[0x75] = param_1[0x75];" (assignment_expression "puVar1[0x75] = param_1[0x75]" (subscript_expression "puVar1[0x75]" (identifier "puVar1") ([ "[") (number_literal "0x75") (] "]")) (= "=") (subscript_expression "param_1[0x75]" (identifier "param_1") ([ "[") (number_literal "0x75") (] "]"))) (; ";")) (expression_statement "puVar1[0x76] = param_1[0x76];" (assignment_expression "puVar1[0x76] = param_1[0x76]" (subscript_expression "puVar1[0x76]" (identifier "puVar1") ([ "[") (number_literal "0x76") (] "]")) (= "=") (subscript_expression "param_1[0x76]" (identifier "param_1") ([ "[") (number_literal "0x76") (] "]"))) (; ";")) (expression_statement "puVar1[0x77] = param_1[0x77];" (assignment_expression "puVar1[0x77] = param_1[0x77]" (subscript_expression "puVar1[0x77]" (identifier "puVar1") ([ "[") (number_literal "0x77") (] "]")) (= "=") (subscript_expression "param_1[0x77]" (identifier "param_1") ([ "[") (number_literal "0x77") (] "]"))) (; ";")) (if_statement "if (param_1[0x77] != 0) {\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" (if "if") (parenthesized_expression "(param_1[0x77] != 0)" (( "(") (binary_expression "param_1[0x77] != 0" (subscript_expression "param_1[0x77]" (identifier "param_1") ([ "[") (number_literal "0x77") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar2 = FUN_00053ba0(param_1[0x77]);\n      puVar1[0x77] = uVar2;\n    }" ({ "{") (expression_statement "uVar2 = FUN_00053ba0(param_1[0x77]);" (assignment_expression "uVar2 = FUN_00053ba0(param_1[0x77])" (identifier "uVar2") (= "=") (call_expression "FUN_00053ba0(param_1[0x77])" (identifier "FUN_00053ba0") (argument_list "(param_1[0x77])" (( "(") (subscript_expression "param_1[0x77]" (identifier "param_1") ([ "[") (number_literal "0x77") (] "]")) () ")")))) (; ";")) (expression_statement "puVar1[0x77] = uVar2;" (assignment_expression "puVar1[0x77] = uVar2" (subscript_expression "puVar1[0x77]" (identifier "puVar1") ([ "[") (number_literal "0x77") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (param_1[0x73] != 0) {\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" (if "if") (parenthesized_expression "(param_1[0x73] != 0)" (( "(") (binary_expression "param_1[0x73] != 0" (subscript_expression "param_1[0x73]" (identifier "param_1") ([ "[") (number_literal "0x73") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar2 = CloneStringInfo(param_1[0x73]);\n      puVar1[0x73] = uVar2;\n    }" ({ "{") (expression_statement "uVar2 = CloneStringInfo(param_1[0x73]);" (assignment_expression "uVar2 = CloneStringInfo(param_1[0x73])" (identifier "uVar2") (= "=") (call_expression "CloneStringInfo(param_1[0x73])" (identifier "CloneStringInfo") (argument_list "(param_1[0x73])" (( "(") (subscript_expression "param_1[0x73]" (identifier "param_1") ([ "[") (number_literal "0x73") (] "]")) () ")")))) (; ";")) (expression_statement "puVar1[0x73] = uVar2;" (assignment_expression "puVar1[0x73] = uVar2" (subscript_expression "puVar1[0x73]" (identifier "puVar1") ([ "[") (number_literal "0x73") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (expression_statement "SetImageInfoFile(puVar1,param_1[0x79]);" (call_expression "SetImageInfoFile(puVar1,param_1[0x79])" (identifier "SetImageInfoFile") (argument_list "(puVar1,param_1[0x79])" (( "(") (identifier "puVar1") (, ",") (subscript_expression "param_1[0x79]" (identifier "param_1") ([ "[") (number_literal "0x79") (] "]")) () ")"))) (; ";")) (expression_statement "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);" (call_expression "SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b])" (identifier "SetImageInfoBlob") (argument_list "(puVar1,param_1[0x7a],param_1[0x7b])" (( "(") (identifier "puVar1") (, ",") (subscript_expression "param_1[0x7a]" (identifier "param_1") ([ "[") (number_literal "0x7a") (] "]")) (, ",") (subscript_expression "param_1[0x7b]" (identifier "param_1") ([ "[") (number_literal "0x7b") (] "]")) () ")"))) (; ";")) (expression_statement "puVar1[0x78] = param_1[0x78];" (assignment_expression "puVar1[0x78] = param_1[0x78]" (subscript_expression "puVar1[0x78]" (identifier "puVar1") ([ "[") (number_literal "0x78") (] "]")) (= "=") (subscript_expression "param_1[0x78]" (identifier "param_1") ([ "[") (number_literal "0x78") (] "]"))) (; ";")) (expression_statement "puVar1[0xc7e] = param_1[0xc7e];" (assignment_expression "puVar1[0xc7e] = param_1[0xc7e]" (subscript_expression "puVar1[0xc7e]" (identifier "puVar1") ([ "[") (number_literal "0xc7e") (] "]")) (= "=") (subscript_expression "param_1[0xc7e]" (identifier "param_1") ([ "[") (number_literal "0xc7e") (] "]"))) (; ";")) (expression_statement "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" (identifier "CopyMagickString") (argument_list "(puVar1 + 0x7c,param_1 + 0x7c,0x1000)" (( "(") (binary_expression "puVar1 + 0x7c" (identifier "puVar1") (+ "+") (number_literal "0x7c")) (, ",") (binary_expression "param_1 + 0x7c" (identifier "param_1") (+ "+") (number_literal "0x7c")) (, ",") (number_literal "0x1000") () ")"))) (; ";")) (expression_statement "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" (identifier "CopyMagickString") (argument_list "(puVar1 + 0x47c,param_1 + 0x47c,0x1000)" (( "(") (binary_expression "puVar1 + 0x47c" (identifier "puVar1") (+ "+") (number_literal "0x47c")) (, ",") (binary_expression "param_1 + 0x47c" (identifier "param_1") (+ "+") (number_literal "0x47c")) (, ",") (number_literal "0x1000") () ")"))) (; ";")) (expression_statement "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);" (call_expression "CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" (identifier "CopyMagickString") (argument_list "(puVar1 + 0x87c,param_1 + 0x87c,0x1000)" (( "(") (binary_expression "puVar1 + 0x87c" (identifier "puVar1") (+ "+") (number_literal "0x87c")) (, ",") (binary_expression "param_1 + 0x87c" (identifier "param_1") (+ "+") (number_literal "0x87c")) (, ",") (number_literal "0x1000") () ")"))) (; ";")) (expression_statement "puVar1[0x71] = param_1[0x71];" (assignment_expression "puVar1[0x71] = param_1[0x71]" (subscript_expression "puVar1[0x71]" (identifier "puVar1") ([ "[") (number_literal "0x71") (] "]")) (= "=") (subscript_expression "param_1[0x71]" (identifier "param_1") ([ "[") (number_literal "0x71") (] "]"))) (; ";")) (expression_statement "CloneImageOptions(puVar1,param_1);" (call_expression "CloneImageOptions(puVar1,param_1)" (identifier "CloneImageOptions") (argument_list "(puVar1,param_1)" (( "(") (identifier "puVar1") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "uVar2 = IsEventLogging();" (assignment_expression "uVar2 = IsEventLogging()" (identifier "uVar2") (= "=") (call_expression "IsEventLogging()" (identifier "IsEventLogging") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar1[0xc7c] = uVar2;" (assignment_expression "puVar1[0xc7c] = uVar2" (subscript_expression "puVar1[0xc7c]" (identifier "puVar1") ([ "[") (number_literal "0xc7c") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (expression_statement "puVar1[0xc7d] = param_1[0xc7d];" (assignment_expression "puVar1[0xc7d] = param_1[0xc7d]" (subscript_expression "puVar1[0xc7d]" (identifier "puVar1") ([ "[") (number_literal "0xc7d") (] "]")) (= "=") (subscript_expression "param_1[0xc7d]" (identifier "param_1") ([ "[") (number_literal "0xc7d") (] "]"))) (; ";")) (} "}"))) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */
/* WARNING: Enum "ChannelType": Some values do not have unique names */
/* WARNING: Enum "GravityType": Some values do not have unique names */
/* WARNING: Enum "DisposeType": Some values do not have unique names */
/* WARNING: Enum "PixelChannel": Some values do not have unique names */

type_1 * function_1(type_1 *var_2)

{
  type_1 *image_info_00;
  type_2 pvVar1;
  type_3 *pSVar2;
  type_4 MVar3;
  int var_4;
  type_5 *pPVar5;
  type_5 *pPVar6;
  type_6 bVar7;
  
  bVar7 = 0;
  image_info_00 = var_1();
  if (var_2 != (type_1 *)0x0) {
    image_info_00->compression = var_2->compression;
    image_info_00->temporary = var_2->temporary;
    image_info_00->adjoin = var_2->adjoin;
    image_info_00->antialias = var_2->antialias;
    image_info_00->scene = var_2->scene;
    image_info_00->number_scenes = var_2->number_scenes;
    image_info_00->depth = var_2->depth;
    if (var_2->size != (char *)0x0) {
      var_3(&image_info_00->size,var_2->size);
    }
    if (var_2->extract != (char *)0x0) {
      var_3(&image_info_00->extract,var_2->extract);
    }
    if (var_2->scenes != (char *)0x0) {
      var_3(&image_info_00->scenes,var_2->scenes);
    }
    if (var_2->page != (char *)0x0) {
      var_3(&image_info_00->page,var_2->page);
    }
    image_info_00->interlace = var_2->interlace;
    image_info_00->endian = var_2->endian;
    image_info_00->units = var_2->units;
    image_info_00->quality = var_2->quality;
    if (var_2->sampling_factor != (char *)0x0) {
      var_3(&image_info_00->sampling_factor,var_2->sampling_factor);
    }
    if (var_2->server_name != (char *)0x0) {
      var_3(&image_info_00->server_name,var_2->server_name);
    }
    if (var_2->font != (char *)0x0) {
      var_3(&image_info_00->font,var_2->font);
    }
    if (var_2->texture != (char *)0x0) {
      var_3(&image_info_00->texture,var_2->texture);
    }
    if (var_2->density != (char *)0x0) {
      var_3(&image_info_00->density,var_2->density);
    }
    MVar3 = var_2->dither;
    image_info_00->pointsize = var_2->pointsize;
    image_info_00->fuzz = var_2->fuzz;
    pPVar5 = &var_2->matte_color;
    pPVar6 = &image_info_00->matte_color;
    for (var_4 = 0x14; var_4 != 0; var_4 = var_4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (type_5 *)((int)pPVar5 + (type_7)bVar7 * -8 + 4);
      pPVar6 = (type_5 *)((int)pPVar6 + (type_7)bVar7 * -8 + 4);
    }
    pPVar5 = &var_2->background_color;
    pPVar6 = &image_info_00->background_color;
    for (var_4 = 0x14; var_4 != 0; var_4 = var_4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (type_5 *)((int)pPVar5 + (type_7)bVar7 * -8 + 4);
      pPVar6 = (type_5 *)((int)pPVar6 + (type_7)bVar7 * -8 + 4);
    }
    pPVar5 = &var_2->border_color;
    pPVar6 = &image_info_00->border_color;
    for (var_4 = 0x14; var_4 != 0; var_4 = var_4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (type_5 *)((int)pPVar5 + (type_7)bVar7 * -8 + 4);
      pPVar6 = (type_5 *)((int)pPVar6 + (type_7)bVar7 * -8 + 4);
    }
    pPVar5 = &var_2->transparent_color;
    pPVar6 = &image_info_00->transparent_color;
    for (var_4 = 0x14; var_4 != 0; var_4 = var_4 + -1) {
      pPVar6->storage_class = pPVar5->storage_class;
      pPVar5 = (type_5 *)((int)pPVar5 + (type_7)bVar7 * -8 + 4);
      pPVar6 = (type_5 *)((int)pPVar6 + (type_7)bVar7 * -8 + 4);
    }
    image_info_00->dither = MVar3;
    image_info_00->monochrome = var_2->monochrome;
    image_info_00->colorspace = var_2->colorspace;
    image_info_00->type = var_2->type;
    image_info_00->orientation = var_2->orientation;
    image_info_00->ping = var_2->ping;
    image_info_00->verbose = var_2->verbose;
    image_info_00->progress_monitor = var_2->progress_monitor;
    image_info_00->client_data = var_2->client_data;
    image_info_00->cache = var_2->cache;
    if (var_2->cache != (type_2)0x0) {
      pvVar1 = var_5(var_2->cache);
      image_info_00->cache = pvVar1;
    }
    if ((type_3 *)var_2->profile != (type_3 *)0x0) {
      pSVar2 = var_6((type_3 *)var_2->profile);
      image_info_00->profile = pSVar2;
    }
    var_7(image_info_00,var_2->file);
    var_8(image_info_00,var_2->blob,var_2->length);
    image_info_00->stream = var_2->stream;
    image_info_00->custom_stream = var_2->custom_stream;
    var_9(image_info_00->magick,var_2->magick,0x1000);
    var_9(image_info_00->unique,var_2->unique,0x1000);
    var_9(image_info_00->filename,var_2->filename,0x1000);
    image_info_00->channel = var_2->channel;
    var_10(image_info_00,var_2);
    MVar3 = var_11();
    image_info_00->debug = MVar3;
    image_info_00->signature = var_2->signature;
  }
  return image_info_00;
}


(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier)))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal)) (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))))) (return_statement (identifier)))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4 * MASKED(undefined4 *param_1)

{
  undefined4 *puVar1;
  undefined4 uVar2;
  int iVar3;
  undefined4 *puVar4;
  undefined4 *puVar5;
  byte bVar6;
  
  bVar6 = 0;
  puVar1 = (undefined4 *)AcquireImageInfo();
  if (param_1 != (undefined4 *)0x0) {
    *puVar1 = *param_1;
    puVar1[2] = param_1[2];
    puVar1[3] = param_1[3];
    puVar1[5] = param_1[5];
    puVar1[10] = param_1[10];
    puVar1[0xb] = param_1[0xb];
    puVar1[0xc] = param_1[0xc];
    if (param_1[6] != 0) {
      CloneString(puVar1 + 6,param_1[6]);
    }
    if (param_1[7] != 0) {
      CloneString(puVar1 + 7,param_1[7]);
    }
    if (param_1[9] != 0) {
      CloneString(puVar1 + 9,param_1[9]);
    }
    if (param_1[8] != 0) {
      CloneString(puVar1 + 8,param_1[8]);
    }
    puVar1[0xd] = param_1[0xd];
    puVar1[0xe] = param_1[0xe];
    puVar1[0xf] = param_1[0xf];
    puVar1[0x10] = param_1[0x10];
    if (param_1[0x11] != 0) {
      CloneString(puVar1 + 0x11,param_1[0x11]);
    }
    if (param_1[0x12] != 0) {
      CloneString(puVar1 + 0x12,param_1[0x12]);
    }
    if (param_1[0x13] != 0) {
      CloneString(puVar1 + 0x13,param_1[0x13]);
    }
    if (param_1[0x14] != 0) {
      CloneString(puVar1 + 0x14,param_1[0x14]);
    }
    if (param_1[0x15] != 0) {
      CloneString(puVar1 + 0x15,param_1[0x15]);
    }
    uVar2 = param_1[0x6a];
    *(undefined8 *)(puVar1 + 0x16) = *(undefined8 *)(param_1 + 0x16);
    *(undefined8 *)(puVar1 + 0x18) = *(undefined8 *)(param_1 + 0x18);
    puVar4 = param_1 + 0xc7f;
    puVar5 = puVar1 + 0xc7f;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x2e;
    puVar5 = puVar1 + 0x2e;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x42;
    puVar5 = puVar1 + 0x42;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar4 = param_1 + 0x56;
    puVar5 = puVar1 + 0x56;
    for (iVar3 = 0x14; iVar3 != 0; iVar3 = iVar3 + -1) {
      *puVar5 = *puVar4;
      puVar4 = puVar4 + (uint)bVar6 * -2 + 1;
      puVar5 = puVar5 + (uint)bVar6 * -2 + 1;
    }
    puVar1[0x6a] = uVar2;
    puVar1[0x6b] = param_1[0x6b];
    puVar1[0x6c] = param_1[0x6c];
    puVar1[0x6e] = param_1[0x6e];
    puVar1[1] = param_1[1];
    puVar1[0x6f] = param_1[0x6f];
    puVar1[0x70] = param_1[0x70];
    puVar1[0x75] = param_1[0x75];
    puVar1[0x76] = param_1[0x76];
    puVar1[0x77] = param_1[0x77];
    if (param_1[0x77] != 0) {
      uVar2 = FUN_00053ba0(param_1[0x77]);
      puVar1[0x77] = uVar2;
    }
    if (param_1[0x73] != 0) {
      uVar2 = CloneStringInfo(param_1[0x73]);
      puVar1[0x73] = uVar2;
    }
    SetImageInfoFile(puVar1,param_1[0x79]);
    SetImageInfoBlob(puVar1,param_1[0x7a],param_1[0x7b]);
    puVar1[0x78] = param_1[0x78];
    puVar1[0xc7e] = param_1[0xc7e];
    CopyMagickString(puVar1 + 0x7c,param_1 + 0x7c,0x1000);
    CopyMagickString(puVar1 + 0x47c,param_1 + 0x47c,0x1000);
    CopyMagickString(puVar1 + 0x87c,param_1 + 0x87c,0x1000);
    puVar1[0x71] = param_1[0x71];
    CloneImageOptions(puVar1,param_1);
    uVar2 = IsEventLogging();
    puVar1[0xc7c] = uVar2;
    puVar1[0xc7d] = param_1[0xc7d];
  }
  return puVar1;
}

