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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x74]
xor ebx, ebx
mov ebp, dword [edi + 0xa4]
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x74], eax
test eax, eax
jne 0x4c995d
cmp dword [ebp + 0x24], ebx
jne 0x4c9956
push edi
call fcn.004ba730
add esp, 4
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x24], 1
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x74], eax
mov esi, dword [esp + 0x78]
push esi
call fcn.004bed60
add esp, 4
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4c998f
push str.Cant_allocate_ustar_data
push 0xc
push edi
call fcn.004b91c0
add esp, 0xc
mov eax, 0xffffffe2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
cmp esi, eax
je 0x4c9997
mov esi, eax
jmp 0x4c999b
mov dword [esp + 0x1c], ebx
push dword [esp + 0x74]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x28]
push eax
push esi
call fcn.004b3eb0
add esp, 0x10
test eax, eax
je 0x4c9a02
call dword [sym.imp.MSVCRT.dll__errno]
cmp dword [eax], 0xc
jne 0x4c99d6
push str.Cant_allocate_memory_for_Pathname
push 0xc
push edi
call fcn.004b91c0
add esp, 0xc
jmp 0x4c9d1d
push dword [esp + 0x74]
call fcn.004ba500
add esp, 4
push eax
push esi
call fcn.004b4db0
add esp, 4
push eax
push str.Cant_translate_pathname__s_to__s
push 0x2a
push edi
call fcn.004b91c0
add esp, 0x14
mov ebx, 0xffffffec
mov eax, dword [esp + 0x10]
inc eax
push 0x4c
mov dword [esp + 0x18], eax
lea eax, [esp + 0x28]
push 0
push eax
call sub.MSVCRT.dll_memset
push 5
lea eax, [esp + 0x35]
push eax
push 0
push 0x71c7
call fcn.004c97a0
and al, 7
add al, 0x30
push esi
mov byte [esp + 0x44], al
call fcn.004b49a0
add esp, 0x20
xor edx, edx
jl 0x4c9a5f
jg 0x4c9a47
test eax, eax
jb 0x4c9a5f
test edx, edx
jg 0x4c9a5f
jl 0x4c9a54
cmp eax, 0x3ffff
ja 0x4c9a5f
push 5
lea ecx, [esp + 0x2f]
push ecx
push edx
push eax
jmp 0x4c9a6d
push 5
lea eax, [esp + 0x2f]
push eax
push 0
push 0x3ffff
call fcn.004c97a0
add esp, 0x10
and al, 7
add al, 0x30
mov byte [esp + 0x2a], al
push esi
push ebp
call fcn.004c9810
cdq
add esp, 8
test edx, edx
jg 0x4c9ab4
jl 0x4c9a92
test eax, eax
jae 0x4c9aa7
push str.No_memory_for_ino_translation_table
push 0xc
push edi
call fcn.004b91c0
add esp, 0xc
jmp 0x4c9d1d
test edx, edx
jl 0x4c9ac9
jg 0x4c9ab4
cmp eax, 0x3ffff
jbe 0x4c9ac9
push str.Too_many_files_for_this_cpio_format
push 0x22
push edi
call fcn.004b91c0
add esp, 0xc
jmp 0x4c9d1d
push 6
lea ecx, [esp + 0x34]
and eax, 0x3ffff
push ecx
push 0
push eax
call fcn.004c9710
add esp, 0x10
lea eax, [esp + 0x36]
push 6
push eax
push esi
call fcn.004b4d00
add esp, 4
movzx eax, ax
cdq
push edx
push eax
call fcn.004c9710
add esp, 0x10
lea eax, [esp + 0x3c]
push 6
push eax
push esi
call fcn.004b54c0
add esp, 4
push edx
push eax
call fcn.004c9710
add esp, 0x10
lea eax, [esp + 0x42]
push 6
push eax
push esi
call fcn.004b4bb0
add esp, 4
push edx
push eax
call fcn.004c9710
add esp, 0x10
lea eax, [esp + 0x48]
push 6
push eax
push esi
call fcn.004b4da0
add esp, 4
push 0
push eax
call fcn.004c9710
push esi
call fcn.004b4b70
mov ecx, 0x6000
add esp, 0x14
cmp ax, cx
je 0x4c9b8d
push esi
call fcn.004b4b70
mov ecx, 0x2000
add esp, 4
cmp ax, cx
je 0x4c9b8d
push 5
lea eax, [esp + 0x53]
push eax
push 0
push 0
call fcn.004c97a0
and al, 7
add esp, 0x10
add al, 0x30
mov byte [esp + 0x4e], al
jmp 0x4c9ba8
push 6
lea eax, [esp + 0x52]
push eax
push esi
call fcn.004b4ee0
add esp, 4
push 0
push eax
call fcn.004c9710
add esp, 0x10
push 0xb
lea eax, [esp + 0x58]
push eax
push esi
call fcn.004b4d10
add esp, 4
cdq
push edx
push eax
call fcn.004c9710
push 6
lea eax, [esp + 0x73]
push eax
mov eax, dword [esp + 0x2c]
cdq
push edx
push eax
call fcn.004c9710
push esi
call fcn.004b4b70
mov ecx, 0x8000
add esp, 0x24
cmp ax, cx
je 0x4c9bf3
push 0
push 0
push esi
call fcn.004b5350
add esp, 0xc
push dword [esp + 0x74]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x20]
push eax
push esi
call fcn.004b3ee0
add esp, 0x10
test eax, eax
je 0x4c9c5a
call dword [sym.imp.MSVCRT.dll__errno]
cmp dword [eax], 0xc
jne 0x4c9c2e
push str.Cant_allocate_memory_for_Linkname
push 0xc
push edi
call fcn.004b91c0
add esp, 0xc
jmp 0x4c9d1d
push dword [esp + 0x74]
call fcn.004ba500
add esp, 4
push eax
push esi
call fcn.004b5410
add esp, 4
push eax
push str.Cant_translate_linkname__s_to__s
push 0x2a
push edi
call fcn.004b91c0
add esp, 0x14
mov ebx, 0xffffffec
cmp dword [esp + 0x10], 0
jbe 0x4c9c86
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4c9c86
cmp byte [ecx], 0
je 0x4c9c86
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c9c71
push 0xb
lea eax, [esp + 0x69]
sub ecx, edx
push eax
push 0
push ecx
jmp 0x4c9c98
push 0xb
lea eax, [esp + 0x69]
push eax
push esi
call fcn.004b53f0
add esp, 4
push edx
push eax
call fcn.004c9710
add esp, 0x10
test eax, eax
je 0x4c9cbb
push str.File_is_too_large_for_cpio_format.
push 0x22
push edi
call fcn.004b91c0
add esp, 0xc
mov ebx, 0xffffffe7
jmp 0x4c9d22
push 0x4c
lea eax, [esp + 0x28]
push eax
push edi
call fcn.004b5dd0
add esp, 0xc
test eax, eax
jne 0x4c9d1d
push dword [esp + 0x14]
push dword [esp + 0x24]
push edi
call fcn.004b5dd0
add esp, 0xc
test eax, eax
jne 0x4c9d1d
push esi
call fcn.004b53f0
mov dword [ebp], eax
add esp, 4
mov dword [ebp + 4], edx
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4c9d22
cmp byte [edx], 0
je 0x4c9d22
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c9d05
sub ecx, esi
push ecx
push edx
push edi
call fcn.004b5dd0
add esp, 0xc
test eax, eax
je 0x4c9d22
mov ebx, 0xffffffe2
push dword [esp + 0x1c]
call fcn.004b4b90
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret