
int rl_noninc_reverse_search_again(int count,int key)

{
  int iVar1;
  uint uVar2;
  
  if (noninc_search_string == (char *)0x0) {
    rl_ding();
    uVar2 = 1;
  }
  else {
    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {
      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);
    }
    else {
      iVar1 = noninc_dosearch(noninc_search_string,-1,0);
    }
    uVar2 = (uint)(iVar1 != 1);
  }
  return uVar2;
}



bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)

{
  int iVar1;
  bool bVar2;
  
  if (DAT_002166c8 == 0) {
    rl_ding();
    bVar2 = true;
  }
  else {
    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {
      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);
    }
    else {
      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);
    }
    bVar2 = iVar1 != 1;
  }
  return bVar2;
}


SUB RSP,0x8
MOV RDI,qword ptr [0x002166c8]
TEST RDI,RDI
JZ 0x001b3ee4
CMP dword ptr [0x0020d8d4],0x0
JNZ 0x001b3ec7
LEA RAX,[0x20e920]
CMP qword ptr [0x0020d8e0],RAX
JNZ 0x001b3ec7
CMP ESI,0x6e
JZ 0x001b3ef0
MOV EDX,0x0
MOV ESI,0xffffffff
CALL 0x001b36db
CMP EAX,0x1
SETNZ AL
MOVZX EAX,AL
ADD RSP,0x8
RET
CALL 0x001c7983
MOV EAX,0x1
JMP 0x001b3edf
MOV EDX,0x10
MOV ESI,0xffffffff
CALL 0x001b36db
JMP 0x001b3ed6
(translation_unit "bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)\n\n{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}\n\n" (function_definition "bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)\n\n{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" primitive_type (function_declarator "rl_noninc_reverse_search_again(undefined8 param_1,int param_2)" identifier (parameter_list "(undefined8 param_1,int param_2)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (if_statement "if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" if (parenthesized_expression "(DAT_002166c8 == 0)" ( (binary_expression "DAT_002166c8 == 0" identifier == number_literal) )) (compound_statement "{\n    rl_ding();\n    bVar2 = true;\n  }" { (expression_statement "rl_ding();" (call_expression "rl_ding()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" identifier = true) ;) }) (else_clause "else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" else (compound_statement "{\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" { (if_statement "if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" if (parenthesized_expression "(((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e))" ( (binary_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)" (parenthesized_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap))" ( (binary_expression "(rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)" (parenthesized_expression "(rl_editing_mode == 0)" ( (binary_expression "rl_editing_mode == 0" identifier == number_literal) )) && (parenthesized_expression "(_rl_keymap == vi_movement_keymap)" ( (binary_expression "_rl_keymap == vi_movement_keymap" identifier == identifier) ))) )) && (parenthesized_expression "(param_2 == 0x6e)" ( (binary_expression "param_2 == 0x6e" identifier == number_literal) ))) )) (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }" { (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" identifier = (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" identifier (argument_list "(DAT_002166c8,0xffffffff,0x10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" else (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" { (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0)" identifier = (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0)" identifier (argument_list "(DAT_002166c8,0xffffffff,0)" ( identifier , number_literal , number_literal )))) ;) }))) (expression_statement "bVar2 = iVar1 != 1;" (assignment_expression "bVar2 = iVar1 != 1" identifier = (binary_expression "iVar1 != 1" identifier != number_literal)) ;) }))) (return_statement "return bVar2;" return identifier ;) })))
(translation_unit "int rl_noninc_reverse_search_again(int count,int key)\n\n{\n  int iVar1;\n  uint uVar2;\n  \n  if (noninc_search_string == (char *)0x0) {\n    rl_ding();\n    uVar2 = 1;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }\n  return uVar2;\n}\n\n" (function_definition "int rl_noninc_reverse_search_again(int count,int key)\n\n{\n  int iVar1;\n  uint uVar2;\n  \n  if (noninc_search_string == (char *)0x0) {\n    rl_ding();\n    uVar2 = 1;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }\n  return uVar2;\n}" primitive_type (function_declarator "rl_noninc_reverse_search_again(int count,int key)" identifier (parameter_list "(int count,int key)" ( (parameter_declaration "int count" primitive_type identifier) , (parameter_declaration "int key" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  \n  if (noninc_search_string == (char *)0x0) {\n    rl_ding();\n    uVar2 = 1;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }\n  return uVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (if_statement "if (noninc_search_string == (char *)0x0) {\n    rl_ding();\n    uVar2 = 1;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }" if (parenthesized_expression "(noninc_search_string == (char *)0x0)" ( (binary_expression "noninc_search_string == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    rl_ding();\n    uVar2 = 1;\n  }" { (expression_statement "rl_ding();" (call_expression "rl_ding()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar2 = 1;" (assignment_expression "uVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }" else (compound_statement "{\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }\n    uVar2 = (uint)(iVar1 != 1);\n  }" { (if_statement "if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)) {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }\n    else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }" if (parenthesized_expression "(((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e))" ( (binary_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (key == 0x6e)" (parenthesized_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap))" ( (binary_expression "(rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)" (parenthesized_expression "(rl_editing_mode == 0)" ( (binary_expression "rl_editing_mode == 0" identifier == number_literal) )) && (parenthesized_expression "(_rl_keymap == vi_movement_keymap)" ( (binary_expression "_rl_keymap == vi_movement_keymap" identifier == identifier) ))) )) && (parenthesized_expression "(key == 0x6e)" ( (binary_expression "key == 0x6e" identifier == number_literal) ))) )) (compound_statement "{\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);\n    }" { (expression_statement "iVar1 = noninc_dosearch(noninc_search_string,-1,0x10);" (assignment_expression "iVar1 = noninc_dosearch(noninc_search_string,-1,0x10)" identifier = (call_expression "noninc_dosearch(noninc_search_string,-1,0x10)" identifier (argument_list "(noninc_search_string,-1,0x10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }" else (compound_statement "{\n      iVar1 = noninc_dosearch(noninc_search_string,-1,0);\n    }" { (expression_statement "iVar1 = noninc_dosearch(noninc_search_string,-1,0);" (assignment_expression "iVar1 = noninc_dosearch(noninc_search_string,-1,0)" identifier = (call_expression "noninc_dosearch(noninc_search_string,-1,0)" identifier (argument_list "(noninc_search_string,-1,0)" ( identifier , number_literal , number_literal )))) ;) }))) (expression_statement "uVar2 = (uint)(iVar1 != 1);" (assignment_expression "uVar2 = (uint)(iVar1 != 1)" identifier = (call_expression "(uint)(iVar1 != 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar1 != 1)" ( (binary_expression "iVar1 != 1" identifier != number_literal) )))) ;) }))) (return_statement "return uVar2;" return identifier ;) })))
(translation_unit "bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)\n\n{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}\n\n" (function_definition "bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)\n\n{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" primitive_type (function_declarator "rl_noninc_reverse_search_again(undefined8 param_1,int param_2)" identifier (parameter_list "(undefined8 param_1,int param_2)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (if_statement "if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" if (parenthesized_expression "(DAT_002166c8 == 0)" ( (binary_expression "DAT_002166c8 == 0" identifier == number_literal) )) (compound_statement "{\n    rl_ding();\n    bVar2 = true;\n  }" { (expression_statement "rl_ding();" (call_expression "rl_ding()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" identifier = true) ;) }) (else_clause "else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" else (compound_statement "{\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" { (if_statement "if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" if (parenthesized_expression "(((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e))" ( (binary_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)" (parenthesized_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap))" ( (binary_expression "(rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)" (parenthesized_expression "(rl_editing_mode == 0)" ( (binary_expression "rl_editing_mode == 0" identifier == number_literal) )) && (parenthesized_expression "(_rl_keymap == vi_movement_keymap)" ( (binary_expression "_rl_keymap == vi_movement_keymap" identifier == identifier) ))) )) && (parenthesized_expression "(param_2 == 0x6e)" ( (binary_expression "param_2 == 0x6e" identifier == number_literal) ))) )) (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }" { (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" identifier = (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" identifier (argument_list "(DAT_002166c8,0xffffffff,0x10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" else (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" { (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0)" identifier = (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0)" identifier (argument_list "(DAT_002166c8,0xffffffff,0)" ( identifier , number_literal , number_literal )))) ;) }))) (expression_statement "bVar2 = iVar1 != 1;" (assignment_expression "bVar2 = iVar1 != 1" identifier = (binary_expression "iVar1 != 1" identifier != number_literal)) ;) }))) (return_statement "return bVar2;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == IDENT) ))) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT )))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != LIT)) ;) }))) (return_statement return IDENT ;) })))
(function_definition "bool rl_noninc_reverse_search_again(undefined8 param_1,int param_2)\n\n{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" (primitive_type "bool") (function_declarator "rl_noninc_reverse_search_again(undefined8 param_1,int param_2)" (identifier "rl_noninc_reverse_search_again") (parameter_list "(undefined8 param_1,int param_2)" (( "(") (parameter_declaration "undefined8 param_1" (type_identifier "undefined8") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  int iVar1;\n  bool bVar2;\n  \n  if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }\n  return bVar2;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "bool bVar2;" (primitive_type "bool") (identifier "bVar2") (; ";")) (if_statement "if (DAT_002166c8 == 0) {\n    rl_ding();\n    bVar2 = true;\n  }\n  else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" (if "if") (parenthesized_expression "(DAT_002166c8 == 0)" (( "(") (binary_expression "DAT_002166c8 == 0" (identifier "DAT_002166c8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    rl_ding();\n    bVar2 = true;\n  }" ({ "{") (expression_statement "rl_ding();" (call_expression "rl_ding()" (identifier "rl_ding") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" (identifier "bVar2") (= "=") (true "true")) (; ";")) (} "}")) (else_clause "else {\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" (else "else") (compound_statement "{\n    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }\n    bVar2 = iVar1 != 1;\n  }" ({ "{") (if_statement "if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }\n    else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" (if "if") (parenthesized_expression "(((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e))" (( "(") (binary_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)" (parenthesized_expression "((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap))" (( "(") (binary_expression "(rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)" (parenthesized_expression "(rl_editing_mode == 0)" (( "(") (binary_expression "rl_editing_mode == 0" (identifier "rl_editing_mode") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(_rl_keymap == vi_movement_keymap)" (( "(") (binary_expression "_rl_keymap == vi_movement_keymap" (identifier "_rl_keymap") (== "==") (identifier "vi_movement_keymap")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(param_2 == 0x6e)" (( "(") (binary_expression "param_2 == 0x6e" (identifier "param_2") (== "==") (number_literal "0x6e")) () ")"))) () ")")) (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);\n    }" ({ "{") (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" (identifier "iVar1") (= "=") (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0x10)" (identifier "FUN_001b36db") (argument_list "(DAT_002166c8,0xffffffff,0x10)" (( "(") (identifier "DAT_002166c8") (, ",") (number_literal "0xffffffff") (, ",") (number_literal "0x10") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" (else "else") (compound_statement "{\n      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);\n    }" ({ "{") (expression_statement "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);" (assignment_expression "iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0)" (identifier "iVar1") (= "=") (call_expression "FUN_001b36db(DAT_002166c8,0xffffffff,0)" (identifier "FUN_001b36db") (argument_list "(DAT_002166c8,0xffffffff,0)" (( "(") (identifier "DAT_002166c8") (, ",") (number_literal "0xffffffff") (, ",") (number_literal "0") () ")")))) (; ";")) (} "}")))) (expression_statement "bVar2 = iVar1 != 1;" (assignment_expression "bVar2 = iVar1 != 1" (identifier "bVar2") (= "=") (binary_expression "iVar1 != 1" (identifier "iVar1") (!= "!=") (number_literal "1"))) (; ";")) (} "}")))) (return_statement "return bVar2;" (return "return") (identifier "bVar2") (; ";")) (} "}")))

int function_1(int count,int var_6)

{
  int var_8;
  type_1 uVar2;
  
  if (var_1 == (char *)0x0) {
    var_2();
    uVar2 = 1;
  }
  else {
    if (((var_3 == 0) && (var_4 == var_5)) && (var_6 == 0x6e)) {
      var_8 = var_7(var_1,-1,0x10);
    }
    else {
      var_8 = var_7(var_1,-1,0);
    }
    uVar2 = (type_1)(var_8 != 1);
  }
  return uVar2;
}


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

bool MASKED(undefined8 param_1,int param_2)

{
  int iVar1;
  bool bVar2;
  
  if (DAT_002166c8 == 0) {
    rl_ding();
    bVar2 = true;
  }
  else {
    if (((rl_editing_mode == 0) && (_rl_keymap == vi_movement_keymap)) && (param_2 == 0x6e)) {
      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0x10);
    }
    else {
      iVar1 = FUN_001b36db(DAT_002166c8,0xffffffff,0);
    }
    bVar2 = iVar1 != 1;
  }
  return bVar2;
}

