Function at 0x1000f930
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x28
push ebx
push ebp
push esi
push edi
mov edi, ecx
cmp byte [edi + 0x12828], 0
jne 0x1000f95e
mov ecx, dword [edi + 4]
push ecx
push 1
lea eax, [edi + 0xc]
push 4
push eax
call fcn.10029f04
add esp, 0x10
jmp 0x1000f97f
mov eax, dword [edi + 0x12848]
mov edx, dword [edi + 0x12840]
mov ecx, dword [eax + edx]
add eax, 4
mov dword [edi + 0xc], ecx
mov dword [edi + 0x1283c], ecx
mov dword [edi + 0x12848], eax
cmp dword [edi + 0xc], 0
je 0x1000fb67
mov ecx, edi
call fcn.1000ee70
mov ecx, edi
call fcn.1000ec80
push 0xfc4
lea eax, [edi + 0x18]
push 0x20
push eax
call fcn.100278b0
xor esi, esi
add esp, 0xc
cmp dword [edi + 0xc], esi
mov dword [esp + 0x14], 0xfc4
mov dword [esp + 0x18], esi
jbe 0x1000fb67
mov ecx, edi
call fcn.1000ef00
mov ebx, eax
cmp ebx, 0x100
jge 0x1000fa62
cmp byte [edi + 0x12828], 0
jne 0x1000f9ee
mov eax, dword [edi + 8]
push eax
push ebx
call fcn.100299ca
add esp, 8
jmp 0x1000fa44
mov eax, dword [edi + 0x12830]
test eax, eax
lea esi, [edi + 0x1282c]
mov byte [esp + 0x13], bl
jne 0x1000fa06
xor edx, edx
jmp 0x1000fa0b
mov edx, dword [esi + 8]
sub edx, eax
test eax, eax
je 0x1000fa25
mov ecx, dword [esi + 0xc]
sub ecx, eax
cmp edx, ecx
jae 0x1000fa25
mov eax, dword [esi + 8]
mov byte [eax], bl
add eax, 1
mov dword [esi + 8], eax
jmp 0x1000fa44
mov ebp, dword [esi + 8]
cmp eax, ebp
jbe 0x1000fa31
call fcn.100271d3
lea ecx, [esp + 0x13]
push ecx
push ebp
push esi
lea edx, [esp + 0x34]
push edx
mov ecx, esi
call fcn.1000f760
mov eax, dword [esp + 0x14]
mov byte [edi + eax + 0x18], bl
add eax, 1
and eax, 0xfff
add dword [esp + 0x18], 1
mov dword [esp + 0x14], eax
jmp 0x1000fb4b
mov ecx, edi
call fcn.1000f090
mov ebp, dword [esp + 0x14]
sub ebp, eax
sub ebp, 1
add ebx, 0xffffff03
xor eax, eax
and ebp, 0xfff
test ebx, ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], eax
jle 0x1000fb4b
add esi, ebx
mov dword [esp + 0x18], esi
jmp 0x1000faa0
add eax, ebp
and eax, 0xfff
cmp byte [edi + 0x12828], 0
movzx ebx, byte [eax + edi + 0x18]
jne 0x1000fac4
mov eax, dword [edi + 8]
push eax
push ebx
call fcn.100299ca
add esp, 8
jmp 0x1000fb22
mov eax, dword [edi + 0x12830]
test eax, eax
lea esi, [edi + 0x1282c]
mov byte [esp + 0x13], bl
jne 0x1000fadc
xor edx, edx
jmp 0x1000fae1
mov edx, dword [esi + 8]
sub edx, eax
test eax, eax
je 0x1000fafb
mov ecx, dword [esi + 0xc]
sub ecx, eax
cmp edx, ecx
jae 0x1000fafb
mov eax, dword [esi + 8]
mov byte [eax], bl
add eax, 1
mov dword [esi + 8], eax
jmp 0x1000fb22
mov ecx, dword [esi + 8]
cmp eax, ecx
mov dword [esp + 0x20], ecx
jbe 0x1000fb0f
call fcn.100271d3
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x13]
push edx
push ecx
push esi
lea eax, [esp + 0x3c]
push eax
mov ecx, esi
call fcn.1000f760
mov eax, dword [esp + 0x14]
mov byte [edi + eax + 0x18], bl
add eax, 1
and eax, 0xfff
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
add eax, 1
cmp eax, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
jl 0x1000faa0
mov eax, dword [edi + 0x14]
mov esi, dword [esp + 0x18]
cmp esi, eax
jbe 0x1000fb5e
add eax, 0x400
mov dword [edi + 0x14], eax
cmp esi, dword [edi + 0xc]
jb 0x1000f9c1
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret