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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbc
mov eax, dword [0x53f40dc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp + 0x10]
push edi
push esi
mov dword [ebp - 0x8c], esi
mov edi, dword [eax]
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0xa0], ebx
call fcn.05571e35
mov dword [ebp - 0xac], eax
pop ecx
test eax, eax
jne 0x5571969
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push esi
push 0x5535b94
push edi
call fcn.05558978
add esp, 0x1c
push 0x4d
pop ebx
jmp 0x5571c93
push ebx
push 0x80
push 3
push ebx
push ebx
push bind
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xa4], eax
cmp eax, 0xffffffff
jne 0x55719ab
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push esi
push 0x5535bc8
jmp 0x5571958
lea ecx, [ebp - 0xb4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x55719ed
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push esi
push 0x5535bf4
push edi
call fcn.05558978
add esp, 0x1c
push 0x4d
pop ebx
jmp 0x5571c87
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0xb0], ebx
jl 0x5571a1d
mov ecx, 0x100000
jg 0x5571a0c
cmp eax, ecx
jbe 0x5571a1d
push ecx
push 0x5535c2c
push edi
call fcn.05558978
add esp, 0xc
jmp 0x55719e5
inc eax
push eax
call dword [0x53f4068]
mov edx, eax
mov dword [ebp - 0x9c], edx
pop ecx
test edx, edx
jne 0x5571a36
push 0x1b
jmp 0x55719e7
mov eax, dword [ebp - 0x98]
test eax, eax
je 0x5571a9f
mov ecx, ebx
push ebx
lea esi, [ebp - 0x90]
mov dword [ebp - 0x90], ebx
push esi
sub eax, ecx
push eax
lea eax, [ecx + edx]
push eax
push dword [ebp - 0xa4]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov esi, dword [ebp - 0x8c]
test eax, eax
je 0x5571b98
mov edx, dword [ebp - 0x9c]
cmp dword [ebp - 0x90], ebx
je 0x5571b8d
mov ecx, dword [ebp - 0x94]
add ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x94], ecx
cmp ecx, eax
jb 0x5571a42
mov byte [eax + edx], bl
mov eax, edx
mov byte [ebp - 0x85], 1
mov dword [ebp - 0x98], eax
cmp byte [eax], bl
je 0x5571c58
push 0x5535c8c
push eax
call fcn.0557fdb0
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x5571bbc
mov al, byte [esi + 0x1b]
cmp al, 0xd
je 0x5571adf
cmp al, 0xa
jne 0x5571bbc
push 0x5535ca8
push esi
call fcn.0557fdb0
pop ecx
pop ecx
test eax, eax
je 0x5571c48
sub eax, esi
mov dword [ebp - 0x94], ebx
add eax, 0x1a
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x94]
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0x90]
mov dword [ebp - 0xb8], esi
push eax
push ebx
push ebx
push 0xe
push 2
lea eax, [ebp - 0xbc]
push eax
push 2
call dword [sym.imp.CRYPT32.dll_CryptQueryObject]
test eax, eax
je 0x5571c1f
add dword [ebp - 0x98], esi
cmp dword [ebp - 0x90], 1
jne 0x5571c00
push ebx
push 4
push dword [ebp - 0x94]
push dword [ebp - 0xa8]
call dword [sym.imp.CRYPT32.dll_CertAddCertificateContextToStore]
push dword [ebp - 0x94]
mov esi, eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test esi, esi
je 0x5571bd7
inc dword [ebp - 0xa0]
mov cl, byte [ebp - 0x85]
jmp 0x5571bc4
mov eax, dword [ebp - 0x94]
jmp 0x5571a9f
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push esi
push 0x5535c5c
jmp 0x55719dc
mov cl, bl
mov byte [ebp - 0x85], cl
test cl, cl
je 0x5571c58
mov eax, dword [ebp - 0x98]
jmp 0x5571ab1
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push dword [ebp - 0x8c]
push 0x5535d90
jmp 0x55719dc
push dword [ebp - 0x8c]
push dword [ebp - 0x90]
push 0x5535d38
push edi
call fcn.05558978
add esp, 0x10
jmp 0x55719e5
push 0x80
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0556de4c
push eax
push dword [ebp - 0x8c]
push 0x5535cf8
jmp 0x55719dc
push dword [ebp - 0x8c]
push 0x5535cc4
jmp 0x5571a12
mov eax, dword [ebp - 0xa0]
push dword [ebp - 0x8c]
test eax, eax
jne 0x5571c78
push 0x5535de0
push edi
call fcn.05558a4c
add esp, 0xc
jmp 0x5571c87
push eax
push 0x5535e1c
push edi
call fcn.05558a4c
add esp, 0x10
push dword [ebp - 0xa4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x9c]
call dword [0x53f406c]
mov eax, dword [ebp - 0xac]
pop ecx
test eax, eax
je 0x5571cb2
push eax
call dword [0x53f406c]
pop ecx
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0557c24c
leave
ret