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

int xdmseen_cmp(void *a,void *b)

{
  int iVar1;
  
  iVar1 = 1;
                    /* WARNING: Load size is inaccurate */
                    /* WARNING: Load size is inaccurate */
  if (*a <= *b) {
    if (*a == *b) {
      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);
    }
    else {
      iVar1 = -1;
    }
  }
  return iVar1;
}



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

int FUN_0006bdd0(uint *param_1,uint *param_2)

{
  int iVar1;
  
  iVar1 = 1;
  if (*param_1 <= *param_2) {
    if (*param_1 == *param_2) {
      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);
    }
    else {
      iVar1 = -1;
    }
  }
  return iVar1;
}


PUSH ESI
MOV EAX,0x1
PUSH EBX
CALL 0x00015fa0
ADD EBX,0x38f94
SUB ESP,0x4
MOV ECX,dword ptr [ESP + 0x14]
MOV EDX,dword ptr [ESP + 0x10]
MOV ESI,dword ptr [ECX]
CMP dword ptr [EDX],ESI
JA 0x0006be0a
JNZ 0x0006be10
SUB ESP,0x4
ADD ECX,0x4
ADD EDX,0x4
PUSH 0x6
PUSH ECX
PUSH EDX
CALL 0x000141c0
ADD ESP,0x10
ADD ESP,0x4
POP EBX
POP ESI
RET
MOV EAX,0xffffffff
JMP 0x0006be0a
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nint FUN_0006bdd0(uint *param_1,uint *param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}\n\n" comment (function_definition "int FUN_0006bdd0(uint *param_1,uint *param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" primitive_type (function_declarator "FUN_0006bdd0(uint *param_1,uint *param_2)" identifier (parameter_list "(uint *param_1,uint *param_2)" ( (parameter_declaration "uint *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "uint *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" identifier = number_literal) ;) (if_statement "if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" if (parenthesized_expression "(*param_1 <= *param_2)" ( (binary_expression "*param_1 <= *param_2" (pointer_expression "*param_1" * identifier) <= (pointer_expression "*param_2" * identifier)) )) (compound_statement "{\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" { (if_statement "if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }" if (parenthesized_expression "(*param_1 == *param_2)" ( (binary_expression "*param_1 == *param_2" (pointer_expression "*param_1" * identifier) == (pointer_expression "*param_2" * identifier)) )) (compound_statement "{\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }" { (expression_statement "iVar1 = memcmp(param_1 + 1,param_2 + 1,6);" (assignment_expression "iVar1 = memcmp(param_1 + 1,param_2 + 1,6)" identifier = (call_expression "memcmp(param_1 + 1,param_2 + 1,6)" identifier (argument_list "(param_1 + 1,param_2 + 1,6)" ( (binary_expression "param_1 + 1" identifier + number_literal) , (binary_expression "param_2 + 1" identifier + number_literal) , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = -1;\n    }" else (compound_statement "{\n      iVar1 = -1;\n    }" { (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" identifier = number_literal) ;) }))) })) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nint xdmseen_cmp(void *a,void *b)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n                    /* WARNING: Load size is inaccurate */\n                    /* WARNING: Load size is inaccurate */\n  if (*a <= *b) {\n    if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}\n\n" comment comment (function_definition "int xdmseen_cmp(void *a,void *b)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n                    /* WARNING: Load size is inaccurate */\n                    /* WARNING: Load size is inaccurate */\n  if (*a <= *b) {\n    if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" primitive_type (function_declarator "xdmseen_cmp(void *a,void *b)" identifier (parameter_list "(void *a,void *b)" ( (parameter_declaration "void *a" primitive_type (pointer_declarator "*a" * identifier)) , (parameter_declaration "void *b" primitive_type (pointer_declarator "*b" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = 1;\n                    /* WARNING: Load size is inaccurate */\n                    /* WARNING: Load size is inaccurate */\n  if (*a <= *b) {\n    if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" identifier = number_literal) ;) comment comment (if_statement "if (*a <= *b) {\n    if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" if (parenthesized_expression "(*a <= *b)" ( (binary_expression "*a <= *b" (pointer_expression "*a" * identifier) <= (pointer_expression "*b" * identifier)) )) (compound_statement "{\n    if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" { (if_statement "if (*a == *b) {\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }\n    else {\n      iVar1 = -1;\n    }" if (parenthesized_expression "(*a == *b)" ( (binary_expression "*a == *b" (pointer_expression "*a" * identifier) == (pointer_expression "*b" * identifier)) )) (compound_statement "{\n      iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);\n    }" { (expression_statement "iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6);" (assignment_expression "iVar1 = memcmp((void *)((int)a + 4),(void *)((int)b + 4),6)" identifier = (call_expression "memcmp((void *)((int)a + 4),(void *)((int)b + 4),6)" identifier (argument_list "((void *)((int)a + 4),(void *)((int)b + 4),6)" ( (cast_expression "(void *)((int)a + 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)a + 4)" ( (binary_expression "(int)a + 4" (cast_expression "(int)a" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) , (cast_expression "(void *)((int)b + 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)b + 4)" ( (binary_expression "(int)b + 4" (cast_expression "(int)b" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = -1;\n    }" else (compound_statement "{\n      iVar1 = -1;\n    }" { (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" identifier = number_literal) ;) }))) })) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit "int FUN_0006bdd0(uint *param_1,uint *param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}\n\n" (function_definition "int FUN_0006bdd0(uint *param_1,uint *param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" primitive_type (function_declarator "FUN_0006bdd0(uint *param_1,uint *param_2)" identifier (parameter_list "(uint *param_1,uint *param_2)" ( (parameter_declaration "uint *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "uint *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" identifier = number_literal) ;) (if_statement "if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" if (parenthesized_expression "(*param_1 <= *param_2)" ( (binary_expression "*param_1 <= *param_2" (pointer_expression "*param_1" * identifier) <= (pointer_expression "*param_2" * identifier)) )) (compound_statement "{\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" { (if_statement "if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }" if (parenthesized_expression "(*param_1 == *param_2)" ( (binary_expression "*param_1 == *param_2" (pointer_expression "*param_1" * identifier) == (pointer_expression "*param_2" * identifier)) )) (compound_statement "{\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }" { (expression_statement "iVar1 = memcmp(param_1 + 1,param_2 + 1,6);" (assignment_expression "iVar1 = memcmp(param_1 + 1,param_2 + 1,6)" identifier = (call_expression "memcmp(param_1 + 1,param_2 + 1,6)" identifier (argument_list "(param_1 + 1,param_2 + 1,6)" ( (binary_expression "param_1 + 1" identifier + number_literal) , (binary_expression "param_2 + 1" identifier + number_literal) , number_literal )))) ;) }) (else_clause "else {\n      iVar1 = -1;\n    }" else (compound_statement "{\n      iVar1 = -1;\n    }" { (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" identifier = number_literal) ;) }))) })) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) <= (pointer_expression * IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) })) (return_statement return IDENT ;) })))
(function_definition "int FUN_0006bdd0(uint *param_1,uint *param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" (primitive_type "int") (function_declarator "FUN_0006bdd0(uint *param_1,uint *param_2)" (identifier "FUN_0006bdd0") (parameter_list "(uint *param_1,uint *param_2)" (( "(") (parameter_declaration "uint *param_1" (type_identifier "uint") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "uint *param_2" (type_identifier "uint") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = 1;\n  if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }\n  return iVar1;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (expression_statement "iVar1 = 1;" (assignment_expression "iVar1 = 1" (identifier "iVar1") (= "=") (number_literal "1")) (; ";")) (if_statement "if (*param_1 <= *param_2) {\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" (if "if") (parenthesized_expression "(*param_1 <= *param_2)" (( "(") (binary_expression "*param_1 <= *param_2" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (<= "<=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) () ")")) (compound_statement "{\n    if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }\n  }" ({ "{") (if_statement "if (*param_1 == *param_2) {\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }\n    else {\n      iVar1 = -1;\n    }" (if "if") (parenthesized_expression "(*param_1 == *param_2)" (( "(") (binary_expression "*param_1 == *param_2" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) () ")")) (compound_statement "{\n      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);\n    }" ({ "{") (expression_statement "iVar1 = memcmp(param_1 + 1,param_2 + 1,6);" (assignment_expression "iVar1 = memcmp(param_1 + 1,param_2 + 1,6)" (identifier "iVar1") (= "=") (call_expression "memcmp(param_1 + 1,param_2 + 1,6)" (identifier "memcmp") (argument_list "(param_1 + 1,param_2 + 1,6)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) (, ",") (binary_expression "param_2 + 1" (identifier "param_2") (+ "+") (number_literal "1")) (, ",") (number_literal "6") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      iVar1 = -1;\n    }" (else "else") (compound_statement "{\n      iVar1 = -1;\n    }" ({ "{") (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" (identifier "iVar1") (= "=") (number_literal "-1")) (; ";")) (} "}")))) (} "}"))) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}")))

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

int function_1(void *a,void *b)

{
  int iVar1;
  
  iVar1 = 1;
                    /* WARNING: Load size is inaccurate */
                    /* WARNING: Load size is inaccurate */
  if (*a <= *b) {
    if (*a == *b) {
      iVar1 = var_1((void *)((int)a + 4),(void *)((int)b + 4),6);
    }
    else {
      iVar1 = -1;
    }
  }
  return iVar1;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) (return_statement (identifier)))))

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

int MASKED(uint *param_1,uint *param_2)

{
  int iVar1;
  
  iVar1 = 1;
  if (*param_1 <= *param_2) {
    if (*param_1 == *param_2) {
      iVar1 = memcmp(param_1 + 1,param_2 + 1,6);
    }
    else {
      iVar1 = -1;
    }
  }
  return iVar1;
}

