Function at 0x18006b840
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r13
push rbp
push r14
push r15
sub rsp, 0x170
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov r13, rdx
mov r14, rcx
cmp byte [rcx], 0
je 0x18006c005
cmp byte [rcx + 1], 0
je 0x18006c005
mov rbx, qword [rcx + 0x10]
mov eax, dword [0x1802c7624]
test al, 1
jne 0x18006ba2d
or eax, 1
mov dword [0x1802c7624], eax
movabs rax, 0x62f0d71a9563b6e0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rax, 0x5b96c360721c7add
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0xa1e905255600dca6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0x9a01a23c920c0816
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0x1f5c6b682a24e1b2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rcx, 0x86d5e923361241cc
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
movabs rax, 0x1b91bb4ac620e9a3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0x3ad4ad17134c08b8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0xe2995a48682db9d5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0xcd66cc55e27c617a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0x1f5c6b06455480d7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
vmovdqu ymm0, ymmword [rbp + 0x80]
vpxor ymm1, ymm0, ymmword [rbp + 0x40]
vmovdqu ymmword [rbp + 0x80], ymm1
vmovdqa xmm0, xmmword [rbp + 0xa0]
vxorps xmm0, xmm0, xmmword [rbp + 0x60]
vmovdqa xmmword [rbp + 0xa0], xmm0
vmovd eax, xmm1
mov ecx, 0x811c9dc5
test al, al
jne 0x18006ba04
vzeroupper
jmp 0x18006ba20
movsx eax, al
xor eax, ecx
imul edx, eax, 0x1000193
lea rcx, [rbp + 0x81]
vzeroupper
call fcn.18001fa00
mov ecx, eax
call fcn.18001f430
mov dword [0x1802c7620], eax
jmp 0x18006ba33
mov eax, dword [0x1802c7620]
mov eax, eax
mov rdx, qword [rax + rbx]
test rdx, rdx
je 0x18006c005
add rdx, 0x10
je 0x18006c005
mov rdx, qword [rdx]
add rdx, 0x20
cmp rdx, 0x28
jb 0x18006c005
mov rdx, qword [rdx]
test rdx, rdx
je 0x18006c005
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18006ba90
lea rcx, [rbp + 0x18]
call fcn.180002710
nop
lea rsi, [rbp + 0x18]
mov rdi, qword [rbp + 0x30]
cmp rdi, 0xf
cmova rsi, qword [rbp + 0x18]
mov rbx, qword [rbp + 0x28]
cmp rbx, 1
jb 0x18006bb00
lea r15, [rbx + rsi]
mov r8, rbx
mov edx, 0x5f
mov rcx, rsi
call fcn.18011fd40
mov rcx, rax
test rax, rax
je 0x18006bb00
nop dword [rax + rax]
cmp byte [rcx], 0x5f
je 0x18006bb3d
inc rcx
mov r8, r15
sub r8, rcx
mov edx, 0x5f
call fcn.18011fd40
mov rcx, rax
test rax, rax
jne 0x18006bae0
cmp rdi, 3
jb 0x18006bbe2
lea rbx, [rbp + 0x18]
cmp rdi, 0xf
cmova rbx, qword [rbp + 0x18]
mov qword [rbp + 0x28], 3
mov r8d, 3
lea rdx, [0x1801338f0]
mov rcx, rbx
call fcn.18011f220
mov byte [rbx + 3], 0
jmp 0x18006bcc6
sub rcx, rsi
cmp rcx, 0xffffffffffffffff
je 0x18006bb00
test rbx, rbx
je 0x18006bb00
mov r8, rbx
sub r8, rcx
dec r8
inc rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x50], xmm1
cmp rbx, rcx
jb 0x18006c053
sub rbx, rcx
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x18]
cmp rdi, 0xf
cmova rdx, qword [rbp + 0x18]
add rdx, rcx
lea rcx, [rbp + 0x40]
call fcn.180002710
mov rdx, qword [rbp + 0x30]
cmp rdx, 0xf
jbe 0x18006bbcd
inc rdx
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006bbc8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006c059
call fcn.1800e66b8
movups xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x18], xmm0
movups xmm1, xmmword [rbp + 0x50]
movups xmmword [rbp + 0x28], xmm1
jmp 0x18006bcc6
mov rcx, rdi
shr rcx, 1
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
sub rax, rcx
cmp rdi, rax
jbe 0x18006bc2a
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1800e667c
test rax, rax
je 0x18006c059
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x18006bc67
lea rax, [rcx + rdi]
mov esi, reloc.WS2_32.dll_ntohs
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
test rcx, rcx
jne 0x18006bc47
xor ebx, ebx
jmp 0x18006bc67
cmp rcx, 0x1000
jb 0x18006bc5f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006c04d
jmp 0x18006bc0b
call fcn.1800e667c
mov rbx, rax
mov qword [rbp + 0x28], 3
mov qword [rbp + 0x30], rsi
mov ecx, dword [0x1801338f0]
mov word [rbx], cx
movzx ecx, byte [0x1801338f2]
mov byte [rbx + 2], cl
mov byte [rbx + 3], 0
cmp rdi, 0xf
jbe 0x18006bcc2
lea rdx, [rdi + 1]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006bcbd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006c059
call fcn.1800e66b8
mov qword [rbp + 0x18], rbx
lea rdx, [rbp]
mov rcx, r14
call fcn.18006ab90
cmp byte [0x1802c7268], 0
je 0x18006beb0
mov rcx, qword [0x1802c75f8]
call fcn.180033970
lea rcx, [rbp + 0x18]
call fcn.18006c060
mov rdi, rax
movss xmm11, dword [0x18012d00c]
movss dword [rsp + 0x20], xmm11
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.180026bf0
movss xmm1, dword [rbp + 0xc]
movaps xmm6, xmm1
movss xmm7, dword [rbp + 4]
subss xmm6, xmm7
movss xmm9, dword [0x18012d4e4]
mulss xmm6, xmm9
xorps xmm6, xmmword [0x18012f0d0]
movaps xmm0, xmm6
subss xmm0, dword [0x18012eff8]
addss xmm7, xmm1
mulss xmm7, xmm9
movss xmm8, dword [rbp]
addss xmm8, dword [rbp + 8]
mulss xmm8, xmm9
movaps xmm2, xmm7
subss xmm2, xmm0
movss xmm1, dword [rbp + 0x38]
mulss xmm1, xmm9
movaps xmm0, xmm8
subss xmm0, xmm1
movss dword [rbp + 0x10], xmm0
movss dword [rbp + 0x14], xmm2
call fcn.18002a8f0
mov rbx, rax
movdqa xmm0, xmmword [0x1801341b0]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.180027ba0
movss xmm1, dword [rbp + 0x14]
movss xmm10, dword [0x18012ba4c]
addss xmm1, xmm10
movss xmm0, dword [rbp + 0x10]
addss xmm0, xmm10
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm1
xor esi, esi
mov qword [rsp + 0x20], rsi
mov r9, rdi
mov r8d, eax
lea rdx, [rbp]
mov rcx, rbx
call fcn.1800404e0
call fcn.18002a8f0
mov rbx, rax
mov rcx, r13
call fcn.180027ba0
mov qword [rsp + 0x20], rsi
mov r9, rdi
mov r8d, eax
lea rdx, [rbp + 0x10]
mov rcx, rbx
call fcn.1800404e0
call fcn.180033510
cmp byte [0x1802c7269], sil
jne 0x18006bfce
lea rdx, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rdx, qword [rbp + 0x18]
movss dword [rsp + 0x20], xmm11
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x38]
call fcn.180026bf0
subss xmm6, dword [0x18012f028]
subss xmm7, xmm6
movss xmm0, dword [rbp + 0x38]
mulss xmm0, xmm9
subss xmm8, xmm0
movss dword [rbp + 0x10], xmm8
movss dword [rbp + 0x14], xmm7
call fcn.18002a8f0
mov rdi, rax
lea rbx, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rbx, qword [rbp + 0x18]
movdqa xmm0, xmmword [0x1801341b0]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.180027ba0
movss xmm1, dword [rbp + 0x14]
addss xmm1, xmm10
movss xmm0, dword [rbp + 0x10]
addss xmm0, xmm10
movss dword [rbp + 4], xmm1
jmp 0x18006bf7c
lea rdx, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rdx, qword [rbp + 0x18]
movss xmm0, dword [0x18012d00c]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x38]
call fcn.180026bf0
movss xmm0, dword [rbp + 0xc]
movaps xmm1, xmm0
movss xmm3, dword [rbp + 4]
subss xmm1, xmm3
movss xmm2, dword [0x18012d4e4]
mulss xmm1, xmm2
xorps xmm1, xmmword [0x18012f0d0]
addss xmm3, xmm0
mulss xmm3, xmm2
subss xmm3, xmm1
movss xmm1, dword [rbp]
addss xmm1, dword [rbp + 8]
mulss xmm1, xmm2
movss xmm0, dword [rbp + 0x38]
mulss xmm0, xmm2
subss xmm1, xmm0
movss dword [rbp + 0x10], xmm1
movss dword [rbp + 0x14], xmm3
call fcn.18002a8f0
mov rdi, rax
lea rbx, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rbx, qword [rbp + 0x18]
movdqa xmm0, xmmword [0x1801341b0]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.180027ba0
movss xmm2, dword [rbp + 0x14]
addss xmm2, dword [0x18012ba4c]
movss xmm0, dword [rbp + 0x10]
addss xmm0, dword [0x18012ba4c]
movss dword [rbp + 4], xmm2
xor esi, esi
mov qword [rsp + 0x20], rsi
movss dword [rbp], xmm0
mov r9, rbx
mov r8d, eax
lea rdx, [rbp]
mov rcx, rdi
call fcn.1800404e0
call fcn.18002a8f0
lea rbx, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rbx, qword [rbp + 0x18]
mov rdi, rax
mov rcx, r13
call fcn.180027ba0
mov qword [rsp + 0x20], rsi
mov r9, rbx
mov r8d, eax
lea rdx, [rbp + 0x10]
mov rcx, rdi
call fcn.1800404e0
nop
mov rdx, qword [rbp + 0x30]
cmp rdx, 0xf
jbe 0x18006c005
inc rdx
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006c000
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006c047
call fcn.1800e66b8
mov rax, r14
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r13, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1800ec8e4
nop
call fcn.180011630
nop
call fcn.180011830
int3
call fcn.1800ec8e4
int3