Function at 0x4024a0
Capabilities:
Contain obfuscated stackstrings
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
xor edi, edi
push ebx
sub esp, 0x44
mov eax, dword [ebp + 8]
push 0x4022a0
push eax
call sub.msvcrt.dll_fopen
add esp, 0x10
mov esi, eax
mov eax, 1
test esi, esi
je 0x40275e
sub esp, 0xc
push 1
call sub.msvcrt.dll_malloc
mov ebx, eax
mov dword [esp], esi
call sub.msvcrt.dll_feof
add esp, 0x10
test eax, eax
jne 0x4024f4
push esi
inc edi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
jmp 0x4024d7
sub esp, 0xc
push esi
call sub.msvcrt.dll_rewind
mov dword [esp], edi
call sub.msvcrt.dll_malloc
push esi
push edi
xor edi, edi
push 1
mov dword [ebp - 0x3c], eax
push eax
call sub.msvcrt.dll_fread
add esp, 0x14
mov byte [ebp - 0x38], 0x21
push esi
mov byte [ebp - 0x37], 0x21
mov byte [ebp - 0x36], 0x21
mov byte [ebp - 0x35], 0x21
mov byte [ebp - 0x34], 0x21
mov byte [ebp - 0x33], 0x66
mov byte [ebp - 0x32], 0x75
mov byte [ebp - 0x31], 0x6b
mov byte [ebp - 0x30], 0x2d
mov byte [ebp - 0x2f], 0x74
mov byte [ebp - 0x2e], 0x63
mov byte [ebp - 0x2d], 0x70
mov byte [ebp - 0x2c], 0x61
mov byte [ebp - 0x2b], 0x21
mov byte [ebp - 0x2a], 0x21
mov byte [ebp - 0x29], 0x21
mov byte [ebp - 0x28], 0x21
mov byte [ebp - 0x27], 0x21
mov byte [ebp - 0x26], 0
call sub.msvcrt.dll_rewind
add esp, 0x10
lea esi, [esi]
sub esp, 0xc
push esi
call sub.msvcrt.dll_feof
add esp, 0x10
test eax, eax
jne 0x402740
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
add esp, 0x10
mov al, byte [ebx]
cmp al, 0x21
je 0x4026c5
cmp al, 0x66
je 0x4026b0
cmp al, 0x75
je 0x402695
cmp al, 0x6b
je 0x402680
cmp al, 0x2d
je 0x402665
cmp al, 0x74
je 0x402650
cmp al, 0x63
je 0x402637
cmp al, 0x70
je 0x402625
cmp al, 0x61
je 0x402613
cmp al, 0x21
jne 0x402570
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
add esp, 0x10
cmp byte [ebx], 0x21
jne 0x402570
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
add esp, 0x10
cmp byte [ebx], 0x21
jne 0x402570
push esi
mov edi, 1
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
jmp 0x402569
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025d0
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025cc
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025c8
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025c4
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025bc
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025b4
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025ac
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x4025a4
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
cmp al, 0x21
jne 0x40259c
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
cmp al, 0x21
jne 0x40259c
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
cmp al, 0x21
jne 0x40259c
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
cmp al, 0x21
jne 0x40259c
push esi
push 1
push 1
push ebx
call sub.msvcrt.dll_fread
mov al, byte [ebx]
add esp, 0x10
jmp 0x40259c
sub esp, 0xc
mov eax, dword [ebp - 0x3c]
push eax
call sub.msvcrt.dll_free
mov dword [esp], ebx
call sub.msvcrt.dll_free
mov dword [esp], esi
call sub.msvcrt.dll_fclose
mov eax, edi
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret