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

MagickBooleanType MagickEdgeImage(MagickWand *wand,double radius)

{
  Image *pIVar1;
  ExceptionInfo *pEVar2;
  int iVar3;
  
  if (wand == (MagickWand *)0x0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")
    ;
  }
  if (wand->signature == 0xabacadab) {
    if (wand->debug == MagickFalse) {
      pIVar1 = wand->images;
      pEVar2 = wand->exception;
    }
    else {
      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);
      pIVar1 = wand->images;
      pEVar2 = wand->exception;
    }
    if (pIVar1 != (Image *)0x0) {
      iVar3 = EdgeImage(pIVar1,radius,pEVar2);
      if (iVar3 != 0) {
        ReplaceImageInList(&wand->images,iVar3);
      }
      return (uint)(iVar3 != 0);
    }
    ThrowMagickException
              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",
               &DAT_000e672e,wand->name);
    return MagickFalse;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,
                "MagickEdgeImage");
}



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

bool MagickEdgeImage(int param_1,undefined8 param_2)

{
  undefined4 uVar1;
  int iVar2;
  
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")
    ;
  }
  if (*(int *)(param_1 + 0x101c) == -0x54535255) {
    if (*(int *)(param_1 + 0x1018) == 0) {
      iVar2 = *(int *)(param_1 + 0x1004);
      uVar1 = *(undefined4 *)(param_1 + 0x100c);
    }
    else {
      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);
      iVar2 = *(int *)(param_1 + 0x1004);
      uVar1 = *(undefined4 *)(param_1 + 0x100c);
    }
    if (iVar2 != 0) {
      iVar2 = EdgeImage(iVar2,param_2,uVar1);
      if (iVar2 != 0) {
        ReplaceImageInList(param_1 + 0x1004,iVar2);
      }
      return iVar2 != 0;
    }
    ThrowMagickException
              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",
               &DAT_000e672e,param_1 + 4);
    return false;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,
                "MagickEdgeImage");
}


