Function at 0x453030
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c5c9b
mov eax, dword fs:[0]
push eax
sub esp, 0x2c8
mov eax, dword [0x4f93d4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi]
mov ebx, dword [ebp + 8]
test eax, eax
je 0x453072
push eax
call fcn.00498a0c
add esp, 4
mov eax, dword [esi + 4]
test eax, eax
je 0x453082
push eax
call fcn.00498a0c
add esp, 4
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0042a910
push eax
lea ecx, [ebp - 0x94]
call fcn.00424210
mov dword [ebp - 4], 0
call fcn.0042a920
mov ecx, eax
call fcn.00424e40
test al, al
je 0x453182
push ebx
lea ecx, [ebp - 0x94]
call fcn.00424610
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocString
lea ecx, [ebp - 0x94]
call fcn.00424510
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4530fe
push 0x63
push str.Error_opening_file
jmp 0x453361
push 0
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test edi, edi
je 0x4532f9
cmp edi, 0x400000
ja 0x45330a
push edi
mov dword [ebp - 0x2cc], 0
call fcn.00491834
add esp, 4
mov dword [ebp - 0x2c8], eax
lea ecx, [ebp - 0x2cc]
push 0
push ecx
push edi
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x2cc], edi
je 0x453179
mov edi, dword [ebp - 0x2c8]
push edi
call fcn.004914f3
add esp, 4
mov ecx, esi
call fcn.00453570
push 0x63
push str.Could_not_read_file
jmp 0x453361
push dword [ebp + 0xc]
push edi
jmp 0x45339a
call fcn.0042abe0
test al, al
jne 0x453276
call fcn.0042a920
push eax
lea ecx, [ebp - 0x94]
call fcn.004245f0
call fcn.0042ab90
test al, al
je 0x4531b0
call fcn.0042a930
jmp 0x4531c8
push 2
push 0
lea ecx, [ebp - 0x94]
call fcn.00424510
push eax
call fcn.004419c0
add esp, 0xc
mov edi, eax
test edi, edi
je 0x4532b3
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x2cc]
push eax
push 1
push ebx
push edi
call fcn.004412d0
add esp, 0x14
test eax, eax
jne 0x4532e6
mov ebx, dword [ebp - 0x98]
test ebx, ebx
je 0x4532f9
cmp ebx, 0x400000
ja 0x45330a
push ebx
call fcn.00491834
push 3
push ebx
push eax
push dword [ebp - 0x2cc]
mov dword [ebp - 0x2c8], eax
push edi
call fcn.00441e50
add esp, 0x18
test eax, eax
je 0x45325e
cmp eax, 0x600
je 0x45325e
push dword [ebp - 0x2c8]
call fcn.004914f3
add esp, 4
call fcn.0042ab90
test al, al
jne 0x45335a
push edi
call fcn.004410b0
jmp 0x453357
call fcn.0042ab90
test al, al
jne 0x453396
push edi
call fcn.004410b0
jmp 0x453393
call fcn.0042a920
push eax
lea ecx, [ebp - 0x94]
call fcn.004245f0
call fcn.0042ab90
test al, al
je 0x453297
call fcn.0042a930
jmp 0x4532ad
push 0
lea ecx, [ebp - 0x94]
call fcn.00424510
push eax
call fcn.00445f70
add esp, 8
mov edi, eax
test edi, edi
jne 0x4532bf
push 0x63
push str.Error_opening_zip_file
jmp 0x453361
lea eax, [ebp - 0x2d4]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x2cc]
movlpd qword [ebp - 0x2d4], xmm0
push eax
push ebx
push edi
call fcn.00445770
add esp, 0x10
test eax, eax
je 0x4532ef
push 0x63
push str.Could_not_find_ziped_file
jmp 0x453361
mov ebx, dword [ebp - 0x2d4]
test ebx, ebx
jne 0x453302
push 0x63
push str.File_is_empty
jmp 0x453361
cmp ebx, 0x400000
jbe 0x453313
push 0x63
push str.File_too_large
jmp 0x453361
push ebx
call fcn.00491834
push eax
push dword [ebp - 0x2cc]
mov dword [ebp - 0x2c8], eax
push edi
call fcn.004460e0
add esp, 0x10
test eax, eax
je 0x453384
cmp eax, 0x600
je 0x453384
push dword [ebp - 0x2c8]
call fcn.004914f3
add esp, 4
call fcn.0042ab90
test al, al
jne 0x45335a
push edi
call fcn.00445680
add esp, 4
push 0x63
push str.Could_not_unzip_file
lea eax, [esi + 0x10]
push eax
call fcn.004a0923
push 0x31
lea eax, [esi + 0xd8]
push 0x4e77c0
push eax
call fcn.004a0923
add esp, 0x18
xor bl, bl
jmp 0x4533b3
call fcn.0042ab90
test al, al
jne 0x453396
push edi
call fcn.00445680
add esp, 4
push dword [ebp + 0xc]
push ebx
mov edi, dword [ebp - 0x2c8]
mov ecx, esi
push edi
call fcn.004533e0
push edi
mov bl, al
call fcn.004914f3
add esp, 4
lea ecx, [ebp - 0x94]
call fcn.00424360
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049120e
mov esp, ebp
pop ebp
ret 8