Function at 0x47e360
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [0x57c870]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], 0
cmp dword [0x72cbb0], 0x2000
jg 0x47e44c
push 0
push 0
mov eax, dword [0x72cbac]
push eax
call fcn.0053b3c3
add esp, 0xc
mov ecx, dword [0x72cbb0]
push ecx
mov edx, dword [0x72cb88]
push edx
mov eax, dword [0x72cbac]
push eax
call fcn.0053b251
add esp, 0xc
mov dword [0x72cb90], eax
mov ecx, dword [0x72cb90]
cmp ecx, dword [0x72cbb0]
jne 0x47e447
mov edx, dword [0x72cbb0]
mov eax, dword [0x72cb88]
lea ecx, [eax + edx - 0x16]
mov dword [0x72cb8c], ecx
jmp 0x47e3ee
mov edx, dword [0x72cb8c]
sub edx, 1
mov dword [0x72cb8c], edx
mov eax, dword [0x72cb8c]
cmp eax, dword [0x72cb88]
jb 0x47e447
mov ecx, dword [0x72cb8c]
movzx edx, byte [ecx]
cmp edx, 0x50
jne 0x47e445
push 4
push 0x569ca0
mov eax, dword [0x72cb8c]
push eax
call fcn.00532db5
add esp, 0xc
test eax, eax
jne 0x47e445
mov ecx, dword [0x72cb8c]
sub ecx, dword [0x72cb88]
mov edx, dword [0x72cb90]
sub edx, ecx
mov dword [0x72cb90], edx
mov dword [ebp - 4], 1
jmp 0x47e447
jmp 0x47e3df
jmp 0x47e68f
mov eax, dword [0x72cbb0]
and eax, 0x80001fff
jns 0x47e45f
dec eax
or eax, 0xffffe000
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x12
jle 0x47e54f
push 0
mov ecx, dword [0x72cbb0]
sub ecx, dword [ebp - 0x2c]
push ecx
mov edx, dword [0x72cbac]
push edx
call fcn.0053b3c3
add esp, 0xc
mov dword [0x72cbb4], eax
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [0x72cb88]
push ecx
mov edx, dword [0x72cbac]
push edx
call fcn.0053b251
add esp, 0xc
mov dword [0x72cb90], eax
mov eax, dword [0x72cb90]
cmp eax, dword [ebp - 0x2c]
je 0x47e4ba
jmp 0x47e68f
mov ecx, dword [ebp - 0x2c]
mov edx, dword [0x72cb88]
lea eax, [edx + ecx - 0x16]
mov dword [0x72cb8c], eax
jmp 0x47e4dd
mov ecx, dword [0x72cb8c]
sub ecx, 1
mov dword [0x72cb8c], ecx
mov edx, dword [0x72cb8c]
cmp edx, dword [0x72cb88]
jb 0x47e536
mov eax, dword [0x72cb8c]
movzx ecx, byte [eax]
cmp ecx, 0x50
jne 0x47e534
push 4
push 0x569ca0
mov edx, dword [0x72cb8c]
push edx
call fcn.00532db5
add esp, 0xc
test eax, eax
jne 0x47e534
mov eax, dword [0x72cb8c]
sub eax, dword [0x72cb88]
mov ecx, dword [0x72cb90]
sub ecx, eax
mov dword [0x72cb90], ecx
mov dword [ebp - 4], 1
jmp 0x47e536
jmp 0x47e4ce
push 3
mov edx, dword [0x72cb88]
push edx
mov eax, dword [0x72cbc0]
push eax
call fcn.00533040
add esp, 0xc
jmp 0x47e55e
mov ecx, dword [0x72cbb0]
sub ecx, dword [ebp - 0x2c]
mov dword [0x72cbb4], ecx
mov eax, dword [ebp + 8]
sub eax, dword [ebp - 0x2c]
add eax, 0x1fff
cdq
and edx, 0x1fff
add eax, edx
sar eax, 0xd
mov dword [ebp - 0x28], eax
mov dword [ebp - 8], 1
jmp 0x47e58a
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
cmp dword [ebp - 4], 0
jne 0x47e68f
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x28]
jg 0x47e68f
mov ecx, dword [0x72cbb4]
sub ecx, 0x2000
mov dword [0x72cbb4], ecx
push 0
mov edx, dword [0x72cbb4]
push edx
mov eax, dword [0x72cbac]
push eax
call fcn.0053b3c3
add esp, 0xc
push 0x2000
mov ecx, dword [0x72cb88]
push ecx
mov edx, dword [0x72cbac]
push edx
call fcn.0053b251
add esp, 0xc
mov dword [0x72cb90], eax
cmp dword [0x72cb90], 0x2000
je 0x47e5fa
jmp 0x47e68f
mov eax, dword [0x72cb88]
add eax, 0x1fff
mov dword [0x72cb8c], eax
jmp 0x47e61a
mov ecx, dword [0x72cb8c]
sub ecx, 1
mov dword [0x72cb8c], ecx
mov edx, dword [0x72cb8c]
cmp edx, dword [0x72cb88]
jb 0x47e673
mov eax, dword [0x72cb8c]
movzx ecx, byte [eax]
cmp ecx, 0x50
jne 0x47e671
push 4
push 0x569ca0
mov edx, dword [0x72cb8c]
push edx
call fcn.00532db5
add esp, 0xc
test eax, eax
jne 0x47e671
mov eax, dword [0x72cb8c]
sub eax, dword [0x72cb88]
mov ecx, dword [0x72cb90]
sub ecx, eax
mov dword [0x72cb90], ecx
mov dword [ebp - 4], 1
jmp 0x47e673
jmp 0x47e60b
push 3
mov edx, dword [0x72cb88]
push edx
mov eax, dword [0x72cbc0]
push eax
call fcn.00533040
add esp, 0xc
jmp 0x47e581
cmp dword [ebp - 4], 0
jne 0x47e70e
cmp dword [0x7202f4], 0
jne 0x47e6a7
cmp dword [0x7202c8], 0
je 0x47e6d9
push 0x401
mov ecx, dword [0x72cba8]
push ecx
push str.__s__n
push 0x720b80
call fcn.00532706
add esp, 0xc
push eax
push 0x720b80
push 0x7202c0
call dword [0x72cdc8]
add esp, 0x10
push 0x401
push str.__End_of_central_directory_signature_not_found._n
push 0x720b80
call fcn.00532706
add esp, 8
push eax
push 0x720b80
push 0x7202c0
call dword [0x72cdc8]
add esp, 0x10
mov eax, 2
jmp 0x47e7d2
mov edx, dword [0x72cb8c]
sub edx, dword [0x72cb88]
add edx, dword [0x72cbb4]
mov dword [0x720350], edx
push 0x16
lea eax, [ebp - 0x24]
push eax
call fcn.0047a440
add esp, 8
test eax, eax
jne 0x47e742
mov eax, 0x33
jmp 0x47e7d2
lea ecx, [ebp - 0x20]
push ecx
call fcn.0047b510
add esp, 4
mov word [0x72cc0c], ax
lea edx, [ebp - 0x1e]
push edx
call fcn.0047b510
add esp, 4
mov word [0x72cc0e], ax
lea eax, [ebp - 0x1c]
push eax
call fcn.0047b510
add esp, 4
mov word [0x72cc10], ax
lea ecx, [ebp - 0x1a]
push ecx
call fcn.0047b510
add esp, 4
mov word [0x72cc12], ax
lea edx, [ebp - 0x18]
push edx
call fcn.0047b530
add esp, 4
mov dword [0x72cc14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0047b530
add esp, 4
mov dword [0x72cc18], eax
lea ecx, [ebp - 0x10]
push ecx
call fcn.0047b510
add esp, 4
mov word [0x72cc1c], ax
mov edx, dword [0x72cc18]
add edx, dword [0x72cc14]
mov dword [0x720354], edx
xor eax, eax
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00532783
mov esp, ebp
pop ebp
ret