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

Disassembly:
mov ecx, dword [0x6dded4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4c7cd1
sub esp, 0x34
mov eax, 0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov byte [esp + 0x1b], 0
mov eax, dword [esp + 0x38]
test byte [eax], al
lea ecx, [eax + 0x18]
mov dword [esp + 0x20], ecx
mov dword [esp], ecx
call sym.sync._Mutex_.Lock
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
lea eax, [sym.debug_gosym._LineTable_.parsePclnTab.func4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x24]
mov dword [esp + 0x30], eax
mov byte [esp + 0x1b], 1
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x4c7b41
mov dword [eax + 0x20], 1
lea edx, [0x58fd80]
mov dword [esp + 0x2c], edx
mov byte [esp + 0x1b], 3
cmp dword [eax + 4], 0x10
jl 0x4c6e1b
mov edx, dword [eax]
movzx ebx, byte [edx + 4]
test bl, bl
jne 0x4c6e1b
movzx ebx, byte [edx + 5]
test bl, bl
jne 0x4c6e1b
movzx ebx, byte [edx + 6]
cmp bl, 1
je 0x4c6e0d
cmp bl, 2
je 0x4c6e0d
cmp bl, 4
jne 0x4c6e1b
movzx ebx, byte [edx + 7]
cmp bl, 4
je 0x4c6e36
cmp bl, 8
je 0x4c6e36
mov byte [esp + 0x1b], 1
call sym.debug_gosym._LineTable_.parsePclnTab.func1
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
movzx ebx, byte [edx]
movzx ebp, byte [edx + 1]
mov esi, ebp
shl ebp, 8
or ebp, ebx
movzx edi, byte [edx + 2]
mov ecx, edi
shl edi, 0x10
or edi, ebp
movzx edx, byte [edx + 3]
mov ebp, edx
shl edx, 0x18
or edx, edi
shl ecx, 8
or ebp, ecx
shl esi, 0x10
or esi, ebp
shl ebx, 0x18
nop
nop
or ebx, esi
cmp edx, 0xfffffffb
jne 0x4c6ea0
lea edx, [0x5b833c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6e8d
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 2
jmp 0x4c700c
cmp ebx, 0xfffffffb
jne 0x4c6ed5
lea edx, [0x5b8368]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6ec2
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 2
jmp 0x4c700c
cmp edx, 0xfffffffa
jne 0x4c6f0a
lea edx, [0x5b833c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6ef7
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 3
jmp 0x4c700c
cmp ebx, 0xfffffffa
jne 0x4c6f3f
lea edx, [0x5b8368]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6f2c
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 3
jmp 0x4c700c
cmp edx, 0xfffffff0
jne 0x4c6f74
lea edx, [0x5b833c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6f61
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 4
jmp 0x4c700c
cmp ebx, 0xfffffff0
jne 0x4c6fa6
lea edx, [0x5b8368]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6f96
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 4
jmp 0x4c700c
cmp edx, 0xfffffff1
jne 0x4c6fd8
lea edx, [0x5b833c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6fc8
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 5
jmp 0x4c700c
cmp ebx, 0xfffffff1
jne 0x4c7b26
lea edx, [0x5b8368]
mov dword [eax + 0x24], edx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c6ffe
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6ddda0]
mov dword [eax + 0x28], edx
mov ecx, 5
mov dword [eax + 0x20], ecx
mov edx, dword [eax + 4]
cmp edx, 6
jbe 0x4c7cbb
mov edx, dword [eax]
movzx edx, byte [edx + 6]
mov dword [eax + 0x2c], edx
mov edx, dword [eax + 4]
cmp edx, 7
jbe 0x4c7caf
mov edx, dword [eax]
movzx edx, byte [edx + 7]
mov dword [eax + 0x30], edx
cmp ecx, 2
jne 0x4c7248
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4c7ca5
mov edx, dword [eax]
mov ebx, dword [eax + 8]
mov dword [esp], eax
add ebx, 0xfffffff8
add ecx, 0xfffffff8
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 8
add edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
call sym.debug_gosym._LineTable_.uintptr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 0x6c], eax
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx]
mov dword [ecx + 0x58], eax
mov dword [ecx + 0x5c], edx
mov eax, dword [0x6ddfe0]
test eax, eax
je 0x4c70a9
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov edx, dword [ecx + 0x54]
mov dword [edi + 4], edx
mov dword [ecx + 0x54], ebx
mov edx, dword [ecx + 4]
mov ebx, dword [ecx + 8]
mov ebp, dword [ecx]
mov dword [ecx + 0x40], edx
mov dword [ecx + 0x44], ebx
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c70d1
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebp
mov edx, dword [ecx + 0x3c]
mov dword [edi + 4], edx
mov dword [ecx + 0x3c], ebp
mov edx, dword [ecx + 4]
mov ebx, dword [ecx + 0x30]
lea eax, [ebx + 8]
cmp edx, eax
jb 0x4c7c9e
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
sub esi, ebx
sub edx, ebx
lea ebx, [esi - 8]
add edx, 0xfffffff8
mov dword [ecx + 0x64], edx
mov dword [ecx + 0x68], ebx
mov edx, dword [0x6ddfe0]
neg ebx
sar ebx, 0x1f
and eax, ebx
lea ebx, [ebp + eax]
test edx, edx
je 0x4c711c
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov edx, dword [ecx + 0x60]
mov dword [edi + 4], edx
mov dword [ecx + 0x60], ebx
mov edx, dword [ecx + 4]
mov ebp, dword [ecx + 8]
mov esi, dword [ecx]
mov dword [ecx + 0x80], edx
mov dword [ecx + 0x84], ebp
mov edx, dword [0x6ddfe0]
test edx, edx
je 0x4c714a
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov edx, dword [ecx + 0x7c]
mov dword [edi + 4], edx
mov dword [ecx + 0x7c], esi
cmp dword [ecx + 0x20], 4
jl 0x4c715a
mov edx, 4
jmp 0x4c715d
mov edx, dword [ecx + 0x30]
mov ebp, dword [ecx + 0x6c]
shl ebp, 1
lea eax, [ebp + 1]
imul eax, edx
mov edx, dword [ecx + 0x64]
cmp edx, eax
jb 0x4c7c97
mov dword [esp + 0x1c], eax
mov ebp, dword [ecx + 0x24]
mov esi, dword [ecx + 0x28]
mov ebp, dword [ebp + 0x24]
mov edi, dword [ecx + 0x68]
mov dword [esp], esi
sub edi, eax
sub edx, eax
mov esi, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
add ebx, edi
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
call ebp
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x68]
mov ecx, dword [esp + 0x1c]
cmp edx, ecx
jb 0x4c7c92
mov edx, dword [esp + 0x10]
mov dword [eax + 0x64], ecx
mov ecx, dword [eax + 4]
cmp ecx, edx
jb 0x4c7c8b
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x74], ecx
mov dword [eax + 0x78], ebp
mov esi, dword [0x6ddfe0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edx
lea edx, [ebp + ebx]
test esi, esi
je 0x4c7207
mov ebx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebp, dword [eax + 0x70]
mov dword [edi + 4], ebp
mov edi, ebx
mov dword [eax + 0x70], edx
mov ebx, dword [eax + 0x24]
mov ebp, dword [eax + 0x28]
mov ebx, dword [ebx + 0x24]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edi
call ebx
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov dword [eax + 0x88], ecx
mov edx, dword [eax + 0x78]
shl ecx, 2
cmp edx, ecx
jb 0x4c7c86
mov dword [eax + 0x74], ecx
jmp 0x4c7b0b
cmp ecx, 3
jne 0x4c76aa
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4c7c7c
mov edx, dword [eax]
mov ebx, dword [eax + 8]
mov dword [esp], eax
add ebx, 0xfffffff8
add ecx, 0xfffffff8
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 8
add edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
call sym.debug_gosym._LineTable_.uintptr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 0x6c], eax
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x30]
lea ebx, [edx + 8]
cmp eax, ebx
jb 0x4c7c73
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
mov dword [esp], ecx
sub esi, edx
sub eax, edx
lea edx, [esi - 8]
add eax, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ebp + ebx]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 0x88], eax
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x30]
shl edx, 1
lea ebx, [edx + 8]
cmp eax, ebx
jb 0x4c7c6a
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
mov dword [esp], ecx
sub esi, edx
sub eax, edx
lea edx, [esi - 8]
add eax, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ebp + ebx]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7c63
cmp ecx, edx
jb 0x4c7c5c
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x40], ecx
mov dword [eax + 0x44], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c7377
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x3c]
mov dword [edi + 4], ebx
mov dword [eax + 0x3c], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea ebx, [edx + edx*2 + 8]
lea edx, [edx + edx*2]
cmp ecx, ebx
jb 0x4c7c55
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7c4e
cmp ecx, edx
jb 0x4c7c47
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x4c], ecx
mov dword [eax + 0x50], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c740f
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x48]
mov dword [edi + 4], ebx
mov dword [eax + 0x48], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
shl edx, 2
lea ebx, [edx + 8]
cmp ecx, ebx
jb 0x4c7c40
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7c39
cmp edx, ecx
ja 0x4c7c32
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x74], ecx
mov dword [eax + 0x78], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c74a6
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x70]
mov dword [edi + 4], ebx
mov dword [eax + 0x70], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea ebx, [edx + edx*4 + 8]
lea edx, [edx + edx*4]
cmp ecx, ebx
jb 0x4c7c2b
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7c24
cmp edx, ecx
ja 0x4c7c1d
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x80], ecx
mov dword [eax + 0x84], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c7544
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x7c]
mov dword [edi + 4], ebx
mov dword [eax + 0x7c], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea edx, [edx + edx*2]
shl edx, 1
lea ebx, [edx + 8]
cmp ecx, ebx
jb 0x4c7c16
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7c0f
cmp ecx, edx
jb 0x4c7c08
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x58], ecx
mov dword [eax + 0x5c], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c75dd
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x54]
mov dword [edi + 4], ebx
mov dword [eax + 0x54], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea edx, [edx + edx*2]
shl edx, 1
lea ebx, [edx + 8]
cmp ecx, ebx
jb 0x4c7c01
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7bfa
cmp ecx, edx
jb 0x4c7bf3
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x64], ecx
mov dword [eax + 0x68], ebp
mov esi, dword [0x6ddfe0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add ebx, edx
test esi, esi
je 0x4c767c
mov ecx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [eax + 0x60]
mov dword [edi + 4], ebp
mov edi, ecx
mov dword [eax + 0x60], ebx
cmp dword [eax + 0x20], 4
jl 0x4c768c
mov ebx, 4
jmp 0x4c768f
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x6c]
shl ebp, 1
lea ecx, [ebp + 1]
imul ecx, ebx
cmp ecx, edi
ja 0x4c7bec
mov dword [eax + 0x64], ecx
jmp 0x4c7b0b
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4c7be2
mov edx, dword [eax]
mov ebx, dword [eax + 8]
mov dword [esp], eax
add ebx, 0xfffffff8
add ecx, 0xfffffff8
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 8
add edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
call sym.debug_gosym._LineTable_.uintptr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 0x6c], eax
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x30]
lea ebx, [edx + 8]
cmp eax, ebx
jb 0x4c7bd9
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
mov dword [esp], ecx
sub esi, edx
sub eax, edx
lea edx, [esi - 8]
add eax, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ebp + ebx]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + 0x88], eax
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
mov dword [ecx + 0x34], eax
mov dword [ecx + 0x38], edx
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 0x30]
lea ebx, [edx + edx*2 + 8]
lea edx, [edx + edx*2]
cmp eax, ebx
jb 0x4c7bd0
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
mov dword [esp], ecx
sub esi, edx
sub eax, edx
lea edx, [esi - 8]
add eax, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7bc9
cmp edx, ecx
ja 0x4c7bc2
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x40], ecx
mov dword [eax + 0x44], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c77dc
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x3c]
mov dword [edi + 4], ebx
mov dword [eax + 0x3c], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
shl edx, 2
lea ebx, [edx + 8]
cmp ecx, ebx
jb 0x4c7bbb
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7bb4
cmp edx, ecx
ja 0x4c7bad
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x4c], ecx
mov dword [eax + 0x50], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c7873
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x48]
mov dword [edi + 4], ebx
mov dword [eax + 0x48], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea ebx, [edx + edx*4 + 8]
lea edx, [edx + edx*4]
cmp ecx, ebx
jb 0x4c7ba6
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7b9f
cmp edx, ecx
ja 0x4c7b98
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x74], ecx
mov dword [eax + 0x78], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c790b
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x70]
mov dword [edi + 4], ebx
mov dword [eax + 0x70], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea edx, [edx + edx*2]
shl edx, 1
lea ebx, [edx + 8]
cmp ecx, ebx
jb 0x4c7b91
mov ebp, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7b8a
cmp ecx, edx
jb 0x4c7b83
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x80], ecx
mov dword [eax + 0x84], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c79aa
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x7c]
mov dword [edi + 4], ebx
mov dword [eax + 0x7c], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea ebx, [edx + edx*2]
lea ebp, [edx + ebx*2 + 8]
lea edx, [edx + ebx*2]
cmp ecx, ebp
jb 0x4c7b7c
mov ebx, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub esi, edx
sub ecx, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebp
add edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7b75
cmp ecx, edx
jb 0x4c7b6e
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x58], ecx
mov dword [eax + 0x5c], ebp
mov esi, dword [0x6ddfe0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4c7a45
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [eax + 0x54]
mov dword [edi + 4], ebx
mov dword [eax + 0x54], edx
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
lea ebx, [edx + edx*2]
lea ebp, [edx + ebx*2 + 8]
lea edx, [edx + ebx*2]
cmp ecx, ebp
jb 0x4c7b67
mov ebx, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp], eax
sub ecx, edx
sub esi, edx
lea edx, [esi - 8]
add ecx, 0xfffffff8
mov esi, edx
neg edx
sar edx, 0x1f
and edx, ebp
add edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
call sym.debug_gosym._LineTable_.uintptr
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x10]
test esi, esi
jne 0x4c7b60
cmp ecx, edx
jb 0x4c7b59
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
sub ebp, edx
sub ecx, edx
mov dword [eax + 0x64], ecx
mov dword [eax + 0x68], ebp
mov esi, dword [0x6ddfe0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add ebx, edx
test esi, esi
je 0x4c7ae6
mov ecx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [eax + 0x60]
mov dword [edi + 4], ebp
mov edi, ecx
mov dword [eax + 0x60], ebx
cmp dword [eax + 0x20], 4
jl 0x4c7af6
mov ebx, 4
jmp 0x4c7af9
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x6c]
shl ebp, 1
lea ecx, [ebp + 1]
imul ecx, ebx
cmp ecx, edi
ja 0x4c7b52
mov dword [eax + 0x64], ecx
mov byte [esp + 0x1b], 1
call sym.debug_gosym._LineTable_.parsePclnTab.func1
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
mov byte [esp + 0x1b], 1
call sym.debug_gosym._LineTable_.parsePclnTab.func1
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
mov edx, edi
call sym.runtime.panicSliceAcap
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebp
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebp
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov ecx, eax
mov eax, ebx
call sym.runtime.panicSliceBU
mov ecx, eax
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, 8
call sym.runtime.panicSliceBU
mov edx, edi
call sym.runtime.panicSliceAcap
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicSliceBU
mov eax, edx
call sym.runtime.panicExtendSliceBU
mov ecx, eax
mov eax, ebx
call sym.runtime.panicSliceBU
mov ecx, eax
mov eax, ebx
call sym.runtime.panicSliceBU
mov eax, 8
call sym.runtime.panicSliceBU
call sym.runtime.panicSliceAcapU
mov eax, edx
call sym.runtime.panicSliceBU
call sym.runtime.panicSliceAcap
mov ecx, edx
call sym.runtime.panicSliceB
mov ecx, edx
call sym.runtime.panicSliceBU
mov eax, 8
call sym.runtime.panicSliceB
mov eax, 7
mov ecx, edx
call sym.runtime.panicIndex
mov eax, 6
mov ecx, edx
call sym.runtime.panicIndex
nop
call sym.runtime.deferreturn
add esp, 0x34
ret
call sym.runtime.morestack_noctxt
jmp sym.debug_gosym._LineTable_.parsePclnTab