
/* 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 */

double DrawGetTextInterlineSpacing(DrawingWand *wand)

{
  size_t sVar1;
  double dVar2;
  
  if (wand == (DrawingWand *)0x0) {
    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)
                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,
                               PTR_s_oint_00178034 + -0x4ce4);
    return dVar2;
  }
  if (wand->signature == 0xabacadab) {
    if (wand->debug == MagickFalse) {
      sVar1 = wand->index;
    }
    else {
      (*(code *)PTR_LogMagickEvent_00178490)
                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,
                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);
      sVar1 = wand->index;
    }
    return wand->graphic_context[sVar1]->interline_spacing;
  }
  dVar2 = (double)(*(code *)PTR___assert_fail_00178728)
                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,
                             PTR_s_oint_00178034 + -0x4ce4);
  return dVar2;
}



undefined8 DrawGetTextInterlineSpacing(int param_1)

{
  int iVar1;
  undefined8 uVar2;
  
  if (param_1 == 0) {
    uVar2 = (*(code *)PTR___assert_fail_00178728)
                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,
                       PTR_s_oint_00178034 + -0x4ce4);
    return uVar2;
  }
  if (*(int *)(param_1 + 0x1054) == -0x54535255) {
    if (*(int *)(param_1 + 0x1050) == 0) {
      iVar1 = *(int *)(param_1 + 0x1034);
    }
    else {
      (*(code *)PTR_LogMagickEvent_00178490)
                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,
                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);
      iVar1 = *(int *)(param_1 + 0x1034);
    }
    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);
  }
  uVar2 = (*(code *)PTR___assert_fail_00178728)
                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,
                     PTR_s_oint_00178034 + -0x4ce4);
  return uVar2;
}


