Function at 0x49f877
Capabilities:
Get file size
Read file on windows

Disassembly:
push 0x20c
mov eax, 0x6313a0
call fcn.004e5a7f
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x210], eax
mov esi, ebx
mov edi, ebx
call fcn.0048f555
push eax
lea ecx, [ebp - 0x54]
call fcn.0048ca90
mov dword [ebp - 4], ebx
call fcn.0048f561
mov ecx, eax
call fcn.0048d240
test al, al
je 0x49f959
push dword [ebp - 0x210]
lea ecx, [ebp - 0x54]
call fcn.0048cd28
push ebx
push 0x80
push 3
push ebx
push 1
push accept
lea ecx, [ebp - 0x54]
call fcn.0048ccb0
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x20c], eax
cmp eax, 0xffffffff
jne 0x49f903
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.0048cba9
jmp 0x49fac3
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test edi, edi
je 0x49f8f2
push edi
mov dword [ebp - 0x214], ebx
call fcn.004e48f7
pop ecx
push ebx
mov esi, eax
lea eax, [ebp - 0x214]
push eax
push edi
push esi
push dword [ebp - 0x20c]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0x20c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x214], edi
je 0x49fab3
push esi
call fcn.004e4900
pop ecx
mov esi, ebx
jmp 0x49f8f2
call fcn.0048f561
push eax
lea ecx, [ebp - 0x54]
call fcn.0048cceb
call fcn.0048f869
test al, al
je 0x49f97d
call fcn.0048f567
mov dword [ebp - 0x20c], eax
jmp 0x49f9c8
call fcn.0048f56d
push eax
lea ecx, [ebp - 0xdc]
call fcn.0048ca90
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 1
call fcn.0048ccb0
push eax
lea ecx, [ebp - 0x54]
call fcn.0048ccb0
push eax
call fcn.004ac002
pop ecx
pop ecx
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0x20c], eax
mov byte [ebp - 4], bl
call fcn.0048cba9
mov eax, dword [ebp - 0x20c]
test eax, eax
je 0x49f8f2
push 0xffffffffffffffff
push dword [ebp - 0x210]
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x218], ebx
call fcn.0048cac8
push 0x6c1858
push 0x6c1854
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 2
call fcn.0048d3ed
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
lea ecx, [ebp - 0x98]
call fcn.0048ccb0
push eax
push dword [ebp - 0x20c]
call fcn.004ab9dc
add esp, 0x14
test eax, eax
je 0x49fa40
lea ecx, [ebp - 0x98]
call fcn.0048cba9
jmp 0x49f8f2
mov edi, dword [ebp - 0xe0]
test edi, edi
je 0x49fa30
push edi
call fcn.004e48f7
push edi
mov esi, eax
push esi
push dword [ebp - 0x218]
push dword [ebp - 0x20c]
call fcn.004ac407
add esp, 0x14
test eax, eax
je 0x49fa93
cmp eax, 0x600
je 0x49fa93
push esi
call fcn.004e4900
pop ecx
mov esi, ebx
call fcn.0048f869
test al, al
jne 0x49fa30
push dword [ebp - 0x20c]
call fcn.004ab7e6
pop ecx
jmp 0x49fa30
call fcn.0048f869
test al, al
jne 0x49faa8
push dword [ebp - 0x20c]
call fcn.004ab7e6
pop ecx
lea ecx, [ebp - 0x98]
call fcn.0048cba9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.0048cba9
test esi, esi
jne 0x49fb3e
push ebx
push 0x80
push 3
push ebx
push 1
push accept
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x210], eax
cmp eax, 0xffffffff
je 0x49fb3a
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test edi, edi
je 0x49fb3a
push edi
mov dword [ebp - 0x20c], ebx
call fcn.004e48f7
pop ecx
push ebx
mov esi, eax
lea eax, [ebp - 0x20c]
push eax
push edi
push esi
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0x210]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x20c], edi
je 0x49fb3a
push esi
call fcn.004e4900
pop ecx
mov esi, ebx
test esi, esi
je 0x49fb50
push edi
push esi
call fcn.0049f80e
push esi
mov ebx, eax
call fcn.004e4900
add esp, 0xc
mov eax, ebx
call fcn.004e5a3a
ret