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

Disassembly:
mov ecx, dword [0x8d0454]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xbc]
cmp eax, dword [ecx + 8]
jbe 0x5e781e
sub esp, 0x13c
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx]
test edx, edx
jne 0x5e75c7
lea edi, [esp + 0xe4]
xor eax, eax
call fcn.00468475
mov ecx, dword [esp + 0x140]
mov edx, dword [ecx + 0x44]
test edx, edx
je 0x5e5358
nop
mov word [esp + 0x4a], 0
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e52fe
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7805
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5225
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5285
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5285
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e52fe
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e52e0
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func1]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xc8]
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 0x5e54de
nop
mov word [esp + 0x48], 0
mov byte [esp + 0x49], 5
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e54ae
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e77ed
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e53dc
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5435
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5435
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
jmp 0x5e54ae
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e5490
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
nop
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [0x6d9dec]
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 0x5e5694
nop
mov word [esp + 0x46], 0
mov byte [esp + 0x47], 0xa
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e563a
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e77d5
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5561
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e55c1
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e55c1
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e563a
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e561c
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func3]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xc0]
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 0x5e584a
nop
mov word [esp + 0x44], 0
mov byte [esp + 0x45], 0xb
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e57f0
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e77bd
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5717
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5777
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5777
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e57f0
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e57d2
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func4]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xb8]
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 0x5e5a01
nop
mov word [esp + 0x42], 0
mov byte [esp + 0x43], 0x23
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e59a7
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e77a5
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e58ce
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e592e
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e592e
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e59a7
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e5989
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func5]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xb0]
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 0x5e5bb7
nop
mov word [esp + 0x40], 0
mov byte [esp + 0x41], 0xd
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e5b5d
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e778d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5a84
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5ae4
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5ae4
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e5b5d
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e5b3f
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func6]
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xa8]
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 0x5e5d70
nop
mov word [esp + 0x3e], 0
mov byte [esp + 0x3f], 0x32
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e5d16
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7775
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5c3d
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5c9d
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5c9d
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e5d16
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e5cf8
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func7]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0xa0]
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 0x5e5f2c
nop
mov word [esp + 0x3c], 0
mov word [esp + 0x3c], 0x1ff
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e5ed2
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e775d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5df9
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e5e59
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e5e59
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e5ed2
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e5eb4
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func8]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x98]
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 0x5e61dc
nop
mov word [esp + 0x3a], 0
mov byte [esp + 0x3b], 0x17
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e608e
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7745
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e5fb3
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6015
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6015
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e608e
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6070
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
nop
mov word [esp + 0x38], 0
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e61dc
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e772d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6101
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6163
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6163
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e61dc
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e61be
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov edx, dword [ecx + 0xa4]
test edx, edx
je 0x5e6395
nop
mov word [esp + 0x36], 0
mov byte [esp + 0x37], 0x10
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e633b
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7715
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6262
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e62c2
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e62c2
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e633b
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e631d
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func9]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x90]
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 0x5e6645
nop
mov word [esp + 0x34], 0
mov byte [esp + 0x35], 0x12
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e64f7
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e76fd
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e641c
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e647e
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e647e
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e64f7
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e64d9
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
nop
mov word [esp + 0x32], 0
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e6645
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e76e5
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e656a
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e65cc
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e65cc
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e6645
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6627
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov edx, dword [ecx + 0xb4]
test edx, edx
je 0x5e67fe
nop
mov word [esp + 0x30], 0
mov byte [esp + 0x31], 0x2b
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e67a4
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e76cd
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e66cb
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e672b
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e672b
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e67a4
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6786
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func10]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x88]
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 0x5e69b7
nop
mov word [esp + 0x2e], 0
mov byte [esp + 0x2f], 0x2c
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e695d
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e76b5
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6884
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e68e4
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e68e4
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e695d
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e693f
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func11]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x80]
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 0x5e6b61
nop
mov word [esp + 0x2c], 0
mov byte [esp + 0x2d], 0x33
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e6b16
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e769d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6a3d
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6a9d
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6a9d
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e6b16
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6af8
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func12]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x78]
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 0x5e6e11
nop
mov word [esp + 0x2a], 0
mov byte [esp + 0x2b], 0x2a
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e6cc3
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7685
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6be8
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6c4a
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6c4a
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e6cc3
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6ca5
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
nop
mov word [esp + 0x28], 0
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e6e11
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e766d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6d36
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6d98
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6d98
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
jmp 0x5e6e11
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6df3
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov edx, dword [ecx + 0xdc]
test edx, edx
je 0x5e6fbb
nop
mov word [esp + 0x26], 0
mov byte [esp + 0x27], 0x2d
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e6f70
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7655
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e6e97
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e6ef7
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e6ef7
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e6f70
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e6f52
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func13]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x70]
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 0x5e7165
nop
mov word [esp + 0x24], 0
mov byte [esp + 0x25], 0x39
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e711a
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e763d
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e7041
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e70a1
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e70a1
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e711a
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e70fc
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func14]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x68]
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 0x5e730f
nop
mov word [esp + 0x22], 0
mov byte [esp + 0x23], 0x29
mov edx, dword [esp + 0xe4]
test edx, edx
jne 0x5e72c4
mov edx, dword [esp + 0xfc]
test edx, edx
jne 0x5e7625
mov edx, dword [esp + 0xf0]
add edx, 2
cmp edx, 2
jge 0x5e71eb
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x6c7e6e]
mov dword [eax], ecx
lea ecx, [0x726b8c]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xe8], eax
xor eax, eax
mov ecx, dword [esp + 0x140]
movzx edx, byte [esp + 0xf8]
test dl, dl
je 0x5e724b
mov edx, dword [esp + 0xf0]
add edx, 2
lea ebx, [esp + 0xe4]
cmp dword [ebx + 0x10], edx
jge 0x5e724b
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea edx, [0x726b8c]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x140]
jmp 0x5e72c4
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf0]
lea ebp, [ebx + 2]
mov esi, dword [esp + 0xec]
cmp edx, ebp
jae 0x5e72a6
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, [0x682060]
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 + 0xf0], ebp
mov dword [esp + 0xf4], edx
mov dword [esp + 0xec], esi
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
lea eax, [sym.crypto_tls._clientHelloMsg_.marshal.func15]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
lea eax, [esp + 0xe4]
mov dword [esp], eax
mov dword [esp + 4], 2
mov byte [esp + 8], 0
lea eax, [esp + 0x60]
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 + 0xe4]
test edx, edx
je 0x5e732d
mov ebx, dword [esp + 0xe8]
xor edi, edi
mov esi, ebx
xor ebp, ebp
mov ebx, edx
xor edx, edx
jmp 0x5e7368
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0x100]
cmp ebx, edx
ja 0x5e761c
mov ebp, dword [esp + 0xec]
mov esi, dword [esp + 0xf4]
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 0x5e7591
mov ebx, edi
lea edi, [esp + 0x110]
call fcn.00468475
mov ecx, dword [esp + 0x128]
nop
mov byte [esp + 0x21], 0
mov byte [esp + 0x21], 1
test ecx, ecx
jne 0x5e7604
mov dword [esp + 0x54], ebx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x58], ebp
movzx ecx, byte [esp + 0x124]
test cl, cl
je 0x5e7401
mov ecx, dword [esp + 0x11c]
inc ecx
lea esi, [esp + 0x110]
cmp dword [esi + 0x10], ecx
jge 0x5e7401
lea eax, [0x68cba0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x6d1876]
mov dword [eax], ecx
lea ecx, [0x726b8c]
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], eax
xor eax, eax
mov ebp, dword [esp + 0x58]
jmp 0x5e747a
mov ecx, dword [esp + 0x120]
mov esi, dword [esp + 0x11c]
lea edi, [esi + 1]
mov ebx, dword [esp + 0x118]
cmp ecx, edi
jae 0x5e745d
mov dword [esp + 0x50], esi
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x682060]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov edx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x50]
movzx edx, byte [esp + 0x21]
mov byte [ebx + esi], dl
mov dword [esp + 0x11c], edi
mov dword [esp + 0x120], ecx
mov dword [esp + 0x118], ebx
lea edi, [esp + 0xd0]
call fcn.0046847b
lea ecx, [sym.crypto_tls._clientHelloMsg_.marshal.func16]
mov dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0x140]
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xd8], ebp
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xdc], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0xe0], edx
lea edx, [esp + 0x110]
mov dword [esp], edx
mov dword [esp + 4], 3
mov byte [esp + 8], 0
lea edx, [esp + 0xd0]
mov dword [esp + 0xc], edx
call sym.vendor_golang.org_x_crypto_cryptobyte._Builder_.addLengthPrefixed
mov ecx, dword [esp + 0x110]
test ecx, ecx
je 0x5e7503
mov eax, dword [esp + 0x114]
xor ebp, ebp
xor edx, edx
mov ebx, eax
mov eax, ecx
xor ecx, ecx
jmp 0x5e753a
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x12c]
cmp eax, ecx
ja 0x5e75ff
mov edx, dword [esp + 0x118]
mov ebx, dword [esp + 0x120]
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 [0x8d0720]
test edi, edi
je 0x5e7565
mov dword [esp + 0x5c], ebx
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov ebx, dword [esi]
mov dword [edi + 4], ebx
mov ebx, dword [esp + 0x5c]
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, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov eax, ebx
mov ecx, edx
call sym.runtime.panicSliceB
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
lea eax, [0x681d20]
mov dword [esp], eax
lea eax, [0x726740]
mov dword [esp + 4], eax
call sym.runtime.gopanic
nop
call sym.runtime.morestack_noctxt
jmp sym.crypto_tls._clientHelloMsg_.marshal