joyce8/EMBER2024-capa huggingface dataset:
Function at 0x42ca80
Capabilities:
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50e97e
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push esi
push edi
mov eax, dword [0x55ca98]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ecx + 0x64]
mov edi, dword [ecx + 0x68]
add edi, esi
cmp esi, edi
je 0x42cb11
mov edx, dword [ecx + 0x60]
mov eax, dword [ecx + 0x5c]
dec edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], eax
mov eax, esi
mov ecx, esi
shr eax, 1
and ecx, 1
and eax, edx
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + eax*4]
mov eax, dword [eax + ecx*8]
mov dword [ebp - 0x18], eax
cmp dword [eax + 0xe4], 0x10
lea ecx, [eax + 0xd0]
jb 0x42caec
mov ecx, dword [eax + 0xd0]
push dword [eax + 0xe0]
push ecx
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.004041b0
add esp, 0x10
test al, al
jne 0x42cbab
mov edx, dword [ebp - 0x14]
inc esi
cmp esi, edi
jne 0x42cac0
mov eax, dword [ebp + 8]
xorps xmm0, xmm0
mov dword [eax + 0x78], 0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
movups xmmword [eax + 0x18], xmm0
mov dword [eax + 0x28], 0
mov dword [eax + 0x2c], 0xf
mov byte [eax + 0x18], 0
movups xmmword [eax + 0x30], xmm0
mov dword [eax + 0x40], 0
mov dword [eax + 0x44], 0xf
mov byte [eax + 0x30], 0
movups xmmword [eax + 0x48], xmm0
mov dword [eax + 0x58], 0
mov dword [eax + 0x5c], 0xf
mov byte [eax + 0x48], 0
movups xmmword [eax + 0x60], xmm0
mov dword [eax + 0x70], 0
mov dword [eax + 0x74], 0xf
mov byte [eax + 0x60], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp + 8]
add edi, 0x50
push edi
mov ecx, esi
call fcn.00404bb0
lea eax, [edi + 0x18]
mov dword [ebp - 4], 0
lea ecx, [esi + 0x18]
push eax
call fcn.00404bb0
lea eax, [edi + 0x30]
mov byte [ebp - 4], 1
lea ecx, [esi + 0x30]
push eax
call fcn.00404bb0
lea eax, [edi + 0x48]
mov byte [ebp - 4], 2
lea ecx, [esi + 0x48]
push eax
call fcn.00404bb0
lea ecx, [edi + 0x60]
mov byte [ebp - 4], 3
push ecx
lea ecx, [esi + 0x60]
call fcn.00404bb0
mov ecx, dword [edi + 0x78]
mov eax, esi
mov dword [esi + 0x78], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc

Function at 0x433200
Capabilities:
Get process heap flags

Disassembly:
push esi
mov esi, ecx
mov ecx, dword [esi + 0x10]
call fcn.00431d80
mov ecx, dword [esi + 8]
call fcn.00434cb0
mov ecx, dword [esi]
pop esi
mov ecx, dword [ecx + 0x7c]
jmp fcn.0043dae0

Function at 0x435a70
Capabilities:
Create thread

