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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x150
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], 0
mov eax, dword [ecx + 0x30]
lea esi, [eax + edx]
add esi, 0xffffffd2
cmp esi, eax
jb 0x4b4e3b
add eax, dword [ecx + 0x34]
cmp esi, eax
jbe 0x4b4e73
push str.Zip:_Invalid_entry_pointer
push str.ziparchive
push 5
call fcn.00612760
add esp, 0xc
mov ebx, 0xfffffff8
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4b4e69
mov dword [esp + 0x2c], eax
push eax
call fcn.0051c570
add esp, 4
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, dword [ebp + 0x14]
mov edi, dword [ecx + 0x28]
mov dword [esp + 0x10], ecx
mov edx, dword [ecx + 0x2c]
movzx eax, word [esi + 0xa]
mov word [ebx], ax
mov eax, dword [esi + 0xc]
mov dword [ebx + 4], eax
mov eax, dword [esi + 0x10]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], 0
mov eax, dword [esi + 0x18]
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], 0
mov ecx, dword [esi + 0x2a]
mov ebx, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
cmp eax, 0xffffffff
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], edx
je 0x4b4ed4
cmp ebx, 0xffffffff
je 0x4b4ed4
cmp ecx, 0xffffffff
je 0x4b4ed4
xor ebx, ebx
jmp 0x4b4fe0
mov edi, ecx
movzx ecx, word [esi + 0x1c]
add ecx, esi
add ecx, 0x2e
xorps xmm0, xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd0], 0
movzx edx, word [esi + 0x1e]
mov dword [esp + 8], edi
mov dword [esp + 0x58], edi
mov byte [esp + 0x5c], 1
sub esp, 0x14
movsd xmm0, qword [esp + 0x6c]
movsd qword [esp + 8], xmm0
lea edi, [esp + 0xb4]
mov dword [esp + 0x10], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004b6ec0
add esp, 0x14
test eax, eax
je 0x4b4f55
mov ebx, eax
jmp 0x4b4e54
lea eax, [esp + 0xa8]
lea ecx, [esi + 0x18]
xor ebx, ebx
cmp byte [esp + 0xb0], 0
cmovne ecx, eax
mov eax, dword [ecx]
mov ecx, dword [esp + 0xac]
cmove ecx, ebx
mov edx, dword [ebp + 0x14]
mov dword [edx + 0x3c], ecx
lea ecx, [esp + 0xb8]
mov dword [edx + 0x38], eax
lea eax, [esi + 0x14]
cmp byte [esp + 0xc0], 0
cmovne eax, ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0xbc]
cmove ecx, ebx
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
cmp byte [esp + 0xd0], 0
mov ecx, dword [esp + 8]
je 0x4b4fc4
mov ebx, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc8]
cmp dword [esi + 0x18], 0xffffffff
mov edi, dword [esp + 0x24]
je 0x4b4fd7
cmp dword [esi + 0x14], 0xffffffff
sete al
jmp 0x4b4fd9
mov al, 1
mov byte [edx + 0x10], al
mov edx, dword [esp + 0x18]
mov dword [esp + 8], ecx
mov eax, ecx
add eax, 0x1e
mov ecx, ebx
adc ecx, 0
seto byte [esp + 0x14]
jo 0x4b507e
cmp eax, edi
mov dword [esp + 0x20], eax
mov eax, ecx
sbb eax, edx
jge 0x4b507e
mov dword [esp + 0xc], ecx
xorps xmm0, xmm0
movups xmmword [esp + 0x12e], xmm0
movaps xmmword [esp + 0x120], xmm0
lea eax, [esp + 0x120]
mov ecx, dword [esp + 0x10]
push ebx
mov edi, dword [esp + 0xc]
push edi
push 0x1e
push eax
call fcn.004b65f0
test eax, eax
je 0x4b5088
cmp dword [eax], 0x4034b50
jne 0x4b50a8
lea ecx, [ebp + 8]
mov ebx, dword [ecx + 4]
cmp ebx, 0x10000
jae 0x4b55ed
mov dword [esp + 8], eax
cmp word [eax + 0x1a], bx
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
jne 0x4b50c6
cmp byte [esp + 0x14], 0
je 0x4b50e9
push str.Zip:_lfh_name_offset_invalid
jmp 0x4b4e40
push str.Zip:_bad_local_hdr_offset_in_zip
jmp 0x4b4e40
push ebx
push edi
push str.Zip:_failed_reading_lfh_name_from_offset__lld
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x14
mov ebx, 0xfffffff5
jmp 0x4b4e54
push ebx
push dword [esp + 0xc]
push str.Zip:_didnt_find_signature_at_start_of_lfh__offset_lld
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x14
jmp 0x4b4e4f
lea ecx, [esp + 0xa0]
lea eax, [ebp + 8]
push eax
call fcn.004457c0
test byte [esp + 0xa0], 1
je 0x4b515b
mov eax, dword [esp + 0xa8]
jmp 0x4b5162
add eax, ebx
adc ecx, 0
jo 0x4b51a4
cmp edi, eax
mov eax, edx
sbb eax, ecx
jl 0x4b51a4
xorps xmm0, xmm0
movaps xmmword [esp + 0x110], xmm0
movaps xmmword [esp + 0x100], xmm0
movaps xmmword [esp + 0xf0], xmm0
movaps xmmword [esp + 0xe0], xmm0
movaps xmmword [esp + 0xd0], xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
cmp ebx, 0x81
jb 0x4b51ae
lea ecx, [esp + 0x28]
push ebx
call fcn.004b75d0
mov eax, dword [esp + 0x28]
jmp 0x4b51b5
lea eax, [esp + 0xa1]
mov ecx, dword [esp + 8]
movzx ecx, word [ecx + 0x1a]
push ebx
push ecx
push eax
push str.Zip:_lfh_name_length_did_not_match_central_directory_for__s:__u__u
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x18
test byte [esp + 0xa0], 1
je 0x4b519a
push dword [esp + 0xa8]
call fcn.0051c570
add esp, 4
mov ebx, 0xfffffff7
jmp 0x4b4e54
push str.Zip:_lfh_name_length_invalid
jmp 0x4b4e40
lea eax, [esp + 0xa0]
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc]
push dword [esp + 0x24]
push ebx
push eax
call fcn.004b65f0
test eax, eax
je 0x4b51fd
push ebx
push eax
lea eax, [ebp + 8]
push dword [eax]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
add esp, 0xc
test eax, eax
je 0x4b520a
push str.Zip:_lfh_name_did_not_match_central_directory
push str.ziparchive
push 5
call fcn.00612760
add esp, 0xc
mov ebx, 0xfffffff7
jmp 0x4b4e54
push dword [esp + 0xc]
push dword [esp + 0x24]
jmp 0x4b508a
mov edx, dword [esp + 8]
mov eax, dword [edx + 0x12]
mov ebx, dword [edx + 0x16]
cmp ebx, 0xffffffff
je 0x4b52df
cmp eax, 0xffffffff
je 0x4b52df
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], 0
movzx eax, word [edx + 6]
movzx ecx, ax
movzx edi, word [esi + 8]
mov edx, edi
xor edx, ecx
test dl, 8
je 0x4b526c
push ecx
push edi
push str.Zip:_gpb_flag_mismatch_at_bit_3._expected__04x__was__04x
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x14
mov eax, dword [esp + 8]
movzx eax, word [eax + 6]
test al, 8
jne 0x4b5340
mov eax, dword [ebp + 0x14]
mov byte [eax + 0xa], 0
mov edi, dword [eax + 0x30]
mov edx, dword [eax + 0x34]
mov dword [esp + 0x44], edx
xor edx, dword [esp + 0x14]
mov dword [esp + 0x48], edi
xor edi, dword [esp + 0x10]
or edi, edx
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x38]
mov dword [esp + 0x38], edx
jne 0x4b548d
xor edx, ebx
mov eax, ecx
mov edi, ecx
mov ecx, dword [esp + 0x1c]
xor edi, ecx
or edi, edx
mov edi, dword [ebp + 0x14]
jne 0x4b5496
mov eax, dword [edi + 0xc]
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x40]
cmp eax, dword [edx + 0xe]
mov eax, dword [esp + 0x3c]
je 0x4b5347
jmp 0x4b5496
cmp ebx, 0xffffffff
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
jne 0x4b53b8
cmp eax, 0xffffffff
jne 0x4b53b8
movzx eax, word [edx + 0x1a]
add eax, ecx
mov ecx, ebx
mov ebx, dword [esp + 0xc]
adc ebx, 0
movzx edx, word [edx + 0x1c]
sub edi, edx
sbb ecx, 0
mov dword [esp + 0x14], eax
cmp edi, eax
sbb ecx, ebx
jge 0x4b5427
lea ecx, [esp + 0x60]
lea eax, [ebp + 8]
push eax
call fcn.004457c0
test byte [esp + 0x60], 1
je 0x4b54d5
mov eax, dword [esp + 0x68]
jmp 0x4b54d9
mov edi, dword [ebp + 0x14]
mov byte [edi + 0xa], 1
movzx ecx, word [esi + 4]
mov word [edi + 0x20], cx
mov eax, dword [esi + 0x26]
mov dword [edi + 0x24], eax
and ecx, 0xff00
mov ax, 0x1ff
cmp ecx, 0x300
jne 0x4b536b
movzx eax, word [esi + 0x28]
mov word [edi + 8], ax
mov edx, dword [esp + 8]
movzx eax, word [edx + 6]
mov word [edi + 0x28], ax
movzx eax, byte [esi + 0x24]
and al, 1
mov byte [edi + 0x2a], al
movzx eax, word [edx + 0x1a]
mov ecx, dword [esp + 0x20]
add ecx, eax
mov ebx, dword [esp + 0xc]
adc ebx, 0
movzx eax, word [edx + 0x1c]
add eax, ecx
adc ebx, 0
mov esi, dword [esp + 0x24]
cmp esi, eax
mov ecx, dword [esp + 0x18]
sbb ecx, ebx
jge 0x4b53d6
push ebx
push eax
push str.Zip:_bad_data_offset__lld_in_zip
jmp 0x4b50b2
push str.Zip:_The_zip64_extended_field_in_the_local_header_MUST_include_BOTH_original_and_compressed_file_size_fields.
push str.ziparchive
push 5
call fcn.00612760
add esp, 0xc
mov ebx, 0xfffffffd
jmp 0x4b4e54
mov edx, dword [edi + 0x30]
mov ecx, dword [edi + 0x34]
mov dword [esp + 8], ecx
sub esi, eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc], ebx
sbb ecx, ebx
mov dword [esp + 0x10], edx
cmp esi, edx
mov edx, dword [esp + 8]
mov ebx, ecx
sbb ebx, edx
jae 0x4b5454
push dword [esp + 0x18]
push dword [esp + 0x28]
push edx
push dword [esp + 0x1c]
push dword [esp + 0x1c]
push eax
push str.Zip:_bad_compressed_length_in_zip___lld___llu____lld_
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x24
jmp 0x4b4e4f
mov edi, ebx
cmp edx, 0x81
mov dword [esp + 0x1c], edx
jb 0x4b550a
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x28]
push edx
call fcn.004b75d0
mov eax, dword [esp + 0x28]
jmp 0x4b5511
cmp word [edi], 0
jne 0x4b547c
mov edx, dword [edi + 0x38]
mov ebx, dword [edi + 0x3c]
cmp esi, edx
sbb ecx, ebx
jae 0x4b547c
push dword [esp + 0x18]
push dword [esp + 0x28]
push ebx
push edx
push dword [esp + 0x1c]
push eax
push str.Zip:_bad_uncompressed_length_in_zip___lld___llu____lld_
jmp 0x4b5413
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0xc]
mov dword [edi + 0x1c], eax
xor ebx, ebx
jmp 0x4b4e54
mov eax, ecx
mov edi, dword [ebp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 8]
push dword [edx + 0xe]
push ecx
push ebx
push dword [esp + 0x20]
push dword [esp + 0x20]
push dword [edi + 0xc]
push eax
push dword [esp + 0x54]
push dword [esp + 0x64]
push dword [esp + 0x6c]
push str.Zip:_size_crc32_mismatch._expected__llu___llu___x__was__llu___llu___x
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x34
mov ebx, 0xfffffff7
jmp 0x4b4e54
lea eax, [esp + 0x61]
push eax
push str.Zip:_extra_field_has_a_bad_size_for_entry__s
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x10
test byte [esp + 0x60], 1
je 0x4b4e4f
push dword [esp + 0x68]
call fcn.0051c570
add esp, 4
jmp 0x4b4e4f
lea eax, [esp + 0xa0]
mov ecx, dword [esp + 0x10]
push edi
push dword [esp + 0x18]
mov ebx, dword [esp + 0x24]
push ebx
push eax
call fcn.004b65f0
test eax, eax
je 0x4b55de
xorps xmm0, xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x60], xmm0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov edx, dword [esp + 8]
mov ecx, dword [edx + 0x12]
mov edx, dword [edx + 0x16]
mov byte [esp + 0x50], 0
mov byte [esp + 0x54], 0
sub esp, 0x14
movsd xmm0, qword [esp + 0x64]
movsd qword [esp + 8], xmm0
lea edi, [esp + 0x74]
mov dword [esp + 0x10], edi
mov dword [esp + 4], ecx
mov dword [esp], edx
mov ecx, eax
mov edx, ebx
call fcn.004b6ec0
add esp, 0x14
test eax, eax
jne 0x4b4f4e
movzx ebx, byte [esp + 0x70]
test bl, bl
je 0x4b56c5
cmp byte [esp + 0x80], 0
je 0x4b571b
mov ebx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 8]
jmp 0x4b523a
push edi
push dword [esp + 0x18]
push str.Zip:_failed_reading_lfh_extra_field_from_offset__lld
jmp 0x4b508f
lea esi, [esp + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
push str.ziparchive
push 6
push 0x361
push str.system_libziparchive_zip_archive.cc
call fcn.004b9f90
mov ecx, esi
call fcn.004b9f60
push 0xe
push 0x87ac77
push eax
call fcn.00402f60
add esp, 0xc
push 0x10
push str.entryName.size__
push eax
call fcn.00402f60
add esp, 0xc
push 1
push 0x87ac9c
push eax
call fcn.00402f60
add esp, 0xc
push 2
push 0x87ade7
push eax
call fcn.00402f60
add esp, 0xc
push 1
push 0x87ac9c
push eax
call fcn.00402f60
add esp, 0xc
push 5
push str.65535
push eax
call fcn.00402f60
add esp, 0xc
push 0x13
push str.__entryName.size__
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, eax
push ebx
call fcn.004d9480
push 8
push str.__65535
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, eax
push 0xffff
call fcn.004d9220
push 2
push 0x87accd
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, esi
call fcn.004ba060
jmp 0x4b55f4
lea esi, [esp + 0x4c]
mov ecx, esi
push 0xffffffffffffffff
push str.ziparchive
push 6
push 0x3b0
push str.system_libziparchive_zip_archive.cc
call fcn.004b9f90
mov ecx, esi
call fcn.004b9f60
push 0x3b
push str.Check_failed:_zip64_info.uncompressed_file_size.has_value__
push eax
call fcn.00402f60
add esp, 0xc
push 1
push 0x87ac9c
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, esi
call fcn.004ba060
cmp byte [esp + 0x80], 0
jne 0x4b5769
lea esi, [esp + 0x4c]
mov ecx, esi
push 0xffffffffffffffff
push str.ziparchive
push 6
push 0x3b1
push str.system_libziparchive_zip_archive.cc
call fcn.004b9f90
mov ecx, esi
call fcn.004b9f60
push 0x39
push str.Check_failed:_zip64_info.compressed_file_size.has_value__
push eax
call fcn.00402f60
add esp, 0xc
push 1
push 0x87ac9c
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, esi
call fcn.004ba060
test bl, bl
call fcn.00420580
nop
push ebp
mov ebp, esp
push esi
and esp, 0xfffffff0
sub esp, 0x50
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
xorps xmm0, xmm0
movaps xmmword [esp + 0x30], xmm0
movaps xmmword [esp + 0x20], xmm0
movaps xmmword [esp + 0x10], xmm0
movaps xmmword [esp], xmm0
mov edx, esp
push ecx
push edx
push eax
call fcn.004b5810
add esp, 0xc
test eax, eax
jne 0x4b5802
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
test edx, edx
jne 0x4b57e5
test esi, esi
jne 0x4b57e5
mov edx, dword [ebp + 0xc]
movups xmm0, xmmword [esp + 0x1b]
movups xmmword [edx + 0x1b], xmm0
movaps xmm0, xmmword [esp]
movaps xmm1, xmmword [esp + 0x10]
movups xmmword [edx + 0x10], xmm1
movups xmmword [edx], xmm0
mov dword [edx + 0x30], ecx
mov dword [edx + 0x2c], eax
xor eax, eax
jmp 0x4b5802
push edx
push eax
push esi
push ecx
push str.Zip:_the_entry_size_is_too_large_to_fit_into_the_32_bits_ZipEntry__uncompressed_length__llu__compressed_length__llu
push str.ziparchive
push 5
call fcn.00612760
add esp, 0x1c
mov eax, 0xfffffff2
lea esp, [ebp - 4]
pop esi
pop ebp
ret