Function at 0x1401a3790
Capabilities:
Hash data using murmur3

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x260
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x298], rbx
vmovaps xmmword [rbp + 0x230], xmm6
mov rax, qword [0x14143b040]
xor rax, rbp
mov qword [rbp + 0x220], rax
mov r15d, r9d
mov dword [rbp + 0x40], r9d
movzx ebx, r8w
mov word [rbp + 2], bx
mov r12, rdx
mov qword [rbp + 8], rdx
mov r13, rcx
mov rax, qword [rdx]
mov qword [rbp + 0x30], rax
movzx edi, byte [rax + 6]
mov byte [rbp], dil
movzx esi, word [rax + 4]
shl rsi, 0x20
mov eax, dword [rax]
or rsi, rax
lea r14, [rcx + 0xfa8]
add rsi, 0xa
mov qword [rbp + 0x20], rsi
mov rdx, rsi
mov rcx, r14
call fcn.14012a3e0
lea rdx, [rax + rax*8]
shl rdx, 4
add rdx, qword [r14 + 0x10]
xor ecx, ecx
movabs r8, 0xc4ceb9fe1a85ec53
cmp rdx, qword [r13 + 0xfc0]
jne 0x1401a392c
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x58], r8
lea rax, [rbp + 0x78]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x78]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rcx
mov qword [rbp + 0x78], rcx
mov qword [rbp + 0x80], rcx
mov qword [rbp + 0x88], 0x20
mov qword [rbp + 0x98], r8
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xa0], rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rcx
mov qword [rbp + 0xc0], rcx
mov qword [rbp + 0xc8], 0x20
lea r9, [rbp + 0x48]
mov r8, rsi
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.1401b3640
vmovups xmm0, xmmword [rax]
vmovups xmmword [rbp + 0x210], xmm0
cmp qword [rbp + 0xb8], 0
je 0x1401a3902
mov qword [rbp + 0xb0], 0
lea rax, [rbp + 0xb8]
mov rcx, qword [rbp + 0xa0]
cmp rcx, rax
je 0x1401a3902
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
cmp qword [rbp + 0x78], 0
je 0x1401a3925
mov qword [rbp + 0x70], 0
lea rax, [rbp + 0x78]
mov rcx, qword [rbp + 0x60]
cmp rcx, rax
je 0x1401a3925
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rdx, qword [rbp + 0x210]
add dword [rdx + 0xc], r15d
cmp dil, 1
jbe 0x1401a3aca
mov ebx, send
lea eax, [rdi - 1]
movzx esi, al
mov r12, qword [rbp + 0x30]
nop dword [rax]
movzx edi, word [r12 + 4]
shl rdi, 0x20
mov eax, dword [r12]
or rdi, rax
lea rdx, [rdi + 0xa]
add rdx, rbx
mov rcx, r14
call fcn.14012a3e0
lea rdx, [rax + rax*8]
shl rdx, 4
add rdx, qword [r14 + 0x10]
cmp rdx, qword [r13 + 0xfc0]
jne 0x1401a3ab0
xor ecx, ecx
mov qword [rbp + 0xd0], rcx
movabs rdx, 0xc4ceb9fe1a85ec53
mov qword [rbp + 0xe0], rdx
lea rax, [rbp + 0x100]
mov qword [rbp + 0xe8], rax
lea rax, [rbp + 0x100]
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rcx
mov qword [rbp + 0x110], 0x20
mov qword [rbp + 0x120], rdx
lea rax, [rbp + 0x140]
mov qword [rbp + 0x128], rax
lea rax, [rbp + 0x140]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x138], rcx
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], 0x20
lea r9, [rbp + 0xd0]
lea r8, [rdi + 0xa]
add r8, rbx
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.1401b3640
vmovups xmm0, xmmword [rax]
vmovups xmmword [rbp + 0x210], xmm0
cmp qword [rbp + 0x140], 0
je 0x1401a3a7a
mov qword [rbp + 0x138], 0
lea rax, [rbp + 0x140]
mov rcx, qword [rbp + 0x128]
cmp rcx, rax
je 0x1401a3a7a
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
cmp qword [rbp + 0x100], 0
je 0x1401a3aa9
mov qword [rbp + 0xf8], 0
lea rax, [rbp + 0x100]
mov rcx, qword [rbp + 0xe8]
cmp rcx, rax
je 0x1401a3aa9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rdx, qword [rbp + 0x210]
add dword [rdx + 8], r15d
add rbx, 0x12
sub rsi, 1
jne 0x1401a3950
mov r12, qword [rbp + 8]
movzx ebx, word [rbp + 2]
mov eax, 1
cmp ax, bx
jae 0x1401a3ca4
add r12, 8
mov qword [rbp + 0x210], r12
lea eax, [rbx - 1]
movzx ecx, ax
mov qword [rbp + 8], rcx
nop dword [rax]
mov r15, qword [r12]
movzx eax, byte [r15 + 6]
test al, al
je 0x1401a3c8b
xor ebx, ebx
mov esi, eax
mov r12d, dword [rbp + 0x40]
nop dword [rax]
movzx edi, word [r15 + 4]
shl rdi, 0x20
mov eax, dword [r15]
or rdi, rax
lea rdx, [rbx + 0xa]
add rdx, rdi
mov rcx, r14
call fcn.14012a3e0
lea rdx, [rax + rax*8]
shl rdx, 4
add rdx, qword [r14 + 0x10]
cmp rdx, qword [r13 + 0xfc0]
jne 0x1401a3c6e
xor ecx, ecx
mov qword [rbp + 0x158], rcx
movabs rdx, 0xc4ceb9fe1a85ec53
mov qword [rbp + 0x168], rdx
lea rax, [rbp + 0x188]
mov qword [rbp + 0x170], rax
lea rax, [rbp + 0x188]
mov qword [rbp + 0x178], rax
mov qword [rbp + 0x180], rcx
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rcx
mov qword [rbp + 0x198], 0x20
mov qword [rbp + 0x1a8], rdx
lea rax, [rbp + 0x1c8]
mov qword [rbp + 0x1b0], rax
lea rax, [rbp + 0x1c8]
mov qword [rbp + 0x1b8], rax
mov qword [rbp + 0x1c0], rcx
mov qword [rbp + 0x1c8], rcx
mov qword [rbp + 0x1d0], rcx
mov qword [rbp + 0x1d8], 0x20
lea r9, [rbp + 0x158]
lea r8, [rbx + 0xa]
add r8, rdi
lea rdx, [rbp + 0x1f8]
mov rcx, r14
call fcn.1401b3640
vmovups xmm0, xmmword [rax]
vmovups xmmword [rbp + 0x1e0], xmm0
cmp qword [rbp + 0x1c8], 0
je 0x1401a3c38
mov qword [rbp + 0x1c0], 0
lea rax, [rbp + 0x1c8]
mov rcx, qword [rbp + 0x1b0]
cmp rcx, rax
je 0x1401a3c38
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
cmp qword [rbp + 0x188], 0
je 0x1401a3c67
mov qword [rbp + 0x180], 0
lea rax, [rbp + 0x188]
mov rcx, qword [rbp + 0x170]
cmp rcx, rax
je 0x1401a3c67
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rdx, qword [rbp + 0x1e0]
add dword [rdx + 8], r12d
add rbx, 0x12
sub rsi, 1
jne 0x1401a3b10
mov r12, qword [rbp + 0x210]
mov rcx, qword [rbp + 8]
add r12, 8
mov qword [rbp + 0x210], r12
sub rcx, 1
mov qword [rbp + 8], rcx
jne 0x1401a3af0
movzx ebx, byte [rbp]
cmp bl, 1
je 0x1401a3f09
lea eax, [rbx - 1]
movzx r15d, al
lea rax, [r15 + r15*8]
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1401a3cd2
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1403f59c0
sub rsp, rcx
lea rdi, [rsp + 0x20]
lea rsi, [rbx - 1]
mov r12, qword [rbp + 0x30]
test rsi, rsi
jle 0x1401a3d30
xor edx, edx
mov r8, rsi
nop dword [rax + rax]
movzx ecx, word [r12 + 4]
shl rcx, 0x20
mov eax, dword [r12]
or rcx, rax
vmovups xmm0, xmmword [rcx + rdx + 0x12]
vmovups xmmword [rdi + rdx], xmm0
movzx eax, word [rcx + rdx + 0x22]
mov word [rdi + rdx + 0x10], ax
lea rdx, [rdx + 0x12]
sub r8, 1
jne 0x1401a3d00
mov rax, rdi
shr rax, 0x20
mov dword [rbp + 0x210], edi
mov word [rbp + 0x214], ax
mov byte [rbp + 0x216], r15b
movzx eax, word [r12 + 7]
mov word [rbp + 0x217], ax
movzx eax, byte [r12 + 9]
mov byte [rbp + 0x219], al
lea rax, [rbp + 0x210]
mov qword [rbp + 8], rax
lea rdx, [rbp + 8]
lea rcx, [r13 + 0x10e0]
call fcn.1401b5330
shl rax, 4
mov rbx, qword [r13 + 0x10f0]
add rbx, rax
cmp rbx, qword [r13 + 0x10f8]
jne 0x1401a3f03
lea rbx, [r13 + 0x960]
lea rsi, [rsi + rsi*8]
add rsi, rsi
mov ecx, dword [rbx + 8]
lea rax, [rcx + rsi]
cmp rax, 0x4000000
jbe 0x1401a3dc6
mov edx, esi
mov rcx, rbx
call fcn.1401ad8a0
mov r14, rax
jmp 0x1401a3dd2
lea eax, [rsi + rcx]
mov dword [rbx + 8], eax
mov r14, qword [rbx]
add r14, rcx
mov r8, rsi
mov rdx, rdi
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [rbx + 8]
lea rax, [rcx + 0xa]
cmp rax, 0x4000000
jbe 0x1401a3e01
mov edx, 0xa
mov rcx, rbx
call fcn.1401ad8a0
mov rdi, rax
jmp 0x1401a3e0d
lea eax, [rcx + 0xa]
mov dword [rbx + 8], eax
mov rdi, qword [rbx]
add rdi, rcx
xor eax, eax
mov word [rdi + 7], ax
mov byte [rdi + 9], al
mov rax, r14
shr rax, 0x20
mov dword [rdi], r14d
mov word [rdi + 4], ax
mov byte [rdi + 6], r15b
movzx eax, word [r12 + 7]
mov word [rdi + 7], ax
movzx eax, byte [r12 + 9]
mov byte [rdi + 9], al
mov rbx, qword [r13 + 0x948]
lea rax, [rbx + 1]
mov qword [r13 + 0x948], rax
movabs rax, 0x3fffffffffffffff
and rbx, rax
movabs rax, 0x8000000000000000
or rbx, rax
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x38], rdi
lea r8, [rbp + 0x30]
lea rdx, [rbp + 8]
lea rcx, [r13 + 0x10a0]
call fcn.1401b7770
mov ecx, dword [rbp + 0x10]
test ecx, ecx
je 0x1401a451e
sub ecx, 1
je 0x1401a3eb4
sub ecx, 1
je 0x1401a3e9d
cmp ecx, 1
jne 0x1401a3eb4
mov rcx, qword [rbp + 8]
mov rax, qword [r13 + 0x10b0]
add rcx, rcx
mov qword [rax + rcx*8], rbx
mov qword [rax + rcx*8 + 8], rdi
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x38], rbx
lea r8, [rbp + 0x30]
lea rdx, [rbp + 8]
lea rcx, [r13 + 0x10e0]
call fcn.1401bb8d0
mov ecx, dword [rbp + 0x10]
test ecx, ecx
je 0x1401a4518
sub ecx, 1
je 0x1401a3f0d
sub ecx, 1
je 0x1401a3eea
cmp ecx, 1
jne 0x1401a3f0d
mov rcx, qword [rbp + 8]
add rcx, rcx
mov rax, qword [r13 + 0x10f0]
mov qword [rax + rcx*8], rdi
mov qword [rax + rcx*8 + 8], rbx
jmp 0x1401a3f0d
mov rbx, qword [rbx + 8]
jmp 0x1401a3f0d
mov rbx, qword [rbp + 0x20]
xor eax, eax
movzx r12d, byte [rbp]
cmp r12b, 1
sete al
mov ecx, eax
movzx eax, word [rbp + 2]
mov esi, eax
sub esi, ecx
sub rax, rcx
lea r14, [rax*8]
lea r15, [r14 + 0xc]
lea rcx, [r13 + 0x960]
mov edx, dword [rcx + 8]
lea rax, [rdx + r15]
cmp rax, 0x4000000
jbe 0x1401a3f57
mov edx, r15d
call fcn.1401ad8a0
mov r10, rax
jmp 0x1401a3f64
lea eax, [r15 + rdx]
mov dword [rcx + 8], eax
mov r10, qword [rcx]
add r10, rdx
mov rdx, r10
mov rdi, qword [rbp + 0x2a0]
cmp r12b, 1
jne 0x1401a3fa6
test esi, esi
jle 0x1401a3fe3
xor r8d, r8d
mov r9d, esi
nop
movzx ecx, word [rdi + 0xa]
shl rcx, 0x20
mov eax, dword [rdi + 6]
or rcx, rax
mov rax, qword [rcx + r8 + 8]
mov qword [rdx], rax
lea rdx, [rdx + 8]
lea r8, [r8 + 8]
sub r9, 1
jne 0x1401a3f80
jmp 0x1401a3fe3
mov qword [r10], rbx
add rdx, 8
cmp esi, 1
jle 0x1401a3fe3
mov r8d, 8
lea r9d, [rsi - 1]
nop dword [rax]
movzx ecx, word [rdi + 0xa]
shl rcx, 0x20
mov eax, dword [rdi + 6]
or rcx, rax
mov rax, qword [rcx + r8]
mov qword [rdx], rax
lea rdx, [rdx + 8]
lea r8, [r8 + 8]
sub r9, 1
jne 0x1401a3fc0
add r14, r10
mov qword [rbp + 8], r14
mov word [r14], si
mov dword [r14 + 6], r10d
mov rax, r10
shr rax, 0x20
movzx ecx, ax
mov word [r14 + 0xa], cx
movzx edx, word [r14]
shl rdx, 3
shl rcx, 0x20
mov eax, r10d
or rcx, rax
call fcn.1401767f0
mov dword [r14 + 2], eax
lea rdx, [rbp + 8]
lea rcx, [r13 + 0x1050]
call fcn.1401b5580
shl rax, 4
mov rsi, qword [r13 + 0x1060]
add rsi, rax
cmp rsi, qword [r13 + 0x1068]
jne 0x1401a4106
mov esi, dword [r13 + 0x1096]
mov qword [rbp + 8], r14
mov dword [rbp + 0x10], esi
lea r8, [rbp + 8]
lea rdx, [rbp + 0x210]
lea rcx, [r13 + 0x1050]
call fcn.1401bb710
mov ecx, dword [rbp + 0x218]
test ecx, ecx
je 0x1401a4524
sub ecx, 1
je 0x1401a40a4
sub ecx, 1
je 0x1401a4089
cmp ecx, 1
jne 0x1401a40a4
mov rcx, qword [rbp + 0x210]
mov rax, qword [r13 + 0x1060]
add rcx, rcx
vmovups xmm0, xmmword [rbp + 8]
vmovups xmmword [rax + rcx*8], xmm0
lea rbx, [r13 + 0x1090]
mov r15, r14
shr r15, 0x20
movzx ecx, word [rbx + 4]
shl rcx, 0x20
mov eax, dword [rbx]
or rcx, rax
jne 0x1401a40c5
xor eax, eax
jmp 0x1401a40d6
movzx eax, byte [rbx + 0xa]
and eax, 0x7f
mov ecx, 1
shlx eax, ecx, eax
cmp dword [rbx + 6], eax
jne 0x1401a40e3
mov rcx, rbx
call fcn.1401adcb0
movzx edx, word [rbx + 4]
shl rdx, 0x20
mov eax, dword [rbx]
or rdx, rax
mov eax, dword [rbx + 6]
lea rcx, [rax + rax*2]
mov dword [rdx + rcx*2], r14d
mov word [rdx + rcx*2 + 4], r15w
inc dword [rbx + 6]
jmp 0x1401a4110
mov esi, dword [rsi + 8]
sub dword [r13 + 0x968], r15d
mov rdx, qword [rbp + 0x20]
lea rcx, [r13 + 0xfa8]
call fcn.14012a3e0
lea r9, [rax + rax*8]
shl r9, 4
add r9, qword [r13 + 0xfb8]
mov qword [rbp + 0x20], r9
add rax, qword [r13 + 0xfc0]
mov qword [rbp + 0x28], rax
vmovups xmm6, xmmword [rbp + 0x20]
mov eax, esi
mov ecx, esi
shr rcx, 0x21
xor rcx, rax
movabs r12, 0xff51afd7ed558ccd
imul rcx, r12
mov rdx, rcx
shr rdx, 0x21
xor rdx, rcx
imul rdx, qword [r9 + 0x18]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov r10d, dword [r9 + 0x48]
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [r9 + 0x4c]
shrx r8, rcx, rax
add r8d, r10d
shr rdx, 5
mov rcx, qword [r9 + 0x38]
and rcx, rdx
mov rdx, qword [r9 + 0x28]
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jne 0x1401a41ac
mov rax, qword [r9 + 0x20]
cmp esi, dword [rax + rcx*8]
je 0x1401a41e9
inc rcx
add r8d, r10d
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jne 0x1401a41c4
mov rax, qword [r9 + 0x20]
cmp esi, dword [rax + rcx*8]
je 0x1401a41e9
inc rcx
add r8d, r10d
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jbe 0x1401a41a1
cmp qword [r9 + 0x38], 0
jne 0x1401a41de
xor ecx, ecx
jmp 0x1401a41e9
mov rcx, rdx
sub rcx, qword [r9 + 0x20]
sar rcx, 3
mov rax, qword [r9 + 0x20]
lea rdx, [rax + rcx*8]
mov r15d, dword [rbp + 0x40]
cmp rdx, qword [r9 + 0x28]
jne 0x1401a4242
lea rbx, [r9 + 0x10]
mov dword [rbp + 0x30], esi
mov dword [rbp + 0x34], r15d
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.14004c680
mov ecx, dword [rbp + 0x28]
test ecx, ecx
je 0x1401a452a
sub ecx, 1
je 0x1401a4246
sub ecx, 1
je 0x1401a4230
cmp ecx, 1
jne 0x1401a4246
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rbp + 0x30]
mov rax, qword [rbp + 0x20]
mov qword [rdx + rax*8], rcx
jmp 0x1401a4246
add dword [rdx + 4], r15d
movzx esi, word [rbp + 2]
lea ebx, [rsi - 1]
movsxd rax, esi
lea r14, [rax*8 + 4]
lea rcx, [r13 + 0x960]
mov edx, dword [rcx + 8]
lea rax, [rdx + r14]
cmp rax, 0x4000000
jbe 0x1401a427b
mov edx, r14d
call fcn.1401ad8a0
mov r10, rax
jmp 0x1401a4288
lea eax, [rdx + r14]
mov dword [rcx + 8], eax
mov r10, qword [rcx]
add r10, rdx
mov rdx, r10
test ebx, ebx
jle 0x1401a42c4
xor r8d, r8d
mov r9d, ebx
nop word [rax + rax]
movzx ecx, word [rdi + 0xa]
shl rcx, 0x20
mov eax, dword [rdi + 6]
or rcx, rax
mov rax, qword [rcx + r8 + 8]
mov qword [rdx], rax
lea rdx, [rdx + 8]
lea r8, [r8 + 8]
sub r9, 1
jne 0x1401a42a0
lea rax, [rsi - 1]
lea rsi, [r10 + rax*8]
mov qword [rbp + 0x20], rsi
mov word [rsi], bx
mov dword [rsi + 6], r10d
mov rax, r10
shr rax, 0x20
movzx ecx, ax
mov word [rsi + 0xa], cx
movzx edx, word [rsi]
shl rdx, 3
shl rcx, 0x20
mov eax, r10d
or rcx, rax
call fcn.1401767f0
mov dword [rsi + 2], eax
lea rdx, [rbp + 0x20]
lea rcx, [r13 + 0x1050]
call fcn.1401b5580
shl rax, 4
mov rbx, qword [r13 + 0x1060]
add rbx, rax
cmp rbx, qword [r13 + 0x1068]
jne 0x1401a43de
mov ebx, dword [r13 + 0x1096]
mov qword [rbp + 0x20], rsi
mov dword [rbp + 0x28], ebx
lea r8, [rbp + 0x20]
lea rdx, [rbp + 8]
lea rcx, [r13 + 0x1050]
call fcn.1401bb710
mov ecx, dword [rbp + 0x10]
test ecx, ecx
je 0x1401a4530
sub ecx, 1
je 0x1401a437d
sub ecx, 1
je 0x1401a4365
cmp ecx, 1
jne 0x1401a437d
mov rcx, qword [rbp + 8]
add rcx, rcx
mov rax, qword [r13 + 0x1060]
vmovups xmm0, xmmword [rbp + 0x20]
vmovups xmmword [rax + rcx*8], xmm0
lea rdi, [r13 + 0x1090]
mov r14, rsi
shr r14, 0x20
movzx ecx, word [rdi + 4]
shl rcx, 0x20
mov eax, dword [rdi]
or rcx, rax
jne 0x1401a439e
xor eax, eax
jmp 0x1401a43af
movzx eax, byte [rdi + 0xa]
and eax, 0x7f
mov ecx, 1
shlx eax, ecx, eax
cmp dword [rdi + 6], eax
jne 0x1401a43bc
mov rcx, rdi
call fcn.1401adcb0
movzx edx, word [rdi + 4]
shl rdx, 0x20
mov eax, dword [rdi]
or rdx, rax
mov eax, dword [rdi + 6]
lea rcx, [rax + rax*2]
mov dword [rdx + rcx*2], esi
mov word [rdx + rcx*2 + 4], r14w
inc dword [rdi + 6]
jmp 0x1401a43e8
mov ebx, dword [rbx + 8]
sub dword [r13 + 0x968], r14d
vmovq r9, xmm6
mov eax, ebx
mov ecx, ebx
shr rcx, 0x21
xor rcx, rax
imul rcx, r12
mov rdx, rcx
shr rdx, 0x21
xor rdx, rcx
imul rdx, qword [r9 + 0x58]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov r10d, dword [r9 + 0x88]
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [r9 + 0x8c]
shrx r8, rcx, rax
add r8d, r10d
shr rdx, 5
and rdx, qword [r9 + 0x78]
mov rcx, qword [r9 + 0x68]
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jne 0x1401a444f
mov rax, qword [r9 + 0x60]
cmp ebx, dword [rax + rdx*8]
je 0x1401a448c
inc rdx
add r8d, r10d
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jne 0x1401a4467
mov rax, qword [r9 + 0x60]
cmp ebx, dword [rax + rdx*8]
je 0x1401a448c
inc rdx
add r8d, r10d
movzx eax, byte [rdx + rcx]
cmp r8d, eax
jbe 0x1401a4444
cmp qword [r9 + 0x78], 0
jne 0x1401a4481
xor edx, edx
jmp 0x1401a448c
mov rdx, rcx
sub rdx, qword [r9 + 0x60]
sar rdx, 3
mov rax, qword [r9 + 0x60]
lea rcx, [rax + rdx*8]
cmp rcx, qword [r9 + 0x68]
jne 0x1401a44dd
lea rdi, [r9 + 0x50]
mov dword [rbp + 0x30], ebx
mov dword [rbp + 0x34], r15d
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x20]
mov rcx, rdi
call fcn.14004c680
mov ecx, dword [rbp + 0x28]
test ecx, ecx
je 0x1401a4512
sub ecx, 1
je 0x1401a44e1
sub ecx, 1
je 0x1401a44cb
cmp ecx, 1
jne 0x1401a44e1
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbp + 0x30]
mov rax, qword [rbp + 0x20]
mov qword [rdx + rax*8], rcx
jmp 0x1401a44e1
add dword [rcx + 4], r15d
mov rcx, qword [rbp + 0x220]
xor rcx, rbp
call fcn.1403f4b10
mov rbx, qword [rbp + 0x298]
vmovaps xmm6, xmmword [rbp + 0x230]
lea rsp, [rbp + 0x240]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3