
void des3_key(void *handle,uchar *key)

{
  des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,
                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,
                (DESContext *)handle);
  des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,
                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |
                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88));
  des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |
                (uint)key[0x12] << 8,
                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |
                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110));
  return;
}



void FUN_0011dd2b(long param_1,byte *param_2)

{
  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |
               (uint)param_2[2] << 8,
               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |
               (uint)param_2[6] << 8,param_1);
  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |
               (uint)param_2[10] << 8,
               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |
               (uint)param_2[0xe] << 8,param_1 + 0x88);
  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |
               (uint)param_2[0x12] << 8,
               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |
               (uint)param_2[0x16] << 8,param_1 + 0x110);
  return;
}


PUSH RBP
PUSH RBX
SUB RSP,0x8
MOV RBP,RDI
MOV RBX,RSI
MOVZX ESI,byte ptr [RSI + 0x4]
SHL ESI,0x18
MOVZX EAX,byte ptr [RBX + 0x5]
SHL EAX,0x10
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0x7]
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0x6]
SHL EAX,0x8
OR ESI,EAX
MOVZX EDI,byte ptr [RBX]
SHL EDI,0x18
MOVZX EAX,byte ptr [RBX + 0x1]
SHL EAX,0x10
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0x3]
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0x2]
SHL EAX,0x8
OR EDI,EAX
MOV RDX,RBP
CALL 0x0011c772
LEA RDX,[RBP + 0x88]
MOVZX ESI,byte ptr [RBX + 0xc]
SHL ESI,0x18
MOVZX EAX,byte ptr [RBX + 0xd]
SHL EAX,0x10
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0xf]
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0xe]
SHL EAX,0x8
OR ESI,EAX
MOVZX EDI,byte ptr [RBX + 0x8]
SHL EDI,0x18
MOVZX EAX,byte ptr [RBX + 0x9]
SHL EAX,0x10
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0xb]
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0xa]
SHL EAX,0x8
OR EDI,EAX
CALL 0x0011c772
LEA RDX,[RBP + 0x110]
MOVZX ESI,byte ptr [RBX + 0x14]
SHL ESI,0x18
MOVZX EAX,byte ptr [RBX + 0x15]
SHL EAX,0x10
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0x17]
OR ESI,EAX
MOVZX EAX,byte ptr [RBX + 0x16]
SHL EAX,0x8
OR ESI,EAX
MOVZX EDI,byte ptr [RBX + 0x10]
SHL EDI,0x18
MOVZX EAX,byte ptr [RBX + 0x11]
SHL EAX,0x10
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0x13]
OR EDI,EAX
MOVZX EAX,byte ptr [RBX + 0x12]
SHL EAX,0x8
OR EDI,EAX
CALL 0x0011c772
ADD RSP,0x8
POP RBX
POP RBP
RET
(translation_unit "void FUN_0011dd2b(long param_1,byte *param_2)\n\n{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}\n\n" (function_definition "void FUN_0011dd2b(long param_1,byte *param_2)\n\n{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" primitive_type (function_declarator "FUN_0011dd2b(long param_1,byte *param_2)" identifier (parameter_list "(long param_1,byte *param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" { (expression_statement "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);" (call_expression "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" identifier (argument_list "((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" ( (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3]" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10" (binary_expression "(uint)*param_2 << 0x18" (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" ( identifier )) * identifier) << number_literal) | (binary_expression "(uint)param_2[1] << 0x10" (cast_expression "(uint)param_2[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[1]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[3]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[3]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[2] << 8" (cast_expression "(uint)param_2[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[2]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7]" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10" (binary_expression "(uint)param_2[4] << 0x18" (cast_expression "(uint)param_2[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[5] << 0x10" (cast_expression "(uint)param_2[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[7]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[7]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[6] << 8" (cast_expression "(uint)param_2[6]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) << number_literal)) , identifier ))) ;) (expression_statement "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);" (call_expression "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" identifier (argument_list "((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" ( (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb]" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10" (binary_expression "(uint)param_2[8] << 0x18" (cast_expression "(uint)param_2[8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[8]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[9] << 0x10" (cast_expression "(uint)param_2[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[9]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xb]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[10] << 8" (cast_expression "(uint)param_2[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[10]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf]" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10" (binary_expression "(uint)param_2[0xc] << 0x18" (cast_expression "(uint)param_2[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xc]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0xd] << 0x10" (cast_expression "(uint)param_2[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xd]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0xf]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xf]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0xe] << 8" (cast_expression "(uint)param_2[0xe]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xe]" identifier [ number_literal ])) << number_literal)) , (binary_expression "param_1 + 0x88" identifier + number_literal) ))) ;) (expression_statement "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);" (call_expression "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" identifier (argument_list "((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" ( (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13]" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10" (binary_expression "(uint)param_2[0x10] << 0x18" (cast_expression "(uint)param_2[0x10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x10]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0x11] << 0x10" (cast_expression "(uint)param_2[0x11]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x11]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0x13]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x13]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0x12] << 8" (cast_expression "(uint)param_2[0x12]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x12]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17]" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10" (binary_expression "(uint)param_2[0x14] << 0x18" (cast_expression "(uint)param_2[0x14]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x14]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0x15] << 0x10" (cast_expression "(uint)param_2[0x15]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x15]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0x17]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x17]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0x16] << 8" (cast_expression "(uint)param_2[0x16]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x16]" identifier [ number_literal ])) << number_literal)) , (binary_expression "param_1 + 0x110" identifier + number_literal) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void des3_key(void *handle,uchar *key)\n\n{\n  des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle);\n  des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88));\n  des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110));\n  return;\n}\n\n" (function_definition "void des3_key(void *handle,uchar *key)\n\n{\n  des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle);\n  des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88));\n  des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110));\n  return;\n}" primitive_type (function_declarator "des3_key(void *handle,uchar *key)" identifier (parameter_list "(void *handle,uchar *key)" ( (parameter_declaration "void *handle" primitive_type (pointer_declarator "*handle" * identifier)) , (parameter_declaration "uchar *key" type_identifier (pointer_declarator "*key" * identifier)) ))) (compound_statement "{\n  des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle);\n  des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88));\n  des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110));\n  return;\n}" { (expression_statement "des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle);" (call_expression "des_key_setup((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle)" identifier (argument_list "((uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8,\n                (uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8,\n                (DESContext *)handle)" ( (binary_expression "(uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3] | (uint)key[2] << 8" (binary_expression "(uint)*key << 0x18 | (uint)key[1] << 0x10 | (uint)key[3]" (binary_expression "(uint)*key << 0x18 | (uint)key[1] << 0x10" (binary_expression "(uint)*key << 0x18" (binary_expression "(uint)*key" (parenthesized_expression "(uint)" ( identifier )) * identifier) << number_literal) | (binary_expression "(uint)key[1] << 0x10" (cast_expression "(uint)key[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[1]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[3]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[3]" identifier [ number_literal ]))) | (binary_expression "(uint)key[2] << 8" (cast_expression "(uint)key[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[2]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7] | (uint)key[6] << 8" (binary_expression "(uint)key[4] << 0x18 | (uint)key[5] << 0x10 | (uint)key[7]" (binary_expression "(uint)key[4] << 0x18 | (uint)key[5] << 0x10" (binary_expression "(uint)key[4] << 0x18" (cast_expression "(uint)key[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[4]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)key[5] << 0x10" (cast_expression "(uint)key[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[5]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[7]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[7]" identifier [ number_literal ]))) | (binary_expression "(uint)key[6] << 8" (cast_expression "(uint)key[6]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[6]" identifier [ number_literal ])) << number_literal)) , (cast_expression "(DESContext *)handle" ( (type_descriptor "DESContext *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88));" (call_expression "des_key_setup((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88))" identifier (argument_list "((uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8,\n                (uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8,(DESContext *)((long)handle + 0x88))" ( (binary_expression "(uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb] | (uint)key[10] << 8" (binary_expression "(uint)key[8] << 0x18 | (uint)key[9] << 0x10 | (uint)key[0xb]" (binary_expression "(uint)key[8] << 0x18 | (uint)key[9] << 0x10" (binary_expression "(uint)key[8] << 0x18" (cast_expression "(uint)key[8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[8]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)key[9] << 0x10" (cast_expression "(uint)key[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[9]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0xb]" identifier [ number_literal ]))) | (binary_expression "(uint)key[10] << 8" (cast_expression "(uint)key[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[10]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf] |\n                (uint)key[0xe] << 8" (binary_expression "(uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10 | (uint)key[0xf]" (binary_expression "(uint)key[0xc] << 0x18 | (uint)key[0xd] << 0x10" (binary_expression "(uint)key[0xc] << 0x18" (cast_expression "(uint)key[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0xc]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)key[0xd] << 0x10" (cast_expression "(uint)key[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0xd]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[0xf]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0xf]" identifier [ number_literal ]))) | (binary_expression "(uint)key[0xe] << 8" (cast_expression "(uint)key[0xe]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0xe]" identifier [ number_literal ])) << number_literal)) , (cast_expression "(DESContext *)((long)handle + 0x88)" ( (type_descriptor "DESContext *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)handle + 0x88)" ( (binary_expression "(long)handle + 0x88" (cast_expression "(long)handle" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))) ))) ;) (expression_statement "des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110));" (call_expression "des_key_setup((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110))" identifier (argument_list "((uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8,\n                (uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8,(DESContext *)((long)handle + 0x110))" ( (binary_expression "(uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13] |\n                (uint)key[0x12] << 8" (binary_expression "(uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10 | (uint)key[0x13]" (binary_expression "(uint)key[0x10] << 0x18 | (uint)key[0x11] << 0x10" (binary_expression "(uint)key[0x10] << 0x18" (cast_expression "(uint)key[0x10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x10]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)key[0x11] << 0x10" (cast_expression "(uint)key[0x11]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x11]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[0x13]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x13]" identifier [ number_literal ]))) | (binary_expression "(uint)key[0x12] << 8" (cast_expression "(uint)key[0x12]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x12]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17] |\n                (uint)key[0x16] << 8" (binary_expression "(uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10 | (uint)key[0x17]" (binary_expression "(uint)key[0x14] << 0x18 | (uint)key[0x15] << 0x10" (binary_expression "(uint)key[0x14] << 0x18" (cast_expression "(uint)key[0x14]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x14]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)key[0x15] << 0x10" (cast_expression "(uint)key[0x15]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x15]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)key[0x17]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x17]" identifier [ number_literal ]))) | (binary_expression "(uint)key[0x16] << 8" (cast_expression "(uint)key[0x16]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "key[0x16]" identifier [ number_literal ])) << number_literal)) , (cast_expression "(DESContext *)((long)handle + 0x110)" ( (type_descriptor "DESContext *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)handle + 0x110)" ( (binary_expression "(long)handle + 0x110" (cast_expression "(long)handle" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_0011dd2b(long param_1,byte *param_2)\n\n{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}\n\n" (function_definition "void FUN_0011dd2b(long param_1,byte *param_2)\n\n{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" primitive_type (function_declarator "FUN_0011dd2b(long param_1,byte *param_2)" identifier (parameter_list "(long param_1,byte *param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" { (expression_statement "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);" (call_expression "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" identifier (argument_list "((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" ( (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3]" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10" (binary_expression "(uint)*param_2 << 0x18" (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" ( identifier )) * identifier) << number_literal) | (binary_expression "(uint)param_2[1] << 0x10" (cast_expression "(uint)param_2[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[1]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[3]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[3]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[2] << 8" (cast_expression "(uint)param_2[2]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[2]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7]" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10" (binary_expression "(uint)param_2[4] << 0x18" (cast_expression "(uint)param_2[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[5] << 0x10" (cast_expression "(uint)param_2[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[7]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[7]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[6] << 8" (cast_expression "(uint)param_2[6]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) << number_literal)) , identifier ))) ;) (expression_statement "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);" (call_expression "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" identifier (argument_list "((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" ( (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb]" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10" (binary_expression "(uint)param_2[8] << 0x18" (cast_expression "(uint)param_2[8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[8]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[9] << 0x10" (cast_expression "(uint)param_2[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[9]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0xb]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xb]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[10] << 8" (cast_expression "(uint)param_2[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[10]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf]" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10" (binary_expression "(uint)param_2[0xc] << 0x18" (cast_expression "(uint)param_2[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xc]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0xd] << 0x10" (cast_expression "(uint)param_2[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xd]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0xf]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xf]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0xe] << 8" (cast_expression "(uint)param_2[0xe]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0xe]" identifier [ number_literal ])) << number_literal)) , (binary_expression "param_1 + 0x88" identifier + number_literal) ))) ;) (expression_statement "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);" (call_expression "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" identifier (argument_list "((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" ( (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13]" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10" (binary_expression "(uint)param_2[0x10] << 0x18" (cast_expression "(uint)param_2[0x10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x10]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0x11] << 0x10" (cast_expression "(uint)param_2[0x11]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x11]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0x13]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x13]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0x12] << 8" (cast_expression "(uint)param_2[0x12]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x12]" identifier [ number_literal ])) << number_literal)) , (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17]" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10" (binary_expression "(uint)param_2[0x14] << 0x18" (cast_expression "(uint)param_2[0x14]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x14]" identifier [ number_literal ])) << number_literal) | (binary_expression "(uint)param_2[0x15] << 0x10" (cast_expression "(uint)param_2[0x15]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x15]" identifier [ number_literal ])) << number_literal)) | (cast_expression "(uint)param_2[0x17]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x17]" identifier [ number_literal ]))) | (binary_expression "(uint)param_2[0x16] << 8" (cast_expression "(uint)param_2[0x16]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_2[0x16]" identifier [ number_literal ])) << number_literal)) , (binary_expression "param_1 + 0x110" identifier + number_literal) ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , (binary_expression (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) | (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) << LIT)) , (binary_expression IDENT + LIT) ))) ;) (return_statement return ;) })))
(function_definition "void FUN_0011dd2b(long param_1,byte *param_2)\n\n{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_0011dd2b(long param_1,byte *param_2)" (identifier "FUN_0011dd2b") (parameter_list "(long param_1,byte *param_2)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) (, ",") (parameter_declaration "byte *param_2" (type_identifier "byte") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);\n  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);\n  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);\n  return;\n}" ({ "{") (expression_statement "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1);" (call_expression "FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" (identifier "FUN_0011c772") (argument_list "((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8,\n               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8,param_1)" (( "(") (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |\n               (uint)param_2[2] << 8" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3]" (binary_expression "(uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10" (binary_expression "(uint)*param_2 << 0x18" (binary_expression "(uint)*param_2" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_2")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[1] << 0x10" (cast_expression "(uint)param_2[1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[3]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[3]" (identifier "param_2") ([ "[") (number_literal "3") (] "]")))) (| "|") (binary_expression "(uint)param_2[2] << 8" (cast_expression "(uint)param_2[2]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[2]" (identifier "param_2") ([ "[") (number_literal "2") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |\n               (uint)param_2[6] << 8" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7]" (binary_expression "(uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10" (binary_expression "(uint)param_2[4] << 0x18" (cast_expression "(uint)param_2[4]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[4]" (identifier "param_2") ([ "[") (number_literal "4") (] "]"))) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[5] << 0x10" (cast_expression "(uint)param_2[5]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[5]" (identifier "param_2") ([ "[") (number_literal "5") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[7]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[7]" (identifier "param_2") ([ "[") (number_literal "7") (] "]")))) (| "|") (binary_expression "(uint)param_2[6] << 8" (cast_expression "(uint)param_2[6]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[6]" (identifier "param_2") ([ "[") (number_literal "6") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88);" (call_expression "FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" (identifier "FUN_0011c772") (argument_list "((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8,\n               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8,param_1 + 0x88)" (( "(") (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |\n               (uint)param_2[10] << 8" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb]" (binary_expression "(uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10" (binary_expression "(uint)param_2[8] << 0x18" (cast_expression "(uint)param_2[8]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[8]" (identifier "param_2") ([ "[") (number_literal "8") (] "]"))) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[9] << 0x10" (cast_expression "(uint)param_2[9]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[9]" (identifier "param_2") ([ "[") (number_literal "9") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[0xb]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0xb]" (identifier "param_2") ([ "[") (number_literal "0xb") (] "]")))) (| "|") (binary_expression "(uint)param_2[10] << 8" (cast_expression "(uint)param_2[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[10]" (identifier "param_2") ([ "[") (number_literal "10") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |\n               (uint)param_2[0xe] << 8" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf]" (binary_expression "(uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10" (binary_expression "(uint)param_2[0xc] << 0x18" (cast_expression "(uint)param_2[0xc]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0xc]" (identifier "param_2") ([ "[") (number_literal "0xc") (] "]"))) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[0xd] << 0x10" (cast_expression "(uint)param_2[0xd]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0xd]" (identifier "param_2") ([ "[") (number_literal "0xd") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[0xf]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0xf]" (identifier "param_2") ([ "[") (number_literal "0xf") (] "]")))) (| "|") (binary_expression "(uint)param_2[0xe] << 8" (cast_expression "(uint)param_2[0xe]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0xe]" (identifier "param_2") ([ "[") (number_literal "0xe") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))) (; ";")) (expression_statement "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110);" (call_expression "FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" (identifier "FUN_0011c772") (argument_list "((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8,\n               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8,param_1 + 0x110)" (( "(") (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |\n               (uint)param_2[0x12] << 8" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13]" (binary_expression "(uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10" (binary_expression "(uint)param_2[0x10] << 0x18" (cast_expression "(uint)param_2[0x10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x10]" (identifier "param_2") ([ "[") (number_literal "0x10") (] "]"))) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[0x11] << 0x10" (cast_expression "(uint)param_2[0x11]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x11]" (identifier "param_2") ([ "[") (number_literal "0x11") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[0x13]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x13]" (identifier "param_2") ([ "[") (number_literal "0x13") (] "]")))) (| "|") (binary_expression "(uint)param_2[0x12] << 8" (cast_expression "(uint)param_2[0x12]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x12]" (identifier "param_2") ([ "[") (number_literal "0x12") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |\n               (uint)param_2[0x16] << 8" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17]" (binary_expression "(uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10" (binary_expression "(uint)param_2[0x14] << 0x18" (cast_expression "(uint)param_2[0x14]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x14]" (identifier "param_2") ([ "[") (number_literal "0x14") (] "]"))) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uint)param_2[0x15] << 0x10" (cast_expression "(uint)param_2[0x15]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x15]" (identifier "param_2") ([ "[") (number_literal "0x15") (] "]"))) (<< "<<") (number_literal "0x10"))) (| "|") (cast_expression "(uint)param_2[0x17]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x17]" (identifier "param_2") ([ "[") (number_literal "0x17") (] "]")))) (| "|") (binary_expression "(uint)param_2[0x16] << 8" (cast_expression "(uint)param_2[0x16]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_2[0x16]" (identifier "param_2") ([ "[") (number_literal "0x16") (] "]"))) (<< "<<") (number_literal "8"))) (, ",") (binary_expression "param_1 + 0x110" (identifier "param_1") (+ "+") (number_literal "0x110")) () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(void *handle,type_1 *var_2)

{
  var_1((type_2)*var_2 << 0x18 | (type_2)var_2[1] << 0x10 | (type_2)var_2[3] | (type_2)var_2[2] << 8,
                (type_2)var_2[4] << 0x18 | (type_2)var_2[5] << 0x10 | (type_2)var_2[7] | (type_2)var_2[6] << 8,
                (type_3 *)handle);
  var_1((type_2)var_2[8] << 0x18 | (type_2)var_2[9] << 0x10 | (type_2)var_2[0xb] | (type_2)var_2[10] << 8,
                (type_2)var_2[0xc] << 0x18 | (type_2)var_2[0xd] << 0x10 | (type_2)var_2[0xf] |
                (type_2)var_2[0xe] << 8,(type_3 *)((long)handle + 0x88));
  var_1((type_2)var_2[0x10] << 0x18 | (type_2)var_2[0x11] << 0x10 | (type_2)var_2[0x13] |
                (type_2)var_2[0x12] << 8,
                (type_2)var_2[0x14] << 0x18 | (type_2)var_2[0x15] << 0x10 | (type_2)var_2[0x17] |
                (type_2)var_2[0x16] << 8,(type_3 *)((long)handle + 0x110));
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) (binary_expression left: (identifier) right: (number_literal))))) (return_statement))))

void MASKED(long param_1,byte *param_2)

{
  FUN_0011c772((uint)*param_2 << 0x18 | (uint)param_2[1] << 0x10 | (uint)param_2[3] |
               (uint)param_2[2] << 8,
               (uint)param_2[4] << 0x18 | (uint)param_2[5] << 0x10 | (uint)param_2[7] |
               (uint)param_2[6] << 8,param_1);
  FUN_0011c772((uint)param_2[8] << 0x18 | (uint)param_2[9] << 0x10 | (uint)param_2[0xb] |
               (uint)param_2[10] << 8,
               (uint)param_2[0xc] << 0x18 | (uint)param_2[0xd] << 0x10 | (uint)param_2[0xf] |
               (uint)param_2[0xe] << 8,param_1 + 0x88);
  FUN_0011c772((uint)param_2[0x10] << 0x18 | (uint)param_2[0x11] << 0x10 | (uint)param_2[0x13] |
               (uint)param_2[0x12] << 8,
               (uint)param_2[0x14] << 0x18 | (uint)param_2[0x15] << 0x10 | (uint)param_2[0x17] |
               (uint)param_2[0x16] << 8,param_1 + 0x110);
  return;
}

