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

int rl_vi_bWord(int count,int ignore)

{
  size_t sVar1;
  int local_24;
  
  local_24 = count;
  if (count == 0) {
    return 0;
  }
LAB_000c6cf0:
  if (rl_point < 1) {
    return 0;
  }
  if (((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&
     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))) {
    rl_point = rl_point + -1;
  }
  do {
    while( true ) {
      if (rl_point < 1) goto LAB_000c6d68;
      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))
      goto LAB_000c6d9c;
      sVar1 = __ctype_get_mb_cur_max();
      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;
      rl_point = rl_point + -1;
    }
    rl_point = _rl_backward_char_internal(1);
  } while (-1 < rl_point);
LAB_000c6df0:
  rl_point = 0;
  goto LAB_000c6d68;
  while ((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))) {
LAB_000c6d9c:
    sVar1 = __ctype_get_mb_cur_max();
    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {
      rl_point = rl_point + -1;
    }
    else {
      rl_point = _rl_backward_char_internal(1);
      if (rl_point < 0) goto LAB_000c6df0;
    }
    if (rl_point < 1) {
      if (rl_point == 0) goto LAB_000c6d68;
      goto LAB_000c6df0;
    }
  }
  rl_point = rl_point + 1;
LAB_000c6d68:
  local_24 = local_24 + -1;
  if (local_24 == 0) {
    return 0;
  }
  goto LAB_000c6cf0;
}



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

undefined4 rl_vi_bWord(int param_1)

