Function at 0x541fa0
Capabilities:
Hash data with crc32

Disassembly:
mov ecx, dword [esp + 4]
push esi
mov esi, dword [esp + 0xc]
or eax, 0xffffffff
cmp esi, 0x10
jb 0x542263
mov dl, byte [ecx]
cmp dl, 0x61
jl 0x541fc9
cmp dl, 0x7a
jg 0x541fc9
movsx edx, dl
sub edx, 0x20
jmp 0x541fcc
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 1]
cmp dl, 0x61
jl 0x541ff3
cmp dl, 0x7a
jg 0x541ff3
movsx edx, dl
sub edx, 0x20
jmp 0x541ff6
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 2]
cmp dl, 0x61
jl 0x54201d
cmp dl, 0x7a
jg 0x54201d
movsx edx, dl
sub edx, 0x20
jmp 0x542020
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 3]
cmp dl, 0x61
jl 0x542047
cmp dl, 0x7a
jg 0x542047
movsx edx, dl
sub edx, 0x20
jmp 0x54204a
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 4]
cmp dl, 0x61
jl 0x542071
cmp dl, 0x7a
jg 0x542071
movsx edx, dl
sub edx, 0x20
jmp 0x542074
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 5]
cmp dl, 0x61
jl 0x54209b
cmp dl, 0x7a
jg 0x54209b
movsx edx, dl
sub edx, 0x20
jmp 0x54209e
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 6]
cmp dl, 0x61
jl 0x5420c5
cmp dl, 0x7a
jg 0x5420c5
movsx edx, dl
sub edx, 0x20
jmp 0x5420c8
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 7]
cmp dl, 0x61
jl 0x5420ef
cmp dl, 0x7a
jg 0x5420ef
movsx edx, dl
sub edx, 0x20
jmp 0x5420f2
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 8]
cmp dl, 0x61
jl 0x542119
cmp dl, 0x7a
jg 0x542119
movsx edx, dl
sub edx, 0x20
jmp 0x54211c
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 9]
cmp dl, 0x61
jl 0x542143
cmp dl, 0x7a
jg 0x542143
movsx edx, dl
sub edx, 0x20
jmp 0x542146
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xa]
cmp dl, 0x61
jl 0x54216d
cmp dl, 0x7a
jg 0x54216d
movsx edx, dl
sub edx, 0x20
jmp 0x542170
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xb]
cmp dl, 0x61
jl 0x542197
cmp dl, 0x7a
jg 0x542197
movsx edx, dl
sub edx, 0x20
jmp 0x54219a
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xc]
cmp dl, 0x61
jl 0x5421c1
cmp dl, 0x7a
jg 0x5421c1
movsx edx, dl
sub edx, 0x20
jmp 0x5421c4
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xd]
cmp dl, 0x61
jl 0x5421eb
cmp dl, 0x7a
jg 0x5421eb
movsx edx, dl
sub edx, 0x20
jmp 0x5421ee
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xe]
cmp dl, 0x61
jl 0x542215
cmp dl, 0x7a
jg 0x542215
movsx edx, dl
sub edx, 0x20
jmp 0x542218
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
mov dl, byte [ecx + 0xf]
cmp dl, 0x61
jl 0x54223f
cmp dl, 0x7a
jg 0x54223f
movsx edx, dl
sub edx, 0x20
jmp 0x542242
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
sub esi, 0x10
add ecx, 0x10
cmp esi, 0x10
jae 0x541fb5
test esi, esi
je 0x542296
mov dl, byte [ecx]
cmp dl, 0x61
jl 0x54227b
cmp dl, 0x7a
jg 0x54227b
movsx edx, dl
sub edx, 0x20
jmp 0x54227e
movsx edx, dl
xor edx, eax
and edx, 0xff
shr eax, 8
xor eax, dword [edx*4 + 0x694638]
inc ecx
sub esi, 1
jne 0x542267
not eax
pop esi
ret