Function at 0x52ec10
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 0x52f1a8
sub esp, 0x58
mov eax, 0
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x17], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0xa4]
inc ecx
mov dword [eax + 0xa4], ecx
cmp ecx, 0x186a0
jg 0x52f139
lea ecx, [sym.go_parser._parser_.parseStmt.deferwrap1]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x50], ecx
mov byte [esp + 0x17], 1
movzx ecx, byte [eax + 0x50]
test cl, cl
jne 0x52ec93
mov ecx, 1
jmp 0x52ed34
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [0x5b9eed]
mov dword [esp], eax
mov dword [esp + 4], 9
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x591ae0]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
lea eax, [0x5fa568]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
lea ecx, [esp + 0x34]
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 + 0x5c]
inc dword [eax + 0x54]
lea ecx, [sym.go_parser._parser_.parseStmt.deferwrap2]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x54], ecx
mov byte [esp + 0x17], 3
mov ecx, 3
mov byte [esp + 0x16], cl
mov edx, dword [eax + 0x7c]
cmp edx, 0x40
jg 0x52ee91
cmp edx, 0x2b
jg 0x52ed94
cmp edx, 0x11
jg 0x52ed74
lea ebx, [edx - 4]
cmp ebx, 5
jbe 0x52efa3
lea ebx, [edx - 0xc]
cmp ebx, 2
jbe 0x52efa3
cmp edx, 0x11
je 0x52efa3
jmp 0x52f07a
cmp edx, 0x13
je 0x52efa3
cmp edx, 0x24
je 0x52efa3
cmp edx, 0x2b
je 0x52efa3
jmp 0x52f07a
cmp edx, 0x38
jg 0x52ee10
lea ebx, [edx - 0x31]
cmp ebx, 1
jbe 0x52efa3
cmp edx, 0x33
je 0x52ede5
cmp edx, 0x38
jne 0x52f07a
lea eax, [0x59b300]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x5c]
mov ecx, dword [ecx + 0x78]
mov dword [eax], ecx
mov byte [eax + 4], 1
lea ecx, [0x5fbb34]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
mov dword [esp], eax
call sym.go_parser._parser_.parseBlockStmt
mov eax, dword [esp + 4]
lea ecx, [0x5fbaec]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call sym.go_parser._parser_.expectSemi
jmp 0x52f0ff
cmp edx, 0x3d
jg 0x52ee7a
cmp edx, 0x39
je 0x52ee28
cmp edx, 0x3d
je 0x52ef00
jmp 0x52f07a
lea eax, [0x59b300]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x5c]
mov edx, dword [ecx + 0x78]
mov dword [eax], edx
cmp dword [ecx + 0x84], 1
jne 0x52ee5a
mov edx, dword [ecx + 0x80]
cmp byte [edx], 0xa
sete dl
jmp 0x52ee5c
xor edx, edx
mov byte [eax + 4], dl
lea edx, [0x5fbb34]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
mov dword [esp], ecx
call sym.go_parser._parser_.next
jmp 0x52f0ff
cmp edx, 0x3f
je 0x52efa3
cmp edx, 0x40
je 0x52f00f
jmp 0x52f07a
cmp edx, 0x49
jg 0x52ef40
cmp edx, 0x45
jg 0x52eed0
cmp edx, 0x41
je 0x52ef00
cmp edx, 0x43
je 0x52eeb3
cmp edx, 0x45
je 0x52ef00
jmp 0x52f07a
mov dword [esp], eax
call sym.go_parser._parser_.parseDeferStmt
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
jmp 0x52f0ff
cmp edx, 0x47
jg 0x52eefb
cmp edx, 0x46
jne 0x52efa3
mov dword [esp], eax
call sym.go_parser._parser_.parseForStmt
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
jmp 0x52f0ff
cmp edx, 0x48
je 0x52ef23
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.go_parser._parser_.parseBranchStmt
mov eax, dword [esp + 8]
lea ecx, [0x5fbad4]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
mov dword [esp], eax
call sym.go_parser._parser_.parseGoStmt
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
jmp 0x52f0ff
cmp edx, 0x50
jg 0x52ef99
cmp edx, 0x4a
je 0x52ef7a
lea ebx, [edx - 0x4c]
cmp ebx, 1
jbe 0x52efa3
cmp edx, 0x50
jne 0x52f07a
mov dword [esp], eax
call sym.go_parser._parser_.parseReturnStmt
mov eax, dword [esp + 4]
lea ecx, [0x5fbabc]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
mov dword [esp], eax
call sym.go_parser._parser_.parseIfStmt
mov eax, dword [esp + 4]
lea ecx, [0x5fbb04]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
cmp edx, 0x52
jg 0x52f001
cmp edx, 0x51
je 0x52efe2
mov dword [esp], eax
mov dword [esp + 4], 1
call sym.go_parser._parser_.parseSimpleStmt
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
lea ecx, [0x5fbaa4]
cmp eax, ecx
je 0x52f0ff
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call sym.go_parser._parser_.expectSemi
jmp 0x52f0ff
mov dword [esp], eax
call sym.go_parser._parser_.parseSelectStmt
mov eax, dword [esp + 4]
lea ecx, [0x5fbb1c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
cmp edx, 0x53
je 0x52f0e7
cmp edx, 0x55
jg 0x52f07a
mov ecx, dword [0x6fe444]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym.go_parser._parser_.parseDecl
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x20], ecx
lea edx, [0x5975c0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
mov ecx, dword [0x71da68]
test ecx, ecx
jne 0x52f059
mov ecx, dword [esp + 0x20]
jmp 0x52f064
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x20]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x5fba8c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
mov ecx, dword [eax + 0x78]
mov dword [esp + 0x18], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x5b9ef6]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 9
call sym.go_parser._parser_.errorExpected
mov eax, dword [0x6fe444]
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.go_parser._parser_.advance
lea eax, [0x59b240]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov ecx, dword [esp + 0x5c]
mov ecx, dword [ecx + 0x78]
mov dword [eax + 4], ecx
lea ecx, [0x5fbb4c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
jmp 0x52f0ff
mov dword [esp], eax
call sym.go_parser._parser_.parseSwitchStmt
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
movzx eax, byte [esp + 0x16]
test al, 2
je 0x52f121
and eax, 0xfffffffd
mov byte [esp + 0x16], al
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x54]
mov ecx, dword [edx]
call ecx
movzx eax, byte [esp + 0x16]
test al, 1
je 0x52f135
and eax, 0xfffffffe
mov byte [esp + 0x17], al
mov edx, dword [esp + 0x50]
mov eax, dword [edx]
call eax
add esp, 0x58
ret
mov ecx, dword [eax + 0x78]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x5c0bbe]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x1a
call sym.go_parser._parser_.error
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
lea eax, [0x59b6c0]
mov dword [esp], eax
lea ecx, [esp + 0x44]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x59b6c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
nop
call sym.runtime.deferreturn
add esp, 0x58
ret
call sym.runtime.morestack_noctxt
jmp sym.go_parser._parser_.parseStmt