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

Disassembly:
mov ecx, dword [0x5e3958]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x38]
cmp eax, dword [ecx + 8]
jbe 0x4ca226
sub esp, 0xb8
nop
lea eax, [0x4ee240]
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 [0x5e3a60]
test edx, edx
jne 0x4c9c2d
mov edx, dword [esp + 0xc0]
jmp 0x4c9c3b
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
lea ecx, [0x4e0a00]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 0xbc]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 4]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0xc0]
mov dword [esp], edx
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
call eax
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4ca00e
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
bswap edx
nop
cmp edx, 0x1eb
je 0x4c9ce5
cmp edx, 0x647
je 0x4c9ce5
cmp edx, 0x8a97
jne 0x4c9ceb
xor eax, eax
xor edx, edx
jmp 0x4c9d5e
lea eax, [0x4ed160]
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, [0x4ff4dd]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x78]
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, [0x4de960]
mov edx, dword [esp + 0x74]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x5e3a60]
test ecx, ecx
je 0x4c9d55
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, [0x528478]
test eax, eax
jne 0x4c9fee
lea edi, [esp + 0x40]
xor eax, eax
call fcn.004600b8
lea ecx, [0x528374]
mov dword [esp], ecx
mov edx, dword [esp + 0x60]
mov dword [esp + 4], edx
lea ebx, [0x528880]
mov dword [esp + 8], ebx
lea ebp, [0x5e3820]
mov dword [esp + 0xc], ebp
lea esi, [0x4dda60]
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 0x4c9fc6
lea eax, [0x4ed3e0]
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 0x4c9e8b
lea ecx, [0x528374]
mov dword [esp], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
lea ecx, [0x528880]
mov dword [esp + 8], ecx
lea ecx, [0x5e3820]
mov dword [esp + 0xc], ecx
lea ecx, [0x4dbce0]
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 0x4c9f9e
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 + 0x7c]
xor eax, eax
call fcn.004600b1
mov dword [esp + 0x80], 4
lea ecx, [0x4fc5a6]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x8c], 4
lea ecx, [0x4fc5ee]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], 4
lea ecx, [0x4fc6c2]
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa4], 4
lea ecx, [0x4fc6c6]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xb0], 4
lea ecx, [0x4fc6ca]
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xb4], ecx
lea ecx, [0x4ed260]
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 [0x5e3a60]
test ebx, ebx
je 0x4c9f8d
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 + 0x7c]
xor ebx, ebx
jmp 0x4ca04c
mov eax, dword [esp + 0x18]
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 + 0x18]
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 dword [esp + 0xc4], 0
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], edx
add esp, 0xb8
ret
mov eax, dword [esp + 0x1c]
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 0x4ca1fa
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, [0x4ef7a0]
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 [0x5e3a60]
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 0x4ca0df
mov ebx, dword [esp + 0x6c]
jmp 0x4ca0ea
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 0x4ca102
add ecx, edx
mov ebx, 0
adc ebx, 0
jmp 0x4ca10c
mov ebx, 0x7fffffff
mov ecx, 0xffffffff
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ebx
lea eax, [0x4ee240]
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 [0x5e3a60]
test edx, edx
jne 0x4ca142
mov edx, dword [esp + 0xc0]
jmp 0x4ca150
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 [0x5e3a60]
test ebx, ebx
jne 0x4ca189
mov ebx, dword [esp + 0x64]
jmp 0x4ca19a
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebx, dword [esp + 0x64]
mov ebp, dword [ebx + 0x18]
mov dword [edi + 4], ebp
mov dword [ebx + 0x18], eax
lea ebp, [0x5282c0]
mov dword [ebx + 0x10], ebp
mov esi, dword [0x5e3a60]
test esi, esi
je 0x4ca1bd
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov esi, dword [ebx + 0x14]
mov dword [edi + 4], esi
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x68]
mov edi, dword [esi + 0x28]
mov eax, dword [esp + 0x34]
cmp eax, edi
jae 0x4ca21e
mov edi, dword [0x5e3a60]
mov ebp, dword [esi + 0x24]
test edi, edi
je 0x4ca036
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 0x4ca036
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