22 if (
input[1] !=
' ') {
51 eprintf(
"rz_egg_assemble: invalid assembly\n");
77 eprintf(
"Unknown shellcode '%s'\n",
p);
83 eprintf(
"Setup a shellcode before (gi command)\n");
104 RZ_LOG_ERROR(
"Cannot setup shellcode compiler for chosen configuration\n");
162 for (
i = 1;
i < argc;
i++) {
189 }
else if (llen == 2) {
int bits(struct state *s, int need)
RZ_IPI RzCmdStatus rz_egg_show_config_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_egg_type_handler(RzCore *core, int argc, const char **argv)
static RzCmdStatus rz_core_egg_compile_file(RzCore *core, const char *file)
RZ_IPI RzCmdStatus rz_egg_padding_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_egg_encoder_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_egg_list_plugins_handler(RzCore *core, int argc, const char **argv)
static void showBuffer(RzBuffer *b)
static bool rz_core_egg_compile(RzEgg *egg)
static void egg_option(RzEgg *egg, const char *key, const char *input)
static RzEgg * rz_core_egg_setup(RzCore *core)
RZ_IPI RzCmdStatus rz_egg_config_handler(RzCore *core, int argc, const char **argv)
RZ_IPI RzCmdStatus rz_egg_compile_handler(RzCore *core, int argc, const char **argv)
static bool egg_compile(RzEgg *egg)
RZ_IPI RzCmdStatus rz_egg_reset_handler(RzCore *core, int argc, const char **argv)
static const char * RzEggConfigOptions[]
RZ_IPI RzCmdStatus rz_egg_syscall_handler(RzCore *core, int argc, const char **argv)
RZ_API ut64 rz_config_get_i(RzConfig *cfg, RZ_NONNULL const char *name)
RZ_API RZ_BORROW const char * rz_config_get(RzConfig *cfg, RZ_NONNULL const char *name)
RZ_API void rz_cons_newline(void)
RZ_API int rz_cons_printf(const char *format,...)
RZ_API void rz_cons_println(const char *str)
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len key
RZ_API int rz_egg_shellcode(RzEgg *egg, const char *name)
RZ_API void rz_egg_reset(RzEgg *egg)
RZ_API bool rz_egg_load_file(RzEgg *egg, const char *file)
RZ_API char * rz_egg_option_get(RzEgg *egg, const char *key)
RZ_API int rz_egg_padding(RzEgg *egg, const char *pad)
RZ_API int rz_egg_encode(RzEgg *egg, const char *name)
RZ_API int rz_egg_compile(RzEgg *egg)
RZ_API RzBuffer * rz_egg_get_bin(RzEgg *egg)
RZ_API void rz_egg_option_set(RzEgg *egg, const char *key, const char *val)
RZ_API bool rz_egg_assemble(RzEgg *egg)
RZ_API bool rz_egg_setup(RzEgg *egg, const char *arch, int bits, int endian, const char *os)
RZ_API void Ht_() free(HtName_(Ht) *ht)
RZ_API RzBuffer * rz_core_syscall(RzCore *core, const char *name, const char *args)
RZ_API RZ_BORROW void * rz_list_get_n(RZ_NONNULL const RzList *list, ut32 n)
Returns the N-th element of the list.
RZ_API ut32 rz_list_length(RZ_NONNULL const RzList *list)
Returns the length of the list.
RZ_API void rz_list_free(RZ_NONNULL RzList *list)
Empties the list and frees the list pointer.
static static fork const void static count static fd const char const char static newpath char char argv
#define rz_return_val_if_fail(expr, val)
RZ_API st64 rz_buf_seek(RZ_NONNULL RzBuffer *b, st64 addr, int whence)
Modify the current cursor position in the buffer.
RZ_API bool rz_buf_read8(RZ_NONNULL RzBuffer *b, RZ_NONNULL RZ_OUT ut8 *result)
Read a byte at the cursor in the buffer.
RZ_API ut64 rz_buf_size(RZ_NONNULL RzBuffer *b)
Return the size of the buffer.
enum rz_cmd_status_t RzCmdStatus
@ RZ_CMD_STATUS_OK
command handler exited in the right way
@ RZ_CMD_STATUS_ERROR
command handler had issues while running (e.g. allocation error, etc.)
#define RZ_EGG_PLUGIN_SHELLCODE
#define RZ_LOG_ERROR(fmtstr,...)
#define RZ_STR_ISEMPTY(x)
RZ_API RzList * rz_str_split_duplist_n(const char *str, const char *c, int n, bool trim)
Split the string str according to the substring c and returns a RzList with the result.
static bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)