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

Disassembly:
mov ecx, dword [0x92707c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xf0]
cmp eax, dword [ecx + 8]
jbe 0x5f4f88
sub esp, 0x170
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0xdc]
test ecx, ecx
jne 0x5f4f01
lea ecx, [eax + 0x14]
nop
mov dword [esp], ecx
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x1ac]
mov edx, dword [eax + 0x1b0]
mov ebx, dword [eax + 0x1a4]
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 0x5f2851
xor ebp, ebp
jmp 0x5f2853
sub ebp, ecx
test ebp, ebp
jne 0x5f4ddf
mov dword [esp + 0x94], esi
mov ecx, dword [0x927358]
lea edi, [eax + 0x1a0]
mov dword [esp + 0x98], edi
nop
test ecx, ecx
je 0x5f28a1
lea eax, [0x6caee0]
mov dword [esp], eax
mov dword [esp + 4], edi
call sym.runtime.wbZero
mov eax, dword [esp + 0x174]
mov esi, dword [esp + 0x94]
mov edi, dword [esp + 0x98]
xor eax, eax
call fcn.00471faa
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0x1b4], 0xffffffff
mov edx, dword [ecx + 0x10]
test edx, edx
jne 0x5f4cbd
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
test edx, edx
je 0x5f28fb
mov dword [esp + 0x154], ebx
mov eax, dword [edx + 4]
lea ecx, [0x8fce80]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x174]
mov ebx, dword [esp + 0x154]
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 0x5f2af4
mov ecx, dword [esp + 0x14]
cmp dword [0x8fbe28], eax
je 0x5f292f
xor edx, edx
jmp 0x5f2962
mov dword [esp + 0x78], eax
mov dword [esp + 0xdc], ecx
mov edx, dword [0x8fbe2c]
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 0x5f2989
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0x198]
cmp dword [edx + 0x190], ebx
jne 0x5f2990
mov eax, dword [0x8fbe20]
mov ecx, dword [0x8fbe24]
jmp 0x5f2990
mov edx, dword [esp + 0x174]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x78], eax
test eax, eax
je 0x5f29cc
mov ecx, dword [eax + 4]
lea edx, [0x8fce90]
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 + 0x174]
mov ebx, dword [esp + 0x78]
jmp 0x5f29ce
mov ebx, eax
test eax, eax
jne 0x5f29d9
mov eax, 1
jmp 0x5f29fb
mov eax, dword [eax + 0x10]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x174]
mov ebx, dword [esp + 0x78]
test al, al
je 0x5f2add
nop
test ebx, ebx
je 0x5f2a37
mov eax, dword [ebx + 4]
lea ecx, [0x8fcea0]
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 + 0x174]
mov ebx, eax
mov eax, dword [esp + 0x78]
jmp 0x5f2a39
mov eax, ebx
test ebx, ebx
jne 0x5f2a65
mov dword [edx + 0xdc], eax
mov ebx, dword [0x927358]
test ebx, ebx
je 0x5f2a5d
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0xe0]
mov dword [edi + 4], ebx
mov dword [edx + 0xe0], ecx
jmp 0x5f2adf
mov dword [esp + 0x154], ebx
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f2aa1
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x174]
jmp 0x5f2ac2
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xdc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ebx, [0x765730]
mov dword [edx + 0xdc], ebx
mov dword [edx + 0xe0], eax
mov eax, dword [esp + 0x78]
jmp 0x5f2adf
mov eax, ebx
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
mov ebx, dword [esp + 0x174]
mov ecx, dword [ebx + 0x190]
mov eax, dword [ebx + 0x198]
cmp ecx, eax
jb 0x5f4f82
mov edx, dword [ebx + 0x194]
sub edx, eax
mov ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp edx, 5
jb 0x5f4f78
mov ecx, dword [ebx + 0x18c]
movzx edx, byte [ecx + eax]
mov ebp, dword [esp + 0x94]
test ebp, ebp
jne 0x5f2b4b
cmp dl, 0x80
je 0x5f4b0f
movzx esi, word [ebx + 0x28]
movzx edi, word [ecx + eax + 1]
cmp si, 0x304
jne 0x5f2b75
mov dword [esp + 0x84], eax
mov eax, 0x303
mov word [esp + 0x2c], ax
mov eax, dword [esp + 0x84]
jmp 0x5f2b7a
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 0x5f2e10
mov eax, ebx
movzx ebx, word [esp + 0x2c]
cmp bx, di
jne 0x5f2bac
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5f2fe4
jmp 0x5f2e12
mov word [esp + 0x2e], di
mov dword [esp], eax
mov byte [esp + 4], 0x46
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0
movzx eax, word [esp + 0x2e]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x6b21a0]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], eax
movzx eax, word [esp + 0x2c]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x6b21a0]
mov dword [esp + 0x168], ecx
mov dword [esp + 0x16c], eax
lea eax, [0x709257]
mov dword [esp], eax
mov dword [esp + 4], 0x39
lea eax, [esp + 0x160]
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.00471faa
mov dword [esp + 0x110], edx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x190]
mov edx, dword [eax + 0x198]
cmp ecx, edx
jb 0x5f4f71
mov ebx, dword [eax + 0x18c]
mov ebp, dword [eax + 0x194]
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 0x5f2cd7
mov ecx, 5
lea ebx, [esp + 0x118]
cmp ebx, edx
je 0x5f2cf2
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6d4880]
mov dword [esp], eax
lea eax, [esp + 0x110]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x765454]
mov ecx, dword [esp + 8]
mov dword [esp + 0x150], ecx
lea edx, [0x8fcec0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f2d7b
lea eax, [0x765450]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f2d5c
mov eax, dword [esp + 0x150]
jmp 0x5f2d73
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f2def
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f2db7
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x174]
jmp 0x5f2dd8
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
mov eax, ebx
cmp dl, 0x15
je 0x5f2e1c
cmp dl, 0x16
jne 0x5f2e27
cmp di, 0x1000
jb 0x5f2fe4
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.00471faa
lea ecx, [0x706b3f]
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 + 0x190]
mov eax, dword [ebx + 0x198]
cmp ecx, eax
jb 0x5f4f6c
mov edx, dword [ebx + 0x18c]
mov ebp, dword [ebx + 0x194]
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 0x5f2eab
mov ecx, 5
lea edx, [esp + 0x100]
cmp edx, eax
je 0x5f2ec6
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6d4880]
mov dword [esp], eax
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x765454]
mov ecx, dword [esp + 8]
mov dword [esp + 0x150], ecx
lea edx, [0x8fced0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f2f4f
lea eax, [0x765450]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f2f30
mov eax, dword [esp + 0x150]
jmp 0x5f2f47
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f2fc3
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f2f8b
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x174]
jmp 0x5f2fac
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
rol cx, 8
movzx ecx, cx
mov dword [esp + 0x90], ecx
cmp si, 0x304
jne 0x5f3006
cmp ecx, 0x4100
jg 0x5f3012
jmp 0x5f3236
cmp ecx, 0x4800
jle 0x5f3236
mov dword [esp], eax
mov byte [esp + 4], 0x16
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x6b22e0]
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], eax
lea eax, [0x7044a7]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x158]
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.00471faa
mov dword [esp + 0xe0], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x190]
mov edx, dword [eax + 0x198]
cmp ecx, edx
jb 0x5f4f65
mov ebx, dword [eax + 0x18c]
mov ebp, dword [eax + 0x194]
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 0x5f30fd
mov ecx, 5
lea ebx, [esp + 0xe8]
cmp ebx, edx
je 0x5f3118
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6d4880]
mov dword [esp], eax
lea eax, [esp + 0xe0]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x765454]
mov ecx, dword [esp + 8]
mov dword [esp + 0x150], ecx
lea edx, [0x8fcee0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f31a1
lea eax, [0x765450]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f3182
mov eax, dword [esp + 0x150]
jmp 0x5f3199
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f3215
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f31dd
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x174]
jmp 0x5f31fe
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
mov edx, dword [eax]
mov ebx, dword [eax + 4]
test edx, edx
je 0x5f3274
mov dword [esp + 0x154], ebx
mov eax, dword [edx + 4]
lea ecx, [0x8fcef0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esp + 0x154]
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 0x5f33f6
mov dword [esp + 0xd8], ecx
mov dword [esp + 0x74], eax
je 0x5f32d5
mov ecx, dword [eax + 4]
lea edx, [0x8fcf00]
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 0x5f32d7
mov edx, eax
test eax, eax
jne 0x5f32e2
mov eax, 1
jmp 0x5f32fd
mov eax, dword [eax + 0x10]
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 0x5f33df
nop
test edx, edx
je 0x5f3332
mov eax, dword [edx + 4]
lea ecx, [0x8fcf10]
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 0x5f3334
mov eax, edx
test edx, edx
jne 0x5f3367
mov edx, dword [esp + 0x174]
mov dword [edx + 0xdc], eax
mov ebx, dword [0x927358]
test ebx, ebx
je 0x5f335f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [edx + 0xe0]
mov dword [edi + 4], ebx
mov dword [edx + 0xe0], ecx
jmp 0x5f33e1
mov dword [esp + 0x154], edx
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f33a3
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x174]
jmp 0x5f33c4
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ebx, [0x765730]
mov dword [edx + 0xdc], ebx
mov dword [edx + 0xe0], eax
mov eax, dword [esp + 0x74]
jmp 0x5f33e1
mov eax, edx
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
nop
mov ebx, dword [esp + 0x174]
mov byte [ebx + 0x19c], 0
mov ebp, dword [ebx + 0x190]
mov eax, dword [ebx + 0x198]
sub ebp, eax
nop
mov esi, dword [esp + 0x8c]
cmp ebp, esi
jl 0x5f3421
mov ebp, esi
lea ecx, [ebp + eax]
mov edx, dword [ebx + 0x194]
cmp edx, ecx
jb 0x5f4f60
cmp eax, ecx
ja 0x5f4f5b
sub edx, eax
mov esi, edx
neg edx
sar edx, 0x1f
and eax, edx
mov edx, dword [ebx + 0x18c]
mov dword [ebx + 0x198], ecx
add eax, edx
test ebp, ebp
jle 0x5f345f
mov byte [ebx + 0x19c], 0xff
lea ecx, [ebx + 0xd4]
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 0x5f35bc
lea ecx, [0x765710]
cmp eax, ecx
jne 0x5f4f3f
mov eax, dword [esp + 0x24]
movzx eax, byte [eax]
mov ecx, dword [esp + 0x174]
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 0x5f34f2
mov dword [esp + 0x70], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf20]
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 0x5f34f4
mov edx, eax
test eax, eax
jne 0x5f3527
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f351f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f359b
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3563
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0x174]
jmp 0x5f3584
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov ebx, dword [esp + 0x14]
cmp ebx, 0x4000
jg 0x5f49f4
mov ebp, dword [esp + 0x174]
mov esi, dword [ebp + 0xe8]
movzx eax, byte [esp + 0x1c]
test esi, esi
jne 0x5f35eb
cmp al, 0x17
je 0x5f48e0
cmp al, 0x15
je 0x5f3603
cmp al, 0x14
je 0x5f3603
test ebx, ebx
je 0x5f3603
mov dword [ebp + 0x1ec], 0
movzx esi, word [ebp + 0x28]
cmp si, 0x304
jne 0x5f3747
cmp al, 0x16
je 0x5f4467
mov edi, dword [ebp + 0x1bc]
sub edi, dword [ebp + 0x1c4]
test edi, edi
jg 0x5f3633
cmp al, 0x15
jmp 0x5f374a
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 0x5f367d
mov dword [esp + 0x64], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf50]
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 0x5f367f
mov edx, eax
test eax, eax
jne 0x5f36b2
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f36aa
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f3726
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f36ee
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0x174]
jmp 0x5f370f
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
cmp al, 0x15
ja 0x5f445e
cmp al, 0x14
jne 0x5f3d1b
cmp ebx, 1
jne 0x5f3767
cmp byte [ecx], 1
je 0x5f387b
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 0x5f37b1
mov dword [esp + 0x4c], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcfd0]
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 0x5f37b3
mov edx, eax
test eax, eax
jne 0x5f37e6
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f37de
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f385a
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3822
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x174]
jmp 0x5f3843
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov eax, dword [ebp + 0x1bc]
sub eax, dword [ebp + 0x1c4]
test eax, eax
jg 0x5f3c07
cmp si, 0x304
je 0x5f3bd6
movzx eax, byte [esp + 0x178]
test al, al
je 0x5f3ac2
mov eax, dword [ebp + 0x110]
test eax, eax
je 0x5f3982
cmp word [ebp + 0xe4], 0x304
je 0x5f3982
mov ecx, dword [ebp + 0x114]
mov dword [ebp + 0xe8], eax
mov eax, dword [0x927358]
test eax, eax
je 0x5f38ed
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0xec]
mov dword [edi + 4], eax
mov dword [ebp + 0xec], ecx
mov eax, dword [ebp + 0x118]
mov ecx, dword [ebp + 0x11c]
mov dword [ebp + 0xf0], eax
mov eax, dword [0x927358]
test eax, eax
je 0x5f3931
call sym.runtime.gcWriteBarrier4
mov dword [edi], ecx
mov eax, dword [ebp + 0xf4]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x114]
mov dword [edi + 8], eax
mov eax, dword [ebp + 0x11c]
mov dword [edi + 0xc], eax
mov dword [ebp + 0xf4], ecx
mov dword [ebp + 0x110], 0
mov dword [ebp + 0x114], 0
mov dword [ebp + 0x118], 0
mov dword [ebp + 0x11c], 0
lea eax, [ebp + 0xf8]
mov dword [esp], eax
mov dword [esp + 4], 8
call sym.runtime.memclrNoHeapPointers
mov ebp, dword [esp + 0x174]
xor ecx, ecx
xor eax, eax
jmp 0x5f3996
mov eax, 0x50
lea ecx, [0x8db760]
lea eax, [ecx + eax*8]
lea ecx, [0x765710]
test ecx, ecx
je 0x5f4670
lea edx, [0x765710]
cmp ecx, edx
jne 0x5f4f23
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 0x5f39f8
mov dword [esp + 0x40], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fd000]
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 0x5f39fa
mov edx, eax
test eax, eax
jne 0x5f3a2d
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f3a25
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f3aa1
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3a69
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x174]
jmp 0x5f3a8a
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
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 0x5f3b0c
mov dword [esp + 0x44], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcff0]
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 0x5f3b0e
mov edx, eax
test eax, eax
jne 0x5f3b41
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f3b39
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f3bb5
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3b7d
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x174]
jmp 0x5f3b9e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x178]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
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 0x5f3c51
mov dword [esp + 0x48], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcfe0]
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 0x5f3c53
mov edx, eax
test eax, eax
jne 0x5f3c86
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f3c7e
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f3cfa
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3cc2
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x174]
jmp 0x5f3ce3
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xac]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
cmp al, 0x15
jne 0x5f47cc
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x5f434a
cmp ebx, 2
jne 0x5f4236
movzx eax, byte [ecx + 1]
test al, al
jne 0x5f3e4f
mov eax, dword [0x8fbe20]
mov ecx, dword [0x8fbe24]
mov dword [esp + 0xb8], ecx
test eax, eax
je 0x5f3d8c
mov dword [esp + 0x54], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf90]
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 + 0x174]
jmp 0x5f3d8e
mov edx, eax
test eax, eax
jne 0x5f3dba
mov dword [ebp + 0xdc], edx
mov eax, dword [0x927358]
test eax, eax
je 0x5f3db2
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0xe0]
mov dword [edi + 4], eax
mov dword [ebp + 0xe0], ecx
jmp 0x5f3e2e
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3df6
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x174]
jmp 0x5f3e17
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ebp, edx
mov eax, dword [ebp + 0xdc]
mov ecx, dword [ebp + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
mov byte [esp + 0x2b], al
cmp si, 0x304
je 0x5f40f7
movzx ecx, byte [ecx]
cmp cl, 1
je 0x5f40c6
cmp cl, 2
jne 0x5f3fb2
lea eax, [0x6d7480]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x14c], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6f6521]
mov dword [eax], ecx
lea ecx, [0x765710]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x8db760]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
mov ecx, dword [0x7653a4]
lea edx, [0x8fcfb0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f3f1d
lea eax, [0x7653a0]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f3efe
mov eax, dword [esp + 0x14c]
jmp 0x5f3f15
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x14c]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f3f91
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f3f59
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x174]
jmp 0x5f3f7a
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x14c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
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 0x5f3ffc
mov dword [esp + 0x50], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcfc0]
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 0x5f3ffe
mov edx, eax
test eax, eax
jne 0x5f4031
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f4029
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f40a5
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f406d
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x174]
jmp 0x5f408e
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xb4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x178]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
lea eax, [0x6d7480]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x14c], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6f6521]
mov dword [eax], ecx
lea ecx, [0x765710]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x8db760]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
mov ecx, dword [0x7653a4]
lea edx, [0x8fcfa0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f41a1
lea eax, [0x7653a0]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f4182
mov eax, dword [esp + 0x14c]
jmp 0x5f4199
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x14c]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f4215
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f41dd
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x174]
jmp 0x5f41fe
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x14c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
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 0x5f4280
mov dword [esp + 0x58], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf80]
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 0x5f4282
mov edx, eax
test eax, eax
jne 0x5f42b5
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f42ad
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f4329
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f42f1
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x174]
jmp 0x5f4312
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xbc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
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 0x5f4394
mov dword [esp + 0x5c], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf70]
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 0x5f4396
mov edx, eax
test eax, eax
jne 0x5f43c9
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f43c1
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f443d
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4405
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0x174]
jmp 0x5f4426
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
cmp al, 0x16
jne 0x5f45ae
test ebx, ebx
je 0x5f447b
movzx eax, byte [esp + 0x178]
test al, al
je 0x5f458f
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 0x5f44c5
mov dword [esp + 0x38], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fd020]
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 0x5f44c7
mov edx, eax
test eax, eax
jne 0x5f44fa
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f44f2
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f456e
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4536
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x174]
jmp 0x5f4557
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x9c]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
lea eax, [ebp + 0x1b8]
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 0x5f4670
cmp al, 0x17
jne 0x5f47cc
mov esi, dword [esp + 0x94]
test esi, esi
je 0x5f46b8
movzx esi, byte [esp + 0x178]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x5f46b8
test ebx, ebx
je 0x5f468d
mov dword [esp + 0x140], ecx
mov esi, dword [0x927358]
nop
test esi, esi
je 0x5f463f
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], ebx
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0x1a0]
mov dword [edi + 4], eax
lea eax, [0x6caee0]
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 + 0x174]
mov edi, dword [esp + 0x98]
xor eax, eax
call fcn.00471faa
mov ecx, dword [esp + 0x140]
mov dword [ebp + 0x1a0], ecx
mov dword [ebp + 0x1a4], ebx
mov dword [ebp + 0x1a8], edx
mov dword [ebp + 0x1b4], 0xffffffff
mov dword [esp + 0x17c], 0
mov dword [esp + 0x180], 0
add esp, 0x170
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 + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
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 0x5f4702
mov dword [esp + 0x3c], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fd010]
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 0x5f4704
mov edx, eax
test eax, eax
jne 0x5f4737
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f472f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f47ab
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4773
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x174]
jmp 0x5f4794
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xa0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
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 0x5f4816
mov dword [esp + 0x60], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf60]
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 0x5f4818
mov edx, eax
test eax, eax
jne 0x5f484b
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f4843
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f48bf
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4887
mov ecx, dword [esp + 0xc4]
mov edx, dword [esp + 0x174]
jmp 0x5f48a8
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xc4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
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 0x5f492a
mov dword [esp + 0x68], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf40]
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 0x5f492c
mov edx, eax
test eax, eax
jne 0x5f495f
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f4957
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f49d3
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f499b
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x174]
jmp 0x5f49bc
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xcc]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov eax, dword [esp + 0x174]
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 0x5f4a45
mov dword [esp + 0x6c], eax
mov ecx, dword [eax + 4]
lea edx, [0x8fcf30]
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 0x5f4a47
mov edx, eax
test eax, eax
jne 0x5f4a7a
mov eax, dword [esp + 0x174]
mov dword [eax + 0xdc], edx
mov edx, dword [0x927358]
test edx, edx
je 0x5f4a72
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov edx, dword [eax + 0xe0]
mov dword [edi + 4], edx
mov dword [eax + 0xe0], ecx
jmp 0x5f4aee
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4ab6
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x174]
jmp 0x5f4ad7
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0xd0]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov eax, edx
mov ecx, dword [eax + 0xdc]
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
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.00471faa
lea eax, [0x702a9e]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 0x24
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x190]
mov edx, dword [eax + 0x198]
cmp ecx, edx
jb 0x5f4f1c
mov ebx, dword [eax + 0x18c]
mov ebp, dword [eax + 0x194]
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 0x5f4b84
mov ecx, 5
lea ebx, [esp + 0x130]
cmp ebx, edx
je 0x5f4b9f
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6d4880]
mov dword [esp], eax
lea eax, [esp + 0x128]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [0x765454]
mov ecx, dword [esp + 8]
mov dword [esp + 0x150], ecx
lea edx, [0x8fceb0]
mov dword [esp], edx
mov dword [esp + 4], eax
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f4c28
lea eax, [0x765450]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f4c09
mov eax, dword [esp + 0x150]
jmp 0x5f4c20
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x150]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f4c9c
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4c64
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x174]
jmp 0x5f4c85
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x150]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
lea eax, [0x6bde80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x148], eax
mov dword [eax + 4], 0x41
lea ecx, [0x70a1b8]
mov dword [eax], ecx
mov ecx, dword [0x7651c8]
lea edx, [0x8fce70]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f4d4a
lea eax, [0x7651c4]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f4d2b
mov eax, dword [esp + 0x148]
jmp 0x5f4d42
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x148]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f4dbe
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4d86
mov ecx, dword [esp + 0x148]
mov edx, dword [esp + 0x174]
jmp 0x5f4da7
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x148]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
lea eax, [0x6bde80]
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, [0x70afa9]
mov dword [eax], ecx
mov ecx, dword [0x7651c8]
lea edx, [0x8fce60]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.typeAssert
mov eax, dword [esp + 8]
test eax, eax
jne 0x5f4e6c
lea eax, [0x7651c4]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x927358]
test eax, eax
jne 0x5f4e4d
mov eax, dword [esp + 0x148]
jmp 0x5f4e64
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x148]
mov dword [edi], eax
mov edx, dword [ecx + 0xe0]
mov dword [edi + 4], edx
mov dword [ecx + 0xe0], eax
jmp 0x5f4ee0
mov dword [esp + 0x154], eax
lea eax, [0x6be3c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x154]
mov dword [eax], ecx
mov ecx, dword [0x927358]
test ecx, ecx
jne 0x5f4ea8
mov ecx, dword [esp + 0x148]
mov edx, dword [esp + 0x174]
jmp 0x5f4ec9
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x148]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0x174]
mov ebx, dword [edx + 0xe0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
lea ecx, [0x765730]
mov dword [edx + 0xdc], ecx
mov dword [edx + 0xe0], eax
mov ecx, edx
mov eax, dword [ecx + 0xdc]
mov ecx, dword [ecx + 0xe0]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
add esp, 0x170
ret
mov eax, dword [eax + 0xe0]
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x180], eax
add esp, 0x170
ret
mov eax, edx
call sym.runtime.panicSliceB
mov eax, dword [0x765714]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x6bc360]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeI
mov ecx, dword [0x765714]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x6bc360]
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