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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x14]
cmp eax, dword [ecx + 8]
jbe 0x4ca0f0
sub esp, 0x94
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0xc], ebx
call dbg.archive/zip.readDirectoryEnd
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
test edx, edx
jne 0x4ca0db
mov dword [esp + 0x44], eax
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x28], edx
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov ebp, dword [esp + 0xa8]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x1e
mov dword [esp + 0xc], 0
call dbg.runtime.uint64div
mov eax, dword [esp + 0x44]
lea ecx, [eax + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x28]
cmp ebx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x2c]
cmp edi, esi
xchg esi, ebx
seta bl
xchg esi, ebx
and ebp, esi
cmp ebx, edx
seta dl
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4ca012
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
mov dword [edx], ecx
mov ebx, dword [0x752a30]
lea ebp, [edx + 4]
test ebx, ebx
jne 0x4c9ff6
mov ebx, dword [esp + 0xa0]
mov dword [edx + 4], ebx
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0x14]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
lea ecx, [0x602ce0]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call dbg.runtime.makeslice64
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x98]
mov dword [ebx + 0xc], ecx
mov dword [ebx + 0x10], eax
mov eax, dword [0x752a30]
lea ecx, [ebx + 8]
mov dword [esp + 0x54], ecx
test eax, eax
jne 0x4c9fda
mov dword [ebx + 8], edx
mov eax, dword [esp + 0x44]
mov edx, dword [eax + 0x2c]
mov ebp, dword [eax + 0x30]
mov dword [ebx + 0x18], ebp
mov ebp, dword [0x752a30]
lea esi, [ebx + 0x14]
test ebp, ebp
jne 0x4c9fc9
mov dword [ebx + 0x14], edx
lea eax, [0x5f1400]
mov dword [esp], eax
call dbg.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x9c]
mov dword [eax], ecx
mov edx, dword [0x752a30]
lea ebx, [eax + 4]
test edx, edx
jne 0x4c9f9f
mov edx, dword [esp + 0xa0]
mov dword [eax + 4], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov ebx, dword [esp + 0xa4]
mov dword [eax + 0x18], ebx
mov ebp, dword [esp + 0xa8]
mov dword [eax + 0x1c], ebp
mov esi, dword [esp + 0x44]
mov edi, dword [esi + 0x20]
mov ebp, dword [eax + 8]
add edi, ebp
mov esi, dword [esi + 0x24]
mov ebx, dword [eax + 0xc]
adc esi, ebx
cmp esi, ebx
sete dl
cmp edi, ebp
xchg ebp, ebx
setb bl
xchg ebp, ebx
and ebp, edx
cmp esi, ebx
setl dl
or edx, ebp
test dl, dl
je 0x4c9f90
mov edx, dword [0x73fc90]
mov ebx, dword [0x73fc94]
test edx, edx
jne 0x4c9f7b
lea eax, [0x5fa780]
mov dword [esp], eax
call dbg.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x48], eax
lea ecx, [0x5d6b80]
mov dword [esp], ecx
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call dbg.runtime.makeslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0xc]
lea edi, [esp + 0x68]
mov ebx, eax
xor eax, eax
call fcn.0044bd05
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x20]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ebx
lea eax, [0x70fad0]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x78], eax
mov dword [esp + 0x8c], 0xffffffff
mov dword [esp + 0x90], 0xffffffff
mov edi, dword [esp + 0x48]
test byte [edi], al
mov eax, dword [0x752a30]
test eax, eax
jne 0x4c9f5c
lea esi, [esp + 0x68]
call fcn.0044c1b2
lea eax, [0x5f49c0]
mov dword [esp], eax
call dbg.runtime.newobject
mov eax, dword [0x752a30]
mov ecx, dword [esp + 4]
mov dword [esp + 0x38], ecx
lea edx, [ecx + 0x48]
test eax, eax
jne 0x4c9f39
mov eax, dword [esp + 0x98]
mov dword [ecx + 0x48], eax
mov edx, dword [esp + 0x9c]
mov dword [ecx + 0x4c], edx
mov ebx, dword [0x752a30]
lea ebp, [ecx + 0x50]
test ebx, ebx
jne 0x4c9f1d
mov ebx, dword [esp + 0xa0]
mov dword [ecx + 0x50], ebx
mov eax, dword [esp + 0xa4]
mov dword [ecx + 0x54], eax
mov edx, dword [esp + 0xa8]
mov dword [ecx + 0x58], edx
mov dword [esp], ecx
lea ebx, [0x70f950]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x48]
mov dword [esp + 8], ebp
call dbg.archive/zip.readDirectoryHeader
mov eax, dword [esp + 0x10]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x3c], ecx
mov edx, dword [0x73fad0]
cmp edx, ecx
je 0x4c9ef1
mov edx, dword [0x73fc88]
cmp edx, ecx
je 0x4c9e75
test ecx, ecx
jne 0x4c9e60
mov eax, dword [esp + 0x98]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0x10]
mov ebx, dword [eax + 0xc]
lea ebp, [ebx + 1]
cmp ebp, edx
jg 0x4c9de6
lea edx, [ebx + 1]
mov dword [eax + 0xc], edx
mov edx, dword [0x752a30]
lea ebp, [ecx + ebx*4]
test edx, edx
jne 0x4c9dca
mov edx, dword [esp + 0x38]
mov dword [ecx + ebx*4], edx
jmp 0x4c9cdc
mov dword [esp], ebp
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x98]
jmp 0x4c9cdc
lea eax, [0x602ce0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x98]
mov dword [ebx + 0x10], edx
mov edx, dword [0x752a30]
test edx, edx
jne 0x4c9e37
mov dword [ebx + 8], eax
mov ebx, ecx
mov ecx, eax
mov eax, dword [esp + 0x98]
jmp 0x4c9dab
mov dword [esp + 0x4c], eax
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x98]
jmp 0x4c9e27
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], eax
add esp, 0x94
ret
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [0x73fc8c]
mov dword [esp + 8], edx
call dbg.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4c9ea1
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
jmp 0x4c9d8c
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 0xc]
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx + 0x10]
cmp ax, cx
je 0x4c9ed4
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xb0], eax
add esp, 0x94
ret
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
add esp, 0x94
ret
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [0x73fad4]
mov dword [esp + 8], edx
call dbg.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4c9ea1
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
jmp 0x4c9d7e
mov dword [esp], ebp
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov ecx, dword [esp + 0x38]
jmp 0x4c9d32
mov dword [esp], edx
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x38]
jmp 0x4c9d0d
lea eax, [0x5fa780]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x68]
mov dword [esp + 8], eax
call dbg.runtime.typedmemmove
jmp 0x4c9cdc
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], ebx
add esp, 0x94
ret
mov dword [eax + 0x10], edi
mov dword [eax + 0x14], esi
xor ebx, ebx
xor edx, edx
jmp 0x4c9c2e
mov dword [esp], ebx
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
jmp 0x4c9bbf
mov dword [esp], esi
mov dword [esp + 4], edx
call dbg.runtime.writebarrierptr
jmp 0x4c9b85
mov dword [esp], ecx
mov dword [esp + 4], edx
call dbg.runtime.writebarrierptr
mov ecx, dword [esp + 0x54]
mov ebx, dword [esp + 0x98]
jmp 0x4c9b64
mov dword [esp], ebp
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x44]
jmp 0x4c9b07
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x34], eax
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 4], ecx
lea eax, [0x5d6b40]
mov dword [esp], eax
call dbg.runtime.convT2E64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], eax
lea eax, [0x5d6300]
mov dword [esp], eax
lea eax, [esp + 0x30]
mov dword [esp + 4], eax
call dbg.runtime.convT2E64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
lea eax, [0x61fc5c]
mov dword [esp], eax
mov dword [esp + 4], 0x3c
lea eax, [esp + 0x58]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call dbg.fmt.Errorf
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], eax
add esp, 0x94
ret
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], ecx
add esp, 0x94
ret
call dbg.runtime.morestack_noctxt
jmp dbg.archive/zip.(*Reader).init