Function at 0x1402222a0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1c8
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0x130], xmm6
mov qword [rbp + 0x128], 0xfffffffffffffffe
mov edi, r9d
mov rbx, r8
mov rsi, rcx
lea rcx, [rbp - 0x58]
mov r8d, 0x88
call sub.VCRUNTIME140.dll_memcpy
movdqu xmm0, xmmword [rbx]
movdqu xmmword [rbp + 0x30], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x48], edi
cmp qword [rbp + 0x20], 0
je 0x1402228e4
mov rax, qword [rbp + 0x18]
mov rbx, qword [rbp + 0x40]
mov rax, qword [rax + 0x38]
shr rax, 6
mov qword [rbp + 0x58], rax
cmp rax, rbx
jae 0x140222455
mov qword [rbp + 0xd0], rbx
lea rbx, [rbp + 0xd0]
mov qword [rbp + 0x90], rbx
lea rax, [fcn.140286070]
mov qword [rbp + 0x98], rax
lea rax, [rbp + 0x58]
mov qword [rbp + 0xa0], rax
lea rax, [fcn.140286070]
mov qword [rbp + 0xa8], rax
lea rax, str.MiniFAT_has__entries__but_mini_sector__points_to
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], 3
mov qword [rbp + 0x110], 0
lea rax, [rbp + 0x90]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], 2
lea rdi, [rbp + 0x70]
lea rdx, [rbp + 0xf0]
mov rcx, rdi
call fcn.140279820
mov qword [rbp + 0xd0], rdi
lea rax, [0x14008b910]
mov qword [rbp + 0xd8], rax
lea rax, str.Malformed_MiniFAT___
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], 2
mov qword [rbp + 0x110], 0
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], 1
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0xf0]
call fcn.140279820
mov rdx, qword [rbp + 0x70]
test rdx, rdx
je 0x140222424
mov rcx, qword [rbp + 0x78]
mov r8d, 1
call fcn.140115a00
movdqu xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0xf0], xmm0
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x100], rax
lea rdx, [rbp + 0xf0]
mov cl, 0x15
call fcn.140221b40
jmp 0x140222705
movups xmm0, xmmword [0x1404c8b00]
movaps xmmword [rbp + 0x80], xmm0
movdqu xmm0, xmmword [0x1404c8af0]
movdqa xmmword [rbp + 0x70], xmm0
mov r14, qword [rbp + 0x38]
lea r15, [r14 + rbx*4]
xor r12d, r12d
mov eax, 0xfffffffa
pcmpeqd xmm6, xmm6
jmp 0x14022249b
lea rcx, [rbp + 0x70]
call fcn.140221d00
mov eax, 0xfffffffa
add r14, 4
inc r12
cmp r14, r15
je 0x14022273d
mov qword [rbp + 0x50], r12
mov edx, dword [r14]
mov dword [rbp + 0xcc], edx
cmp rdx, rax
ja 0x140222494
cmp rbx, rdx
jbe 0x140222781
cmp qword [rbp + 0x88], 0
je 0x140222486
mov eax, edx
shr eax, 0x10
mov ecx, edx
shr ecx, 0x18
movzx r8d, dl
movabs r9, 0xcbf29ce484222325
xor r8, r9
movabs r9, 0x100000001b3
imul r8, r9
movzx edi, dh
xor rdi, r8
imul rdi, r9
movzx eax, al
xor rax, rdi
imul rax, r9
xor rax, rcx
imul rax, r9
mov r13, qword [rbp + 0x70]
mov r8, qword [rbp + 0x78]
mov r9, rax
shr r9, 0x39
movd xmm0, r9d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r9d, r9d
and rax, r8
movdqu xmm1, xmmword [r13 + rax]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb r10d, xmm2
nop dword [rax]
test r10w, r10w
je 0x140222580
tzcnt r11d, r10d
lea edi, [r10 - 1]
and edi, r10d
add r11, rax
and r11, r8
shl r11, 2
mov rcx, r13
sub rcx, r11
mov r10d, edi
cmp edx, dword [rcx - 4]
jne 0x140222550
jmp 0x14022259f
pcmpeqb xmm1, xmm6
pmovmskb r10d, xmm1
test r10d, r10d
jne 0x140222486
add rax, r9
add rax, 0x10
add r9, 0x10
jmp 0x140222532
lea rax, [rbp + 0xcc]
mov qword [rbp + 0xd0], rax
lea rax, [0x140285e20]
mov qword [rbp + 0xd8], rax
lea rax, str.mini_sector__pointed_to_twice
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], 2
mov qword [rbp + 0x110], 0
lea rdi, [rbp + 0xd0]
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 1
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0xf0]
call fcn.140279820
movdqu xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0xd0], xmm0
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0x60], rdi
lea rax, [0x14008b910]
mov qword [rbp + 0x68], rax
lea rax, str.Malformed_MiniFAT___
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], 2
mov qword [rbp + 0x110], 0
lea rax, [rbp + 0x60]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], 1
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0xf0]
call fcn.140279820
mov rdx, qword [rbp + 0xd0]
test rdx, rdx
je 0x1402226a3
mov rcx, qword [rbp + 0xd8]
mov r8d, 1
call fcn.140115a00
movdqu xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0xf0], xmm0
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x100], rax
lea rdx, [rbp + 0xf0]
mov cl, 0x15
call fcn.140221b40
mov rdx, qword [rbp + 0x78]
test rdx, rdx
je 0x140222705
lea r8, [rdx*4 + 0x13]
and r8, 0xfffffffffffffff0
add rdx, r8
add rdx, 0x11
je 0x140222705
mov rcx, qword [rbp + 0x70]
sub rcx, r8
mov r8d, 0x10
mov rdi, rax
call fcn.140115a00
mov rax, rdi
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
lea rcx, [rbp - 0x58]
call fcn.140222b90
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x130]
add rsp, 0x1c8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rdx, qword [rbp + 0x78]
test rdx, rdx
je 0x14022276d
lea rax, [rdx*4 + 0x13]
and rax, 0xfffffffffffffff0
add rdx, rax
add rdx, 0x11
je 0x14022276d
mov rcx, qword [rbp + 0x70]
sub rcx, rax
mov r8d, 0x10
call fcn.140115a00
lea rdx, [rbp - 0x58]
mov r8d, 0xa8
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
jmp 0x14022271f
mov qword [rbp + 0x60], rbx
lea rbx, [rbp + 0x60]
mov qword [rbp + 0xf0], rbx
lea rax, [fcn.140286070]
mov qword [rbp + 0xf8], rax
lea rcx, [rbp + 0x50]
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
lea rax, [rbp + 0xcc]
mov qword [rbp + 0x110], rax
lea rax, [0x140285e20]
mov qword [rbp + 0x118], rax
lea rax, str.MiniFAT_has__entries__but_mini_sector__points_to
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x98], 3
mov qword [rbp + 0xb0], 0
lea rax, [rbp + 0xf0]
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xa8], 3
lea rcx, [rbp + 0xd0]
lea rdi, [rbp + 0x90]
mov rdx, rdi
call fcn.140279820
movdqu xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0x90], xmm0
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0x60], rdi
lea rax, [0x14008b910]
mov qword [rbp + 0x68], rax
lea rax, str.Malformed_MiniFAT___
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], 2
mov qword [rbp + 0x110], 0
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], 1
lea rcx, [rbp + 0xd0]
lea rdx, [rbp + 0xf0]
call fcn.140279820
mov rdx, qword [rbp + 0x90]
test rdx, rdx
je 0x1402228b3
mov rcx, qword [rbp + 0x98]
mov r8d, 1
call fcn.140115a00
movdqu xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0xf0], xmm0
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x100], rax
lea rdx, [rbp + 0xf0]
mov cl, 0x15
call fcn.140221b40
jmp 0x1402226cf
lea r8, [0x1404c8cd8]
xor ecx, ecx
xor edx, edx
call fcn.14029a020
ud2