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

Disassembly:
mov ecx, dword [0x8c8664]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xf4]
cmp eax, dword [ecx + 8]
jbe 0x5c6518
sub esp, 0x174
mov eax, dword [esp + 0x178]
mov ecx, dword [eax + 0xd4]
test ecx, ecx
jne 0x5c6491
lea ecx, [eax + 0x14]
nop
mov dword [esp], ecx
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 0x178]
mov ecx, dword [eax + 0x1a4]
mov edx, dword [eax + 0x1a8]
mov ebx, dword [eax + 0x19c]
mov ebp, ebx
sar ebx, 0x1f
mov esi, dword [esp + 4]
cmp edx, ebx
sete dl
setg bl
cmp ecx, ebp
xchg edi, ebx
setae bl
xchg edi, ebx
and edx, edi
or ebx, edx
test bl, bl
je 0x5c3de1
xor ebp, ebp
jmp 0x5c3de3
sub ebp, ecx
test ebp, ebp
jne 0x5c636f
mov dword [esp + 0x94], esi
mov ecx, dword [0x8c87a0]
lea edi, [eax + 0x198]
mov dword [esp + 0x98], edi
nop
test ecx, ecx
je 0x5c3e31
lea eax, [0x6899a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call sym.runtime.wbZero
mov eax, dword [esp + 0x178]
mov esi, dword [esp + 0x94]
mov edi, dword [esp + 0x98]
xor eax, eax
call fcn.0046c89a
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0x1ac], 0xffffffff
mov edx, dword [ecx + 0x10]
test edx, edx
jne 0x5c624d
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
test edx, edx
je 0x5c3e8b
mov dword [esp + 0x158], ebx
mov eax, dword [edx + 4]
lea ecx, [0x882d60]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x178]
mov ebx, dword [esp + 0x158]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 5
call sym.crypto_tls._Conn_.readFromUntil
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5c4084
mov ecx, dword [esp + 0x14]
cmp dword [0x881e48], eax
je 0x5c3ebf
xor edx, edx
jmp 0x5c3ef2
mov dword [esp + 0x78], eax
mov dword [esp + 0xdc], ecx
mov edx, dword [0x881e4c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xdc]
mov edx, eax
mov eax, dword [esp + 0x78]
test dl, dl
je 0x5c3f19
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0x190]
cmp dword [edx + 0x188], ebx
jne 0x5c3f20
mov eax, dword [0x881e40]
mov ecx, dword [0x881e44]
jmp 0x5c3f20
mov edx, dword [esp + 0x178]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x78], eax
test eax, eax
je 0x5c3f5c
mov ecx, dword [eax + 4]
lea edx, [0x882d70]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x178]
mov ebx, dword [esp + 0x78]
jmp 0x5c3f5e
mov ebx, eax
test eax, eax
jne 0x5c3f69
mov eax, 1
jmp 0x5c3f8b
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x178]
mov ebx, dword [esp + 0x78]
test al, al
je 0x5c406d
nop
test ebx, ebx
je 0x5c3fc7
mov eax, dword [ebx + 4]
lea ecx, [0x882d80]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x178]
mov ebx, eax
mov eax, dword [esp + 0x78]
jmp 0x5c3fc9
mov eax, ebx
test ebx, ebx
jne 0x5c3ff5
mov dword [edx + 0xd4], eax
mov ebx, dword [0x8c87a0]
test ebx, ebx
je 0x5c3fed
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0xd8]
mov dword [edi + 4], ebx
mov dword [edx + 0xd8], ecx
jmp 0x5c406f
mov dword [esp + 0x158], ebx
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4031
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x178]
jmp 0x5c4052
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xdc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ebx, [0x713d70]
mov dword [edx + 0xd4], ebx
mov dword [edx + 0xd8], eax
mov eax, dword [esp + 0x78]
jmp 0x5c406f
mov eax, ebx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov ebx, dword [esp + 0x178]
mov ecx, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
cmp ecx, eax
jb 0x5c6512
mov edx, dword [ebx + 0x18c]
sub edx, eax
mov ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp edx, 5
jb 0x5c6508
mov ecx, dword [ebx + 0x184]
movzx edx, byte [ecx + eax]
mov ebp, dword [esp + 0x94]
test ebp, ebp
jne 0x5c40db
cmp dl, 0x80
je 0x5c609f
movzx esi, word [ebx + 0x28]
movzx edi, word [ecx + eax + 1]
cmp si, 0x304
jne 0x5c4105
mov dword [esp + 0x84], eax
mov eax, 0x303
mov word [esp + 0x2c], ax
mov eax, dword [esp + 0x84]
jmp 0x5c410a
mov word [esp + 0x2c], si
movzx ebp, byte [ebx + 0x2a]
rol di, 8
movzx ecx, word [ecx + eax + 3]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5c43a0
mov eax, ebx
movzx ebx, word [esp + 0x2c]
cmp bx, di
jne 0x5c413c
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5c4574
jmp 0x5c43a2
mov word [esp + 0x2e], di
mov dword [esp], eax
mov byte [esp + 4], 0x46
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0
mov dword [esp + 0x170], 0
movzx eax, word [esp + 0x2e]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x672580]
mov dword [esp + 0x164], ecx
mov dword [esp + 0x168], eax
movzx eax, word [esp + 0x2c]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x672580]
mov dword [esp + 0x16c], ecx
mov dword [esp + 0x170], eax
lea eax, [0x6bf2c0]
mov dword [esp], eax
mov dword [esp + 4], 0x39
lea eax, [esp + 0x164]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.fmt.Sprintf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x110]
mov edx, eax
xor eax, eax
call fcn.0046c89a
mov dword [esp + 0x110], edx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x178]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5c6501
mov ebx, dword [eax + 0x184]
mov ebp, dword [eax + 0x18c]
sub ecx, edx
sub ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
cmp ecx, 5
jl 0x5c4267
mov ecx, 5
lea ebx, [esp + 0x118]
cmp ebx, edx
je 0x5c4282
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x68fc20]
mov dword [esp], eax
lea eax, [esp + 0x110]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x713a78]
mov ecx, dword [esp + 8]
mov dword [esp + 0x154], ecx
lea edx, [0x882da0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c430b
lea eax, [0x713a74]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c42ec
mov eax, dword [esp + 0x154]
jmp 0x5c4303
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x154]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c437f
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4347
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x178]
jmp 0x5c4368
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x154]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov eax, ebx
cmp dl, 0x15
je 0x5c43ac
cmp dl, 0x16
jne 0x5c43b7
cmp di, 0x1000
jb 0x5c4574
mov ecx, dword [eax + 4]
mov dword [esp + 0x144], ecx
mov edx, dword [eax]
lea edi, [esp + 0xf8]
mov ebx, eax
xor eax, eax
call fcn.0046c89a
lea ecx, [0x6bcf78]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xfc], 0x2f
mov dword [esp + 0x108], edx
mov ecx, dword [esp + 0x144]
mov dword [esp + 0x10c], ecx
mov ecx, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
cmp ecx, eax
jb 0x5c64fc
mov edx, dword [ebx + 0x184]
mov ebp, dword [ebx + 0x18c]
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
add eax, edx
cmp ecx, 5
jl 0x5c443b
mov ecx, 5
lea edx, [esp + 0x100]
cmp edx, eax
je 0x5c4456
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x68fc20]
mov dword [esp], eax
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x713a78]
mov ecx, dword [esp + 8]
mov dword [esp + 0x154], ecx
lea edx, [0x882db0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c44df
lea eax, [0x713a74]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c44c0
mov eax, dword [esp + 0x154]
jmp 0x5c44d7
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x154]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c4553
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c451b
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x178]
jmp 0x5c453c
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x154]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
rol cx, 8
movzx ecx, cx
mov dword [esp + 0x90], ecx
cmp si, 0x304
jne 0x5c4596
cmp ecx, 0x4100
jg 0x5c45a2
jmp 0x5c47c6
cmp ecx, 0x4800
jle 0x5c47c6
mov dword [esp], eax
mov byte [esp + 4], 0x16
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x6726c0]
mov dword [esp + 0x15c], ecx
mov dword [esp + 0x160], eax
lea eax, [0x6baa5e]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x15c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call sym.fmt.Sprintf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], ecx
lea edi, [esp + 0xe0]
mov edx, eax
xor eax, eax
call fcn.0046c89a
mov dword [esp + 0xe0], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x178]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5c64f5
mov ebx, dword [eax + 0x184]
mov ebp, dword [eax + 0x18c]
sub ecx, edx
sub ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
cmp ecx, 5
jl 0x5c468d
mov ecx, 5
lea ebx, [esp + 0xe8]
cmp ebx, edx
je 0x5c46a8
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x68fc20]
mov dword [esp], eax
lea eax, [esp + 0xe0]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x713a78]
mov ecx, dword [esp + 8]
mov dword [esp + 0x154], ecx
lea edx, [0x882dc0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c4731
lea eax, [0x713a74]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c4712
mov eax, dword [esp + 0x154]
jmp 0x5c4729
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x154]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c47a5
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c476d
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x178]
jmp 0x5c478e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x154]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov edx, dword [eax]
mov ebx, dword [eax + 4]
test edx, edx
je 0x5c4804
mov dword [esp + 0x158], ebx
mov eax, dword [edx + 4]
lea ecx, [0x882dd0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esp + 0x158]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
add ecx, 5
mov dword [esp + 0x8c], ecx
mov dword [esp + 0xc], ecx
call sym.crypto_tls._Conn_.readFromUntil
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x5c4986
mov dword [esp + 0xd8], ecx
mov dword [esp + 0x74], eax
je 0x5c4865
mov ecx, dword [eax + 4]
lea edx, [0x882de0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x74]
jmp 0x5c4867
mov edx, eax
test eax, eax
jne 0x5c4872
mov eax, 1
jmp 0x5c488d
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x74]
test al, al
je 0x5c496f
nop
test edx, edx
je 0x5c48c2
mov eax, dword [edx + 4]
lea ecx, [0x882df0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xd8]
mov edx, eax
mov eax, dword [esp + 0x74]
jmp 0x5c48c4
mov eax, edx
test edx, edx
jne 0x5c48f7
mov edx, dword [esp + 0x178]
mov dword [edx + 0xd4], eax
mov ebx, dword [0x8c87a0]
test ebx, ebx
je 0x5c48ef
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0xd8]
mov dword [edi + 4], ebx
mov dword [edx + 0xd8], ecx
jmp 0x5c4971
mov dword [esp + 0x158], edx
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4933
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x178]
jmp 0x5c4954
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ebx, [0x713d70]
mov dword [edx + 0xd4], ebx
mov dword [edx + 0xd8], eax
mov eax, dword [esp + 0x74]
jmp 0x5c4971
mov eax, edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
nop
mov ebx, dword [esp + 0x178]
mov byte [ebx + 0x194], 0
mov ebp, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
sub ebp, eax
nop
mov esi, dword [esp + 0x8c]
cmp ebp, esi
jl 0x5c49b1
mov ebp, esi
lea ecx, [ebp + eax]
mov edx, dword [ebx + 0x18c]
cmp edx, ecx
jb 0x5c64f0
cmp eax, ecx
ja 0x5c64eb
sub edx, eax
mov esi, edx
neg edx
sar edx, 0x1f
and eax, edx
mov edx, dword [ebx + 0x184]
mov dword [ebx + 0x190], ecx
add eax, edx
test ebp, ebp
jle 0x5c49ef
mov byte [ebx + 0x194], 0xff
lea ecx, [ebx + 0xcc]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call sym.crypto_tls._halfConn_.decrypt
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test eax, eax
je 0x5c4b4c
lea ecx, [0x713d48]
cmp eax, ecx
jne 0x5c64cf
mov eax, dword [esp + 0x24]
movzx eax, byte [eax]
mov ecx, dword [esp + 0x178]
mov dword [esp], ecx
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xd4], ecx
test eax, eax
je 0x5c4a82
mov dword [esp + 0x70], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e00]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0x70]
jmp 0x5c4a84
mov edx, eax
test eax, eax
jne 0x5c4ab7
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c4aaf
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c4b2b
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4af3
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0x178]
jmp 0x5c4b14
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov ebx, dword [esp + 0x14]
cmp ebx, 0x4000
jg 0x5c5f84
mov ebp, dword [esp + 0x178]
mov esi, dword [ebp + 0xe0]
movzx eax, byte [esp + 0x1c]
test esi, esi
jne 0x5c4b7b
cmp al, 0x17
je 0x5c5e70
cmp al, 0x15
je 0x5c4b93
cmp al, 0x14
je 0x5c4b93
test ebx, ebx
je 0x5c4b93
mov dword [ebp + 0x1e4], 0
movzx esi, word [ebp + 0x28]
cmp si, 0x304
jne 0x5c4cd7
cmp al, 0x16
je 0x5c59f7
mov edi, dword [ebp + 0x1b4]
sub edi, dword [ebp + 0x1bc]
test edi, edi
jg 0x5c4bc3
cmp al, 0x15
jmp 0x5c4cda
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
test eax, eax
je 0x5c4c0d
mov dword [esp + 0x64], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e30]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0x64]
jmp 0x5c4c0f
mov edx, eax
test eax, eax
jne 0x5c4c42
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c4c3a
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c4cb6
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4c7e
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0x178]
jmp 0x5c4c9f
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
cmp al, 0x15
ja 0x5c59ee
cmp al, 0x14
jne 0x5c52ab
cmp ebx, 1
jne 0x5c4cf7
cmp byte [ecx], 1
je 0x5c4e0b
mov dword [esp], ebp
mov byte [esp + 4], 0x32
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb0], ecx
test eax, eax
je 0x5c4d41
mov dword [esp + 0x4c], eax
mov ecx, dword [eax + 4]
lea edx, [0x882eb0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x4c]
jmp 0x5c4d43
mov edx, eax
test eax, eax
jne 0x5c4d76
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c4d6e
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c4dea
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4db2
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x178]
jmp 0x5c4dd3
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov eax, dword [ebp + 0x1b4]
sub eax, dword [ebp + 0x1bc]
test eax, eax
jg 0x5c5197
cmp si, 0x304
je 0x5c5166
movzx eax, byte [esp + 0x17c]
test al, al
je 0x5c5052
mov eax, dword [ebp + 0x108]
test eax, eax
je 0x5c4f12
cmp word [ebp + 0xdc], 0x304
je 0x5c4f12
mov ecx, dword [ebp + 0x10c]
mov dword [ebp + 0xe0], eax
mov eax, dword [0x8c87a0]
test eax, eax
je 0x5c4e7d
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0xe4]
mov dword [edi + 4], eax
mov dword [ebp + 0xe4], ecx
mov eax, dword [ebp + 0x110]
mov ecx, dword [ebp + 0x114]
mov dword [ebp + 0xe8], eax
mov eax, dword [0x8c87a0]
test eax, eax
je 0x5c4ec1
call sym.runtime.gcWriteBarrier4
mov dword [edi], ecx
mov eax, dword [ebp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10c]
mov dword [edi + 8], eax
mov eax, dword [ebp + 0x114]
mov dword [edi + 0xc], eax
mov dword [ebp + 0xec], ecx
mov dword [ebp + 0x108], 0
mov dword [ebp + 0x10c], 0
mov dword [ebp + 0x110], 0
mov dword [ebp + 0x114], 0
lea eax, [ebp + 0xf0]
mov dword [esp], eax
mov dword [esp + 4], 8
call sym.runtime.memclrNoHeapPointers
mov ebp, dword [esp + 0x178]
xor ecx, ecx
xor eax, eax
jmp 0x5c4f26
mov eax, 0x50
lea ecx, [0x862de0]
lea eax, [ecx + eax*8]
lea ecx, [0x713d48]
test ecx, ecx
je 0x5c5c00
lea edx, [0x713d48]
cmp ecx, edx
jne 0x5c64b3
movzx eax, byte [eax]
mov dword [esp], ebp
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa4], ecx
test eax, eax
je 0x5c4f88
mov dword [esp + 0x40], eax
mov ecx, dword [eax + 4]
lea edx, [0x882ee0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x40]
jmp 0x5c4f8a
mov edx, eax
test eax, eax
jne 0x5c4fbd
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c4fb5
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5031
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c4ff9
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x178]
jmp 0x5c501a
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa8], ecx
test eax, eax
je 0x5c509c
mov dword [esp + 0x44], eax
mov ecx, dword [eax + 4]
lea edx, [0x882ed0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x44]
jmp 0x5c509e
mov edx, eax
test eax, eax
jne 0x5c50d1
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c50c9
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5145
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c510d
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x178]
jmp 0x5c512e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x17c]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xac], ecx
test eax, eax
je 0x5c51e1
mov dword [esp + 0x48], eax
mov ecx, dword [eax + 4]
lea edx, [0x882ec0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x48]
jmp 0x5c51e3
mov edx, eax
test eax, eax
jne 0x5c5216
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c520e
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c528a
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5252
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x178]
jmp 0x5c5273
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xac]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
cmp al, 0x15
jne 0x5c5d5c
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x5c58da
cmp ebx, 2
jne 0x5c57c6
movzx eax, byte [ecx + 1]
test al, al
jne 0x5c53df
mov eax, dword [0x881e40]
mov ecx, dword [0x881e44]
mov dword [esp + 0xb8], ecx
test eax, eax
je 0x5c531c
mov dword [esp + 0x54], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e70]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0x178]
jmp 0x5c531e
mov edx, eax
test eax, eax
jne 0x5c534a
mov dword [ebp + 0xd4], edx
mov eax, dword [0x8c87a0]
test eax, eax
je 0x5c5342
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0xd8]
mov dword [edi + 4], eax
mov dword [ebp + 0xd8], ecx
jmp 0x5c53be
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5386
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x178]
jmp 0x5c53a7
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ebp, edx
mov eax, dword [ebp + 0xd4]
mov ecx, dword [ebp + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov byte [esp + 0x2b], al
cmp si, 0x304
je 0x5c5687
movzx ecx, byte [ecx]
cmp cl, 1
je 0x5c5656
cmp cl, 2
jne 0x5c5542
lea eax, [0x692220]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x150], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6ae9af]
mov dword [eax], ecx
lea ecx, [0x713d48]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x862de0]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
mov ecx, dword [0x713988]
lea edx, [0x882e90]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c54ad
lea eax, [0x713984]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c548e
mov eax, dword [esp + 0x150]
jmp 0x5c54a5
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c5521
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c54e9
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x178]
jmp 0x5c550a
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb4], ecx
test eax, eax
je 0x5c558c
mov dword [esp + 0x50], eax
mov ecx, dword [eax + 4]
lea edx, [0x882ea0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x50]
jmp 0x5c558e
mov edx, eax
test eax, eax
jne 0x5c55c1
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c55b9
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5635
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c55fd
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x178]
jmp 0x5c561e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x17c]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
lea eax, [0x692220]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x150], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6ae9af]
mov dword [eax], ecx
lea ecx, [0x713d48]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x862de0]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
mov ecx, dword [0x713988]
lea edx, [0x882e80]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c5731
lea eax, [0x713984]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c5712
mov eax, dword [esp + 0x150]
jmp 0x5c5729
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c57a5
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c576d
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x178]
jmp 0x5c578e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xbc], ecx
test eax, eax
je 0x5c5810
mov dword [esp + 0x58], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e60]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x58]
jmp 0x5c5812
mov edx, eax
test eax, eax
jne 0x5c5845
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c583d
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c58b9
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5881
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x178]
jmp 0x5c58a2
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xbc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc0], ecx
test eax, eax
je 0x5c5924
mov dword [esp + 0x5c], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e50]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0x5c]
jmp 0x5c5926
mov edx, eax
test eax, eax
jne 0x5c5959
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c5951
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c59cd
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5995
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0x178]
jmp 0x5c59b6
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
cmp al, 0x16
jne 0x5c5b3e
test ebx, ebx
je 0x5c5a0b
movzx eax, byte [esp + 0x17c]
test al, al
je 0x5c5b1f
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
test eax, eax
je 0x5c5a55
mov dword [esp + 0x38], eax
mov ecx, dword [eax + 4]
lea edx, [0x882f00]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x38]
jmp 0x5c5a57
mov edx, eax
test eax, eax
jne 0x5c5a8a
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c5a82
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5afe
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5ac6
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x178]
jmp 0x5c5ae7
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x9c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
lea eax, [ebp + 0x1b0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
call sym.bytes._Buffer_.Write
jmp 0x5c5c00
cmp al, 0x17
jne 0x5c5d5c
mov esi, dword [esp + 0x94]
test esi, esi
je 0x5c5c48
movzx esi, byte [esp + 0x17c]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x5c5c48
test ebx, ebx
je 0x5c5c1d
mov dword [esp + 0x140], ecx
mov esi, dword [0x8c87a0]
nop
test esi, esi
je 0x5c5bcf
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], ebx
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0x198]
mov dword [edi + 4], eax
lea eax, [0x6899a0]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
call sym.runtime.wbZero
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x178]
mov edi, dword [esp + 0x98]
xor eax, eax
call fcn.0046c89a
mov ecx, dword [esp + 0x140]
mov dword [ebp + 0x198], ecx
mov dword [ebp + 0x19c], ebx
mov dword [ebp + 0x1a0], edx
mov dword [ebp + 0x1ac], 0xffffffff
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x174
ret
mov dword [esp], ebp
xchg esi, eax
mov byte [esp + 4], al
xchg esi, eax
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa0], ecx
test eax, eax
je 0x5c5c92
mov dword [esp + 0x3c], eax
mov ecx, dword [eax + 4]
lea edx, [0x882ef0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x3c]
jmp 0x5c5c94
mov edx, eax
test eax, eax
jne 0x5c5cc7
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c5cbf
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5d3b
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5d03
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x178]
jmp 0x5c5d24
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc4], ecx
test eax, eax
je 0x5c5da6
mov dword [esp + 0x60], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e40]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc4]
mov edx, dword [esp + 0x60]
jmp 0x5c5da8
mov edx, eax
test eax, eax
jne 0x5c5ddb
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c5dd3
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5e4f
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5e17
mov ecx, dword [esp + 0xc4]
mov edx, dword [esp + 0x178]
jmp 0x5c5e38
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xcc], ecx
test eax, eax
je 0x5c5eba
mov dword [esp + 0x68], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e20]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x68]
jmp 0x5c5ebc
mov edx, eax
test eax, eax
jne 0x5c5eef
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c5ee7
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c5f63
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c5f2b
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x178]
jmp 0x5c5f4c
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xcc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov eax, dword [esp + 0x178]
mov dword [esp], eax
mov byte [esp + 4], 0x16
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xd0], ecx
test eax, eax
je 0x5c5fd5
mov dword [esp + 0x6c], eax
mov ecx, dword [eax + 4]
lea edx, [0x882e10]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x6c]
jmp 0x5c5fd7
mov edx, eax
test eax, eax
jne 0x5c600a
mov eax, dword [esp + 0x178]
mov dword [eax + 0xd4], edx
mov edx, dword [0x8c87a0]
test edx, edx
je 0x5c6002
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 0xd8], ecx
jmp 0x5c607e
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c6046
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x178]
jmp 0x5c6067
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov eax, edx
mov ecx, dword [eax + 0xd4]
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call sym.crypto_tls._Conn_.sendAlert
lea edi, [esp + 0x128]
xor eax, eax
call fcn.0046c89a
lea eax, [0x6b912c]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 0x24
mov eax, dword [esp + 0x178]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5c64ac
mov ebx, dword [eax + 0x184]
mov ebp, dword [eax + 0x18c]
sub ecx, edx
sub ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, ebx
cmp ecx, 5
jl 0x5c6114
mov ecx, 5
lea ebx, [esp + 0x130]
cmp ebx, edx
je 0x5c612f
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x68fc20]
mov dword [esp], eax
lea eax, [esp + 0x128]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x713a78]
mov ecx, dword [esp + 8]
mov dword [esp + 0x154], ecx
lea edx, [0x882d90]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c61b8
lea eax, [0x713a74]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c6199
mov eax, dword [esp + 0x154]
jmp 0x5c61b0
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x154]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c622c
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c61f4
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x178]
jmp 0x5c6215
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x154]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x14c], eax
mov dword [eax + 4], 0x41
lea ecx, [0x6c00ba]
mov dword [eax], ecx
mov ecx, dword [0x713834]
lea edx, [0x882d50]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c62da
lea eax, [0x713830]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c62bb
mov eax, dword [esp + 0x14c]
jmp 0x5c62d2
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x14c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c634e
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c6316
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x178]
jmp 0x5c6337
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x14c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x148], eax
mov dword [eax + 4], 0x4b
lea ecx, [0x6c0d92]
mov dword [eax], ecx
mov ecx, dword [0x713834]
lea edx, [0x882d40]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5c63fc
lea eax, [0x713830]
mov ecx, dword [esp + 0x178]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8c87a0]
test eax, eax
jne 0x5c63dd
mov eax, dword [esp + 0x148]
jmp 0x5c63f4
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x148]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5c6470
mov dword [esp + 0x158], eax
lea eax, [0x67cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x158]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x5c6438
mov ecx, dword [esp + 0x148]
mov edx, dword [esp + 0x178]
jmp 0x5c6459
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x148]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x178]
mov ebx, dword [edx + 0xd8]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x713d70]
mov dword [edx + 0xd4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x174
ret
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], eax
add esp, 0x174
ret
mov eax, edx
call sym.runtime.panicSliceB
mov eax, dword [0x713d4c]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x67b340]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeI
mov ecx, dword [0x713d4c]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x67b340]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeI
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
mov eax, edx
call sym.runtime.panicSliceB
call sym.runtime.panicSliceB
mov eax, edx
call sym.runtime.panicSliceB
mov ecx, 5
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceB
nop
call sym.runtime.morestack_noctxt
jmp sym.crypto_tls._Conn_.readRecordOrCCS