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

Disassembly:
mov ecx, dword [0x65260c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x38]
cmp eax, dword [ecx + 8]
jbe 0x4f9e5b
sub esp, 0xb8
nop
lea eax, [0x523020]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xbc]
mov dword [eax], ecx
mov edx, dword [0x6526b0]
test edx, edx
jne 0x4f985d
mov edx, dword [esp + 0xc0]
jmp 0x4f986b
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0xc0]
mov dword [edi], edx
mov dword [esp + 0x60], eax
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 dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x1c], 0x7fffffff
mov dword [eax + 0x20], 0xffffffff
mov dword [eax + 0x24], 0x7fffffff
lea ecx, [0x5134e0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 0xbc]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 4]
mov dword [esp + 0xb4], edx
mov ebx, dword [esp + 0xc0]
mov dword [esp], ebx
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call ecx
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4f9c4a
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx]
bswap edx
nop
cmp edx, 0x1eb
je 0x4f9929
cmp edx, 0x647
je 0x4f9929
cmp edx, 0x8a97
jne 0x4f992f
xor eax, eax
xor edx, edx
jmp 0x4f99a5
lea eax, [0x5203c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x74], eax
mov dword [eax + 8], 0x10
lea ecx, [0x53367d]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x511180]
mov edx, dword [esp + 0x74]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
je 0x4f999c
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x10]
mov dword [edi + 4], ecx
mov dword [edx + 0x10], eax
lea eax, [0x55ea48]
test eax, eax
jne 0x4f9c2a
lea edi, [esp + 0x40]
xor eax, eax
call fcn.00463e48
lea ecx, [0x55e958]
mov dword [esp], ecx
mov edx, dword [esp + 0x60]
mov dword [esp + 4], edx
lea ebx, [0x55ee38]
mov dword [esp + 8], ebx
lea ebp, [0x6524e0]
mov dword [esp + 0xc], ebp
lea esi, [0x510300]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x40]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x4f9c06
lea eax, [0x520640]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x40]
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 4
mov dword [eax + 0x14], 0x1000
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0x20
mov dword [eax + 0x20], 0
mov ecx, dword [esp + 0x40]
test ecx, 0x8000
je 0x4f9ad2
lea ecx, [0x55e958]
mov dword [esp], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
lea ecx, [0x55ee38]
mov dword [esp + 8], ecx
lea ecx, [0x6524e0]
mov dword [esp + 0xc], ecx
lea ecx, [0x50e080]
mov dword [esp + 0x10], ecx
lea ecx, [eax + 8]
mov dword [esp + 0x14], ecx
call sym.encoding_binary.Read
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4f9be2
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x10], 8
mov dword [ecx + 0x14], 0x200000
mov dword [ecx + 0x18], 0
mov edx, dword [ecx + 0x1c]
mov ebx, dword [ecx + 0x20]
add edx, 8
mov dword [ecx + 0x1c], edx
adc ebx, 0
mov dword [ecx + 0x20], ebx
lea edi, [esp + 0x78]
xor eax, eax
call fcn.00463e41
mov dword [esp + 0x7c], 4
lea ecx, [0x53053b]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x88], 4
lea ecx, [0x530583]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x94], 4
lea ecx, [0x530653]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x98], ecx
mov dword [esp + 0xa0], 4
lea ecx, [0x530657]
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xac], 4
lea ecx, [0x53065b]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xb0], ecx
lea ecx, [0x520440]
mov dword [esp], ecx
mov dword [esp + 4], 5
mov dword [esp + 8], 5
call sym.runtime.makeslice
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x68]
mov dword [edx + 0x28], 5
mov dword [edx + 0x2c], 5
mov ebx, dword [0x6526b0]
test ebx, ebx
je 0x4f9bd1
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx + 0x24]
mov dword [edi + 4], eax
mov dword [edx + 0x24], ecx
mov eax, dword [edx + 0x1c]
lea ecx, [esp + 0x78]
xor ebx, ebx
jmp 0x4f9c84
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
add esp, 0xb8
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], eax
add esp, 0xb8
ret
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], edx
add esp, 0xb8
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
add esp, 0xb8
ret
mov dword [ebp + eax*4], ebx
mov ebp, dword [esp + 0x70]
add ebp, 0xc
lea ebx, [eax + 1]
mov edx, esi
mov ecx, ebp
mov eax, dword [esp + 0x38]
cmp ebx, 5
jge 0x4f9e2f
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x70], ecx
mov eax, dword [ecx + 8]
mov dword [esp + 0x30], eax
mov edx, dword [ecx + 4]
mov dword [esp + 0x3c], edx
mov ebx, dword [ecx]
mov dword [esp + 0x6c], ebx
lea ebp, [0x5228a0]
mov dword [esp], ebp
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x2c]
mov dword [eax + 0xc], edx
mov ebx, dword [0x6526b0]
lea ebp, [edx + ecx]
mov dword [esp + 0x38], ebp
mov esi, 0xffffffff
sub esi, ecx
mov edi, 0x7fffffff
sbb edi, 0
test edi, edi
xchg edi, ebx
sete bl
xchg edi, ebx
xchg ebp, ebx
setg bl
xchg ebp, ebx
cmp esi, edx
xchg esi, ebx
setae bl
xchg esi, ebx
and edi, esi
or ebp, edi
test ebx, ebx
jne 0x4f9d17
mov ebx, dword [esp + 0x6c]
jmp 0x4f9d22
call sym.runtime.gcWriteBarrier1
mov ebx, dword [esp + 0x6c]
mov dword [edi], ebx
mov dword [esp + 0x64], eax
mov dword [eax], ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f9d3a
add ecx, edx
mov ebp, 0
adc ebp, 0
jmp 0x4f9d44
mov ebp, 0x7fffffff
mov ecx, 0xffffffff
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ebp
lea eax, [0x523020]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xbc]
mov dword [eax], ecx
mov edx, dword [0x6526b0]
test edx, edx
jne 0x4f9d7a
mov edx, dword [esp + 0xc0]
jmp 0x4f9d88
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0xc0]
mov dword [edi], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0x2c]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], 0
mov ebx, dword [esp + 0x24]
mov dword [eax + 0x18], ebx
mov ebx, dword [esp + 0x28]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0x30]
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], 0
mov ebx, dword [0x6526b0]
test ebx, ebx
jne 0x4f9dcf
mov ebx, dword [esp + 0x64]
jmp 0x4f9de6
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov ebx, dword [esp + 0x64]
mov ebp, dword [ebx + 0x18]
mov dword [edi + 4], ebp
mov ebp, dword [ebx + 0x14]
mov dword [edi + 8], ebp
mov dword [ebx + 0x18], eax
lea ebp, [0x55e868]
mov dword [ebx + 0x10], ebp
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x68]
mov edi, dword [esi + 0x28]
mov eax, dword [esp + 0x34]
cmp eax, edi
jae 0x4f9e53
mov edi, dword [0x6526b0]
mov ebp, dword [esi + 0x24]
test edi, edi
je 0x4f9c6e
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov edx, dword [ebp + eax*4]
mov dword [edi + 4], edx
mov edx, dword [esp + 0xc0]
jmp 0x4f9c6e
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
add esp, 0xb8
ret
mov ecx, edi
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.debug_plan9obj.NewFile