Function at 0x10247b00
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1020
call fcn.1025c1c0
mov eax, dword [0x102de0b4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 8]
push edi
mov dword [ebp - 0x101c], esi
call fcn.1023cbc0
push esi
lea ebx, [eax - 1]
mov dword [ebp - 0x1020], ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_clearerr]
add esp, 8
test ebx, ebx
jne 0x10247b8b
push 1
push esi
push edi
call fcn.102482a0
mov ebx, eax
add esp, 0xc
mov eax, dword [ebp + 0x10]
inc eax
mov dword [ebp - 0x1018], eax
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
add esp, 4
test eax, eax
je 0x10247d64
push 0
push 0
push edi
call fcn.1023adf0
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1025c1b2
mov esp, ebp
pop ebp
ret
push str.too_many_arguments
lea eax, [ebx + 0x14]
push eax
push edi
call fcn.1023ab40
mov eax, dword [ebp + 0x10]
add esp, 0xc
mov ecx, dword [ebp - 0x1020]
mov ebx, 1
mov dword [ebp - 0x1018], eax
dec ecx
mov dword [ebp - 0x1020], ecx
test ebx, ebx
je 0x10247b5b
push eax
push edi
call fcn.1023dd70
mov ebx, dword [ebp - 0x1018]
add esp, 8
cmp eax, 3
jne 0x10247c69
push ebx
push edi
call fcn.1023a970
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x10247c1a
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_getc]
push dword [ebp - 0x101c]
mov esi, eax
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ungetc]
push 0x10288ba5
push edi
call fcn.1023d1d0
add esp, 0x14
cmp esi, 0xffffffff
mov esi, dword [ebp - 0x101c]
setne bl
jmp 0x10247d24
lea eax, [ebp - 0x1014]
push eax
push edi
call fcn.1023a8e0
lea eax, [ebp - 0x1014]
push ebx
push eax
call fcn.1023b5f0
push esi
push ebx
push 1
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov esi, eax
lea eax, [ebp - 0x1014]
add dword [ebp - 0x100c], esi
push eax
call fcn.1023b790
xor eax, eax
add esp, 0x24
cmp eax, esi
mov esi, dword [ebp - 0x101c]
sbb ebx, ebx
neg ebx
jmp 0x10247d24
push 0
push ebx
push edi
call fcn.1023a9f0
add esp, 0xc
mov cl, byte [eax]
cmp cl, 0x2a
jne 0x10247c7f
mov cl, byte [eax + 1]
movsx eax, cl
add eax, 0xffffffb4
cmp eax, 0x22
ja case.0x10247c95.77
movzx eax, byte [eax + 0x10247da8]
jmp dword [eax*4 + 0x10247d94]
push esi
push edi
call fcn.102483d0
add esp, 8
mov ebx, eax
jmp 0x10247d24
push 1
push esi
push edi
call fcn.102482a0
add esp, 0xc
mov ebx, eax
jmp 0x10247d24
push 0
push esi
push edi
call fcn.102482a0
add esp, 0xc
mov ebx, eax
jmp 0x10247d24
lea eax, [ebp - 0x1014]
push eax
push edi
call fcn.1023a8e0
add esp, 8
nop word [eax + eax]
lea eax, [ebp - 0x1014]
push 0x1000
push eax
call fcn.1023b5f0
push esi
push 0x1000
push 1
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add dword [ebp - 0x100c], eax
add esp, 0x18
cmp eax, 0x1000
je 0x10247ce0
lea eax, [ebp - 0x1014]
push eax
call fcn.1023b790
add esp, 4
mov ebx, 1
mov eax, dword [ebp - 0x1018]
mov ecx, dword [ebp - 0x1020]
inc eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x10247bb1
jmp 0x10247b5b
push str.invalid_format
push ebx
push edi
call fcn.1023a7d0
add esp, 0xc
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1025c1b2
mov esp, ebp
pop ebp
ret
test ebx, ebx
jne 0x10247d79
push 0xfffffffffffffffe
push edi
call fcn.1023d8e0
push edi
call fcn.1023d190
add esp, 0xc
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x1018]
xor ecx, ebp
sub eax, dword [ebp + 0x10]
pop edi
pop esi
pop ebx
call fcn.1025c1b2
mov esp, ebp
pop ebp
ret