Function at 0x140033d60
Capabilities:
Hash data using murmur3

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xb0], rcx
call fcn.1400348f1
mov rcx, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xb8], rcx
mov ecx, 4
cqo
idiv rcx
mov rcx, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xd0], rcx
mov ecx, 4
cqo
idiv rcx
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0xc8], rdx
movabs rcx, 0xe129992ca61ee097
movabs rdx, 0xe129992ca61ee095
xor rcx, rdx
shl rax, cl
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0xd8], rax
cvtsi2sd xmm1, rcx
movsd xmm0, qword [0x1402014e8]
mulsd xmm1, xmm0
movsd qword [rsp + 0xe0], xmm1
cvtsi2sd xmm0, rax
ucomisd xmm1, xmm0
sete al
setnp cl
and al, cl
mov byte [rsp + 0xef], al
subsd xmm0, xmm1
movsd qword [rsp + 0xf0], xmm0
mov rdx, 0xffffffffffffffff
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0xf8], rdx
mov dword [rsp + 0x104], ecx
mov qword [rsp + 0x108], rax
mov al, byte [rsp + 0xef]
mov rcx, qword [rsp + 0xf8]
mov edx, dword [rsp + 0x104]
mov r8, qword [rsp + 0x108]
mov qword [rsp + 0x98], r8
mov dword [rsp + 0xa4], edx
mov qword [rsp + 0xa8], rcx
test al, 1
jne 0x140033ee3
movsd xmm0, qword [rsp + 0xf0]
call fcn.1401f23d0
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x90], xmm1
call fcn.1401f23d0
movsd xmm1, qword [rsp + 0x90]
movsd xmm2, qword [0x1402014f0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x140033ee3
call fcn.140009cc0
jmp 0x140034160
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xd8]
cmp rax, rcx
jge 0x1400343dd
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xc0]
mov edx, 0x21c42a93
xor edx, 0x21c42a93
mov dword [rsp + 0x114], edx
cmp rax, rcx
jl 0x14003402d
mov eax, dword [0x1401f48e0]
sub eax, dword [0x1401f48e4]
mov edx, 0xe7829402
xor edx, 0xe7829403
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x5e046a7d
add eax, ecx
mov ecx, eax
xor ecx, 0x598335f0
mov edx, 0x46943c02
xor edx, 0xb96bc3fd
xor ecx, edx
or eax, 0x598335f0
and eax, ecx
mov r8d, 0xef231ea3
xor r8d, 0xe84cf74b
mov ecx, 0x474977b0
xor ecx, 0xb8b6884f
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x76fe9e8
or eax, 0x76fe9e8
imul eax, edx
add eax, ecx
cmp eax, 0x264d598b
jbe 0x1400348d6
mov rcx, qword [rsp + 0x98]
mov edx, dword [0x1401f48e8]
sub edx, dword [0x1401f48ec]
mov r8d, 0xffffffff
xor r8d, 0xb55f1052
mov eax, edx
xor eax, r8d
and eax, edx
xor eax, 0xd5eca802
mov r8d, 0x47fee552
xor edx, edx
div r8d
mov rdx, qword [rsp + 0xc0]
mov dword [rsp + 0x8c], eax
movabs rax, 0x9e4dbab98a9fd4ee
movabs r8, 0x61b2454675602b11
xor rax, r8
add rdx, rax
call fcn.140013c92
mov eax, dword [rsp + 0x8c]
cmp eax, 0x6bbb2f12
jae 0x1400348d6
jmp 0x140034160
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xb0]
add rax, rcx
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x70], rax
mov eax, dword [0x1401f48f0]
xor eax, 0x8922efff
mov edx, dword [0x1401f48f4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0xc5f2ec0e
xor r8d, 0x3a0d13f1
xor edx, r8d
and eax, edx
sub eax, ecx
and eax, 0x88a3a4aa
mov edx, 0xffffffff
xor edx, 0x54521e62
mov ecx, eax
and ecx, edx
mov r8d, 0x7703e652
xor r8d, 0x2351f830
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x5ba64467
xor edx, edx
div ecx
cmp eax, 0x2571fd52
ja 0x1400348df
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x1401f48f8]
sub eax, dword [0x1401f48fc]
mov r8d, 0x6bea5193
xor edx, edx
div r8d
imul eax, eax, 0xf17d90b4
and eax, 0xb58e518
movabs rdx, 0x23338e25edc56d27
movabs r8, 0x23338e25edc56d23
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x6f], cl
cmp eax, 0xe94eee4c
ja 0x1400348df
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x14003414f
jmp 0x14003412a
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov cl, byte [rcx + rax]
mov byte [rsp + rax + 0x114], cl
add rax, 1
mov qword [rsp + 0x80], rax
jmp 0x14003404f
mov rax, qword [rsp + 0xb8]
cmp byte [rax], 0
je 0x14003416c
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x1400348c5
mov rdx, qword [rsp + 0xa8]
mov r10d, dword [rsp + 0xa4]
mov rax, qword [rsp + 0x98]
mov edi, dword [rsp + 0x114]
mov dword [rsp + 0x5c], edi
mov ecx, edi
xor ecx, 0xffffffff
mov r8d, 0x1a02c618
xor r8d, 0xd69ceb49
and r8d, ecx
mov r9d, 0xffffffff
xor r9d, 0xcc9e2d51
mov ecx, edi
and ecx, r9d
imul ecx, r8d
mov r8d, edi
and r8d, 0xcc9e2d51
mov r9d, 0xe74eba0e
xor r9d, 0x2bd0975f
mov ebx, edi
or ebx, r9d
imul ebx, r8d
add ebx, ecx
shr ebx, 0x11
mov ecx, 0xd67cd218
xor ecx, 0x29832de7
mov r8d, edi
xor r8d, ecx
and r8d, 0x16a88000
mov r9d, 0x1c3181f8
xor r9d, 0xa9901f8
mov ecx, 0xe3c4328f
xor ecx, 0x1c3bcd70
xor r9d, ecx
mov ecx, edi
and ecx, r9d
imul ecx, r8d
mov r8d, edi
and r8d, 0x16a88000
or edi, 0x16a88000
imul edi, r8d
add edi, ecx
mov ecx, ebx
xor ecx, 0xffffffff
mov r11d, edi
xor r11d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x9105f176
mov r8d, ecx
and r8d, 0x9105f176
and ebx, r9d
mov ebp, 0xb05c6084
xor ebp, 0x215991f2
mov esi, r11d
and esi, ebp
and edi, r9d
or r8d, ebx
or esi, edi
xor r8d, esi
or ecx, r11d
mov r11d, 0x99cc8b1d
xor r11d, 0x663374e2
xor ecx, r11d
or r9d, 0x9105f176
and ecx, r9d
or r8d, ecx
movabs rcx, 0xac85abe320ba746a
sub rax, rcx
movabs rcx, 0x697209ab0b6c53c5
movabs r9, 0x697209ab0b6c53c1
xor rcx, r9
add rax, rcx
movabs rcx, 0xac85abe320ba746a
add rax, rcx
mov r9d, r8d
xor r9d, 0xffffffff
and r9d, 0x1b873593
mov r11d, 0xffffffff
xor r11d, 0x1b873593
mov ecx, r8d
and ecx, r11d
imul ecx, r9d
mov r11d, 0xb9e1e60b
xor r11d, 0xa266d398
mov r9d, r8d
and r9d, r11d
or r8d, 0x1b873593
imul r8d, r9d
add r8d, ecx
mov ecx, r8d
and ecx, ecx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov r9d, r10d
xor r9d, 0xffffffff
or ecx, r9d
mov r9d, r10d
xor r9d, 0xffffffff
xor r10d, 0xffffffff
or r9d, r10d
and r8d, r9d
xor r8d, 0xffffffff
xor ecx, 0xffffffff
mov r9d, 0x665ad489
xor r9d, 0x99a52b76
xor r8d, r9d
or ecx, r8d
rol ecx, 0xd
mov r8d, 0x25fc7cd9
xor r8d, 0xda038326
mov r9d, ecx
xor r9d, r8d
and r9d, 5
mov r10d, 0x33c91bbf
xor r10d, 0x33c91bba
mov r8d, 0x7294ae54
xor r8d, 0x8d6b51ab
xor r10d, r8d
mov r8d, ecx
and r8d, r10d
imul r8d, r9d
mov r10d, 0x1f3822cb
xor r10d, 0x1f3822ce
mov r9d, ecx
and r9d, r10d
mov r10d, 0xc8dc2001
xor r10d, 0xc8dc2004
or ecx, r10d
imul ecx, r9d
add ecx, r8d
add ecx, 0xe6546b64
add rdx, 4
mov qword [rsp + 0xf8], rdx
mov dword [rsp + 0x104], ecx
mov qword [rsp + 0x108], rax
jmp 0x140033e55
mov rax, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xa8]
mov r8, rax
and r8, r9
shl r8, 1
mov rcx, rax
xor rcx, r9
add rcx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x4b], cl
xor ecx, ecx
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x50], rax
mov ecx, dword [rsp + 0x4c]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x44], ecx
cmp rax, 0
jle 0x140034699
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x98]
mov rax, rdx
and rax, 0xffffffffffffffff
mov r8, rdx
or r8, 0xffffffffffffffff
add rax, r8
mov qword [rsp + 0x28], rax
movabs r8, 0xc1591b6078fe7a72
add rax, r8
add rax, rcx
movabs rcx, 0xcfc6b4775c6d57c5
movabs r8, 0xe9faf1724932db7
xor rcx, r8
sub rax, rcx
mov qword [rsp + 0x30], rax
movabs rcx, 0x421539ac12702c08
movabs r8, 0x421539ac12702c08
xor rcx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400344c3
call fcn.140009cc0
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x1400348c5
mov eax, dword [0x1401f4900]
sub eax, dword [0x1401f4904]
xor eax, 0x6179e407
xor eax, 0x9a8fd7e5
mov ecx, 0x93335f79
xor edx, edx
div ecx
mov ecx, 0xa26f4600
xor ecx, 0x6705ded2
cmp eax, ecx
jae 0x1400348e8
mov r8b, byte [rsp + 0x4b]
mov rcx, qword [rsp + 0x30]
mov r9d, dword [0x1401f4908]
mov eax, dword [0x1401f490c]
sub r9d, 0x714bfc4b
add r9d, eax
add r9d, 0x714bfc4b
mov edx, 0xffffffff
xor edx, 0xfd818a71
mov eax, r9d
and eax, edx
mov edx, r9d
xor edx, 0xfd818a71
add r9d, edx
sub r9d, eax
mov eax, 0x35601720
xor eax, 0x6ed98f90
or r9d, eax
mov edx, r9d
xor edx, 0x69ac90c3
mov eax, 0xa461ed62
xor eax, 0xcdcd7da1
mov r10d, 0x63951ea9
xor r10d, 0x9c6ae156
xor eax, r10d
and r9d, eax
mov eax, 0xbcac9f36
xor eax, 0xbcac9f34
imul eax, r9d
sub eax, edx
cmp rcx, 0xffffffffffffffff
setg cl
or cl, cl
xor cl, 0xff
mov dl, r8b
xor dl, 0xff
mov r9b, 1
xor r9b, 0
xor r8b, r9b
and dl, r8b
xor r8d, r8d
xor r8b, 1
xor cl, r8b
mov r8b, 1
xor r8b, 0
xor dl, r8b
and cl, dl
mov byte [rsp + 0x27], cl
cmp eax, 0xcf71f8a6
ja 0x1400348e8
mov al, byte [rsp + 0x27]
test al, 1
jne 0x1400345f6
jmp 0x1400345d4
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0xc0]
add rdx, 0xffffffffffffffff
call fcn.140013c92
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x1400348c5
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x30]
mov esi, dword [rsp + 0x44]
shl esi, 8
movzx r11d, byte [rcx + rdx]
mov ecx, 0xbc78a043
xor ecx, 0x43875fbc
mov edx, esi
xor edx, ecx
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xb8c0ad5a
xor r8d, 0x38cbd888
mov ecx, 0xa90f19c4
xor ecx, 0x56f0e63b
xor r8d, ecx
mov ecx, edx
and ecx, 0x800b75d2
and esi, r8d
mov edi, 0xe3088d3e
xor edi, 0x6303f8ec
mov r10d, r9d
and r10d, edi
and r11d, r8d
or ecx, esi
or r10d, r11d
xor ecx, r10d
or edx, r9d
mov r9d, 0x6e13797d
xor r9d, 0x91ec8682
xor edx, r9d
or r8d, 0x800b75d2
and edx, r8d
or ecx, edx
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x50], rax
jmp 0x14003441d
mov rcx, qword [rsp + 0xb8]
xor eax, eax
cmp byte [rcx], 0
mov qword [rsp + 0x60], rax
jne 0x1400348c5
mov eax, dword [rsp + 0xa4]
mov r8d, dword [rsp + 0x44]
mov ecx, 0x62f019fe
xor ecx, 0x9d0fe601
mov edx, r8d
xor edx, ecx
and edx, 0xcc9e2d51
mov r9d, 0xaef732c2
xor r9d, 0x62691f93
mov ecx, 0x4447aca7
xor ecx, 0xbbb85358
xor r9d, ecx
mov ecx, r8d
and ecx, r9d
imul ecx, edx
mov r9d, r8d
and r9d, 0xcc9e2d51
mov edx, r8d
or edx, 0xcc9e2d51
imul edx, r9d
add edx, ecx
mov ecx, 0x16ef64ca
xor ecx, 0x16ef64db
shr edx, cl
mov rcx, qword [rsp + 0xc0]
imul r9d, r8d, 0x16a88000
mov r8d, r9d
and r8d, edx
xor r8d, 0xffffffff
add edx, r9d
add edx, 1
add edx, r8d
imul r9d, edx, 0x1b873593
mov r8d, ecx
mov ecx, r9d
xor ecx, 0xffffffff
mov edx, 0x38c2559c
xor edx, 0x685e6c63
and edx, ecx
mov r10d, 0xffffffff
xor r10d, 0x509c39ff
and r9d, r10d
mov ecx, r8d
xor ecx, 0xffffffff
mov r11d, 0xb2349a1f
xor r11d, 0xe2a8a3e0
and ecx, r11d
and r8d, r10d
or edx, r9d
or ecx, r8d
xor edx, ecx
xor edx, eax
mov ecx, edx
shr ecx, 0x10
mov eax, ecx
xor eax, 0xffffffff
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r9d, 0xedd82641
xor r9d, 0x1227d9be
mov r8d, edx
xor r8d, r9d
or eax, r8d
and edx, edx
xor edx, 0xffffffff
mov r8d, 0x2d80d104
xor r8d, 0xd27f2efb
xor ecx, r8d
mov r8d, 0x11eea044
xor r8d, 0xee115fbb
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x77713a2c
xor edx, 0x888ec5d3
xor ecx, edx
or eax, ecx
mov ecx, 0x19534d73
xor ecx, 0x9cb88718
imul eax, ecx
mov edx, eax
shr edx, 0xd
xor edx, eax
mov eax, 0xe65b557d
xor eax, 0x19a4aa82
mov ecx, edx
xor ecx, eax
and ecx, 0xc2b2ae35
mov r8d, 0x1341c045
xor r8d, 0xd1f36e70
mov eax, 0x405adb3a
xor eax, 0xbfa524c5
xor r8d, eax
mov eax, edx
and eax, r8d
imul eax, ecx
mov r8d, 0x4c708ca2
xor r8d, 0x8ec22297
mov ecx, edx
and ecx, r8d
mov r8d, 0xf0e95e02
xor r8d, 0x325bf037
or edx, r8d
imul edx, ecx
add edx, eax
mov ecx, edx
shr ecx, 0x10
mov eax, ecx
xor eax, 0xffffffff
mov r8d, ecx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, edx
or r8d, r8d
mov r9d, 0xb3f1c09b
xor r9d, 0x4c0e3f64
xor r8d, r9d
or eax, r8d
mov r8d, 0x80393f36
xor r8d, 0x7fc6c0c9
xor eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x782a7fa
xor edx, 0xf87d5805
xor ecx, edx
and eax, ecx
mov eax, eax
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
ret
wait
insb byte [rdi], dx
add al, 0x6c
jmp 0x140033fb0
int3
xchg ebp, eax
cmpsb byte [rsi], byte [rdi]
push rsi
jmp 0x1400344f5