
void conf_radiobutton_handler(control *ctrl,void *dlg,void *data,int event)

{
  int iVar1;
  
  if (event == 0) {
                    /* WARNING: Subroutine does not return */
    conf_get_int((Conf *)data,(ctrl->generic).context.i);
  }
  if (event == 2) {
    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();
    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {
      (*(code *)PTR___assert_fail_000ae858)
                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,
                 PTR_s__SSH_2_only__000ae0fc + 0x224);
      return;
    }
    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);
  }
  return;
}



void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)

{
  int iVar1;
  int iVar2;
  int *piVar3;
  int iVar4;
  
  if (param_4 == 0) {
    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));
    if (*(int *)(param_1 + 0x24) < 1) {
LAB_00022960:
      (*(code *)PTR___assert_fail_000ae858)
                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,
                 PTR_s__SSH_2_only__000ae0fc + 0x224);
      return;
    }
    piVar3 = *(int **)(param_1 + 0x30);
    iVar4 = 0;
    if (iVar2 != *piVar3) {
      iVar1 = 1;
      do {
        iVar4 = iVar1;
        piVar3 = piVar3 + 1;
        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;
        iVar1 = iVar4 + 1;
      } while (*piVar3 != iVar2);
    }
    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);
  }
  else if (param_4 == 2) {
    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();
    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {
      (*(code *)PTR___assert_fail_000ae858)
                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,
                 PTR_s__SSH_2_only__000ae0fc + 0x224);
      return;
    }
    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),
                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));
  }
  return;
}


