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

Disassembly:
mov ecx, dword [0x911770]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x134]
cmp eax, dword [ecx + 8]
jbe 0x5f8d27
sub esp, 0x1b4
lea edi, [esp + 0x9c]
xor eax, eax
call fcn.00471f15
mov ecx, dword [esp + 0x1b8]
mov edx, dword [ecx + 0x44]
test edx, edx
je 0x5f5e87
nop
mov word [esp + 0x4e], 0
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x5f5e43
mov edx, dword [esp + 0xb4]
test edx, edx
jne 0x5f8d0e
mov edx, dword [esp + 0xa8]
add edx, 2
cmp edx, 2
jge 0x5f5d64
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0xb0]
test dl, dl
je 0x5f5dc4
mov edx, dword [esp + 0xa8]
add edx, 2
lea ebx, [esp + 0x9c]
cmp dword [ebx + 0x10], edx
jge 0x5f5dc4
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f5e43
mov edx, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xa4]
cmp edx, ebp
jae 0x5f5e25
mov dword [esp + 0x94], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x94]
movzx edi, word [esp + 0x4e]
mov word [esi + ebx], di
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], edx
mov dword [esp + 0xa4], esi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func1]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x1ac]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x1b8]
mov edx, dword [ecx + 0x5c]
test edx, edx
je 0x5f6058
movzx edx, byte [esp + 0x1bc]
test dl, dl
jne 0x5f6060
nop
mov word [esp + 0x4c], 0
mov byte [esp + 0x4d], 0xb
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f600a
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8cf6
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f5f22
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f5f85
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f5f85
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f600a
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov edi, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f5fec
mov dword [esp + 0x94], ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx eax, word [esp + 0x4c]
mov word [edi + ebp], ax
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], edi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func2]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x1a4]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f6060
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [ecx + 0x64]
test bl, bl
je 0x5f6228
test dl, dl
jne 0x5f6228
nop
mov word [esp + 0x4a], 0
mov byte [esp + 0x4b], 0x23
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f61dc
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8cde
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f60f4
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f6157
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f6157
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f61dc
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov edi, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f61be
mov dword [esp + 0x94], ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx eax, word [esp + 0x4a]
mov word [edi + ebp], ax
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], edi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func3]
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x19c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [ecx + 0x8c]
test bl, bl
je 0x5f63ee
test dl, dl
jne 0x5f63ee
nop
mov word [esp + 0x48], 0x1ff
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f63a2
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8cc6
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f62ba
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f631d
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f631d
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f63a2
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov edi, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f6384
mov dword [esp + 0x94], ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx eax, word [esp + 0x48]
mov word [edi + ebp], ax
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], edi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func4]
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x194]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [ecx + 0x9c]
test bl, bl
je 0x5f66de
test dl, dl
jne 0x5f66de
nop
mov word [esp + 0x46], 0
mov byte [esp + 0x47], 0x17
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f6575
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8cae
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f6485
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
xor eax, eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f64f0
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f64f0
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f6575
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov edi, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f6557
mov dword [esp + 0x94], ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx eax, word [esp + 0x46]
mov word [edi + ebp], ax
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], edi
nop
mov word [esp + 0x44], 0
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f66de
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8c96
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f65ee
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f6659
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f6659
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f66de
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov eax, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f66c0
mov dword [esp + 0x94], ebp
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx edi, word [esp + 0x44]
mov word [eax + ebp], di
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], eax
movzx ebx, byte [ecx + 0xac]
test bl, bl
je 0x5f69c4
nop
mov word [esp + 0x42], 0
mov byte [esp + 0x43], 0x12
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f685b
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8c7e
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f676b
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f67d6
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f67d6
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f685b
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov eax, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f683d
mov dword [esp + 0x94], ebp
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx edi, word [esp + 0x42]
mov word [eax + ebp], di
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], eax
nop
mov word [esp + 0x40], 0
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f69c4
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8c66
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f68d4
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f693f
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f693f
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f69c4
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov eax, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f69a6
mov dword [esp + 0x94], ebp
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx edi, word [esp + 0x40]
mov word [eax + ebp], di
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], eax
movzx ebx, byte [ecx + 0xd4]
test bl, bl
je 0x5f6caa
nop
mov word [esp + 0x3e], 0
mov byte [esp + 0x3f], 0x2a
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f6b41
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8c4e
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f6a51
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f6abc
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f6abc
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f6b41
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov eax, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f6b23
mov dword [esp + 0x94], ebp
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx edi, word [esp + 0x3e]
mov word [eax + ebp], di
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], eax
nop
mov word [esp + 0x3c], 0
mov ebx, dword [esp + 0x9c]
test ebx, ebx
jne 0x5f6caa
mov ebx, dword [esp + 0xb4]
test ebx, ebx
jne 0x5f8c36
mov ebx, dword [esp + 0xa8]
add ebx, 2
cmp ebx, 2
jge 0x5f6bba
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [esp + 0xb0]
test bl, bl
je 0x5f6c25
mov ebx, dword [esp + 0xa8]
add ebx, 2
lea ebp, [esp + 0x9c]
cmp dword [ebp + 0x10], ebx
jge 0x5f6c25
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
jmp 0x5f6caa
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0xa8]
lea esi, [ebp + 2]
mov eax, dword [esp + 0xa4]
cmp ebx, esi
jae 0x5f6c8c
mov dword [esp + 0x94], ebp
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x94]
movzx edi, word [esp + 0x3c]
mov word [eax + ebp], di
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], eax
mov ebx, dword [ecx + 0xfc]
test ebx, ebx
je 0x5f6e68
nop
mov word [esp + 0x3a], 0
mov byte [esp + 0x3b], 0x39
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x5f6e1e
mov eax, dword [esp + 0xb4]
test eax, eax
jne 0x5f8c1e
mov eax, dword [esp + 0xa8]
add eax, 2
cmp eax, 2
jge 0x5f6d36
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx eax, byte [esp + 0xb0]
test al, al
je 0x5f6d99
mov eax, dword [esp + 0xa8]
add eax, 2
lea ebx, [esp + 0x9c]
cmp dword [ebx + 0x10], eax
jge 0x5f6d99
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f6e1e
mov eax, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xa4]
cmp eax, ebp
jae 0x5f6e00
mov dword [esp + 0x94], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x94]
movzx edi, word [esp + 0x3a]
mov word [esi + ebx], di
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], eax
mov dword [esp + 0xa4], esi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func5]
mov dword [esp + 0x18c], eax
mov dword [esp + 0x190], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x18c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [ecx + 0x10c]
test ebx, ebx
je 0x5f7021
nop
mov word [esp + 0x38], 0xdfe
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x5f6fd7
mov eax, dword [esp + 0xb4]
test eax, eax
jne 0x5f8c06
mov eax, dword [esp + 0xa8]
add eax, 2
cmp eax, 2
jge 0x5f6eef
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx eax, byte [esp + 0xb0]
test al, al
je 0x5f6f52
mov eax, dword [esp + 0xa8]
add eax, 2
lea ebx, [esp + 0x9c]
cmp dword [ebx + 0x10], eax
jge 0x5f6f52
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f6fd7
mov eax, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xa4]
cmp eax, ebp
jae 0x5f6fb9
mov dword [esp + 0x94], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x94]
movzx edi, word [esp + 0x38]
mov word [esi + ebx], di
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], eax
mov dword [esp + 0xa4], esi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func6]
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x184]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx ebx, byte [ecx + 0x48]
test bl, bl
je 0x5f721b
test dl, dl
jne 0x5f71c2
nop
mov word [esp + 0x36], 0
mov byte [esp + 0x37], 5
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x5f7194
mov eax, dword [esp + 0xb4]
test eax, eax
jne 0x5f8bee
mov eax, dword [esp + 0xa8]
add eax, 2
cmp eax, 2
jge 0x5f70b3
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx eax, byte [esp + 0xb0]
test al, al
je 0x5f710f
mov eax, dword [esp + 0xa8]
add eax, 2
lea ebx, [esp + 0x9c]
cmp dword [ebx + 0x10], eax
jge 0x5f710f
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
jmp 0x5f7194
mov eax, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xa4]
cmp eax, ebp
jae 0x5f7176
mov dword [esp + 0x94], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x94]
movzx edi, word [esp + 0x36]
mov word [esi + ebx], di
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], eax
mov dword [esp + 0xa4], esi
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [0x704808]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x5f7204
mov dword [esp], 0
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov word [eax], 5
mov edx, eax
mov eax, 1
mov ebx, edx
mov ebp, eax
movzx edx, byte [esp + 0x1bc]
mov eax, ecx
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7221
xor eax, eax
xor ebx, ebx
xor ebp, ebp
mov esi, dword [ecx + 0x50]
test esi, esi
je 0x5f7460
test dl, dl
je 0x5f727e
inc ebp
cmp eax, ebp
jae 0x5f7272
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0xa
jmp 0x5f7460
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], eax
mov dword [esp + 0xc8], ebx
nop
mov word [esp + 0x34], 0
mov byte [esp + 0x35], 0xa
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f7407
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8bd6
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f731a
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x54]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f737f
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f737f
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7407
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f73e9
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x54]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x34]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func8]
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x17c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0xc8]
mov esi, dword [ecx + 0x78]
test esi, esi
je 0x5f76b4
test dl, dl
je 0x5f74bd
inc ebp
cmp eax, ebp
jae 0x5f74b1
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0xd
jmp 0x5f76b4
mov dword [esp + 0x90], eax
mov dword [esp + 0x110], ebx
mov dword [esp + 0x8c], ebp
nop
mov word [esp + 0x32], 0
mov byte [esp + 0x33], 0xd
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f7655
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8bbe
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f7565
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x110]
mov ebp, dword [esp + 0x8c]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f75ca
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f75ca
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7655
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f7637
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x110]
mov ebp, dword [esp + 0x8c]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x32]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func9]
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x174]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x8c]
mov eax, dword [esp + 0x90]
mov ebx, dword [esp + 0x110]
mov esi, dword [ecx + 0x84]
test esi, esi
je 0x5f790b
test dl, dl
je 0x5f7714
inc ebp
cmp eax, ebp
jae 0x5f7708
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x32
jmp 0x5f790b
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], eax
nop
mov word [esp + 0x30], 0
mov byte [esp + 0x31], 0x32
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f78ac
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8ba6
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f77bc
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x10c]
mov ebp, dword [esp + 0x88]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f7821
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f7821
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f78ac
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f788e
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x10c]
mov ebp, dword [esp + 0x88]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x30]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func10]
mov dword [esp + 0x16c], eax
mov dword [esp + 0x170], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x16c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov eax, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
mov ebx, dword [esp + 0x10c]
mov esi, dword [ecx + 0xa4]
test esi, esi
je 0x5f7b59
test dl, dl
je 0x5f796b
inc ebp
cmp eax, ebp
jae 0x5f795f
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x10
jmp 0x5f7b59
mov dword [esp + 0x80], ebp
mov dword [esp + 0x7c], eax
mov dword [esp + 0x108], ebx
nop
mov word [esp + 0x2e], 0
mov byte [esp + 0x2f], 0x10
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f7afd
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b8e
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f7a0d
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x108]
mov ebp, dword [esp + 0x80]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f7a72
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f7a72
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7afd
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f7adf
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x108]
mov ebp, dword [esp + 0x80]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x2e]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func11]
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x164]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x108]
mov esi, dword [ecx + 0xb4]
test esi, esi
je 0x5f7d9b
test dl, dl
je 0x5f7bb9
inc ebp
cmp eax, ebp
jae 0x5f7bad
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x2b
jmp 0x5f7d9b
mov dword [esp + 0x104], ebx
mov dword [esp + 0x78], ebp
mov dword [esp + 0x74], eax
nop
mov word [esp + 0x2c], 0
mov byte [esp + 0x2d], 0x2b
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f7d42
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b76
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f7c55
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x104]
mov ebp, dword [esp + 0x78]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f7cba
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f7cba
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7d42
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f7d24
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x104]
mov ebp, dword [esp + 0x78]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x2c]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func12]
mov dword [esp + 0x15c], eax
mov dword [esp + 0x160], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x15c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov eax, dword [esp + 0x74]
mov ebp, dword [esp + 0x78]
mov ebx, dword [esp + 0x104]
mov esi, dword [ecx + 0xc0]
test esi, esi
je 0x5f7fdd
test dl, dl
je 0x5f7dfb
inc ebp
cmp eax, ebp
jae 0x5f7def
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x2c
jmp 0x5f7fdd
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x100], ebx
nop
mov word [esp + 0x2a], 0
mov byte [esp + 0x2b], 0x2c
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f7f84
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b5e
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f7e97
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0x6c]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f7efc
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f7efc
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f7f84
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f7f66
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x2a]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func13]
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x154]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov eax, dword [esp + 0x70]
mov ebp, dword [esp + 0x6c]
mov ebx, dword [esp + 0x100]
mov esi, dword [ecx + 0xcc]
test esi, esi
je 0x5f821f
test dl, dl
je 0x5f803d
inc ebp
cmp eax, ebp
jae 0x5f8031
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x33
jmp 0x5f821f
mov dword [esp + 0xfc], ebx
mov dword [esp + 0x68], ebp
mov dword [esp + 0x64], eax
nop
mov word [esp + 0x28], 0
mov byte [esp + 0x29], 0x33
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f81c6
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b46
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f80d9
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0xfc]
mov ebp, dword [esp + 0x68]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f813e
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f813e
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f81c6
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f81a8
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0xfc]
mov ebp, dword [esp + 0x68]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x28]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func14]
mov dword [esp + 0x14c], eax
mov dword [esp + 0x150], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x14c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebp, dword [esp + 0x68]
mov eax, dword [esp + 0x64]
mov ebx, dword [esp + 0xfc]
mov esi, dword [ecx + 0xdc]
test esi, esi
je 0x5f8461
test dl, dl
je 0x5f827f
inc ebp
cmp eax, ebp
jae 0x5f8273
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6a6380]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov word [ebx + ebp*2 - 2], 0x2d
jmp 0x5f8461
mov dword [esp + 0xf8], ebx
mov dword [esp + 0x60], ebp
mov dword [esp + 0x5c], eax
nop
mov word [esp + 0x26], 0
mov byte [esp + 0x27], 0x2d
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f8408
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b2e
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f831b
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0xf8]
mov ebp, dword [esp + 0x60]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f8380
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f8380
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f8408
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov eax, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f83ea
mov dword [esp + 0x94], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
mov ebx, dword [esp + 0xf8]
mov ebp, dword [esp + 0x60]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x26]
mov word [eax + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], eax
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func15]
mov dword [esp + 0x144], eax
mov dword [esp + 0x148], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x144]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov eax, dword [esp + 0x5c]
mov ebp, dword [esp + 0x60]
mov ebx, dword [esp + 0xf8]
test ebp, ebp
je 0x5f8669
test dl, dl
je 0x5f8669
nop
mov word [esp + 0x24], 0
mov byte [esp + 0x24], 0xfd
mov esi, dword [esp + 0x9c]
test esi, esi
jne 0x5f8606
mov esi, dword [esp + 0xb4]
test esi, esi
jne 0x5f8b16
mov dword [esp + 0xc8], ebx
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], eax
mov esi, dword [esp + 0xa8]
add esi, 2
cmp esi, 2
jge 0x5f850d
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x54]
movzx esi, byte [esp + 0xb0]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5f857a
mov esi, dword [esp + 0xa8]
add esi, 2
lea edi, [esp + 0x9c]
cmp dword [edi + 0x10], esi
jge 0x5f857a
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x54]
jmp 0x5f8606
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
lea edx, [edi + 2]
mov ecx, dword [esp + 0xa4]
cmp esi, edx
jae 0x5f85e1
mov dword [esp + 0x94], edi
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x54]
mov edi, dword [esp + 0x94]
movzx ebx, word [esp + 0x24]
mov word [ecx + edi], bx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], esi
mov dword [esp + 0xa4], ecx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 0x140], 0
lea ecx, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func16]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x13c], ebp
mov dword [esp + 0x140], eax
mov dword [esp + 0x138], ebx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x134]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [ecx + 0xe8]
test ebx, ebx
je 0x5f8827
nop
mov word [esp + 0x22], 0
mov byte [esp + 0x23], 0x29
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x5f87dd
mov eax, dword [esp + 0xb4]
test eax, eax
jne 0x5f8afe
mov eax, dword [esp + 0xa8]
add eax, 2
cmp eax, 2
jge 0x5f86f5
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6f18bd]
mov dword [eax], ecx
lea ecx, [0x75790c]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
movzx eax, byte [esp + 0xb0]
test al, al
je 0x5f8758
mov eax, dword [esp + 0xa8]
add eax, 2
lea ebx, [esp + 0x9c]
cmp dword [ebx + 0x10], eax
jge 0x5f8758
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea edx, [0x75790c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x1b8]
jmp 0x5f87dd
mov eax, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xa4]
cmp eax, ebp
jae 0x5f87bf
mov dword [esp + 0x94], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x94]
movzx edi, word [esp + 0x22]
mov word [esi + ebx], di
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], eax
mov dword [esp + 0xa4], esi
lea eax, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func17]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], ecx
lea eax, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x12c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x1b8]
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x9c]
test ebx, ebx
je 0x5f8843
mov ebp, dword [esp + 0xa0]
mov eax, ebx
xor edi, edi
xor ebx, ebx
xor esi, esi
jmp 0x5f887e
mov ebx, dword [esp + 0xa8]
mov eax, dword [esp + 0xb8]
cmp eax, ebx
ja 0x5f8af7
mov esi, dword [esp + 0xa4]
mov ebp, dword [esp + 0xac]
sub ebp, eax
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
sub ebx, eax
add esi, ebp
xor eax, eax
xor ebp, ebp
test eax, eax
jne 0x5f8aa4
xor eax, eax
mov ebp, edi
lea edi, [esp + 0xcc]
call fcn.00471f15
mov ecx, dword [esp + 0xe4]
nop
mov byte [esp + 0x21], 1
test ecx, ecx
jne 0x5f8adf
mov dword [esp + 0x94], ebp
mov dword [esp + 0x50], ebx
mov dword [esp + 0x98], esi
movzx ecx, byte [esp + 0xe0]
test cl, cl
je 0x5f8923
mov ecx, dword [esp + 0xd8]
inc ecx
mov edi, esi
lea esi, [esp + 0xcc]
cmp dword [esi + 0x10], ecx
jge 0x5f8925
lea eax, [0x6b2a20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6fb85c]
mov dword [eax], ecx
lea ecx, [0x75790c]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], eax
xor eax, eax
movzx edx, byte [esp + 0x1bc]
jmp 0x5f89a9
mov edi, esi
mov ecx, dword [esp + 0xdc]
mov esi, dword [esp + 0xd8]
lea edi, [esi + 1]
mov ebp, dword [esp + 0xd4]
cmp ecx, edi
jae 0x5f898b
mov dword [esp + 0x90], esi
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6a6300]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
xor eax, eax
movzx edx, byte [esp + 0x1bc]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x90]
movzx ebx, byte [esp + 0x21]
mov byte [ebp + esi], bl
mov dword [esp + 0xd8], edi
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xd4], ebp
lea edi, [esp + 0x114]
call fcn.00471f1a
lea ecx, [sym.crypto_tls._clientHelloMsg_.marshalMsg.func18]
mov dword [esp + 0x114], ecx
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x118], ecx
mov byte [esp + 0x11c], dl
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x124], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x128], ecx
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x120], ecx
lea ecx, [esp + 0xcc]
mov dword [esp], ecx
mov dword [esp + 4], 3
mov byte [esp + 8], 0
lea ecx, [esp + 0x114]
mov dword [esp + 0xc], ecx
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0xcc]
test ecx, ecx
je 0x5f8a43
mov eax, dword [esp + 0xd0]
xor ebp, ebp
mov ebx, eax
xor edx, edx
mov eax, ecx
xor ecx, ecx
jmp 0x5f8a7a
mov ecx, dword [esp + 0xd8]
mov eax, dword [esp + 0xe8]
cmp eax, ecx
ja 0x5f8ada
mov edx, dword [esp + 0xd4]
mov ebx, dword [esp + 0xdc]
sub ebx, eax
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
sub ecx, eax
add edx, ebx
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x1c0], edx
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], ebp
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ebx
add esp, 0x1b4
ret
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ebp
add esp, 0x1b4
ret
call sym.runtime.panicSliceB
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov ecx, ebx
call sym.runtime.panicSliceB
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x6a6280]
mov dword [esp], eax
lea eax, [0x756e90]
mov dword [esp + 4], eax
call sym.runtime.gopanic
nop
call sym.runtime.morestack_noctxt
jmp sym.crypto_tls._clientHelloMsg_.marshalMsg