Function at 0x4b4530
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x20
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x34]
push 0
push edi
mov eax, dword [edi + 0x440]
mov esi, dword [eax]
mov dword [esp + 0x20], esi
call fcn.004b66b0
xor ebx, ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x24], ebx
mov ebp, eax
mov ebx, dword [esp + 0x44]
add esp, 8
mov dword [esp + 0x2c], ebp
mov cl, byte [ebx + 0x58]
mov al, cl
test al, al
je 0x4b459a
cmp al, 8
je 0x4b45b2
movzx eax, cl
push eax
call fcn.004b1130
push eax
push str.Unsupported_ZIP_compression_method___s_
push 0x2a
push edi
call fcn.004ba1c0
add esp, 0x14
mov eax, 0xffffffec
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov eax, dword [ebx + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x4b480e
mov eax, dword [ebx + 0x24]
cmp eax, dword [ebx + 0x1c]
jne 0x4b480e
mov ecx, dword [ebx + 0x24]
mov eax, dword [ebx + 0x20]
test ecx, ecx
jl 0x4b45ce
jg 0x4b45c5
cmp eax, 0x400000
jbe 0x4b45ce
push ecx
push eax
push str.Mac_metadata_is_too_large:__jd___4M_bytes
jmp 0x4b4582
mov ecx, dword [ebx + 0x1c]
mov eax, dword [ebx + 0x18]
test ecx, ecx
jl 0x4b45e1
jg 0x4b45c5
cmp eax, 0x400000
ja 0x4b45c5
push dword [ebx + 0x20]
call dword [sym.imp.MSVCRT.dll_malloc]
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4b4601
push str.Cant_allocate_memory_for_Mac_metadata
push 0xc
jmp 0x4b4815
mov ecx, dword [ebx + 0x14]
mov edx, dword [esp + 0x24]
mov eax, dword [ebx + 0x10]
cmp edx, ecx
jg 0x4b4626
jl 0x4b4615
cmp ebp, eax
jae 0x4b4628
sub eax, ebp
sbb ecx, edx
push ecx
push eax
push edi
call fcn.004b7c70
add esp, 0xc
jmp 0x4b463b
cmp ebp, eax
jne 0x4b462e
cmp edx, ecx
je 0x4b463b
push 0
push ecx
push eax
push edi
call fcn.004b8580
add esp, 0x10
push 0
push edi
call fcn.004b2e10
cdq
push edx
push eax
push edi
call fcn.004b7c70
mov ebp, dword [ebx + 0x18]
add esp, 0x14
mov eax, dword [esp + 0x20]
mov ebx, dword [ebx + 0x20]
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], 0
test ebp, ebp
je 0x4b477e
lea eax, [esp + 0x10]
push eax
push 1
push edi
call fcn.004b7c50
mov edx, eax
add esp, 0xc
mov dword [esp + 0x28], edx
test edx, edx
je 0x4b47f7
mov ecx, dword [esp + 0x10]
cmp ecx, ebp
jbe 0x4b4699
mov ecx, ebp
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x3c]
mov al, byte [eax + 0x58]
test al, al
je 0x4b4734
cmp al, 8
je 0x4b46b3
xor esi, esi
jmp 0x4b4761
push esi
push edi
call fcn.004b2da0
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4b4798
mov eax, dword [esp + 0x28]
lea edx, [esi + 0x74]
mov ecx, dword [esp + 0x10]
mov dword [edx], eax
mov eax, dword [esp + 0x34]
push 0
push edx
mov dword [esi + 0x78], ecx
mov dword [esi + 0x7c], 0
mov dword [esi + 0x80], eax
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], 0
call fcn.004a8ff0
add esp, 8
cmp eax, 0xfffffffc
je 0x4b47e0
test eax, eax
je 0x4b471f
cmp eax, 1
jne 0x4b47c8
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
mov esi, dword [esi + 0x7c]
mov eax, dword [eax + 0x88]
sub ebx, eax
add dword [esp + 0x34], eax
jmp 0x4b4761
cmp ecx, ebx
jbe 0x4b473e
mov ecx, ebx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x34]
push ecx
push edx
push eax
call sub.MSVCRT.dll_memcpy
mov esi, dword [esp + 0x1c]
add esp, 0xc
add dword [esp + 0x34], esi
sub ebx, esi
jne 0x4b4761
mov dword [esp + 0x14], 1
push 0
push esi
push edi
call fcn.004b7c70
sub ebp, esi
add esp, 0xc
cmp dword [esp + 0x14], 0
mov esi, dword [esp + 0x18]
je 0x4b4665
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + 0x20]
sub eax, ebx
push eax
push dword [esp + 0x24]
push dword [esp + 0x40]
call fcn.004b58a0
add esp, 0xc
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
push 0
push edx
push dword [esp + 0x34]
push edi
call fcn.004b8580
push dword [esp + 0x30]
mov byte [esi + 0x69], 0
call dword [sym.imp.MSVCRT.dll_free]
add esp, 0x14
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
push eax
push str.ZIP_decompression_failed___d_
push 0xffffffffffffffff
push edi
call fcn.004ba1c0
add esp, 0x10
mov ebx, 0xffffffe2
jmp 0x4b479c
push str.Out_of_memory_for_ZIP_decompression
push 0xc
push edi
call fcn.004ba1c0
add esp, 0xc
mov ebx, 0xffffffe2
jmp 0x4b479c
push str.Truncated_ZIP_file_header
push 0x2a
push edi
call fcn.004ba1c0
add esp, 0xc
mov ebx, 0xffffffec
jmp 0x4b479c
push str.Malformed_OS_X_metadata_entry:_inconsistent_size
push 0x2a
push edi
call fcn.004ba1c0
add esp, 0xc
mov eax, 0xffffffe2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret