Function at 0x4324e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x586494
mov eax, dword fs:[0]
push eax
sub esp, 0x138
mov eax, dword [0x5d1e24]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x54], ecx
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x6c], eax
movq qword [ebp - 0x24], xmm0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
lea eax, [ebp - 0x24]
push eax
call fcn.0043ae30
add esp, 4
lea ecx, [ebp - 0x4c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x4c], xmm0
movups xmmword [ebp - 0x3c], xmm0
call fcn.0042cd00
mov ecx, dword [ebp - 0x20]
mov eax, 0x2e8ba2e9
sub ecx, dword [ebp - 0x24]
imul ecx
mov byte [ebp - 4], 1
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x590f10]
cvtpd2ps xmm0, xmm0
divss xmm0, dword [ebp - 0x4c]
addss xmm0, dword [0x593de0]
call fcn.0046cb00
mov ecx, 8
cmp eax, ecx
jbe 0x4325b2
nop dword [eax]
cmp ecx, 0xfffffff
jae 0x43265f
add ecx, ecx
cmp ecx, eax
jb 0x4325a0
mov eax, dword [ebp - 0x44]
movss xmm3, dword [ebp - 0x4c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x590f10]
mov eax, ecx
shr eax, 0x1f
cvtpd2ps xmm2, xmm0
movd xmm0, ecx
movaps xmm1, xmm2
divss xmm1, xmm3
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x590f10]
cvtpd2ps xmm0, xmm0
comiss xmm0, xmm1
ja 0x432628
cmp ecx, 0xfffffff
jae 0x432628
movaps xmm1, xmm2
add ecx, ecx
divss xmm1, xmm3
mov eax, ecx
shr eax, 0x1f
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x590f10]
cvtpd2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x4325f8
push ecx
lea ecx, [ebp - 0x4c]
call fcn.00428200
mov edx, dword [ebp - 0x48]
cmp dword [edx], edx
je 0x43266c
mov edi, dword [edx + 4]
nop dword [eax + eax]
mov esi, dword [edx]
lea ecx, [ebp - 0x4c]
push esi
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00410e50
cmp esi, edi
je 0x43266c
mov edx, dword [ebp - 0x48]
jmp 0x432640
cmp ecx, eax
jb 0x432c83
jmp 0x4325b2
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x24]
cmp esi, edi
je 0x432693
push dword [ebp - 0x6c]
lea eax, [esi + 0x18]
push eax
lea eax, [ebp - 0x84]
push eax
lea ecx, [ebp - 0x4c]
call fcn.0042bec0
add esi, 0x58
cmp esi, edi
jne 0x432676
mov ecx, dword [ebp - 0x54]
mov eax, dword [ecx + 0x24]
mov esi, dword [eax]
cmp esi, eax
je 0x4327c5
nop dword [eax]
nop word [eax + eax]
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 [ebp - 0x34]
and ecx, eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + ecx*8]
add ecx, ecx
mov dword [ebp - 0x5c], ecx
mov edx, ecx
mov ecx, dword [ebp - 0x40]
mov edi, dword [ecx + edx*4]
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x58], edi
lea edi, [esi + 8]
cmp dword [ebp - 0x58], edx
jne 0x43270d
mov ecx, edx
jmp 0x432719
mov edi, dword [ebp - 0x5c]
mov ecx, dword [ecx + edi*4 + 4]
lea edi, [esi + 8]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x432736
mov ecx, dword [eax + 8]
cmp ecx, dword [edi]
je 0x43272b
mov eax, dword [eax]
mov ecx, dword [ebp - 0x40]
jmp 0x432704
cmp eax, edx
je 0x432736
mov esi, dword [esi]
jmp 0x4327b9
mov ecx, dword [ebp - 0x54]
add ecx, 0x114
push edi
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov edx, dword [eax + 4]
push edx
push eax
mov dword [ebp - 0x68], edx
call fcn.00410060
mov edx, dword [ebp - 0x54]
mov ecx, 0x15555554
mov dword [ebp - 0x5c], eax
mov edi, dword [edx + 0x118]
sub ecx, edi
cmp ecx, 1
jb 0x432c8d
mov eax, dword [ebp - 0x58]
lea ecx, [edi + 1]
mov dword [edx + 0x118], ecx
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
lea ecx, [edx + 0x110]
mov eax, dword [edx + 0x114]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00410e50
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x14]
push esi
push eax
lea ecx, [ecx + 0x20]
call fcn.00435d80
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x54]
cmp esi, dword [eax + 0x24]
jne 0x4326b0
call dword [sym.imp.USER32.dll_GetForegroundWindow]
lea ecx, [ebp - 0x50]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x6c], eax
cmp edi, eax
je 0x432c04
add edi, 0x1a
nop word [eax + eax]
movzx eax, byte [edi - 2]
mov edx, dword [ebp - 0x54]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi - 1]
mov esi, dword [edx + 0x2c]
xor ecx, eax
movzx eax, byte [edi]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edi + 1]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [edx + 0x38]
mov edx, dword [edx + 0x24]
mov eax, dword [esi + ecx*8]
add ecx, ecx
mov dword [ebp - 0x14], ecx
cmp dword [esi + ecx*4], edx
jne 0x43283f
mov ecx, edx
jmp 0x432845
mov ecx, dword [esi + ecx*4 + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x432858
mov ecx, dword [eax + 8]
cmp ecx, dword [edi - 2]
je 0x43285a
mov eax, dword [eax]
mov ecx, dword [ebp - 0x14]
jmp 0x432836
mov eax, edx
mov ecx, dword [ebp - 0x54]
cmp eax, dword [ecx + 0x24]
jne 0x432a36
push 0x78
call fcn.0046c7a5
add esp, 4
mov dword [ebp - 0x68], eax
test eax, eax
je 0x432945
lea esi, [eax + 0x10]
mov dword [eax + 4], 1
mov dword [eax + 8], 1
mov dword [eax], vtable.std::_Ref_count_obj_struct_ProcessSummaryInfo_.0
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov dword [ebp - 0x64], esi
mov word [esi], ax
lea ecx, [esi + 0x18]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
mov word [ecx], ax
mov dword [esi + 0x48], eax
xorps xmm0, xmm0
mov dword [esi + 0x58], eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x60], eax
mov dword [esi + 0x64], eax
lea eax, [edi - 0x1a]
mov byte [ebp - 4], 4
movsd qword [esi + 0x50], xmm0
cmp esi, eax
je 0x4328f3
cmp dword [edi - 6], 8
lea eax, [edi - 0x1a]
jb 0x4328e5
mov eax, dword [eax]
push dword [edi - 0xa]
mov ecx, esi
push eax
call fcn.00409700
lea ecx, [esi + 0x18]
lea eax, [edi + 0xe]
cmp ecx, eax
je 0x43290b
cmp dword [edi + 0x22], 8
jb 0x432902
mov eax, dword [eax]
push dword [edi + 0x1e]
push eax
call fcn.00409700
mov ecx, dword [edi - 2]
mov dword [esi + 0x30], ecx
mov eax, dword [edi + 2]
mov dword [esi + 0x34], eax
mov eax, dword [edi + 6]
mov dword [esi + 0x38], eax
mov eax, dword [edi + 0xa]
mov dword [esi + 0x3c], eax
mov eax, dword [edi + 0xa]
mov dword [esi + 0x40], eax
lea eax, [esi + 0x48]
push 1
push eax
mov dword [esi + 0x44], 0
mov dword [eax], ecx
call fcn.0043acc0
mov ecx, dword [ebp - 0x68]
add esp, 8
jmp 0x432947
xor ecx, ecx
or dword [ebp - 0x60], 1
lea eax, [ecx + 0x10]
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x54]
lea esi, [ebp - 0x2c]
add ecx, 0x24
mov byte [ebp - 4], 5
push esi
lea esi, [edi - 2]
push esi
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov edx, dword [eax + 4]
push edx
push eax
mov dword [ebp - 0x64], edx
call fcn.0042b780
mov edx, dword [ebp - 0x54]
mov ecx, 0xccccccb
mov dword [ebp - 0x58], eax
mov eax, dword [edx + 0x28]
sub ecx, eax
cmp ecx, 1
jb 0x432c8d
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x14]
mov dword [edx + 0x28], ecx
mov ecx, dword [ebp - 0x58]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
lea ecx, [edx + 0x20]
mov eax, dword [edx + 0x24]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.0042bd20
mov eax, dword [ebp - 0x54]
push esi
lea ecx, [eax + 0x130]
mov dword [ebp - 0x64], ecx
lea ecx, [eax + 0x134]
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov edx, dword [eax + 4]
push edx
push eax
mov dword [ebp - 0x58], edx
call fcn.00410060
mov edx, dword [ebp - 0x64]
mov ecx, 0x15555554
mov esi, dword [edx + 8]
sub ecx, esi
cmp ecx, 1
jb 0x432c8d
lea ecx, [esi + 1]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x58]
mov dword [ecx], eax
mov ecx, edx
mov eax, dword [edx + 4]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.00410e50
mov esi, dword [ebp - 0x28]
jmp 0x432bcc
mov esi, dword [eax + 0x10]
xorps xmm0, xmm0
movlpd qword [ebp - 0x2c], xmm0
test esi, esi
je 0x432a4c
lock inc dword [esi + 4]
mov esi, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], esi
add eax, 0x48
mov byte [ebp - 4], 6
push 0
push eax
call fcn.0043acc0
mov eax, dword [ebp - 0x58]
add esp, 8
movsd xmm0, qword [eax + 0x50]
comisd xmm0, xmmword [0x5936e0]
movsd qword [ebp - 0x84], xmm0
jbe 0x432bcc
mov ecx, dword [ebp - 0x50]
cmp dword [eax + 0x30], ecx
je 0x432bcc
mov ecx, dword [ebp - 0x54]
add ecx, 0x1a8
call fcn.00466570
test al, al
jne 0x432bcc
mov eax, dword [ebp - 0x54]
xorps xmm0, xmm0
movlpd qword [ebp - 0x18], xmm0
mov ecx, dword [eax + 0x1a8]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x432acd
add ecx, 4
call fcn.00452a50
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 0x1ac]
mov dword [ebp - 0x70], eax
push 0x30
mov byte [ebp - 4], 7
call fcn.0046c7a5
add esp, 4
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x432b71
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 4], 8
test cl, 4
je 0x432b12
and ecx, 0xfffffffb
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x144]
call fcn.0044fa60
mov eax, dword [ebp - 0x5c]
lea ecx, [eax + 4]
mov dword [ebp - 0x78], ecx
call fcn.0044c410
mov eax, dword [ebp - 0x5c]
lea ecx, [eax + 8]
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x78], ecx
mov dword [eax], 0x5938d8
mov eax, dword [ebp - 0x74]
mov dword [ecx], eax
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x432b47
lea ecx, [eax + 4]
call fcn.00452a50
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x70]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x5c]
push dword [ebp - 0x58]
add ecx, 0x10
mov byte [ebp - 4], 0xb
call fcn.0040c610
mov eax, dword [ebp - 0x5c]
movsd xmm0, qword [ebp - 0x84]
movsd qword [eax + 0x28], xmm0
jmp 0x432b73
xor eax, eax
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call fcn.0044c950
or dword [ebp - 0x60], 2
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x14], 0x431e90
call fcn.0044e520
mov eax, dword [ebp - 0x18]
sub esp, 8
mov ecx, esp
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x7c], ecx
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x432bb6
lea ecx, [eax + 4]
call fcn.00452a50
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x14]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x54]
call fcn.0042e040
lea ecx, [ebp - 0x18]
call fcn.0044e520
mov byte [ebp - 4], 1
test esi, esi
je 0x432bf5
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x432bf5
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x432bf5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
add edi, 0x58
lea eax, [edi - 0x1a]
cmp eax, dword [ebp - 0x6c]
jne 0x4327f0
mov eax, dword [ebp - 0x54]
mov edi, dword [eax + 0x24]
mov esi, dword [edi]
cmp esi, edi
je 0x432c51
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x58], ecx
test ecx, ecx
je 0x432c48
lock inc dword [ecx + 4]
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x58], ecx
test ecx, ecx
je 0x432c48
or eax, 0xffffffff
lock xadd dword [ecx + 4], eax
jne 0x432c48
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x58]
or eax, 0xffffffff
lock xadd dword [ecx + 8], eax
jne 0x432c48
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [esi]
cmp esi, edi
jne 0x432c10
mov eax, dword [ebp - 0x54]
mov ecx, eax
call fcn.00430390
lea ecx, [ebp - 0x4c]
call fcn.00412dc0
lea ecx, [ebp - 0x24]
call fcn.00434c70
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046ca7d
mov esp, ebp
pop ebp
ret
push str.invalid_hash_bucket_count
call fcn.0043f959
push str.list_T__too_long
call fcn.0043f939
int3