lui gp,0x9
addiu gp,gp,0x3880
addu gp,gp,t9
addiu sp,sp,-0x30
sw ra,0x2c(sp)
sw s3,0x28(sp)
sw s2,0x24(sp)
sw s1,0x20(sp)
sw s0,0x1c(sp)
sw gp,0x10(sp)
or s1,a0,zero
or s2,a1,zero
or s3,a2,zero
beq a3,zero,0x00022870
_or s0,a3,zero
li v0,0x2
beq a3,v0,0x000228e4
_lw ra,0x2c(sp)
lw s3,0x28(sp)
lw s2,0x24(sp)
lw s1,0x20(sp)
lw s0,0x1c(sp)
jr ra
_addiu sp,sp,0x30
lw a1,0x14(a0)
or a0,a2,zero
lw t9,-0x7f40(gp)
bal 0x00020ca8
_nop
lw gp,0x10(sp)
lw a1,0x24(s1)
blez a1,0x00022960
_lw a3,-0x7f94(gp)
lw v1,0x30(s1)
lw a0,0x0(v1)
beq v0,a0,0x000228c0
_addiu v1,v1,0x4
addiu s0,s0,0x1
beq s0,a1,0x0002295c
_addiu v1,v1,0x4
lw a0,-0x4(v1)
bne a0,v0,0x000228a8
_addiu s0,s0,0x1
addiu s0,s0,-0x1
or a2,s0,zero
or a1,s2,zero
or a0,s1,zero
lw t9,-0x7ee4(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x00022858
_lw ra,0x2c(sp)
lw t9,-0x7ee0(gp)
jalr t9
_nop
lw gp,0x10(sp)
bltz v0,0x00022938
_lw a3,-0x7f94(gp)
lw v1,0x24(s1)
slt v1,v0,v1
beq v1,zero,0x00022938
_sll v0,v0,0x2
lw v1,0x30(s1)
addu v0,v1,v0
lw a2,0x0(v0)
lw a1,0x14(s1)
or a0,s3,zero
lw t9,-0x7f68(gp)
bal 0x000216b4
_nop
lw gp,0x10(sp)
b 0x00022858
_lw ra,0x2c(sp)
addiu a3,a3,0x224
li a2,0x28
lw a1,-0x7f94(gp)
addiu a1,a1,-0x2890
lw a0,-0x7f94(gp)
addiu a0,a0,-0x2884
lw t9,-0x7838(gp)
jalr t9
_nop
lw a3,-0x7f94(gp)
addiu a3,a3,0x224
li a2,0x24
lw a1,-0x7f94(gp)
addiu a1,a1,-0x2890
lw a0,-0x7f94(gp)
addiu a0,a0,-0x2854
lw t9,-0x7838(gp)
jalr t9
_nop
(translation_unit "void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}\n\n" (function_definition "void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" primitive_type (function_declarator "conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" identifier (parameter_list "(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (if_statement "if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" if (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }" { (expression_statement "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));" (assignment_expression "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" identifier = (call_expression "conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" identifier (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14))" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x14)" * (cast_expression "(undefined4 *)(param_1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) )))) ;) (if_statement "if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x24) < 1)" ( (binary_expression "*(int *)(param_1 + 0x24) < 1" (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) < number_literal) )) (compound_statement "{\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" { (labeled_statement "LAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" statement_identifier : (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" ( (pointer_expression "*(code *)PTR___assert_fail_000ae858" * (cast_expression "(code *)PTR___assert_fail_000ae858" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" ( (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2854" identifier + number_literal) , (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" identifier + number_literal) , number_literal , (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" identifier + number_literal) ))) ;)) (return_statement "return;" return ;) })) (expression_statement "piVar3 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar3 = *(int **)(param_1 + 0x30)" identifier = (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" if (parenthesized_expression "(iVar2 != *piVar3)" ( (binary_expression "iVar2 != *piVar3" identifier != (pointer_expression "*piVar3" * identifier)) )) (compound_statement "{\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" { (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" identifier = number_literal) ;) (do_statement "do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);" do (compound_statement "{\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      }" { (expression_statement "iVar4 = iVar1;" (assignment_expression "iVar4 = iVar1" identifier = identifier) ;) (expression_statement "piVar3 = piVar3 + 1;" (assignment_expression "piVar3 = piVar3 + 1" identifier = (binary_expression "piVar3 + 1" identifier + number_literal)) ;) (if_statement "if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;" if (parenthesized_expression "(iVar4 == *(int *)(param_1 + 0x24))" ( (binary_expression "iVar4 == *(int *)(param_1 + 0x24)" identifier == (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) ))))) )) (goto_statement "goto LAB_00022960;" goto statement_identifier ;)) (expression_statement "iVar1 = iVar4 + 1;" (assignment_expression "iVar1 = iVar4 + 1" identifier = (binary_expression "iVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*piVar3 != iVar2)" ( (binary_expression "*piVar3 != iVar2" (pointer_expression "*piVar3" * identifier) != identifier) )) ;) })) (expression_statement "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);" (call_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4)" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)" ( (pointer_expression "*(code *)PTR_dlg_radiobutton_set_000ae1ac" * (cast_expression "(code *)PTR_dlg_radiobutton_set_000ae1ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,iVar4)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" else (if_statement "if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" if (parenthesized_expression "(param_4 == 2)" ( (binary_expression "param_4 == 2" identifier == number_literal) )) (compound_statement "{\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" { (expression_statement "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();" (assignment_expression "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" identifier = (call_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)" ( (pointer_expression "*(code *)PTR_dlg_radiobutton_get_000ae1b0" * (cast_expression "(code *)PTR_dlg_radiobutton_get_000ae1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" if (parenthesized_expression "((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2))" ( (binary_expression "(iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)" (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) || (parenthesized_expression "(*(int *)(param_1 + 0x24) <= iVar2)" ( (binary_expression "*(int *)(param_1 + 0x24) <= iVar2" (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) <= identifier) ))) )) (compound_statement "{\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" { (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" ( (pointer_expression "*(code *)PTR___assert_fail_000ae858" * (cast_expression "(code *)PTR___assert_fail_000ae858" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" ( (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2884" identifier + number_literal) , (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" identifier + number_literal) , number_literal , (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" identifier + number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));" (call_expression "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" identifier (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x14)" * (cast_expression "(undefined4 *)(param_1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" * (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x30) + iVar2 * 4)" ( (binary_expression "*(int *)(param_1 + 0x30) + iVar2 * 4" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ))) ;) })))) (return_statement "return;" return ;) })))
(translation_unit "void conf_radiobutton_handler(control *ctrl,void *dlg,void *data,int event)\n\n{\n  int iVar1;\n  \n  if (event == 0) {\n                    /* WARNING: Subroutine does not return */\n    conf_get_int((Conf *)data,(ctrl->generic).context.i);\n  }\n  if (event == 2) {\n    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);\n  }\n  return;\n}\n\n" (function_definition "void conf_radiobutton_handler(control *ctrl,void *dlg,void *data,int event)\n\n{\n  int iVar1;\n  \n  if (event == 0) {\n                    /* WARNING: Subroutine does not return */\n    conf_get_int((Conf *)data,(ctrl->generic).context.i);\n  }\n  if (event == 2) {\n    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);\n  }\n  return;\n}" primitive_type (function_declarator "conf_radiobutton_handler(control *ctrl,void *dlg,void *data,int event)" identifier (parameter_list "(control *ctrl,void *dlg,void *data,int event)" ( (parameter_declaration "control *ctrl" type_identifier (pointer_declarator "*ctrl" * identifier)) , (parameter_declaration "void *dlg" primitive_type (pointer_declarator "*dlg" * identifier)) , (parameter_declaration "void *data" primitive_type (pointer_declarator "*data" * identifier)) , (parameter_declaration "int event" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  \n  if (event == 0) {\n                    /* WARNING: Subroutine does not return */\n    conf_get_int((Conf *)data,(ctrl->generic).context.i);\n  }\n  if (event == 2) {\n    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (event == 0) {\n                    /* WARNING: Subroutine does not return */\n    conf_get_int((Conf *)data,(ctrl->generic).context.i);\n  }" if (parenthesized_expression "(event == 0)" ( (binary_expression "event == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    conf_get_int((Conf *)data,(ctrl->generic).context.i);\n  }" { comment (expression_statement "conf_get_int((Conf *)data,(ctrl->generic).context.i);" (call_expression "conf_get_int((Conf *)data,(ctrl->generic).context.i)" identifier (argument_list "((Conf *)data,(ctrl->generic).context.i)" ( (cast_expression "(Conf *)data" ( (type_descriptor "Conf *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "(ctrl->generic).context.i" (field_expression "(ctrl->generic).context" (parenthesized_expression "(ctrl->generic)" ( (field_expression "ctrl->generic" identifier -> field_identifier) )) . field_identifier) . field_identifier) ))) ;) })) (if_statement "if (event == 2) {\n    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);\n  }" if (parenthesized_expression "(event == 2)" ( (binary_expression "event == 2" identifier == number_literal) )) (compound_statement "{\n    iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);\n  }" { (expression_statement "iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();" (assignment_expression "iVar1 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" identifier = (call_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)" ( (pointer_expression "*(code *)PTR_dlg_radiobutton_get_000ae1b0" * (cast_expression "(code *)PTR_dlg_radiobutton_get_000ae1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if ((iVar1 < 0) || ((ctrl->editbox).password <= iVar1)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" if (parenthesized_expression "((iVar1 < 0) || ((ctrl->editbox).password <= iVar1))" ( (binary_expression "(iVar1 < 0) || ((ctrl->editbox).password <= iVar1)" (parenthesized_expression "(iVar1 < 0)" ( (binary_expression "iVar1 < 0" identifier < number_literal) )) || (parenthesized_expression "((ctrl->editbox).password <= iVar1)" ( (binary_expression "(ctrl->editbox).password <= iVar1" (field_expression "(ctrl->editbox).password" (parenthesized_expression "(ctrl->editbox)" ( (field_expression "ctrl->editbox" identifier -> field_identifier) )) . field_identifier) <= identifier) ))) )) (compound_statement "{\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" { (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" ( (pointer_expression "*(code *)PTR___assert_fail_000ae858" * (cast_expression "(code *)PTR___assert_fail_000ae858" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" ( (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2884" identifier + number_literal) , (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" identifier + number_literal) , number_literal , (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" identifier + number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i);" (call_expression "conf_set_int((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i)" identifier (argument_list "((Conf *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[iVar1].i)" ( (cast_expression "(Conf *)data" ( (type_descriptor "Conf *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "(ctrl->generic).context.i" (field_expression "(ctrl->generic).context" (parenthesized_expression "(ctrl->generic)" ( (field_expression "ctrl->generic" identifier -> field_identifier) )) . field_identifier) . field_identifier) , (field_expression "(ctrl->radio).buttondata[iVar1].i" (subscript_expression "(ctrl->radio).buttondata[iVar1]" (field_expression "(ctrl->radio).buttondata" (parenthesized_expression "(ctrl->radio)" ( (field_expression "ctrl->radio" identifier -> field_identifier) )) . field_identifier) [ identifier ]) . field_identifier) ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}\n\n" (function_definition "void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" primitive_type (function_declarator "conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" identifier (parameter_list "(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (if_statement "if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" if (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }" { (expression_statement "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));" (assignment_expression "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" identifier = (call_expression "conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" identifier (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14))" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x14)" * (cast_expression "(undefined4 *)(param_1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) )))) ;) (if_statement "if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x24) < 1)" ( (binary_expression "*(int *)(param_1 + 0x24) < 1" (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) < number_literal) )) (compound_statement "{\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" { (labeled_statement "LAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" statement_identifier : (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" ( (pointer_expression "*(code *)PTR___assert_fail_000ae858" * (cast_expression "(code *)PTR___assert_fail_000ae858" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" ( (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2854" identifier + number_literal) , (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" identifier + number_literal) , number_literal , (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" identifier + number_literal) ))) ;)) (return_statement "return;" return ;) })) (expression_statement "piVar3 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar3 = *(int **)(param_1 + 0x30)" identifier = (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" if (parenthesized_expression "(iVar2 != *piVar3)" ( (binary_expression "iVar2 != *piVar3" identifier != (pointer_expression "*piVar3" * identifier)) )) (compound_statement "{\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" { (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" identifier = number_literal) ;) (do_statement "do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);" do (compound_statement "{\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      }" { (expression_statement "iVar4 = iVar1;" (assignment_expression "iVar4 = iVar1" identifier = identifier) ;) (expression_statement "piVar3 = piVar3 + 1;" (assignment_expression "piVar3 = piVar3 + 1" identifier = (binary_expression "piVar3 + 1" identifier + number_literal)) ;) (if_statement "if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;" if (parenthesized_expression "(iVar4 == *(int *)(param_1 + 0x24))" ( (binary_expression "iVar4 == *(int *)(param_1 + 0x24)" identifier == (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) ))))) )) (goto_statement "goto LAB_00022960;" goto statement_identifier ;)) (expression_statement "iVar1 = iVar4 + 1;" (assignment_expression "iVar1 = iVar4 + 1" identifier = (binary_expression "iVar4 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*piVar3 != iVar2)" ( (binary_expression "*piVar3 != iVar2" (pointer_expression "*piVar3" * identifier) != identifier) )) ;) })) (expression_statement "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);" (call_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4)" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)" ( (pointer_expression "*(code *)PTR_dlg_radiobutton_set_000ae1ac" * (cast_expression "(code *)PTR_dlg_radiobutton_set_000ae1ac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,iVar4)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" else (if_statement "if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" if (parenthesized_expression "(param_4 == 2)" ( (binary_expression "param_4 == 2" identifier == number_literal) )) (compound_statement "{\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" { (expression_statement "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();" (assignment_expression "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" identifier = (call_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)" ( (pointer_expression "*(code *)PTR_dlg_radiobutton_get_000ae1b0" * (cast_expression "(code *)PTR_dlg_radiobutton_get_000ae1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" if (parenthesized_expression "((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2))" ( (binary_expression "(iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)" (parenthesized_expression "(iVar2 < 0)" ( (binary_expression "iVar2 < 0" identifier < number_literal) )) || (parenthesized_expression "(*(int *)(param_1 + 0x24) <= iVar2)" ( (binary_expression "*(int *)(param_1 + 0x24) <= iVar2" (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) <= identifier) ))) )) (compound_statement "{\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" { (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" ( (pointer_expression "*(code *)PTR___assert_fail_000ae858" * (cast_expression "(code *)PTR___assert_fail_000ae858" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" ( (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2884" identifier + number_literal) , (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" identifier + number_literal) , number_literal , (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" identifier + number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));" (call_expression "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" identifier (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x14)" * (cast_expression "(undefined4 *)(param_1 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" * (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x30) + iVar2 * 4)" ( (binary_expression "*(int *)(param_1 + 0x30) + iVar2 * 4" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ))) ;) })))) (return_statement "return;" return ;) })))
(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) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (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 { (labeled_statement statement_identifier : (expression_statement (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 ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != IDENT) )) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (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 ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < 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 (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 ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT)) )))) ))) ;) })))) (return_statement return ;) })))
(function_definition "void conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" (primitive_type "void") (function_declarator "conf_radiobutton_handler(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" (identifier "conf_radiobutton_handler") (parameter_list "(int param_1,undefined4 param_2,undefined4 param_3,int param_4)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) () ")"))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  int *piVar3;\n  int iVar4;\n  \n  if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }\n  return;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (if_statement "if (param_4 == 0) {\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }\n  else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" (if "if") (parenthesized_expression "(param_4 == 0)" (( "(") (binary_expression "param_4 == 0" (identifier "param_4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));\n    if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    piVar3 = *(int **)(param_1 + 0x30);\n    iVar4 = 0;\n    if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }\n    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);\n  }" ({ "{") (expression_statement "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));" (assignment_expression "iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" (identifier "iVar2") (= "=") (call_expression "conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14))" (identifier "conf_get_int") (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14))" (( "(") (identifier "param_3") (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x14)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) () ")")))) (; ";")) (if_statement "if (*(int *)(param_1 + 0x24) < 1) {\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x24) < 1)" (( "(") (binary_expression "*(int *)(param_1 + 0x24) < 1" (pointer_expression "*(int *)(param_1 + 0x24)" (* "*") (cast_expression "(int *)(param_1 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x24)" (( "(") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24")) () ")")))) (< "<") (number_literal "1")) () ")")) (compound_statement "{\nLAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" ({ "{") (labeled_statement "LAB_00022960:\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (statement_identifier "LAB_00022960") (: ":") (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_000ae858" (* "*") (cast_expression "(code *)PTR___assert_fail_000ae858" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_000ae858"))) () ")")) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (( "(") (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2854" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "-0x2854")) (, ",") (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "-0x2890")) (, ",") (number_literal "0x24") (, ",") (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "0x224")) () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "piVar3 = *(int **)(param_1 + 0x30);" (assignment_expression "piVar3 = *(int **)(param_1 + 0x30)" (identifier "piVar3") (= "=") (pointer_expression "*(int **)(param_1 + 0x30)" (* "*") (cast_expression "(int **)(param_1 + 0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar2 != *piVar3) {\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" (if "if") (parenthesized_expression "(iVar2 != *piVar3)" (( "(") (binary_expression "iVar2 != *piVar3" (identifier "iVar2") (!= "!=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) () ")")) (compound_statement "{\n      iVar1 = 1;\n      do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);\n    }" ({ "{") (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" (identifier "iVar1") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      } while (*piVar3 != iVar2);" (do "do") (compound_statement "{\n        iVar4 = iVar1;\n        piVar3 = piVar3 + 1;\n        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;\n        iVar1 = iVar4 + 1;\n      }" ({ "{") (expression_statement "iVar4 = iVar1;" (assignment_expression "iVar4 = iVar1" (identifier "iVar4") (= "=") (identifier "iVar1")) (; ";")) (expression_statement "piVar3 = piVar3 + 1;" (assignment_expression "piVar3 = piVar3 + 1" (identifier "piVar3") (= "=") (binary_expression "piVar3 + 1" (identifier "piVar3") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;" (if "if") (parenthesized_expression "(iVar4 == *(int *)(param_1 + 0x24))" (( "(") (binary_expression "iVar4 == *(int *)(param_1 + 0x24)" (identifier "iVar4") (== "==") (pointer_expression "*(int *)(param_1 + 0x24)" (* "*") (cast_expression "(int *)(param_1 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x24)" (( "(") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24")) () ")"))))) () ")")) (goto_statement "goto LAB_00022960;" (goto "goto") (statement_identifier "LAB_00022960") (; ";"))) (expression_statement "iVar1 = iVar4 + 1;" (assignment_expression "iVar1 = iVar4 + 1" (identifier "iVar1") (= "=") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*piVar3 != iVar2)" (( "(") (binary_expression "*piVar3 != iVar2" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (identifier "iVar2")) () ")")) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);" (call_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4)" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_set_000ae1ac)" (( "(") (pointer_expression "*(code *)PTR_dlg_radiobutton_set_000ae1ac" (* "*") (cast_expression "(code *)PTR_dlg_radiobutton_set_000ae1ac" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_dlg_radiobutton_set_000ae1ac"))) () ")")) (argument_list "(param_1,param_2,iVar4)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "iVar4") () ")"))) (; ";")) (} "}")) (else_clause "else if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" (else "else") (if_statement "if (param_4 == 2) {\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" (if "if") (parenthesized_expression "(param_4 == 2)" (( "(") (binary_expression "param_4 == 2" (identifier "param_4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();\n    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }\n    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));\n  }" ({ "{") (expression_statement "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();" (assignment_expression "iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)()" (parenthesized_expression "(*(code *)PTR_dlg_radiobutton_get_000ae1b0)" (( "(") (pointer_expression "*(code *)PTR_dlg_radiobutton_get_000ae1b0" (* "*") (cast_expression "(code *)PTR_dlg_radiobutton_get_000ae1b0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_dlg_radiobutton_get_000ae1b0"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" (if "if") (parenthesized_expression "((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2))" (( "(") (binary_expression "(iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)" (parenthesized_expression "(iVar2 < 0)" (( "(") (binary_expression "iVar2 < 0" (identifier "iVar2") (< "<") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(int *)(param_1 + 0x24) <= iVar2)" (( "(") (binary_expression "*(int *)(param_1 + 0x24) <= iVar2" (pointer_expression "*(int *)(param_1 + 0x24)" (* "*") (cast_expression "(int *)(param_1 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x24)" (( "(") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24")) () ")")))) (<= "<=") (identifier "iVar2")) () ")"))) () ")")) (compound_statement "{\n      (*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);\n      return;\n    }" ({ "{") (expression_statement "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224);" (call_expression "(*(code *)PTR___assert_fail_000ae858)\n                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (parenthesized_expression "(*(code *)PTR___assert_fail_000ae858)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_000ae858" (* "*") (cast_expression "(code *)PTR___assert_fail_000ae858" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_000ae858"))) () ")")) (argument_list "(PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,\n                 PTR_s__SSH_2_only__000ae0fc + 0x224)" (( "(") (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2884" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "-0x2884")) (, ",") (binary_expression "PTR_s__SSH_2_only__000ae0fc + -0x2890" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "-0x2890")) (, ",") (number_literal "0x28") (, ",") (binary_expression "PTR_s__SSH_2_only__000ae0fc + 0x224" (identifier "PTR_s__SSH_2_only__000ae0fc") (+ "+") (number_literal "0x224")) () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));" (call_expression "conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" (identifier "conf_set_int") (argument_list "(param_3,*(undefined4 *)(param_1 + 0x14),\n                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4))" (( "(") (identifier "param_3") (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x14)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x30) + iVar2 * 4)" (( "(") (binary_expression "*(int *)(param_1 + 0x30) + iVar2 * 4" (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (+ "+") (binary_expression "iVar2 * 4" (identifier "iVar2") (* "*") (number_literal "4"))) () ")")))) () ")"))) (; ";")) (} "}"))))) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(type_1 *ctrl,void *dlg,void *data,int var_1)

{
  int var_3;
  
  if (var_1 == 0) {
                    /* WARNING: Subroutine does not return */
    var_2((type_2 *)data,(ctrl->generic).context.i);
  }
  if (var_1 == 2) {
    var_3 = (*(type_3 *)PTR_dlg_radiobutton_get_000ae1b0)();
    if ((var_3 < 0) || ((ctrl->editbox).password <= var_3)) {
      (*(type_3 *)PTR___assert_fail_000ae858)
                (var_4 + -0x2884,var_4 + -0x2890,0x28,
                 var_4 + 0x224);
      return;
    }
    var_5((type_2 *)data,(ctrl->generic).context.i,(ctrl->radio).buttondata[var_3].i);
  }
  return;
}


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

void MASKED(int param_1,undefined4 param_2,undefined4 param_3,int param_4)

{
  int iVar1;
  int iVar2;
  int *piVar3;
  int iVar4;
  
  if (param_4 == 0) {
    iVar2 = conf_get_int(param_3,*(undefined4 *)(param_1 + 0x14));
    if (*(int *)(param_1 + 0x24) < 1) {
LAB_00022960:
      (*(code *)PTR___assert_fail_000ae858)
                (PTR_s__SSH_2_only__000ae0fc + -0x2854,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x24,
                 PTR_s__SSH_2_only__000ae0fc + 0x224);
      return;
    }
    piVar3 = *(int **)(param_1 + 0x30);
    iVar4 = 0;
    if (iVar2 != *piVar3) {
      iVar1 = 1;
      do {
        iVar4 = iVar1;
        piVar3 = piVar3 + 1;
        if (iVar4 == *(int *)(param_1 + 0x24)) goto LAB_00022960;
        iVar1 = iVar4 + 1;
      } while (*piVar3 != iVar2);
    }
    (*(code *)PTR_dlg_radiobutton_set_000ae1ac)(param_1,param_2,iVar4);
  }
  else if (param_4 == 2) {
    iVar2 = (*(code *)PTR_dlg_radiobutton_get_000ae1b0)();
    if ((iVar2 < 0) || (*(int *)(param_1 + 0x24) <= iVar2)) {
      (*(code *)PTR___assert_fail_000ae858)
                (PTR_s__SSH_2_only__000ae0fc + -0x2884,PTR_s__SSH_2_only__000ae0fc + -0x2890,0x28,
                 PTR_s__SSH_2_only__000ae0fc + 0x224);
      return;
    }
    conf_set_int(param_3,*(undefined4 *)(param_1 + 0x14),
                 *(undefined4 *)(*(int *)(param_1 + 0x30) + iVar2 * 4));
  }
  return;
}