lui gp,0x10
addiu gp,gp,0x5948
addu gp,gp,t9
addiu sp,sp,-0x28
sw ra,0x24(sp)
sw s0,0x20(sp)
sw gp,0x18(sp)
beq a0,zero,0x0007a720
_lui v0,0xabac
lw v1,0x1054(a0)
ori v0,v0,0xadab
bne v1,v0,0x0007a748
_or s0,a0,zero
lw v0,0x1050(a0)
bne v0,zero,0x0007a770
_addiu v0,a0,0x4
lw v1,0x1034(s0)
lw v0,0x1038(s0)
sll v1,v1,0x2
addu v0,v0,v1
lw v0,0x0(v0)
ldc1 f0,0x380(v0)
lw ra,0x24(sp)
lw s0,0x20(sp)
jr ra
_addiu sp,sp,0x28
lw a3,-0x7fcc(gp)
addiu a3,a3,-0x4ce4
li a2,0x95a
lw a1,-0x7fcc(gp)
addiu a1,a1,-0x6960
lw a0,-0x7fcc(gp)
addiu a0,a0,-0x6944
lw t9,-0x78d8(gp)
jalr t9
_nop
lw a3,-0x7fcc(gp)
addiu a3,a3,-0x4ce4
li a2,0x95b
lw a1,-0x7fcc(gp)
addiu a1,a1,-0x6960
lw a0,-0x7fcc(gp)
addiu a0,a0,-0x1e54
lw t9,-0x78d8(gp)
jalr t9
_nop
sw v0,0x14(sp)
lw v0,-0x7fc8(gp)
addiu v0,v0,-0x7318
sw v0,0x10(sp)
li a3,0x95d
lw a2,-0x7fcc(gp)
addiu a2,a2,-0x4d00
lw a1,-0x7fcc(gp)
addiu a1,a1,-0x6960
lui a0,0x4
lw t9,-0x7b70(gp)
jalr t9
_nop
lw gp,0x18(sp)
b 0x0007a6fc
_lw v1,0x1034(s0)
(translation_unit "undefined8 DrawGetTextInterlineSpacing(int param_1)\n\n{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}\n\n" (function_definition "undefined8 DrawGetTextInterlineSpacing(int param_1)\n\n{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" type_identifier (function_declarator "DrawGetTextInterlineSpacing(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined8 uVar2;" type_identifier identifier ;) (if_statement "if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" { (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" identifier = (call_expression "(*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x6944" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })) (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" * (cast_expression "(int *)(param_1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1054)" ( (binary_expression "param_1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" { (if_statement "if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1050) == 0)" ( (binary_expression "*(int *)(param_1 + 0x1050) == 0" (pointer_expression "*(int *)(param_1 + 0x1050)" * (cast_expression "(int *)(param_1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1050)" ( (binary_expression "param_1 + 0x1050" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" { (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" identifier = (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" else (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);" (call_expression "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_00178490)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_00178490" * (cast_expression "(code *)PTR_LogMagickEvent_00178490" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" ( number_literal , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x4d00" identifier + number_literal) , number_literal , (binary_expression "PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318" identifier + number_literal) , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" identifier = (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) ))))) ;) }))) (return_statement "return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);" return (pointer_expression "*(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" * (cast_expression "(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" ( (binary_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380" (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x1038) + iVar1 * 4)" ( (binary_expression "*(int *)(param_1 + 0x1038) + iVar1 * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" * (cast_expression "(int *)(param_1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1038)" ( (binary_expression "param_1 + 0x1038" identifier + number_literal) )))) + (binary_expression "iVar1 * 4" identifier * number_literal)) )))) + number_literal) )))) ;) })) (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" identifier = (call_expression "(*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x1e54" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })))
(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\ndouble DrawGetTextInterlineSpacing(DrawingWand *wand)\n\n{\n  size_t sVar1;\n  double dVar2;\n  \n  if (wand == (DrawingWand *)0x0) {\n    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);\n    return dVar2;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }\n    return wand->graphic_context[sVar1]->interline_spacing;\n  }\n  dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4);\n  return dVar2;\n}\n\n" comment comment comment comment comment comment (function_definition "double DrawGetTextInterlineSpacing(DrawingWand *wand)\n\n{\n  size_t sVar1;\n  double dVar2;\n  \n  if (wand == (DrawingWand *)0x0) {\n    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);\n    return dVar2;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }\n    return wand->graphic_context[sVar1]->interline_spacing;\n  }\n  dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4);\n  return dVar2;\n}" primitive_type (function_declarator "DrawGetTextInterlineSpacing(DrawingWand *wand)" identifier (parameter_list "(DrawingWand *wand)" ( (parameter_declaration "DrawingWand *wand" type_identifier (pointer_declarator "*wand" * identifier)) ))) (compound_statement "{\n  size_t sVar1;\n  double dVar2;\n  \n  if (wand == (DrawingWand *)0x0) {\n    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);\n    return dVar2;\n  }\n  if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }\n    return wand->graphic_context[sVar1]->interline_spacing;\n  }\n  dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4);\n  return dVar2;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "double dVar2;" primitive_type identifier ;) (if_statement "if (wand == (DrawingWand *)0x0) {\n    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);\n    return dVar2;\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    dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);\n    return dVar2;\n  }" { (expression_statement "dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4)" identifier = (cast_expression "(double)(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR___assert_fail_00178728)\n                              (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                               PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x6944" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) ))))) ;) (return_statement "return dVar2;" return identifier ;) })) (if_statement "if (wand->signature == 0xabacadab) {\n    if (wand->debug == MagickFalse) {\n      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }\n    return wand->graphic_context[sVar1]->interline_spacing;\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      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }\n    return wand->graphic_context[sVar1]->interline_spacing;\n  }" { (if_statement "if (wand->debug == MagickFalse) {\n      sVar1 = wand->index;\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }" if (parenthesized_expression "(wand->debug == MagickFalse)" ( (binary_expression "wand->debug == MagickFalse" (field_expression "wand->debug" identifier -> field_identifier) == identifier) )) (compound_statement "{\n      sVar1 = wand->index;\n    }" { (expression_statement "sVar1 = wand->index;" (assignment_expression "sVar1 = wand->index" identifier = (field_expression "wand->index" identifier -> field_identifier)) ;) }) (else_clause "else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }" else (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);\n      sVar1 = wand->index;\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name);" (call_expression "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_00178490)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_00178490" * (cast_expression "(code *)PTR_LogMagickEvent_00178490" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,wand->name)" ( number_literal , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x4d00" identifier + number_literal) , number_literal , (binary_expression "PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318" identifier + number_literal) , (field_expression "wand->name" identifier -> field_identifier) ))) ;) (expression_statement "sVar1 = wand->index;" (assignment_expression "sVar1 = wand->index" identifier = (field_expression "wand->index" identifier -> field_identifier)) ;) }))) (return_statement "return wand->graphic_context[sVar1]->interline_spacing;" return (field_expression "wand->graphic_context[sVar1]->interline_spacing" (subscript_expression "wand->graphic_context[sVar1]" (field_expression "wand->graphic_context" identifier -> field_identifier) [ identifier ]) -> field_identifier) ;) })) (expression_statement "dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "dVar2 = (double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4)" identifier = (cast_expression "(double)(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR___assert_fail_00178728)\n                            (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                             PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x1e54" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) ))))) ;) (return_statement "return dVar2;" return identifier ;) })))
(translation_unit "undefined8 DrawGetTextInterlineSpacing(int param_1)\n\n{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}\n\n" (function_definition "undefined8 DrawGetTextInterlineSpacing(int param_1)\n\n{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" type_identifier (function_declarator "DrawGetTextInterlineSpacing(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined8 uVar2;" type_identifier identifier ;) (if_statement "if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" { (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" identifier = (call_expression "(*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x6944" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })) (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" * (cast_expression "(int *)(param_1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1054)" ( (binary_expression "param_1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" { (if_statement "if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1050) == 0)" ( (binary_expression "*(int *)(param_1 + 0x1050) == 0" (pointer_expression "*(int *)(param_1 + 0x1050)" * (cast_expression "(int *)(param_1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1050)" ( (binary_expression "param_1 + 0x1050" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" { (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" identifier = (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) ))))) ;) }) (else_clause "else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" else (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" { (expression_statement "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);" (call_expression "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_00178490)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_00178490" * (cast_expression "(code *)PTR_LogMagickEvent_00178490" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" ( number_literal , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x4d00" identifier + number_literal) , number_literal , (binary_expression "PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318" identifier + number_literal) , (binary_expression "param_1 + 4" identifier + number_literal) ))) ;) (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" identifier = (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) ))))) ;) }))) (return_statement "return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);" return (pointer_expression "*(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" * (cast_expression "(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" ( (binary_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380" (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x1038) + iVar1 * 4)" ( (binary_expression "*(int *)(param_1 + 0x1038) + iVar1 * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" * (cast_expression "(int *)(param_1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1038)" ( (binary_expression "param_1 + 0x1038" identifier + number_literal) )))) + (binary_expression "iVar1 * 4" identifier * number_literal)) )))) + number_literal) )))) ;) })) (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" identifier = (call_expression "(*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" ( (pointer_expression "*(code *)PTR___assert_fail_00178728" * (cast_expression "(code *)PTR___assert_fail_00178728" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" ( (binary_expression "PTR_s_oint_00178034 + -0x1e54" identifier + number_literal) , (binary_expression "PTR_s_oint_00178034 + -0x6960" identifier + number_literal) , number_literal , (binary_expression "PTR_s_oint_00178034 + -0x4ce4" identifier + number_literal) )))) ;) (return_statement "return uVar2;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (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 (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) )))) ;) (return_statement return IDENT ;) })) (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) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) , (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) ))))) ;) }))) (return_statement return (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT)) )))) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) )))) ;) (return_statement return IDENT ;) })))
(function_definition "undefined8 DrawGetTextInterlineSpacing(int param_1)\n\n{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" (type_identifier "undefined8") (function_declarator "DrawGetTextInterlineSpacing(int param_1)" (identifier "DrawGetTextInterlineSpacing") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  int iVar1;\n  undefined8 uVar2;\n  \n  if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }\n  if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }\n  uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);\n  return uVar2;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined8 uVar2;" (type_identifier "undefined8") (identifier "uVar2") (; ";")) (if_statement "if (param_1 == 0) {\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);\n    return uVar2;\n  }" ({ "{") (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" (identifier "uVar2") (= "=") (call_expression "(*(code *)PTR___assert_fail_00178728)\n                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_00178728" (* "*") (cast_expression "(code *)PTR___assert_fail_00178728" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_00178728"))) () ")")) (argument_list "(PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,\n                       PTR_s_oint_00178034 + -0x4ce4)" (( "(") (binary_expression "PTR_s_oint_00178034 + -0x6944" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x6944")) (, ",") (binary_expression "PTR_s_oint_00178034 + -0x6960" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x6960")) (, ",") (number_literal "0x95a") (, ",") (binary_expression "PTR_s_oint_00178034 + -0x4ce4" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x4ce4")) () ")")))) (; ";")) (return_statement "return uVar2;" (return "return") (identifier "uVar2") (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" (* "*") (cast_expression "(int *)(param_1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1054)" (( "(") (binary_expression "param_1 + 0x1054" (identifier "param_1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x1050) == 0) {\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }\n    else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1050) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x1050) == 0" (pointer_expression "*(int *)(param_1 + 0x1050)" (* "*") (cast_expression "(int *)(param_1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1050)" (( "(") (binary_expression "param_1 + 0x1050" (identifier "param_1") (+ "+") (number_literal "0x1050")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" ({ "{") (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(param_1 + 0x1034)" (* "*") (cast_expression "(int *)(param_1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1034)" (( "(") (binary_expression "param_1 + 0x1034" (identifier "param_1") (+ "+") (number_literal "0x1034")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" (else "else") (compound_statement "{\n      (*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);\n      iVar1 = *(int *)(param_1 + 0x1034);\n    }" ({ "{") (expression_statement "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);" (call_expression "(*(code *)PTR_LogMagickEvent_00178490)\n                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_00178490)" (( "(") (pointer_expression "*(code *)PTR_LogMagickEvent_00178490" (* "*") (cast_expression "(code *)PTR_LogMagickEvent_00178490" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LogMagickEvent_00178490"))) () ")")) (argument_list "(0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,\n                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "PTR_s_oint_00178034 + -0x6960" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x6960")) (, ",") (binary_expression "PTR_s_oint_00178034 + -0x4d00" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x4d00")) (, ",") (number_literal "0x95d") (, ",") (binary_expression "PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318" (identifier "PTR_fde_table_entry_0015fffc_data_loc_00178038") (+ "+") (number_literal "-0x7318")) (, ",") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (expression_statement "iVar1 = *(int *)(param_1 + 0x1034);" (assignment_expression "iVar1 = *(int *)(param_1 + 0x1034)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(param_1 + 0x1034)" (* "*") (cast_expression "(int *)(param_1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1034)" (( "(") (binary_expression "param_1 + 0x1034" (identifier "param_1") (+ "+") (number_literal "0x1034")) () ")"))))) (; ";")) (} "}")))) (return_statement "return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);" (return "return") (pointer_expression "*(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" (* "*") (cast_expression "(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380)" (( "(") (binary_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380" (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" (* "*") (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x1038) + iVar1 * 4)" (( "(") (binary_expression "*(int *)(param_1 + 0x1038) + iVar1 * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" (* "*") (cast_expression "(int *)(param_1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1038)" (( "(") (binary_expression "param_1 + 0x1038" (identifier "param_1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "iVar1 * 4" (identifier "iVar1") (* "*") (number_literal "4"))) () ")")))) (+ "+") (number_literal "0x380")) () ")")))) (; ";")) (} "}"))) (expression_statement "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4);" (assignment_expression "uVar2 = (*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" (identifier "uVar2") (= "=") (call_expression "(*(code *)PTR___assert_fail_00178728)\n                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" (parenthesized_expression "(*(code *)PTR___assert_fail_00178728)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_00178728" (* "*") (cast_expression "(code *)PTR___assert_fail_00178728" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_00178728"))) () ")")) (argument_list "(PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,\n                     PTR_s_oint_00178034 + -0x4ce4)" (( "(") (binary_expression "PTR_s_oint_00178034 + -0x1e54" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x1e54")) (, ",") (binary_expression "PTR_s_oint_00178034 + -0x6960" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x6960")) (, ",") (number_literal "0x95b") (, ",") (binary_expression "PTR_s_oint_00178034 + -0x4ce4" (identifier "PTR_s_oint_00178034") (+ "+") (number_literal "-0x4ce4")) () ")")))) (; ";")) (return_statement "return uVar2;" (return "return") (identifier "uVar2") (; ";")) (} "}")))

/* 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 */

double function_1(type_1 *var_1)

{
  size_t sVar1;
  double dVar2;
  
  if (var_1 == (type_1 *)0x0) {
    dVar2 = (double)(*(type_2 *)PTR___assert_fail_00178728)
                              (var_2 + -0x6944,var_2 + -0x6960,0x95a,
                               var_2 + -0x4ce4);
    return dVar2;
  }
  if (var_1->signature == 0xabacadab) {
    if (var_1->debug == var_3) {
      sVar1 = var_1->index;
    }
    else {
      (*(type_2 *)PTR_LogMagickEvent_00178490)
                (0x40000,var_2 + -0x6960,var_2 + -0x4d00,0x95d,
                 var_4 + -0x7318,var_1->name);
      sVar1 = var_1->index;
    }
    return var_1->graphic_context[sVar1]->interline_spacing;
  }
  dVar2 = (double)(*(type_2 *)PTR___assert_fail_00178728)
                            (var_2 + -0x1e54,var_2 + -0x6960,0x95b,
                             var_2 + -0x4ce4);
  return dVar2;
}


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

undefined8 MASKED(int param_1)

{
  int iVar1;
  undefined8 uVar2;
  
  if (param_1 == 0) {
    uVar2 = (*(code *)PTR___assert_fail_00178728)
                      (PTR_s_oint_00178034 + -0x6944,PTR_s_oint_00178034 + -0x6960,0x95a,
                       PTR_s_oint_00178034 + -0x4ce4);
    return uVar2;
  }
  if (*(int *)(param_1 + 0x1054) == -0x54535255) {
    if (*(int *)(param_1 + 0x1050) == 0) {
      iVar1 = *(int *)(param_1 + 0x1034);
    }
    else {
      (*(code *)PTR_LogMagickEvent_00178490)
                (0x40000,PTR_s_oint_00178034 + -0x6960,PTR_s_oint_00178034 + -0x4d00,0x95d,
                 PTR_fde_table_entry_0015fffc_data_loc_00178038 + -0x7318,param_1 + 4);
      iVar1 = *(int *)(param_1 + 0x1034);
    }
    return *(undefined8 *)(*(int *)(*(int *)(param_1 + 0x1038) + iVar1 * 4) + 0x380);
  }
  uVar2 = (*(code *)PTR___assert_fail_00178728)
                    (PTR_s_oint_00178034 + -0x1e54,PTR_s_oint_00178034 + -0x6960,0x95b,
                     PTR_s_oint_00178034 + -0x4ce4);
  return uVar2;
}

