Function at 0x490f90
Capabilities:
Compute adler32 checksum

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
push edi
mov edi, edx
mov ebx, ecx
movzx esi, byte [edi]
movzx eax, byte [edi + 1]
shl esi, 8
add esi, eax
movzx eax, byte [edi + 2]
shl esi, 8
add esi, eax
movzx eax, byte [edi + 3]
shl esi, 8
add esi, eax
cmp esi, 0x57bc0000
jne 0x49124f
movzx ecx, byte [edi + 4]
movzx eax, byte [edi + 5]
shl ecx, 8
add ecx, eax
movzx eax, byte [edi + 6]
shl ecx, 8
add ecx, eax
movzx eax, byte [edi + 7]
shl ecx, 8
add ecx, eax
jne 0x49124f
movzx ecx, byte [edi + 8]
movzx eax, byte [edi + 9]
shl ecx, 8
add ecx, eax
mov dword [0x563094], edi
movzx eax, byte [edi + 0xa]
shl ecx, 8
add ecx, eax
mov dword [0x56309c], ebx
movzx eax, byte [edi + 0xb]
add edi, 0x10
shl ecx, 8
add eax, ecx
mov dword [0x5630a0], ebx
mov ecx, edi
mov dword [ebp - 0x14], eax
lea esi, [eax + ebx]
mov dword [ebp - 0x1c], esi
mov dword [0x563098], esi
call fcn.00490c90
mov dword [ebp - 0x10], eax
cmp eax, edi
je 0x491081
nop dword [eax]
cmp dword [0x5630a0], esi
jbe 0x49106e
push 0x1070
push str.C:UsersMi_PcDocumentsGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui_draw.cpp
push str.stb__dout___output__olen
call fcn.004ecded
add esp, 0xc
cmp dword [0x5630a0], esi
ja 0x49124f
mov eax, dword [ebp - 0x10]
mov ecx, eax
mov esi, eax
call fcn.00490c90
cmp eax, esi
mov dword [ebp - 0x10], eax
mov esi, dword [ebp - 0x1c]
jne 0x491040
mov esi, dword [ebp - 0x14]
add esi, ebx
cmp byte [eax], 5
jne 0x491238
cmp byte [eax + 1], 0xfa
jne 0x491238
cmp dword [0x5630a0], esi
je 0x4910c4
push 0x1066
push str.C:UsersMi_PcDocumentsGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui_draw.cpp
push str.stb__dout__output__olen
call fcn.004ecded
add esp, 0xc
cmp dword [0x5630a0], esi
jne 0x49124f
mov esi, dword [ebp - 0x14]
mov eax, 0x5e6ea9af
mul esi
xor edi, edi
mov dword [ebp - 0x1c], esi
shr edx, 0xb
mov ecx, 1
imul eax, edx, 0x15b0
mov edx, esi
mov dword [ebp - 0xc], edi
sub edx, eax
mov dword [ebp - 4], edx
test esi, esi
je 0x491203
xor esi, esi
cmp edx, 7
jbe 0x491155
mov eax, 7
sub eax, ebx
mov dword [ebp - 0x18], eax
movzx eax, byte [ebx]
add esi, 8
add ecx, eax
movzx eax, byte [ebx + 1]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 2]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 3]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 4]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 5]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 6]
add edi, ecx
add ecx, eax
movzx eax, byte [ebx + 7]
add edi, ecx
add ebx, 8
add ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ebx
add edi, ecx
cmp eax, edx
jb 0x491104
mov dword [ebp - 0xc], edi
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [ebp - 0x18], 0
cmp esi, eax
jae 0x4911c8
sub eax, esi
cmp eax, 2
jb 0x4911b4
mov edx, dword [ebp - 4]
sub edx, esi
sub edx, 2
shr edx, 1
inc edx
lea eax, [esi + edx*2]
mov esi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov edi, esi
movzx eax, byte [ebx]
add ecx, eax
movzx eax, byte [ebx + 1]
add esi, ecx
add ebx, 2
add ecx, eax
add edi, ecx
sub edx, 1
jne 0x491182
mov eax, dword [ebp - 0x20]
mov dword [ebp - 8], edi
mov edi, dword [ebp - 0xc]
cmp eax, dword [ebp - 4]
jae 0x4911c0
movzx eax, byte [ebx]
mov edx, dword [ebp - 8]
add ecx, eax
add edi, ecx
inc ebx
jmp 0x4911c3
movzx eax, byte [ebx]
mov esi, edx
add ecx, eax
add edi, ecx
inc ebx
jmp 0x4911c3
mov edx, dword [ebp - 8]
lea eax, [edx + esi]
add edi, eax
mov eax, 0x80078071
mul ecx
shr edx, 0xf
imul eax, edx, 0xffff000f
add ecx, eax
mov eax, 0x80078071
mul edi
shr edx, 0xf
imul eax, edx, 0xffff000f
mov edx, dword [ebp - 4]
add edi, eax
sub dword [ebp - 0x1c], edx
mov edx, 0x15b0
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], edx
jne 0x4910f3
mov edx, dword [ebp - 0x10]
shl edi, 0x10
add edi, ecx
movzx esi, byte [edx + 2]
movzx eax, byte [edx + 3]
shl esi, 8
add esi, eax
movzx eax, byte [edx + 4]
movzx edx, byte [edx + 5]
shl esi, 8
add esi, eax
shl esi, 8
add esi, edx
cmp edi, esi
jne 0x49124f
mov eax, dword [ebp - 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x106c
push str.C:UsersMi_PcDocumentsGitHubEngine_BonesEngine_Bones_v.1Engine_BonesSourceExternalImGuiimgui_draw.cpp
push 0x529c74
call fcn.004ecded
add esp, 0xc
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret