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

Disassembly:
mov ecx, dword [0x8e25d4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x120]
cmp eax, dword [ecx + 8]
jbe 0x5d78ea
sub esp, 0x1a0
mov eax, dword [esp + 0x1a4]
mov ecx, dword [eax + 0xd4]
test ecx, ecx
jne 0x5d7863
lea ecx, [eax + 0x14]
nop
mov dword [esp], ecx
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 0x1a4]
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 0x5d4f21
xor ebp, ebp
jmp 0x5d4f23
sub ebp, ecx
test ebp, ebp
jne 0x5d7724
mov dword [esp + 0x50], esi
mov ecx, dword [0x8e2900]
lea edi, [eax + 0x198]
mov dword [esp + 0x5c], edi
nop
test ecx, ecx
je 0x5d4f65
lea eax, [0x69dc20]
mov dword [esp], eax
mov dword [esp + 4], edi
call sym.runtime.wbZero
mov eax, dword [esp + 0x1a4]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x5c]
xor eax, eax
call fcn.00468b1a
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0x1ac], 0xffffffff
mov edx, dword [ecx + 0x10]
test edx, edx
je 0x5d50c7
lea eax, [0x6916c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x124], eax
mov dword [eax + 4], 0x41
lea ecx, [0x6d6c4c]
mov dword [eax], ecx
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739240]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d501c
lea eax, [0x739240]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d4ffa
mov eax, dword [esp + 0x124]
jmp 0x5d5011
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x124]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d50a6
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x100], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5060
mov ecx, dword [esp + 0x100]
jmp 0x5d506e
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x100]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d509e
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [ecx + 4]
mov dword [esp + 0x120], eax
mov edx, dword [ecx]
lea ebx, [0x68f460]
mov dword [esp], ebx
mov dword [esp + 4], edx
call sym.runtime.convI2I
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1a4]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call sym.crypto_tls._Conn_.readFromUntil
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x5d52fb
mov edx, dword [esp + 0x10]
cmp dword [0x8b2968], edx
je 0x5d512f
xor edx, edx
jmp 0x5d5166
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [0x8b296c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xa0]
mov edx, eax
mov eax, dword [esp + 0x3c]
test dl, dl
je 0x5d518b
mov edx, dword [esp + 0x1a4]
mov ebx, dword [edx + 0x190]
cmp dword [edx + 0x188], ebx
jne 0x5d518b
mov eax, dword [0x8b2960]
mov ecx, dword [0x8b2964]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x3c], eax
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d51bb
mov eax, 1
jmp 0x5d51cf
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x5d51e3
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0xa0]
jmp 0x5d52e6
nop
lea eax, [0x698e00]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d5253
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov edx, dword [0x8e2900]
test edx, edx
jne 0x5d5231
mov edx, dword [esp + 0xa0]
jmp 0x5d5248
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0xa0]
mov dword [edi], edx
mov ebx, dword [ecx + 0xd8]
mov dword [edi + 4], ebx
mov dword [ecx + 0xd8], edx
jmp 0x5d52e6
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xfc], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5297
mov ecx, dword [esp + 0xfc]
jmp 0x5d52a5
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xfc]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d52d5
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], edx
add esp, 0x1a0
ret
mov ebx, dword [esp + 0x1a4]
mov ecx, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
cmp ecx, eax
jb 0x5d78e4
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 0x5d78da
mov ecx, dword [ebx + 0x184]
movzx edx, byte [ecx + eax]
mov ebp, dword [esp + 0x50]
test ebp, ebp
jne 0x5d534f
cmp dl, 0x80
je 0x5d755d
movzx esi, word [ebx + 0x28]
movzx edi, word [ecx + eax + 1]
cmp si, 0x304
jne 0x5d5373
mov dword [esp + 0x54], eax
mov eax, 0x303
mov word [esp + 0x2c], ax
mov eax, dword [esp + 0x54]
jmp 0x5d5378
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 0x5d5627
mov eax, ebx
movzx ebx, word [esp + 0x2c]
cmp bx, di
jne 0x5d53aa
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5d5814
jmp 0x5d5629
mov word [esp + 0x2e], di
mov dword [esp], eax
mov byte [esp + 4], 0x46
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0
movzx eax, word [esp + 0x2e]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x686ba0]
mov dword [esp + 0x130], ecx
mov dword [esp + 0x134], eax
movzx eax, word [esp + 0x2c]
mov word [esp], ax
call sym.runtime.convT16
mov eax, dword [esp + 4]
lea ecx, [0x686ba0]
mov dword [esp + 0x138], ecx
mov dword [esp + 0x13c], eax
lea eax, [0x6d5ddb]
mov dword [esp], eax
mov dword [esp + 4], 0x39
lea eax, [esp + 0x130]
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 + 0x170]
mov edx, eax
xor eax, eax
call fcn.00468b1a
mov dword [esp + 0x170], edx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0x1a4]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5d78d3
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 0x5d54d5
mov ecx, 5
lea ebx, [esp + 0x178]
cmp ebx, edx
je 0x5d54f0
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6a4d20]
mov dword [esp], eax
lea eax, [esp + 0x170]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [esp + 8]
mov dword [esp + 0x11c], eax
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739470]
mov dword [esp + 4], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d557c
lea eax, [0x739470]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d555a
mov eax, dword [esp + 0x11c]
jmp 0x5d5571
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x11c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d5606
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xf4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d55c0
mov ecx, dword [esp + 0xf4]
jmp 0x5d55ce
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xf4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d55fe
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, ebx
cmp dl, 0x15
je 0x5d5633
cmp dl, 0x16
jne 0x5d563e
cmp di, 0x1000
jb 0x5d5814
mov ecx, dword [eax + 4]
mov dword [esp + 0x10c], ecx
mov edx, dword [eax]
lea edi, [esp + 0x158]
mov ebx, eax
xor eax, eax
call fcn.00468b1a
lea ecx, [0x6d38e5]
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], 0x2f
mov dword [esp + 0x168], edx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0x16c], ecx
mov ecx, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
cmp eax, ecx
ja 0x5d78ce
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 0x5d56c2
mov ecx, 5
lea edx, [esp + 0x160]
cmp edx, eax
je 0x5d56dd
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6a4d20]
mov dword [esp], eax
lea eax, [esp + 0x158]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [esp + 8]
mov dword [esp + 0x11c], eax
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739470]
mov dword [esp + 4], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d5769
lea eax, [0x739470]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d5747
mov eax, dword [esp + 0x11c]
jmp 0x5d575e
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x11c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d57f3
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xf0], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d57ad
mov ecx, dword [esp + 0xf0]
jmp 0x5d57bb
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xf0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d57eb
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
rol cx, 8
movzx ecx, cx
mov dword [esp + 0x4c], ecx
cmp si, 0x304
jne 0x5d5833
cmp ecx, 0x4100
jg 0x5d583f
jmp 0x5d5a79
cmp ecx, 0x4800
jle 0x5d5a79
mov dword [esp], eax
mov byte [esp + 4], 0x16
call sym.crypto_tls._Conn_.sendAlert
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x6868a0]
mov dword [esp + 0x128], ecx
mov dword [esp + 0x12c], eax
lea eax, [0x6d130a]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x128]
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 + 0x140]
mov edx, eax
xor eax, eax
call fcn.00468b1a
mov dword [esp + 0x140], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x144], eax
mov eax, dword [esp + 0x1a4]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5d78c7
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 0x5d5927
mov ecx, 5
lea ebx, [esp + 0x148]
cmp ebx, edx
je 0x5d5942
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6a4d20]
mov dword [esp], eax
lea eax, [esp + 0x140]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [esp + 8]
mov dword [esp + 0x11c], eax
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739470]
mov dword [esp + 4], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d59ce
lea eax, [0x739470]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d59ac
mov eax, dword [esp + 0x11c]
jmp 0x5d59c3
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x11c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d5a58
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xec], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5a12
mov ecx, dword [esp + 0xec]
jmp 0x5d5a20
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xec]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d5a50
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov ecx, dword [eax + 4]
mov dword [esp + 0x120], ecx
mov edx, dword [eax]
lea ebx, [0x68f460]
mov dword [esp], ebx
mov dword [esp + 4], edx
call sym.runtime.convI2I
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1a4]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
add eax, 5
mov dword [esp + 0x48], eax
mov dword [esp + 0xc], eax
call sym.crypto_tls._Conn_.readFromUntil
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x5d73d6
nop
mov ebx, dword [esp + 0x1a4]
mov byte [ebx + 0x194], 0
mov ebp, dword [ebx + 0x188]
mov eax, dword [ebx + 0x190]
sub ebp, eax
nop
mov esi, dword [esp + 0x48]
cmp ebp, esi
jl 0x5d5afc
mov ebp, esi
lea ecx, [ebp + eax]
mov edx, dword [ebx + 0x18c]
cmp edx, ecx
jb 0x5d78c2
cmp eax, ecx
ja 0x5d78bd
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 0x5d5b3a
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 0x5d5cbc
mov eax, dword [esp + 0x20]
lea ecx, [0x739868]
cmp eax, ecx
jne 0x5d78a1
mov eax, dword [esp + 0x24]
movzx eax, byte [eax]
mov ecx, dword [esp + 0x1a4]
mov dword [esp], ecx
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x98], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d5c11
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d5bef
mov eax, dword [esp + 0x98]
jmp 0x5d5c06
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x98]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d5c9b
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xe4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5c55
mov ecx, dword [esp + 0xe4]
jmp 0x5d5c63
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xe4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d5c93
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov ebx, dword [esp + 0x14]
cmp ebx, 0x4000
jg 0x5d729a
mov ebp, dword [esp + 0x1a4]
mov esi, dword [ebp + 0xe0]
movzx eax, byte [esp + 0x1c]
test esi, esi
jne 0x5d5ceb
cmp al, 0x17
je 0x5d7165
cmp al, 0x15
je 0x5d5d03
cmp al, 0x14
je 0x5d5d03
test ebx, ebx
je 0x5d5d03
mov dword [ebp + 0x1e4], 0
movzx esi, word [ebp + 0x28]
cmp si, 0x304
jne 0x5d5e68
cmp al, 0x16
je 0x5d6caa
mov edi, dword [ebp + 0x1b4]
sub edi, dword [ebp + 0x1bc]
test edi, edi
jg 0x5d5d33
cmp al, 0x15
jmp 0x5d5e6b
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x8c], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d5dbd
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d5d9b
mov eax, dword [esp + 0x8c]
jmp 0x5d5db2
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x8c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d5e47
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xd8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5e01
mov ecx, dword [esp + 0xd8]
jmp 0x5d5e0f
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xd8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d5e3f
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
cmp al, 0x15
ja 0x5d6ca1
cmp al, 0x14
jne 0x5d64b8
cmp ebx, 1
jne 0x5d5e88
cmp byte [ecx], 1
je 0x5d5fb4
mov dword [esp], ebp
mov byte [esp + 4], 0x32
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x74], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d5f09
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d5eea
mov eax, dword [esp + 0x74]
jmp 0x5d5efe
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d5f93
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d5f4d
mov ecx, dword [esp + 0xb8]
jmp 0x5d5f5b
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xb8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d5f8b
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [ebp + 0x1b4]
sub eax, dword [ebp + 0x1bc]
test eax, eax
jg 0x5d638c
cmp si, 0x304
je 0x5d635b
movzx eax, byte [esp + 0x1a8]
test al, al
je 0x5d622f
mov eax, dword [ebp + 0x108]
test eax, eax
je 0x5d60d7
cmp word [ebp + 0xdc], 0x304
je 0x5d60d7
mov ecx, dword [ebp + 0x10c]
mov dword [ebp + 0xe0], eax
mov eax, dword [0x8e2900]
test eax, eax
je 0x5d6026
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 [0x8e2900]
test eax, eax
je 0x5d6058
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0xec]
mov dword [edi + 4], eax
mov dword [ebp + 0xec], ecx
mov dword [ebp + 0x108], 0
mov eax, dword [0x8e2900]
test eax, eax
je 0x5d607f
mov eax, dword [ebp + 0x10c]
call sym.runtime.gcWriteBarrier1
mov dword [edi], eax
mov dword [ebp + 0x10c], 0
mov dword [ebp + 0x110], 0
mov eax, dword [0x8e2900]
test eax, eax
je 0x5d60aa
mov eax, dword [ebp + 0x114]
call sym.runtime.gcWriteBarrier1
mov dword [edi], eax
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 + 0x1a4]
xor ecx, ecx
xor eax, eax
jmp 0x5d60eb
mov eax, 0x50
lea ecx, [0x893880]
lea eax, [ecx + eax*8]
lea ecx, [0x739868]
test ecx, ecx
je 0x5d6ebc
lea edx, [0x739868]
cmp ecx, edx
jne 0x5d7885
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 dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x68], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d6184
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6165
mov eax, dword [esp + 0x68]
jmp 0x5d6179
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x68]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d620e
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xac], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d61c8
mov ecx, dword [esp + 0xac]
jmp 0x5d61d6
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xac]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6206
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x6c], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d62b0
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6291
mov eax, dword [esp + 0x6c]
jmp 0x5d62a5
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x6c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d633a
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb0], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d62f4
mov ecx, dword [esp + 0xb0]
jmp 0x5d6302
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xb0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6332
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x1a8]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x70], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d640d
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d63ee
mov eax, dword [esp + 0x70]
jmp 0x5d6402
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x70]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6497
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6451
mov ecx, dword [esp + 0xb4]
jmp 0x5d645f
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xb4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d648f
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
cmp al, 0x15
jne 0x5d7030
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x5d6b6c
cmp ebx, 2
jne 0x5d6a37
movzx eax, byte [ecx + 1]
test al, al
je 0x5d691a
mov byte [esp + 0x2b], al
cmp si, 0x304
je 0x5d67be
movzx ecx, byte [ecx]
cmp cl, 1
je 0x5d678d
cmp cl, 2
jne 0x5d6661
lea eax, [0x6a7220]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x118], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6c395d]
mov dword [eax], ecx
lea ecx, [0x739868]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x893880]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x7393d0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d65b6
lea eax, [0x7393d0]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6594
mov eax, dword [esp + 0x118]
jmp 0x5d65ab
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x118]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6640
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc0], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d65fa
mov ecx, dword [esp + 0xc0]
jmp 0x5d6608
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xc0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6638
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x78], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d66e2
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d66c3
mov eax, dword [esp + 0x78]
jmp 0x5d66d7
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x78]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d676c
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xbc], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6726
mov ecx, dword [esp + 0xbc]
jmp 0x5d6734
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xbc]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6764
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
movzx eax, byte [esp + 0x1a8]
mov byte [esp + 4], al
call sym.crypto_tls._Conn_.retryReadRecord
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
lea eax, [0x6a7220]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x118], eax
mov dword [eax + 4], 0xc
lea ecx, [0x6c395d]
mov dword [eax], ecx
lea ecx, [0x739868]
mov dword [eax + 0x20], ecx
movzx ecx, byte [esp + 0x2b]
movzx ecx, cl
lea edx, [0x893880]
lea ecx, [edx + ecx*8]
mov dword [eax + 0x24], ecx
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x7393d0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d686f
lea eax, [0x7393d0]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d684d
mov eax, dword [esp + 0x118]
jmp 0x5d6864
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x118]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d68f9
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d68b3
mov ecx, dword [esp + 0xc4]
jmp 0x5d68c1
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xc4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d68f1
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [0x8b2964]
mov dword [esp + 0x7c], eax
mov ecx, dword [0x8b2960]
mov dword [esp + 0x38], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d698c
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d696d
mov eax, dword [esp + 0x7c]
jmp 0x5d6981
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x7c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6a16
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d69d0
mov ecx, dword [esp + 0xc8]
jmp 0x5d69de
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xc8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6a0e
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x80], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d6ac1
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6a9f
mov eax, dword [esp + 0x80]
jmp 0x5d6ab6
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x80]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6b4b
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6b05
mov ecx, dword [esp + 0xcc]
jmp 0x5d6b13
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xcc]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6b43
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d6bf6
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6bd4
mov eax, dword [esp + 0x84]
jmp 0x5d6beb
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6c80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xd0], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6c3a
mov ecx, dword [esp + 0xd0]
jmp 0x5d6c48
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xd0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6c78
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
cmp al, 0x16
jne 0x5d6e09
test ebx, ebx
je 0x5d6cbe
movzx eax, byte [esp + 0x1a8]
test al, al
je 0x5d6dea
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x60], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d6d3f
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6d20
mov eax, dword [esp + 0x60]
jmp 0x5d6d34
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d6dc9
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6d83
mov ecx, dword [esp + 0xa4]
jmp 0x5d6d91
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xa4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d6dc1
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
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 0x5d6ebc
cmp al, 0x17
jne 0x5d7030
mov esi, dword [esp + 0x50]
test esi, esi
je 0x5d6f04
movzx esi, byte [esp + 0x1a8]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x5d6f04
test ebx, ebx
je 0x5d6ed9
mov dword [esp + 0x108], ecx
mov esi, dword [0x8e2900]
nop
test esi, esi
je 0x5d6e8e
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], edx
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebp + 0x198]
mov dword [edi + 4], eax
lea eax, [0x69dc20]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
call sym.runtime.wbZero
mov ecx, dword [esp + 0x108]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x1a4]
mov edi, dword [esp + 0x5c]
xor eax, eax
call fcn.00468b1a
mov ecx, dword [esp + 0x108]
mov dword [ebp + 0x198], ecx
mov dword [ebp + 0x19c], ebx
mov dword [ebp + 0x1a0], edx
mov dword [ebp + 0x1ac], 0xffffffff
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1b0], 0
add esp, 0x1a0
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 + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x64], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d6f85
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d6f66
mov eax, dword [esp + 0x64]
jmp 0x5d6f7a
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x64]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d700f
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d6fc9
mov ecx, dword [esp + 0xa8]
jmp 0x5d6fd7
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xa8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d7007
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x88], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d70ba
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d7098
mov eax, dword [esp + 0x88]
jmp 0x5d70af
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x88]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d7144
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xd4], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d70fe
mov ecx, dword [esp + 0xd4]
jmp 0x5d710c
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xd4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d713c
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov dword [esp], ebp
mov byte [esp + 4], 0xa
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x90], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d71ef
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d71cd
mov eax, dword [esp + 0x90]
jmp 0x5d71e4
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x90]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d7279
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xdc], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d7233
mov ecx, dword [esp + 0xdc]
jmp 0x5d7241
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xdc]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d7271
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [esp + 0x1a4]
mov dword [esp], eax
mov byte [esp + 4], 0x16
call sym.crypto_tls._Conn_.sendAlert
mov eax, dword [esp + 8]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x94], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d732b
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d7309
mov eax, dword [esp + 0x94]
jmp 0x5d7320
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x94]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d73b5
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xe0], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d736f
mov ecx, dword [esp + 0xe0]
jmp 0x5d737d
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xe0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d73ad
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [esp + 0x10]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x9c], ecx
lea edx, [0x698e00]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d7411
mov eax, 1
jmp 0x5d7425
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x5d743c
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x9c]
jmp 0x5d7548
nop
lea eax, [0x698e00]
mov dword [esp], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x9c]
mov dword [esp + 8], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d74b2
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov edx, dword [0x8e2900]
test edx, edx
jne 0x5d7490
mov edx, dword [esp + 0x9c]
jmp 0x5d74a7
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0x9c]
mov dword [edi], edx
mov ebx, dword [ecx + 0xd8]
mov dword [edi + 4], ebx
mov dword [ecx + 0xd8], edx
jmp 0x5d7548
mov eax, dword [esp + 0xc]
mov dword [esp + 0x114], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xe8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d74f6
mov ecx, dword [esp + 0xe8]
jmp 0x5d7504
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xe8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d7534
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov eax, dword [esp + 0x120]
mov edx, dword [esp + 0x9c]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], edx
add esp, 0x1a0
ret
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call sym.crypto_tls._Conn_.sendAlert
lea edi, [esp + 0x188]
xor eax, eax
call fcn.00468b1a
lea eax, [0x6cf885]
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], 0x24
mov eax, dword [esp + 0x1a4]
mov ecx, dword [eax + 0x188]
mov edx, dword [eax + 0x190]
cmp ecx, edx
jb 0x5d787e
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 0x5d75d2
mov ecx, 5
lea ebx, [esp + 0x190]
cmp ebx, edx
je 0x5d75ed
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
lea eax, [0x6a4d20]
mov dword [esp], eax
lea eax, [esp + 0x188]
mov dword [esp + 4], eax
call sym.runtime.convT
mov eax, dword [esp + 8]
mov dword [esp + 0x11c], eax
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739470]
mov dword [esp + 4], ecx
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d7679
lea eax, [0x739470]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d7657
mov eax, dword [esp + 0x11c]
jmp 0x5d766e
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x11c]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d7703
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xf8], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d76bd
mov ecx, dword [esp + 0xf8]
jmp 0x5d76cb
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xf8]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d76fb
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
lea eax, [0x6916c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x110], eax
mov dword [eax + 4], 0x4b
lea ecx, [0x6d79af]
mov dword [eax], ecx
lea ecx, [0x698e00]
mov dword [esp], ecx
lea ecx, [0x739240]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.assertI2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x5d77b8
lea eax, [0x739240]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0xd4], eax
mov eax, dword [0x8e2900]
test eax, eax
jne 0x5d7796
mov eax, dword [esp + 0x110]
jmp 0x5d77ad
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x110]
mov dword [edi], eax
mov edx, dword [ecx + 0xd8]
mov dword [edi + 4], edx
mov dword [ecx + 0xd8], eax
jmp 0x5d7842
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x104], ecx
lea edx, [0x6918a0]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x120]
mov dword [eax], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
jne 0x5d77fc
mov ecx, dword [esp + 0x104]
jmp 0x5d780a
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x104]
mov dword [edi], ecx
mov dword [eax + 4], ecx
lea ecx, [0x739890]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0xd4], ecx
mov ecx, dword [0x8e2900]
test ecx, ecx
je 0x5d783a
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xd8]
mov dword [edi + 4], ecx
mov dword [edx + 0xd8], eax
mov ecx, edx
mov eax, dword [ecx + 0xd4]
mov ecx, dword [ecx + 0xd8]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
add esp, 0x1a0
ret
mov eax, dword [eax + 0xd8]
mov dword [esp + 0x1ac], ecx
mov dword [esp + 0x1b0], eax
add esp, 0x1a0
ret
mov eax, edx
call sym.runtime.panicSliceB
mov eax, dword [0x73986c]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x68fee0]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeI
mov ecx, dword [0x73986c]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x68fee0]
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