Function at 0x427830
Capabilities:
Hash data with crc32
Read file on windows

Disassembly:
push ebp
xor edx, edx
push edi
push esi
push ebx
sub esp, 0x1c
mov ebp, dword [esp + 0x34]
jmp 0x427884
mov eax, edx
shr eax, 1
test al, 1
jne 0x427896
shr eax, 1
test al, 1
jne 0x4278a1
shr eax, 1
test al, 1
jne 0x4278ac
shr eax, 1
test al, 1
jne 0x4278b7
shr eax, 1
test al, 1
jne 0x4278c2
shr eax, 1
test al, 1
jne 0x4278cd
shr eax, 1
test al, 1
je 0x4278d8
shr eax, 1
xor eax, 0xedb88320
mov dword [edx*4 + 0xf707b0], eax
add edx, 1
cmp edx, 0x100
je 0x4278dc
test dl, 1
je 0x42783f
mov eax, edx
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x427847
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x42784d
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x427853
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x427859
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x42785f
shr eax, 1
xor eax, 0xedb88320
test al, 1
je 0x427865
shr eax, 1
xor eax, 0xedb88320
test al, 1
jne 0x42786b
shr eax, 1
jmp 0x427872
mov eax, dword [esp + 0x30]
mov dword [esp + 4], 0xafafa0
mov dword [esp], eax
call sub.msvcrt.dll_fopen
test eax, eax
mov dword [0xc10ba0], eax
je 0x427b22
mov dword [esp + 0xc], eax
mov dword [esp + 8], 7
mov dword [esp + 4], 1
mov dword [esp], 0xf6ced0
call sub.msvcrt.dll_fread
cmp eax, 7
je 0x427945
mov eax, dword [0xc10ba0]
xor edi, edi
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov dword [0xc10ba0], 0
add esp, 0x1c
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
ret
movzx edx, byte [0xf6ced0]
cmp dl, 0x52
je 0x427b29
cmp dl, 0x55
je 0x427ba0
mov dword [0xc10be0], 0xd
mov dword [esp], 0x100000
call sub.msvcrt.dll_malloc
test eax, eax
mov dword [0xc10b20], eax
je 0x427b22
movzx eax, word [0xf70d46]
xor esi, esi
xor edi, edi
sub eax, dword [0xc10be0]
mov dword [esp + 8], 1
mov dword [esp + 4], eax
mov eax, dword [0xc10ba0]
mov dword [esp], eax
call sub.msvcrt.dll_fseek
mov dword [ebp], 0
jmp 0x427a6e
mov dword [esp], 0x28
call sub.msvcrt.dll_malloc
mov ebx, eax
mov dword [eax + 0x24], 0
mov dword [ebp], eax
movzx eax, word [0xf6c75e]
add eax, 1
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov edx, dword [0xc10b30]
mov dword [ebx], eax
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcrt.dll_strcpy
movzx eax, word [0xf6c75e]
mov word [ebx + 4], ax
mov eax, dword [0xf6c748]
mov dword [ebx + 8], eax
mov eax, dword [0xf6c74c]
mov dword [ebx + 0xc], eax
movzx eax, byte [0xf6c750]
mov byte [ebx + 0x10], al
mov eax, dword [0xf6c754]
mov dword [ebx + 0x14], eax
mov eax, dword [0xf6c758]
mov dword [ebx + 0x18], eax
movzx eax, byte [0xf6c75c]
mov byte [ebx + 0x1c], al
movzx eax, byte [0xf6c75d]
mov byte [ebx + 0x1d], al
mov edx, dword [0xc10ba0]
mov eax, dword [0xf6c760]
test edx, edx
mov dword [ebx + 0x20], eax
je 0x427a69
mov eax, dword [0xc10c00]
mov dword [esp + 8], 0
mov dword [esp], edx
mov dword [esp + 4], eax
call sub.msvcrt.dll_fseek
add edi, 1
mov esi, ebx
mov eax, 0x8074
call fcn.00427180
test eax, eax
jle 0x427aad
cmp byte [0xf70212], 0x77
je 0x427aad
mov ecx, dword [ebp]
test ecx, ecx
je 0x4279b7
mov dword [esp], 0x28
call sub.msvcrt.dll_malloc
mov ebx, eax
mov dword [esi + 0x24], eax
mov dword [eax + 0x24], 0
jmp 0x4279cf
mov eax, dword [0xc10b40]
mov dword [eax], 0
mov eax, dword [0xc10ba0]
test eax, eax
je 0x427ad3
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov dword [0xc10ba0], 0
mov eax, dword [0xc10b20]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [0xc10b50]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [0xc10b60]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, edi
mov dword [0xc10b20], 0
mov dword [0xc10b50], 0
mov dword [0xc10b60], 0
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret
xor edi, edi
jmp 0x42793b
movzx eax, byte [0xf6ced1]
cmp al, 0x45
je 0x427bf0
cmp al, 0x61
jne 0x42795e
cmp byte [0xf6ced2], 0x72
jne 0x42795e
cmp byte [0xf6ced3], 0x21
jne 0x42795e
cmp byte [0xf6ced4], 0x1a
jne 0x42795e
cmp byte [0xf6ced5], 7
jne 0x42795e
cmp byte [0xf6ced6], 0
jne 0x42795e
mov eax, 0x73
call fcn.00426e00
cmp eax, 0xd
jne 0x427922
jmp 0x42795e
cmp byte [0xf6ced1], 0x6e
jne 0x42795e
cmp byte [0xf6ced2], 0x69
jne 0x42795e
cmp byte [0xf6ced3], 0x71
jne 0x42795e
cmp byte [0xf6ced4], 0x75
jne 0x42795e
cmp byte [0xf6ced5], 0x45
jne 0x42795e
cmp byte [0xf6ced6], 0x21
jne 0x42795e
jmp 0x427b81
cmp byte [0xf6ced2], 0x7e
jne 0x427955
lea esi, [esi]
jmp 0x42795e