30 #ifndef BYTECODE_API_H
31 #define BYTECODE_API_H
37 #include "bytecode_detect.h"
84 FUNC_LEVEL_096_dev = 52,
87 FUNC_LEVEL_096_1_dev = 54,
89 FUNC_LEVEL_096_2_dev = 55,
140 UNTERMINATED_OBJ_DICT,
141 ESCAPED_COMMON_PDFNAME,
242 uint32_t
test1(uint32_t a, uint32_t b);
252 int32_t
read(uint8_t *data, int32_t size);
276 int32_t
write(uint8_t *data, int32_t size);
286 int32_t
seek(int32_t pos, uint32_t whence);
295 uint32_t
setvirusname(
const uint8_t *name, uint32_t len);
333 uint32_t trace_directory(
const uint8_t* directory, uint32_t dummy);
334 uint32_t trace_scope(
const uint8_t* newscope, uint32_t scopeid);
335 uint32_t trace_source(
const uint8_t* srcfile, uint32_t line);
336 uint32_t trace_op(
const uint8_t* opname, uint32_t column);
337 uint32_t trace_value(
const uint8_t* name, uint32_t v);
338 uint32_t trace_ptr(
const uint8_t* ptr, uint32_t dummy);
357 int32_t
file_find(
const uint8_t* data, uint32_t len);
375 void*
malloc(uint32_t size);
382 uint32_t
test2(uint32_t a);
407 int32_t
fill_buffer(uint8_t* buffer, uint32_t len, uint32_t filled,
408 uint32_t cursor, uint32_t fill);
580 int32_t
inflate_init(int32_t from_buffer, int32_t to_buffer, int32_t windowBits);
656 int32_t
ilog2(uint32_t a, uint32_t b);
666 int32_t
ipow(int32_t a, int32_t b, int32_t c);
676 uint32_t
iexp(int32_t a, int32_t b, int32_t c);
686 int32_t
isin(int32_t a, int32_t b, int32_t c);
696 int32_t
icos(int32_t a, int32_t b, int32_t c);
708 int32_t
memstr(
const uint8_t* haystack, int32_t haysize,
709 const uint8_t* needle, int32_t needlesize);
719 int32_t
hex2ui(uint32_t hex1, uint32_t hex2);
728 int32_t
atoi(
const uint8_t* str, int32_t size);
767 int32_t
map_new(int32_t keysize, int32_t valuesize);
779 int32_t
map_addkey(
const uint8_t *key, int32_t ksize, int32_t
id);
790 int32_t
map_setvalue(
const uint8_t *value, int32_t vsize, int32_t
id);
802 int32_t
map_remove(
const uint8_t* key, int32_t ksize, int32_t
id);
816 int32_t
map_find(
const uint8_t* key, int32_t ksize, int32_t
id);
859 int32_t
file_find_limit(
const uint8_t *data, uint32_t len, int32_t maxpos);
953 uint32_t
disable_jit_if(
const int8_t* reason, uint32_t len, uint32_t cond);
967 const uint8_t* rhs, uint32_t rhs_len);
1033 const uint8_t *
pdf_getobj(int32_t objidx, uint32_t amount);
1104 int32_t
matchicon(
const uint8_t* group1, int32_t group1_len,
1105 const uint8_t* group2, int32_t group2_len);
1147 int32_t
json_get_object(
const int8_t* name, int32_t name_len, int32_t objid);
uint32_t debug_print_str_start(const uint8_t *str, uint32_t len)
pdf_objflags
Definition: bytecode_api.h:157
int32_t map_remove(const uint8_t *key, int32_t ksize, int32_t id)
FunctionalityLevels
Definition: bytecode_api.h:82
int32_t running_on_jit(void)
Definition: bytecode_api.h:120
Definition: bytecode_api.h:259
int32_t json_get_string_length(int32_t objid)
Definition: bytecode_api.h:75
BytecodeKind
Definition: bytecode_api.h:49
bc_json_type
Definition: bytecode_api.h:189
uint32_t disable_jit_if(const int8_t *reason, uint32_t len, uint32_t cond)
Definition: bytecode_api.h:56
const uint32_t __clambc_match_counts[64]
This is a low-level variable, use the Macros in bytecode_local.h instead to access it...
Definition: bytecode_api.h:102
int32_t inflate_done(int32_t id)
Definition: bytecode_api.h:58
int32_t pdf_set_flags(int32_t flags)
Definition: bytecode_api.h:121
Definition: bytecode_api.h:51
uint32_t check_platform(uint32_t a, uint32_t b, uint32_t c)
int32_t json_get_array_length(int32_t objid)
Definition: bytecode_api.h:88
Definition: bytecode_api.h:98
pdf_flag
Definition: bytecode_api.h:129
uint32_t get_environment(struct cli_environment *env, uint32_t len)
int32_t buffer_pipe_read_stopped(int32_t id, uint32_t amount)
Definition: bytecode_api.h:122
uint32_t disasm_x86(struct DISASM_RESULT *result, uint32_t len)
Definition: bytecode_api.h:263
uint32_t test1(uint32_t a, uint32_t b)
int32_t get_pe_section(struct cli_exe_section *section, uint32_t num)
int32_t map_getvaluesize(int32_t id)
Definition: bytecode_api.h:53
int32_t json_is_active(void)
Definition: bytecode_api.h:104
int32_t json_get_string(int8_t *str, int32_t str_len, int32_t objid)
int32_t buffer_pipe_new_fromfile(uint32_t pos)
int32_t ilog2(uint32_t a, uint32_t b)
const uint16_t __clambc_kind
Definition: bytecode_api.h:233
int32_t extract_new(int32_t id)
int32_t pdf_getobjid(int32_t objidx)
Definition: bytecode_api.h:108
int32_t hashset_empty(int32_t id)
int32_t input_switch(int32_t extracted_file)
Definition: bytecode_api.h:105
Definition: bytecode_api.h:106
int32_t atoi(const uint8_t *str, int32_t size)
int32_t bytecode_rt_error(int32_t locationid)
Definition: bytecode_api.h:94
int32_t map_new(int32_t keysize, int32_t valuesize)
int32_t file_find(const uint8_t *data, uint32_t len)
int32_t file_byteat(uint32_t offset)
Definition: bytecode_api.h:63
Definition: bytecode_execs.h:39
Definition: bytecode_api.h:100
Definition: bytecode_api.h:91
int32_t map_find(const uint8_t *key, int32_t ksize, int32_t id)
Definition: bytecode_api.h:118
int32_t hashset_done(int32_t id)
uint32_t engine_scan_options(void)
int32_t icos(int32_t a, int32_t b, int32_t c)
Definition: bytecode_api.h:107
int32_t memstr(const uint8_t *haystack, int32_t haysize, const uint8_t *needle, int32_t needlesize)
int32_t json_get_array_idx(int32_t idx, int32_t objid)
Definition: bytecode_api.h:119
int32_t hashset_add(int32_t hs, uint32_t key)
int32_t fill_buffer(uint8_t *buffer, uint32_t len, uint32_t filled, uint32_t cursor, uint32_t fill)
uint32_t engine_functionality_level(void)
Definition: bytecode_pe.h:158
Definition: bytecode_api.h:85
int32_t hashset_contains(int32_t hs, uint32_t key)
uint8_t * buffer_pipe_write_get(int32_t id, uint32_t size)
int32_t jsnorm_init(int32_t from_buffer)
const struct cli_pe_hook_data __clambc_pedata
int32_t pdf_get_obj_num(void)
int32_t json_get_boolean(int32_t objid)
int32_t read_number(uint32_t radix)
uint32_t entropy_buffer(uint8_t *buffer, int32_t size)
int32_t hashset_new(void)
int32_t isin(int32_t a, int32_t b, int32_t c)
uint32_t disable_bytecode_if(const int8_t *reason, uint32_t len, uint32_t cond)
int32_t pdf_lookupobj(uint32_t id)
uint32_t setvirusname(const uint8_t *name, uint32_t len)
int32_t read(uint8_t *data, int32_t size)
Definition: bytecode_api.h:97
const uint8_t * pdf_getobj(int32_t objidx, uint32_t amount)
int32_t inflate_init(int32_t from_buffer, int32_t to_buffer, int32_t windowBits)
Definition: bytecode_api.h:109
uint32_t iexp(int32_t a, int32_t b, int32_t c)
int32_t pdf_get_offset(int32_t objidx)
const uint32_t __clambc_match_offsets[64]
This is a low-level variable, use the Macros in bytecode_local.h instead to access it...
int32_t map_done(int32_t id)
int32_t pdf_setobjflags(int32_t objidx, int32_t flags)
int32_t file_find_limit(const uint8_t *data, uint32_t len, int32_t maxpos)
uint32_t pdf_getobjsize(int32_t objidx)
int32_t seek(int32_t pos, uint32_t whence)
int32_t hex2ui(uint32_t hex1, uint32_t hex2)
uint32_t debug_print_uint(uint32_t a)
int32_t pdf_get_dumpedobjid(void)
uint8_t * map_getvalue(int32_t id, int32_t size)
void * malloc(uint32_t size)
int32_t json_get_int(int32_t objid)
int32_t buffer_pipe_done(int32_t id)
int32_t extract_set_container(uint32_t container)
uint32_t pe_rawaddr(uint32_t rva)
Definition: bytecode_disasm.h:357
int32_t pdf_get_flags(void)
const uint32_t __clambc_filesize[1]
int32_t pdf_getobjflags(int32_t objidx)
int32_t map_addkey(const uint8_t *key, int32_t ksize, int32_t id)
int32_t hashset_remove(int32_t hs, uint32_t key)
Definition: bytecode_api.h:95
uint32_t debug_print_str(const uint8_t *str, uint32_t len)
uint32_t test2(uint32_t a)
Definition: bytecode_api.h:66
int32_t pdf_get_phase(void)
uint32_t debug_print_str_nonl(const uint8_t *str, uint32_t len)
Definition: bytecode_api.h:60
int32_t version_compare(const uint8_t *lhs, uint32_t lhs_len, const uint8_t *rhs, uint32_t rhs_len)
int32_t buffer_pipe_new(uint32_t size)
Definition: bytecode_api.h:103
pdf_phase
Definition: bytecode_api.h:117
Definition: bytecode_api.h:99
Definition: bytecode_api.h:101
int32_t get_file_reliability(void)
int32_t buffer_pipe_write_stopped(int32_t id, uint32_t amount)
uint32_t engine_db_options(void)
uint32_t engine_dconf_level(void)
const uint8_t * buffer_pipe_read_get(int32_t id, uint32_t amount)
Definition: bytecode_api.h:261
uint32_t buffer_pipe_read_avail(int32_t id)
Definition: bytecode_api.h:96
int32_t jsnorm_done(int32_t id)
int32_t map_setvalue(const uint8_t *value, int32_t vsize, int32_t id)
int32_t jsnorm_process(int32_t id)
Definition: bytecode_api.h:90
Definition: bytecode_api.h:83
int32_t inflate_process(int32_t id)
int32_t matchicon(const uint8_t *group1, int32_t group1_len, const uint8_t *group2, int32_t group2_len)
int32_t write(uint8_t *data, int32_t size)
Definition: bytecode_api.h:93
int32_t json_get_object(const int8_t *name, int32_t name_len, int32_t objid)
int32_t json_get_type(int32_t objid)
uint32_t buffer_pipe_write_avail(int32_t id)
int32_t ipow(int32_t a, int32_t b, int32_t c)