Function at 0x424260
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x5c4
push ebp
push esi
push edi
xor ebp, ebp
mov ecx, 0x63
xor eax, eax
lea edi, [esp + 0x44]
mov dword [esp + 0x40], ebp
rep stosd dword es:[edi], eax
mov ecx, 0x100
lea edi, [esp + 0x1d0]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x5d4]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
push 0x431dcc
mov dword [esp + 0x20], eax
push ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x44], ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x2c], eax
call dword [0x472ec4]
mov esi, eax
add esp, 8
cmp esi, ebp
jne 0x4242f8
push 1
push 0x30006
push 0xa8000004
call dword [0x472f68]
add esp, 0xc
or eax, 0xffffffff
pop edi
pop esi
pop ebp
add esp, 0x5c4
ret
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0x1d0]
lea edx, [esp + 0x40]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x5d8]
push ebx
mov dword [esp + 0x38], edx
lea ebx, [eax + 4]
push 0
push ebp
push esi
call dword [sym.imp.MSVCRT.dll_fseek]
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0x1e0]
push esi
rep stosd dword es:[edi], eax
push 0xc
lea ecx, [esp + 0x1e8]
push 1
push ecx
call dword [sym.imp.MSVCRT.dll_fread]
mov al, byte [esp + 0x1f0]
add esp, 0x1c
cmp al, 0x3a
jne 0x424564
inc ebp
push 0
push ebp
push esi
call dword [sym.imp.MSVCRT.dll_fseek]
xor edx, edx
mov ecx, 0x100
mov dword [esp + 0x24], edx
xor eax, eax
mov dword [esp + 0x28], edx
lea edi, [esp + 0x1e0]
mov dword [esp + 0x2c], edx
push esi
rep stosd dword es:[edi], eax
push 1
lea eax, [esp + 0x2c]
mov dword [esp + 0x38], edx
push 0xc
push eax
mov dword [esp + 0x44], edx
call dword [sym.imp.MSVCRT.dll_fread]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
add esp, 0x1c
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], edx
mov dword [esp + 0x1dc], eax
xor ecx, ecx
mov al, byte [esp + ecx + 0x18]
cmp al, 0x40
jbe 0x4243d1
cmp al, 0x61
jae 0x4243d1
sub al, 0x37
jmp 0x4243df
cmp al, 0x2f
jbe 0x4243dd
cmp al, 0x3a
jae 0x4243dd
sub al, 0x30
jmp 0x4243df
sub al, 0x57
mov byte [esp + ecx + 0x18], al
inc ecx
cmp ecx, 0xc
jl 0x4243c1
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x19]
and ecx, 0xff
and edx, 0xff
shl ecx, 4
add ecx, edx
mov dl, byte [esp + 0x1db]
cmp dl, 0x30
jne 0x4244f1
mov edx, dword [esp + 0x1a]
mov eax, dword [esp + 0x1b]
and edx, 0xff
and eax, 0xff
shl edx, 4
mov edi, dword [esp + 0x34]
add edx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3c], ecx
shl edx, 4
and eax, 0xff
add edx, eax
mov eax, dword [esp + 0x1d]
shl edx, 4
add edi, edx
mov edx, dword [esp + 0x2c]
add edx, ecx
and eax, 0xff
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x40]
add eax, edi
test edx, edx
jne 0x42447f
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], 1
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
cmp edx, 1
jne 0x4244e8
mov edi, dword [esp + 0x10]
mov edx, eax
sub edx, edi
mov edi, dword [esp + 0x14]
cmp edx, edi
jne 0x4244a5
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x38]
mov dword [ebx - 4], edx
mov edx, dword [esp + 0x10]
sub edx, dword [edi]
mov edi, dword [esp + 0x14]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
add edx, edi
mov dword [ebx + 8], edx
mov edx, dword [esp + 0x38]
mov dword [ebx], eax
mov dword [edx + 4], eax
mov eax, dword [edx]
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x30]
inc eax
add edx, 4
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], edx
add ebx, 0x10
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
cmp dl, 0x32
je 0x424509
cmp dl, 0x34
je 0x424509
cmp dl, 0x31
je 0x42456a
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x21]
and eax, 0xff
and edi, 0xff
shl eax, 4
add eax, edi
mov edi, dword [esp + 0x22]
shl eax, 4
and edi, 0xff
add eax, edi
mov edi, dword [esp + 0x23]
shl eax, 4
and edi, 0xff
add eax, edi
cmp dl, 0x34
jne 0x424554
shl eax, 0x10
mov dword [esp + 0x34], eax
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
shl eax, 4
mov dword [esp + 0x34], eax
lea ebp, [ebp + ecx*2 + 0xa]
jmp 0x42431b
inc ebp
jmp 0x42431b
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x5e0]
mov ecx, esi
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x30]
add esp, 4
shl ecx, 4
lea eax, [ecx + edx]
mov ecx, dword [esp + esi*4 + 0x44]
mov edx, dword [esp + 0x3c]
sub edx, ecx
mov dword [eax], edi
add edx, ebx
pop ebx
mov dword [eax + 0xc], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x5dc]
mov dword [eax], esi
mov eax, edi
pop edi
pop esi
pop ebp
add esp, 0x5c4
ret