Function at 0x426560
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x30
push ebx
push ebp
push esi
push edi
push 0x100
push 0x8000
push 0x4dea70
call fcn.00447ff4
mov ebp, eax
add esp, 0xc
mov dword [esp + 0x24], ebp
cmp ebp, 0xffffffff
jne 0x4265af
mov ecx, dword [0x52c04c]
mov eax, dword [0x52bfa8]
mov edx, dword [0x4dee90]
push 0x10
push eax
push ecx
push edx
call dword [0x4572c8]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push ebp
call fcn.00448021
add esp, 4
test edx, edx
jl 0x4265cd
jg 0x4265c5
cmp eax, 0x1900000
jb 0x4265cd
mov ecx, dword [0x52c044]
jmp 0x42658f
push 0x10
lea eax, [esp + 0x34]
push eax
push ebp
call fcn.0044899f
add esp, 0xc
push 0x10
lea ecx, [esp + 0x34]
push 0x4ac534
push ecx
call fcn.00449fe1
add esp, 0xc
test eax, eax
jne 0x426809
push 1
push 8
push ebp
mov dword [esp + 0x38], 1
call fcn.0044a2cb
add esp, 0xc
push 4
lea edx, [esp + 0x14]
push edx
push ebp
call fcn.0044899f
add esp, 0xc
push 4
lea eax, [esp + 0x1c]
push eax
push ebp
call fcn.0044899f
add esp, 0xc
push 0
push 0
push ebp
call fcn.0044a2cb
mov eax, dword [esp + 0x1c]
add eax, 0x20
add esp, 0xc
push eax
mov dword [esp + 0x18], eax
call fcn.00449731
mov esi, eax
add esp, 4
mov dword [esp + 0x1c], esi
test esi, esi
je 0x426663
push 0
call fcn.00449ac9
add esp, 4
push 0x20
push esi
push ebp
mov dword [esp + 0x2c], esi
call fcn.0044899f
mov eax, dword [esp + 0x24]
add esp, 0xc
lea ebx, [esi + 0x20]
cmp eax, 0xffffffff
je 0x4266f4
push eax
call fcn.00449731
mov ecx, dword [esp + 0x1c]
add esp, 4
push ecx
mov edi, eax
push edi
push ebp
call fcn.0044899f
mov edx, dword [esp + 0x24]
add esp, 0xc
push edx
push edi
lea eax, [esp + 0x18]
push eax
push ebx
call fcn.0043fba0
add esp, 0x10
test eax, eax
je 0x4266e9
mov ecx, dword [0x52bfa8]
mov edx, dword [0x52c07c]
mov eax, dword [0x4dee90]
push 0x10
push ecx
push edx
push eax
call dword [0x4572c8]
push edi
call fcn.00449ac9
add esp, 4
push esi
call fcn.00449ac9
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push edi
call fcn.00449ac9
add esp, 4
jmp 0x426703
mov ecx, dword [esp + 0x10]
push ecx
push ebx
push ebp
call fcn.0044899f
add esp, 0xc
mov edi, dword [esp + 0x1c]
xor ebx, ebx
cmp dword [esp + 0x10], ebx
jbe 0x426889
cmp dword [ebx + esi + 0x20], 4
mov ecx, dword [ebx + esi + 0x24]
lea eax, [esi + 0x20]
jne 0x4267df
xor esi, esi
add ebx, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
je 0x4267d5
lea ebp, [ebx + eax]
lea esp, [esp]
push 4
lea edx, [esi + ebp]
push 0x4ac548
push edx
call fcn.00449fe1
add esp, 0xc
test eax, eax
je 0x426778
mov eax, dword [esi + ebp + 8]
imul eax, dword [esi + ebp + 4]
lea esi, [esi + eax + 0xc]
cmp esi, dword [esp + 0x28]
jb 0x426740
mov ebp, dword [esp + 0x24]
add ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x1c]
jmp 0x4267e3
mov eax, dword [esp + 0x1c]
add esi, ebx
lea esi, [esi + eax + 0x2c]
call fcn.00407d40
mov edi, eax
cmp edi, 0xffffffff
je 0x4267f2
mov edx, edi
sar eax, 0x10
and edx, 0xffff
mov ecx, esi
call fcn.004264c0
test eax, eax
jne 0x4267c2
mov ecx, dword [0x52bfa8]
mov edx, dword [0x52c088]
mov eax, dword [0x4dee90]
push 0x10
push ecx
push edx
push eax
call dword [0x4572c8]
jmp 0x426782
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x24]
mov dword [0x52bbcc], eax
and edi, 0xffff
add ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x1c]
jmp 0x4267e3
lea ebx, [ebx + ecx + 8]
cmp ebx, dword [esp + 0x10]
jb 0x426713
jmp 0x426889
mov edx, dword [esp + 0x1c]
push edx
call fcn.00449ac9
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 0
push 0
push ebp
mov dword [esp + 0x38], 0
call fcn.0044a2cb
add esp, 0xc
push ebp
call fcn.00449818
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
cmp esi, 0x80000
jbe 0x426849
cmp esi, 0x800a4
je 0x426849
mov dword [esp + 0x14], 0x80000
mov esi, dword [esp + 0x14]
push esi
call fcn.00449731
mov edi, eax
add esp, 4
test edi, edi
je 0x426862
push 0
call fcn.00449ac9
add esp, 4
push esi
push edi
push ebp
mov dword [esp + 0x2c], edi
call fcn.0044899f
add esp, 0xc
cmp esi, 0x800a4
jne 0x42687f
add edi, 0xa4
mov dword [0x52bbcc], edi
mov edi, dword [esp + 0x1c]
push ebp
call fcn.00449302
mov ebx, dword [0x4b9de8]
add esp, 4
cmp dword [esp + 0x2c], 0
jne 0x4268ea
mov esi, dword [0x52bbcc]
push 0
push esi
call fcn.0040d720
mov edi, eax
add esp, 8
cmp edi, 0xffffffff
jne 0x4268ea
push esi
call fcn.004106a0
mov edi, eax
add esp, 4
cmp edi, 0xffffffff
jne 0x4268ea
call fcn.00407d40
mov edi, eax
cmp edi, 0xffffffff
jne 0x4268ea
mov eax, dword [esp + 0x20]
push eax
call fcn.00449ac9
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov ecx, dword [0x52bbc8]
push ecx
call fcn.00449773
mov ecx, dword [0x4dee90]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
add esp, 4
push 0
push 1
push ecx
mov dword [0x4dea64], edx
mov dword [0x52bbc8], eax
call dword [0x457370]
mov esi, dword [0x457360]
push eax
call esi
push eax
call esi
mov ebp, dword [0x45727c]
mov esi, eax
cmp edi, ebx
je 0x42693e
push 0
lea edx, [ebx + 0xe]
push edx
push esi
call ebp
push 8
lea eax, [edi + 0xe]
push eax
push esi
call ebp
mov ecx, dword [esp + 0x44]
push 1
push ecx
push ebx
mov dword [0x4b9de8], edi
call fcn.00414bb0
add esp, 0xc
cmp dword [0x4b9de8], 3
jge 0x42696d
call fcn.0040dab0
jmp 0x426972
call fcn.004109f0
mov edx, dword [0x4dec80]
push 1
push 0x87
push edx
call dword [0x457380]
push eax
call dword [0x45734c]
push 0
call fcn.00449ac9
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x30
ret