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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x3c]
cmp eax, dword [ecx + 8]
jbe 0x4b1fab
sub esp, 0xbc
lea edi, [esp + 0x8c]
xor eax, eax
call fcn.0044bed4
lea ecx, [0x5d5660]
mov dword [esp], ecx
mov edx, dword [esp + 0xc4]
mov dword [esp + 4], edx
lea ebx, [esp + 0x8c]
mov dword [esp + 8], ebx
call dbg.runtime.mapiterinit
lea ecx, [esp + 8]
mov dword [esp + 0x4c], ecx
xor eax, eax
jmp 0x4b1809
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x8c]
mov dword [esp], ecx
call dbg.runtime.mapiternext
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x4b1f4c
mov ebx, dword [esp + 0x90]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
test ebx, ebx
je 0x4b17ee
mov dword [esp + 0x30], ebp
mov dword [esp + 0x44], eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x24], ebx
cmp edx, 5
jge 0x4b1c0c
cmp edx, 3
jge 0x4b1a5b
jne 0x4b1876
movzx edi, word [ebp]
cmp di, 0x6967
jne 0x4b1a53
movzx edi, byte [ebp + 2]
xchg edi, eax
cmp al, 0x64
xchg edi, eax
je 0x4b1a20
cmp edx, 3
jne 0x4b1892
movzx edi, word [ebp]
cmp di, 0x6975
jne 0x4b1892
movzx edi, byte [ebp + 2]
xchg edi, eax
cmp al, 0x64
xchg edi, eax
je 0x4b19eb
cmp edx, 0xd
jge 0x4b19af
xor edi, edi
xchg edi, eax
test al, al
xchg edi, eax
je 0x4b1911
mov edi, dword [esp + 0xc0]
mov ecx, dword [edi + 0x88]
lea eax, [edi + 0x88]
test ecx, ecx
je 0x4b1950
cmp edx, 0xd
jb 0x4b1fa4
mov eax, dword [edi + 0x88]
mov dword [esp + 4], eax
lea eax, [0x5d5660]
mov dword [esp], eax
lea ecx, [edx - 0xd]
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 0xd
add ecx, ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call dbg.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], ecx
mov ecx, dword [0x74e1b0]
test ecx, ecx
jne 0x4b193e
mov ecx, dword [esp + 0x2c]
mov dword [eax], ecx
mov eax, dword [esp + 0x44]
test eax, eax
je 0x4b17ee
mov eax, dword [0x73c33c]
mov ecx, dword [0x73c338]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], eax
add esp, 0xbc
ret
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
jmp 0x4b1911
mov dword [esp + 0x40], eax
call dbg.runtime.makemap_small
mov eax, dword [0x74e1b0]
mov ecx, dword [esp]
test eax, eax
jne 0x4b198f
mov eax, dword [esp + 0xc0]
mov dword [eax + 0x88], ecx
mov ecx, dword [esp + 0x28]
cmp ecx, 0xd
mov edx, ecx
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
mov edi, eax
jmp 0x4b18c1
mov eax, dword [esp + 0x40]
mov dword [esp], eax
mov dword [esp + 4], ecx
call dbg.runtime.writebarrierptr
mov ecx, dword [esp + 0x28]
cmp ecx, 0xd
mov eax, dword [esp + 0xc0]
jmp 0x4b197a
mov dword [esp], ebp
lea eax, [0x610eb3]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xd
call dbg.runtime.memequal
movzx edi, byte [esp + 0xc]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b189d
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call dbg.strconv.ParseInt
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xc0]
mov dword [edx + 0x24], eax
mov eax, ecx
jmp 0x4b1915
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call dbg.strconv.ParseInt
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc0]
mov dword [edx + 0x28], ecx
jmp 0x4b1915
cmp edx, 3
jmp 0x4b1876
je 0x4b1ba9
cmp edx, 4
jne 0x4b1ba2
mov edi, ecx
mov ecx, dword [ebp]
cmp ecx, 0x68746170
jne 0x4b1ab6
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 8], ebx
mov edx, dword [0x74e1b0]
lea ebx, [ecx + 4]
test edx, edx
jne 0x4b1a96
mov dword [ecx + 4], esi
jmp 0x4b1915
mov dword [esp], ebx
mov dword [esp + 4], esi
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xc0]
mov edi, dword [esp + 0x4c]
jmp 0x4b1915
cmp edx, 4
jne 0x4b1b9a
mov ecx, dword [ebp]
cmp ecx, 0x657a6973
je 0x4b1b60
cmp edx, 5
jne 0x4b1ae7
mov ecx, dword [ebp]
cmp ecx, 0x6d697461
jne 0x4b1ae7
movzx ecx, byte [ebp + 4]
cmp cl, 0x65
je 0x4b1aee
mov ecx, edi
jmp 0x4b1892
lea edi, [esp + 0x78]
xor eax, eax
call fcn.0044bedb
mov dword [esp], esi
mov dword [esp + 4], ebx
call dbg.archive/tar.parsePAXTime
lea edi, [esp + 0x78]
mov esi, dword [esp + 0x4c]
call fcn.0044c3be
mov ecx, dword [esp + 0xc0]
test byte [ecx], al
mov edx, dword [0x74e1b0]
mov ebx, dword [esp + 0x1c]
lea edi, [ecx + 0x50]
test edx, edx
jne 0x4b1b3c
lea esi, [esp + 0x78]
call fcn.0044c3be
mov eax, ebx
jmp 0x4b1915
mov dword [esp + 0x3c], ebx
lea eax, [0x60c3c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x78]
mov dword [esp + 8], eax
call dbg.runtime.typedmemmove
mov ebx, dword [esp + 0x3c]
jmp 0x4b1b35
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call dbg.strconv.ParseInt
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc0]
mov dword [ebx + 0x14], edx
mov dword [ebx + 0x18], ecx
jmp 0x4b1915
cmp edx, 5
jmp 0x4b1ad1
mov edi, ecx
jmp 0x4b1ab9
mov dword [esp], ebp
mov dword [esp + 4], edx
lea eax, [0x60eef9]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 3
call dbg.runtime.cmpstring
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4b1bef
mov edx, dword [esp + 0x28]
cmp edx, 3
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b1853
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b1a61
je 0x4b1ee9
je 0x4b1d76
jne 0x4b1d6f
mov edi, ecx
mov ecx, dword [ebp]
cmp ecx, 0x6d69746d
jne 0x4b1d67
movzx ecx, byte [ebp + 4]
cmp cl, 0x65
je 0x4b1cf5
cmp edx, 5
jne 0x4b1c94
mov ecx, dword [ebp]
cmp ecx, 0x6d616e75
jne 0x4b1c94
movzx ecx, byte [ebp + 4]
cmp cl, 0x65
jne 0x4b1c94
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 0x30], ebx
mov edx, dword [0x74e1b0]
lea ebx, [ecx + 0x2c]
test edx, edx
jne 0x4b1c74
mov dword [ecx + 0x2c], esi
jmp 0x4b1915
mov dword [esp], ebx
mov dword [esp + 4], esi
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xc0]
mov edi, dword [esp + 0x4c]
jmp 0x4b1915
cmp edx, 8
jne 0x4b1cee
mov ecx, dword [ebp]
cmp ecx, 0x6b6e696c
jne 0x4b1cee
mov ecx, dword [ebp + 4]
cmp ecx, 0x68746170
jne 0x4b1cee
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 0x10], ebx
mov edx, dword [0x74e1b0]
lea ebx, [ecx + 0xc]
test edx, edx
jne 0x4b1cce
mov dword [ecx + 0xc], esi
jmp 0x4b1915
mov dword [esp], ebx
mov dword [esp + 4], esi
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xc0]
mov edi, dword [esp + 0x4c]
jmp 0x4b1915
mov ecx, edi
jmp 0x4b1892
lea edi, [esp + 0x64]
xor eax, eax
call fcn.0044bedb
mov dword [esp], esi
mov dword [esp + 4], ebx
call dbg.archive/tar.parsePAXTime
lea edi, [esp + 0x64]
mov esi, dword [esp + 0x4c]
call fcn.0044c3be
mov ecx, dword [esp + 0xc0]
test byte [ecx], al
mov edx, dword [esp + 0x1c]
mov ebx, dword [0x74e1b0]
lea edi, [ecx + 0x3c]
test ebx, ebx
jne 0x4b1d43
lea esi, [esp + 0x64]
call fcn.0044c3be
mov eax, edx
jmp 0x4b1915
mov dword [esp + 0x38], edx
lea eax, [0x60c3c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x64]
mov dword [esp + 8], eax
call dbg.runtime.typedmemmove
mov edx, dword [esp + 0x38]
jmp 0x4b1d3c
cmp edx, 5
jmp 0x4b1c3f
mov edi, ecx
jmp 0x4b1c3f
mov dword [esp], ebp
mov dword [esp + 4], edx
lea eax, [0x60f2ef]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call dbg.runtime.cmpstring
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4b1ec9
mov ecx, dword [esp + 0x28]
cmp ecx, 5
jne 0x4b1ec0
mov edx, dword [esp + 0x30]
mov ebx, dword [edx]
cmp ebx, 0x6d697463
jne 0x4b1eb8
movzx ebx, byte [edx + 4]
cmp bl, 0x65
je 0x4b1e3e
cmp ecx, 5
jne 0x4b1e23
mov eax, dword [edx]
cmp eax, 0x6d616e67
jne 0x4b1e23
movzx eax, byte [edx + 4]
cmp al, 0x65
jne 0x4b1e23
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 0x38], eax
mov eax, dword [0x74e1b0]
lea edx, [ecx + 0x34]
test eax, eax
jne 0x4b1e0a
mov eax, dword [esp + 0x2c]
mov dword [ecx + 0x34], eax
mov eax, dword [esp + 0x44]
jmp 0x4b1915
mov dword [esp], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov ecx, dword [esp + 0xc0]
jmp 0x4b1e01
mov eax, dword [esp + 0x44]
mov edx, ecx
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x4c]
jmp 0x4b1cee
lea edi, [esp + 0x50]
xor eax, eax
call fcn.0044bedb
mov ecx, dword [esp + 0x2c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], ecx
call dbg.archive/tar.parsePAXTime
lea edi, [esp + 0x50]
mov esi, dword [esp + 0x4c]
call fcn.0044c3be
mov ecx, dword [esp + 0xc0]
test byte [ecx], al
mov edx, dword [esp + 0x1c]
mov ebx, dword [0x74e1b0]
lea edi, [ecx + 0x64]
test ebx, ebx
jne 0x4b1e94
lea esi, [esp + 0x50]
call fcn.0044c3be
mov eax, edx
jmp 0x4b1915
mov dword [esp + 0x34], edx
lea eax, [0x60c3c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x50]
mov dword [esp + 8], eax
call dbg.runtime.typedmemmove
mov edx, dword [esp + 0x34]
jmp 0x4b1e8d
cmp ecx, 5
jmp 0x4b1dcb
mov edx, dword [esp + 0x30]
jmp 0x4b1dcb
mov edx, dword [esp + 0x28]
cmp edx, 5
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b1c18
mov dword [esp], ebp
mov dword [esp + 4], edx
lea eax, [0x60f2ae]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call dbg.runtime.cmpstring
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x4b1f2c
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b184a
mov edx, dword [esp + 0x28]
cmp edx, 5
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
jmp 0x4b1c12
mov eax, dword [esp + 0xc0]
test byte [eax], al
mov ecx, dword [0x74e1b0]
lea edx, [eax + 0x8c]
test ecx, ecx
jne 0x4b1f8f
mov ecx, dword [esp + 0xc4]
mov dword [eax + 0x8c], ecx
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
add esp, 0xbc
ret
mov dword [esp], edx
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
jmp 0x4b1f72
call dbg.runtime.panicslice
ud2
call dbg.runtime.morestack_noctxt
jmp dbg.archive/tar.mergePAX