joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400821e0
Capabilities:
Hash data using fnv

Disassembly:
mov dword [rsp + 0x10], edx
sub rsp, 0x48
cmp byte [rcx + 0x48], 0
mov r10, rcx
mov r9d, edx
je 0x140082290
movabs rcx, 0x100000001b3
movzx edx, r9b
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movzx eax, byte [rsp + 0x59]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x5a]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x5b]
imul rdx, rcx
xor rdx, rax
imul rdx, rcx
mov rcx, qword [r10 + 0x30]
and rcx, rdx
mov rdx, qword [r10 + 8]
shl rcx, 4
add rcx, qword [r10 + 0x18]
mov rax, qword [rcx + 8]
cmp rax, rdx
je 0x140082289
mov rcx, qword [rcx]
cmp r9d, dword [rax + 0x10]
je 0x14008226f
cmp rax, rcx
je 0x140082289
mov rax, qword [rax + 8]
cmp r9d, dword [rax + 0x10]
jne 0x140082260
test rax, rax
cmove rax, rdx
cmp rax, rdx
je 0x140082289
mov rcx, qword [rax + 0x18]
mov al, 1
mov qword [r8], rcx
add rsp, 0x48
ret
xor al, al
add rsp, 0x48
ret
lea rdx, str.Generated_transactions_index_disabled.
lea rcx, [rsp + 0x20]
call fcn.14000b2a0
lea rdx, [0x1401ddf08]
lea rcx, [rsp + 0x20]
call fcn.140148aa8
int3
Function at 0x140082e50
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
mov rsi, rcx
cmp byte [rcx + 0x48], 0
je 0x140083048
mov rcx, qword [rdx + 0x108]
test rcx, rcx
je 0x14008305d
lea rdx, [rsp + 0x60]
call fcn.14004f0a0
test rax, rax
je 0x14008305d
mov edi, dword [rax]
mov rax, qword [rsi + 0x10]
dec rax
cmp rdi, rax
jne 0x140083048
movzx edx, dil
movabs r14, 0xcbf29ce484222325
xor rdx, r14
movabs rbp, 0x100000001b3
imul rdx, rbp
mov eax, edi
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, edi
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, edi
shr rax, 0x18
xor rdx, rax
imul rdx, rbp
mov r9, qword [rsi + 0x30]
mov rax, r9
and rax, rdx
mov r10, qword [rsi + 0x18]
add rax, rax
mov rcx, qword [r10 + rax*8 + 8]
mov r8, qword [rsi + 8]
xor ebx, ebx
cmp rcx, r8
je 0x140082f28
mov rax, qword [r10 + rax*8]
cmp edi, dword [rcx + 0x10]
je 0x140082f2b
cmp rcx, rax
je 0x140082f28
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x140082f18
jmp 0x140082f2b
mov rcx, rbx
test rcx, rcx
cmove rcx, r8
movzx edx, byte [rcx + 0x10]
xor rdx, r14
imul rdx, rbp
movzx eax, byte [rcx + 0x11]
xor rdx, rax
imul rdx, rbp
movzx eax, byte [rcx + 0x12]
xor rdx, rax
imul rdx, rbp
movzx eax, byte [rcx + 0x13]
xor rdx, rax
imul rdx, rbp
and rdx, r9
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp qword [r10 + rdx*8 + 8], rcx
jne 0x140082f8a
cmp rax, rcx
jne 0x140082f7f
mov qword [r10 + rdx*8], r8
mov qword [r10 + rdx*8 + 8], r8
jmp 0x140082f96
mov r8, qword [rcx + 8]
mov qword [r10 + rdx*8 + 8], r8
jmp 0x140082f96
cmp rax, rcx
jne 0x140082f96
mov rax, qword [rcx]
mov qword [r10 + rdx*8], rax
mov rdx, qword [rcx]
dec qword [rsi + 0x10]
mov rax, qword [rcx + 8]
mov qword [rax], rdx
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov edx, 0x20
call fcn.14014765c
test edi, edi
je 0x140083040
lea r8d, [rdi - 1]
mov r9d, r8d
movzx edx, r8b
xor rdx, r14
imul rdx, rbp
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, rbp
mov rcx, qword [rsi + 0x30]
and rcx, rdx
shl rcx, 4
add rcx, qword [rsi + 0x18]
mov rax, qword [rcx + 8]
mov rdx, qword [rsi + 8]
cmp rax, rdx
je 0x140083035
mov rcx, qword [rcx]
cmp r9d, dword [rax + 0x10]
je 0x140083032
cmp rax, rcx
je 0x140083035
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x140083023
mov rbx, rax
test rbx, rbx
cmove rbx, rdx
mov rbx, qword [rbx + 0x18]
mov qword [rsi + 0x40], rbx
mov al, 1
jmp 0x14008304a
xor al, al
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x20]
call fcn.1400416f0
nop
mov rcx, rax
call fcn.140041160
int3
Function at 0x140083080
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rbx, rdx
mov rsi, rcx
cmp byte [rcx + 0x40], 0
je 0x1400831c0
lea rcx, [rsp + 0x40]
call fcn.1400511b0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov rcx, qword [rbx + 0x108]
test rcx, rcx
je 0x14008326e
lea rdx, [rsp + 0x90]
call fcn.14004f0a0
test rax, rax
je 0x14008326e
mov r8d, dword [rax]
movzx edx, r8b
movabs r13, 0xcbf29ce484222325
xor rdx, r13
movabs r12, 0x100000001b3
imul rdx, r12
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r12
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r12
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r12
mov r14, qword [rsi + 0x30]
mov rax, r14
and rax, rdx
mov r15, qword [rsi + 0x18]
add rax, rax
mov rbx, qword [r15 + rax*8]
mov rbp, qword [rsi + 8]
cmp rbx, rbp
je 0x1400831c0
mov rax, qword [r15 + rax*8 + 8]
cmp dword [rbx + 0x10], r8d
je 0x140083174
cmp rbx, rax
je 0x1400831c0
mov rbx, qword [rbx]
cmp dword [rbx + 0x10], r8d
jne 0x140083166
mov rdi, qword [rbx]
cmp rbx, rax
je 0x140083191
nop dword [rax]
mov rcx, rdi
cmp r8d, dword [rdi + 0x10]
jne 0x140083191
mov rdi, qword [rdi]
cmp rcx, rax
jne 0x140083180
cmp rbx, rdi
je 0x1400831c0
nop word [rax + rax]
lea rcx, [rbx + 0x14]
mov r8d, 0x20
lea rdx, [rsp + 0x20]
call fcn.140149870
test eax, eax
je 0x1400831e0
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x1400831a0
xor al, al
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
movzx ecx, byte [rbx + 0x10]
xor rcx, r13
imul rcx, r12
movzx eax, byte [rbx + 0x11]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbx + 0x12]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbx + 0x13]
xor rcx, rax
imul rcx, r12
and r14, rcx
add r14, r14
mov rax, qword [r15 + r14*8]
cmp qword [r15 + r14*8 + 8], rbx
jne 0x140083238
cmp rax, rbx
jne 0x14008322d
mov qword [r15 + r14*8], rbp
mov qword [r15 + r14*8 + 8], rbp
jmp 0x140083244
mov rbp, qword [rbx + 8]
mov qword [r15 + r14*8 + 8], rbp
jmp 0x140083244
cmp rax, rbx
jne 0x140083244
mov rax, qword [rbx]
mov qword [r15 + r14*8], rax
mov rcx, qword [rbx]
dec qword [rsi + 0x10]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
mov edx, 0x38
mov rcx, rbx
call fcn.14014765c
mov al, 1
jmp 0x1400831c2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x20]
call fcn.1400416f0
nop
mov rcx, rax
call fcn.140041160
int3
Function at 0x140092f40
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
xor r9d, r9d
lea rbx, [r8 + 0x10]
mov rdi, r8
mov r14, rdx
mov rsi, rcx
mov r10d, r9d
mov r11, r8
cmp r8, rbx
je 0x140092fa6
mov edx, 0x9e3779b9
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r11]
mov r8, r10
mov rax, r10
shl r8, 6
shr rax, 2
inc r11
add rax, r8
add rax, rdx
add rcx, rax
xor r10, rcx
cmp r11, rbx
jne 0x140092f80
mov rdx, qword [rsi + 0x30]
mov rax, qword [rsi + 0x18]
and rdx, r10
mov r8, qword [rsi + 8]
add rdx, rdx
mov rcx, qword [rax + rdx*8 + 8]
cmp rcx, r8
je 0x140093000
movdqu xmm1, xmmword [rdi]
mov rdx, qword [rax + rdx*8]
movdqu xmm0, xmmword [rcx + 0x10]
pcmpeqd xmm0, xmm1
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x140092ffd
nop
cmp rcx, rdx
je 0x140093000
mov rcx, qword [rcx + 8]
movdqu xmm0, xmmword [rcx + 0x10]
pcmpeqd xmm0, xmm1
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x140092fe0
mov r9, rcx
mov rbx, qword [rsp + 8]
test r9, r9
mov rsi, qword [rsp + 0x10]
mov rax, r14
mov rdi, qword [rsp + 0x18]
cmove r9, r8
mov qword [r14], r9
mov r14, qword [rsp + 0x20]
ret

