Rizin
unix-like reverse engineering framework and cli tools
te.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2013 xvilka <anton.kochkov@gmail.com>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #include <rz_types.h>
5 #include <rz_types.h>
6 #include <rz_util.h>
7 #include <rz_lib.h>
8 #include <rz_bin.h>
9 
10 #ifndef _INCLUDE_RZ_BIN_TE_H_
11 #define _INCLUDE_RZ_BIN_TE_H_
12 
13 #define RZ_BIN_TE_SCN_IS_SHAREABLE(x) x &TE_IMAGE_SCN_MEM_SHARED
14 #define RZ_BIN_TE_SCN_IS_EXECUTABLE(x) x &TE_IMAGE_SCN_MEM_EXECUTE
15 #define RZ_BIN_TE_SCN_IS_READABLE(x) x &TE_IMAGE_SCN_MEM_READ
16 #define RZ_BIN_TE_SCN_IS_WRITABLE(x) x &TE_IMAGE_SCN_MEM_WRITE
17 
25  int last;
26 };
27 
29  char string[TE_STRING_LENGTH];
33  char type;
34  int last;
35 };
36 
40  int size;
41  int endian;
42  const char *file;
44  Sdb *kv;
45 };
46 
54 char *rz_bin_te_get_os(struct rz_bin_te_obj_t *bin);
57 void *rz_bin_te_free(struct rz_bin_te_obj_t *bin);
58 struct rz_bin_te_obj_t *rz_bin_te_new(const char *file);
60 
61 #endif
voidpf void * buf
Definition: ioapi.h:138
uint8_t ut8
Definition: lh5801.h:11
Definition: malloc.c:26
Definition: gzappend.c:170
Definition: z80asm.h:102
const char * file
Definition: te.h:42
TE_image_file_header * header
Definition: te.h:38
RzBuffer * b
Definition: te.h:43
int endian
Definition: te.h:41
TE_image_section_header * section_header
Definition: te.h:39
int size
Definition: te.h:40
Sdb * kv
Definition: te.h:44
ut64 paddr
Definition: te.h:23
ut64 vaddr
Definition: te.h:22
ut64 vsize
Definition: te.h:21
ut64 flags
Definition: te.h:24
ut64 paddr
Definition: te.h:31
char type
Definition: te.h:33
ut64 size
Definition: te.h:32
ut64 vaddr
Definition: te.h:30
Definition: sdb.h:63
ut64 rz_bin_te_get_image_base(struct rz_bin_te_obj_t *bin)
Definition: te.c:222
struct rz_bin_te_section_t * rz_bin_te_get_sections(struct rz_bin_te_obj_t *bin)
Definition: te.c:359
struct rz_bin_te_obj_t * rz_bin_te_new(const char *file)
Definition: te.c:442
ut64 rz_bin_te_get_main_paddr(struct rz_bin_te_obj_t *bin)
Definition: te.c:95
char * rz_bin_te_get_os(struct rz_bin_te_obj_t *bin)
Definition: te.c:325
char * rz_bin_te_get_arch(struct rz_bin_te_obj_t *bin)
Definition: te.c:167
char * rz_bin_te_get_subsystem(struct rz_bin_te_obj_t *bin)
Definition: te.c:388
struct rz_bin_te_obj_t * rz_bin_te_new_buf(RzBuffer *buf)
Definition: te.c:466
int rz_bin_te_get_image_size(struct rz_bin_te_obj_t *bin)
RzBinAddr * rz_bin_te_get_entrypoint(struct rz_bin_te_obj_t *bin)
Definition: te.c:204
char * rz_bin_te_get_machine(struct rz_bin_te_obj_t *bin)
Definition: te.c:229
void * rz_bin_te_free(struct rz_bin_te_obj_t *bin)
Definition: te.c:431
int rz_bin_te_get_bits(struct rz_bin_te_obj_t *bin)
Definition: te.c:200
#define TE_STRING_LENGTH
Definition: te_specs.h:18
#define TE_IMAGE_SIZEOF_NAME
Definition: te_specs.h:85
ut64(WINAPI *w32_GetEnabledXStateFeatures)()