Last active
March 31, 2023 12:30
-
-
Save francorbacho/642fdfc8968da1f202136e98bd605568 to your computer and use it in GitHub Desktop.
Decompiled binary from C3TF/PWN/ChatUDC
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void _init() | |
{ | |
if (__gmon_start__ != 0) | |
{ | |
__gmon_start__(); | |
} | |
} | |
int64_t sub_401020() | |
{ | |
int64_t var_8 = data_404008; | |
/* jump -> data_404010 */ | |
} | |
int64_t sub_401030() | |
{ | |
int64_t var_8 = 0; | |
/* tailcall */ | |
return sub_401020(); | |
} | |
int64_t sub_401040() | |
{ | |
int64_t var_8 = 1; | |
/* tailcall */ | |
return sub_401020(); | |
} | |
int64_t sub_401050() | |
{ | |
int64_t var_8 = 2; | |
/* tailcall */ | |
return sub_401020(); | |
} | |
int32_t puts(char const* str) | |
{ | |
/* tailcall */ | |
return puts(str); | |
} | |
int32_t fflush(FILE* fp) | |
{ | |
/* tailcall */ | |
return fflush(fp); | |
} | |
int32_t __isoc99_scanf(char const* format, ...) | |
{ | |
/* tailcall */ | |
return __isoc99_scanf(); | |
} | |
int64_t _start(int64_t arg1, int64_t arg2, void (* arg3)()) __noreturn | |
{ | |
int64_t rax; | |
int64_t var_8 = rax; | |
__libc_start_main(main, __return_addr, &arg_8, __libc_csu_init, __libc_csu_fini, arg3, &var_8); | |
/* no return */ | |
} | |
int64_t _dl_relocate_static_pie() | |
{ | |
return; | |
} | |
void deregister_tm_clones() | |
{ | |
return; | |
} | |
void register_tm_clones() | |
{ | |
return; | |
} | |
void __do_global_dtors_aux() | |
{ | |
if (completed.8061 != 0) | |
{ | |
return; | |
} | |
deregister_tm_clones(); | |
completed.8061 = 1; | |
} | |
int64_t frame_dummy() | |
{ | |
/* tailcall */ | |
return register_tm_clones(); | |
} | |
int64_t do_nothing() | |
{ | |
int64_t rbp; | |
int64_t var_8 = rbp; | |
int32_t rdi; | |
int32_t var_c = rdi; | |
} | |
int64_t sub_401187(int64_t* arg1 @ rbp) | |
{ | |
*arg1; | |
return puts("/bin/sh"); | |
} | |
int64_t print_msg(char* arg1, char* arg2) | |
{ | |
puts(arg1); | |
fflush(stdout); | |
void var_38; | |
__isoc99_scanf(&data_40200c, &var_38); | |
puts(arg2); | |
fflush(stdout); | |
return 1; | |
} | |
int32_t main(int32_t argc, char** argv, char** envp) | |
{ | |
int64_t var_d8 = 0x6f53202e616c6f48; | |
int64_t var_d0 = 0x4455746168432079; | |
int64_t var_c8 = 0x206544bfc2202e43; | |
int64_t var_c0 = 0x69757120a9c37571; | |
int64_t var_b8 = 0x6261682073657265; | |
int64_t var_b0 = 0x3f796f682072616c; | |
int64_t var_a8 = 0; | |
int64_t var_a0 = 0; | |
int64_t var_98 = 0; | |
int64_t var_90 = 0; | |
int64_t var_88 = 0; | |
int64_t var_80 = 0; | |
int64_t var_78 = 0; | |
int64_t var_70 = 0; | |
int64_t var_68 = 0; | |
int64_t var_60 = 0; | |
int64_t var_58 = 0; | |
int64_t var_50 = 0; | |
int64_t var_48 = 0; | |
int64_t var_40 = 0; | |
int64_t var_38 = 0; | |
int64_t var_30 = 0; | |
int64_t var_28 = 0; | |
int64_t var_20 = 0; | |
int64_t var_18 = 0; | |
int64_t var_1a8 = 0x54203a524f525245; | |
int64_t var_1a0 = 0x52204f4e20414d45; | |
int64_t var_198 = 0x4449434f4e4f4345; | |
int64_t var_190 = 0x45494c4153202e4f; | |
int64_t var_188 = 0x204c4544204f444e; | |
int64_t var_180 = 0x414d4152474f5250; | |
int64_t var_178 = 0x2e2e2e; | |
int64_t var_170 = 0; | |
int64_t var_168 = 0; | |
int64_t var_160 = 0; | |
int64_t var_158 = 0; | |
int64_t var_150 = 0; | |
int64_t var_148 = 0; | |
int64_t var_140 = 0; | |
int64_t var_138 = 0; | |
int64_t var_130 = 0; | |
int64_t var_128 = 0; | |
int64_t var_120 = 0; | |
int64_t var_118 = 0; | |
int64_t var_110 = 0; | |
int64_t var_108 = 0; | |
int64_t var_100 = 0; | |
int64_t var_f8 = 0; | |
int64_t var_f0 = 0; | |
int64_t var_e8 = 0; | |
print_msg(&var_d8, &var_1a8); | |
return 1; | |
} | |
void __libc_csu_init() | |
{ | |
_init(); | |
int64_t rbx_1 = 0; | |
do | |
{ | |
int64_t rdx; | |
int64_t rsi; | |
int32_t rdi; | |
*(&__init_array_start + (rbx_1 << 3))(rdi, rsi, rdx); | |
rbx_1 = (rbx_1 + 1); | |
} while (1 != rbx_1); | |
} | |
void __libc_csu_fini() | |
{ | |
return; | |
} | |
int64_t _fini() | |
{ | |
return; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment