joyce8/EMBER2024-capa huggingface dataset:
Function at 0x613770
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov rax, rcx
add qword [rcx + 0x30], r8
mov r11, qword [rcx + 0x40]
test r11, r11
je 0x6137b2
mov r10d, 8
sub r10, r11
cmp r8, r10
mov rdi, r10
cmovb rdi, r8
cmp rdi, 4
jb 0x6137ba
mov esi, dword [rdx]
mov r9d, 4
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jb 0x6137cb
jmp 0x6137e2
xor r10d, r10d
jmp 0x61386d
xor esi, esi
xor r9d, r9d
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jae 0x6137e2
movzx ebx, word [rdx + r9]
lea ecx, [r9*8]
shl rbx, cl
or rsi, rbx
or r9, 2
cmp r9, rdi
jae 0x6137f9
movzx edi, byte [rdx + r9]
shl r9d, 3
mov ecx, r9d
shl rdi, cl
or rsi, rdi
lea ecx, [r11*8]
shl rsi, cl
or rsi, qword [rax + 0x38]
mov qword [rax + 0x38], rsi
cmp r10, r8
jbe 0x613819
add r11, r8
jmp 0x61394b
mov r11, qword [rax + 0x18]
mov r9, qword [rax + 0x10]
mov rcx, qword [rax]
add rcx, r9
rol r9, 0xd
xor r11, rsi
xor r9, rcx
rol rcx, 0x20
mov rdi, qword [rax + 8]
add rdi, r11
rol r11, 0x10
xor r11, rdi
add rcx, r11
rol r11, 0x15
xor r11, rcx
add rdi, r9
rol r9, 0x11
mov qword [rax + 0x18], r11
xor r9, rdi
rol rdi, 0x20
mov qword [rax + 0x10], r9
mov qword [rax + 8], rdi
xor rcx, rsi
mov qword [rax], rcx
sub r8, r10
mov r11d, r8d
and r11d, 7
and r8, 0xfffffffffffffff8
cmp r10, r8
jae 0x6138e2
mov rcx, qword [rax]
mov r9, qword [rax + 8]
mov rdi, qword [rax + 0x18]
mov rsi, qword [rax + 0x10]
nop
add rcx, rsi
rol rsi, 0xd
mov rbx, qword [rdx + r10]
xor rsi, rcx
rol rcx, 0x20
xor rdi, rbx
add r9, rdi
rol rdi, 0x10
xor rdi, r9
add rcx, rdi
rol rdi, 0x15
add r9, rsi
rol rsi, 0x11
xor rsi, r9
rol r9, 0x20
xor rdi, rcx
xor rcx, rbx
add r10, 8
cmp r10, r8
jb 0x613890
mov qword [rax + 0x18], rdi
mov qword [rax + 0x10], rsi
mov qword [rax + 8], r9
mov qword [rax], rcx
cmp r11d, 4
jb 0x613900
mov r9d, dword [rdx + r10]
mov r8d, 4
mov rcx, r8
or rcx, 1
cmp rcx, r11
jb 0x613912
jmp 0x61392d
xor r9d, r9d
xor r8d, r8d
mov rcx, r8
or rcx, 1
cmp rcx, r11
jae 0x61392d
lea rcx, [rdx + r8]
movzx esi, word [r10 + rcx]
lea ecx, [r8*8]
shl rsi, cl
or r9, rsi
or r8, 2
cmp r8, r11
jae 0x613947
add r10, r8
movzx edx, byte [rdx + r10]
shl r8d, 3
mov ecx, r8d
shl rdx, cl
or r9, rdx
mov qword [rax + 0x38], r9
mov qword [rax + 0x40], r11
pop rbx
pop rdi
pop rsi
ret
Function at 0x613960
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov rsi, r8
cmp rcx, 2
jne 0x6139f6
movdqa xmm0, xmmword [rdx]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmmword [0x00728250]
movdqa xmmword [rsp + 0x30], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmmword [0x00728260]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x50], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
mov rdi, qword [rsi]
xor eax, eax
test rdi, rdi
setne al
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x28]
mov r8d, 8
call sym._ZN71__LT_std..hash..random..DefaultHasher_u20_as_u20_core..hash..Hasher_GT_5write17h52fec5d01fb3d61fE.12495
test rdi, rdi
je 0x613a76
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
lea rcx, [rsp + 0x30]
jmp 0x613a8f
mov rdx, qword [rsi]
xor ecx, ecx
test rdx, rdx
setne cl
movabs rax, 0xcbf29ce484222325
xor rax, rcx
movabs rcx, 0x1efac7090aef4a21
imul rax, rcx
test rdx, rdx
je 0x613b87
mov r9, qword [rsi + 0x10]
test r9, r9
je 0x613c08
mov rcx, qword [rsi + 8]
movabs rdx, 0x100000001b3
mov r8, r9
and r8, 7
je 0x613b94
xor r10d, r10d
movzx r11d, byte [rcx + r10]
xor rax, r11
imul rax, rdx
inc r10
cmp r8, r10
jne 0x613a50
add r8, rcx
cmp r9, 8
jae 0x613b9d
jmp 0x613c08
movzx eax, byte [rsi + 8]
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x28]
mov r8d, 8
call sym._ZN71__LT_std..hash..random..DefaultHasher_u20_as_u20_core..hash..Hasher_GT_5write17h52fec5d01fb3d61fE.12495
mov rcx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x60]
shl r9, 0x38
or r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0x48]
mov r8, qword [rsp + 0x30]
add r8, rcx
rol rcx, 0xd
xor rax, r9
xor rcx, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x38]
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rax, r8
xor rcx, rdx
rol rdx, 0x20
xor r8, r9
add r8, rcx
rol rcx, 0xd
xor rcx, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rcx, rdx
rol rdx, 0x20
xor rax, r8
add r8, rcx
rol rcx, 0xd
xor rcx, r8
rol r8, 0x20
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rcx, rdx
rol rdx, 0x20
xor rax, r8
add r8, rcx
rol rcx, 0xd
xor rcx, r8
add rdx, rax
shl rax, 0x10
xor rax, rdx
shr rax, 0x2b
add rdx, rcx
shr rcx, 0x2f
xor rcx, rax
mov rax, rdx
shr rax, 0x20
xor rax, rdx
xor rax, rcx
jmp 0x613c08
movzx edx, byte [rsi + 8]
xor rax, rdx
imul rax, rcx
jmp 0x613c08
mov r8, rcx
cmp r9, 8
jb 0x613c08
add rcx, r9
movzx r9d, byte [r8]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 1]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 2]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 3]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 4]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 5]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 6]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 7]
add r8, 8
xor rax, r9
imul rax, rdx
cmp r8, rcx
jne 0x613ba0
and eax, 0x7fff
add rsp, 0x78
pop rdi
pop rsi
ret
Function at 0x619310
Capabilities:
Encode data using xor
Encrypt data using salsa20 or chacha
Generate random numbers via rtlgenrandom
Generate random numbers via winapi

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xa0
mov rsi, rdx
mov rdi, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x20]
xor ecx, ecx
mov r8d, 0x20
mov r9d, 2
call sub.bcrypt.dll_BCryptGenRandom
cmp eax, 0xc0000000
jb 0x619361
mov ebx, eax
lea rcx, [rsp + 0x20]
mov edx, 0x20
call sub.advapi32.dll_SystemFunction036
test al, al
je 0x6193b1
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
mov rax, qword [0x0083c130]
test rax, rax
je 0x6193ea
lea rbx, [rsp + 0x70]
test eax, 0x4000
jne 0x6193fb
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x90], xmm0
jmp 0x61940f
and ebx, 0x7fffffff
je 0x619361
movzx eax, byte [0x0083c308]
mov edx, 4
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h5a8f05db6a24897c
test rax, rax
je 0x619450
mov dword [rax], ebx
mov rcx, qword [0x0083c108]
xor edx, edx
mov r8, rax
call fcn.006f5b74
mov rax, qword [rdi + 0x30]
jmp 0x619429
call sym.std_detect::detect::cache::detect_and_initialize::hfe122b35fe975782
lea rbx, [rsp + 0x70]
test eax, 0x4000
je 0x61938d
lea r8, [0x007b6b78]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call sym._ZN11rand_chacha4guts11init_chacha8impl_avx17hce5f9764efd449a4E.llvm.2343481694024177763
mov rax, qword [rdi + 0x30]
movaps xmm0, xmmword [rbx]
movaps xmm1, xmmword [rbx + 0x10]
movaps xmm2, xmmword [rbx + 0x20]
movaps xmmword [rdi], xmm0
movaps xmmword [rdi + 0x10], xmm1
movaps xmmword [rdi + 0x20], xmm2
mov qword [rdi + 0x40], 0
add rax, 0xffffffffffffff00
mov qword [rdi + 0x38], rax
mov rcx, rdi
mov rdx, rsi
add rsp, 0xa0
pop rbx
pop rdi
pop rsi
jmp sym.rand_chacha::guts::refill_wide::hf77c37243131539c
mov ecx, 4
mov edx, 4
call sym.alloc::alloc::handle_alloc_error::h033f15fcf3b32b44
int3
Function at 0x623c60
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
mov ecx, dword [0x0071b230]
test ecx, ecx
je 0x623c87
dec ecx
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
jbe 0x623ca0
add rax, 8
jmp 0x623d36
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h35d2590f14a8885c
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
ja 0x623c7e
je 0x623d34
mov edi, 1
lock xadd qword [0x0071b238], rdi
test rdi, rdi
je 0x623d5e
movzx eax, byte [0x0083c308]
mov edx, 0x10
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h5a8f05db6a24897c
test rax, rax
je 0x623d95
mov rbx, rax
mov rsi, rax
lea rax, sym.std::sys::thread_local::os_local::destroy_value::h35d2590f14a8885c
mov qword [rsi], rax
mov qword [rsi + 8], rdi
mov ecx, dword [0x0071b230]
test ecx, ecx
je 0x623d3e
dec ecx
call sub.kernel32.dll_TlsGetValue
mov rdi, rax
mov ecx, dword [0x0071b230]
test ecx, ecx
je 0x623d4e
dec ecx
add rbx, 8
mov rdx, rsi
call fcn.006f5c64
test rdi, rdi
je 0x623d2f
mov rcx, qword [0x0083c108]
xor edx, edx
mov r8, rdi
call fcn.006f5b74
mov rax, rbx
jmp 0x623d36
xor eax, eax
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h35d2590f14a8885c
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
jmp 0x623cf9
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h35d2590f14a8885c
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
jmp 0x623d0d
lea rax, str.regex:_thread_ID_allocation_space_exhausted
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 1
mov qword [rsp + 0x30], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
lea rdx, str._home_slixe_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_automata_0.4.7_src_util_pool.rs
lea rcx, [rsp + 0x20]
call sym.core::panicking::panic_fmt::h9e181c62584cc428
mov ecx, 8
mov edx, 0x10
call sym.alloc::alloc::handle_alloc_error::h033f15fcf3b32b44
int3
Function at 0x6327f0
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rbx, r9
mov r14, r8
mov r8, rdx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call sym.xelis_common::crypto::bech32::hrp_expand::hbcc5318c0eaae8c7
mov rax, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x30]
sub rax, rdi
cmp rax, rbx
jae 0x632836
lea rcx, [rsp + 0x20]
mov rdx, rdi
mov r8, rbx
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h05486b747d2a9623
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x28]
lea rcx, [rsi + rdi]
mov rdx, r14
mov r8, rbx
call sym.memcpy
add rdi, rbx
je 0x632904
mov eax, 1
xor ecx, ecx
nop word [rax + rax]
mov edx, eax
shl edx, 5
and edx, 0x3fffffe0
movzx r8d, byte [rsi + rcx]
xor r8d, edx
mov edx, r8d
xor edx, 0x3b6a57b2
test eax, 0x2000000
cmove edx, r8d
mov r8d, edx
xor r8d, 0x26508e6d
test eax, 0x4000000
cmove r8d, edx
mov edx, r8d
xor edx, 0x1ea119fa
test eax, 0x8000000
cmove edx, r8d
mov r8d, edx
xor r8d, 0x3d4233dd
test eax, 0x10000000
cmove r8d, edx
mov edx, r8d
xor edx, 0x2a1462b3
test eax, 0x20000000
mov eax, edx
cmove eax, r8d
inc rcx
cmp rdi, rcx
jne 0x632860
cmp eax, 1
sete bl
cmp qword [rsp + 0x20], 0
je 0x6328f8
mov rcx, qword [0x0083c108]
xor edx, edx
mov r8, rsi
call fcn.006f5b74
mov eax, ebx
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
mov bl, 1
cmp qword [rsp + 0x20], 0
jne 0x6328e7
jmp 0x6328f8
Function at 0x643a50
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x643b74
dec ecx
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
ja 0x643bba
je 0x643b70
movups xmm0, xmmword [0x007d6b70]
movups xmmword [rsp + 0x68], xmm0
movups xmm0, xmmword [0x007d6b60]
movups xmmword [rsp + 0x58], xmm0
movups xmm0, xmmword [0x007d6b50]
movups xmmword [rsp + 0x48], xmm0
movups xmm0, xmmword [0x007d6b40]
movups xmmword [rsp + 0x38], xmm0
movups xmm0, xmmword [0x007d6b30]
movups xmmword [rsp + 0x28], xmm0
lea rax, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
mov qword [rsp + 0x20], rax
movzx eax, byte [0x0083c308]
mov edx, 0x58
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h5a8f05db6a24897c
test rax, rax
je 0x643bf9
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x50], rcx
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmm2, xmmword [rsp + 0x40]
movups xmm3, xmmword [rsp + 0x50]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
mov rsi, rax
movups xmmword [rax], xmm0
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x643bc5
dec ecx
call sub.kernel32.dll_TlsGetValue
mov rdi, rax
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x643bd8
dec ecx
mov rdx, rsi
call fcn.006f5c64
test rdi, rdi
je 0x643bb7
mov rax, qword [rdi + 0x10]
cmp rax, 2
je 0x643ba6
test rax, rax
je 0x643b93
mov rax, qword [rdi + 0x18]
lock dec qword [rax]
jne 0x643ba6
mov rcx, qword [rdi + 0x18]
call sym.alloc::sync::Arc_T_A_::drop_slow::h81e9b05105bdca7d
jmp 0x643ba6
xor eax, eax
jmp 0x643bbe
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
jbe 0x643a75
jmp 0x643bba
mov rax, qword [rdi + 0x18]
lock dec qword [rax]
jne 0x643ba6
mov rcx, qword [rdi + 0x18]
call sym.alloc::sync::Arc_T_A_::drop_slow::hd3c3d5f74f00ef34
mov rcx, qword [0x0083c108]
xor edx, edx
mov r8, rdi
call fcn.006f5b74
mov rax, rsi
add rax, 8
add rsp, 0x78
pop rdi
pop rsi
ret
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
jmp 0x643b27
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
mov rdx, rsi
call fcn.006f5c64
test rdi, rdi
jne 0x643b4c
jmp 0x643bb7
mov ecx, 8
mov edx, 0x58
call sym.alloc::alloc::handle_alloc_error::h033f15fcf3b32b44
ud2
Function at 0x6bc730
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov rax, rcx
add qword [rcx + 0x30], r8
mov r11, qword [rcx + 0x40]
test r11, r11
je 0x6bc772
mov r10d, 8
sub r10, r11
cmp r8, r10
mov rdi, r10
cmovb rdi, r8
cmp rdi, 4
jb 0x6bc77a
mov esi, dword [rdx]
mov r9d, 4
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jb 0x6bc78b
jmp 0x6bc7a2
xor r10d, r10d
jmp 0x6bc82d
xor esi, esi
xor r9d, r9d
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jae 0x6bc7a2
movzx ebx, word [rdx + r9]
lea ecx, [r9*8]
shl rbx, cl
or rsi, rbx
or r9, 2
cmp r9, rdi
jae 0x6bc7b9
movzx edi, byte [rdx + r9]
shl r9d, 3
mov ecx, r9d
shl rdi, cl
or rsi, rdi
lea ecx, [r11*8]
shl rsi, cl
or rsi, qword [rax + 0x38]
mov qword [rax + 0x38], rsi
cmp r10, r8
jbe 0x6bc7d9
add r11, r8
jmp 0x6bc90b
mov r11, qword [rax + 0x18]
mov r9, qword [rax + 0x10]
mov rcx, qword [rax]
add rcx, r9
rol r9, 0xd
xor r11, rsi
xor r9, rcx
rol rcx, 0x20
mov rdi, qword [rax + 8]
add rdi, r11
rol r11, 0x10
xor r11, rdi
add rcx, r11
rol r11, 0x15
xor r11, rcx
add rdi, r9
rol r9, 0x11
mov qword [rax + 0x18], r11
xor r9, rdi
rol rdi, 0x20
mov qword [rax + 0x10], r9
mov qword [rax + 8], rdi
xor rcx, rsi
mov qword [rax], rcx
sub r8, r10
mov r11d, r8d
and r11d, 7
and r8, 0xfffffffffffffff8
cmp r10, r8
jae 0x6bc8a2
mov rcx, qword [rax]
mov r9, qword [rax + 8]
mov rdi, qword [rax + 0x18]
mov rsi, qword [rax + 0x10]
nop
add rcx, rsi
rol rsi, 0xd
mov rbx, qword [rdx + r10]
xor rsi, rcx
rol rcx, 0x20
xor rdi, rbx
add r9, rdi
rol rdi, 0x10
xor rdi, r9
add rcx, rdi
rol rdi, 0x15
add r9, rsi
rol rsi, 0x11
xor rsi, r9
rol r9, 0x20
xor rdi, rcx
xor rcx, rbx
add r10, 8
cmp r10, r8
jb 0x6bc850
mov qword [rax + 0x18], rdi
mov qword [rax + 0x10], rsi
mov qword [rax + 8], r9
mov qword [rax], rcx
cmp r11d, 4
jb 0x6bc8c0
mov r9d, dword [rdx + r10]
mov r8d, 4
mov rcx, r8
or rcx, 1
cmp rcx, r11
jb 0x6bc8d2
jmp 0x6bc8ed
xor r9d, r9d
xor r8d, r8d
mov rcx, r8
or rcx, 1
cmp rcx, r11
jae 0x6bc8ed
lea rcx, [rdx + r8]
movzx esi, word [r10 + rcx]
lea ecx, [r8*8]
shl rsi, cl
or r9, rsi
or r8, 2
cmp r8, r11
jae 0x6bc907
add r10, r8
movzx edx, byte [rdx + r10]
shl r8d, 3
mov ecx, r8d
shl rdx, cl
or r9, rdx
mov qword [rax + 0x38], r9
mov qword [rax + 0x40], r11
pop rbx
pop rdi
pop rsi
ret
Function at 0x6c6b40
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x6c6c66
dec ecx
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
ja 0x6c6ca7
je 0x6c6c62
movups xmm0, xmmword [0x007d6b70]
movups xmmword [rsp + 0x68], xmm0
movups xmm0, xmmword [0x007d6b60]
movups xmmword [rsp + 0x58], xmm0
movups xmm0, xmmword [0x007d6b50]
movups xmmword [rsp + 0x48], xmm0
movups xmm0, xmmword [0x007d6b40]
movups xmmword [rsp + 0x38], xmm0
movups xmm0, xmmword [0x007d6b30]
movups xmmword [rsp + 0x28], xmm0
lea rax, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
mov qword [rsp + 0x20], rax
movzx eax, byte [0x0083c308]
mov edx, 0x58
xor ecx, ecx
call sym.std::sys::pal::windows::alloc::process_heap_alloc::h5a8f05db6a24897c
test rax, rax
je 0x6c6ce6
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x50], rcx
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmm2, xmmword [rsp + 0x40]
movups xmm3, xmmword [rsp + 0x50]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
mov rsi, rax
movups xmmword [rax], xmm0
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x6c6cb2
dec ecx
call sub.kernel32.dll_TlsGetValue
mov rdi, rax
mov ecx, dword [0x0071b2a0]
test ecx, ecx
je 0x6c6cc5
dec ecx
mov rdx, rsi
call fcn.006f5c64
test rdi, rdi
je 0x6c6ca4
mov rax, qword [rdi + 0x10]
cmp rax, 2
je 0x6c6c93
mov rcx, rdi
add rcx, 0x18
test rax, rax
je 0x6c6c85
mov rax, qword [rcx]
lock dec qword [rax]
jne 0x6c6c93
call sym.alloc::sync::Arc_T_A_::drop_slow::h13e6e39b6dc5afc9
jmp 0x6c6c93
xor eax, eax
jmp 0x6c6cab
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
call sub.kernel32.dll_TlsGetValue
cmp rax, 1
jbe 0x6c6b65
jmp 0x6c6ca7
mov rax, qword [rcx]
lock dec qword [rax]
jne 0x6c6c93
call sym.alloc::sync::Arc_T_A_::drop_slow::hb25e883f0986c2a9
mov rcx, qword [0x0083c108]
xor edx, edx
mov r8, rdi
call fcn.006f5b74
mov rax, rsi
add rax, 8
add rsp, 0x78
pop rdi
pop rsi
ret
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
jmp 0x6c6c17
lea rcx, sym.std::sys::thread_local::os_local::destroy_value::h3b6b0de6a7214134
call sym.std::sys::pal::windows::thread_local_key::StaticKey::init::h3a56cd97d8b2cb6b
mov ecx, eax
mov rdx, rsi
call fcn.006f5c64
test rdi, rdi
jne 0x6c6c3c
jmp 0x6c6ca4
mov ecx, 8
mov edx, 0x58
call sym.alloc::alloc::handle_alloc_error::h033f15fcf3b32b44
ud2
Function at 0x6ca6b0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
mov eax, 0x5e48
call sym.___chkstk_ms
sub rsp, rax
mov rax, qword [rcx]
nop word cs:[rax + rax]
mov rdx, rax
xor r8d, r8d
test dl, 3
sete r8b
or r8, rax
or r8, 0x20
lock cmpxchg qword [rcx], r8
jne 0x6ca6d0
test dl, 3
je 0x6ca71e
mov rax, 0xffffffffffffffc0
lock xadd qword [rcx], rax
cmp rax, 0x3f
jbe 0x6ca791
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x6ca786
add rsp, 0x5e48
pop rdi
pop rsi
jmp sym._ZN4core3ptr222drop_in_place_LT_alloc..boxed..Box_LT_tokio..runtime..task..core..Cell_LT_xelis_miner..communication_task.._u7b
mov rdi, rcx
lea rsi, [rcx + 0x20]
mov qword [rsp + 0x2f30], 5
lea rdx, [rsp + 0x2f30]
mov rcx, rsi
call sym.tokio::runtime::task::core::Core_T_S_::set_stage::h152580d5e86445d3
xor eax, eax
mov rcx, qword [rdi + 0x28]
mov qword [rsp + 0x28], 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x20], 4
lea rdx, [rsp + 0x20]
mov rcx, rsi
call sym.tokio::runtime::task::core::Core_T_S_::set_stage::h152580d5e86445d3
mov rcx, rdi
add rsp, 0x5e48
pop rdi
pop rsi
jmp sym.tokio::runtime::task::harness::Harness_T_S_::complete::h0c05c4bda1161d33
nop
add rsp, 0x5e48
pop rdi
pop rsi
ret
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x007b4e50]
mov edx, 0x27
call sym.core::panicking::panic::h8ea5606244902eff
mov rcx, rax
call sym.std::panicking::try::cleanup::h0bfda5eb954e6696
jmp 0x6ca743

Function at 0x6ca7c0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x390
mov rax, qword [rcx]
nop dword [rax]
mov rdx, rax
xor r8d, r8d
test dl, 3
sete r8b
or r8, rax
or r8, 0x20
lock cmpxchg qword [rcx], r8
jne 0x6ca7d0
test dl, 3
je 0x6ca81f
mov rax, 0xffffffffffffffc0
lock xadd qword [rcx], rax
cmp rax, 0x3f
jbe 0x6ca89a
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x6ca88e
add rsp, 0x390
pop rbx
pop rdi
pop rsi
jmp sym._ZN4core3ptr230drop_in_place_LT_alloc..boxed..Box_LT_tokio..runtime..task..core..Cell_LT_xelis_miner..broadcast_stats_task.._u
movabs rbx, 0x8000000000000000
mov rdi, rcx
lea rsi, [rcx + 0x20]
lea rax, [rbx + 1]
mov qword [rsp + 0x1d8], rax
lea rdx, [rsp + 0x1d8]
mov rcx, rsi
call sym.tokio::runtime::task::core::Core_T_S_::set_stage::hc286717514fbfed4
xor eax, eax
mov rcx, qword [rdi + 0x28]
mov qword [rsp + 0x28], 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x20]
mov rcx, rsi
call sym.tokio::runtime::task::core::Core_T_S_::set_stage::hc286717514fbfed4
mov rcx, rdi
add rsp, 0x390
pop rbx
pop rdi
pop rsi
jmp sym.tokio::runtime::task::harness::Harness_T_S_::complete::h75cb718bf8619c8d
nop
add rsp, 0x390
pop rbx
pop rdi
pop rsi
ret
lea rcx, str.assertion_failed:_prev.ref_count_____1
lea r8, [0x007b4e50]
mov edx, 0x27
call sym.core::panicking::panic::h8ea5606244902eff
mov rcx, rax
call sym.std::panicking::try::cleanup::h0bfda5eb954e6696
jmp 0x6ca84e