PUSH ESI
PUSH EBX
CALL 0x0001e8f0
ADD EBX,0xf5419
SUB ESP,0x14
MOV ESI,dword ptr [ESP + 0x20]
FLD qword ptr [ESP + 0x24]
TEST ESI,ESI
JZ 0x00070d20
CMP dword ptr [ESI + 0x101c],0xabacadab
JNZ 0x00070cff
MOV EAX,dword ptr [ESI + 0x1018]
TEST EAX,EAX
JNZ 0x00070c68
MOV EAX,dword ptr [ESI + 0x1004]
MOV EDX,dword ptr [ESI + 0x100c]
TEST EAX,EAX
JZ 0x00070cc0
PUSH EDX
SUB ESP,0x8
FSTP qword ptr [ESP]
PUSH EAX
CALL 0x0001e1d0
ADD ESP,0x10
XOR EDX,EDX
TEST EAX,EAX
JZ 0x00070c5c
SUB ESP,0x8
ADD ESI,0x1004
PUSH EAX
PUSH ESI
CALL 0x0001e4c0
ADD ESP,0x10
MOV EDX,0x1
ADD ESP,0x14
MOV EAX,EDX
POP EBX
POP ESI
RET
FSTP qword ptr [ESP + 0x8]
LEA EAX,[ESI + 0x4]
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0xfff92fa4]
PUSH EAX
LEA EAX,[EBX + 0xfff915cc]
PUSH 0xc03
PUSH EAX
LEA EAX,[EBX + 0xfff8e919]
PUSH EAX
PUSH 0x40000
CALL 0x0001d6f0
MOV EAX,dword ptr [ESI + 0x1004]
ADD ESP,0x20
FLD qword ptr [ESP + 0x8]
MOV EDX,dword ptr [ESI + 0x100c]
TEST EAX,EAX
JNZ 0x00070c2e
FSTP ST0
JMP 0x00070cc2
FSTP ST0
LEA EAX,[EBX + 0xfff8072e]
ADD ESI,0x4
PUSH ESI
PUSH EAX
LEA EAX,[EBX + 0xfff884fe]
PUSH EAX
LEA EAX,[EBX + 0xfff915cc]
PUSH 0x1d6
PUSH 0xc05
PUSH EAX
LEA EAX,[EBX + 0xfff8e919]
PUSH EAX
PUSH EDX
CALL 0x0001de10
ADD ESP,0x20
XOR EDX,EDX
ADD ESP,0x14
MOV EAX,EDX
POP EBX
POP ESI
RET
FSTP ST0
LEA EAX,[EBX + 0xfff915dc]
PUSH EAX
LEA EAX,[EBX + 0xfff8e919]
PUSH 0xc01
PUSH EAX
LEA EAX,[EBX + 0xfff8e9f8]
PUSH EAX
CALL 0x0001ccf0
FSTP ST0
LEA EAX,[EBX + 0xfff915dc]
PUSH EAX
LEA EAX,[EBX + 0xfff8e919]
PUSH 0xc00
PUSH EAX
LEA EAX,[EBX + 0xfff8e933]
PUSH EAX
CALL 0x0001ccf0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbool MagickEdgeImage(int param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}\n\n" comment (function_definition "bool MagickEdgeImage(int param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" primitive_type (function_declarator "MagickEdgeImage(int param_1,undefined8 param_2)" identifier (parameter_list "(int param_1,undefined8 param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (if_statement "if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" { comment (expression_statement "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;" (call_expression "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" identifier (argument_list "("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" ( (string_literal ""wand != (MagickWand *) NULL"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x101c) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x101c) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x101c)" * (cast_expression "(int *)(param_1 + 0x101c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x101c)" ( (binary_expression "param_1 + 0x101c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" { (if_statement "if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1018) == 0)" ( (binary_expression "*(int *)(param_1 + 0x1018) == 0" (pointer_expression "*(int *)(param_1 + 0x1018)" * (cast_expression "(int *)(param_1 + 0x1018)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1018)" ( (binary_expression "param_1 + 0x1018" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" { (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" identifier = (pointer_expression "*(int *)(param_1 + 0x1004)" * (cast_expression "(int *)(param_1 + 0x1004)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1004)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" * (cast_expression "(undefined4 *)(param_1 + 0x100c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x100c)" ( (binary_expression "param_1 + 0x100c" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" else (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);" (call_expression "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" identifier (argument_list "(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" ( number_literal , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" identifier = (pointer_expression "*(int *)(param_1 + 0x1004)" * (cast_expression "(int *)(param_1 + 0x1004)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1004)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" * (cast_expression "(undefined4 *)(param_1 + 0x100c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x100c)" ( (binary_expression "param_1 + 0x100c" identifier + number_literal) ))))) ;) }))) (if_statement "if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" { (expression_statement "iVar2 = EdgeImage(iVar2,param_2,uVar1);" (assignment_expression "iVar2 = EdgeImage(iVar2,param_2,uVar1)" identifier = (call_expression "EdgeImage(iVar2,param_2,uVar1)" identifier (argument_list "(iVar2,param_2,uVar1)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" { (expression_statement "ReplaceImageInList(param_1 + 0x1004,iVar2);" (call_expression "ReplaceImageInList(param_1 + 0x1004,iVar2)" identifier (argument_list "(param_1 + 0x1004,iVar2)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) , identifier ))) ;) })) (return_statement "return iVar2 != 0;" return (binary_expression "iVar2 != 0" identifier != number_literal) ;) })) (expression_statement "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);" (call_expression "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" identifier (argument_list "(uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" ( identifier , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , number_literal , (string_literal ""ContainsNoImages"" " string_content ") , (pointer_expression "&DAT_000e672e" & identifier) , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (return_statement "return false;" return false ;) })) comment (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\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 "ChannelType": Some values do not have unique names */\n/* WARNING: Enum "PixelChannel": Some values do not have unique names */\n/* WARNING: Enum "ExceptionType": Some values do not have unique names */\n\nMagickBooleanType MagickEdgeImage(MagickWand *wand,double radius)\n\n{\n  Image *pIVar1;\n  ExceptionInfo *pEVar2;\n  int iVar3;\n  \n  if (wand == (MagickWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }\n    ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);\n    return MagickFalse;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}\n\n" comment comment comment comment comment comment comment (function_definition "MagickBooleanType MagickEdgeImage(MagickWand *wand,double radius)\n\n{\n  Image *pIVar1;\n  ExceptionInfo *pEVar2;\n  int iVar3;\n  \n  if (wand == (MagickWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }\n    ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);\n    return MagickFalse;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" type_identifier (function_declarator "MagickEdgeImage(MagickWand *wand,double radius)" identifier (parameter_list "(MagickWand *wand,double radius)" ( (parameter_declaration "MagickWand *wand" type_identifier (pointer_declarator "*wand" * identifier)) , (parameter_declaration "double radius" primitive_type identifier) ))) (compound_statement "{\n  Image *pIVar1;\n  ExceptionInfo *pEVar2;\n  int iVar3;\n  \n  if (wand == (MagickWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }\n    ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);\n    return MagickFalse;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" { (declaration "Image *pIVar1;" type_identifier (pointer_declarator "*pIVar1" * identifier) ;) (declaration "ExceptionInfo *pEVar2;" type_identifier (pointer_declarator "*pEVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (if_statement "if (wand == (MagickWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" if (parenthesized_expression "(wand == (MagickWand *)0x0)" ( (binary_expression "wand == (MagickWand *)0x0" identifier == (cast_expression "(MagickWand *)0x0" ( (type_descriptor "MagickWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" { comment (expression_statement "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;" (call_expression "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" identifier (argument_list "("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" ( (string_literal ""wand != (MagickWand *) NULL"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })) (if_statement "if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }\n    ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);\n    return MagickFalse;\n  }" if (parenthesized_expression "(wand->signature == 0xabacadab)" ( (binary_expression "wand->signature == 0xabacadab" (field_expression "wand->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }\n    ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);\n    return MagickFalse;\n  }" { (if_statement "if (wand->debug == MagickFalse) {\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }" if (parenthesized_expression "(wand->debug == MagickFalse)" ( (binary_expression "wand->debug == MagickFalse" (field_expression "wand->debug" identifier -> field_identifier) == identifier) )) (compound_statement "{\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }" { (expression_statement "pIVar1 = wand->images;" (assignment_expression "pIVar1 = wand->images" identifier = (field_expression "wand->images" identifier -> field_identifier)) ;) (expression_statement "pEVar2 = wand->exception;" (assignment_expression "pEVar2 = wand->exception" identifier = (field_expression "wand->exception" identifier -> field_identifier)) ;) }) (else_clause "else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }" else (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);\n      pIVar1 = wand->images;\n      pEVar2 = wand->exception;\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name);" (call_expression "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name)" identifier (argument_list "(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",wand->name)" ( number_literal , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (field_expression "wand->name" identifier -> field_identifier) ))) ;) (expression_statement "pIVar1 = wand->images;" (assignment_expression "pIVar1 = wand->images" identifier = (field_expression "wand->images" identifier -> field_identifier)) ;) (expression_statement "pEVar2 = wand->exception;" (assignment_expression "pEVar2 = wand->exception" identifier = (field_expression "wand->exception" identifier -> field_identifier)) ;) }))) (if_statement "if (pIVar1 != (Image *)0x0) {\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }" if (parenthesized_expression "(pIVar1 != (Image *)0x0)" ( (binary_expression "pIVar1 != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar3 = EdgeImage(pIVar1,radius,pEVar2);\n      if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }\n      return (uint)(iVar3 != 0);\n    }" { (expression_statement "iVar3 = EdgeImage(pIVar1,radius,pEVar2);" (assignment_expression "iVar3 = EdgeImage(pIVar1,radius,pEVar2)" identifier = (call_expression "EdgeImage(pIVar1,radius,pEVar2)" identifier (argument_list "(pIVar1,radius,pEVar2)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n        ReplaceImageInList(&wand->images,iVar3);\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        ReplaceImageInList(&wand->images,iVar3);\n      }" { (expression_statement "ReplaceImageInList(&wand->images,iVar3);" (call_expression "ReplaceImageInList(&wand->images,iVar3)" identifier (argument_list "(&wand->images,iVar3)" ( (pointer_expression "&wand->images" & (field_expression "wand->images" identifier -> field_identifier)) , identifier ))) ;) })) (return_statement "return (uint)(iVar3 != 0);" return (call_expression "(uint)(iVar3 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) ))) ;) })) (expression_statement "ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name);" (call_expression "ThrowMagickException\n              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name)" identifier (argument_list "(pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,wand->name)" ( identifier , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , number_literal , (string_literal ""ContainsNoImages"" " string_content ") , (pointer_expression "&DAT_000e672e" & identifier) , (field_expression "wand->name" identifier -> field_identifier) ))) ;) (return_statement "return MagickFalse;" return identifier ;) })) comment (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })))
(translation_unit "bool MagickEdgeImage(int param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}\n\n" (function_definition "bool MagickEdgeImage(int param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" primitive_type (function_declarator "MagickEdgeImage(int param_1,undefined8 param_2)" identifier (parameter_list "(int param_1,undefined8 param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (if_statement "if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" { (expression_statement "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;" (call_expression "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" identifier (argument_list "("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" ( (string_literal ""wand != (MagickWand *) NULL"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x101c) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x101c) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x101c)" * (cast_expression "(int *)(param_1 + 0x101c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x101c)" ( (binary_expression "param_1 + 0x101c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" { (if_statement "if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1018) == 0)" ( (binary_expression "*(int *)(param_1 + 0x1018) == 0" (pointer_expression "*(int *)(param_1 + 0x1018)" * (cast_expression "(int *)(param_1 + 0x1018)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1018)" ( (binary_expression "param_1 + 0x1018" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" { (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" identifier = (pointer_expression "*(int *)(param_1 + 0x1004)" * (cast_expression "(int *)(param_1 + 0x1004)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1004)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" * (cast_expression "(undefined4 *)(param_1 + 0x100c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x100c)" ( (binary_expression "param_1 + 0x100c" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" else (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);" (call_expression "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" identifier (argument_list "(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" ( number_literal , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" identifier = (pointer_expression "*(int *)(param_1 + 0x1004)" * (cast_expression "(int *)(param_1 + 0x1004)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1004)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" * (cast_expression "(undefined4 *)(param_1 + 0x100c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x100c)" ( (binary_expression "param_1 + 0x100c" identifier + number_literal) ))))) ;) }))) (if_statement "if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" { (expression_statement "iVar2 = EdgeImage(iVar2,param_2,uVar1);" (assignment_expression "iVar2 = EdgeImage(iVar2,param_2,uVar1)" identifier = (call_expression "EdgeImage(iVar2,param_2,uVar1)" identifier (argument_list "(iVar2,param_2,uVar1)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" { (expression_statement "ReplaceImageInList(param_1 + 0x1004,iVar2);" (call_expression "ReplaceImageInList(param_1 + 0x1004,iVar2)" identifier (argument_list "(param_1 + 0x1004,iVar2)" ( (binary_expression "param_1 + 0x1004" identifier + number_literal) , identifier ))) ;) })) (return_statement "return iVar2 != 0;" return (binary_expression "iVar2 != 0" identifier != number_literal) ;) })) (expression_statement "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);" (call_expression "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" identifier (argument_list "(uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" ( identifier , (string_literal ""MagickWand/magick-image.c"" " string_content ") , (string_literal ""MagickEdgeImage"" " string_content ") , number_literal , number_literal , (string_literal ""ContainsNoImages"" " string_content ") , (pointer_expression "&DAT_000e672e" & identifier) , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (return_statement "return false;" return false ;) })) (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/magick-image.c"" " string_content ") , number_literal , (string_literal ""MagickEdgeImage"" " string_content ") ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ;) })) (return_statement return (binary_expression IDENT != LIT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (string_literal " string_content ") , LIT , LIT , (string_literal " string_content ") , (pointer_expression & IDENT) , (binary_expression IDENT + LIT) ))) ;) (return_statement return BOOL ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })))
(function_definition "bool MagickEdgeImage(int param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" (primitive_type "bool") (function_declarator "MagickEdgeImage(int param_1,undefined8 param_2)" (identifier "MagickEdgeImage") (parameter_list "(int param_1,undefined8 param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined4 uVar1;\n  int iVar2;\n  \n  if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }\n  if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");\n}" ({ "{") (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (if_statement "if (param_1 == 0) {\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;\n  }" ({ "{") (expression_statement "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")\n    ;" (call_expression "__assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" (identifier "__assert_fail") (argument_list "("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")" (( "(") (string_literal ""wand != (MagickWand *) NULL"" (" """) (string_content "wand != (MagickWand *) NULL") (" """)) (, ",") (string_literal ""MagickWand/magick-image.c"" (" """) (string_content "MagickWand/magick-image.c") (" """)) (, ",") (number_literal "0xc00") (, ",") (string_literal ""MagickEdgeImage"" (" """) (string_content "MagickEdgeImage") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x101c) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x101c) == -0x54535255)" (( "(") (binary_expression "*(int *)(param_1 + 0x101c) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x101c)" (* "*") (cast_expression "(int *)(param_1 + 0x101c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x101c)" (( "(") (binary_expression "param_1 + 0x101c" (identifier "param_1") (+ "+") (number_literal "0x101c")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }\n    ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);\n    return false;\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x1018) == 0) {\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }\n    else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1018) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x1018) == 0" (pointer_expression "*(int *)(param_1 + 0x1018)" (* "*") (cast_expression "(int *)(param_1 + 0x1018)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1018)" (( "(") (binary_expression "param_1 + 0x1018" (identifier "param_1") (+ "+") (number_literal "0x1018")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" ({ "{") (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(param_1 + 0x1004)" (* "*") (cast_expression "(int *)(param_1 + 0x1004)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1004)" (( "(") (binary_expression "param_1 + 0x1004" (identifier "param_1") (+ "+") (number_literal "0x1004")) () ")"))))) (; ";")) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" (identifier "uVar1") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x100c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x100c)" (( "(") (binary_expression "param_1 + 0x100c" (identifier "param_1") (+ "+") (number_literal "0x100c")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" (else "else") (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);\n      iVar2 = *(int *)(param_1 + 0x1004);\n      uVar1 = *(undefined4 *)(param_1 + 0x100c);\n    }" ({ "{") (expression_statement "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4);" (call_expression "LogMagickEvent(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" (identifier "LogMagickEvent") (argument_list "(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",param_1 + 4)" (( "(") (number_literal "0x40000") (, ",") (string_literal ""MagickWand/magick-image.c"" (" """) (string_content "MagickWand/magick-image.c") (" """)) (, ",") (string_literal ""MagickEdgeImage"" (" """) (string_content "MagickEdgeImage") (" """)) (, ",") (number_literal "0xc03") (, ",") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(param_1 + 0x1004);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x1004)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(param_1 + 0x1004)" (* "*") (cast_expression "(int *)(param_1 + 0x1004)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1004)" (( "(") (binary_expression "param_1 + 0x1004" (identifier "param_1") (+ "+") (number_literal "0x1004")) () ")"))))) (; ";")) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x100c);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x100c)" (identifier "uVar1") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x100c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x100c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x100c)" (( "(") (binary_expression "param_1 + 0x100c" (identifier "param_1") (+ "+") (number_literal "0x100c")) () ")"))))) (; ";")) (} "}")))) (if_statement "if (iVar2 != 0) {\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar2 = EdgeImage(iVar2,param_2,uVar1);\n      if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }\n      return iVar2 != 0;\n    }" ({ "{") (expression_statement "iVar2 = EdgeImage(iVar2,param_2,uVar1);" (assignment_expression "iVar2 = EdgeImage(iVar2,param_2,uVar1)" (identifier "iVar2") (= "=") (call_expression "EdgeImage(iVar2,param_2,uVar1)" (identifier "EdgeImage") (argument_list "(iVar2,param_2,uVar1)" (( "(") (identifier "iVar2") (, ",") (identifier "param_2") (, ",") (identifier "uVar1") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) {\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        ReplaceImageInList(param_1 + 0x1004,iVar2);\n      }" ({ "{") (expression_statement "ReplaceImageInList(param_1 + 0x1004,iVar2);" (call_expression "ReplaceImageInList(param_1 + 0x1004,iVar2)" (identifier "ReplaceImageInList") (argument_list "(param_1 + 0x1004,iVar2)" (( "(") (binary_expression "param_1 + 0x1004" (identifier "param_1") (+ "+") (number_literal "0x1004")) (, ",") (identifier "iVar2") () ")"))) (; ";")) (} "}"))) (return_statement "return iVar2 != 0;" (return "return") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4);" (call_expression "ThrowMagickException\n              (uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" (identifier "ThrowMagickException") (argument_list "(uVar1,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",\n               &DAT_000e672e,param_1 + 4)" (( "(") (identifier "uVar1") (, ",") (string_literal ""MagickWand/magick-image.c"" (" """) (string_content "MagickWand/magick-image.c") (" """)) (, ",") (string_literal ""MagickEdgeImage"" (" """) (string_content "MagickEdgeImage") (" """)) (, ",") (number_literal "0xc05") (, ",") (number_literal "0x1d6") (, ",") (string_literal ""ContainsNoImages"" (" """) (string_content "ContainsNoImages") (" """)) (, ",") (pointer_expression "&DAT_000e672e" (& "&") (identifier "DAT_000e672e")) (, ",") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (return_statement "return false;" (return "return") (false "false") (; ";")) (} "}"))) (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" (identifier "__assert_fail") (argument_list "("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,\n                "MagickEdgeImage")" (( "(") (string_literal ""wand->signature == MagickWandSignature"" (" """) (string_content "wand->signature == MagickWandSignature") (" """)) (, ",") (string_literal ""MagickWand/magick-image.c"" (" """) (string_content "MagickWand/magick-image.c") (" """)) (, ",") (number_literal "0xc01") (, ",") (string_literal ""MagickEdgeImage"" (" """) (string_content "MagickEdgeImage") (" """)) () ")"))) (; ";")) (} "}")))

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

type_1 function_1(type_2 *var_1,double radius)

{
  type_3 *var_5;
  type_4 *pEVar2;
  int var_7;
  
  if (var_1 == (type_2 *)0x0) {
                    /* WARNING: Subroutine does not return */
    var_2("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MagickEdgeImage")
    ;
  }
  if (var_1->signature == 0xabacadab) {
    if (var_1->debug == var_3) {
      var_5 = var_1->images;
      pEVar2 = var_1->exception;
    }
    else {
      var_4(0x40000,"MagickWand/magick-image.c","MagickEdgeImage",0xc03,"%s",var_1->name);
      var_5 = var_1->images;
      pEVar2 = var_1->exception;
    }
    if (var_5 != (type_3 *)0x0) {
      var_7 = var_6(var_5,radius,pEVar2);
      if (var_7 != 0) {
        var_8(&var_1->images,var_7);
      }
      return (uint)(var_7 != 0);
    }
    var_9
              (pEVar2,"MagickWand/magick-image.c","MagickEdgeImage",0xc05,0x1d6,"ContainsNoImages",
               &DAT_000e672e,var_1->name);
    return var_3;
  }
                    /* WARNING: Subroutine does not return */
  var_2("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,
                "MagickEdgeImage");
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal) (string_literal (string_content))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) 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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (string_literal (string_content)) (number_literal) (string_literal (string_content)) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) 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)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (return_statement (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (string_literal (string_content)) (string_literal (string_content)) (number_literal) (number_literal) (string_literal (string_content)) (pointer_expression argument: (identifier)) (binary_expression left: (identifier) right: (number_literal))))) (return_statement (false)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (string_literal (string_content)) (number_literal) (string_literal (string_content))))))))

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

bool MASKED(int param_1,undefined8 param_2)

{
  undefined4 uVar1;
  int iVar2;
  
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (MagickWand *) NULL","MagickWand/magick-image.c",0xc00,"MASKED")
    ;
  }
  if (*(int *)(param_1 + 0x101c) == -0x54535255) {
    if (*(int *)(param_1 + 0x1018) == 0) {
      iVar2 = *(int *)(param_1 + 0x1004);
      uVar1 = *(undefined4 *)(param_1 + 0x100c);
    }
    else {
      LogMagickEvent(0x40000,"MagickWand/magick-image.c","MASKED",0xc03,"%s",param_1 + 4);
      iVar2 = *(int *)(param_1 + 0x1004);
      uVar1 = *(undefined4 *)(param_1 + 0x100c);
    }
    if (iVar2 != 0) {
      iVar2 = EdgeImage(iVar2,param_2,uVar1);
      if (iVar2 != 0) {
        ReplaceImageInList(param_1 + 0x1004,iVar2);
      }
      return iVar2 != 0;
    }
    ThrowMagickException
              (uVar1,"MagickWand/magick-image.c","MASKED",0xc05,0x1d6,"ContainsNoImages",
               &DAT_000e672e,param_1 + 4);
    return false;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/magick-image.c",0xc01,
                "MASKED");
}

