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

Disassembly:
mov ecx, dword [0x80b088]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5d3b4f
sub esp, 0x74
lea edi, [esp + 0x5c]
xor eax, eax
call fcn.004673da
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov ecx, dword [esp + 0x88]
test ecx, ecx
je 0x5d35ec
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0x78]
mov ebx, dword [edx + 0x74]
cmp ebx, 0x34
je 0x5d3611
cmp ebx, 0x3a
jne 0x5d3604
xor eax, eax
jmp 0x5d3ad6
xor eax, eax
xor ecx, ecx
xor ebx, ebx
xor ebp, ebp
jmp 0x5d3782
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x48], ecx
mov dword [esp], 0
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
lea edx, [0x610ae0]
mov dword [esp + 0x10], edx
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
mov dword [eax], edx
mov edx, dword [0x80b220]
test edx, edx
jne 0x5d366d
mov edx, dword [esp + 0x48]
jmp 0x5d367e
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0x48]
mov dword [edi], edx
mov ebx, dword [eax + 4]
mov dword [edi + 4], ebx
mov dword [eax + 4], edx
mov edx, 1
jmp 0x5d368e
mov ecx, ebx
mov edx, eax
mov eax, ebp
mov ebx, dword [esp + 0x78]
cmp dword [ebx + 0x74], 0x34
jne 0x5d3776
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x40], eax
mov dword [esp], ebx
call sym.github.com_goplus_gop_parser._parser_.next
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x74]
cmp ecx, 0x37
je 0x5d3765
cmp ecx, 1
jne 0x5d36d3
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x40]
jmp 0x5d3688
mov dword [esp], eax
call sym.github.com_goplus_gop_parser._parser_.parseType
mov eax, dword [esp + 0x2c]
inc eax
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x30]
cmp ebx, eax
jb 0x5d36f6
mov ebp, dword [esp + 0x40]
jmp 0x5d373e
mov dword [esp + 0x48], edx
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x610ae0]
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 + 0x48]
mov eax, ecx
mov ecx, dword [esp + 0x44]
lea esi, [ebp + eax*8 - 8]
mov dword [esi], edx
mov edx, dword [0x80b220]
lea esi, [ebp + eax*8 - 4]
test edx, edx
je 0x5d375e
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [esi]
mov dword [edi + 4], edx
mov dword [esi], ecx
jmp 0x5d3688
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x40]
jmp 0x5d3688
mov ebx, ecx
mov ebp, eax
xor eax, eax
mov ecx, edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x28], eax
dec dword [edx + 0x9c]
mov dword [esp], edx
mov dword [esp + 4], 0x37
call sym.github.com_goplus_gop_parser._parser_.expect
mov eax, dword [esp + 8]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x28]
test ecx, ecx
jle 0x5d3963
cmp ecx, 2
jne 0x5d388b
mov edx, dword [esp + 0x64]
test edx, edx
jne 0x5d3829
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x6497d6]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x26
call sym.github.com_goplus_gop_parser._parser_.error
lea eax, [0x610b40]
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 + 0x3c]
mov dword [eax + 4], ecx
lea ecx, [0x68e080]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x6c]
test edx, edx
jne 0x5d388b
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x64935a]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x25
call sym.github.com_goplus_gop_parser._parser_.error
lea eax, [0x610b40]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x3c]
inc ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], ecx
lea edx, [0x68e080]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], eax
mov eax, ecx
mov ecx, dword [esp + 0x28]
lea eax, [0x628740]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
jne 0x5d38b6
mov ecx, dword [esp + 0x80]
jmp 0x5d38c4
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
je 0x5d38ed
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
mov dword [eax + 0x10], edx
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov dword [eax + 0x14], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
je 0x5d390c
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
mov dword [eax + 0x18], edx
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
mov dword [eax + 0x1c], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
jne 0x5d392d
mov ecx, dword [esp + 0x28]
cmp ecx, 2
jmp 0x5d393b
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
mov ecx, dword [esp + 0x28]
cmp ecx, 2
mov dword [eax + 0x20], edx
sete cl
mov byte [eax + 0x24], cl
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x28], ecx
lea ecx, [0x68e02c]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
add esp, 0x74
ret
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jne 0x5d3a7d
movzx ecx, byte [0x80af3e]
test cl, cl
je 0x5d39f9
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov ecx, dword [esp + 0x7c]
test ecx, ecx
je 0x5d39a5
mov ecx, dword [ecx + 4]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x5c]
test edx, edx
je 0x5d39bf
mov edx, dword [edx + 4]
mov eax, dword [esp + 0x60]
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], eax
lea eax, [0x647e22]
mov dword [esp], eax
mov dword [esp + 4], 0x20
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.github.com_qiniu_x_log.Printf
lea eax, [0x61ffe0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
jne 0x5d3a24
mov ecx, dword [esp + 0x80]
jmp 0x5d3a32
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x80b220]
test ecx, ecx
je 0x5d3a5b
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
mov dword [eax + 0x10], edx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x14], ecx
lea ecx, [0x68dc74]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
add esp, 0x74
ret
mov edx, dword [esp + 0x7c]
mov dword [esp], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call sym.github.com_goplus_gop_parser.packIndexExpr
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
add esp, 0x74
ret
inc eax
mov edx, dword [esp + 0x78]
cmp dword [edx + 0x74], 0x3a
jne 0x5d3b39
cmp eax, 2
jge 0x5d3b39
jae 0x5d3b44
mov dword [esp + 0x28], eax
mov ecx, dword [edx + 0x70]
mov dword [esp + eax*4 + 0x38], ecx
mov dword [esp], edx
call sym.github.com_goplus_gop_parser._parser_.next
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x74]
cmp ecx, 0x3a
je 0x5d3b33
cmp ecx, 0x37
je 0x5d3b33
cmp ecx, 1
je 0x5d3b33
mov dword [esp], eax
mov byte [esp + 4], 0
call sym.github.com_goplus_gop_parser._parser_.parseRHSEx
mov eax, dword [esp + 0x28]
lea ecx, [esp + eax*8 + 0x64]
lea edx, [esp + eax*8 + 0x68]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov dword [ecx], ebx
mov dword [edx], ebp
jmp 0x5d3ad1
mov eax, dword [esp + 0x28]
jmp 0x5d3ad1
xor ecx, ecx
xor ebx, ebx
xor ebp, ebp
jmp 0x5d3782
mov ecx, 2
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.github.com_goplus_gop_parser._parser_.parseIndexOrSliceContinue