diff --git a/xzre_8h_source.html b/xzre_8h_source.html
index 9bba52d..f14c299 100644
--- a/xzre_8h_source.html
+++ b/xzre_8h_source.html
@@ -1329,389 +1329,393 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1837 BOOL is_64bit_operand,
-
-
-
-
-
-
-
- 1860 BOOL is_64bit_operand,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1926 EncodedStringId encoded_string_id,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1980 FuncFindType find_mode);
-
-
-
-
-
-
-
- 2018 extern char *check_argument(
char arg_first_char,
char* arg_name);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2131 EncodedStringId encoded_string_id);
-
-
-
-
-
-
- 2165 StringXrefId xref_id,
- 2166 void **pOutCodeStart,
void **pOutCodeEnd,
-
-
-
-
-
-
- 2185 EncodedStringId *stringId_inOut,
- 2186 void *rodata_start_ptr);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2256 unsigned shift_count, BOOL start_from_call);
-
-
-
- 2270 unsigned operation_index,
- 2271 unsigned shift_count,
- 2272 int flags, u8 *code);
-
-
-
-
- 2287 unsigned shift_count,
unsigned operation_index);
-
-
- 2332 u8 *call_site, u8 *code,
-
- 2334 unsigned shift_count,
unsigned operation_index);
-
-
-
- 2349 unsigned shift_count,
unsigned operation_index,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2461 struct link_map *libc,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2538 extern EncodedStringId
get_string_id(
const char *string_begin,
const char *string_end);
-
- 2579 extern unsigned int _get_cpuid_modified(
unsigned int leaf,
unsigned int *eax,
unsigned int *ebx,
unsigned int *ecx,
unsigned int *edx, u64 *caller_frame);
-
- 2592 extern void _cpuid_gcc(
unsigned int level,
unsigned int *a,
unsigned int *b,
unsigned int *c,
unsigned int *d);
-
-
-
-
-
-
-
-
-
-
- 2649 uptr *refcook, uptr *defcook,
-
- 2651 const char *symname);
-
-
-
-
-
- 2682 ptrdiff_t *libname_offset,
-
-
-
-
-
- 2710 ptrdiff_t *libname_offset,
-
-
-
-
-
-
-
-
-
-
-
- 2757 ptrdiff_t libname_offset,
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2800 void **host_keys_out);
-
-
-
-
-
-
- 2821 void **host_keys_out,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2891 u8 *buffer, u64 bufferSize,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2963 u64 sshkey_digest_offset,
- 2964 u64 signed_data_size,
-
-
-
-
-
-
- 2982 BOOL skip_root_patch,
-
- 2984 BOOL replace_monitor_reqtype,
- 2985 int monitor_reqtype,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 3024 enum SocketMode socket_direction
-
-
-
-
-
-
-
-
- 3047 static_assert(
sizeof(global_ctx) == 0x8);
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1836 BOOL is_64bit_operand,
+
+
+
+
+
+
+
+ 1859 BOOL is_64bit_operand,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1925 EncodedStringId encoded_string_id,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1979 FuncFindType find_mode);
+
+
+
+
+
+
+
+ 2017 extern char *check_argument(
char arg_first_char,
char* arg_name);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2130 EncodedStringId encoded_string_id);
+
+
+
+
+
+
+ 2164 StringXrefId xref_id,
+ 2165 void **pOutCodeStart,
void **pOutCodeEnd,
+
+
+
+
+
+
+ 2184 EncodedStringId *stringId_inOut,
+ 2185 void *rodata_start_ptr);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2255 unsigned shift_count, BOOL start_from_call);
+
+
+
+ 2269 unsigned operation_index,
+ 2270 unsigned shift_count,
+ 2271 int flags, u8 *code);
+
+
+
+
+ 2286 unsigned shift_count,
unsigned operation_index);
+
+
+ 2331 u8 *call_site, u8 *code,
+
+ 2333 unsigned shift_count,
unsigned operation_index);
+
+
+
+ 2348 unsigned shift_count,
unsigned operation_index,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2460 struct link_map *libc,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2537 extern EncodedStringId
get_string_id(
const char *string_begin,
const char *string_end);
+
+ 2578 extern unsigned int _get_cpuid_modified(
unsigned int leaf,
unsigned int *eax,
unsigned int *ebx,
unsigned int *ecx,
unsigned int *edx, u64 *caller_frame);
+
+ 2591 extern void _cpuid_gcc(
unsigned int level,
unsigned int *a,
unsigned int *b,
unsigned int *c,
unsigned int *d);
+
+
+
+
+
+
+
+
+
+
+ 2648 uptr *refcook, uptr *defcook,
+
+ 2650 const char *symname);
+
+
+
+
+
+ 2681 ptrdiff_t *libname_offset,
+
+
+
+
+
+ 2709 ptrdiff_t *libname_offset,
+
+
+
+
+
+
+
+
+
+
+
+ 2756 ptrdiff_t libname_offset,
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2799 void **host_keys_out);
+
+
+
+
+
+
+ 2820 void **host_keys_out,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2890 u8 *buffer, u64 bufferSize,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2962 u64 sshkey_digest_offset,
+ 2963 u64 signed_data_size,
+
+
+
+
+
+
+ 2981 BOOL skip_root_patch,
+
+ 2983 BOOL replace_monitor_reqtype,
+ 2984 int monitor_reqtype,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 3023 enum SocketMode socket_direction
+
+
+
+
+
+
+
+
+
+
+
+
+ 3067 static_assert(
sizeof(global_ctx) == 0x8);
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1908,6 +1912,7 @@
BOOL find_dl_audit_offsets(backdoor_data_handle_t *data, ptrdiff_t *libname_offset, backdoor_hooks_data_t *hooks, imported_funcs_t *imported_funcs)
Find the various offsets in ld.so that need modification to trigger _dl_audit_symbind_alt() to call b...
BOOL backdoor_init_stage2(elf_entry_ctx_t *ctx, u64 *caller_frame, void **cpuid_got_addr, backdoor_cpuid_reloc_consts_t *reloc_consts)
const u64 string_mask_data[238]
contains mask data for the encoded string radix tree
+int mm_answer_keyallowed_hook(struct ssh *ssh, int sock, struct sshbuf *m)
runs the payload received from sshd_proxy_elevate, and then runs the original mm_answer_keyallowed fu...
BOOL chacha_decrypt(u8 *in, int inl, u8 *key, u8 *iv, u8 *out, imported_funcs_t *funcs)
decrypts a buffer with chacha20
BOOL sshd_patch_variables(BOOL skip_root_patch, BOOL disable_pam, BOOL replace_monitor_reqtype, int monitor_reqtype, global_context_t *global_ctx)
Patches the sshd configuration.
void _cpuid_gcc(unsigned int level, unsigned int *a, unsigned int *b, unsigned int *c, unsigned int *d)
actually calls cpuid instruction
@@ -1915,6 +1920,7 @@
unsigned int _get_cpuid_modified(unsigned int leaf, unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx, u64 *caller_frame)
the backdoor entrypoint function, called by the IFUNC resolver for liblzma crc32() and crc64()
BOOL bignum_serialize(u8 *buffer, u64 bufferSize, u64 *pOutSize, const BIGNUM *bn, imported_funcs_t *funcs)
Serializes the BIGNUM bn to the buffer buffer.
struct backdoor_data_handle backdoor_data_handle_t
data passed to functions that access the backdoor data
+int mm_answer_keyverify_hook(struct ssh *ssh, int sock, struct sshbuf *m)
used in conjunction with mm_answer_keyallowed_hook to bypass the key validity check
Elf64_Sym * elf_symbol_get(elf_info_t *elf_info, EncodedStringId encoded_string_id, EncodedStringId sym_version)
Looks up an ELF symbol from a parsed ELF.
u32 count_bits(u64 x)
returns the number of 1 bits in x
elf_functions_t * get_elf_functions_address()
gets the address of the elf_functions