Created
September 29, 2020 13:27
-
-
Save nobody5050/9346a4c6eed3a935abc0a804aafa152c to your computer and use it in GitHub Desktop.
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 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