Function at 0x1000f120
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x120
push ebx
push esi
push edi
lea edi, [ebp - 0x120]
mov ecx, 0x48
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0x14], 0
jmp 0x1000f157
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp + 0xc]
jge 0x1000f3e3
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + eax*4]
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0
jne 0x1000f19a
mov eax, dword [0x1001f130]
add eax, 6
mov esi, esp
push eax
push str.d:co_stuffprotectionmy_protectionco2shield5517__new_testsco2shieldxxhsum.c
push str.inFileName___NULL
call dword [sym.imp.MSVCR100D.dll__wassert]
add esp, 0xc
cmp esi, esp
call fcn.10014010
mov esi, esp
push 0x1001c410
mov eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.MSVCR100D.dll_fopen]
add esp, 8
cmp esi, esp
call fcn.10014010
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x20]
push eax
call fcn.1000fbc0
add esp, 4
mov dword [ebp - 0x38], eax
mov esi, esp
push 1
mov eax, dword [ebp - 0x38]
add eax, 0x13
push eax
call dword [sym.imp.MSVCR100D.dll_calloc]
add esp, 8
cmp esi, esp
call fcn.10014010
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
add eax, 0xf
mov ecx, dword [ebp - 0x44]
add ecx, 0xf
and ecx, 0xf
sub eax, ecx
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x2c], 0
jne 0x1000f272
mov esi, esp
call dword [sym.imp.MSVCR100D.dll__errno]
cmp esi, esp
call fcn.10014010
mov esi, esp
mov eax, dword [eax]
push eax
call dword [sym.imp.MSVCR100D.dll_strerror]
add esp, 4
cmp esi, esp
call fcn.10014010
mov esi, esp
push eax
mov ecx, dword [ebp - 0x20]
push ecx
push str.Error:_Could_not_open__s:__s._n
mov edi, esp
call dword [sym.imp.MSVCR100D.dll___iob_func]
cmp edi, esp
call fcn.10014010
add eax, 0x40
push eax
call dword [sym.imp.MSVCR100D.dll_fprintf]
add esp, 0x10
cmp esi, esp
call fcn.10014010
mov esi, esp
mov eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.MSVCR100D.dll_free]
add esp, 4
cmp esi, esp
call fcn.10014010
mov eax, 0xb
jmp 0x1000f3e6
cmp dword [ebp - 0x44], 0
jne 0x1000f2c2
mov esi, esp
push str._nError:_Out_of_memory._n
mov edi, esp
call dword [sym.imp.MSVCR100D.dll___iob_func]
cmp edi, esp
call fcn.10014010
add eax, 0x40
push eax
call dword [sym.imp.MSVCR100D.dll_fprintf]
add esp, 8
cmp esi, esp
call fcn.10014010
mov esi, esp
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100D.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.10014010
mov eax, 0xc
jmp 0x1000f3e6
cmp dword [0x1001f11c], 1
jl 0x1000f2f9
mov esi, esp
mov eax, dword [ebp - 0x20]
push eax
push str._rLoading__s..._________n
mov edi, esp
call dword [sym.imp.MSVCR100D.dll___iob_func]
cmp edi, esp
call fcn.10014010
add eax, 0x40
push eax
call dword [sym.imp.MSVCR100D.dll_fprintf]
add esp, 0xc
cmp esi, esp
call fcn.10014010
xor eax, eax
jne 0x1000f2c2
mov esi, esp
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
push 1
mov edx, dword [ebp - 0x50]
push edx
call dword [sym.imp.MSVCR100D.dll_fread]
add esp, 0x10
cmp esi, esp
call fcn.10014010
mov dword [ebp - 0x5c], eax
mov esi, esp
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100D.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.10014010
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x38]
je 0x1000f3ae
mov esi, esp
call dword [sym.imp.MSVCR100D.dll__errno]
cmp esi, esp
call fcn.10014010
mov esi, esp
mov eax, dword [eax]
push eax
call dword [sym.imp.MSVCR100D.dll_strerror]
add esp, 4
cmp esi, esp
call fcn.10014010
mov esi, esp
push eax
mov ecx, dword [ebp - 0x20]
push ecx
push str._nError:_Could_not_read__s:__s._n
mov edi, esp
call dword [sym.imp.MSVCR100D.dll___iob_func]
cmp edi, esp
call fcn.10014010
add eax, 0x40
push eax
call dword [sym.imp.MSVCR100D.dll_fprintf]
add esp, 0x10
cmp esi, esp
call fcn.10014010
mov esi, esp
mov eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.MSVCR100D.dll_free]
add esp, 4
cmp esi, esp
call fcn.10014010
mov eax, 0xd
jmp 0x1000f3e6
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0x50]
push edx
call fcn.1000f400
add esp, 0xc
or eax, dword [ebp - 8]
mov dword [ebp - 8], eax
mov esi, esp
mov eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.MSVCR100D.dll_free]
add esp, 4
cmp esi, esp
call fcn.10014010
jmp 0x1000f14e
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
add esp, 0x120
cmp ebp, esp
call fcn.10014010
mov esp, ebp
pop ebp
ret