Function at 0x140097110
Capabilities:
Generate random numbers via winapi

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0xa0
mov rbx, rdx
xor r9d, r9d
lea r8d, [r9 + 0x10]
lea rdx, [rsp + 0x30]
mov rcx, qword [rcx]
call sub.bcrypt.dll_BCryptGenRandom
movsxd rdi, eax
test eax, eax
jne 0x140097171
movzx eax, byte [rsp + 0x38]
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x38], al
movzx eax, byte [rsp + 0x36]
and al, 0xf
or al, 0x40
mov byte [rsp + 0x36], al
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbx], xmm0
mov rax, rbx
mov rbx, qword [rsp + 0xb0]
add rsp, 0xa0
pop rdi
ret
lea rdx, [0x140192328]
lea rcx, [rsp + 0x58]
call fcn.140009190
nop
mov rdx, rdi
lea r8, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.1400958e0
mov rbx, rax
mov dword [rsp + 0x20], reloc.WS2_32.dll_listen
lea r9, str.get_random_bytes
mov r8d, 0x58
lea rdx, str.C:local_vcpkginstalledx64_windowsinclude_boost_uuid_detail_random_provider_bcrypt.ipp
lea rcx, [rsp + 0x40]
call fcn.140095960
mov rdx, rax
mov rcx, rbx
call fcn.140094b70
int3
Function at 0x140097e30
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rdi
sub rsp, 0x28
movabs rax, 0xfffffffffffffff
mov rbp, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x140098014
lea rax, [rdx - 1]
mov qword [rsp + 0x40], rbx
mov rbx, qword [rbp + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x50], r14
inc ecx
shl rdi, cl
lea rcx, [rbp + 0x18]
lea rdx, [rdi + rdi]
call fcn.140043750
mov rcx, qword [rbp + 8]
lea rax, [rdi - 1]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rdi
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x140097fdd
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x20], r15
mov r15d, 0x9e3779b9
nop dword [rax + rax]
mov rdx, qword [rdx]
lea rsi, [rcx + 0x10]
xor r10d, r10d
lea rdi, [rcx + 0x20]
mov r11, rsi
cmp rsi, rdi
je 0x140097f06
nop word [rax + rax]
movzx r8d, byte [r11]
mov r9, r10
mov rax, r10
shl r9, 6
shr rax, 2
inc r11
add rax, r9
add rax, r15
add r8, rax
xor r10, r8
cmp r11, rdi
jne 0x140097ee0
mov r11, qword [rbp + 0x30]
and r11, r10
shl r11, 4
add r11, qword [rbp + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140097f29
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x140097fc7
mov rax, qword [r11 + 8]
movdqu xmm1, xmmword [rsi]
movdqu xmm0, xmmword [rax + 0x10]
pcmpeqd xmm0, xmm1
pmovmskb r8d, xmm0
cmp r8d, 0xffff
jne 0x140097f77
mov r10, qword [rax]
cmp r10, rcx
je 0x140097f71
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11 + 8], rcx
jmp 0x140097fc7
mov r10, rax
cmp r9, rax
je 0x140097fa3
nop
mov rax, qword [rax + 8]
mov r10, rax
movdqu xmm0, xmmword [rax + 0x10]
pcmpeqd xmm0, xmm1
pmovmskb r8d, xmm0
cmp r8d, 0xffff
je 0x140097fee
cmp r9, rax
jne 0x140097f80
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x140097ec0
mov r15, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x50]
add rsp, 0x28
pop rdi
pop rbp
ret
mov r10, qword [rax]
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
jmp 0x140097fc7
lea rcx, str.invalid_hash_bucket_count
call fcn.140122e90
int3
Function at 0x14009a5b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x10], rdx
push rsi
push rdi
push r14
sub rsp, 0x40
mov rbp, rdx
mov r14, rcx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], 0
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x14009a605
movabs rax, 0xfffffffffffffff
cmp rdx, rax
ja 0x14009a7ca
lea rcx, [rsp + 0x20]
call fcn.140098030
mov rsi, qword [r14 + 0x10]
mov rbx, qword [rsi]
mov rdi, qword [rsp + 0x28]
cmp rbx, rsi
je 0x14009a65f
nop word [rax + rax]
lea r8, [rbx + 0x10]
cmp rdi, qword [rsp + 0x30]
je 0x14009a642
movups xmm0, xmmword [r8]
movups xmmword [rdi], xmm0
mov rdi, qword [rsp + 0x28]
add rdi, 0x10
mov qword [rsp + 0x28], rdi
jmp 0x14009a654
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.140092350
mov rdi, qword [rsp + 0x28]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
jne 0x14009a620
mov r8, qword [rsp + 0x20]
cmp r8, rdi
je 0x14009a748
mov esi, 0x9e3779b9
nop dword [rax]
nop word [rax + rax]
xor r9d, r9d
mov r10, r8
lea rbx, [r8 + 0x10]
cmp r8, rbx
je 0x14009a6b6
nop
mov rdx, r9
shl rdx, 6
mov rax, r9
shr rax, 2
add rax, rdx
movzx ecx, byte [r10]
add rax, rsi
add rcx, rax
xor r9, rcx
inc r10
cmp r10, rbx
jne 0x14009a690
mov rcx, qword [r14 + 0x38]
and rcx, r9
add rcx, rcx
mov rax, qword [r14 + 0x20]
mov rdx, qword [rax + rcx*8 + 8]
mov r9, qword [r14 + 0x10]
cmp rdx, r9
je 0x14009a737
mov rcx, qword [rax + rcx*8]
movdqu xmm2, xmmword [r8]
movdqu xmm0, xmmword [rdx + 0x10]
movdqa xmm1, xmm2
pcmpeqd xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x14009a714
cmp rdx, rcx
je 0x14009a737
mov rdx, qword [rdx + 8]
movdqu xmm0, xmmword [rdx + 0x10]
movdqa xmm1, xmm2
pcmpeqd xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14009a6f3
test rdx, rdx
cmove rdx, r9
cmp rdx, r9
je 0x14009a737
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x14009a7c4
mov rax, qword [rcx]
add rdx, 0x20
call qword [rax + reloc.WS2_32.dll_recv]
mov r8, rbx
cmp rbx, rdi
jne 0x14009a680
mov r8, qword [rsp + 0x20]
test r8, r8
je 0x14009a794
mov rdx, qword [rsp + 0x30]
sub rdx, r8
and rdx, 0xfffffffffffffff0
mov rax, r8
cmp rdx, 0x1000
jb 0x14009a77a
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a7d0
mov rcx, r8
call fcn.14014765c
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], 0
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x14009a7b1
mov rax, qword [rcx]
cmp rcx, rbp
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x38], 0
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
call fcn.140122e4c
nop
call fcn.140013400
nop
call fcn.14014df3c
int3
Function at 0x1400a50d0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov ebx, 1
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x1400a52b3
lea rax, [rdx - 1]
mov qword [rsp + 0x38], rdi
mov rdi, qword [rsi + 8]
or rax, rbx
bsr rcx, rax
mov r8, rdi
mov qword [rsp + 0x40], r14
inc ecx
shl rbx, cl
lea rcx, [rsi + 0x18]
lea rdx, [rbx + rbx]
call fcn.140043750
mov rdx, qword [rsi + 8]
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rbx
mov rdx, qword [rdx]
cmp rdx, rdi
je 0x1400a5278
mov qword [rsp + 0x30], rbp
mov rcx, rdx
movabs rbp, 0xcbf29ce484222325
movabs rbx, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + 0x11]
movzx r9d, byte [rcx + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rdx, qword [rdx]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x12]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x13]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x14]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x15]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x16]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x17]
imul r9, rbx
xor r9, rax
imul r9, rbx
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r10, qword [r11]
cmp r10, rdi
jne 0x1400a51ec
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x1400a5267
mov rax, qword [r11 + 8]
mov r9, qword [rcx + 0x10]
cmp r9, qword [rax + 0x10]
jne 0x1400a5229
mov r10, qword [rax]
cmp r10, rcx
je 0x1400a5223
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11 + 8], rcx
jmp 0x1400a5267
mov r8, rax
cmp r10, rax
je 0x1400a5243
mov rax, qword [rax + 8]
mov r8, rax
cmp r9, qword [rax + 0x10]
je 0x1400a528d
cmp r10, rax
jne 0x1400a5231
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r9, qword [rdx + 8]
mov qword [r9], r8
mov rax, qword [r8 + 8]
mov qword [rax], rcx
mov qword [r8 + 8], r9
mov qword [rdx + 8], r10
mov qword [rcx + 8], rax
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rdi
jne 0x1400a5170
mov rbp, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
mov r10, qword [rax]
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
jmp 0x1400a5267
lea rcx, str.invalid_hash_bucket_count
call fcn.140122e90
int3
Function at 0x1400ac520
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
cmp qword [r8 + 0x18], 0x10
mov rbx, rdx
mov rdx, r8
mov rdi, rcx
jb 0x1400ac53d
mov rdx, qword [r8]
mov r11, qword [r8 + 0x10]
xor r10d, r10d
movabs r9, 0xcbf29ce484222325
test r11, r11
je 0x1400ac574
movabs rcx, 0x100000001b3
nop dword [rax]
movzx eax, byte [r10 + rdx]
inc r10
xor r9, rax
imul r9, rcx
cmp r10, r11
jb 0x1400ac560
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1400a9d90
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1400ac59b
mov qword [rbx], rcx
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov rax, qword [rdi + 8]
mov qword [rbx], rax
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
Function at 0x1400ec920
Capabilities:
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0x100
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
mov rcx, qword [rcx]
call fcn.1400eb2d0
test al, al
jne 0x1400ecad8
mov dword [rbp - 0x61], edi
mov qword [rbp - 0x59], rsi
xor esi, esi
mov dword [rbp + 0x67], esi
mov qword [rbp + 7], rsi
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x11]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x67]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8d, [rsi + 1]
lea rdx, [rbp - 0x61]
mov rcx, qword [rbx + 8]
call qword [sym.imp.WS2_32.dll_WSARecv]
test eax, eax
je 0x1400ec99e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e5
jne 0x1400ecaff
mov rcx, qword [rbx]
call fcn.1400eb0b0
mov qword [rbp + 0xf], rax
mov byte [rbp + 0x17], sil
lea rax, [rbp - 0x11]
mov qword [rbx + 0x10], rax
mov rcx, qword [rbx]
call fcn.1400eb0b0
lea rdx, [rax + 0x70]
lea rcx, vtable.std::_Func_impl_no_alloc_class__lambda_ba592e99b77cc87b7eb140194ef6b88a___void___.0
mov qword [rbp - 0x51], rcx
mov qword [rbp - 0x49], rbx
lea rcx, [rbp - 0x51]
mov qword [rbp - 0x19], rcx
lea rcx, [rbp - 0x51]
call fcn.14009fc10
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x1400ec9fb
mov rax, qword [rcx]
lea rdx, [rbp - 0x51]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov rcx, qword [rbx]
call fcn.1400eadb0
mov rcx, qword [rbx]
call fcn.1400eb0b0
lea rdi, [rax + 0x70]
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x1400eca28
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], rsi
mov qword [rbx + 0x10], rsi
lea rax, [rbp + 0x67]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x7f]
lea rdx, [rbp - 0x11]
mov rcx, qword [rbx + 8]
call qword [sym.imp.WS2_32.dll_WSAGetOverlappedResult]
cmp eax, 1
je 0x1400eca5e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x3e3
jne 0x1400eca9b
jmp 0x1400eca74
mov eax, dword [rbp + 0x7f]
mov rbx, qword [rsp + 0x128]
add rsp, 0x100
pop rdi
pop rsi
pop rbp
ret
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x79], xmm0
mov qword [rbp - 0x69], rax
lea rcx, [rbp - 0x79]
call fcn.1400952e0
lea rdx, [0x1401de758]
lea rcx, [rbp - 0x79]
call fcn.140148aa8
int3
mov edx, eax
lea rcx, [rbp - 0x51]
call fcn.1400eeea0
nop
mov r8, rax
lea rdx, str.TcpConnection::read__WSAGetOverlappedResult_failed_
lea rcx, [rbp + 0x1f]
call fcn.140085ef0
nop
mov rdx, rax
lea rcx, [rbp - 0x79]
call fcn.14000b240
lea rdx, [0x1401ddf08]
lea rcx, [rbp - 0x79]
call fcn.140148aa8
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x79], xmm0
mov qword [rbp - 0x69], rax
lea rcx, [rbp - 0x79]
call fcn.1400952e0
lea rdx, [0x1401de758]
lea rcx, [rbp - 0x79]
call fcn.140148aa8
int3
mov edx, eax
lea rcx, [rbp + 0x1f]
call fcn.1400eeea0
nop
mov r8, rax
lea rdx, str.TcpConnection::read__WSARecv_failed_
lea rcx, [rbp - 0x51]
call fcn.140085ef0
nop
mov rdx, rax
lea rcx, [rbp - 0x79]
call fcn.14000b240
lea rdx, [0x1401ddf08]
lea rcx, [rbp - 0x79]
call fcn.140148aa8
int3
Function at 0x1400edc80
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
mov r15, rdx
lea r14, [rdx - 1]
mov rdi, rcx
xor r12d, r12d
nop word [rax + rax]
mov rsi, r12
mov rbp, r12
test r14, r14
je 0x1400ede96
mov rdx, qword [rdi + 8]
nop dword [rax]
nop word [rax + rax]
lea ecx, [rdx + 0xff]
shl rsi, cl
add rsi, rsi
nop dword [rax]
mov r10, qword [rdi]
mov ecx, dword [r10]
cmp ecx, 0x270
jne 0x1400edd44
lea rax, [r10 + 8]
mov r9d, ecx
nop word [rax + rax]
mov r8d, dword [rax - 4]
xor r8d, dword [rax]
lea rax, [rax + 4]
btr r8d, 0x1f
xor r8d, dword [rax - 8]
mov ecx, r8d
and cl, 1
neg cl
sbb edx, edx
shr r8d, 1
and edx, 0x9908b0df
xor edx, dword [rax + 0x62c]
xor edx, r8d
mov dword [rax + 0x9b8], edx
sub r9, 1
jne 0x1400edd00
mov ecx, dword [r10]
jmp 0x1400ede27
cmp ecx, 0x4e0
jb 0x1400ede27
lea r11, [r10 + 0x9c4]
mov ebx, 0xe3
mov eax, dword [r11]
nop
mov edx, eax
lea r8, [r11 + 4]
xor edx, dword [r8]
btr edx, 0x1f
xor edx, eax
mov eax, edx
and al, 1
neg al
mov eax, dword [r8]
sbb ecx, ecx
shr edx, 1
and ecx, 0x9908b0df
xor ecx, edx
xor ecx, dword [r11 + 0x634]
mov dword [r11 - 0x9c0], ecx
lea r11, [r8]
sub rbx, 1
jne 0x1400edd60
lea r11, [r10 + 0xd50]
mov ebx, 0x18c
mov eax, dword [r11]
nop word [rax + rax]
mov edx, eax
lea r8, [r11 + 4]
xor edx, dword [r8]
btr edx, 0x1f
xor edx, eax
mov eax, edx
and al, 1
neg al
mov eax, dword [r8]
sbb ecx, ecx
shr edx, 1
and ecx, 0x9908b0df
xor ecx, dword [r11 - 0xd4c]
xor ecx, edx
mov dword [r11 - 0x9c0], ecx
lea r11, [r8]
sub rbx, 1
jne 0x1400eddb0
mov edx, dword [r10 + 0x1380]
xor edx, dword [r10 + 4]
btr edx, 0x1f
xor edx, dword [r10 + 0x1380]
mov eax, edx
and al, 1
neg al
sbb ecx, ecx
shr edx, 1
and ecx, 0x9908b0df
xor ecx, dword [r10 + 0x634]
xor ecx, edx
mov dword [r10 + 0x9c0], ecx
mov ecx, r12d
mov dword [r10], r12d
mov eax, ecx
mov edx, dword [r10 + rax*4 + 4]
lea eax, [rcx + 1]
mov dword [r10], eax
mov ecx, edx
mov eax, dword [r10 + 0x1384]
mov r8, qword [rdi + 0x10]
shr ecx, 0xb
and eax, ecx
xor edx, eax
mov eax, edx
and eax, 0xff3a58ad
shl eax, 7
xor edx, eax
mov eax, edx
and edx, 0xffffdf8c
shl edx, 0xf
mov ecx, edx
xor rcx, rax
mov rax, rcx
shr rax, 0x12
xor rax, rcx
cmp rax, r8
ja 0x1400edce0
mov rdx, qword [rdi + 8]
or rsi, rax
lea ecx, [rdx + 0xff]
shl rbp, cl
add rbp, rbp
or rbp, r8
cmp rbp, r14
jb 0x1400edcd0
xor edx, edx
mov rax, rbp
div r15
mov rcx, rax
mov r8, rdx
xor edx, edx
mov rax, rsi
div r15
cmp rax, rcx
jb 0x1400edeba
cmp r8, r14
jne 0x1400edcb0
mov rbx, qword [rsp + 0x20]
mov rax, rsi
mov rbp, qword [rsp + 0x28]
xor edx, edx
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
div r15
mov rax, rdx
pop r15
pop r14
pop r12
ret