Function at 0x100049c0
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
mov ebx, dword [ebp - 8]
push esi
mov esi, dword [ebp - 0x1c]
push edi
mov dword [ebp - 0x10], 0x7259
jmp 0x100049e0
mov eax, dword [ebp - 0x10]
cmp eax, 0x2a90
ja 0x10004c1d
je 0x10004c0d
cmp eax, 0x2932
ja 0x10004bbc
je 0x10004bb0
cmp eax, 0x2860
ja 0x10004abb
je 0x10004a76
sub eax, 0x27d4
je 0x10004a2f
sub eax, 0x46
jne case.0x10004d19.29344
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov esi, dword [ecx + 0x1c]
jmp case.0x10004d19.29344
mov edx, dword [ebp + 8]
mov eax, dword [edx]
test eax, eax
je 0x10004a42
cmp dword [eax + 0x1c], 0
jne case.0x10004d19.29344
mov ecx, 0x46b
mov eax, ecx
sub eax, 0x46b
je 0x10004a5f
sub eax, 0x20
jne 0x10004a66
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xfffffffe
add ecx, 0x20
cmp ecx, 0x48b
jbe 0x10004a47
jmp case.0x10004d19.29344
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
cmp dword [ecx + 4], 0
jne case.0x10004d19.29344
cmp dword [esi + 0x3c], 8
jae case.0x10004d19.29344
mov ecx, 0x2225
mov eax, ecx
sub eax, 0x2225
je 0x10004aa4
sub eax, 0x5c
je 0x10004a55
jmp 0x10004aab
mov dword [ebp - 4], 0xfffffffb
add ecx, 0x5c
cmp ecx, 0x2281
jbe 0x10004a94
jmp case.0x10004d19.29344
sub eax, 0x28a6
je 0x10004af0
sub eax, 0x46
jne case.0x10004d19.29344
mov edi, dword [ebp + 8]
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov eax, dword [eax]
push edx
lea edx, [esi + 0x68]
call fcn.10022b90
mov ebx, eax
mov eax, dword [edi]
add esp, 4
sub dword [eax + 4], ebx
mov dword [ebp - 8], ebx
jmp case.0x10004d19.29344
cmp dword [esi], 0x1f
je case.0x10004d19.29344
xor edi, edi
mov dword [ebp - 8], 4
lea edx, [edi + 8]
cmp edi, 0x7b
ja case.0x10004b15.1
movzx eax, byte [edi + 0x10004db4]
jmp dword [eax*4 + 0x10004da0]
xor ebx, ebx
cmp dword [esi + 0x3c], edx
jb case.0x10004b15.1
mov ecx, 0x1050
jmp 0x10004b30
mov eax, ecx
sub eax, 0x1050
je 0x10004b44
sub eax, 0x5f
jne 0x10004b50
add dword [esi + 0x3c], 0xfffffff8
jmp 0x10004b50
mov al, byte [esi + 0x38]
mov byte [ebp + ebx - 0x14], al
inc ebx
shr dword [esi + 0x38], 8
add ecx, 0x5f
cmp ecx, 0x10af
jbe 0x10004b30
cmp dword [esi + 0x3c], edx
jae 0x10004b23
jmp case.0x10004b15.1
mov eax, dword [esi + 0x3c]
mov ecx, eax
and ecx, 7
sub eax, ecx
mov dword [esi + 0x3c], eax
jmp case.0x10004b15.1
mov ecx, dword [esi + 0x3c]
and ecx, 7
shl dword [esi + 0x38], cl
mov dword [esi], 0x1f
jmp case.0x10004b15.1
lea edx, [esi + 0x68]
push ebx
lea eax, [ebp - 0x14]
mov dword [edx], 0
call fcn.10022b90
add esp, 4
mov edx, 8
add edi, 0x29
dec dword [ebp - 8]
jne 0x10004b05
mov dword [ebp - 8], ebx
jmp case.0x10004d19.29344
mov edx, dword [ebp + 8]
mov eax, dword [edx]
add dword [eax], ebx
jmp case.0x10004d19.29344
add eax, 0xffffd688
cmp eax, 0xd2
ja case.0x10004d19.29344
movzx eax, byte [eax + 0x10004e44]
jmp dword [eax*4 + 0x10004e30]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
mov dword [edx + 8], eax
jmp case.0x10004d19.29344
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push eax
mov dword [ebp - 0x18], edx
call fcn.10005d40
jmp case.0x10004d19.29344
mov eax, dword [ebp + 8]
mov eax, dword [eax]
add dword [eax + 8], ebx
jmp case.0x10004d19.29344
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x18]
mov dword [edx + 0x14], eax
jmp case.0x10004d19.29344
cmp eax, 0x7259
ja 0x10004d06
je 0x10004ccd
cmp eax, 0x3f77
ja 0x10004cbd
je 0x10004cb1
sub eax, 0x2ad6
je 0x10004ca6
sub eax, 0x46
jne case.0x10004d19.29344
mov eax, 0x472e
cmp eax, eax
je 0x10004d96
add eax, 0x62
cmp eax, 0x472e
jbe 0x10004c52
cmp dword [esi + 0x68], 4
je 0x10004c96
mov ecx, 0x6258
lea ecx, [ecx]
mov eax, ecx
sub eax, 0x6258
je 0x10004c84
sub eax, 0x4b
je 0x10004a55
jmp 0x10004c8b
mov dword [ebp - 4], 0xfffffffd
add ecx, 0x4b
cmp ecx, 0x62a3
jbe 0x10004c70
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
mov dword [ebp - 0x1c], eax
jmp case.0x10004d19.29344
mov dword [esi], 0xb
jmp case.0x10004d19.29344
mov dword [ebp - 4], 0x100362b8
jmp case.0x10004d19.29344
cmp eax, 0x3fbd
je 0x10004a55
jmp case.0x10004d19.29344
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 0x30]
xor edi, edi
mov dword [ebp - 0xc], edx
cmp dword [eax + 0x18], edi
jl case.0x10004d19.29344
xor ebx, ebx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c]
lea eax, [ebx + ecx + 4]
call fcn.1001e6d0
mov edx, dword [ebp + 8]
inc edi
add ebx, 0x68
cmp edi, dword [edx + 0x18]
jle 0x10004ce6
mov ebx, dword [ebp - 8]
jmp case.0x10004d19.29344
add eax, 0xffff8d61
cmp eax, 0xd2
ja case.0x10004d19.29344
movzx eax, byte [eax + 0x10004f2c]
jmp dword [eax*4 + 0x10004f18]
mov eax, dword [ebp + 8]
add eax, 0x20
call fcn.10009fe0
jmp case.0x10004d19.29344
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0x10]
push edx
jmp 0x10004d70
mov ecx, dword [ebp - 0xc]
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x20], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c]
push ecx
jmp 0x10004d70
mov edi, dword [ebp - 0xc]
mov edx, dword [edi + 0x20]
push edx
call fcn.10025dec
mov eax, dword [edi]
add esp, 4
push eax
call fcn.10025dec
add esp, 4
mov eax, dword [ebp - 0x10]
add eax, 0x46
mov dword [ebp - 0x10], eax
cmp eax, 0x8a23
jbe 0x100049e0
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret