Function at 0x100bef50
Capabilities:
Hash data using fnv

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0x68
push 0xffffffffffffffff
push 0x100ed955
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x101170e4]
xor eax, ebp
mov dword [ebp + 0x64], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0x74]
mov ebx, esi
mov edi, dword [ebp + 0x70]
neg ebx
mov dword [ebp - 0x28], edi
sbb ebx, ebx
mov dword [ebp + 4], edi
lea eax, [esi + 0x48]
mov dword [ebp], esi
and ebx, eax
mov dword [ebp - 0x28], ebx
jne 0x100befc7
push 2
call fcn.10094405
push str.fail:_recv__queue_of_h___nullptr_n
push 0x100ff8e8
push eax
call fcn.100bb480
add esp, 0x10
mov ecx, edi
call fcn.100bb550
mov eax, edi
jmp 0x100bf3f6
cmp dword [ebx], 0
je 0x100befb9
mov ecx, esi
call fcn.100bf420
mov edi, dword [ebp + 0x7c]
mov dword [ebp - 0x14], eax
lea eax, [ebp + 8]
mov dword [ebp - 0x40], ebx
lea ebx, [esi + 0x38]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], ebx
jmp 0x100beff3
mov edi, dword [ebp + 0x7c]
nop dword [eax]
mov ebx, dword [ebp - 0x10]
push 0x40
lea eax, [ebp + 0x18]
push 0
push eax
call fcn.10088fa0
mov eax, dword [ebp + 0x78]
lea ecx, [ebp - 0x40]
add esp, 0xc
or eax, edi
jne 0x100bf01c
call fcn.100bd270
test al, al
jne 0x100bf3eb
jmp 0x100bf088
xor esi, esi
call fcn.100bd270
test al, al
je 0x100bf088
cmp esi, 0x20
jae 0x100bf044
call sub.KERNEL32.dll_SwitchToThread
add esi, 1
je 0x100bf088
lea ecx, [ebp - 0x40]
call fcn.100bd270
test al, al
jne 0x100bf027
jmp 0x100bf088
push 0
lea esi, [ebx + 4]
push 0xffffffffffffffff
mov ecx, esi
call fcn.100bfb50
mov al, byte [ebx + 8]
test al, al
jne 0x100bf081
lea ecx, [ebp - 0x40]
call fcn.100bd270
test al, al
je 0x100bf081
push edi
push dword [ebp + 0x78]
mov ecx, ebx
push esi
call fcn.100c06b0
test al, al
jne 0x100bf052
mov ecx, esi
call fcn.100bff90
jmp 0x100bf3eb
mov ecx, esi
call fcn.100bff90
mov edi, dword [ebp]
push 0
push 0xffffffffffffffff
lea esi, [edi + 0x30]
mov ecx, esi
call fcn.100bfb50
mov ecx, esi
call fcn.100bff90
push esi
lea ecx, [edi + 0x2c]
call fcn.100c0150
mov esi, edi
lea ecx, [esi + 0x44]
call fcn.100bb630
test eax, eax
je 0x100bf0c6
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x7c]
cmp eax, dword [esi + 0x1c]
je 0x100beff3
mov edi, dword [ebp + 0x10]
lea ebx, [edi + 0x40]
mov dword [ebp - 0x24], ebx
test ebx, ebx
jle 0x100bf3d5
cmp byte [ebp + 0x14], 0
je 0x100bf113
mov esi, dword [ebp + 0x18]
push ebx
push esi
call fcn.100be4c0
mov edi, eax
add esp, 8
test edi, edi
jne 0x100bf344
push 1
call fcn.10094405
push ebx
push esi
push dword [ebp + 0xc]
push str.fail:_shm::handle_for_large_message._msg_id:__zd__buf_id:__zd__size:__zd_n
push eax
call fcn.100bb480
add esp, 0x18
jmp 0x100befea
mov ebx, dword [ebp + 0xc]
movzx eax, bl
xor eax, 0x811c9dc5
mov esi, dword [ebp - 0x14]
imul ecx, eax, 0x1000193
movzx eax, bh
xor ecx, eax
movzx eax, byte [ebp + 0xe]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp + 0xf]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, esi
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.100bb900
mov ecx, dword [eax + 4]
mov eax, dword [esi + 8]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], eax
test ecx, ecx
je 0x100bf1c4
cmp ecx, eax
je 0x100bf1c4
lea ebx, [ecx + 0xc]
lea esi, [ebx + 4]
test edi, edi
jle 0x100bf37c
mov ecx, esi
call fcn.100bb630
mov edi, dword [ebp + 0x7c]
cmp dword [ebx], eax
jae 0x100beff0
mov ecx, esi
call fcn.100bb630
mov esi, dword [ebx]
lea ecx, [ebx + 4]
lea edi, [esi + 0x40]
cmp eax, edi
cmovb edi, eax
call fcn.100bb600
mov ecx, edi
sub ecx, esi
push ecx
lea ecx, [ebp + 0x18]
push ecx
mov ecx, dword [ebx]
add ecx, eax
push ecx
call fcn.10088a20
add esp, 0xc
mov dword [ebx], edi
jmp 0x100befea
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x40
jbe 0x100bf3c0
cmp dword [esi + 0xc], 0x400
jbe 0x100bf2c9
xor edx, edx
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
mov dword [ebp - 4], ecx
cmp esi, eax
je 0x100bf24f
nop dword [eax + eax]
mov edx, dword [esi + 8]
mov eax, ebx
cmp edx, ebx
mov ecx, edx
cmovae ecx, ebx
cmovae eax, edx
sub eax, ecx
cmp eax, 0x2000
jbe 0x100bf240
cmp edi, dword [ebp - 0x20]
je 0x100bf227
mov dword [edi], edx
add edi, 4
mov dword [ebp - 0x30], edi
jmp 0x100bf23d
lea eax, [esi + 8]
push eax
push edi
lea ecx, [ebp - 0x34]
call fcn.10001bf0
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x18]
jne 0x100bf200
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
mov esi, edx
cmp esi, edi
je 0x100bf272
mov ebx, dword [ebp - 0x14]
mov eax, dword [esi]
mov ecx, ebx
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100be380
add esi, 4
cmp esi, edi
jne 0x100bf258
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 4], 0xffffffff
test edx, edx
je 0x100bf2c9
mov eax, dword [ebp - 0x20]
sub eax, edx
sar eax, 2
lea ecx, [eax*4]
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf2aa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bf413
push ecx
push edx
call fcn.10084de4
add esp, 8
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov ebx, dword [ebp - 0x24]
push ebx
call fcn.100bf580
mov esi, eax
mov ecx, 0x40
push ecx
lea eax, [ebp + 0x18]
push eax
push esi
call fcn.10088a20
add esp, 0x10
lea ecx, [ebp - 0x38]
push 0x100be520
push ebx
push esi
call fcn.100bb520
lea eax, [ebp - 0x38]
mov dword [ebp - 4], 1
push eax
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x48], 0x40
call fcn.100bb4b0
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.100bba60
lea ecx, [ebp - 0x44]
call fcn.100bb590
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.100bb590
jmp 0x100befea
mov dword [ebp + 0x58], esi
mov esi, dword [ebp - 0x28]
push 0xc
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov esi, dword [esi]
mov dword [ebp + 0x5c], eax
call fcn.100bf580
movq xmm0, qword [ebp + 0x58]
add esp, 4
mov ecx, dword [ebp + 4]
movq qword [eax], xmm0
push eax
push 0x100bb640
push ebx
push edi
mov dword [eax + 8], esi
call fcn.100bb4f0
jmp 0x100bf3f3
mov ecx, dword [ebp - 0x24]
lea eax, [ebp + 0x18]
push ecx
push eax
mov ecx, ebx
call fcn.100bdda0
push esi
lea ecx, [ebp]
call fcn.100bb4b0
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 4], 3
call fcn.100bbc60
mov ecx, dword [ebp + 4]
lea eax, [ebp]
push eax
call fcn.100bb4b0
lea ecx, [ebp]
call fcn.100bb590
jmp 0x100bf3f3
mov esi, dword [ebp + 4]
lea eax, [ebp + 0x18]
push ecx
push eax
push esi
call fcn.100bc0b0
add esp, 0xc
mov eax, esi
jmp 0x100bf3f6
push 2
call fcn.10094405
push ebx
push str.fail:_recv__r_size___d_n
push eax
call fcn.100bb480
add esp, 0x10
mov ecx, dword [ebp + 4]
call fcn.100bb550
mov eax, dword [ebp + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x64]
xor ecx, ebp
call fcn.1008511a
lea esp, [ebp + 0x68]
pop ebp
ret
call fcn.1008ca42
int3