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

Disassembly:
mov ecx, dword [0x71d934]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x523f39
sub esp, 0x34
mov eax, 0
mov dword [esp + 0x30], eax
mov byte [esp + 0x17], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov eax, dword [esp + 0x38]
movzx ecx, byte [eax + 0x50]
mov byte [esp + 0x16], cl
test cl, cl
je 0x523b32
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
lea eax, [0x5bba45]
mov dword [esp], eax
mov dword [esp + 4], 0xe
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x591ae0]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
lea eax, [0x5fa568]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x38]
mov dword [esp], eax
lea ecx, [esp + 0x20]
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 + 0x38]
inc dword [eax + 0x54]
lea ecx, [sym.go_parser._parser_.parseParamDecl.deferwrap1]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], ecx
mov byte [esp + 0x17], 1
movzx ecx, byte [esp + 0x16]
mov ebx, dword [eax + 0x7c]
mov ebp, dword [esp + 0x3c]
test ebp, ebp
je 0x523b4b
mov dword [eax + 0x7c], 4
movzx esi, byte [esp + 0x40]
jmp 0x523ba8
movzx esi, byte [esp + 0x40]
xchg esi, eax
test al, al
xchg esi, eax
je 0x523ba8
cmp ebx, 0x58
jne 0x523ba8
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call sym.go_parser._parser_.embeddedElem
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
movzx eax, byte [esp + 0x16]
test al, 1
je 0x523ba4
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
mov edi, dword [eax + 0x7c]
cmp edi, 0x30
jg 0x523e4b
cmp edi, 0xe
jg 0x523e06
cmp edi, 4
jne 0x523dfc
test ebp, ebp
je 0x523bd3
mov dword [esp + 0x44], ebp
mov dword [eax + 0x7c], ebx
jmp 0x523bf1
mov dword [esp], eax
call sym.go_parser._parser_.parseIdent
mov eax, dword [esp + 4]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
mov ebx, dword [eax + 0x7c]
cmp ebx, 0x31
jg 0x523cc9
cmp ebx, 0x12
jg 0x523c76
cmp ebx, 4
je 0x523d79
cmp ebx, 0xe
je 0x523d79
cmp ebx, 0x12
jne 0x523edb
xchg esi, eax
test al, al
xchg esi, eax
je 0x523edb
mov ecx, dword [esp + 0x44]
mov dword [esp], eax
lea eax, [0x5fb84c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.go_parser._parser_.embeddedElem
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x44], 0
movzx eax, byte [esp + 0x16]
test al, 1
je 0x523c72
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
cmp ebx, 0x24
je 0x523d79
cmp ebx, 0x30
je 0x523c92
cmp ebx, 0x31
je 0x523d79
jmp 0x523edb
mov dword [esp], eax
call sym.go_parser._parser_.parseDotsType
mov eax, dword [esp + 4]
lea ecx, [0x5fbce4]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
movzx eax, byte [esp + 0x16]
test al, 1
je 0x523cc5
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
cmp ebx, 0x3f
jg 0x523d60
cmp ebx, 0x32
je 0x523d25
cmp ebx, 0x35
je 0x523cea
cmp ebx, 0x3f
je 0x523d79
jmp 0x523edb
mov ecx, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym.go_parser._parser_.parseQualifiedIdent
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
jmp 0x523edb
mov ecx, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym.go_parser._parser_.parseArrayFieldOrTypeInstance
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
jmp 0x523edb
cmp ebx, 0x4d
jg 0x523d74
cmp ebx, 0x47
je 0x523d79
cmp ebx, 0x4c
jge 0x523d79
jmp 0x523edb
cmp ebx, 0x52
jne 0x523da4
mov dword [esp], eax
call sym.go_parser._parser_.parseType
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
jmp 0x523edb
cmp ebx, 0x58
jne 0x523edb
xchg esi, eax
test al, al
xchg esi, eax
je 0x523edb
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call sym.go_parser._parser_.embeddedElem
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
movzx eax, byte [esp + 0x16]
test al, 1
je 0x523df8
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
cmp edi, 0xe
je 0x523e6e
jmp 0x523e96
cmp edi, 0x24
je 0x523e6e
cmp edi, 0x30
jne 0x523e96
mov dword [esp], eax
call sym.go_parser._parser_.parseDotsType
mov eax, dword [esp + 4]
lea ecx, [0x5fbce4]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
movzx eax, byte [esp + 0x16]
test al, 1
je 0x523e47
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
cmp edi, 0x3f
jg 0x523e5c
cmp edi, 0x32
jle 0x523e6e
cmp edi, 0x3f
je 0x523e6e
jmp 0x523e96
cmp edi, 0x47
je 0x523e6e
lea edx, [edi - 0x4c]
cmp edx, 1
jbe 0x523e6e
cmp edi, 0x52
jne 0x523e96
mov dword [esp], eax
call sym.go_parser._parser_.parseType
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
jmp 0x523edb
mov ecx, dword [eax + 0x78]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea ecx, [0x5b8b76]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 3
call sym.go_parser._parser_.errorExpected
mov eax, dword [0x6fe44c]
mov ecx, dword [esp + 0x38]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.go_parser._parser_.advance
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0x16]
movzx esi, byte [esp + 0x40]
xchg esi, eax
test al, al
xchg esi, eax
je 0x523f18
cmp dword [eax + 0x7c], 0x12
jne 0x523f18
mov ebx, dword [esp + 0x48]
test ebx, ebx
je 0x523f18
mov ecx, dword [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call sym.go_parser._parser_.embeddedElem
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
movzx ecx, byte [esp + 0x16]
test cl, 1
je 0x523f2c
and ecx, 0xfffffffe
mov byte [esp + 0x17], cl
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
call sym.runtime.morestack_noctxt
jmp sym.go_parser._parser_.parseParamDecl