Disassembly:
push esi
mov esi, ecx
mov al, byte [esi + 0x419]
lea ecx, [esi + 0x419]
nop
test al, al
jne 0x435aa0
mov al, 1
xchg byte [ecx], al
push 0
push 0
push esi
push 0x41cbf0
push dword [esi + 0x1c]
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [esi + 0x28], eax
pop esi
ret
Function at 0x439fe0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
movzx eax, byte [edx]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
movzx eax, byte [edx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 4]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 5]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 6]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 7]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
pop ebp
ret 4
Function at 0x43ab40
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50fce5
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x55ca98]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [ebp + 0xc]
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor edx, eax
movzx eax, byte [esi + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [esi + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 0xc], eax
lea eax, [ebp - 0x18]
push esi
push eax
call fcn.0043a580
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x43abd3
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0x4924924
je 0x43ace4
lea eax, [edi + 4]
mov dword [ebp - 0x20], eax
push 0x38
mov dword [ebp - 4], 0
mov dword [ebp - 0x1c], 0
call fcn.0050945c
mov ecx, dword [esi]
add esp, 4
mov dword [ebp - 0x1c], eax
add eax, 8
lea ebx, [eax + 8]
mov dword [ebp - 0x10], eax
mov dword [eax], ecx
lea eax, [esi + 8]
mov dword [ebx + 0x24], 0
mov ecx, dword [esi + 0x2c]
test ecx, ecx
je 0x43ac4f
cmp ecx, eax
jne 0x43ac45
mov eax, dword [ecx]
push ebx
call dword [eax + 4]
mov dword [ebx + 0x24], eax
mov ecx, dword [esi + 0x2c]
test ecx, ecx
je 0x43ac4f
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
lea eax, [esi + 8]
cmp ecx, eax
setne al
push eax
call edx
jmp 0x43ac48
mov dword [ebx + 0x24], ecx
mov dword [esi + 0x2c], 0
mov eax, dword [edi + 8]
inc eax
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [edi]
jbe 0x43acb3
mov ecx, edi
call fcn.0043cdf0
mov esi, dword [ebp + 0xc]
lea eax, [ebp - 0x18]
push esi
push dword [ebp - 0x10]
mov ecx, edi
push eax
call fcn.0043a580
mov ecx, dword [eax]
jmp 0x43acb9
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp + 0xc]
push dword [ebp - 0x1c]
push ecx
push esi
mov ecx, edi
call fcn.0043cd90
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov eax, ecx
mov byte [ecx + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x43acf0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50fd25
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x55ca98]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov edi, dword [ebp + 0xc]
mov edx, edi
cmp dword [edi + 0x14], 0x10
jb 0x43ad27
mov edx, dword [edi]
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edi + 0x10], ecx
jbe 0x43ad45
movzx eax, byte [ecx + edx]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edi + 0x10]
jb 0x43ad33
push esi
push edi
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.0043a5f0
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x43ad76
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [ebx + 8], 0x38e38e3
je 0x43ae8b
lea eax, [ebx + 4]
mov dword [ebp - 0x1c], eax
push 0x48
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], 0
call fcn.0050945c
add esp, 4
mov dword [ebp - 0x18], eax
add eax, 8
mov ecx, eax
mov dword [ebp + 0xc], eax
push edi
call fcn.00404bb0
mov edx, dword [ebp + 0xc]
lea eax, [edi + 0x18]
add edx, 0x18
mov dword [edx + 0x24], 0
mov ecx, dword [edi + 0x3c]
test ecx, ecx
je 0x43adfc
cmp ecx, eax
jne 0x43adf2
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x3c], eax
mov ecx, dword [edi + 0x3c]
test ecx, ecx
je 0x43adfc
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
lea eax, [edi + 0x18]
cmp ecx, eax
setne al
push eax
call edx
jmp 0x43adf5
mov dword [edx + 0x24], ecx
mov dword [edi + 0x3c], 0
mov eax, dword [ebx + 8]
inc eax
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
mov eax, dword [ebx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ebx]
jbe 0x43ae5d
mov ecx, ebx
call fcn.0043ce80
push esi
push dword [ebp + 0xc]
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.0043a5f0
mov ecx, dword [eax]
jmp 0x43ae60
mov ecx, dword [ebp - 0x14]
push dword [ebp - 0x18]
push ecx
push esi
mov ecx, ebx
call fcn.0043cd90
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov eax, ecx
mov byte [ecx + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x43b220
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50fd83
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x55ca98]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x1c], esi
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [esi], 0
push 0x24
mov dword [ebp - 0x18], ebx
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.0050945c
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [esi + 4], eax
lea ecx, [esi + 0xc]
mov dword [ebp - 4], 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov dword [esi + 0x18], 7
mov dword [esi + 0x1c], 8
mov dword [esi], 0x3f800000
push dword [esi + 4]
mov byte [ebp - 4], 1
push 0x10
call fcn.0043c480
mov dword [ebp - 4], 2
cmp edi, ebx
je 0x43b3cb
nop dword [eax + eax]
movzx eax, byte [edi]
mov ecx, esi
xor eax, 0x811c9dc5
imul ebx, eax, 0x1000193
lea eax, [ebp - 0x24]
push ebx
push edi
push eax
call fcn.0043a680
cmp dword [ebp - 0x20], 0
jne 0x43b3bf
cmp dword [esi + 8], 0x71c71c7
je 0x43b3e1
lea eax, [esi + 4]
mov dword [ebp - 0x2c], eax
push 0x24
mov byte [ebp - 4], 3
mov dword [ebp - 0x28], 0
call fcn.0050945c
mov cl, byte [edi]
lea edx, [edi + 4]
mov dword [ebp - 0x14], eax
add esp, 4
mov dword [ebp - 0x28], eax
add eax, 8
mov dword [ebp - 0x10], eax
push edx
mov byte [eax], cl
lea ecx, [eax + 4]
call fcn.00404bb0
mov eax, dword [esi + 8]
inc eax
mov byte [ebp - 4], 4
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
mov eax, dword [esi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5145a0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [esi]
seta al
test al, al
je 0x43b3a5
mov ecx, esi
call fcn.0043cf10
push ebx
push dword [ebp - 0x10]
lea eax, [ebp - 0x34]
mov ecx, esi
push eax
call fcn.0043a680
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
jmp 0x43b3a8
mov ecx, dword [ebp - 0x24]
push dword [ebp - 0x14]
mov dword [ebp - 0x28], 0
push ecx
push ebx
mov ecx, esi
call fcn.0043cd90
mov byte [ebp - 4], 2
add edi, 0x1c
cmp edi, dword [ebp - 0x18]
jne 0x43b2d0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x43c5d0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
push edi
mov edi, 1
mov dword [ebp - 4], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x43c72a
mov esi, dword [ebx + 4]
lea eax, [edx - 1]
or eax, edi
mov dword [ebp + 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
lea ecx, [ebx + 0xc]
lea eax, [edi + edi]
push eax
call fcn.0043c480
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x43c6fd
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
imul edx, edi, 0x1000193
mov edi, dword [ebx + 0x18]
and edi, edx
mov edx, dword [ebx + 0xc]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 8], edx
cmp edi, esi
jne 0x43c683
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x43c6f3
mov edx, dword [edx + 4]
mov ebx, dword [eax + 8]
cmp ebx, dword [edx + 8]
jne 0x43c6bd
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x43c6b5
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x43c6f0
cmp edi, edx
je 0x43c6cd
mov edx, dword [edx + 4]
cmp ebx, dword [edx + 8]
je 0x43c706
cmp edi, edx
jne 0x43c6c1
mov ebx, dword [eax + 4]
mov dword [ebp - 0xc], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov ebx, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x43c632
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x43c6f0
push str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x43c930
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
push edi
mov edi, 1
mov dword [ebp - 8], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x43ca6a
mov esi, dword [ebx + 4]
lea eax, [edx - 1]
or eax, edi
mov dword [ebp + 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
lea ecx, [ebx + 0xc]
mov dword [ebp - 0xc], ecx
lea eax, [edi + edi]
push eax
call fcn.0043c480
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x43ca3d
mov bl, byte [eax + 8]
mov edi, dword [ebp - 8]
mov ecx, dword [ecx]
movzx edx, bl
xor edx, 0x811c9dc5
mov edi, dword [edi + 0x18]
imul edx, edx, 0x1000193
and edi, edx
mov edx, dword [ebp - 0xc]
mov edx, dword [edx]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 4], edx
cmp edi, esi
jne 0x43c9c9
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x43ca33
mov edx, dword [edx + 4]
cmp bl, byte [edx + 8]
jne 0x43ca00
mov edx, dword [edx]
mov dword [ebp - 0x10], edx
cmp edx, eax
je 0x43c9f8
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0x10]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 4]
mov dword [edx + 4], eax
jmp 0x43ca33
cmp edi, edx
je 0x43ca10
mov edx, dword [edx + 4]
cmp bl, byte [edx + 8]
je 0x43ca46
cmp edi, edx
jne 0x43ca04
mov ebx, dword [eax + 4]
mov dword [ebp - 0x10], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0x10]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 4]
mov dword [eax + 4], edi
mov dword [edx], eax
mov eax, ecx
cmp ecx, esi
jne 0x43c995
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0x10], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x43ca33
push str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x43d180
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov dword [ebp - 4], ecx
cmp edx, eax
je 0x43d31a
cmp dword [edx + 0x1c], 0x10
mov eax, dword [ecx + 4]
push esi
mov dword [ebp - 0x18], eax
mov esi, edx
mov eax, dword [ecx + 0xc]
push edi
mov dword [ebp - 0x14], eax
lea edi, [edx + 8]
mov eax, dword [edx + 4]
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x10]
jb 0x43d1bb
mov edi, dword [edi]
xor edx, edx
push ebx
mov ebx, 0x811c9dc5
test eax, eax
je 0x43d1e4
mov ecx, eax
nop dword [eax]
movzx eax, byte [edx + edi]
inc edx
xor eax, ebx
imul ebx, eax, 0x1000193
cmp edx, ecx
jb 0x43d1d0
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x18]
mov ecx, dword [ebp - 0x14]
and eax, ebx
lea eax, [ecx + eax*8]
mov ecx, dword [eax]
mov dword [ebp - 0xc], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov edi, esi
mov ebx, esi
mov esi, dword [esi]
lea ecx, [edi + 8]
call fcn.0043bf00
push 0x48
push edi
call fcn.0050948c
mov eax, dword [ebp - 4]
add esp, 8
dec dword [eax + 8]
cmp ebx, dword [ebp - 0x1c]
je 0x43d249
mov eax, dword [ebp + 0xc]
cmp esi, eax
jne 0x43d200
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp + 8]
jne 0x43d238
mov edx, dword [ebp - 0xc]
mov dword [edx], esi
mov ecx, dword [ebp - 8]
pop ebx
pop edi
mov dword [ecx], esi
mov dword [esi + 4], ecx
pop esi
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
cmp ecx, dword [ebp + 8]
jne 0x43d25b
mov ecx, dword [ebp - 0x18]
mov dword [edx], ecx
jmp 0x43d25e
mov ecx, dword [ebp - 8]
mov dword [edx + 4], ecx
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
je 0x43d30d
nop dword [eax]
cmp dword [esi + 0x1c], 0x10
lea edi, [esi + 8]
mov ebx, dword [edi + 0x10]
jb 0x43d27e
mov edi, dword [edi]
xor ecx, ecx
mov edx, 0x811c9dc5
test ebx, ebx
je 0x43d2a4
nop dword [eax]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, ebx
jb 0x43d290
mov eax, dword [ebp - 4]
and edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x14]
lea eax, [eax + edx*8]
mov dword [ebp + 8], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x1c], eax
mov edi, esi
mov ebx, esi
mov esi, dword [esi]
lea ecx, [edi + 8]
call fcn.0043bf00
push 0x48
push edi
call fcn.0050948c
mov eax, dword [ebp - 4]
add esp, 8
dec dword [eax + 8]
cmp ebx, dword [ebp - 0x1c]
je 0x43d2f7
mov eax, dword [ebp + 0xc]
cmp esi, eax
jne 0x43d2b6
mov ecx, dword [ebp + 8]
pop ebx
pop edi
mov dword [ecx], esi
mov ecx, dword [ebp - 8]
mov dword [ecx], esi
mov dword [esi + 4], ecx
pop esi
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x18]
mov dword [ecx], edx
mov dword [ecx + 4], edx
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
jne 0x43d270
mov eax, dword [ebp - 8]
pop ebx
pop edi
mov dword [eax], esi
mov dword [esi + 4], eax
mov eax, ecx
pop esi
mov esp, ebp
pop ebp
ret 8
Function at 0x440250
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, dword [ebp + 8]
movzx eax, bl
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
push esi
push edi
xor edx, eax
mov edi, ecx
imul ecx, edx, 0x1000193
mov eax, ebx
shr eax, 0x10
movzx eax, al
shr ebx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x2b0]
xor eax, ebx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 8]
push eax
call fcn.0043a580
mov esi, dword [eax + 4]
test esi, esi
jne 0x4402b8
mov esi, dword [edi + 0x2b4]
mov edx, dword [edi + 0x2b4]
cmp esi, edx
je 0x440369
movzx eax, byte [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + 9]
xor ecx, eax
movzx eax, byte [esi + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [edi + 0x2c8]
and ecx, eax
mov eax, dword [edi + 0x2bc]
lea ecx, [eax + ecx*8]
mov eax, dword [ecx]
cmp dword [ecx + 4], esi
jne 0x440324
cmp eax, esi
jne 0x44031c
mov dword [ecx], edx
mov dword [ecx + 4], edx
jmp 0x44032c
mov edx, dword [esi + 4]
mov dword [ecx + 4], edx
jmp 0x44032c
cmp eax, esi
jne 0x44032c
mov eax, dword [esi]
mov dword [ecx], eax
mov ecx, dword [esi]
dec dword [edi + 0x2b8]
lea edi, [esi + 0x10]
mov eax, dword [esi + 4]
mov dword [eax], ecx
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov ecx, dword [edi + 0x24]
test ecx, ecx
je 0x44035e
mov edx, dword [ecx]
cmp ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [edi + 0x24], 0
push 0x38
push esi
call fcn.0050948c
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x441ce0
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51055d
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x55ca98]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov edx, dword [ebp + 0xc]
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0x10], ecx
test edx, edx
je 0x441dad
nop dword [eax]
sub edx, ecx
add ecx, dword [ebp + 8]
push 0
push edx
push ecx
push dword [ebx + 0x28]
mov dword [ebp - 0x14], edx
call dword [sym.imp.WS2_32.dll_recv]
mov esi, eax
test esi, esi
jg 0x441d9a
nop dword [eax + eax]
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x274c
je 0x441d6d
cmp eax, 0x2714
je 0x441d9a
sub eax, 4
je 0x441d9a
sub eax, 7
je 0x441d6d
sub eax, 0x7f
je 0x441d6d
mov eax, edi
inc edi
cmp eax, 4
jg 0x441dc6
jmp 0x441d7f
mov ecx, dword [ebx + 0x24]
test ecx, ecx
je 0x441dc1
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test al, al
jne 0x441de1
mov eax, dword [ebp - 0x10]
add eax, dword [ebp + 8]
push 0
push dword [ebp - 0x14]
push eax
push dword [ebx + 0x28]
call dword [sym.imp.WS2_32.dll_recv]
mov esi, eax
test esi, esi
jle 0x441d40
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0xc]
add ecx, esi
mov dword [ebp - 0x10], ecx
cmp ecx, edx
jb 0x441d20
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
push str.Error_in_read
lea ecx, [ebp - 0x20]
call fcn.004292f0
push 0x552104
lea eax, [ebp - 0x20]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
mov eax, dword [0x55fc44]
push str.Connection_lost__will_need_to_reconnect...
sub esp, 0x18
mov ecx, esp
mov dword [ebp + 8], esp
mov eax, dword [eax]
push str.cspot
mov esi, dword [eax + 4]
call fcn.00404c60
push 0x92
sub esp, 0x18
mov dword [ebp - 4], 0
mov ecx, esp
push str.D:UsersphiliDropboxDevelopmentSpotConnectcommoncspotcspot_srcPlainConnection.cpp
call fcn.00404c60
push dword [0x55fc44]
mov dword [ebp - 4], 0xffffffff
call esi
add esp, 0x3c
lea ecx, [ebp - 0x2c]
push str.Reconnection_required
call fcn.004292f0
push 0x552104
lea eax, [ebp - 0x2c]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3