
/* 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 */
/* WARNING: Enum "ComplianceType": Some values do not have unique names */

void DrawPathCurveToQuadraticBezier
               (DrawingWand *wand,PathMode mode,double x1,double y1,double x,double y)

{
  undefined8 uVar1;
  
  if (wand == (DrawingWand *)0x0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,
                  "DrawPathCurveToQuadraticBezier");
  }
  if (wand->signature == 0xabacadab) {
    if (wand->debug != MagickFalse) {
      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"
                     ,wand->name);
    }
    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))
    {
      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);
    }
    else {
      wand->path_operation = PathCurveToQuadraticBezierOperation;
      wand->path_mode = mode;
      uVar1 = 0x51;
      if (mode != AbsolutePathMode) {
        uVar1 = 0x71;
      }
      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);
    }
    return;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,
                "DrawPathCurveToQuadraticBezier");
}



void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,
                 long param_5,int param_6)

{
  undefined8 uVar1;
  
  if (param_5 == 0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,
                  "DrawPathCurveToQuadraticBezier");
  }
  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {
    if (*(int *)(param_5 + 0x1094) != 0) {
      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"
                     ,param_5 + 8);
    }
    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {
      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");
    }
    else {
      *(undefined4 *)(param_5 + 0x1088) = 3;
      *(int *)(param_5 + 0x108c) = param_6;
      uVar1 = 0x51;
      if (param_6 != 1) {
        uVar1 = 0x71;
      }
      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);
    }
    return;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,
                "DrawPathCurveToQuadraticBezier");
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x8
TEST RDI,RDI
JZ 0x0016f827
MOV RBX,RDI
MOV R15D,ESI
MOVQ RBP,XMM0
MOVQ R12,XMM1
MOVQ R13,XMM2
MOVQ R14,XMM3
MOV EAX,0xabacadab
CMP qword ptr [RDI + 0x1098],RAX
JNZ 0x0016f846
CMP dword ptr [RDI + 0x1094],0x0
JNZ 0x0016f865
CMP dword ptr [RBX + 0x1088],0x3
JZ 0x0016f897
MOV dword ptr [RBX + 0x1088],0x3
MOV dword ptr [RBX + 0x108c],R15D
CMP R15D,0x1
MOV EDX,0x51
MOV EAX,0x71
CMOVNZ EDX,EAX
MOVQ XMM3,R14
MOVQ XMM2,R13
MOVQ XMM1,R12
MOVQ XMM0,RBP
LEA RSI,[0x217a75]
MOV RDI,RBX
MOV EAX,0x4
CALL 0x0016f3ea
ADD RSP,0x8
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
LEA RCX,[0x219850]
MOV EDX,0xbd9
LEA RSI,[0x217a30]
LEA RDI,[0x217a4a]
CALL 0x00111850
LEA RCX,[0x219850]
MOV EDX,0xbda
LEA RSI,[0x217a30]
LEA RDI,[0x215f68]
CALL 0x00111850
LEA R9,[RDI + 0x8]
LEA R8,[0x2228e2]
MOV ECX,0xbdc
LEA RDX,[0x219830]
LEA RSI,[0x217a30]
MOV EDI,0x40000
MOV EAX,0x0
CALL 0x00112620
JMP 0x0016f7c1
CMP dword ptr [RBX + 0x108c],R15D
JNZ 0x0016f7ce
MOVQ XMM3,R14
MOVQ XMM2,R13
MOVQ XMM1,R12
MOVQ XMM0,RBP
LEA RSI,[0x217a8f]
MOV RDI,RBX
MOV EAX,0x4
CALL 0x0016f3ea
JMP 0x0016f818
(translation_unit "void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)\n\n{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}\n\n" (function_definition "void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)\n\n{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" primitive_type (function_declarator "FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" identifier (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) , (parameter_declaration "long param_5" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int param_6" primitive_type identifier) ))) (compound_statement "{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" { (declaration "undefined8 uVar1;" type_identifier identifier ;) (if_statement "if (param_5 == 0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" if (parenthesized_expression "(param_5 == 0)" ( (binary_expression "param_5 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" { comment (expression_statement "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand != (DrawingWand *) NULL"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" if (parenthesized_expression "(*(long *)(param_5 + 0x1098) == 0xabacadab)" ( (binary_expression "*(long *)(param_5 + 0x1098) == 0xabacadab" (pointer_expression "*(long *)(param_5 + 0x1098)" * (cast_expression "(long *)(param_5 + 0x1098)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1098)" ( (binary_expression "param_5 + 0x1098" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" { (if_statement "if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" if (parenthesized_expression "(*(int *)(param_5 + 0x1094) != 0)" ( (binary_expression "*(int *)(param_5 + 0x1094) != 0" (pointer_expression "*(int *)(param_5 + 0x1094)" * (cast_expression "(int *)(param_5 + 0x1094)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1094)" ( (binary_expression "param_5 + 0x1094" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);" (call_expression "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" identifier (argument_list "(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" ( number_literal , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (binary_expression "param_5 + 8" identifier + number_literal) ))) ;) })) (if_statement "if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" if (parenthesized_expression "((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6))" ( (binary_expression "(*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)" (parenthesized_expression "(*(int *)(param_5 + 0x1088) == 3)" ( (binary_expression "*(int *)(param_5 + 0x1088) == 3" (pointer_expression "*(int *)(param_5 + 0x1088)" * (cast_expression "(int *)(param_5 + 0x1088)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1088)" ( (binary_expression "param_5 + 0x1088" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(param_5 + 0x108c) == param_6)" ( (binary_expression "*(int *)(param_5 + 0x108c) == param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" * (cast_expression "(int *)(param_5 + 0x108c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x108c)" ( (binary_expression "param_5 + 0x108c" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }" { (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" ( identifier , identifier , identifier , identifier , identifier , (string_literal "" %.20g %.20g %.20g %.20g"" " string_content ") ))) ;) }) (else_clause "else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" else (compound_statement "{\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" { (expression_statement "*(undefined4 *)(param_5 + 0x1088) = 3;" (assignment_expression "*(undefined4 *)(param_5 + 0x1088) = 3" (pointer_expression "*(undefined4 *)(param_5 + 0x1088)" * (cast_expression "(undefined4 *)(param_5 + 0x1088)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1088)" ( (binary_expression "param_5 + 0x1088" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(param_5 + 0x108c) = param_6;" (assignment_expression "*(int *)(param_5 + 0x108c) = param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" * (cast_expression "(int *)(param_5 + 0x108c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x108c)" ( (binary_expression "param_5 + 0x108c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = 0x51;" (assignment_expression "uVar1 = 0x51" identifier = number_literal) ;) (if_statement "if (param_6 != 1) {\n        uVar1 = 0x71;\n      }" if (parenthesized_expression "(param_6 != 1)" ( (binary_expression "param_6 != 1" identifier != number_literal) )) (compound_statement "{\n        uVar1 = 0x71;\n      }" { (expression_statement "uVar1 = 0x71;" (assignment_expression "uVar1 = 0x71" identifier = number_literal) ;) })) (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" ( identifier , identifier , identifier , identifier , identifier , (string_literal ""%c%.20g %.20g %.20g %.20g"" " string_content ") , identifier ))) ;) }))) (return_statement "return;" return ;) })) comment (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })))
(translation_unit "/* 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/* WARNING: Enum "ComplianceType": Some values do not have unique names */\n\nvoid DrawPathCurveToQuadraticBezier\n               (DrawingWand *wand,PathMode mode,double x1,double y1,double x,double y)\n\n{\n  undefined8 uVar1;\n  \n  if (wand == (DrawingWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }\n    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}\n\n" comment comment comment comment comment comment (function_definition "void DrawPathCurveToQuadraticBezier\n               (DrawingWand *wand,PathMode mode,double x1,double y1,double x,double y)\n\n{\n  undefined8 uVar1;\n  \n  if (wand == (DrawingWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }\n    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" primitive_type (function_declarator "DrawPathCurveToQuadraticBezier\n               (DrawingWand *wand,PathMode mode,double x1,double y1,double x,double y)" identifier (parameter_list "(DrawingWand *wand,PathMode mode,double x1,double y1,double x,double y)" ( (parameter_declaration "DrawingWand *wand" type_identifier (pointer_declarator "*wand" * identifier)) , (parameter_declaration "PathMode mode" type_identifier identifier) , (parameter_declaration "double x1" primitive_type identifier) , (parameter_declaration "double y1" primitive_type identifier) , (parameter_declaration "double x" primitive_type identifier) , (parameter_declaration "double y" primitive_type identifier) ))) (compound_statement "{\n  undefined8 uVar1;\n  \n  if (wand == (DrawingWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }\n    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }\n    return;\n  }\n                    /* WARNING: Subroutine does not return */\n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" { (declaration "undefined8 uVar1;" type_identifier identifier ;) (if_statement "if (wand == (DrawingWand *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" if (parenthesized_expression "(wand == (DrawingWand *)0x0)" ( (binary_expression "wand == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" { comment (expression_statement "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand != (DrawingWand *) NULL"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })) (if_statement "if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }\n    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }\n    return;\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      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }\n    if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }\n    return;\n  }" { (if_statement "if (wand->debug != MagickFalse) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }" if (parenthesized_expression "(wand->debug != MagickFalse)" ( (binary_expression "wand->debug != MagickFalse" (field_expression "wand->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name);" (call_expression "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name)" identifier (argument_list "(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,wand->name)" ( number_literal , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (field_expression "wand->name" identifier -> field_identifier) ))) ;) })) (if_statement "if ((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))\n    {\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }\n    else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }" if (parenthesized_expression "((wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode))" ( (binary_expression "(wand->path_operation == PathCurveToQuadraticBezierOperation) && (wand->path_mode == mode)" (parenthesized_expression "(wand->path_operation == PathCurveToQuadraticBezierOperation)" ( (binary_expression "wand->path_operation == PathCurveToQuadraticBezierOperation" (field_expression "wand->path_operation" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "(wand->path_mode == mode)" ( (binary_expression "wand->path_mode == mode" (field_expression "wand->path_mode" identifier -> field_identifier) == identifier) ))) )) (compound_statement "{\n      MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);\n    }" { (expression_statement "MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y);" (call_expression "MVGAutoWrapPrintf(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y)" identifier (argument_list "(wand," %.20g %.20g %.20g %.20g",x1,y1,x,y)" ( identifier , (string_literal "" %.20g %.20g %.20g %.20g"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }" else (compound_statement "{\n      wand->path_operation = PathCurveToQuadraticBezierOperation;\n      wand->path_mode = mode;\n      uVar1 = 0x51;\n      if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }\n      MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);\n    }" { (expression_statement "wand->path_operation = PathCurveToQuadraticBezierOperation;" (assignment_expression "wand->path_operation = PathCurveToQuadraticBezierOperation" (field_expression "wand->path_operation" identifier -> field_identifier) = identifier) ;) (expression_statement "wand->path_mode = mode;" (assignment_expression "wand->path_mode = mode" (field_expression "wand->path_mode" identifier -> field_identifier) = identifier) ;) (expression_statement "uVar1 = 0x51;" (assignment_expression "uVar1 = 0x51" identifier = number_literal) ;) (if_statement "if (mode != AbsolutePathMode) {\n        uVar1 = 0x71;\n      }" if (parenthesized_expression "(mode != AbsolutePathMode)" ( (binary_expression "mode != AbsolutePathMode" identifier != identifier) )) (compound_statement "{\n        uVar1 = 0x71;\n      }" { (expression_statement "uVar1 = 0x71;" (assignment_expression "uVar1 = 0x71" identifier = number_literal) ;) })) (expression_statement "MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);" (call_expression "MVGAutoWrapPrintf(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1)" identifier (argument_list "(wand,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1)" ( identifier , (string_literal ""%c%.20g %.20g %.20g %.20g"" " string_content ") , identifier , identifier , identifier , identifier , identifier ))) ;) }))) (return_statement "return;" return ;) })) comment (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })))
(translation_unit "void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)\n\n{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}\n\n" (function_definition "void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)\n\n{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" primitive_type (function_declarator "FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" identifier (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) , (parameter_declaration "long param_5" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int param_6" primitive_type identifier) ))) (compound_statement "{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" { (declaration "undefined8 uVar1;" type_identifier identifier ;) (if_statement "if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" if (parenthesized_expression "(param_5 == 0)" ( (binary_expression "param_5 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" { (expression_statement "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand != (DrawingWand *) NULL"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })) (if_statement "if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" if (parenthesized_expression "(*(long *)(param_5 + 0x1098) == 0xabacadab)" ( (binary_expression "*(long *)(param_5 + 0x1098) == 0xabacadab" (pointer_expression "*(long *)(param_5 + 0x1098)" * (cast_expression "(long *)(param_5 + 0x1098)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1098)" ( (binary_expression "param_5 + 0x1098" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" { (if_statement "if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" if (parenthesized_expression "(*(int *)(param_5 + 0x1094) != 0)" ( (binary_expression "*(int *)(param_5 + 0x1094) != 0" (pointer_expression "*(int *)(param_5 + 0x1094)" * (cast_expression "(int *)(param_5 + 0x1094)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1094)" ( (binary_expression "param_5 + 0x1094" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" { (expression_statement "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);" (call_expression "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" identifier (argument_list "(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" ( number_literal , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") , number_literal , (string_literal ""%s"" " string_content ") , (binary_expression "param_5 + 8" identifier + number_literal) ))) ;) })) (if_statement "if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" if (parenthesized_expression "((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6))" ( (binary_expression "(*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)" (parenthesized_expression "(*(int *)(param_5 + 0x1088) == 3)" ( (binary_expression "*(int *)(param_5 + 0x1088) == 3" (pointer_expression "*(int *)(param_5 + 0x1088)" * (cast_expression "(int *)(param_5 + 0x1088)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1088)" ( (binary_expression "param_5 + 0x1088" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(param_5 + 0x108c) == param_6)" ( (binary_expression "*(int *)(param_5 + 0x108c) == param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" * (cast_expression "(int *)(param_5 + 0x108c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x108c)" ( (binary_expression "param_5 + 0x108c" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }" { (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" ( identifier , identifier , identifier , identifier , identifier , (string_literal "" %.20g %.20g %.20g %.20g"" " string_content ") ))) ;) }) (else_clause "else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" else (compound_statement "{\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" { (expression_statement "*(undefined4 *)(param_5 + 0x1088) = 3;" (assignment_expression "*(undefined4 *)(param_5 + 0x1088) = 3" (pointer_expression "*(undefined4 *)(param_5 + 0x1088)" * (cast_expression "(undefined4 *)(param_5 + 0x1088)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x1088)" ( (binary_expression "param_5 + 0x1088" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(param_5 + 0x108c) = param_6;" (assignment_expression "*(int *)(param_5 + 0x108c) = param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" * (cast_expression "(int *)(param_5 + 0x108c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_5 + 0x108c)" ( (binary_expression "param_5 + 0x108c" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar1 = 0x51;" (assignment_expression "uVar1 = 0x51" identifier = number_literal) ;) (if_statement "if (param_6 != 1) {\n        uVar1 = 0x71;\n      }" if (parenthesized_expression "(param_6 != 1)" ( (binary_expression "param_6 != 1" identifier != number_literal) )) (compound_statement "{\n        uVar1 = 0x71;\n      }" { (expression_statement "uVar1 = 0x71;" (assignment_expression "uVar1 = 0x71" identifier = number_literal) ;) })) (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" identifier (argument_list "(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" ( identifier , identifier , identifier , identifier , identifier , (string_literal ""%c%.20g %.20g %.20g %.20g"" " string_content ") , identifier ))) ;) }))) (return_statement "return;" return ;) })) (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" identifier (argument_list "("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" ( (string_literal ""wand->signature == MagickWandSignature"" " string_content ") , (string_literal ""MagickWand/drawing-wand.c"" " string_content ") , number_literal , (string_literal ""DrawPathCurveToQuadraticBezier"" " string_content ") ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (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 (sized_type_specifier long) (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 (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , (string_literal " string_content ") ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , (string_literal " string_content ") , IDENT ))) ;) }))) (return_statement return ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })))
(function_definition "void FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)\n\n{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" (primitive_type "void") (function_declarator "FUN_0016f771(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" (identifier "FUN_0016f771") (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 long param_5,int param_6)" (( "(") (parameter_declaration "undefined8 param_1" (type_identifier "undefined8") (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) (, ",") (parameter_declaration "undefined8 param_4" (type_identifier "undefined8") (identifier "param_4")) (, ",") (parameter_declaration "long param_5" (sized_type_specifier "long" (long "long")) (identifier "param_5")) (, ",") (parameter_declaration "int param_6" (primitive_type "int") (identifier "param_6")) () ")"))) (compound_statement "{\n  undefined8 uVar1;\n  \n  if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }\n  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }\n                    \n  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");\n}" ({ "{") (declaration "undefined8 uVar1;" (type_identifier "undefined8") (identifier "uVar1") (; ";")) (if_statement "if (param_5 == 0) {\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" (if "if") (parenthesized_expression "(param_5 == 0)" (( "(") (binary_expression "param_5 == 0" (identifier "param_5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");\n  }" ({ "{") (expression_statement "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" (identifier "__assert_fail") (argument_list "("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,\n                  "DrawPathCurveToQuadraticBezier")" (( "(") (string_literal ""wand != (DrawingWand *) NULL"" (" """) (string_content "wand != (DrawingWand *) NULL") (" """)) (, ",") (string_literal ""MagickWand/drawing-wand.c"" (" """) (string_content "MagickWand/drawing-wand.c") (" """)) (, ",") (number_literal "0xbd9") (, ",") (string_literal ""DrawPathCurveToQuadraticBezier"" (" """) (string_content "DrawPathCurveToQuadraticBezier") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(long *)(param_5 + 0x1098) == 0xabacadab) {\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" (if "if") (parenthesized_expression "(*(long *)(param_5 + 0x1098) == 0xabacadab)" (( "(") (binary_expression "*(long *)(param_5 + 0x1098) == 0xabacadab" (pointer_expression "*(long *)(param_5 + 0x1098)" (* "*") (cast_expression "(long *)(param_5 + 0x1098)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x1098)" (( "(") (binary_expression "param_5 + 0x1098" (identifier "param_5") (+ "+") (number_literal "0x1098")) () ")")))) (== "==") (number_literal "0xabacadab")) () ")")) (compound_statement "{\n    if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }\n    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }\n    return;\n  }" ({ "{") (if_statement "if (*(int *)(param_5 + 0x1094) != 0) {\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" (if "if") (parenthesized_expression "(*(int *)(param_5 + 0x1094) != 0)" (( "(") (binary_expression "*(int *)(param_5 + 0x1094) != 0" (pointer_expression "*(int *)(param_5 + 0x1094)" (* "*") (cast_expression "(int *)(param_5 + 0x1094)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x1094)" (( "(") (binary_expression "param_5 + 0x1094" (identifier "param_5") (+ "+") (number_literal "0x1094")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);\n    }" ({ "{") (expression_statement "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8);" (call_expression "LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" (identifier "LogMagickEvent") (argument_list "(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"\n                     ,param_5 + 8)" (( "(") (number_literal "0x40000") (, ",") (string_literal ""MagickWand/drawing-wand.c"" (" """) (string_content "MagickWand/drawing-wand.c") (" """)) (, ",") (string_literal ""DrawPathCurveToQuadraticBezier"" (" """) (string_content "DrawPathCurveToQuadraticBezier") (" """)) (, ",") (number_literal "0xbdc") (, ",") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (binary_expression "param_5 + 8" (identifier "param_5") (+ "+") (number_literal "8")) () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }\n    else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" (if "if") (parenthesized_expression "((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6))" (( "(") (binary_expression "(*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)" (parenthesized_expression "(*(int *)(param_5 + 0x1088) == 3)" (( "(") (binary_expression "*(int *)(param_5 + 0x1088) == 3" (pointer_expression "*(int *)(param_5 + 0x1088)" (* "*") (cast_expression "(int *)(param_5 + 0x1088)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x1088)" (( "(") (binary_expression "param_5 + 0x1088" (identifier "param_5") (+ "+") (number_literal "0x1088")) () ")")))) (== "==") (number_literal "3")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(param_5 + 0x108c) == param_6)" (( "(") (binary_expression "*(int *)(param_5 + 0x108c) == param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" (* "*") (cast_expression "(int *)(param_5 + 0x108c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x108c)" (( "(") (binary_expression "param_5 + 0x108c" (identifier "param_5") (+ "+") (number_literal "0x108c")) () ")")))) (== "==") (identifier "param_6")) () ")"))) () ")")) (compound_statement "{\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");\n    }" ({ "{") (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" (identifier "FUN_0016f3ea") (argument_list "(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g")" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (string_literal "" %.20g %.20g %.20g %.20g"" (" """) (string_content " %.20g %.20g %.20g %.20g") (" """)) () ")"))) (; ";")) (} "}")) (else_clause "else {\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" (else "else") (compound_statement "{\n      *(undefined4 *)(param_5 + 0x1088) = 3;\n      *(int *)(param_5 + 0x108c) = param_6;\n      uVar1 = 0x51;\n      if (param_6 != 1) {\n        uVar1 = 0x71;\n      }\n      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);\n    }" ({ "{") (expression_statement "*(undefined4 *)(param_5 + 0x1088) = 3;" (assignment_expression "*(undefined4 *)(param_5 + 0x1088) = 3" (pointer_expression "*(undefined4 *)(param_5 + 0x1088)" (* "*") (cast_expression "(undefined4 *)(param_5 + 0x1088)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x1088)" (( "(") (binary_expression "param_5 + 0x1088" (identifier "param_5") (+ "+") (number_literal "0x1088")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(int *)(param_5 + 0x108c) = param_6;" (assignment_expression "*(int *)(param_5 + 0x108c) = param_6" (pointer_expression "*(int *)(param_5 + 0x108c)" (* "*") (cast_expression "(int *)(param_5 + 0x108c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_5 + 0x108c)" (( "(") (binary_expression "param_5 + 0x108c" (identifier "param_5") (+ "+") (number_literal "0x108c")) () ")")))) (= "=") (identifier "param_6")) (; ";")) (expression_statement "uVar1 = 0x51;" (assignment_expression "uVar1 = 0x51" (identifier "uVar1") (= "=") (number_literal "0x51")) (; ";")) (if_statement "if (param_6 != 1) {\n        uVar1 = 0x71;\n      }" (if "if") (parenthesized_expression "(param_6 != 1)" (( "(") (binary_expression "param_6 != 1" (identifier "param_6") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n        uVar1 = 0x71;\n      }" ({ "{") (expression_statement "uVar1 = 0x71;" (assignment_expression "uVar1 = 0x71" (identifier "uVar1") (= "=") (number_literal "0x71")) (; ";")) (} "}"))) (expression_statement "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);" (call_expression "FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" (identifier "FUN_0016f3ea") (argument_list "(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "param_5") (, ",") (string_literal ""%c%.20g %.20g %.20g %.20g"" (" """) (string_content "%c%.20g %.20g %.20g %.20g") (" """)) (, ",") (identifier "uVar1") () ")"))) (; ";")) (} "}")))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier");" (call_expression "__assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" (identifier "__assert_fail") (argument_list "("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,\n                "DrawPathCurveToQuadraticBezier")" (( "(") (string_literal ""wand->signature == MagickWandSignature"" (" """) (string_content "wand->signature == MagickWandSignature") (" """)) (, ",") (string_literal ""MagickWand/drawing-wand.c"" (" """) (string_content "MagickWand/drawing-wand.c") (" """)) (, ",") (number_literal "0xbda") (, ",") (string_literal ""DrawPathCurveToQuadraticBezier"" (" """) (string_content "DrawPathCurveToQuadraticBezier") (" """)) () ")"))) (; ";")) (} "}")))

/* 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 */
/* WARNING: Enum "ComplianceType": Some values do not have unique names */

void function_1
               (type_1 *var_1,type_2 var_6,double x1,double y1,double x,double y)

{
  type_3 uVar1;
  
  if (var_1 == (type_1 *)0x0) {
                    /* WARNING: Subroutine does not return */
    var_2("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,
                  "DrawPathCurveToQuadraticBezier");
  }
  if (var_1->signature == 0xabacadab) {
    if (var_1->debug != var_3) {
      var_4(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"
                     ,var_1->name);
    }
    if ((var_1->path_operation == var_5) && (var_1->path_mode == var_6))
    {
      var_7(var_1," %.20g %.20g %.20g %.20g",x1,y1,x,y);
    }
    else {
      var_1->path_operation = var_5;
      var_1->path_mode = var_6;
      uVar1 = 0x51;
      if (var_6 != var_8) {
        uVar1 = 0x71;
      }
      var_7(var_1,"%c%.20g %.20g %.20g %.20g",x1,y1,x,y,uVar1);
    }
    return;
  }
                    /* WARNING: Subroutine does not return */
  var_2("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,
                "DrawPathCurveToQuadraticBezier");
}


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

void MASKED(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,
                 long param_5,int param_6)

{
  undefined8 uVar1;
  
  if (param_5 == 0) {
                    /* WARNING: Subroutine does not return */
    __assert_fail("wand != (DrawingWand *) NULL","MagickWand/drawing-wand.c",0xbd9,
                  "DrawPathCurveToQuadraticBezier");
  }
  if (*(long *)(param_5 + 0x1098) == 0xabacadab) {
    if (*(int *)(param_5 + 0x1094) != 0) {
      LogMagickEvent(0x40000,"MagickWand/drawing-wand.c","DrawPathCurveToQuadraticBezier",0xbdc,"%s"
                     ,param_5 + 8);
    }
    if ((*(int *)(param_5 + 0x1088) == 3) && (*(int *)(param_5 + 0x108c) == param_6)) {
      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5," %.20g %.20g %.20g %.20g");
    }
    else {
      *(undefined4 *)(param_5 + 0x1088) = 3;
      *(int *)(param_5 + 0x108c) = param_6;
      uVar1 = 0x51;
      if (param_6 != 1) {
        uVar1 = 0x71;
      }
      FUN_0016f3ea(param_1,param_2,param_3,param_4,param_5,"%c%.20g %.20g %.20g %.20g",uVar1);
    }
    return;
  }
                    /* WARNING: Subroutine does not return */
  __assert_fail("wand->signature == MagickWandSignature","MagickWand/drawing-wand.c",0xbda,
                "DrawPathCurveToQuadraticBezier");
}

