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

Disassembly:
mov ecx, dword [0x7b1178]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x4f3452
sub esp, 0x88
mov eax, 0
mov dword [esp + 0x84], eax
mov byte [esp + 0x23], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov eax, dword [esp + 0x8c]
movzx ecx, byte [eax + 0x50]
mov byte [esp + 0x22], cl
test cl, cl
je 0x4f2c87
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6279f5]
mov dword [esp], eax
mov dword [esp + 4], 0x1b
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x5ed6a0]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
lea eax, [0x66d8a8]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
lea ecx, [esp + 0x74]
mov dword [esp + 4], ecx
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call sym.go_parser._parser_.printTrace
mov eax, dword [esp + 0x8c]
inc dword [eax + 0x54]
lea ecx, [sym.go_parser._parser_.parseIndexOrSliceOrInstance.deferwrap1]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x6c]
mov dword [esp + 0x84], ecx
mov byte [esp + 0x23], 1
mov dword [esp], eax
mov dword [esp + 4], 0x32
call sym.go_parser._parser_.expect
mov eax, dword [esp + 8]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x8c]
cmp dword [ecx + 0x7c], 0x37
je 0x4f2dbd
inc dword [ecx + 0x90]
lea edi, [esp + 0x48]
mov edx, eax
xor eax, eax
call fcn.0046ffca
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov ecx, dword [esp + 0x8c]
cmp dword [ecx + 0x7c], 0x3a
je 0x4f2d22
movzx eax, byte [ecx + 0x94]
mov byte [esp + 0x21], al
mov byte [ecx + 0x94], 1
mov dword [esp], ecx
call sym.go_parser._parser_.parseExpr
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
movzx edx, byte [esp + 0x21]
mov ebx, dword [esp + 0x8c]
mov byte [ebx + 0x94], dl
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov ecx, ebx
mov edx, dword [esp + 0x30]
mov ebx, dword [ecx + 0x7c]
cmp ebx, 0x34
je 0x4f2d43
cmp ebx, 0x3a
jne 0x4f2d36
xor eax, eax
jmp 0x4f3399
xor eax, eax
xor ebx, ebx
xor ebp, ebp
xor esi, esi
jmp 0x4f2fb1
mov eax, dword [esp + 0x48]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x68], ecx
mov dword [esp], 0
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
lea edx, [0x5f87e0]
mov dword [esp + 0x10], edx
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x44]
mov dword [eax], edx
mov edx, dword [0x7b12d0]
test edx, edx
jne 0x4f2d9f
mov edx, dword [esp + 0x68]
jmp 0x4f2db0
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0x68]
mov dword [edi], edx
mov ebx, dword [eax + 4]
mov dword [edi + 4], ebx
mov dword [eax + 4], edx
mov edx, 1
jmp 0x4f2eb4
mov eax, dword [ecx + 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x61e421]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 7
call sym.go_parser._parser_.errorExpected
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x78]
mov dword [esp + 0x28], ecx
mov dword [esp], eax
call sym.go_parser._parser_.next
lea eax, [0x5f8840]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x28]
mov dword [eax], ecx
mov dword [eax + 4], ecx
lea edx, [0x6047a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f2e45
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0x64]
jmp 0x4f2e5a
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov ebx, dword [esp + 0x64]
mov dword [edi + 4], ebx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
lea ecx, [0x66f3a4]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x14], ecx
lea ecx, [0x66ef24]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
movzx eax, byte [esp + 0x22]
test al, 1
je 0x4f2ea7
and eax, 0xfffffffe
mov byte [esp + 0x23], al
mov edx, dword [esp + 0x84]
mov eax, dword [edx]
call eax
add esp, 0x88
ret
mov ecx, ebx
mov edx, eax
mov eax, ebp
mov ebx, dword [esp + 0x8c]
cmp dword [ebx + 0x7c], 0x34
jne 0x4f2fa2
mov dword [esp + 0x40], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x60], eax
mov dword [esp], ebx
call sym.go_parser._parser_.next
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x7c]
cmp ecx, 0x37
je 0x4f2f91
cmp ecx, 1
jne 0x4f2eff
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x60]
jmp 0x4f2eae
mov dword [esp], eax
call sym.go_parser._parser_.parseType
mov eax, dword [esp + 0x3c]
inc eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x40]
cmp ebx, eax
jb 0x4f2f22
mov ebp, dword [esp + 0x60]
jmp 0x4f2f6a
mov dword [esp + 0x68], edx
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x5f87e0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebp, eax
mov ebx, edx
mov edx, dword [esp + 0x68]
mov eax, ecx
mov ecx, dword [esp + 0x44]
lea esi, [ebp + eax*8 - 8]
mov dword [esi], ecx
mov ecx, dword [0x7b12d0]
lea esi, [ebp + eax*8 - 4]
test ecx, ecx
je 0x4f2f8a
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ecx, dword [esi]
mov dword [edi + 4], ecx
mov dword [esi], edx
jmp 0x4f2eae
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x60]
jmp 0x4f2eae
mov ebx, edx
mov ebp, eax
mov esi, ecx
mov ecx, dword [esp + 0x8c]
xor eax, eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x60], ebp
dec dword [ecx + 0x90]
mov dword [esp], ecx
mov dword [esp + 4], 0x37
call sym.go_parser._parser_.expect
mov eax, dword [esp + 8]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x4f31b7
cmp ecx, 2
jne 0x4f30c0
mov edx, dword [esp + 0x50]
test edx, edx
jne 0x4f305b
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x62c411]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x26
call sym.go_parser._parser_.error
lea eax, [0x5f8840]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x34]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 4], ecx
lea ecx, [0x66f3a4]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x58]
test edx, edx
jne 0x4f30c0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x62bed5]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x25
call sym.go_parser._parser_.error
lea eax, [0x5f8840]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], ecx
lea edx, [0x66f3a4]
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], eax
mov eax, ecx
mov ecx, dword [esp + 0x2c]
lea eax, [0x60cc80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f30ee
mov ecx, dword [esp + 0x94]
jmp 0x4f30fc
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x4f3122
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebx
mov dword [eax + 0x10], ebx
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
mov dword [eax + 0x14], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x4f3141
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebx
mov dword [eax + 0x18], ebx
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
mov dword [eax + 0x1c], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f3162
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
jmp 0x4f3170
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebx
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
mov dword [eax + 0x20], ebx
sete cl
mov byte [eax + 0x24], cl
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x28], ecx
lea ecx, [0x66ef54]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
movzx eax, byte [esp + 0x22]
test al, 1
je 0x4f31b0
and eax, 0xfffffffe
mov byte [esp + 0x23], al
mov edx, dword [esp + 0x84]
mov eax, dword [edx]
call eax
add esp, 0x88
ret
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x4f32ed
cmp ecx, 1
jne 0x4f323d
lea eax, [0x6047a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f31f6
mov ecx, dword [esp + 0x94]
jmp 0x4f3204
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x60]
mov ebx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [eax + 0xc], ebx
mov ebx, dword [0x7b12d0]
test ebx, ebx
je 0x4f322b
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x14], ecx
lea ecx, [0x66ef24]
jmp 0x4f32bc
lea eax, [0x604820]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f326b
mov ecx, dword [esp + 0x94]
jmp 0x4f3279
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x14], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f32a1
mov ecx, dword [esp + 0x60]
jmp 0x4f32ac
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x60]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x18], ecx
lea ecx, [0x66f194]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
movzx eax, byte [esp + 0x22]
test al, 1
je 0x4f32e6
and eax, 0xfffffffe
mov byte [esp + 0x23], al
mov edx, dword [esp + 0x84]
mov eax, dword [edx]
call eax
add esp, 0x88
ret
lea eax, [0x6047a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
jne 0x4f331b
mov ecx, dword [esp + 0x94]
jmp 0x4f3329
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7b12d0]
test ecx, ecx
je 0x4f334f
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebx
mov dword [eax + 0x10], ebx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x14], ecx
lea ecx, [0x66ef24]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
movzx eax, byte [esp + 0x22]
test al, 1
je 0x4f3389
and eax, 0xfffffffe
mov byte [esp + 0x23], al
mov edx, dword [esp + 0x84]
mov eax, dword [edx]
call eax
add esp, 0x88
ret
lea eax, [edx + 1]
mov ecx, ebx
mov edx, dword [esp + 0x30]
cmp dword [ecx + 0x7c], 0x3a
jne 0x4f3430
cmp eax, 2
jge 0x4f3430
jae 0x4f343b
mov dword [esp + 0x2c], eax
mov edx, dword [ecx + 0x78]
mov dword [esp + eax*4 + 0x34], edx
mov dword [esp], ecx
call sym.go_parser._parser_.next
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x7c]
cmp ecx, 0x3a
je 0x4f3425
cmp ecx, 0x37
je 0x4f3425
cmp ecx, 1
je 0x4f3425
movzx ecx, byte [eax + 0x94]
mov byte [esp + 0x20], cl
mov byte [eax + 0x94], 1
mov dword [esp], eax
call sym.go_parser._parser_.parseExpr
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
movzx edx, byte [esp + 0x20]
mov ebx, dword [esp + 0x8c]
mov byte [ebx + 0x94], dl
mov edx, dword [esp + 0x2c]
lea ebp, [esp + edx*8 + 0x50]
mov dword [ebp], eax
mov dword [ebp + 4], ecx
jmp 0x4f3390
mov edx, dword [esp + 0x2c]
mov ebx, eax
jmp 0x4f3390
xor ebx, ebx
xor ebp, ebp
xor esi, esi
jmp 0x4f2fb1
mov ecx, 2
call sym.runtime.panicIndex
nop
call sym.runtime.deferreturn
add esp, 0x88
ret
call sym.runtime.morestack_noctxt
jmp sym.go_parser._parser_.parseIndexOrSliceOrInstance