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

Disassembly:
mov ecx, dword [0x8c8664]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xbc]
cmp eax, dword [ecx + 8]
jbe 0x5d8cdf
sub esp, 0x13c
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx]
test edx, edx
jne 0x5d8a88
lea edi, [esp + 0x5c]
xor eax, eax
call fcn.0046c895
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x44]
test edx, edx
je 0x5d6bd2
nop
mov word [esp + 0x4a], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d6b7b
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8cc6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d6ac3
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d6b14
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d6b14
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d6b7b
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d6b66
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x4a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func1]
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], ecx
lea eax, [esp + 0x5c]
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
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x48]
test dl, dl
je 0x5d6d25
nop
mov word [esp + 0x48], 0
mov byte [esp + 0x49], 5
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d6cf8
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8cae
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d6c47
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d6c91
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d6c91
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
jmp 0x5d6cf8
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d6ce3
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x48]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [0x6c6f24]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x50]
test edx, edx
je 0x5d6ea8
nop
mov word [esp + 0x46], 0
mov byte [esp + 0x47], 0xa
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d6e51
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c96
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d6d99
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d6dea
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d6dea
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d6e51
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d6e3c
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x46]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func3]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], ecx
lea eax, [esp + 0x5c]
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
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x5c]
test edx, edx
je 0x5d702b
nop
mov word [esp + 0x44], 0
mov byte [esp + 0x45], 0xb
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d6fd4
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c7e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d6f1c
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d6f6d
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d6f6d
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d6fd4
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d6fbf
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x44]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func4]
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x124]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x64]
test dl, dl
je 0x5d71af
nop
mov word [esp + 0x42], 0
mov byte [esp + 0x43], 0x23
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7158
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c66
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d70a0
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d70f1
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d70f1
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7158
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d7143
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x42]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func5]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x11c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x78]
test edx, edx
je 0x5d7332
nop
mov word [esp + 0x40], 0
mov byte [esp + 0x41], 0xd
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d72db
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c4e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7223
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7274
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7274
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d72db
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d72c6
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x40]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func6]
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x114]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x84]
test edx, edx
je 0x5d74b8
nop
mov word [esp + 0x3e], 0
mov byte [esp + 0x3f], 0x32
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7461
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c36
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d73a9
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d73fa
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d73fa
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7461
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d744c
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3e]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func7]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x10c]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x8c]
test dl, dl
je 0x5d7641
nop
mov word [esp + 0x3c], 0
mov word [esp + 0x3c], 0x1ff
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d75ea
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c1e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7532
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7583
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7583
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d75ea
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d75d5
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3c]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func8]
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x104]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0x9c]
test dl, dl
je 0x5d7891
nop
mov word [esp + 0x3a], 0
mov byte [esp + 0x3b], 0x17
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7773
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8c06
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d76b9
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d770c
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d770c
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7773
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d775e
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x3a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x38], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7891
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8bee
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d77d7
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d782a
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d782a
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7891
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d787c
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x38]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xa4]
test edx, edx
je 0x5d7a17
nop
mov word [esp + 0x36], 0
mov byte [esp + 0x37], 0x10
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d79c0
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8bd6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7908
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7959
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7959
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d79c0
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d79ab
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x36]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func9]
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xfc]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0xac]
test dl, dl
je 0x5d7c67
nop
mov word [esp + 0x34], 0
mov byte [esp + 0x35], 0x12
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7b49
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8bbe
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7a8f
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7ae2
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7ae2
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7b49
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d7b34
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x34]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x32], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7c67
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8ba6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7bad
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7c00
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7c00
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7c67
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d7c52
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x32]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xb4]
test edx, edx
je 0x5d7ded
nop
mov word [esp + 0x30], 0
mov byte [esp + 0x31], 0x2b
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7d96
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b8e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7cde
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7d2f
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7d2f
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7d96
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d7d81
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x30]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func10]
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xf4]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xc0]
test edx, edx
je 0x5d7f73
nop
mov word [esp + 0x2e], 0
mov byte [esp + 0x2f], 0x2c
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d7f1c
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b76
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7e64
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d7eb5
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d7eb5
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d7f1c
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d7f07
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2e]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func11]
mov dword [esp + 0xec], eax
mov dword [esp + 0xf0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xec]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xcc]
test edx, edx
je 0x5d80f9
nop
mov word [esp + 0x2c], 0
mov byte [esp + 0x2d], 0x33
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d80a2
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b5e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d7fea
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d803b
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d803b
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d80a2
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d808d
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2c]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func12]
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xe4]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [ecx + 0xd4]
test dl, dl
je 0x5d8349
nop
mov word [esp + 0x2a], 0
mov byte [esp + 0x2b], 0x2a
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d822b
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b46
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d8171
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d81c4
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d81c4
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d822b
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d8216
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x2a]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
nop
mov word [esp + 0x28], 0
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d8349
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b2e
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d828f
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d82e2
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d82e2
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5d8349
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d8334
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x28]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov edx, dword [ecx + 0xdc]
test edx, edx
je 0x5d84cf
nop
mov word [esp + 0x26], 0
mov byte [esp + 0x27], 0x2d
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d8478
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8b16
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d83c0
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d8411
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d8411
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d8478
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d8463
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x26]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func13]
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xdc]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xfc]
test edx, edx
je 0x5d8655
nop
mov word [esp + 0x24], 0
mov byte [esp + 0x25], 0x39
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d85fe
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8afe
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d8546
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d8597
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d8597
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d85fe
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d85e9
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x24]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func14]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xd4]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0xe8]
test edx, edx
je 0x5d87db
nop
mov word [esp + 0x22], 0
mov byte [esp + 0x23], 0x29
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x5d8784
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x5d8ae6
mov edx, dword [esp + 0x68]
add edx, 2
cmp edx, 2
jge 0x5d86cc
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6b5125]
mov dword [eax], ecx
lea ecx, [0x713830]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0x70]
test dl, dl
je 0x5d871d
mov edx, dword [esp + 0x68]
add edx, 2
lea ebx, [esp + 0x5c]
cmp dword [ebx + 0x10], edx
jge 0x5d871d
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea edx, [0x713830]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x140]
jmp 0x5d8784
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0x64]
cmp edx, ebp
jae 0x5d876f
mov dword [esp + 0x54], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea eax, [0x672500]
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 + 0x140]
mov ebx, dword [esp + 0x54]
movzx edi, word [esp + 0x22]
mov word [esi + ebx], di
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func15]
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], ecx
lea eax, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xcc]
mov dword [esp + 0xc], eax
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
xor eax, eax
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x5c]
test edx, edx
je 0x5d87f3
mov ebx, dword [esp + 0x60]
xor edi, edi
mov esi, ebx
xor ebp, ebp
mov ebx, edx
xor edx, edx
jmp 0x5d8822
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x78]
cmp ebx, edx
ja 0x5d8add
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0x6c]
sub esi, ebx
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebx
sub edx, ebx
add ebp, esi
xor ebx, ebx
xor esi, esi
test ebx, ebx
jne 0x5d8a52
mov ebx, edi
lea edi, [esp + 0x8c]
call fcn.0046c895
mov ecx, dword [esp + 0xa4]
nop
mov byte [esp + 0x21], 0
mov byte [esp + 0x21], 1
test ecx, ecx
jne 0x5d8ac5
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], ebx
mov dword [esp + 0x4c], edx
movzx ecx, byte [esp + 0xa0]
test cl, cl
je 0x5d88bb
mov ecx, dword [esp + 0x98]
inc ecx
lea esi, [esp + 0x8c]
cmp dword [esi + 0x10], ecx
jge 0x5d88bb
lea eax, [0x67ca80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6be9e7]
mov dword [eax], ecx
lea ecx, [0x713830]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
xor eax, eax
mov edx, dword [esp + 0x4c]
jmp 0x5d8935
mov ecx, dword [esp + 0x9c]
mov esi, dword [esp + 0x98]
lea edi, [esi + 1]
mov ebp, dword [esp + 0x94]
cmp ecx, edi
jae 0x5d8917
mov dword [esp + 0x50], esi
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x672500]
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
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
movzx ebx, byte [esp + 0x21]
mov byte [ebp + esi], bl
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x94], ebp
lea edi, [esp + 0xb8]
call fcn.0046c89b
lea ecx, [sym.crypto_tls._clientHelloMsg_.marshal.func16]
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x140]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc4], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0xc8], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0xc0], edx
lea edx, [esp + 0x8c]
mov dword [esp], edx
mov dword [esp + 4], 3
mov byte [esp + 8], 0
lea edx, [esp + 0xb8]
mov dword [esp + 0xc], edx
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x5d89be
mov eax, dword [esp + 0x90]
xor ebp, ebp
xor edx, edx
mov ebx, eax
mov eax, ecx
xor ecx, ecx
jmp 0x5d89f5
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0xa8]
cmp eax, ecx
ja 0x5d8ac0
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
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 esi, dword [esp + 0x140]
mov dword [esi + 4], ecx
mov dword [esi + 8], ebp
mov edi, dword [0x8c87a0]
test edi, edi
je 0x5d8a26
mov dword [esp + 0x88], ebx
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [esi]
mov dword [edi + 4], ebx
mov ebx, dword [esp + 0x88]
mov dword [esi], edx
mov dword [esp + 0x144], edx
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], ebp
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ebx
add esp, 0x13c
ret
mov dword [esp + 0x144], 0
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], ebx
mov dword [esp + 0x154], esi
add esp, 0x13c
ret
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x144], edx
mov dword [esp + 0x148], eax
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
add esp, 0x13c
ret
call sym.runtime.panicSliceB
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov eax, ebx
mov ecx, edx
call sym.runtime.panicSliceB
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x672480]
mov dword [esp], eax
lea eax, [0x712f10]
mov dword [esp + 4], eax
call sym.runtime.gopanic
nop
call sym.runtime.morestack_noctxt
jmp sym.crypto_tls._clientHelloMsg_.marshal