Function at 0x100a0670
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
mov esi, ecx
mov ebx, dword [esi + 0x40]
cmp ebx, dword [esi + 0x44]
jge 0x100a0711
mov dword [ebp - 0x10], 4
push edi
mov edi, edi
lea eax, [ebx + 1]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 4]
cmp dword [eax + ebx*4], 0xffffffff
je 0x100a06f1
test ebx, ebx
js 0x100a06a8
cmp ebx, dword [esi + 0x14]
jl 0x100a06c4
push str.bitNum___0__bitNum___this__Size__
push 0x14a
push str.c:_buildslave_steam_rel_client_win32_build_srcpublic_tier1_bitstring.h
call fcn.10078380
add esp, 0xc
test al, al
jne 0x100a06c4
int3
cmp dword [esi + 0x18], 1
lea eax, [esi + 0x1c]
je 0x100a06d0
mov eax, dword [esi + 0x20]
mov edi, ebx
mov dword [ebp - 4], eax
and edi, 0x1f
mov eax, 1
mov ecx, edi
mov edx, ebx
shl eax, cl
mov ecx, dword [ebp - 4]
sar edx, 5
mov dword [ebp - 8], edx
test dword [ecx + edx*4], eax
je 0x100a0717
mov ebx, dword [esi + 0x40]
cmp ebx, dword [esi + 0x44]
jl 0x100a0690
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x14]
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], eax
dec eax
push 0
mov dword [esi + 0x48], eax
call fcn.1005d860
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ebx, ebx
js 0x100a0720
cmp ebx, dword [esi + 0x14]
jl 0x100a073f
push str.bitNum___0__bitNum___this__Size__
push 0x154
push str.c:_buildslave_steam_rel_client_win32_build_srcpublic_tier1_bitstring.h
call fcn.10078380
add esp, 0xc
test al, al
jne 0x100a073c
int3
mov edx, dword [ebp - 8]
cmp dword [esi + 0x18], 1
lea ecx, [esi + 0x1c]
je 0x100a074b
mov ecx, dword [esi + 0x20]
mov eax, dword [ecx + edx*4]
bts eax, edi
mov dword [ecx + edx*4], eax
mov eax, dword [esi + 4]
lea eax, [eax + ebx*4]
mov dword [ebp - 4], eax
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
cmp eax, 0xffffffff
je 0x100a0839
jmp 0x100a0770
mov edi, dword [esi + 0x28]
imul eax, eax, 0x58
add edi, eax
mov dword [ebp - 0x1c], eax
push edi
mov dword [ebp - 8], edi
call fcn.10067fd0
lea ecx, [edi + 0x18]
mov dword [ebp - 0x18], eax
push ecx
call fcn.10067fd0
mov ecx, dword [edi + 0x30]
add esp, 8
test ecx, ecx
mov dword [ebp - 0x14], eax
mov edx, 0x102a7940
cmovne edx, ecx
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a07a8
push 0
sub ecx, edi
push 0x417
push ecx
push edx
call fcn.10064860
mov ecx, dword [ebp - 8]
mov edi, eax
add esp, 0x10
mov ecx, dword [ecx + 0x34]
mov edx, ecx
shr edx, 0x10
xor edx, ecx
imul edx, edx, 0x85ebca6b
mov ecx, edx
shr ecx, 0xd
xor ecx, edx
imul eax, ecx, 0xc2b2ae35
mov edx, eax
shr edx, 0x10
xor edx, eax
mov eax, dword [esi + 0x10]
xor edx, edi
dec eax
xor edx, dword [ebp - 0x14]
xor edx, dword [ebp - 0x18]
and edx, eax
mov eax, dword [ebp - 8]
add eax, 0x54
cmp edx, ebx
je 0x100a0828
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
mov edi, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov eax, dword [eax + edx*4]
mov dword [edi + ecx + 0x54], eax
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0xc]
mov dword [eax + edx*4], ecx
mov eax, dword [ebp - 4]
jmp 0x100a082b
mov dword [ebp - 4], eax
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
cmp eax, 0xffffffff
jne 0x100a0770
mov ebx, dword [esi + 0x40]
cmp ebx, dword [esi + 0x44]
jge 0x100a06f9
sub dword [ebp - 0x10], 1
jns 0x100a0690
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret