Function at 0x140001483
Capabilities:
Compute adler32 checksum

Disassembly:
jmp 0x1400086bc
jmp 0x140008320
mov r9d, ecx
mov r11, rdx
movzx r10d, cx
shr r9d, 0x10
cmp r8, 1
jne 0x140008360
movzx eax, byte [rdx]
mov ecx, 0xfff1
add r10d, eax
mov eax, 0xffff000f
cmp r10d, ecx
jb 0x14000834c
add r10d, eax
add r9d, r10d
cmp r9d, ecx
jb 0x1400085f8
add r9d, eax
jmp 0x1400085f8
test rdx, rdx
jne 0x140008369
lea eax, [rdx + 1]
ret
cmp r8, 0x10
jae 0x1400083b1
test r8, r8
je 0x140008386
movzx eax, byte [r11]
inc r11
add r10d, eax
add r9d, r10d
dec r8
jne 0x140008374
mov ecx, 0xfff1
cmp r10d, ecx
jb 0x140008398
mov eax, 0xffff000f
add r10d, eax
mov eax, 0x80078071
mul r9d
shr edx, 0xf
imul edx, edx, 0xf
lea eax, [r9 + rdx]
shl eax, 0x10
or eax, r10d
ret
cmp r8, 0x15b0
jb 0x1400084d9
mov rcx, r8
movabs rax, 0x79baa6bb6398b6f7
mul r8
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 0xc
mov rax, rcx
imul rax, rax, 0xffffffffffffea50
add r8, rax
mov edx, 0x15b
movzx eax, byte [r11]
add r11, 0x10
add r10d, eax
movzx eax, byte [r11 - 0xf]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xe]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xd]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xc]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xb]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xa]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 9]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 8]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 7]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 6]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 5]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 4]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 3]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 2]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 1]
add r9d, r10d
add r10d, eax
add r9d, r10d
dec edx
jne 0x1400083ed
mov eax, 0x80078071
mul r10d
mov eax, 0x80078071
shr edx, 0xf
imul edx, edx, 0xffff000f
add r10d, edx
mul r9d
shr edx, 0xf
imul edx, edx, 0xffff000f
add r9d, edx
dec rcx
jne 0x1400083e8
test r8, r8
je 0x1400085f8
cmp r8, 0x10
jb 0x1400085b9
mov rcx, r8
shr rcx, 4
mov rax, rcx
imul rax, rax, 0xfffffffffffffff0
add r8, rax
movzx eax, byte [r11]
add r11, 0x10
add r10d, eax
movzx eax, byte [r11 - 0xf]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xe]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xd]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xc]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xb]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 0xa]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 9]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 8]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 7]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 6]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 5]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 4]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 3]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 2]
add r9d, r10d
add r10d, eax
movzx eax, byte [r11 - 1]
add r9d, r10d
add r10d, eax
add r9d, r10d
dec rcx
jne 0x1400084fd
test r8, r8
je 0x1400085d0
movzx eax, byte [r11]
inc r11
add r10d, eax
add r9d, r10d
dec r8
jne 0x1400085be
mov eax, 0x80078071
mul r10d
mov eax, 0x80078071
shr edx, 0xf
imul edx, edx, 0xffff000f
add r10d, edx
mul r9d
shr edx, 0xf
imul edx, edx, 0xffff000f
add r9d, edx
shl r9d, 0x10
or r9d, r10d
mov eax, r9d
ret
mov r8d, r8d
jmp 0x1400015ff