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

Disassembly:
push 0x3c
mov eax, 0x5224b1
call fcn.0051d3a0
mov eax, dword [ebp + 0xc]
xor esi, esi
push esi
push 0x80
push 3
push esi
push 1
push SysReAllocString
push edx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x14], esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
mov dword [ebp - 0x40], edi
cmp edi, 0xffffffff
jne 0x4e224e
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e2233
mov eax, 0x36fd
jmp 0x4e223e
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e223e
int3
mov dword [ebp - 0x34], 0xb5
mov dword [ebp - 0x30], 0x41a640
jmp 0x4e228d
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], esi
push eax
push edi
mov dword [ebp - 0x18], esi
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x4e22af
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e2274
mov eax, 0x36fd
jmp 0x4e227f
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e227f
int3
mov dword [ebp - 0x34], 0xbb
mov dword [ebp - 0x30], 0x438d00
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x38], 0x438cf0
push eax
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x3c], 0x438cc0
call fcn.0044f55e
mov ebx, eax
jmp 0x4e239e
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x18], esi
jl 0x4e22c2
jg 0x4e22c1
cmp ecx, 0xffffffff
jbe 0x4e22c2
int3
test ecx, ecx
je 0x4e23f3
xor eax, eax
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
lea edx, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.004dfbb5
mov ebx, eax
test ebx, ebx
jns 0x4e22e8
mov edi, dword [ebp - 0x40]
jmp 0x4e238b
cmp dword [ebp - 0x18], esi
jl 0x4e22f6
jg 0x4e22f5
cmp dword [ebp - 0x1c], 0xffffffff
jbe 0x4e22f6
int3
mov edi, dword [ebp - 0x40]
lea eax, [ebp - 0x20]
push esi
push eax
mov dword [ebp - 0x20], esi
mov esi, dword [ebp - 0x44]
push esi
push dword [ebp - 0x24]
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x4e235c
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e2324
mov eax, 0x36fd
jmp 0x4e232f
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4e232f
int3
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x438cc0
push eax
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x38], 0x438cf0
mov dword [ebp - 0x34], 0xcf
mov dword [ebp - 0x30], 0x438d38
call fcn.0044f55e
mov ebx, eax
jmp 0x4e238b
cmp dword [ebp - 0x20], esi
je 0x4e23bd
mov ebx, 0xc0000001
mov dword [ebp - 0x3c], 0x438cc0
push ebx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x38], 0x438cf0
mov dword [ebp - 0x34], 0xd0
mov dword [ebp - 0x30], 0x438d8c
call fcn.004de872
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x2c]
call fcn.00442e33
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 7
test edi, edi
je 0x4e23b5
cmp edi, 0xffffffff
je 0x4e23b5
push edi
call dword [sym.imp.NTDLL.dll_NtClose]
or dword [ebp - 4], 0xffffffff
mov eax, ebx
jmp 0x4e240b
mov dword [ebp - 0x2c], esi
lea edi, [ebp - 0x38]
mov esi, dword [ebp - 0x48]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x48]
lea esi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x38]
lea edi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x2c]
call fcn.00442e33
or dword [ebp - 4], 0xffffffff
xor esi, esi
mov edi, dword [ebp - 0x40]
mov dword [ebp - 4], 9
test edi, edi
je 0x4e2405
push edi
call dword [sym.imp.NTDLL.dll_NtClose]
or dword [ebp - 4], 0xffffffff
mov eax, esi
call fcn.0051d34a
ret 8