Skip to content

Instantly share code, notes, and snippets.

@nobody5050
Created September 29, 2020 13:27
Show Gist options
  • Save nobody5050/9346a4c6eed3a935abc0a804aafa152c to your computer and use it in GitHub Desktop.
Save nobody5050/9346a4c6eed3a935abc0a804aafa152c to your computer and use it in GitHub Desktop.
void call_gmon_start();
void frame_dummy();
void __do_global_ctors_aux();
void _init() {
call_gmon_start();
frame_dummy();
__do_global_ctors_aux();
return;
}
int64_t __gmon_start__ = 0;
void call_gmon_start() {
int64_t rax1;
rax1 = __gmon_start__;
if (rax1 != 0) {
rax1();
}
return;
}
int64_t __JCR_END__ = 0;
void frame_dummy() {
if (__JCR_END__ == 0 || 1) {
return;
} else {
goto 0;
}
}
int64_t __CTOR_LIST__ = -1;
void __do_global_ctors_aux() {
int64_t rax1;
int64_t* rbx2;
rax1 = __CTOR_LIST__;
if (rax1 != -1) {
*(int32_t*)&rbx2 = 0x6006a0;
*((int32_t*)&rbx2 + 1) = 0;
do {
--rbx2;
rax1();
rax1 = *rbx2;
} while (rax1 != -1);
}
return;
}
signed char completed_6341 = 0;
uint64_t dtor_idx_6343 = 0;
void __do_global_dtors_aux() {
uint64_t rax1;
uint64_t rax2;
if (completed_6341 == 0) {
rax1 = dtor_idx_6343;
if (0 > rax1) {
do {
rax2 = rax1 + 1;
dtor_idx_6343 = rax2;
*(int64_t*)(rax2 * 8 + 0x6006b0)();
rax1 = dtor_idx_6343;
} while (rax1 < 0);
}
completed_6341 = 1;
}
return;
}
int64_t puts = 0x4003e6;
void func_4003e0(int64_t rdi) {
goto puts;
}
int64_t __libc_start_main = 0x4003f6;
void func_4003f0(int64_t rdi, int64_t rsi, void* rdx, int64_t rcx, int64_t r8, int64_t r9) {
goto __libc_start_main;
}
void _fini() {
__do_global_dtors_aux();
return;
}
int64_t main() {
func_4003e0("Hello, World!");
return 0;
}
int64_t g600880 = 0;
void func_4003e6() {
goto g600880;
}
void __libc_csu_fini() {
return;
}
void __libc_csu_init(int32_t edi, int64_t rsi, int64_t rdx) {
int32_t r13d4;
int64_t r14_5;
int64_t r15_6;
uint64_t rbx7;
int64_t rdi8;
r13d4 = edi;
r14_5 = rsi;
r15_6 = rdx;
_init();
if (!1) {
*(int32_t*)&rbx7 = 0;
*((int32_t*)&rbx7 + 1) = 0;
do {
*(int32_t*)&rdi8 = r13d4;
*((int32_t*)&rdi8 + 1) = 0;
*(int64_t*)(0x60069c + rbx7 * 8)(rdi8, r14_5, r15_6);
++rbx7;
} while (rbx7 < 0);
}
return;
}
void func_4003f6() {
goto 0x4003d0;
}
void _start() {
int64_t v1;
int64_t rdx2;
func_4003f0(main, v1, (int64_t)"intrinsic"() + 8, __libc_csu_init, __libc_csu_fini, rdx2);
__asm__("hlt");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment