Function at 0x1400adb90
Capabilities:
Hash data using murmur3

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov r14, rcx
mov rsi, rdx
mov rcx, qword [rdx]
mov edx, dword [rcx + 8]
mov eax, edx
and al, 3
cmp al, 1
jne 0x1400adf15
mov rax, qword [rsi + 8]
xor edi, edi
shr edx, 2
test rax, rax
je 0x1400adc87
mov edi, dword [rax]
test edi, edi
je 0x1400adcaf
add r14, 0x18
and dl, 3
cmp dl, 1
jne 0x1400adc9c
mov r9, qword [r14 + 0x18]
mov r8d, dword [rcx + 4]
test r9, r9
je 0x1400ae158
movabs rcx, 0xff51afd7ed558ccd
mov eax, r8d
imul rax, rcx
mov rdx, rax
shr rdx, 0x21
xor rdx, rax
movabs rax, 0xc4ceb9fe1a85ec53
imul rdx, rax
mov rax, qword [r14 + 0x10]
dec rax
mov rcx, rdx
shr rcx, 0x21
xor rcx, rdx
and rcx, rax
mov rax, qword [r9 + rcx*8]
lea rdx, [r9 + rcx*8]
test rax, rax
je 0x1400adc61
nop dword [rax]
cmp r8d, dword [rax + 8]
je 0x1400adc61
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x1400adc50
mov rdx, qword [rdx]
test rdx, rdx
je 0x1400ae158
mov rax, qword [rdx + 0x30]
test rax, rax
je 0x1400ae158
add rdx, 0x40
mov ecx, edi
call rax
jmp 0x1400ae158
mov eax, edx
and al, 3
cmp al, 2
jne 0x1400adbd9
mov edi, 1
add r14, 0x18
mov edx, dword [rcx + 4]
mov r8d, edi
mov rcx, r14
call fcn.1400ae180
jmp 0x1400ae158
mov r8, qword [rsi + 0x10]
test r8, r8
jne 0x1400add04
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1400acf00
lea rcx, str._Dispatch_payload_is_invalidinfo_s
mov rdx, qword [rax]
call fcn.1400ad540
movabs rax, 0x8000000000000000
test qword [rsp + 0x58], rax
jne 0x1400adcfd
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1401262a0]
xor r9d, r9d
lea r8d, [r9 - 6]
call fcn.140025f00
xor al, al
jmp 0x1400ae15a
mov rbx, qword [rsi + 0x20]
and dl, 3
mov rdi, qword [rsi + 0x18]
add rbx, r8
mov r8d, dword [rcx + 4]
mov r9, qword [r14 + 0x30]
cmp dl, 1
jne 0x1400addd6
test r9, r9
je 0x1400ae158
movabs rcx, 0xff51afd7ed558ccd
mov eax, r8d
imul rax, rcx
mov rdx, rax
shr rdx, 0x21
xor rdx, rax
movabs rax, 0xc4ceb9fe1a85ec53
imul rdx, rax
mov rax, qword [r14 + 0x28]
dec rax
mov rcx, rdx
shr rcx, 0x21
xor rcx, rdx
and rcx, rax
mov rax, qword [r9 + rcx*8]
lea rdx, [r9 + rcx*8]
test rax, rax
je 0x1400add87
cmp r8d, dword [rax + 8]
je 0x1400add87
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x1400add76
mov rdx, qword [rdx]
test rdx, rdx
je 0x1400ae158
mov r10, qword [rdx + 0x50]
test r10, r10
je 0x1400addbb
lea rax, [rdx + 0x60]
mov rcx, rbx
lea r9, [rdx + 0x30]
mov qword [rsp + 0x20], rax
lea r8, [rdx + 0x10]
mov rdx, rdi
call r10
jmp 0x1400ae158
mov rax, qword [rdx + 0x10]
test rax, rax
je 0x1400ae158
add rdx, 0x20
mov rcx, rbx
call rax
jmp 0x1400ae158
test r9, r9
je 0x1400ae158
movabs rcx, 0xff51afd7ed558ccd
mov rax, r8
imul rax, rcx
mov rdx, rax
shr rdx, 0x21
xor rdx, rax
movabs rax, 0xc4ceb9fe1a85ec53
imul rdx, rax
mov rax, qword [r14 + 0x28]
dec rax
mov rcx, rdx
shr rcx, 0x21
xor rcx, rdx
and rcx, rax
mov rax, qword [r9 + rcx*8]
lea rdx, [r9 + rcx*8]
mov rcx, rdx
test rax, rax
je 0x1400ade41
nop dword [rax]
cmp r8d, dword [rax + 8]
je 0x1400ade41
mov rcx, rax
mov rax, qword [rax]
test rax, rax
jne 0x1400ade30
mov r8, qword [rcx]
test r8, r8
je 0x1400ae158
mov rax, qword [r14 + 0x28]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rdx, [r9 + rax*8]
mov qword [rsp + 0x40], rdx
lea rdx, [r8 + 0x10]
call fcn.1400ad850
movups xmm0, xmmword [rsp + 0x30]
lea r8, [rbp - 0x10]
movsd xmm1, qword [rsp + 0x40]
lea rdx, [rsp + 0x48]
lea rcx, [r14 + 0x18]
movaps xmmword [rbp - 0x10], xmm0
movsd qword [rbp], xmm1
call fcn.1400ae990
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1400adebd
lea rcx, [rbp - 0x40]
mov rdx, rdi
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x70]
mov rcx, rbx
lea r8, [rsp + 0x70]
call rax
jmp 0x1400aded0
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400aded0
lea rdx, [rbp - 0x80]
mov rcx, rbx
call rax
mov rax, qword [rbp - 0x30]
test rax, rax
je 0x1400adedf
lea rcx, [rbp - 0x20]
call rax
xor r8d, r8d
lea rcx, [rbp - 0x20]
xor edx, edx
call qword [rbp - 0x28]
xor r8d, r8d
lea rcx, [rbp - 0x40]
xor edx, edx
call qword [rbp - 0x48]
xor r8d, r8d
lea rcx, [rbp - 0x60]
xor edx, edx
call qword [rbp - 0x68]
xor r8d, r8d
lea rcx, [rbp - 0x80]
xor edx, edx
call qword [rsp + 0x78]
jmp 0x1400ae158
mov edx, dword [rcx]
lea rcx, [rbp + 0xc8]
call fcn.1400ac8d0
mov rcx, qword [rbp + 0xc8]
test rcx, rcx
jne 0x1400adf93
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1400acf00
lea rcx, str._Dispatch_service_is_not_registeredinfo_s
mov rdx, qword [rax]
call fcn.1400ad540
movabs rax, 0x8000000000000000
test qword [rsp + 0x58], rax
jne 0x1400adf74
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1401262a0]
xor r9d, r9d
lea r8d, [r9 - 6]
call fcn.140025f00
mov rax, qword [rsi]
xor edi, edi
mov rcx, r14
mov dword [rsp + 0x20], edi
mov r9d, dword [rax + 4]
lea edx, [rdi + 3]
mov r8d, dword [rax]
call fcn.1400ae390
xor bl, bl
jmp 0x1400adfce
mov rax, qword [rcx]
call qword [rax + 0x18]
test al, al
je 0x1400adff3
mov rax, qword [rsi]
test byte [rax + 8], 0xc
jne 0x1400adfb6
lea rcx, str._Dispatch_invalid_streaming_state_for_streaming_request
call fcn.1400ad540
xor bl, bl
jmp 0x1400adfce
lea r8, [rbp + 0xc8]
mov rdx, rsi
mov rcx, r14
call fcn.1400ae620
test al, al
je 0x1400adff3
mov bl, 1
mov rcx, qword [rbp + 0xc8]
test rcx, rcx
je 0x1400adfeb
sub dword [rcx + 8], 1
jne 0x1400adfeb
mov r8, qword [rcx]
mov edx, 1
call qword [r8]
movzx eax, bl
jmp 0x1400ae15a
lea rcx, [r14 + 0x70]
call fcn.1400ac1c0
mov rcx, qword [r14]
lea rdx, [rsp + 0x30]
call fcn.1400ab110
mov rdx, rax
lea r8, [r14 + 0x70]
lea rcx, [rbp + 0x10]
call fcn.1400abd80
mov rcx, qword [rsp + 0x38]
mov r14d, 0xffffffff
test rcx, rcx
je 0x1400ae03c
mov eax, r14d
lock xadd dword [rcx + 0xc], eax
cmp eax, 1
jne 0x1400ae03c
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rbx, qword [rbp + 0xc8]
test rbx, rbx
je 0x1400ae04b
inc dword [rbx + 8]
mov rcx, qword [rbp + 0x80]
mov edi, 1
cmp rbx, rcx
je 0x1400ae07e
test rcx, rcx
je 0x1400ae06d
sub dword [rcx + 8], edi
jne 0x1400ae06d
mov rax, qword [rcx]
mov edx, edi
call qword [rax]
mov qword [rbp + 0x80], rbx
test rbx, rbx
je 0x1400ae092
inc dword [rbx + 8]
jmp 0x1400ae083
test rbx, rbx
je 0x1400ae092
sub dword [rbx + 8], edi
jne 0x1400ae092
mov rax, qword [rbx]
mov edx, edi
mov rcx, rbx
call qword [rax]
mov rcx, qword [rsi]
mov eax, dword [rcx]
mov dword [rbp + 0x50], eax
mov eax, dword [rcx + 4]
mov dword [rbp + 0x54], eax
mov eax, dword [rcx + 8]
and al, 3
cmp al, 2
je 0x1400ae0ac
or dword [rbp + 0x68], edi
mov eax, dword [rcx + 8]
lea rcx, [rbp + 0x10]
mov r8, qword [rsi + 0x18]
mov rdx, qword [rsi + 0x10]
shr eax, 2
and eax, 3
mov dword [rbp + 0x58], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x60], rax
call fcn.1400ac3e0
mov rcx, qword [rbp + 0xc8]
lea rdx, [rbp + 0x10]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
lea rcx, [rbp + 0x10]
call fcn.1400ac1d0
mov rax, qword [rbp + 0x98]
test rax, rax
je 0x1400ae100
mov rcx, qword [rbp + 0x90]
call rax
mov rcx, qword [rbp + 0x80]
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x90], xmm0
test rcx, rcx
je 0x1400ae123
sub dword [rcx + 8], edi
jne 0x1400ae123
mov rax, qword [rcx]
mov edx, edi
call qword [rax]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1400ae140
lock xadd dword [rcx + 0xc], r14d
lea eax, [r14 - 1]
test eax, eax
jne 0x1400ae140
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rcx, qword [rbp + 0xc8]
test rcx, rcx
je 0x1400ae158
sub dword [rcx + 8], edi
jne 0x1400ae158
mov rax, qword [rcx]
mov edx, edi
call qword [rax]
mov al, 1
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret