Explore
/
Sign In
/
Unknown
Unknown
Fork
Star
Artifacts
binary
binary_decompiled.c
0 lines
|
1.14 MB
#include "types-and-globals.h" #include "helpers.h" _ABI(SystemV_x86) _Noreturn void function_0x8048000_Code_x86(void) { } _ABI(SystemV_x86) _Noreturn void function_0x8048034_Code_x86(void) { } _ABI(SystemV_x86) _Noreturn void function_0x804809c_Code_x86(void) { } _ABI(SystemV_x86) _Noreturn void function_0x80480c9_Code_x86(void) { generic32_t var_0; generic32_t var_1; generic32_t var_2; generic32_t var_3; generic32_t var_4; generic32_t var_5; generic32_t var_6; generic32_t var_7; generic32_t var_8; generic32_t var_9; generic32_t var_10; generic32_t var_11; generic32_t var_12; generic32_t var_13; generic32_t var_14; generic32_t var_15; generic32_t var_16; generic32_t var_17; generic32_t var_18; generic32_t var_19; generic32_t var_20; generic32_t var_21; generic32_t var_22; generic32_t var_23; generic32_t var_24; generic32_t var_25; generic32_t var_26; generic32_t var_27; generic32_t var_28; generic32_t var_29; generic32_t var_30; generic32_t var_31; generic32_t var_32; generic32_t var_33; generic32_t var_34; generic32_t var_35; generic32_t var_36; generic32_t var_37; generic32_t var_38; generic32_t var_39; generic32_t var_40; generic32_t var_41; generic32_t var_42; generic32_t var_43; generic32_t var_44; generic32_t var_45; generic8_t var_46; generic32_t var_47; generic32_t var_48; generic32_t var_49; generic32_t var_50; generic32_t var_51; generic32_t var_52; generic32_t var_53; generic32_t var_54; generic32_t var_55; generic32_t var_56; generic32_t var_57; generic32_t var_58; generic32_t var_59; generic32_t var_60; generic32_t var_61; generic32_t var_62; generic32_t var_63; generic32_t var_64; generic32_t var_65; generic32_t var_66; generic32_t var_67; generic32_t var_68; generic32_t var_69; generic32_t var_70; generic32_t var_71; generic32_t var_72; generic32_t var_73; generic32_t var_74; generic32_t var_75; generic32_t var_76; generic32_t var_77; generic32_t var_78; generic32_t var_79; generic32_t var_80; generic32_t var_81; generic32_t var_82; generic32_t var_83; generic32_t var_84; generic32_t var_85; generic32_t var_86; generic32_t var_87; generic32_t var_88; generic32_t var_89; generic32_t var_90; generic32_t var_91; generic8_t var_92; generic32_t var_93; *(generic32_t *) (revng_undefined_local_sp() - 4) = 1744830465; *(generic32_t *) NULL = (pointer_or_number32_t) &segment_0.offset_360 + *(generic32_t *) NULL * 1; helper_check_iol_wrapper(NULL, 116, undef(generic32_t), undef(generic32_t), undef(generic32_t), undef(generic32_t), undef(generic32_t), undef(generic32_t), undef(generic32_t), revng_undefined_local_sp() - 7, (pointer_or_number32_t) &segment_0 + 245, 4294967295, 514, 4194483, 43, 0, 35, 0, 13630208, 43, 0, 13628160, 43, 0, 0, 43, 0, 0, 65535, 35584, 1073741824, 2147549185, 0, 0, 0, 4294967295, &var_47, &var_48, &var_49, &var_50, &var_51, &var_52, &var_53, &var_54, &var_55, &var_56, &var_57, &var_58, &var_59, &var_60, &var_61, &var_62, &var_63, &var_64, &var_65, &var_66, &var_67, &var_68, &var_69, &var_70, &var_71, &var_72, &var_73, &var_74, &var_75, &var_76, &var_77, &var_78, &var_79, &var_80, &var_81, &var_82, &var_83, &var_84, &var_85, &var_86, &var_87, &var_88, &var_89, &var_90, &var_91, &var_92); var_0 = helper_inl(NULL, 116); var_93 = 68; switch ((number32_t) var_47) { case 48: { var_93 = 4294967295; } break; case 47: { var_93 = var_48 & 0xFFFFF7FF; } break; case 46: { var_93 = 4294967295; } break; case 44: { generic32_t var_94; var_94 = lshift(undef(generic32_t), 4294967272); var_93 = (var_94 & 0x80) | !var_48; } break; case 43: { generic32_t var_95; var_95 = lshift(0, 4294967288); var_93 = (var_95 & 0x80) | !(var_48 & 0xFFFF) | 0x40; } break; case 42: { generic32_t var_96; var_96 = lshift(0, 0); var_93 = (var_96 & 0x80) | !(var_48 & 0xFF) | 0x40; } break; case 40: { generic32_t var_97; generic32_t var_98; var_98 = lshift(undef(generic32_t), 4294967272); var_97 = lshift(undef(generic32_t), 4294967276); var_93 = (var_48 & 0x1) | (var_98 & 0x80) | (var_97 & 0x800) | 0x4; } break; case 39: { generic32_t var_99; generic32_t var_100; var_100 = lshift(0, 4294967288); var_99 = lshift(0, 4294967292); var_93 = (var_48 & 0x1) | (var_100 & 0x80) | (var_99 & 0x800) | 0x44; } break; case 38: { generic32_t var_101; generic32_t var_102; var_102 = lshift(0, 0); var_101 = lshift(0, 4); var_93 = (var_48 & 0x1) | (var_102 & 0x80) | (var_101 & 0x800) | 0x44; } break; case 36: { generic32_t var_103; generic32_t var_104; var_104 = lshift(undef(generic32_t), 4294967272); var_103 = lshift(undef(generic32_t), 4294967276); var_93 = ((uint32_t) var_48 >> 31) | (var_104 & 0x80) | (var_103 & 0x800) | 0x4; } break; case 35: { generic32_t var_105; generic32_t var_106; var_106 = lshift(0, 4294967288); var_105 = lshift(0, 4294967292); var_93 = (((uint32_t) var_48 >> 15) & 0x1) | (var_106 & 0x80) | (var_105 & 0x800) | 0x44; } break; case 34: { generic32_t var_107; generic32_t var_108; var_108 = lshift(0, 0); var_107 = lshift(0, 4); var_93 = (((uint32_t) var_48 >> 7) & 0x1) | (var_108 & 0x80) | (var_107 & 0x800) | 0x44; } break; case 32: { generic32_t var_109; var_109 = lshift(undef(generic32_t), 4294967272); var_93 = (var_109 & 0x80) | var_48 | 0x4; } break; case 31: { generic32_t var_110; var_110 = lshift(0, 4294967288); var_93 = (var_48 & 0xFFBB) | (var_110 & 0x80) | 0x44; } break; case 30: { generic32_t var_111; var_111 = lshift(0, 0); var_93 = (var_48 & 0xBB) | (var_111 & 0x80) | 0x44; } break; case 28: { generic32_t var_112; var_112 = lshift(undef(generic32_t), 4294967272); var_93 = (var_112 & 0x80) | var_48 | 0x4; } break; case 27: { generic32_t var_113; var_113 = lshift(0, 4294967288); var_93 = (var_48 & 0xFFBB) | (var_113 & 0x80) | 0x44; } break; case 26: { generic32_t var_114; var_114 = lshift(0, 0); var_93 = (var_48 & 0xBB) | (var_114 & 0x80) | 0x44; } break; case 24: { generic32_t var_115; var_115 = lshift(undef(generic32_t), 4294967272); var_93 = (var_115 & 0x80) | 0x4; } break; case 23: { generic32_t var_116; var_116 = lshift(0, 4294967288); var_93 = (var_116 & 0x80) | 0x44; } break; case 22: { generic32_t var_117; var_117 = lshift(0, 0); var_93 = (var_117 & 0x80) | 0x44; } break; case 20: { generic32_t var_118; generic32_t var_119; var_119 = lshift(undef(generic32_t), 4294967272); var_118 = lshift(0, 4294967276); var_93 = (var_48 & 0x10) | (var_119 & 0x80) | (var_118 & 0x800) | 0x4; } break; case 19: { generic32_t var_120; generic32_t var_121; var_121 = lshift(0, 4294967288); var_120 = lshift(0, 4294967292); var_93 = (var_48 & 0x10) | ((var_48 & 0xFFFF) != 0) | (var_121 & 0x80) | (var_120 & 0x800) | 0x44; } break; case 18: { generic32_t var_122; generic32_t var_123; var_123 = lshift(0, 0); var_122 = lshift(0, 4); var_93 = (var_48 & 0x10) | ((var_48 & 0xFF) != 0) | (var_123 & 0x80) | (var_122 & 0x800) | 0x44; } break; case 16: { generic32_t var_124; generic32_t var_125; var_125 = lshift(undef(generic32_t), 4294967272); var_124 = lshift(0, 4294967276); var_93 = (var_48 & 0x10) | (var_125 & 0x80) | (var_124 & 0x800) | 0x4; } break; case 15: { generic32_t var_126; generic32_t var_127; var_127 = lshift(0, 4294967288); var_126 = lshift(0, 4294967292); var_93 = (var_48 & 0x10) | ((var_48 & 0xFFFF) != 0) | (var_127 & 0x80) | (var_126 & 0x800) | 0x44; } break; case 14: { generic32_t var_128; generic32_t var_129; var_129 = lshift(0, 0); var_128 = lshift(0, 4); var_93 = (var_48 & 0x10) | ((var_48 & 0xFF) != 0) | (var_129 & 0x80) | (var_128 & 0x800) | 0x44; } break; case 12: { generic32_t var_130; generic32_t var_131; var_131 = lshift(undef(generic32_t), 4294967272); var_130 = lshift(undef(generic32_t), 4294967276); var_93 = (var_131 & 0x80) | (var_130 & 0x800) | 0x4; } break; case 11: { generic32_t var_132; generic32_t var_133; var_133 = lshift(0, 4294967288); var_132 = lshift(0, 4294967292); var_93 = (var_133 & 0x80) | ((var_48 & 0xFFFF) != 0) | (var_132 & 0x800) | 0x44; } break; case 10: { generic32_t var_134; generic32_t var_135; var_135 = lshift(0, 0); var_134 = lshift(0, 4); var_93 = (var_135 & 0x80) | ((var_48 & 0xFF) != 0) | (var_134 & 0x800) | 0x44; } break; case 8: { generic32_t var_136; generic32_t var_137; var_137 = lshift(undef(generic32_t), 4294967272); var_136 = lshift(undef(generic32_t), 4294967276); var_93 = (var_137 & 0x80) | (var_136 & 0x800) | 0x4; } break; case 7: { generic32_t var_138; generic32_t var_139; var_139 = lshift(0, 4294967288); var_138 = lshift(0, 4294967292); var_93 = (var_139 & 0x80) | ((var_48 & 0xFFFF) != 0) | (var_138 & 0x800) | 0x44; } break; case 6: { generic32_t var_140; generic32_t var_141; var_141 = lshift(0, 0); var_140 = lshift(0, 4); var_93 = (var_141 & 0x80) | ((var_48 & 0xFF) != 0) | (var_140 & 0x800) | 0x44; } break; case 4: { generic32_t var_142; generic32_t var_143; var_143 = lshift(undef(generic32_t), 4294967272); var_142 = var_48 != 0 ? 2048 : 0; var_93 = (var_143 & 0x80) | (var_48 != 0) | var_142 | 0x4; } break; case 3: { generic32_t var_144; generic32_t var_145; var_145 = lshift(0, 4294967288); var_144 = var_48 != 0 ? 2048 : 0; var_93 = (var_145 & 0x80) | (var_48 != 0) | var_144 | 0x44; } break; case 2: { generic32_t var_146; generic32_t var_147; var_147 = lshift(0, 0); var_146 = var_48 != 0 ? 2048 : 0; var_93 = (var_147 & 0x80) | (var_48 != 0) | var_146 | 0x44; } break; case 1: { var_93 = var_48; } break; case 49: { break; } break; default: { var_93 = 0; } break; } generic32_t var_148; generic32_t var_149; generic8_t var_150; generic32_t var_151; generic32_t var_152; generic32_t var_153; if (!((((uint32_t) var_93 >> 4) ^ var_93) & 0x80)) { generic32_t var_154; generic32_t var_155; generic32_t var_156; generic32_t var_157; *(generic8_t *) var_0 = *(generic8_t *) var_0 + (number8_t) var_0; var_157 = lshift((uint32_t) (*(generic8_t *) var_0 + (number8_t) var_0), 0); var_156 = lshift(((*(generic8_t *) var_0 + (number8_t) var_0) ^ (number8_t) var_0) & ~((var_0 & 0xFF) ^ *(generic8_t *) var_0), 4); var_155 = lshift((var_0 + 8) & 0xFF, 0); var_154 = lshift((var_0 ^ 0xF7) & (((var_0 + 8) & 0xFF) ^ 0x8), 4); var_150 = (number8_t) var_0 + '\020'; var_152 = (var_0 & 0xFFFFFF00) | var_150; var_153 = var_56 - 4; *(generic32_t *) var_153 = var_56; var_149 = var_152; *(generic8_t *) var_149 = *(generic8_t *) var_149 + var_150; var_151 = var_152 << 1; *(generic8_t *) var_151 = *(generic8_t *) var_151 + (number8_t) var_54; *(generic8_t *) var_151 = *(generic8_t *) var_151 + var_150; *(generic8_t *) var_149 = *(generic8_t *) var_149 + ((number8_t) var_150 << '\001'); *(generic32_t *) (var_153 - 4) = var_52; helper_check_iol_wrapper(NULL, 116, var_152, var_50, var_51, var_52, var_53, var_54, var_55, var_153 - 4, (pointer_or_number32_t) &segment_0 + 277, var_58, var_59, var_61, var_62, var_63, var_66, var_67, var_69, var_70, var_71, var_73, var_74, var_75, var_78, var_82, var_86, 0, 65535, 35584, 1073741824, 2147549185, 0, var_88, var_90, var_91, &var_1, &var_2, &var_3, &var_4, &var_5, &var_6, &var_7, &var_8, &var_9, &var_10, &var_11, &var_12, &var_13, &var_14, &var_15, &var_16, &var_17, &var_18, &var_19, &var_20, &var_21, &var_22, &var_23, &var_24, &var_25, &var_26, &var_27, &var_28, &var_29, &var_30, &var_31, &var_32, &var_33, &var_34, &var_35, &var_36, &var_37, &var_38, &var_39, &var_40, &var_41, &var_42, &var_43, &var_44, &var_45, &var_46); var_148 = helper_inl(NULL, 116); *(generic8_t *) (var_148 + var_33) = *(generic8_t *) (var_148 + var_33) + (number8_t) var_148; *(generic8_t *) var_148 = *(generic8_t *) var_148 + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + (number8_t) var_148; *(generic32_t *) (var_10 - 4) = var_16; *(generic8_t *) var_148 = *(generic8_t *) var_148 + (number8_t) var_148 + (number8_t) var_8 + (number8_t) var_148; *(generic8_t *) (var_8 - 27) = *(generic8_t *) (var_8 - 27) + (number8_t) var_8; *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 + '\037')) = *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 + '\037')) + ((number8_t) var_148 + '\037'); *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) = *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) + ((number8_t) var_148 - 's'); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((number8_t) var_148 - 's'); *(generic8_t *) (((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) << 1) = *(generic8_t *) (((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) << 1) + ((number8_t) var_148 - 's'); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((number8_t) var_148 - 's'); *(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = (number8_t) var_148 - 's' + (number8_t) (*(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00))); revng_abort(""); } else { var_153 = var_56 - 4; *(generic32_t *) var_153 = var_56; var_149 = var_0; var_150 = (number8_t) var_0; *(generic8_t *) var_149 = *(generic8_t *) var_149 + var_150; var_151 = var_0 << 1; var_152 = var_0; *(generic8_t *) var_151 = *(generic8_t *) var_151 + var_150; *(generic8_t *) var_149 = *(generic8_t *) var_149 + ((number8_t) var_150 << '\001'); *(generic32_t *) (var_153 - 4) = var_52; helper_check_iol_wrapper(NULL, 116, var_152, var_50, var_51, var_52, var_53, var_54, var_55, var_153 - 4, (pointer_or_number32_t) &segment_0 + 277, var_58, var_59, var_61, var_62, var_63, var_66, var_67, var_69, var_70, var_71, var_73, var_74, var_75, var_78, var_82, var_86, 0, 65535, 35584, 1073741824, 2147549185, 0, var_88, var_90, var_91, &var_1, &var_2, &var_3, &var_4, &var_5, &var_6, &var_7, &var_8, &var_9, &var_10, &var_11, &var_12, &var_13, &var_14, &var_15, &var_16, &var_17, &var_18, &var_19, &var_20, &var_21, &var_22, &var_23, &var_24, &var_25, &var_26, &var_27, &var_28, &var_29, &var_30, &var_31, &var_32, &var_33, &var_34, &var_35, &var_36, &var_37, &var_38, &var_39, &var_40, &var_41, &var_42, &var_43, &var_44, &var_45, &var_46); var_148 = helper_inl(NULL, 116); *(generic8_t *) (var_148 + var_33) = *(generic8_t *) (var_148 + var_33) + (number8_t) var_148; *(generic8_t *) var_148 = *(generic8_t *) var_148 + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + ((number8_t) var_148 << '\001') + (number8_t) var_148; *(generic32_t *) (var_10 - 4) = var_16; *(generic8_t *) var_148 = *(generic8_t *) var_148 + (number8_t) var_148 + (number8_t) var_8 + (number8_t) var_148; *(generic8_t *) (var_8 - 27) = *(generic8_t *) (var_8 - 27) + (number8_t) var_8; *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 + '\037')) = *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 + '\037')) + ((number8_t) var_148 + '\037'); *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) = *(generic8_t *) ((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) + ((number8_t) var_148 - 's'); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((number8_t) var_148 - 's'); *(generic8_t *) (((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) << 1) = *(generic8_t *) (((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) << 1) + ((number8_t) var_148 - 's'); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((number8_t) var_148 - 's'); *(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = *(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)); *(generic8_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) = (number8_t) var_148 - 's' + (number8_t) (*(generic32_t *) ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00)) + ((((var_148 & 0xFFFFFF00) | ((number8_t) var_148 - 's')) & 0xFFFF00FF) | (((var_148 & 0xFF00) + var_5) & 0xFF00))); revng_abort(""); } } _ABI(SystemV_x86) void function_0x804876c_Code_x86(void) { function_0x80488b0_Code_x86(); if (*(generic32_t *) NULL) { function_0x8048830_Code_x86(); } } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 strcspn_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = strcspn(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 fflush_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = fflush(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 getchar_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = getchar(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 fgets_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = fgets(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 signal_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = signal(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 alarm_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = alarm(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 __stack_chk_fail_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = __stack_chk_fail(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 puts_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = puts(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 system_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = system(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(SystemV_x86) _Noreturn void function_0x8048830_Code_x86(void) { *(generic32_t *) (revng_undefined_local_sp() - 4) = 72; *(generic32_t *) (revng_undefined_local_sp() - 8) = segment_1.got_plt.offset_4; revng_abort("A longjmp was taken"); } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 __libc_start_main_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = __libc_start_main(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 strnlen_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = strnlen(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 __isoc99_scanf_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = __isoc99_scanf(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(raw_x86) artificial_struct_returned_by_rawfunction_27 ptrace_2(void) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; var_2 = ptrace(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; return (artificial_struct_returned_by_rawfunction_27) { var_1, var_0 }; } _ABI(SystemV_x86) _Noreturn void _start(void) { struct_73 stack; artificial_struct_returned_by_rawfunction_27 var_0; stack.offset_24 = &(&stack)[1]; stack.offset_16 = __libc_csu_fini; stack.offset_12 = __libc_csu_init; stack.offset_8 = &(&stack)[1].offset_4; stack.offset_4 = (&stack)[1].offset_0; stack.offset_0 = main; var_0 = __libc_start_main_2(); } _ABI(SystemV_x86) void function_0x80488b0_Code_x86(void) { } _ABI(SystemV_x86) void function_0x80488c0_Code_x86(void) { } _ABI(SystemV_x86) void function_0x8048930_Code_x86(void) { if (!segment_1.bss.offset_36) { function_0x80488c0_Code_x86(); segment_1.bss.offset_36 = '\001'; } } _ABI(SystemV_x86) void function_0x8048950_Code_x86(void) { } _ABI(SystemV_x86) void clear_stdin(void) { struct_75 stack; stack.offset_15 = '\000'; while (true) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; bool var_3 = false; var_2 = getchar_2(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; stack.offset_15 = (number8_t) var_1; switch ((number8_t) var_1) { case 10: case 255: { var_3 = true; break; } break; default: { continue; } break; } if (var_3){ break;} } } _ABI(SystemV_x86) generic32_t get_unum(void) { struct_76 stack; pointer_or_number32_t var_0; pointer_or_number32_t var_1; pointer_or_number32_t var_2; pointer_or_number32_t var_3; artificial_struct_returned_by_rawfunction_27 var_4; artificial_struct_returned_by_rawfunction_27 var_5; stack.offset_28 = 0; stack.offset_0 = segment_1.bss.stdout; var_4 = fflush_2(); var_3 = var_4.register_eax; var_2 = var_4.register_edx; stack.offset_4 = &stack.offset_28; stack.offset_0 = "%u"; var_5 = __isoc99_scanf_2(); var_1 = var_5.register_eax; var_0 = var_5.register_edx; clear_stdin(); return stack.offset_28; } _ABI(SystemV_x86) generic32_t prog_timeout(void) { } _ABI(SystemV_x86) void enable_timeout_cons(void) { struct_77 stack; pointer_or_number32_t var_0; pointer_or_number32_t var_1; pointer_or_number32_t var_2; pointer_or_number32_t var_3; artificial_struct_returned_by_rawfunction_27 var_4; artificial_struct_returned_by_rawfunction_27 var_5; stack.offset_4 = prog_timeout; stack.offset_0 = 14; var_4 = signal_2(); var_3 = var_4.register_eax; var_2 = var_4.register_edx; stack.offset_0 = 60; var_5 = alarm_2(); var_1 = var_5.register_eax; var_0 = var_5.register_edx; } _ABI(SystemV_x86) generic32_t auth(struct_88 *argument_0, generic32_t argument_1) { struct_78 stack; pointer_or_number32_t var_0; pointer_or_number32_t var_1; pointer_or_number32_t var_2; pointer_or_number32_t var_3; struct_88 *var_4; generic32_t var_5; generic32_t var_6; artificial_struct_returned_by_rawfunction_27 var_7; artificial_struct_returned_by_rawfunction_27 var_8; var_4 = argument_0; var_5 = argument_1; stack.offset_4 = "\n"; stack.offset_0 = var_4; var_7 = strcspn_2(); var_3 = var_7.register_eax; var_2 = var_7.register_edx; *(generic8_t *) (var_3 + (pointer_or_number32_t) var_4) = '\000'; stack.offset_4 = 32; stack.offset_0 = var_4; var_8 = strnlen_2(); var_1 = var_8.register_eax; var_0 = var_8.register_edx; stack.i = var_1; *(pointer_or_number32_t *) ((pointer_or_number32_t) &stack - 4) = var_1; var_6 = 1; if ((int32_t) stack.i > (int32_t) 5) { pointer_or_number32_t var_9; pointer_or_number32_t var_10; artificial_struct_returned_by_rawfunction_27 var_11; stack.offset_12 = 0; stack.offset_8 = 1; stack.offset_4 = 0; stack.offset_0 = 0; var_11 = ptrace_2(); var_10 = var_11.register_eax; var_9 = var_11.register_edx; if (var_10 == (pointer_or_number32_t) -1) { pointer_or_number32_t var_12; pointer_or_number32_t var_13; pointer_or_number32_t var_14; pointer_or_number32_t var_15; pointer_or_number32_t var_16; pointer_or_number32_t var_17; artificial_struct_returned_by_rawfunction_27 var_18; artificial_struct_returned_by_rawfunction_27 var_19; artificial_struct_returned_by_rawfunction_27 var_20; stack.offset_0 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 5; var_18 = puts_2(); var_17 = var_18.register_eax; var_16 = var_18.register_edx; stack.offset_0 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 41; var_19 = puts_2(); var_15 = var_19.register_eax; var_14 = var_19.register_edx; stack.offset_0 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 77; var_20 = puts_2(); var_13 = var_20.register_eax; var_12 = var_20.register_edx; var_6 = 1; } else { stack.offset_24 = ((number32_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + 3) ^ 0x1337) + 6221293; stack.offset_20 = 0; if ((int32_t) stack.i > (int32_t) 0) { generic32_t var_21; var_21 = 0; while (true) { if ((int8_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + var_21) > (int8_t) 31) { stack.offset_24 = stack.offset_24 + (((uint32_t) ((((stack.offset_24 ^ (number32_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + var_21)) - (number32_t) ((uint64_t) ((stack.offset_24 ^ (number32_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + var_21)) * 2284010283) >> 32)) >> 1) + (number32_t) ((uint64_t) ((stack.offset_24 ^ (number32_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + var_21)) * 2284010283) >> 32)) >> 10) * (number32_t) -1337 + (stack.offset_24 ^ (number32_t) *(generic8_t *) ((pointer_or_number32_t) var_4 + var_21))); var_21 = stack.offset_20 + 1; stack.offset_20 = var_21; if ((int32_t) var_21 < (int32_t) stack.i) { continue; } break; } var_6 = 1; return var_6; } } var_6 = var_5 != stack.offset_24; } } return var_6; } _ABI(SystemV_x86) _Noreturn void function_0x8048a4b_Code_x86(struct_68 argument_0) { if ((int32_t) *(generic32_t *) NULL > (int32_t) 5) { pointer_or_number32_t var_0; pointer_or_number32_t var_1; artificial_struct_returned_by_rawfunction_27 var_2; argument_0.offset_16 = 0; argument_0.offset_12 = 1; argument_0.offset_8 = 0; argument_0.offset_4 = 0; var_2 = ptrace_2(); var_1 = var_2.register_eax; var_0 = var_2.register_edx; if (var_1 == (pointer_or_number32_t) -1) { pointer_or_number32_t var_3; pointer_or_number32_t var_4; pointer_or_number32_t var_5; pointer_or_number32_t var_6; pointer_or_number32_t var_7; pointer_or_number32_t var_8; artificial_struct_returned_by_rawfunction_27 var_9; artificial_struct_returned_by_rawfunction_27 var_10; artificial_struct_returned_by_rawfunction_27 var_11; argument_0.offset_4 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 5; var_9 = puts_2(); var_8 = var_9.register_eax; var_7 = var_9.register_edx; argument_0.offset_4 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 41; var_10 = puts_2(); var_6 = var_10.register_eax; var_5 = var_10.register_edx; argument_0.offset_4 = (pointer_or_number32_t) &segment_0.rodata.offset_11 + 77; var_11 = puts_2(); var_4 = var_11.register_eax; var_3 = var_11.register_edx; revng_abort("A longjmp was taken"); } else { *(generic32_t *) NULL = 0; revng_abort("A longjmp was taken"); } } else { revng_abort("A longjmp was taken"); } } _ABI(SystemV_x86) generic64_t main(struct_71 argument_0) { struct_79 stack; generic32_t var_0; pointer_or_number32_t var_1; pointer_or_number32_t var_2; pointer_or_number32_t var_3; pointer_or_number32_t var_4; pointer_or_number32_t var_5; pointer_or_number32_t var_6; pointer_or_number32_t var_7; pointer_or_number32_t var_8; pointer_or_number32_t var_9; pointer_or_number32_t var_10; pointer_or_number32_t var_11; pointer_or_number32_t var_12; pointer_or_number32_t var_13; pointer_or_number32_t var_14; pointer_or_number32_t var_15; pointer_or_number32_t var_16; pointer_or_number32_t var_17; pointer_or_number32_t var_18; pointer_or_number32_t var_19; pointer_or_number32_t var_20; pointer_or_number32_t var_21; pointer_or_number32_t var_22; pointer_or_number32_t var_23; pointer_or_number32_t var_24; pointer_or_number32_t var_25; pointer_or_number32_t var_26; generic32_t var_27; generic32_t var_28; generic32_t var_29; artificial_struct_returned_by_rawfunction_27 var_30; artificial_struct_returned_by_rawfunction_27 var_31; artificial_struct_returned_by_rawfunction_27 var_32; artificial_struct_returned_by_rawfunction_27 var_33; artificial_struct_returned_by_rawfunction_27 var_34; artificial_struct_returned_by_rawfunction_27 var_35; artificial_struct_returned_by_rawfunction_27 var_36; artificial_struct_returned_by_rawfunction_27 var_37; artificial_struct_returned_by_rawfunction_27 var_38; artificial_struct_returned_by_rawfunction_27 var_39; artificial_struct_returned_by_rawfunction_27 var_40; artificial_struct_returned_by_rawfunction_27 var_41; artificial_struct_returned_by_rawfunction_27 var_42; stack.offset_12 = argument_0.offset_4; stack.offset_60 = *(generic32_t *) (generic32_t) 20; stack.offset_0 = ".---------------------------."; var_30 = puts_2(); var_26 = var_30.register_eax; var_25 = var_30.register_edx; stack.offset_0 = "|--------- RPISEC --------|"; var_31 = puts_2(); var_24 = var_31.register_eax; var_23 = var_31.register_edx; stack.offset_0 = "|+ SECURE LOGIN SYS v. 3.0 +|"; var_32 = puts_2(); var_22 = var_32.register_eax; var_21 = var_32.register_edx; stack.offset_0 = "|---------------------------|"; var_33 = puts_2(); var_20 = var_33.register_eax; var_19 = var_33.register_edx; stack.offset_0 = "|~- Enter your Username: ~-|"; var_34 = puts_2(); var_18 = var_34.register_eax; var_17 = var_34.register_edx; stack.offset_0 = "'---------------------------'"; var_35 = puts_2(); var_16 = var_35.register_eax; var_15 = var_35.register_edx; stack.offset_8 = segment_1.bss.stdin; stack.offset_4 = 32; stack.offset_0 = (pointer_or_number32_t) &stack.offset_24 + 4; var_36 = fgets_2(); var_14 = var_36.register_eax; var_13 = var_36.register_edx; stack.offset_0 = ".---------------------------."; var_37 = puts_2(); var_12 = var_37.register_eax; var_11 = var_37.register_edx; stack.offset_0 = "| !! NEW ACCOUNT DETECTED !!|"; var_38 = puts_2(); var_10 = var_38.register_eax; var_9 = var_38.register_edx; stack.offset_0 = "|---------------------------|"; var_39 = puts_2(); var_8 = var_39.register_eax; var_7 = var_39.register_edx; stack.offset_0 = "|~- Input your serial: ~-|"; var_40 = puts_2(); var_6 = var_40.register_eax; var_5 = var_40.register_edx; stack.offset_0 = "'---------------------------'"; var_41 = puts_2(); var_4 = var_41.register_eax; var_3 = var_41.register_edx; stack.offset_4 = &stack.offset_24; stack.offset_0 = "%u"; var_42 = __isoc99_scanf_2(); var_2 = var_42.register_eax; var_1 = var_42.register_edx; stack.offset_4 = stack.offset_24; stack.offset_0 = (pointer_or_number32_t) &stack.offset_24 + 4; var_0 = auth((struct_88 *) var_27, var_28); var_29 = 1; if (!var_0) { pointer_or_number32_t var_43; pointer_or_number32_t var_44; pointer_or_number32_t var_45; pointer_or_number32_t var_46; artificial_struct_returned_by_rawfunction_27 var_47; artificial_struct_returned_by_rawfunction_27 var_48; stack.offset_0 = "Authenticated!"; var_47 = puts_2(); var_46 = var_47.register_eax; var_45 = var_47.register_edx; stack.offset_0 = "/bin/sh"; var_48 = system_2(); var_44 = var_48.register_eax; var_43 = var_48.register_edx; var_29 = 0; } generic32_t var_49; generic64_t var_50; var_49 = var_29; var_50 = 0; if (stack.offset_60 != *(generic32_t *) (generic32_t) 20) { pointer_or_number32_t var_51; pointer_or_number32_t var_52; artificial_struct_returned_by_rawfunction_27 var_53; var_53 = __stack_chk_fail_2(); var_52 = var_53.register_eax; var_49 = var_52; var_51 = var_53.register_edx; var_50 = (number64_t) var_51 << 32; } return var_50 | var_49; } _ABI(SystemV_x86) _Noreturn void function_0x8048b65_Code_x86(struct_69 argument_0) { generic32_t var_0; pointer_or_number32_t var_1; pointer_or_number32_t var_2; pointer_or_number32_t var_3; pointer_or_number32_t var_4; pointer_or_number32_t var_5; pointer_or_number32_t var_6; pointer_or_number32_t var_7; pointer_or_number32_t var_8; pointer_or_number32_t var_9; pointer_or_number32_t var_10; pointer_or_number32_t var_11; pointer_or_number32_t var_12; pointer_or_number32_t var_13; pointer_or_number32_t var_14; pointer_or_number32_t var_15; pointer_or_number32_t var_16; pointer_or_number32_t var_17; pointer_or_number32_t var_18; pointer_or_number32_t var_19; pointer_or_number32_t var_20; pointer_or_number32_t var_21; pointer_or_number32_t var_22; pointer_or_number32_t var_23; pointer_or_number32_t var_24; pointer_or_number32_t var_25; pointer_or_number32_t var_26; generic32_t var_27; generic32_t var_28; artificial_struct_returned_by_rawfunction_27 var_29; artificial_struct_returned_by_rawfunction_27 var_30; artificial_struct_returned_by_rawfunction_27 var_31; artificial_struct_returned_by_rawfunction_27 var_32; artificial_struct_returned_by_rawfunction_27 var_33; artificial_struct_returned_by_rawfunction_27 var_34; artificial_struct_returned_by_rawfunction_27 var_35; artificial_struct_returned_by_rawfunction_27 var_36; artificial_struct_returned_by_rawfunction_27 var_37; artificial_struct_returned_by_rawfunction_27 var_38; artificial_struct_returned_by_rawfunction_27 var_39; artificial_struct_returned_by_rawfunction_27 var_40; artificial_struct_returned_by_rawfunction_27 var_41; argument_0.offset_4 = ".---------------------------."; var_29 = puts_2(); var_26 = var_29.register_eax; var_25 = var_29.register_edx; argument_0.offset_4 = "|--------- RPISEC --------|"; var_30 = puts_2(); var_24 = var_30.register_eax; var_23 = var_30.register_edx; argument_0.offset_4 = "|+ SECURE LOGIN SYS v. 3.0 +|"; var_31 = puts_2(); var_22 = var_31.register_eax; var_21 = var_31.register_edx; argument_0.offset_4 = "|---------------------------|"; var_32 = puts_2(); var_20 = var_32.register_eax; var_19 = var_32.register_edx; argument_0.offset_4 = "|~- Enter your Username: ~-|"; var_33 = puts_2(); var_18 = var_33.register_eax; var_17 = var_33.register_edx; argument_0.offset_4 = "'---------------------------'"; var_34 = puts_2(); var_16 = var_34.register_eax; var_15 = var_34.register_edx; argument_0.offset_12 = segment_1.bss.stdin; argument_0.offset_8 = 32; argument_0.offset_4 = revng_undefined_local_sp() + 36; var_35 = fgets_2(); var_14 = var_35.register_eax; var_13 = var_35.register_edx; argument_0.offset_4 = ".---------------------------."; var_36 = puts_2(); var_12 = var_36.register_eax; var_11 = var_36.register_edx; argument_0.offset_4 = "| !! NEW ACCOUNT DETECTED !!|"; var_37 = puts_2(); var_10 = var_37.register_eax; var_9 = var_37.register_edx; argument_0.offset_4 = "|---------------------------|"; var_38 = puts_2(); var_8 = var_38.register_eax; var_7 = var_38.register_edx; argument_0.offset_4 = "|~- Input your serial: ~-|"; var_39 = puts_2(); var_6 = var_39.register_eax; var_5 = var_39.register_edx; argument_0.offset_4 = "'---------------------------'"; var_40 = puts_2(); var_4 = var_40.register_eax; var_3 = var_40.register_edx; argument_0.offset_8 = revng_undefined_local_sp() + 32; argument_0.offset_4 = "%u"; var_41 = __isoc99_scanf_2(); var_2 = var_41.register_eax; var_1 = var_41.register_edx; argument_0.offset_8 = argument_0.offset_28; argument_0.offset_4 = revng_undefined_local_sp() + 36; var_0 = auth((struct_88 *) var_27, var_28); if (!var_0) { pointer_or_number32_t var_42; pointer_or_number32_t var_43; pointer_or_number32_t var_44; pointer_or_number32_t var_45; artificial_struct_returned_by_rawfunction_27 var_46; artificial_struct_returned_by_rawfunction_27 var_47; argument_0.offset_4 = "Authenticated!"; var_46 = puts_2(); var_45 = var_46.register_eax; var_44 = var_46.register_edx; argument_0.offset_4 = "/bin/sh"; var_47 = system_2(); var_43 = var_47.register_eax; var_42 = var_47.register_edx; } if (argument_0.offset_64 == *(generic32_t *) (generic32_t) 20) { revng_abort("A longjmp was taken"); } else { pointer_or_number32_t var_48; pointer_or_number32_t var_49; artificial_struct_returned_by_rawfunction_27 var_50; var_50 = __stack_chk_fail_2(); var_49 = var_50.register_eax; var_48 = var_50.register_edx; revng_abort("A longjmp was taken"); } } _ABI(SystemV_x86) void __libc_csu_init(generic32_t argument_0, generic32_t argument_1, generic32_t argument_2) { struct_80 stack; generic32_t var_0; generic32_t var_1; generic32_t var_2; generic32_t var_3; var_0 = argument_0; var_1 = argument_1; var_2 = argument_2; function_0x80488b0_Code_x86(); function_0x804876c_Code_x86(); var_3 = 0; generic32_t var_4; do { var_4 = var_3; stack.offset_0 = var_0; stack.offset_8 = var_2; stack.offset_4 = var_1; ((cabifunction_126 *) *(generic32_t *) NULL)(); var_3 = var_4 + 1; } while (var_4 != (pointer_or_number32_t) -1); } _ABI(SystemV_x86) void __libc_csu_fini(void) { } _ABI(SystemV_x86) void function_0x8048ce4_Code_x86(void) { function_0x80488b0_Code_x86(); }
Loading...