Function at 0x470f60
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x458
mov eax, dword [esp + 0x45c]
push ebp
push esi
push edi
test eax, eax
mov ebp, ecx
mov dword [esp + 0x10], 0
je 0x470fa5
push 0x186a0
call fcn.0057a50e
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
je 0x47131b
mov ecx, 0x4e20
xor eax, eax
mov edi, 0xcab9f4
rep stosd dword es:[edi], eax
mov edi, 0x69663c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0xd177ec
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, 0xd17c48
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
mov dword [0xd17c28], edi
mov dword [0xd17c8c], edi
mov dword [0xd177c0], edi
mov dword [0xd16a8c], edi
mov dword [0xd17c84], edi
mov dword [0xd17c98], edi
mov dword [eax - 4], 0xffffffff
mov dword [eax], 0xffffffff
add eax, 8
cmp eax, 0xd17c88
jl 0x470ff5
push 0x8000
mov ecx, 0x1765bd0
call fcn.0046e7b0
push eax
call fcn.005829fb
mov esi, eax
add esp, 8
cmp esi, 0xffffffff
jne 0x47104b
mov eax, dword [esp + 0x10]
cmp eax, edi
je 0x47103c
push eax
call fcn.0057a29c
add esp, 4
mov dword [ebp + 0x10], edi
pop edi
pop esi
pop ebp
add esp, 0x458
ret 4
lea edi, [ebp + 0x14]
push 4
push edi
push esi
call fcn.0057eb00
mov eax, dword [edi]
add esp, 0xc
test eax, eax
jge 0x4712c8
lea ecx, [esp + 0xc]
push 4
push ecx
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x4712c8
mov edi, dword [esp + 0x468]
test edi, edi
je 0x4710b6
mov ebp, dword [esp + 0x10]
push eax
push ebp
push esi
call fcn.0057eb00
add esp, 0xc
mov ecx, 0x1d9d5e0
push 0xcab9f4
push ebp
call fcn.00471590
mov ecx, 0xc5d7b0
call fcn.004adf80
jmp 0x4710c6
push 1
push eax
push esi
call fcn.0057f1fb
mov ebp, dword [esp + 0x1c]
add esp, 0xc
lea edx, [esp + 0xc]
push 4
push edx
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x4712cc
push 4
push 0xd177e4
push esi
call fcn.0057eb00
push 4
push 0xd177e8
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x30]
add eax, 0xfffffff8
push eax
push ecx
push esi
call fcn.0057eb00
add esp, 0x24
test edi, edi
je 0x47112a
lea edx, [esp + 0x18]
push 0xd177ec
push edx
mov ecx, 0x1d9d5e0
call fcn.00471590
lea eax, [esp + 0xc]
push 4
push eax
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x4712cc
push 4
push 0x1764c14
push esi
call fcn.0057eb00
push 4
push 0x1764c18
push esi
call fcn.0057eb00
lea ecx, [esp + 0x24]
push 4
push ecx
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x30]
add esp, 0x24
test eax, eax
je 0x4712cc
push 4
push 0xd17c28
push esi
call fcn.0057eb00
push 0x14
push 0xd17c2c
push esi
call fcn.0057eb00
push 4
push 0xd17c40
push esi
call fcn.0057eb00
lea edx, [esp + 0x30]
push 4
push edx
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x3c]
add esp, 0x30
test eax, eax
je 0x4712cc
push 4
push 0xd2b45c
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 4
mov edi, 0xc
jle 0x471237
push 4
push 0xd2b464
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 8
jle 0x471237
push 4
push 0xd17c8c
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, edi
jle 0x471237
push 0x51
push 0xd17bd4
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 0x5d
jle 0x471237
push 4
push 0xd17c98
push esi
call fcn.0057eb00
add esp, 0xc
lea eax, [esp + 0xc]
push 4
push eax
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x4712cc
push 4
push 0xd177c0
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 4
jle 0x4712b6
push 4
push 0xd16a8c
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 8
jle 0x4712b6
push 4
push 0x1764c68
push esi
call fcn.0057eb00
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, edi
jle 0x4712b6
push 4
push 0xd17c84
push esi
call fcn.0057eb00
push 0x40
push 0xd17c44
push esi
call fcn.0057eb00
add esp, 0x18
lea ecx, [esp + 0xc]
push 4
push ecx
push esi
call fcn.0057eb00
add esp, 0xc
jmp 0x4712cc
mov ebp, dword [esp + 0x10]
push esi
call fcn.0057e83c
add esp, 4
lea edx, [esp + 0x14]
mov ecx, 0x1765bd0
mov dword [0xd177e4], 0
push edx
call fcn.0046e7d0
push eax
call fcn.00471a50
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
je 0x47130e
mov dword [0xd177e4], 1
mov dword [0xd177e8], eax
test ebp, ebp
je 0x47131b
push ebp
call fcn.0057a29c
add esp, 4
pop edi
pop esi
pop ebp
add esp, 0x458
ret 4