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

Disassembly:
mov ecx, dword [0x65260c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a793f
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 + 0x28], ecx
mov dword [esp], ecx
call sym.sync._Mutex_.Lock
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
lea eax, [sym.debug_gosym._LineTable_.parsePclnTab.deferwrap1]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x20]
mov dword [esp + 0x2c], eax
mov byte [esp + 0x1b], 1
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x4a77af
mov dword [eax + 0x20], 1
lea edx, [0x53ec5c]
mov dword [esp + 0x30], edx
mov byte [esp + 0x1b], 3
cmp dword [eax + 4], 0x10
jl 0x4a6a8b
mov edx, dword [eax]
movzx ebx, byte [edx + 4]
test bl, bl
jne 0x4a6a8b
movzx ebx, byte [edx + 5]
test bl, bl
jne 0x4a6a8b
movzx ebx, byte [edx + 6]
cmp bl, 1
je 0x4a6a7d
cmp bl, 2
je 0x4a6a7d
cmp bl, 4
jne 0x4a6a8b
movzx ebx, byte [edx + 7]
cmp bl, 4
je 0x4a6aa6
cmp bl, 8
je 0x4a6aa6
mov byte [esp + 0x1b], 1
call sym.debug_gosym._LineTable_.parsePclnTab.func1
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x2c]
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 0x4a6b10
lea edx, [0x55ee0c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6afd
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 2
jmp 0x4a6c7c
cmp ebx, 0xfffffffb
jne 0x4a6b45
lea edx, [0x55ee38]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6b32
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 2
jmp 0x4a6c7c
cmp edx, 0xfffffffa
jne 0x4a6b7a
lea edx, [0x55ee0c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6b67
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 3
jmp 0x4a6c7c
cmp ebx, 0xfffffffa
jne 0x4a6baf
lea edx, [0x55ee38]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6b9c
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 3
jmp 0x4a6c7c
cmp edx, 0xfffffff0
jne 0x4a6be4
lea edx, [0x55ee0c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6bd1
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 4
jmp 0x4a6c7c
cmp ebx, 0xfffffff0
jne 0x4a6c16
lea edx, [0x55ee38]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6c06
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 4
jmp 0x4a6c7c
cmp edx, 0xfffffff1
jne 0x4a6c48
lea edx, [0x55ee0c]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6c38
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 5
jmp 0x4a6c7c
cmp ebx, 0xfffffff1
jne 0x4a7794
lea edx, [0x55ee38]
mov dword [eax + 0x24], edx
mov edx, dword [0x6526b0]
test edx, edx
je 0x4a6c6e
mov edx, dword [eax + 0x28]
call sym.runtime.gcWriteBarrier1
mov dword [edi], edx
lea edx, [0x6524e0]
mov dword [eax + 0x28], edx
mov ecx, 5
mov dword [eax + 0x20], ecx
mov edx, dword [eax + 4]
cmp edx, 6
jbe 0x4a7929
mov edx, dword [eax]
movzx edx, byte [edx + 6]
mov dword [eax + 0x2c], edx
mov edx, dword [eax + 4]
cmp edx, 7
jbe 0x4a791d
mov edx, dword [eax]
movzx edx, byte [edx + 7]
mov dword [eax + 0x30], edx
cmp ecx, 2
jne 0x4a6eb6
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4a7913
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 [0x6526b0]
test eax, eax
je 0x4a6d19
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 [0x6526b0]
test edx, edx
je 0x4a6d41
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 0x4a790c
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 [0x6526b0]
neg ebx
sar ebx, 0x1f
and eax, ebx
lea ebx, [ebp + eax]
test edx, edx
je 0x4a6d8c
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 [0x6526b0]
test edx, edx
je 0x4a6dba
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 0x4a6dca
mov edx, 4
jmp 0x4a6dcd
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 0x4a7905
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 0x4a7900
mov edx, dword [esp + 0x10]
mov dword [eax + 0x64], ecx
mov ecx, dword [eax + 4]
cmp ecx, edx
jb 0x4a78f9
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 [0x6526b0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a6e75
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 0x4a78f4
mov dword [eax + 0x74], ecx
jmp 0x4a7779
cmp ecx, 3
jne 0x4a7318
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4a78ea
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 0x4a78e1
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 0x4a78d8
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 0x4a78d1
cmp edx, ecx
ja 0x4a78ca
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a6fe5
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 0x4a78c3
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 0x4a78bc
cmp edx, ecx
ja 0x4a78b5
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a707d
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 0x4a78ae
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 0x4a78a7
cmp edx, ecx
ja 0x4a78a0
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a7114
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 0x4a7899
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 0x4a7892
cmp edx, ecx
ja 0x4a788b
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a71b2
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 0x4a7884
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 0x4a787d
cmp edx, ecx
ja 0x4a7876
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a724b
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 0x4a786f
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 0x4a7868
cmp edx, ecx
ja 0x4a7861
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 [0x6526b0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add ebx, edx
test esi, esi
je 0x4a72ea
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 0x4a72fa
mov ebx, 4
jmp 0x4a72fd
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x6c]
shl ebp, 1
lea ecx, [ebp + 1]
imul ecx, ebx
cmp ecx, edi
ja 0x4a785a
mov dword [eax + 0x64], ecx
jmp 0x4a7779
mov ecx, dword [eax + 4]
cmp ecx, 8
jb 0x4a7850
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 0x4a7847
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 0x4a783e
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 0x4a7837
cmp edx, ecx
ja 0x4a7830
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a744a
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 0x4a7829
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 0x4a7822
cmp edx, ecx
ja 0x4a781b
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a74e1
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 0x4a7814
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 0x4a780d
cmp edx, ecx
ja 0x4a7806
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a7579
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 0x4a77ff
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 0x4a77f8
cmp edx, ecx
ja 0x4a77f1
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a7618
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 0x4a77ea
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 0x4a77e3
cmp edx, ecx
ja 0x4a77dc
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 [0x6526b0]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
test esi, esi
je 0x4a76b3
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 0x4a77d5
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 0x4a77ce
cmp edx, ecx
ja 0x4a77c7
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 [0x6526b0]
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add ebx, edx
test esi, esi
je 0x4a7754
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 0x4a7764
mov ebx, 4
jmp 0x4a7767
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x6c]
shl ebp, 1
lea ecx, [ebp + 1]
imul ecx, ebx
cmp ecx, edi
ja 0x4a77c0
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 + 0x2c]
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 + 0x2c]
mov eax, dword [edx]
call eax
add esp, 0x34
ret
mov byte [esp + 0x1b], 0
mov edx, dword [esp + 0x2c]
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