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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x784
mov eax, dword [0x10119540]
xor eax, esp
mov dword [esp + 0x780], eax
mov eax, dword [ebp + 0xc]
xor ecx, ecx
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push eax
mov dword [esp + 0x58], esi
mov ebx, dword [esi + 0xa4]
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x18], ecx
call sym.archiveint.dll__archive_entry_pathname_4
test eax, eax
jne 0x10082e1e
push 0x1002306c
push 0xffffffffffffffff
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0xc
push 0xffffffffffffffe7
jmp 0x10083fc9
xor ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x44], eax
je 0x10082e30
mov edi, eax
mov dword [esp + 0x28], edi
jmp 0x10082e55
mov edi, dword [ebx + 0x40]
mov dword [esp + 0x28], edi
test edi, edi
jne 0x10082e55
push ecx
mov edx, 0x100150d0
mov ecx, esi
call fcn.10065b88
mov edi, eax
mov dword [esp + 0x28], edi
mov dword [ebx + 0x40], edi
test edi, edi
je 0x10082e17
mov edx, dword [esp + 0xc]
lea eax, [esp + 0x78]
push edi
push eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call fcn.10082b44
cmp eax, 0xffffffe2
je 0x10083fc7
test eax, eax
je 0x10082ec6
mov edx, dword [esp + 0xc]
xor eax, eax
push eax
lea eax, [esp + 0x7c]
mov ecx, esi
push eax
lea eax, [esp + 0x18]
push eax
call fcn.10082b44
cmp eax, 0xffffffe2
je 0x10083fc7
mov ecx, edi
call fcn.10065c94
mov edi, dword [esp + 0x10]
push eax
push edi
push 0x10021788
push 0x2a
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0x14
mov dword [esp + 0x1c], 0xffffffec
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x10082eca
mov edi, dword [esp + 0x10]
mov edx, 0x6000
test edi, edi
jne 0x100830f2
mov ecx, dword [esp + 0xc]
movzx eax, word [ecx + 0x2e4]
and eax, 0xf000
cmp eax, 0x1000
je 0x100830f2
cmp eax, 0x2000
je 0x100830f2
cmp eax, 0x4000
je 0x10082f35
cmp eax, edx
je 0x100830f2
cmp eax, 0x8000
je 0x100830f2
cmp eax, 0xa000
je 0x100830f2
mov edx, ecx
mov ecx, esi
push 0x10021550
call fcn.10072694
jmp 0x10082e17
push ecx
call sym.archiveint.dll__archive_entry_pathname_w_4
mov edx, eax
mov dword [esp + 0x38], edx
test edx, edx
je 0x10083011
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [esp + 0x20]
jne 0x10082f4e
sub ecx, edi
sar ecx, 1
push 0x2f
pop eax
cmp word [edx + ecx*2 - 2], ax
je 0x10083011
mov edi, edx
xor eax, eax
mov dword [esp + 0x40], eax
xor edx, edx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
lea ecx, [edi + 2]
mov ax, word [edi]
add edi, 2
cmp ax, dx
jne 0x10082f82
sub edi, ecx
lea ecx, [esp + 0x40]
sar edi, 1
mov dword [esp + 0x18], edi
lea edx, [edi*2 + 4]
call fcn.10064c43
test eax, eax
jne 0x10082fc7
push 0x10022f14
push 0xc
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0xc
lea ecx, [esp + 0x40]
call fcn.10064c22
jmp 0x10083fc7
mov edx, dword [esp + 0x38]
cmp word [edx + edi*2 - 2], 0x5c
jne 0x10082fd8
dec edi
mov dword [esp + 0x18], edi
xor eax, eax
lea ecx, [esp + 0x40]
push edi
mov dword [esp + 0x48], eax
call fcn.10064cec
push 0x2f
pop eax
mov edx, eax
lea ecx, [esp + 0x40]
call fcn.10064d57
push dword [esp + 0x40]
push dword [esp + 0x10]
call sym.archiveint.dll__archive_entry_copy_pathname_w_8
lea ecx, [esp + 0x40]
call fcn.10064c22
jmp 0x100830f2
push dword [esp + 0xc]
call sym.archiveint.dll__archive_entry_pathname_4
mov ecx, eax
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x100830f2
cmp byte [ecx], 0
je 0x100830f2
mov edx, ecx
lea edi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x10083036
sub edx, edi
cmp byte [edx + ecx - 1], 0x2f
je 0x100830f2
mov edi, ecx
xor eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x1008305d
sub edi, ecx
lea ecx, [esp + 0x40]
mov dword [esp + 0x18], edi
lea edx, [edi + 2]
call fcn.10064c43
test eax, eax
jne 0x10083098
push 0x10022f14
push 0xc
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0xc
lea ecx, [esp + 0x40]
call fcn.10064c22
jmp 0x10083fc7
mov edx, dword [esp + 0x20]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100830a5
sub ecx, dword [esp + 0x20]
cmp byte [ecx + edx - 1], 0x5c
jne 0x100830be
dec edi
mov dword [esp + 0x18], edi
jmp 0x100830ce
xor eax, eax
lea ecx, [esp + 0x40]
push edi
mov dword [esp + 0x48], eax
call fcn.10064cb5
push 0x2f
pop eax
mov dl, al
lea ecx, [esp + 0x40]
call fcn.10064d2d
push dword [esp + 0x40]
push dword [esp + 0x10]
call sym.archiveint.dll__archive_entry_copy_pathname_8
lea ecx, [esp + 0x40]
call fcn.10064c22
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x218]
mov dword [esp + 0x20], ecx
mov ecx, dword [eax + 0x214]
mov dword [esp + 0x70], ecx
test ecx, ecx
je 0x100832ea
push esi
call sym.archiveint.dll__archive_entry_new2_4
push dword [esp + 0xc]
mov dword [esp + 0x34], eax
call sym.archiveint.dll__archive_entry_pathname_4
mov ecx, eax
mov dword [esp + 0x38], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1008312e
sub ecx, edx
mov dword [esp + 0x60], ecx
lea eax, [ecx + 3]
push eax
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_malloc]
mov edi, eax
mov eax, dword [esp + 0x34]
pop ecx
test edi, edi
je 0x1008331c
test eax, eax
je 0x1008331c
mov ecx, dword [esp + 0x38]
mov edx, edi
sub edx, ecx
mov al, byte [ecx]
mov byte [edx + ecx], al
inc ecx
test al, al
jne 0x10083164
jmp 0x1008317e
cmp byte [eax + 1], 0
jne 0x10083266
xor ecx, ecx
mov byte [eax], cl
push 0x2f
pop eax
push eax
push edi
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_strrchr]
pop ecx
pop ecx
test eax, eax
jne 0x10083170
mov eax, dword [esp + 0x60]
inc eax
push eax
lea eax, [edi + 2]
push edi
push eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memmove
mov eax, 0x5f2e
mov word [edi], ax
add esp, 0xc
push edi
push dword [esp + 0x34]
call sym.archiveint.dll__archive_entry_copy_pathname_8
push edi
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_free]
mov edi, dword [esp + 0x34]
xor eax, eax
pop ecx
push eax
push dword [esp + 0x24]
push edi
call sym.archiveint.dll__archive_entry_set_size_12
mov eax, 0x8000
push eax
push edi
call sym.archiveint.dll__archive_entry_set_filetype_8
mov ecx, dword [esp + 0xc]
mov ax, word [ecx + 0x2e4]
mov ecx, 0xfff
and ax, cx
movzx eax, ax
push eax
push edi
call sym.archiveint.dll__archive_entry_set_perm_8
mov eax, dword [esp + 0xc]
push dword [eax + 0x38]
push dword [eax + 0x30]
push edi
call sym.archiveint.dll__archive_entry_set_mtime_12
mov edx, dword [esp + 0xc]
push edx
mov eax, dword [edx + 0x50]
mov ecx, dword [edx + 0x54]
and dword [edi + 8], 0
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], ecx
call sym.archiveint.dll__archive_entry_gname_4
push eax
push edi
call sym.archiveint.dll__archive_entry_copy_gname_8
mov edx, dword [esp + 0xc]
push edx
mov eax, dword [edx + 0x70]
mov ecx, dword [edx + 0x74]
and dword [edi + 8], 0
mov dword [edi + 0x70], eax
mov dword [edi + 0x74], ecx
call sym.archiveint.dll__archive_entry_uname_4
push eax
push edi
call sym.archiveint.dll__archive_entry_copy_uname_8
push edi
push esi
call fcn.10082db0
push dword [esp + 0x30]
mov edi, eax
call sym.archiveint.dll__archive_entry_free_4
cmp edi, 0xffffffec
jge 0x100832a0
mov eax, edi
jmp 0x10083fca
lea edx, [eax + 1]
mov ecx, edx
mov dword [esp + 0x60], edx
lea eax, [ecx + 1]
mov dword [esp + 0x38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10083276
sub ecx, dword [esp + 0x38]
lea eax, [ecx + 1]
push eax
push edx
lea eax, [edx + 2]
push eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memmove
mov eax, dword [esp + 0x6c]
mov ecx, 0x5f2e
mov word [eax], cx
jmp 0x100831a7
push dword [esp + 0x20]
mov eax, dword [esp + 0x20]
cmp edi, eax
push dword [esp + 0x74]
cmovl eax, edi
push esi
mov dword [esp + 0x28], eax
mov edi, eax
call fcn.100843a0
cmp eax, 0xffffffec
jl 0x10083fca
cmp eax, edi
push esi
cmovl edi, eax
mov dword [esp + 0x20], edi
call fcn.10084320
cmp eax, 0xffffffec
jl 0x10083fca
cmp eax, edi
jge 0x100832e6
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xc]
mov ecx, eax
call fcn.1006a795
mov edi, eax
mov eax, dword [esp + 0xc]
cmp edi, eax
jne 0x10083303
push eax
call sym.archiveint.dll__archive_entry_clone_4
mov edi, eax
test edi, edi
jne 0x1008332f
push 0x10022f14
push 0xc
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0xc
jmp 0x10083fc7
push eax
call sym.archiveint.dll__archive_entry_free_4
push edi
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_free]
pop ecx
jmp 0x10082e17
xor eax, eax
xorps xmm0, xmm0
mov ecx, ebx
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x2c], eax
movlpd qword [esp + 0x40], xmm0
call fcn.10084698
cmp dword [esp + 0x10], 0
jne 0x10083400
mov ax, word [edi + 0x2e4]
mov ecx, 0xf000
and ax, cx
mov ecx, 0x8000
cmp ax, cx
jne 0x10083400
push edi
call sym.archiveint.dll__archive_entry_sparse_reset_4
mov dword [esp + 0x34], eax
test eax, eax
je 0x10083406
lea eax, [esp + 0x60]
xorps xmm0, xmm0
push eax
lea eax, [esp + 0x74]
movlpd qword [esp + 0x24], xmm0
push eax
push edi
call sym.archiveint.dll__archive_entry_sparse_next_12
test eax, eax
jne 0x100833d4
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x60]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x74]
adc eax, dword [esp + 0x64]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x74]
push eax
push edi
call sym.archiveint.dll__archive_entry_sparse_next_12
test eax, eax
je 0x1008339e
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
jmp 0x100833dc
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp eax, dword [edi + 0x6c]
jg 0x100833f8
jl 0x100833e8
cmp ecx, dword [edi + 0x68]
jae 0x100833f8
xor eax, eax
push eax
push eax
push dword [edi + 0x6c]
push dword [edi + 0x68]
push edi
call sym.archiveint.dll__archive_entry_sparse_add_entry_20
push edi
call sym.archiveint.dll__archive_entry_sparse_reset_4
jmp 0x10083402
xor eax, eax
mov dword [esp + 0x34], eax
push dword [esp + 0x28]
lea eax, [esp + 0x1c]
mov edx, edi
push eax
lea eax, [esp + 0x34]
mov ecx, esi
push eax
call fcn.10082b93
cmp eax, 0xffffffe2
je 0x10083fc1
test eax, eax
je 0x10083478
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
lea eax, [esp + 0x34]
push eax
call fcn.10082b93
cmp eax, 0xffffffe2
je 0x10083fc1
mov ecx, dword [esp + 0x28]
call fcn.10065c94
mov ecx, dword [esp + 0x2c]
push eax
push ecx
push 0x10021698
push 0x2a
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0x14
mov dword [esp + 0x1c], 0xffffffec
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x1008347c
mov eax, dword [esp + 0x28]
push eax
lea eax, [esp + 0x24]
mov edx, edi
push eax
lea eax, [esp + 0x64]
mov ecx, esi
push eax
call fcn.10082be2
cmp eax, 0xffffffe2
je 0x10083fc1
test eax, eax
je 0x100834ea
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x24]
mov ecx, esi
push eax
lea eax, [esp + 0x64]
push eax
call fcn.10082be2
cmp eax, 0xffffffe2
je 0x10083fc1
mov ecx, dword [esp + 0x28]
call fcn.10065c94
push eax
push dword [esp + 0x60]
push 0x100219f4
push 0x2a
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0x14
mov dword [esp + 0x1c], 0xffffffec
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x100834ee
mov eax, dword [esp + 0x28]
push eax
lea eax, [esp + 0x3c]
mov edx, edi
push eax
lea eax, [esp + 0x60]
mov ecx, esi
push eax
call fcn.10082c37
cmp eax, 0xffffffe2
je 0x10083fc1
test eax, eax
je 0x1008355c
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10082c37
cmp eax, 0xffffffe2
je 0x10083fc1
mov ecx, dword [esp + 0x28]
call fcn.10065c94
push eax
push dword [esp + 0x5c]
push 0x10021a38
push 0x2a
push esi
call sym.archiveint.dll_archive_set_error
add esp, 0x14
mov dword [esp + 0x1c], 0xffffffec
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x10083560
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
mov ecx, edx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x60], ecx
test edx, edx
jne 0x10083607
push eax
lea eax, [esp + 0x64]
mov edx, edi
push eax
lea eax, [esp + 0x78]
mov ecx, esi
push eax
call fcn.10082c8c
cmp eax, 0xffffffe2
je 0x10083fc1
test eax, eax
je 0x100835f7
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x64]
mov ecx, esi
push eax
lea eax, [esp + 0x78]
push eax
call fcn.10082c8c
cmp eax, 0xffffffe2
je 0x10083fc1
mov ecx, dword [esp + 0x28]
call fcn.10065c94
push eax
mov eax, dword [esp + 0x74]
push eax
push 0x10021788
push 0x2a
push esi
mov dword [esp + 0x44], eax
call sym.archiveint.dll_archive_set_error
mov eax, dword [esp + 0x74]
add esp, 0x14
mov dword [esp + 0x1c], 0xffffffec
mov dword [esp + 0x6c], eax
jmp 0x10083612
mov eax, dword [esp + 0x70]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x6c], eax
cmp dword [esp + 0x28], 0
jne 0x100836c1
xor eax, eax
cmp dword [ebx + 0x44], eax
jne 0x100836ad
cmp dword [esp + 0x10], eax
je 0x10083652
push eax
lea eax, [esp + 0x7c]
mov edx, edi
push eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call fcn.10082b44
cmp eax, 0xffffffe2
je 0x10083fc1
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x6c], eax
xor eax, eax
push eax
lea eax, [esp + 0x1c]
mov edx, edi
push eax
lea eax, [esp + 0x34]
mov ecx, esi
push eax
call fcn.10082b93
cmp eax, 0xffffffe2
je 0x10083fc1
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x24]
mov ecx, esi
push eax
lea eax, [esp + 0x64]
push eax
call fcn.10082be2
cmp eax, 0xffffffe2
je 0x10083fc1
xor eax, eax
mov edx, edi
push eax
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
lea eax, [esp + 0x60]
push eax
call fcn.10082c37
cmp eax, 0xffffffe2
je 0x10083fc1
push 6
push 0x10017e40
lea ecx, [ebx + 0x1c]
mov edx, 0x10014fc8
call fcn.100828cb
mov ecx, dword [esp + 0x2c]
call fcn.1008449b
test eax, eax
je 0x100836d4
push dword [esp + 0x2c]
jmp 0x1008371d
mov eax, dword [esp + 0x18]
cmp eax, 0x64
jbe 0x1008374f
mov ecx, dword [esp + 0x2c]
add ecx, 0xffffff9b
add eax, ecx
push 0x2f
push eax
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_strchr]
pop ecx
pop ecx
mov ecx, dword [esp + 0x2c]
cmp eax, ecx
jne 0x10083709
inc eax
push 0x2f
push eax
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_strchr]
pop ecx
pop ecx
mov ecx, dword [esp + 0x2c]
test eax, eax
je 0x1008371c
cmp byte [eax + 1], 0
je 0x1008371c
sub eax, ecx
cmp eax, 0x9b
jle 0x1008374f
push ecx
mov edx, 0x10017e74
lea ecx, [ebx + 0x1c]
call fcn.1008289e
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x88]
xor eax, eax
push eax
push dword [esp + 0x1c]
call fcn.10083fe7
push eax
push edi
call sym.archiveint.dll__archive_entry_copy_pathname_8
xor ecx, ecx
inc ecx
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x30]
test eax, eax
je 0x100837a8
cmp dword [esp + 0x6c], 0x64
ja 0x1008376d
mov ecx, eax
call fcn.1008449b
test eax, eax
je 0x100837a8
mov eax, dword [esp + 0x30]
push eax
lea ecx, [ebx + 0x1c]
mov edx, 0x10017e60
call fcn.1008289e
cmp dword [esp + 0x6c], 0x64
jbe 0x100837a1
cmp dword [esp + 0x10], 0
je 0x10083796
push 0x1002309c
push edi
call sym.archiveint.dll__archive_entry_copy_hardlink_8
jmp 0x100837a1
push 0x100230b0
push edi
call sym.archiveint.dll__archive_entry_copy_symlink_8
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
xor eax, eax
push edi
mov dword [esp + 0x80], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], eax
call sym.archiveint.dll__archive_entry_pathname_4
test eax, eax
jne 0x100837cd
mov ecx, eax
jmp 0x100837e1
push edi
call sym.archiveint.dll__archive_entry_pathname_4
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100837d8
sub ecx, edx
push ecx
push ecx
push edi
call sym.archiveint.dll__archive_entry_pathname_4
pop ecx
mov edx, eax
lea ecx, [esp + 0x80]
call fcn.10064cb5
cmp dword [edi + 0x6c], 2
jl 0x1008380e
jg 0x10083807
xor eax, eax
cmp dword [edi + 0x68], eax
jb 0x1008380e
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
cmp dword [edi + 0x50], 0x40000
jb 0x10083831
push dword [edi + 0x54]
lea ecx, [ebx + 0x1c]
mov edx, 0x10016320
push dword [edi + 0x50]
call fcn.10082850
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x58]
test eax, eax
je 0x10083864
cmp dword [esp + 0x38], 0x1f
ja 0x1008384f
mov ecx, eax
call fcn.1008449b
test eax, eax
je 0x10083864
mov eax, dword [esp + 0x58]
push eax
lea ecx, [ebx + 0x1c]
mov edx, 0x10016324
call fcn.1008289e
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
cmp dword [edi + 0x70], 0x40000
jb 0x10083887
push dword [edi + 0x74]
lea ecx, [ebx + 0x1c]
mov edx, 0x10016414
push dword [edi + 0x70]
call fcn.10082850
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x100838ba
cmp dword [esp + 0x20], 0x1f
ja 0x100838a5
mov ecx, eax
call fcn.1008449b
test eax, eax
je 0x100838ba
mov eax, dword [esp + 0x5c]
push eax
lea ecx, [ebx + 0x1c]
mov edx, 0x10016418
call fcn.1008289e
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
mov eax, 0xf000
mov ecx, 0x6000
and ax, word [edi + 0x2e4]
cmp ax, cx
je 0x100838da
mov ecx, 0x2000
cmp ax, cx
jne 0x10083930
push edi
call sym.archiveint.dll__archive_entry_rdevmajor_4
push edi
mov dword [esp + 0x24], eax
call sym.archiveint.dll__archive_entry_rdevminor_4
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x38], eax
cmp ecx, 0x40000
jl 0x10083917
mov eax, ecx
lea ecx, [ebx + 0x1c]
cdq
push edx
push eax
mov edx, 0x10017d9c
call fcn.10082850
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x38]
cmp eax, 0x40000
jl 0x10083930
cdq
lea ecx, [ebx + 0x1c]
push edx
push eax
mov edx, 0x10017dac
call fcn.10082850
jmp 0x10083946
cmp dword [esp + 0x14], 0
jne 0x1008394d
cmp dword [edi + 0x30], 0
jl 0x10083946
cmp dword [edi + 0x30], 0x7fffffff
jl 0x1008394d
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
push edi
call sym.archiveint.dll__archive_entry_fflags_text_4
mov ecx, eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x1008398e
test ecx, ecx
je 0x10083965
cmp byte [ecx], al
jne 0x10083972
push dword [esp + 0xc]
call sym.archiveint.dll__archive_entry_xattr_count_4
test eax, eax
jle 0x1008397d
xor edx, edx
inc edx
mov eax, edx
mov dword [esp + 0x14], eax
jmp 0x10083991
cmp dword [esp + 0x34], 0
mov eax, dword [esp + 0x14]
push 1
pop edx
cmovg eax, edx
jmp 0x10083977
xor edx, edx
inc edx
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 0x2fc]
mov dword [esp + 0x20], ecx
test eax, eax
jne 0x100839af
test ecx, ecx
je 0x10083a43
mov dword [esp + 0x14], edx
xor ecx, ecx
cmp dword [esi + 0xc], 0x30003
je 0x10083a27
mov eax, dword [edi + 0x20]
test eax, eax
jne 0x100839c6
cmp dword [edi + 0x28], ecx
je 0x100839db
push dword [edi + 0x28]
cdq
lea ecx, [ebx + 0x1c]
push edx
push eax
mov edx, 0x10017e38
call fcn.10082744
xor ecx, ecx
mov eax, dword [edi + 0x10]
test eax, eax
jne 0x100839e7
cmp dword [edi + 0x18], ecx
je 0x100839fa
push dword [edi + 0x18]
cdq
lea ecx, [ebx + 0x1c]
push edx
push eax
mov edx, 0x10017e30
call fcn.10082744
test byte [edi + 0x98], 0x20
je 0x10083a1e
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x30]
jge 0x10083a1e
push dword [edi + 0x48]
cdq
lea ecx, [ebx + 0x1c]
push edx
push eax
mov edx, 0x10017d54
call fcn.10082744
cmp dword [esi + 0xc], 0x30003
jne 0x10083a57
cmp dword [esp + 0x14], 0
jne 0x10083a57
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x34], eax
mov dword [esp + 0x18], edx
jmp 0x10083ca2
xor ecx, ecx
cmp dword [edi + 0x320], ecx
cmovg eax, edx
mov dword [esp + 0x14], eax
jmp 0x100839b1
mov eax, dword [edi + 0x30]
test eax, eax
js 0x10083a6c
cmp eax, 0x7fffffff
jge 0x10083a6c
xor ecx, ecx
cmp dword [edi + 0x38], ecx
je 0x10083a7f
push dword [edi + 0x38]
cdq
lea ecx, [ebx + 0x1c]
push edx
push eax
mov edx, 0x10017e6c
call fcn.10082744
push edi
call sym.archiveint.dll__archive_entry_fflags_text_4
test eax, eax
je 0x10083a9c
cmp byte [eax], 0
je 0x10083a9c
push eax
lea ecx, [ebx + 0x1c]
mov edx, 0x10017dbc
call fcn.1008289e
mov eax, dword [esp + 0x20]
test eax, 0x3c00
je 0x10083ac8
mov edx, dword [esp + 0xc]
mov ecx, esi
push 0x19
push ebx
call fcn.10082cdb
mov ecx, eax
mov dword [esp + 0x1c], ecx
cmp ecx, 0xffffffe2
je 0x10083fab
mov eax, dword [esp + 0x20]
test eax, 0x100
je 0x10083af3
mov edx, dword [esp + 0xc]
mov ecx, esi
push 0x109
push ebx
call fcn.10082cdb
mov ecx, eax
mov dword [esp + 0x1c], ecx
cmp ecx, 0xffffffe2
je 0x10083fab
mov eax, dword [esp + 0x20]
test eax, 0x200
je 0x10083b18
mov edx, dword [esp + 0xc]
mov ecx, esi
push 0x209
push ebx
call fcn.10082cdb
mov dword [esp + 0x1c], eax
cmp eax, 0xffffffe2
je 0x10083fab
cmp dword [esp + 0x34], 0
jle 0x10083c49
xor eax, eax
lea esi, [ebx + 0x1c]
push eax
inc eax
mov edx, 0x10017d08
push eax
mov ecx, esi
call fcn.10082850
xor eax, eax
mov edx, 0x10017d1c
push eax
push eax
mov ecx, esi
call fcn.10082850
push dword [esp + 0x2c]
mov edx, 0x10017d30
mov ecx, esi
call fcn.1008289e
push dword [edi + 0x6c]
mov edx, 0x10017d40
mov ecx, esi
push dword [edi + 0x68]
call fcn.10082850
mov edx, dword [esp + 0x7c]
lea ecx, [esp + 0x188]
call fcn.1008425b
push eax
push edi
call sym.archiveint.dll__archive_entry_copy_pathname_8
push dword [esp + 0x34]
lea eax, [ebx + 0x28]
push 0x100230c4
push eax
call fcn.10068f9c
add esp, 0xc
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x3c]
push eax
push edi
call sym.archiveint.dll__archive_entry_sparse_next_12
test eax, eax
jne 0x10083c45
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x34], eax
push dword [esp + 0x24]
lea eax, [ebx + 0x28]
push dword [esp + 0x24]
push dword [esp + 0x44]
push dword [esp + 0x44]
push 0x100230c8
push eax
call fcn.10068f9c
mov eax, dword [esp + 0x4c]
add esp, 0x18
add esi, dword [esp + 0x20]
mov ecx, ebx
mov dword [esp + 0x18], esi
adc eax, dword [esp + 0x24]
push dword [esp + 0x24]
mov dword [esp + 0x38], eax
push dword [esp + 0x24]
push dword [esp + 0x44]
push dword [esp + 0x44]
call fcn.10084722
test eax, eax
jne 0x10083c23
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x3c]
push eax
push edi
call sym.archiveint.dll__archive_entry_sparse_next_12
test eax, eax
je 0x10083bb9
mov esi, dword [esp + 0x54]
jmp 0x10083c59
push 0x100130fc
push 0xc
push dword [esp + 0x5c]
call sym.archiveint.dll_archive_set_error
add esp, 0xc
push edi
call sym.archiveint.dll__archive_entry_free_4
lea ecx, [esp + 0x7c]
jmp 0x1008308e
mov esi, dword [esp + 0x54]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], eax
push dword [esp + 0xc]
mov edx, ebx
mov ecx, esi
call fcn.10082a5e
cmp eax, 0xffffffe2
je 0x10083fab
mov eax, dword [edi + 0x320]
xor ecx, ecx
inc ecx
cmp eax, ecx
jne 0x10083c85
push 4
push 0x10016618
jmp 0x10083c91
cmp eax, 2
jne 0x10083c9e
push 3
push 0x1001660c
mov edx, 0x10017d6c
lea ecx, [ebx + 0x1c]
call fcn.100828cb
mov edx, dword [esp + 0x18]
mov ax, word [edi + 0x2e4]
mov ecx, 0xf000
and ax, cx
mov ecx, 0x8000
cmp ax, cx
je 0x10083ccf
xor ecx, ecx
or dword [edi + 0x98], 0x40
mov dword [edi + 8], ecx
mov dword [edi + 0x68], ecx
mov dword [edi + 0x6c], ecx
jmp 0x10083cd1
xor ecx, ecx
cmp dword [esi + 0xc], 0x30002
mov eax, dword [esp + 0x10]
je 0x10083cf2
test eax, eax
je 0x10083d06
or dword [edi + 0x98], 0x40
mov dword [edi + 8], ecx
mov dword [edi + 0x68], ecx
mov dword [edi + 0x6c], ecx
test eax, eax
je 0x10083d06
or dword [edi + 0x98], 0x40
mov dword [edi + 8], ecx
mov dword [edi + 0x68], ecx
mov dword [edi + 0x6c], ecx
mov eax, dword [edi + 0x68]
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x6c]
mov dword [esp + 0x54], eax
test ecx, ecx
je 0x10083d39
mov eax, ecx
neg eax
and eax, 0x1ff
add ecx, eax
mov dword [ebx + 0x34], eax
xor eax, eax
add ecx, edx
adc eax, dword [esp + 0x34]
push eax
push ecx
push edi
call sym.archiveint.dll__archive_entry_set_size_12
cmp dword [edi + 0x6c], 2
jl 0x10083d5b
jg 0x10083d48
xor eax, eax
cmp dword [edi + 0x68], eax
jb 0x10083d5d
push dword [edi + 0x6c]
lea ecx, [ebx + 0x1c]
mov edx, 0x100163f4
push dword [edi + 0x68]
call fcn.10082850
xor eax, eax
push eax
push eax
push 0xffffffffffffffff
push edi
lea edx, [esp + 0x598]
mov ecx, esi
call fcn.100859d2
cmp eax, 0xffffffe2
je 0x10083fab
xor eax, eax
cmp dword [ebx + 0x20], eax
jbe 0x10083f31
push esi
call sym.archiveint.dll__archive_entry_new2_4
mov edx, dword [esp + 0x7c]
lea ecx, [esp + 0x288]
mov dword [esp + 0x10], eax
call fcn.1008419f
push eax
push dword [esp + 0x14]
call sym.archiveint.dll__archive_entry_copy_pathname_8
xor eax, eax
push eax
push dword [ebx + 0x20]
push dword [esp + 0x18]
call sym.archiveint.dll__archive_entry_set_size_12
mov edx, dword [edi + 0x74]
xor ecx, ecx
mov eax, dword [edi + 0x70]
cmp edx, ecx
jl 0x10083dd3
jg 0x10083dcc
cmp eax, 0x40000
jb 0x10083dd3
mov eax, 0x3ffff
mov edx, ecx
mov ecx, dword [esp + 0x10]
and dword [ecx + 8], 0
mov dword [ecx + 0x70], eax
mov dword [ecx + 0x74], edx
mov edx, dword [edi + 0x54]
mov eax, dword [edi + 0x50]
test edx, edx
jl 0x10083dfb
jg 0x10083df4
cmp eax, 0x40000
jb 0x10083dfb
mov eax, 0x3ffff
xor edx, edx
mov dword [ecx + 0x50], eax
mov dword [ecx + 0x54], edx
mov edx, 0xf1ff
mov ax, word [edi + 0x2e4]
and ax, dx
push edi
mov word [ecx + 0x2e4], ax
call sym.archiveint.dll__archive_entry_uname_4
push eax
push dword [esp + 0x14]
call sym.archiveint.dll__archive_entry_copy_uname_8
push edi
call sym.archiveint.dll__archive_entry_gname_4
push eax
push dword [esp + 0x14]
call sym.archiveint.dll__archive_entry_copy_gname_8
xor eax, eax
cmp dword [edi + 0x30], eax
cmovge eax, dword [edi + 0x30]
xor ecx, ecx
push ecx
push eax
push dword [esp + 0x18]
call sym.archiveint.dll__archive_entry_set_mtime_12
xor eax, eax
push eax
push eax
push dword [esp + 0x18]
call sym.archiveint.dll__archive_entry_set_atime_12
xor eax, eax
push eax
push eax
push dword [esp + 0x18]
call sym.archiveint.dll__archive_entry_set_ctime_12
xor eax, eax
lea edx, [esp + 0x388]
push eax
inc eax
mov ecx, esi
push eax
push 0x78
push dword [esp + 0x1c]
call fcn.100859d2
push dword [esp + 0x10]
mov dword [esp + 0x24], eax
call sym.archiveint.dll__archive_entry_free_4
mov eax, dword [esp + 0x20]
cmp eax, 0xffffffec
jge 0x10083ea3
push 0x100230d8
push 0xffffffffffffffff
push esi
jmp 0x10083c2e
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x388]
cmp eax, ecx
push 0x200
cmovl ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esi + 0x9c]
call fcn.1006aa6d
test eax, eax
je 0x10083ee4
mov ecx, ebx
call fcn.10084698
xor eax, eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
jmp 0x10083c36
mov ecx, dword [ebx + 0x20]
xor edx, edx
mov eax, ecx
mov dword [ebx + 4], edx
neg eax
mov dword [ebx + 0xc], edx
mov edx, dword [ebx + 0x1c]
and eax, 0x1ff
mov dword [ebx], ecx
mov dword [ebx + 8], eax
push ecx
mov ecx, dword [esi + 0x9c]
call fcn.1006aa6d
test eax, eax
jne 0x10083fab
mov edx, dword [ebx + 8]
mov ecx, esi
call fcn.1006abbb
test eax, eax
jne 0x10083fab
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov ecx, dword [esi + 0x9c]
lea edx, [esp + 0x588]
push 0x200
call fcn.1006aa6d
mov esi, eax
test esi, esi
jne 0x10083fae
mov ecx, dword [esp + 0x54]
mov esi, dword [esp + 0x38]
push ecx
push esi
push dword [esp + 0x14]
call sym.archiveint.dll__archive_entry_set_size_12
xor ecx, ecx
cmp dword [ebx + 0x38], ecx
jne 0x10083f85
mov eax, dword [esp + 0x54]
cmp eax, ecx
ja 0x10083f74
cmp esi, ecx
jbe 0x10083f85
push eax
push esi
push ecx
push ecx
mov ecx, ebx
call fcn.10084722
mov eax, esi
xor ecx, ecx
jmp 0x10083f89
mov eax, dword [esp + 0x18]
neg eax
mov dword [ebx + 0xc], ecx
and eax, 0x1ff
push edi
mov dword [ebx + 8], eax
call sym.archiveint.dll__archive_entry_free_4
lea ecx, [esp + 0x7c]
call fcn.10064c22
mov eax, dword [esp + 0x1c]
jmp 0x10083fca
push 0xffffffffffffffe2
pop esi
push edi
call sym.archiveint.dll__archive_entry_free_4
lea ecx, [esp + 0x7c]
call fcn.10064c22
mov eax, esi
jmp 0x10083fca
push edi
call sym.archiveint.dll__archive_entry_free_4
push 0xffffffffffffffe2
pop eax
mov ecx, dword [esp + 0x78c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100913c0
mov esp, ebp
pop ebp
ret 8