Function at 0x140040c60
Capabilities:
Hash data using fnv

Disassembly:
push rbp
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x58], r8
mov qword [rbp - 0x50], rdx
mov qword [rbp - 0x48], rcx
mov rax, qword [0x1401fda68]
xor rax, rbp
mov qword [rbp - 8], rax
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [rbp - 0x3a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [rbp - 0x39], al
mov dword [rbp - 0x40], 0x740ab204
mov eax, dword [rbp - 0x40]
mov dword [rbp - 0x5c], eax
sub eax, 0x81bbcea7
je 0x140041208
jmp 0x140040cdc
mov eax, dword [rbp - 0x5c]
sub eax, 0x8e346e6c
je 0x140041331
jmp 0x140040cef
mov eax, dword [rbp - 0x5c]
sub eax, 0xa3499b3c
je 0x140041805
jmp 0x140040d02
mov eax, dword [rbp - 0x5c]
sub eax, 0xae2dd2ab
je 0x140041052
jmp 0x140040d15
mov eax, dword [rbp - 0x5c]
sub eax, 0xb8b82055
je 0x1400415c4
jmp 0x140040d28
mov eax, dword [rbp - 0x5c]
sub eax, 0xbb53fa98
je 0x14004173e
jmp 0x140040d3b
mov eax, dword [rbp - 0x5c]
sub eax, 0xc16d6637
je 0x14004137b
jmp 0x140040d4e
mov eax, dword [rbp - 0x5c]
sub eax, 0xca25cc0a
je 0x1400416dd
jmp 0x140040d61
mov eax, dword [rbp - 0x5c]
sub eax, 0xcb3fec5a
je 0x140040f54
jmp 0x140040d74
mov eax, dword [rbp - 0x5c]
sub eax, 0xd0c40b46
je 0x1400412b5
jmp 0x140040d87
mov eax, dword [rbp - 0x5c]
sub eax, 0xd36dcde1
je 0x1400410da
jmp 0x140040d9a
mov eax, dword [rbp - 0x5c]
sub eax, 0xfafba387
je 0x1400418aa
jmp 0x140040dad
mov eax, dword [rbp - 0x5c]
sub eax, 0x9bedac6
je 0x140041761
jmp 0x140040dc0
mov eax, dword [rbp - 0x5c]
sub eax, 0x133fc149
je 0x1400413fc
jmp 0x140040dd3
mov eax, dword [rbp - 0x5c]
sub eax, 0x16592a1c
je 0x14004105e
jmp 0x140040de6
mov eax, dword [rbp - 0x5c]
sub eax, 0x1bcfa6cf
je 0x1400416bc
jmp 0x140040df9
mov eax, dword [rbp - 0x5c]
sub eax, 0x2a126dc8
je 0x140041569
jmp 0x140040e0c
mov eax, dword [rbp - 0x5c]
sub eax, 0x2b4aa6ec
je 0x14004189a
jmp 0x140040e1f
mov eax, dword [rbp - 0x5c]
sub eax, 0x2c17871c
je 0x14004186e
jmp 0x140040e32
mov eax, dword [rbp - 0x5c]
sub eax, 0x2cf310f8
je 0x140041575
jmp 0x140040e45
mov eax, dword [rbp - 0x5c]
sub eax, 0x353adb65
je 0x140041187
jmp 0x140040e58
mov eax, dword [rbp - 0x5c]
sub eax, 0x399fb93b
je 0x14004149e
jmp 0x140040e6b
mov eax, dword [rbp - 0x5c]
sub eax, 0x412394b3
je 0x1400417ab
jmp 0x140040e7e
mov eax, dword [rbp - 0x5c]
sub eax, 0x4278ad4b
je 0x14004188e
jmp 0x140040e91
mov eax, dword [rbp - 0x5c]
sub eax, 0x439a7cc6
je 0x140041613
jmp 0x140040ea4
mov eax, dword [rbp - 0x5c]
sub eax, 0x494d00ef
je 0x14004116c
jmp 0x140040eb7
mov eax, dword [rbp - 0x5c]
sub eax, 0x596b3d43
je 0x1400414ed
jmp 0x140040eca
mov eax, dword [rbp - 0x5c]
sub eax, 0x6121c32e
je 0x1400417f9
jmp 0x140040edd
mov eax, dword [rbp - 0x5c]
sub eax, 0x64180ffa
je 0x14004166d
jmp 0x140040ef0
mov eax, dword [rbp - 0x5c]
sub eax, 0x6a77f08b
je 0x1400412a9
jmp 0x140040f03
mov eax, dword [rbp - 0x5c]
sub eax, 0x740ab204
je 0x140040f2e
jmp 0x140040f16
mov eax, dword [rbp - 0x5c]
sub eax, 0x763d1932
je 0x140041882
jmp 0x140040f29
jmp 0x1400418b5
mov al, byte [rbp - 0x3a]
mov cl, byte [rbp - 0x39]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xa3499b3c
mov ecx, 0xcb3fec5a
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x50]
mov r8, qword [rbp - 0x58]
mov eax, 0x10
mov qword [rbp - 0x68], rax
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x68]
mov r9, rsp
mov qword [rbp - 0x38], r9
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x68]
mov r9, rsp
mov qword [rbp - 0x30], r9
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x68]
mov r9, rsp
mov qword [rbp - 0x28], r9
call fcn.1401b1950
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x38]
mov qword [rax], r8
mov rax, qword [rbp - 0x30]
mov qword [rax], rdx
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov rax, qword [rbp - 0x20]
mov qword [rax], 0
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
mov edx, ecx
add edx, 0x6be3458
sub edx, 1
sub edx, 0x6be3458
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and r11b, cl
mov r9b, r8b
and r9b, 0
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xa3499b3c
mov ecx, 0xae2dd2ab
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov dword [rbp - 0x40], 0x16592a1c
jmp 0x1400418b5
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and r11b, cl
mov r9b, r8b
and r9b, 0
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x2c17871c
mov ecx, 0xd36dcde1
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
mov rcx, qword [rbp - 0x38]
cmp rax, qword [rcx]
setb al
and al, 1
mov byte [rbp - 0x11], al
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x2c17871c
mov ecx, 0x494d00ef
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov dl, byte [rbp - 0x11]
mov eax, 0x2cf310f8
mov ecx, 0x353adb65
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
mov edx, ecx
sub edx, 0x2a49d6f3
sub edx, 1
add edx, 0x2a49d6f3
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xca25cc0a
mov ecx, 0x81bbcea7
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
mov rcx, qword [rbp - 0x20]
mov rcx, qword [rcx]
movzx eax, byte [rax + rcx]
mov edx, eax
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov r8, rax
xor r8, 0xffffffffffffffff
mov rcx, rdx
and rcx, r8
xor rdx, 0xffffffffffffffff
and rax, rdx
or rcx, rax
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov rax, qword [rbp - 0x28]
movabs rcx, 0x100000001b3
imul rcx, qword [rax]
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
sub edx, 0x737b81ac
sub edx, 1
add edx, 0x737b81ac
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xca25cc0a
mov ecx, 0x6a77f08b
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov dword [rbp - 0x40], 0xd0c40b46
jmp 0x1400418b5
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and r11b, cl
mov r9b, r8b
and r9b, 0
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x763d1932
mov ecx, 0x8e346e6c
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x763d1932
mov ecx, 0xc16d6637
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
mov edx, ecx
sub edx, 0x6a975141
sub edx, 1
add edx, 0x6a975141
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xbb53fa98
mov ecx, 0x133fc149
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
xor eax, eax
sub rax, rcx
xor ecx, ecx
sub rcx, 1
add rax, rcx
xor ecx, ecx
sub rcx, rax
mov rax, qword [rbp - 0x20]
mov qword [rax], rcx
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
mov edx, ecx
sub edx, 0x8a14756a
sub edx, 1
add edx, 0x8a14756a
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xbb53fa98
mov ecx, 0x399fb93b
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
add edx, 0xa007bcc7
sub edx, 1
sub edx, 0xa007bcc7
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x4278ad4b
mov ecx, 0x596b3d43
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov ecx, dword [0x1401fee38]
mov eax, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, ecx
add edx, r8d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x4278ad4b
mov ecx, 0x2a126dc8
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov dword [rbp - 0x40], 0x16592a1c
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
add edx, 0x988f75a
sub edx, 1
sub edx, 0x988f75a
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x9bedac6
mov ecx, 0xb8b82055
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
add edx, 0xd5c672a4
sub edx, 1
sub edx, 0xd5c672a4
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x2b4aa6ec
mov ecx, 0x439a7cc6
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
add edx, 0x248a9478
sub edx, 1
sub edx, 0x248a9478
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x2b4aa6ec
mov ecx, 0x64180ffa
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
mov edx, eax
add edx, 0x4ad4e7b
sub edx, 1
sub edx, 0x4ad4e7b
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x9bedac6
mov ecx, 0x1bcfa6cf
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x70], rax
mov rcx, qword [rbp - 8]
xor rcx, rbp
sub rsp, 0x20
call fcn.1401b19c0
mov rax, qword [rbp - 0x70]
mov rsp, rbp
pop rbp
ret
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
mov rcx, qword [rbp - 0x20]
mov rcx, qword [rcx]
movzx eax, byte [rax + rcx]
mov edx, eax
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov r8, rax
xor r8, 0xffffffffffffffff
mov rcx, rdx
and rcx, r8
xor rdx, 0xffffffffffffffff
and rax, rdx
or rcx, rax
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov rax, qword [rbp - 0x28]
mov rcx, qword [rax]
movabs rax, 0x100000001b3
imul rcx, rax
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov dword [rbp - 0x40], 0x81bbcea7
jmp 0x1400418b5
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
xor eax, eax
sub rax, 1
sub rcx, rax
mov rax, qword [rbp - 0x20]
mov qword [rax], rcx
mov dword [rbp - 0x40], 0x133fc149
jmp 0x1400418b5
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xfafba387
mov ecx, 0x412394b3
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov rax, qword [rbp - 0x28]
mov eax, dword [0x1401fee38]
mov ecx, dword [0x1401fee3c]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xfafba387
mov ecx, 0x6121c32e
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x40], eax
jmp 0x1400418b5
mov dword [rbp - 0x40], 0xb8b82055
jmp 0x1400418b5
mov rdx, qword [rbp - 0x48]
mov r9, qword [rbp - 0x50]
mov r11, qword [rbp - 0x58]
mov eax, 0x10
mov qword [rbp - 0x78], rax
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov r10, rsp
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov r8, rsp
call fcn.1401b1950
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov rcx, rsp
call fcn.1401b1950
sub rsp, rax
mov rax, rsp
mov qword [r10], r11
mov qword [r8], r9
mov qword [rcx], rdx
mov qword [rax], 0
mov dword [rbp - 0x40], 0xcb3fec5a
jmp 0x1400418b5
mov rax, qword [rbp - 0x20]
mov rax, qword [rbp - 0x38]
mov dword [rbp - 0x40], 0xd36dcde1
jmp 0x1400418b5
mov dword [rbp - 0x40], 0x8e346e6c
jmp 0x1400418b5
mov dword [rbp - 0x40], 0x596b3d43
jmp 0x1400418b5
mov rax, qword [rbp - 0x28]
mov dword [rbp - 0x40], 0x439a7cc6
jmp 0x1400418b5
mov rax, qword [rbp - 0x28]
mov dword [rbp - 0x40], 0x412394b3
jmp 0x140040cc6