{
  char cVar1;
  size_t sVar2;
  int local_24;
  
  local_24 = param_1;
  if (param_1 == 0) {
    return 0;
  }
LAB_000c6cf0:
  if (rl_point < 1) {
    return 0;
  }
  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&
      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&
     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {
    rl_point = rl_point + -1;
  }
  do {
    while( true ) {
      if (rl_point < 1) goto LAB_000c6d68;
      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&
         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;
      sVar2 = __ctype_get_mb_cur_max();
      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;
      rl_point = rl_point + -1;
    }
    rl_point = _rl_backward_char_internal(1);
  } while (-1 < rl_point);
LAB_000c6df0:
  rl_point = 0;
  goto LAB_000c6d68;
  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&
         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {
LAB_000c6d9c:
    sVar2 = __ctype_get_mb_cur_max();
    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {
      rl_point = rl_point + -1;
    }
    else {
      rl_point = _rl_backward_char_internal(1);
      if (rl_point < 0) goto LAB_000c6df0;
    }
    if (rl_point < 1) {
      if (rl_point == 0) goto LAB_000c6d68;
      goto LAB_000c6df0;
    }
  }
  rl_point = rl_point + 1;
LAB_000c6d68:
  local_24 = local_24 + -1;
  if (local_24 == 0) {
    return 0;
  }
  goto LAB_000c6cf0;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00031ed0
ADD EBX,0x83337
SUB ESP,0x1c
MOV EAX,dword ptr [ESP + 0x30]
MOV dword ptr [ESP + 0x8],EAX
LEA EAX,[EBX + 0x8b30]
MOV dword ptr [ESP + 0xc],EAX
MOV EAX,dword ptr [ESP + 0x8]
TEST EAX,EAX
JZ 0x000c6d70
LEA EDI,[EBX + 0xd988]
MOV EAX,dword ptr [EDI]
TEST EAX,EAX
JLE 0x000c6d70
LEA EBP,[EBX + 0x7afc]
MOV ESI,dword ptr [EBP]
MOVZX ECX,byte ptr [ESI + EAX*0x1]
CMP CL,0x20
JZ 0x000c6d2a
CMP CL,0x9
JZ 0x000c6d2a
MOVZX ECX,byte ptr [ESI + EAX*0x1 + -0x1]
CMP CL,0x20
JZ 0x000c6e00
CMP CL,0x9
JZ 0x000c6e00
LEA ESI,[EBX + 0x8b30]
TEST EAX,EAX
JLE 0x000c6d5e
MOV EDX,dword ptr [EBP]
MOVZX EAX,byte ptr [EDX + EAX*0x1]
CMP AL,0x20
JZ 0x000c6d43
CMP AL,0x9
JNZ 0x000c6d9c
CALL 0x0002f520
CMP EAX,0x1
JZ 0x000c6d53
MOV ECX,dword ptr [ESI]
TEST ECX,ECX
JZ 0x000c6dc8
MOV EAX,dword ptr [EDI]
SUB EAX,0x1
MOV dword ptr [EDI],EAX
TEST EAX,EAX
JG 0x000c6d34
SUB dword ptr [ESP + 0x8],0x1
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [ESP + 0x8]
TEST EAX,EAX
JNZ 0x000c6cf0
ADD ESP,0x1c
XOR EAX,EAX
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EDI]
SUB EAX,0x1
MOV dword ptr [EDI],EAX
TEST EAX,EAX
JLE 0x000c6de0
MOV EDX,dword ptr [EBP]
MOVZX EDX,byte ptr [EDX + EAX*0x1]
CMP DL,0x20
JZ 0x000c6e10
CMP DL,0x9
JZ 0x000c6e10
CALL 0x0002f520
CMP EAX,0x1
JZ 0x000c6d80
MOV EAX,dword ptr [ESP + 0xc]
MOV EDX,dword ptr [EAX]
TEST EDX,EDX
JNZ 0x000c6d80
SUB ESP,0xc
PUSH 0x1
CALL 0x000e28a0
ADD ESP,0x10
TEST EAX,EAX
JS 0x000c6df0
MOV dword ptr [EDI],EAX
JMP 0x000c6d87
SUB ESP,0xc
PUSH 0x1
CALL 0x000e28a0
ADD ESP,0x10
TEST EAX,EAX
JS 0x000c6df0
MOV dword ptr [EDI],EAX
JMP 0x000c6d30
JZ 0x000c6d5e
LEA ESI,[ESI]
LEA ESI,[ESI]
MOV dword ptr [EDI],0x0
SUB dword ptr [ESP + 0x8],0x1
JMP 0x000c6d68
SUB EAX,0x1
MOV dword ptr [EDI],EAX
JMP 0x000c6d2a
ADD EAX,0x1
SUB dword ptr [ESP + 0x8],0x1
MOV dword ptr [EDI],EAX
JMP 0x000c6d68
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 rl_vi_bWord(int param_1)\n\n{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}\n\n" comment (function_definition "undefined4 rl_vi_bWord(int param_1)\n\n{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" type_identifier (function_declarator "rl_vi_bWord(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "size_t sVar2;" primitive_type identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" identifier = identifier) ;) (if_statement "if (param_1 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (labeled_statement "LAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }" statement_identifier : (if_statement "if (rl_point < 1) {\n    return 0;\n  }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) }))) (if_statement "if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }" if (parenthesized_expression "(((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))))" ( (binary_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) && (parenthesized_expression "((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" ( (parenthesized_expression "(cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))" ( (comma_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')" (assignment_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point)" identifier = (pointer_expression "*(char *)(rl_line_buffer + -1 + rl_point)" * (cast_expression "(char *)(rl_line_buffer + -1 + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + -1 + rl_point)" ( (binary_expression "rl_line_buffer + -1 + rl_point" (binary_expression "rl_line_buffer + -1" identifier + number_literal) + identifier) ))))) , (binary_expression "cVar1 == ' ' || (cVar1 == '\t')" (binary_expression "cVar1 == ' '" identifier == (char_literal "' '" ' character ')) || (parenthesized_expression "(cVar1 == '\t')" ( (binary_expression "cVar1 == '\t'" identifier == (char_literal "'\t'" ' escape_sequence ')) )))) )) ))) )) (compound_statement "{\n    rl_point = rl_point + -1;\n  }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (do_statement "do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);" do (compound_statement "{\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  }" { (while_statement "while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" { (if_statement "if (rl_point < 1) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (if_statement "if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;" if (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000c6d9c;" goto statement_identifier ;)) (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;" if (parenthesized_expression "((sVar2 != 1) && (rl_byte_oriented == 0))" ( (binary_expression "(sVar2 != 1) && (rl_byte_oriented == 0)" (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) && (parenthesized_expression "(rl_byte_oriented == 0)" ( (binary_expression "rl_byte_oriented == 0" identifier == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) }) while (parenthesized_expression "(-1 < rl_point)" ( (binary_expression "-1 < rl_point" number_literal < identifier) )) ;) (labeled_statement "LAB_000c6df0:\n  rl_point = 0;" statement_identifier : (expression_statement "rl_point = 0;" (assignment_expression "rl_point = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;) (while_statement "while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" while (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')))" ( (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) )) (compound_statement "{\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" { (labeled_statement "LAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();" statement_identifier : (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;)) (if_statement "if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" if (parenthesized_expression "((sVar2 == 1) || (rl_byte_oriented != 0))" ( (binary_expression "(sVar2 == 1) || (rl_byte_oriented != 0)" (parenthesized_expression "(sVar2 == 1)" ( (binary_expression "sVar2 == 1" identifier == number_literal) )) || (parenthesized_expression "(rl_byte_oriented != 0)" ( (binary_expression "rl_byte_oriented != 0" identifier != number_literal) ))) )) (compound_statement "{\n      rl_point = rl_point + -1;\n    }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) }) (else_clause "else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" else (compound_statement "{\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" { (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (if_statement "if (rl_point < 0) goto LAB_000c6df0;" if (parenthesized_expression "(rl_point < 0)" ( (binary_expression "rl_point < 0" identifier < number_literal) )) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;)) }))) (if_statement "if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" { (if_statement "if (rl_point == 0) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point == 0)" ( (binary_expression "rl_point == 0" identifier == number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;) })) })) (expression_statement "rl_point = rl_point + 1;" (assignment_expression "rl_point = rl_point + 1" identifier = (binary_expression "rl_point + 1" identifier + number_literal)) ;) (labeled_statement "LAB_000c6d68:\n  local_24 = local_24 + -1;" statement_identifier : (expression_statement "local_24 = local_24 + -1;" (assignment_expression "local_24 = local_24 + -1" identifier = (binary_expression "local_24 + -1" identifier + number_literal)) ;)) (if_statement "if (local_24 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(local_24 == 0)" ( (binary_expression "local_24 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (goto_statement "goto LAB_000c6cf0;" goto statement_identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nint rl_vi_bWord(int count,int ignore)\n\n{\n  size_t sVar1;\n  int local_24;\n  \n  local_24 = count;\n  if (count == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))) {\nLAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();\n    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}\n\n" comment (function_definition "int rl_vi_bWord(int count,int ignore)\n\n{\n  size_t sVar1;\n  int local_24;\n  \n  local_24 = count;\n  if (count == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))) {\nLAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();\n    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" primitive_type (function_declarator "rl_vi_bWord(int count,int ignore)" identifier (parameter_list "(int count,int ignore)" ( (parameter_declaration "int count" primitive_type identifier) , (parameter_declaration "int ignore" primitive_type identifier) ))) (compound_statement "{\n  size_t sVar1;\n  int local_24;\n  \n  local_24 = count;\n  if (count == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))) {\nLAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();\n    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "local_24 = count;" (assignment_expression "local_24 = count" identifier = identifier) ;) (if_statement "if (count == 0) {\n    return 0;\n  }" if (parenthesized_expression "(count == 0)" ( (binary_expression "count == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (labeled_statement "LAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }" statement_identifier : (if_statement "if (rl_point < 1) {\n    return 0;\n  }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) }))) (if_statement "if (((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))) {\n    rl_point = rl_point + -1;\n  }" if (parenthesized_expression "(((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t'))))" ( (binary_expression "((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')) &&\n     ((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))" (parenthesized_expression "((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))" ( (binary_expression "(rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')" (parenthesized_expression "(rl_line_buffer[rl_point] != ' ')" ( (binary_expression "rl_line_buffer[rl_point] != ' '" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(rl_line_buffer[rl_point] != '\t')" ( (binary_expression "rl_line_buffer[rl_point] != '\t'" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "'\t'" ' escape_sequence ')) ))) )) && (parenthesized_expression "((rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')))" ( (parenthesized_expression "(rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t'))" ( (binary_expression "rl_line_buffer[rl_point + -1] == ' ' || (rl_line_buffer[rl_point + -1] == '\t')" (binary_expression "rl_line_buffer[rl_point + -1] == ' '" (subscript_expression "rl_line_buffer[rl_point + -1]" identifier [ (binary_expression "rl_point + -1" identifier + number_literal) ]) == (char_literal "' '" ' character ')) || (parenthesized_expression "(rl_line_buffer[rl_point + -1] == '\t')" ( (binary_expression "rl_line_buffer[rl_point + -1] == '\t'" (subscript_expression "rl_line_buffer[rl_point + -1]" identifier [ (binary_expression "rl_point + -1" identifier + number_literal) ]) == (char_literal "'\t'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n    rl_point = rl_point + -1;\n  }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (do_statement "do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);" do (compound_statement "{\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  }" { (while_statement "while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;\n      sVar1 = __ctype_get_mb_cur_max();\n      if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" { (if_statement "if (rl_point < 1) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (if_statement "if ((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))\n      goto LAB_000c6d9c;" if (parenthesized_expression "((rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t'))" ( (binary_expression "(rl_line_buffer[rl_point] != ' ') && (rl_line_buffer[rl_point] != '\t')" (parenthesized_expression "(rl_line_buffer[rl_point] != ' ')" ( (binary_expression "rl_line_buffer[rl_point] != ' '" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(rl_line_buffer[rl_point] != '\t')" ( (binary_expression "rl_line_buffer[rl_point] != '\t'" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "'\t'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000c6d9c;" goto statement_identifier ;)) (expression_statement "sVar1 = __ctype_get_mb_cur_max();" (assignment_expression "sVar1 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((sVar1 != 1) && (rl_byte_oriented == 0)) break;" if (parenthesized_expression "((sVar1 != 1) && (rl_byte_oriented == 0))" ( (binary_expression "(sVar1 != 1) && (rl_byte_oriented == 0)" (parenthesized_expression "(sVar1 != 1)" ( (binary_expression "sVar1 != 1" identifier != number_literal) )) && (parenthesized_expression "(rl_byte_oriented == 0)" ( (binary_expression "rl_byte_oriented == 0" identifier == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) }) while (parenthesized_expression "(-1 < rl_point)" ( (binary_expression "-1 < rl_point" number_literal < identifier) )) ;) (labeled_statement "LAB_000c6df0:\n  rl_point = 0;" statement_identifier : (expression_statement "rl_point = 0;" (assignment_expression "rl_point = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;) (while_statement "while ((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))) {\nLAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();\n    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" while (parenthesized_expression "((rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t')))" ( (parenthesized_expression "(rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t'))" ( (binary_expression "rl_line_buffer[rl_point] != ' ' && (rl_line_buffer[rl_point] != '\t')" (binary_expression "rl_line_buffer[rl_point] != ' '" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "' '" ' character ')) && (parenthesized_expression "(rl_line_buffer[rl_point] != '\t')" ( (binary_expression "rl_line_buffer[rl_point] != '\t'" (subscript_expression "rl_line_buffer[rl_point]" identifier [ identifier ]) != (char_literal "'\t'" ' escape_sequence ')) ))) )) )) (compound_statement "{\nLAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();\n    if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" { (labeled_statement "LAB_000c6d9c:\n    sVar1 = __ctype_get_mb_cur_max();" statement_identifier : (expression_statement "sVar1 = __ctype_get_mb_cur_max();" (assignment_expression "sVar1 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;)) (if_statement "if ((sVar1 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" if (parenthesized_expression "((sVar1 == 1) || (rl_byte_oriented != 0))" ( (binary_expression "(sVar1 == 1) || (rl_byte_oriented != 0)" (parenthesized_expression "(sVar1 == 1)" ( (binary_expression "sVar1 == 1" identifier == number_literal) )) || (parenthesized_expression "(rl_byte_oriented != 0)" ( (binary_expression "rl_byte_oriented != 0" identifier != number_literal) ))) )) (compound_statement "{\n      rl_point = rl_point + -1;\n    }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) }) (else_clause "else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" else (compound_statement "{\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" { (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (if_statement "if (rl_point < 0) goto LAB_000c6df0;" if (parenthesized_expression "(rl_point < 0)" ( (binary_expression "rl_point < 0" identifier < number_literal) )) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;)) }))) (if_statement "if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" { (if_statement "if (rl_point == 0) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point == 0)" ( (binary_expression "rl_point == 0" identifier == number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;) })) })) (expression_statement "rl_point = rl_point + 1;" (assignment_expression "rl_point = rl_point + 1" identifier = (binary_expression "rl_point + 1" identifier + number_literal)) ;) (labeled_statement "LAB_000c6d68:\n  local_24 = local_24 + -1;" statement_identifier : (expression_statement "local_24 = local_24 + -1;" (assignment_expression "local_24 = local_24 + -1" identifier = (binary_expression "local_24 + -1" identifier + number_literal)) ;)) (if_statement "if (local_24 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(local_24 == 0)" ( (binary_expression "local_24 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (goto_statement "goto LAB_000c6cf0;" goto statement_identifier ;) })))
(translation_unit "undefined4 rl_vi_bWord(int param_1)\n\n{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}\n\n" (function_definition "undefined4 rl_vi_bWord(int param_1)\n\n{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" type_identifier (function_declarator "rl_vi_bWord(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "size_t sVar2;" primitive_type identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" identifier = identifier) ;) (if_statement "if (param_1 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (labeled_statement "LAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }" statement_identifier : (if_statement "if (rl_point < 1) {\n    return 0;\n  }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) }))) (if_statement "if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }" if (parenthesized_expression "(((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))))" ( (binary_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) && (parenthesized_expression "((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" ( (parenthesized_expression "(cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))" ( (comma_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')" (assignment_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point)" identifier = (pointer_expression "*(char *)(rl_line_buffer + -1 + rl_point)" * (cast_expression "(char *)(rl_line_buffer + -1 + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + -1 + rl_point)" ( (binary_expression "rl_line_buffer + -1 + rl_point" (binary_expression "rl_line_buffer + -1" identifier + number_literal) + identifier) ))))) , (binary_expression "cVar1 == ' ' || (cVar1 == '\t')" (binary_expression "cVar1 == ' '" identifier == (char_literal "' '" ' character ')) || (parenthesized_expression "(cVar1 == '\t')" ( (binary_expression "cVar1 == '\t'" identifier == (char_literal "'\t'" ' escape_sequence ')) )))) )) ))) )) (compound_statement "{\n    rl_point = rl_point + -1;\n  }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (do_statement "do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);" do (compound_statement "{\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  }" { (while_statement "while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" { (if_statement "if (rl_point < 1) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (if_statement "if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;" if (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) )) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000c6d9c;" goto statement_identifier ;)) (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;" if (parenthesized_expression "((sVar2 != 1) && (rl_byte_oriented == 0))" ( (binary_expression "(sVar2 != 1) && (rl_byte_oriented == 0)" (parenthesized_expression "(sVar2 != 1)" ( (binary_expression "sVar2 != 1" identifier != number_literal) )) && (parenthesized_expression "(rl_byte_oriented == 0)" ( (binary_expression "rl_byte_oriented == 0" identifier == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) })) (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) }) while (parenthesized_expression "(-1 < rl_point)" ( (binary_expression "-1 < rl_point" number_literal < identifier) )) ;) (labeled_statement "LAB_000c6df0:\n  rl_point = 0;" statement_identifier : (expression_statement "rl_point = 0;" (assignment_expression "rl_point = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;) (while_statement "while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" while (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')))" ( (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "' '" ' character ')) && (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" ( (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" * (cast_expression "(char *)(rl_line_buffer + rl_point)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(rl_line_buffer + rl_point)" ( (binary_expression "rl_line_buffer + rl_point" identifier + identifier) )))) != (char_literal "'\t'" ' escape_sequence ')) ))) )) )) (compound_statement "{\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" { (labeled_statement "LAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();" statement_identifier : (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" identifier = (call_expression "__ctype_get_mb_cur_max()" identifier (argument_list "()" ( )))) ;)) (if_statement "if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" if (parenthesized_expression "((sVar2 == 1) || (rl_byte_oriented != 0))" ( (binary_expression "(sVar2 == 1) || (rl_byte_oriented != 0)" (parenthesized_expression "(sVar2 == 1)" ( (binary_expression "sVar2 == 1" identifier == number_literal) )) || (parenthesized_expression "(rl_byte_oriented != 0)" ( (binary_expression "rl_byte_oriented != 0" identifier != number_literal) ))) )) (compound_statement "{\n      rl_point = rl_point + -1;\n    }" { (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" identifier = (binary_expression "rl_point + -1" identifier + number_literal)) ;) }) (else_clause "else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" else (compound_statement "{\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" { (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" identifier = (call_expression "_rl_backward_char_internal(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (if_statement "if (rl_point < 0) goto LAB_000c6df0;" if (parenthesized_expression "(rl_point < 0)" ( (binary_expression "rl_point < 0" identifier < number_literal) )) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;)) }))) (if_statement "if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" if (parenthesized_expression "(rl_point < 1)" ( (binary_expression "rl_point < 1" identifier < number_literal) )) (compound_statement "{\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" { (if_statement "if (rl_point == 0) goto LAB_000c6d68;" if (parenthesized_expression "(rl_point == 0)" ( (binary_expression "rl_point == 0" identifier == number_literal) )) (goto_statement "goto LAB_000c6d68;" goto statement_identifier ;)) (goto_statement "goto LAB_000c6df0;" goto statement_identifier ;) })) })) (expression_statement "rl_point = rl_point + 1;" (assignment_expression "rl_point = rl_point + 1" identifier = (binary_expression "rl_point + 1" identifier + number_literal)) ;) (labeled_statement "LAB_000c6d68:\n  local_24 = local_24 + -1;" statement_identifier : (expression_statement "local_24 = local_24 + -1;" (assignment_expression "local_24 = local_24 + -1" identifier = (binary_expression "local_24 + -1" identifier + number_literal)) ;)) (if_statement "if (local_24 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(local_24 == 0)" ( (binary_expression "local_24 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (goto_statement "goto LAB_000c6cf0;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (return_statement return LIT ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' character ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' escape_sequence ')) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) ))))) , (binary_expression (binary_expression IDENT == (char_literal ' character ')) || (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' character ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' character ')) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) != (char_literal ' escape_sequence ')) ))) )) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (goto_statement goto statement_identifier ;) })))
(function_definition "undefined4 rl_vi_bWord(int param_1)\n\n{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" (type_identifier "undefined4") (function_declarator "rl_vi_bWord(int param_1)" (identifier "rl_vi_bWord") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  char cVar1;\n  size_t sVar2;\n  int local_24;\n  \n  local_24 = param_1;\n  if (param_1 == 0) {\n    return 0;\n  }\nLAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }\n  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }\n  do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);\nLAB_000c6df0:\n  rl_point = 0;\n  goto LAB_000c6d68;\n  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }\n  rl_point = rl_point + 1;\nLAB_000c6d68:\n  local_24 = local_24 + -1;\n  if (local_24 == 0) {\n    return 0;\n  }\n  goto LAB_000c6cf0;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "size_t sVar2;" (primitive_type "size_t") (identifier "sVar2") (; ";")) (declaration "int local_24;" (primitive_type "int") (identifier "local_24") (; ";")) (expression_statement "local_24 = param_1;" (assignment_expression "local_24 = param_1" (identifier "local_24") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 == 0) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (labeled_statement "LAB_000c6cf0:\n  if (rl_point < 1) {\n    return 0;\n  }" (statement_identifier "LAB_000c6cf0") (: ":") (if_statement "if (rl_point < 1) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(rl_point < 1)" (( "(") (binary_expression "rl_point < 1" (identifier "rl_point") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}")))) (if_statement "if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {\n    rl_point = rl_point + -1;\n  }" (if "if") (parenthesized_expression "(((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))))" (( "(") (binary_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&\n     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t'))" (( "(") (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n      (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "' '" (' "'") (character " ") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))" (( "(") (parenthesized_expression "(cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t'))" (( "(") (comma_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')" (assignment_expression "cVar1 = *(char *)(rl_line_buffer + -1 + rl_point)" (identifier "cVar1") (= "=") (pointer_expression "*(char *)(rl_line_buffer + -1 + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + -1 + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + -1 + rl_point)" (( "(") (binary_expression "rl_line_buffer + -1 + rl_point" (binary_expression "rl_line_buffer + -1" (identifier "rl_line_buffer") (+ "+") (number_literal "-1")) (+ "+") (identifier "rl_point")) () ")"))))) (, ",") (binary_expression "cVar1 == ' ' || (cVar1 == '\t')" (binary_expression "cVar1 == ' '" (identifier "cVar1") (== "==") (char_literal "' '" (' "'") (character " ") (' "'"))) (|| "||") (parenthesized_expression "(cVar1 == '\t')" (( "(") (binary_expression "cVar1 == '\t'" (identifier "cVar1") (== "==") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n    rl_point = rl_point + -1;\n  }" ({ "{") (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" (identifier "rl_point") (= "=") (binary_expression "rl_point + -1" (identifier "rl_point") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (do_statement "do {\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  } while (-1 < rl_point);" (do "do") (compound_statement "{\n    while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }\n    rl_point = _rl_backward_char_internal(1);\n  }" ({ "{") (while_statement "while( true ) {\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      if (rl_point < 1) goto LAB_000c6d68;\n      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;\n      sVar2 = __ctype_get_mb_cur_max();\n      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;\n      rl_point = rl_point + -1;\n    }" ({ "{") (if_statement "if (rl_point < 1) goto LAB_000c6d68;" (if "if") (parenthesized_expression "(rl_point < 1)" (( "(") (binary_expression "rl_point < 1" (identifier "rl_point") (< "<") (number_literal "1")) () ")")) (goto_statement "goto LAB_000c6d68;" (goto "goto") (statement_identifier "LAB_000c6d68") (; ";"))) (if_statement "if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;" (if "if") (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" (( "(") (binary_expression "(*(char *)(rl_line_buffer + rl_point) != ' ') &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ')" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "' '" (' "'") (character " ") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_000c6d9c;" (goto "goto") (statement_identifier "LAB_000c6d9c") (; ";"))) (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" (identifier "sVar2") (= "=") (call_expression "__ctype_get_mb_cur_max()" (identifier "__ctype_get_mb_cur_max") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;" (if "if") (parenthesized_expression "((sVar2 != 1) && (rl_byte_oriented == 0))" (( "(") (binary_expression "(sVar2 != 1) && (rl_byte_oriented == 0)" (parenthesized_expression "(sVar2 != 1)" (( "(") (binary_expression "sVar2 != 1" (identifier "sVar2") (!= "!=") (number_literal "1")) () ")")) (&& "&&") (parenthesized_expression "(rl_byte_oriented == 0)" (( "(") (binary_expression "rl_byte_oriented == 0" (identifier "rl_byte_oriented") (== "==") (number_literal "0")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" (identifier "rl_point") (= "=") (binary_expression "rl_point + -1" (identifier "rl_point") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" (identifier "rl_point") (= "=") (call_expression "_rl_backward_char_internal(1)" (identifier "_rl_backward_char_internal") (argument_list "(1)" (( "(") (number_literal "1") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(-1 < rl_point)" (( "(") (binary_expression "-1 < rl_point" (number_literal "-1") (< "<") (identifier "rl_point")) () ")")) (; ";")) (labeled_statement "LAB_000c6df0:\n  rl_point = 0;" (statement_identifier "LAB_000c6df0") (: ":") (expression_statement "rl_point = 0;" (assignment_expression "rl_point = 0" (identifier "rl_point") (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_000c6d68;" (goto "goto") (statement_identifier "LAB_000c6d68") (; ";")) (while_statement "while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" (while "while") (parenthesized_expression "((*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')))" (( "(") (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t'))" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' ' &&\n         (*(char *)(rl_line_buffer + rl_point) != '\t')" (binary_expression "*(char *)(rl_line_buffer + rl_point) != ' '" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "' '" (' "'") (character " ") (' "'"))) (&& "&&") (parenthesized_expression "(*(char *)(rl_line_buffer + rl_point) != '\t')" (( "(") (binary_expression "*(char *)(rl_line_buffer + rl_point) != '\t'" (pointer_expression "*(char *)(rl_line_buffer + rl_point)" (* "*") (cast_expression "(char *)(rl_line_buffer + rl_point)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(rl_line_buffer + rl_point)" (( "(") (binary_expression "rl_line_buffer + rl_point" (identifier "rl_line_buffer") (+ "+") (identifier "rl_point")) () ")")))) (!= "!=") (char_literal "'\t'" (' "'") (escape_sequence "\t") (' "'"))) () ")"))) () ")")) () ")")) (compound_statement "{\nLAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();\n    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }\n    if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }\n  }" ({ "{") (labeled_statement "LAB_000c6d9c:\n    sVar2 = __ctype_get_mb_cur_max();" (statement_identifier "LAB_000c6d9c") (: ":") (expression_statement "sVar2 = __ctype_get_mb_cur_max();" (assignment_expression "sVar2 = __ctype_get_mb_cur_max()" (identifier "sVar2") (= "=") (call_expression "__ctype_get_mb_cur_max()" (identifier "__ctype_get_mb_cur_max") (argument_list "()" (( "(") () ")")))) (; ";"))) (if_statement "if ((sVar2 == 1) || (rl_byte_oriented != 0)) {\n      rl_point = rl_point + -1;\n    }\n    else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" (if "if") (parenthesized_expression "((sVar2 == 1) || (rl_byte_oriented != 0))" (( "(") (binary_expression "(sVar2 == 1) || (rl_byte_oriented != 0)" (parenthesized_expression "(sVar2 == 1)" (( "(") (binary_expression "sVar2 == 1" (identifier "sVar2") (== "==") (number_literal "1")) () ")")) (|| "||") (parenthesized_expression "(rl_byte_oriented != 0)" (( "(") (binary_expression "rl_byte_oriented != 0" (identifier "rl_byte_oriented") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      rl_point = rl_point + -1;\n    }" ({ "{") (expression_statement "rl_point = rl_point + -1;" (assignment_expression "rl_point = rl_point + -1" (identifier "rl_point") (= "=") (binary_expression "rl_point + -1" (identifier "rl_point") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (else_clause "else {\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" (else "else") (compound_statement "{\n      rl_point = _rl_backward_char_internal(1);\n      if (rl_point < 0) goto LAB_000c6df0;\n    }" ({ "{") (expression_statement "rl_point = _rl_backward_char_internal(1);" (assignment_expression "rl_point = _rl_backward_char_internal(1)" (identifier "rl_point") (= "=") (call_expression "_rl_backward_char_internal(1)" (identifier "_rl_backward_char_internal") (argument_list "(1)" (( "(") (number_literal "1") () ")")))) (; ";")) (if_statement "if (rl_point < 0) goto LAB_000c6df0;" (if "if") (parenthesized_expression "(rl_point < 0)" (( "(") (binary_expression "rl_point < 0" (identifier "rl_point") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_000c6df0;" (goto "goto") (statement_identifier "LAB_000c6df0") (; ";"))) (} "}")))) (if_statement "if (rl_point < 1) {\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" (if "if") (parenthesized_expression "(rl_point < 1)" (( "(") (binary_expression "rl_point < 1" (identifier "rl_point") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n      if (rl_point == 0) goto LAB_000c6d68;\n      goto LAB_000c6df0;\n    }" ({ "{") (if_statement "if (rl_point == 0) goto LAB_000c6d68;" (if "if") (parenthesized_expression "(rl_point == 0)" (( "(") (binary_expression "rl_point == 0" (identifier "rl_point") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000c6d68;" (goto "goto") (statement_identifier "LAB_000c6d68") (; ";"))) (goto_statement "goto LAB_000c6df0;" (goto "goto") (statement_identifier "LAB_000c6df0") (; ";")) (} "}"))) (} "}"))) (expression_statement "rl_point = rl_point + 1;" (assignment_expression "rl_point = rl_point + 1" (identifier "rl_point") (= "=") (binary_expression "rl_point + 1" (identifier "rl_point") (+ "+") (number_literal "1"))) (; ";")) (labeled_statement "LAB_000c6d68:\n  local_24 = local_24 + -1;" (statement_identifier "LAB_000c6d68") (: ":") (expression_statement "local_24 = local_24 + -1;" (assignment_expression "local_24 = local_24 + -1" (identifier "local_24") (= "=") (binary_expression "local_24 + -1" (identifier "local_24") (+ "+") (number_literal "-1"))) (; ";"))) (if_statement "if (local_24 == 0) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(local_24 == 0)" (( "(") (binary_expression "local_24 == 0" (identifier "local_24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (goto_statement "goto LAB_000c6cf0;" (goto "goto") (statement_identifier "LAB_000c6cf0") (; ";")) (} "}")))

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

int function_1(int var_1,int ignore)

{
  size_t var_4;
  int var_7;
  
  var_7 = var_1;
  if (var_1 == 0) {
    return 0;
  }
LAB_000c6cf0:
  if (var_2 < 1) {
    return 0;
  }
  if (((rl_line_buffer[var_2] != ' ') && (rl_line_buffer[var_2] != '\t')) &&
     ((rl_line_buffer[var_2 + -1] == ' ' || (rl_line_buffer[var_2 + -1] == '\t')))) {
    var_2 = var_2 + -1;
  }
  do {
    while( true ) {
      if (var_2 < 1) goto LAB_000c6d68;
      if ((rl_line_buffer[var_2] != ' ') && (rl_line_buffer[var_2] != '\t'))
      goto LAB_000c6d9c;
      var_4 = var_3();
      if ((var_4 != 1) && (var_5 == 0)) break;
      var_2 = var_2 + -1;
    }
    var_2 = var_6(1);
  } while (-1 < var_2);
LAB_000c6df0:
  var_2 = 0;
  goto LAB_000c6d68;
  while ((rl_line_buffer[var_2] != ' ' && (rl_line_buffer[var_2] != '\t'))) {
LAB_000c6d9c:
    var_4 = var_3();
    if ((var_4 == 1) || (var_5 != 0)) {
      var_2 = var_2 + -1;
    }
    else {
      var_2 = var_6(1);
      if (var_2 < 0) goto LAB_000c6df0;
    }
    if (var_2 < 1) {
      if (var_2 == 0) goto LAB_000c6d68;
      goto LAB_000c6df0;
    }
  }
  var_2 = var_2 + 1;
LAB_000c6d68:
  var_7 = var_7 + -1;
  if (var_7 == 0) {
    return 0;
  }
  goto LAB_000c6cf0;
}


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

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

undefined4 MASKED(int param_1)

{
  char cVar1;
  size_t sVar2;
  int local_24;
  
  local_24 = param_1;
  if (param_1 == 0) {
    return 0;
  }
LAB_000c6cf0:
  if (rl_point < 1) {
    return 0;
  }
  if (((*(char *)(rl_line_buffer + rl_point) != ' ') &&
      (*(char *)(rl_line_buffer + rl_point) != '\t')) &&
     ((cVar1 = *(char *)(rl_line_buffer + -1 + rl_point), cVar1 == ' ' || (cVar1 == '\t')))) {
    rl_point = rl_point + -1;
  }
  do {
    while( true ) {
      if (rl_point < 1) goto LAB_000c6d68;
      if ((*(char *)(rl_line_buffer + rl_point) != ' ') &&
         (*(char *)(rl_line_buffer + rl_point) != '\t')) goto LAB_000c6d9c;
      sVar2 = __ctype_get_mb_cur_max();
      if ((sVar2 != 1) && (rl_byte_oriented == 0)) break;
      rl_point = rl_point + -1;
    }
    rl_point = _rl_backward_char_internal(1);
  } while (-1 < rl_point);
LAB_000c6df0:
  rl_point = 0;
  goto LAB_000c6d68;
  while ((*(char *)(rl_line_buffer + rl_point) != ' ' &&
         (*(char *)(rl_line_buffer + rl_point) != '\t'))) {
LAB_000c6d9c:
    sVar2 = __ctype_get_mb_cur_max();
    if ((sVar2 == 1) || (rl_byte_oriented != 0)) {
      rl_point = rl_point + -1;
    }
    else {
      rl_point = _rl_backward_char_internal(1);
      if (rl_point < 0) goto LAB_000c6df0;
    }
    if (rl_point < 1) {
      if (rl_point == 0) goto LAB_000c6d68;
      goto LAB_000c6df0;
    }
  }
  rl_point = rl_point + 1;
LAB_000c6d68:
  local_24 = local_24 + -1;
  if (local_24 == 0) {
    return 0;
  }
  goto LAB_000c6cf0;
}

