Function at 0x1400add40
Capabilities:
Enumerate pe sections

Disassembly:
push rbx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
xor eax, eax
lea r12, str.D:usrlocal_scoop_apps_vcpkgcurrent_buildtreesmbedtls_src_v2.28.1_6e0e5fbb91.cleanlibrary_ssl_srv.c
mov dword [rsp + 0xe8], eax
mov r9d, 0x5b5
mov dword [rsp + 0xe0], eax
mov r8, r12
lea rax, [0x14011a480]
mov edx, 2
mov qword [rsp + 0x20], rax
mov rbx, rcx
call fcn.1400b2b30
mov ebp, recv
mov qword [rsp + 0x98], rsi
lea r15d, [rbp - 8]
lea r14d, [rbp - 9]
lea r13d, [rbp - 0xc]
lea rdi, str.client_hello_v3__message_len.:__d
nop dword [rax]
cmp dword [rbx + 0xc], 0
jne 0x1400addd2
mov rdx, r15
mov rcx, rbx
call fcn.1400a29c0
mov edi, eax
test eax, eax
jne 0x1400adf5c
lea rdi, str.client_hello_v3__message_len.:__d
mov rax, qword [rbx]
mov rcx, r15
mov rsi, qword [rbx + 0xc0]
mov r9d, 0x5d5
mov r8, r12
mov edx, r14d
cmp byte [rax + 5], r13b
lea rax, str.record_header
cmove rcx, rbp
mov qword [rsp + 0x30], rcx
mov rcx, rbx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.1400b22b0
movzx eax, byte [rsi]
mov r9d, 0x5e1
mov dword [rsp + 0x28], eax
mov r8, r12
lea rax, str.client_hello_v3__message_type:__d
mov edx, 3
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
cmp byte [rsi], 0x16
mov r8, r12
jne 0x1400af338
mov rax, qword [rbx + 0xc8]
mov r9d, 0x5ea
movzx ecx, byte [rax]
movzx edx, byte [rax + 1]
shl ecx, 8
or edx, ecx
mov rcx, rbx
mov dword [rsp + 0x28], edx
mov edx, 3
mov qword [rsp + 0x20], rdi
call fcn.1400b2b30
movzx eax, byte [rsi + 2]
mov r9d, 0x5ed
movzx ecx, byte [rsi + 1]
mov r8, r12
mov dword [rsp + 0x30], eax
mov edx, 3
mov dword [rsp + 0x28], ecx
lea rax, str.client_hello_v3__protocol_version:___d:_d_
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov rax, qword [rbx]
lea r9, [rsi + 1]
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0xf0]
movzx r8d, byte [rax + 5]
call fcn.1400a4950
cmp dword [rsp + 0xf0], 3
jl 0x1400af32d
mov rax, qword [rbx]
cmp byte [rax + 5], r13b
jne 0x1400adf8c
cmp dword [rbx + 0xc], 0
jne 0x1400adf8c
mov rcx, qword [rbx + 0xb8]
cmp byte [rcx], 0
jne 0x1400adfb0
cmp byte [rcx + 1], 0
jne 0x1400adfb0
mov eax, dword [rcx + 2]
mov dword [rbx + 0x182], eax
movzx eax, word [rcx + 6]
mov rcx, rbx
mov word [rbx + 0x186], ax
call fcn.1400a1c90
mov rcx, rbx
test eax, eax
je 0x1400adf87
lea rax, str.replayed_record__discarding
mov r9d, 0x610
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, r13d
call fcn.1400b2b30
xor esi, esi
mov qword [rbx + 0x108], rsi
mov qword [rbx + 0xf8], rsi
jmp 0x1400adda5
mov r9d, 0x5c6
lea rax, str.mbedtls_ssl_fetch_input
mov dword [rsp + 0x28], edi
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, r13d
mov rcx, rbx
call fcn.1400b2c00
mov eax, edi
jmp 0x1400af35a
call fcn.1400a1d40
mov rax, qword [rbx + 0xc8]
movzx ecx, byte [rax]
movzx esi, byte [rax + 1]
shl rcx, 8
or rsi, rcx
cmp dword [rbx + 0xc], 0
je 0x1400adfbe
mov rsi, qword [rbx + 0x120]
jmp 0x1400ae01e
mov r9d, 0x607
mov r8, r12
jmp 0x1400af33e
mov rcx, rbx
cmp rsi, 0x4000
jbe 0x1400adfd8
mov r9d, 0x629
mov r8, r12
jmp 0x1400af341
mov rax, qword [rbx]
cmp byte [rax + 5], r13b
cmovne rbp, r15
lea rdx, [rsi + rbp]
call fcn.1400a29c0
mov edi, eax
test eax, eax
je 0x1400adffd
mov r9d, 0x630
jmp 0x1400adf62
mov rax, qword [rbx]
cmp byte [rax + 5], r13b
jne 0x1400ae013
lea rax, [rsi + 0xd]
mov qword [rbx + 0x108], rax
jmp 0x1400ae01e
mov qword [rbx + 0xf8], 0
mov rbp, qword [rbx + 0xd8]
lea rax, str.record_contents
mov qword [rsp + 0x30], rsi
mov r9d, 0x63f
mov qword [rsp + 0x28], rbp
mov r8, r12
mov edx, r14d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b22b0
mov rax, qword [rbx + 0x70]
mov r8, rsi
mov rdx, rbp
mov rcx, rbx
call qword [rax + 0x20]
mov rax, qword [rbx]
mov edi, recv
mov ecx, edi
mov r8, r12
cmp byte [rax + 5], r13b
cmovne rcx, r14
cmp rsi, rcx
mov rcx, rbx
jae 0x1400ae087
mov r9d, 0x64d
jmp 0x1400af341
movzx eax, byte [rbp]
mov r9d, 0x651
mov dword [rsp + 0x28], eax
mov edx, 3
lea rax, str.client_hello_v3__handshake_type:__d
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov r8, r12
cmp byte [rbp], r13b
je 0x1400ae0bf
mov r9d, 0x655
jmp 0x1400af33e
movzx eax, byte [rbp + 2]
mov r9d, 0x65a
movzx ecx, byte [rbp + 1]
mov edx, 3
shl ecx, 8
or ecx, eax
movzx eax, byte [rbp + 3]
shl ecx, 8
or ecx, eax
lea rax, str.client_hello_v3__handshake_len.:__d
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
movzx eax, byte [rbp + 1]
test al, al
je 0x1400ae129
mov dword [rsp + 0x28], eax
mov r9d, 0x65f
lea rax, str.bad_client_hello_message:__u___0
mov r8, r12
mov edx, r13d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b2b30
jmp 0x1400af355
mov rax, qword [rbx]
movzx r9d, byte [rbp + 3]
movzx edx, byte [rax + 5]
movzx eax, byte [rbp + 2]
shl eax, 8
mov ecx, eax
or rcx, r9
mov r8d, eax
cmp dl, r13b
mov rax, rdi
cmovne rax, r14
add rcx, rax
cmp rsi, rcx
je 0x1400ae194
mov eax, r9d
mov rcx, rbx
or eax, r8d
mov r9d, 0x668
mov dword [rsp + 0x38], eax
cmp dl, r13b
lea rax, str.bad_client_hello_message:__u____u___u
mov r8, r12
cmovne edi, r14d
mov edx, r13d
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
jmp 0x1400af355
cmp dl, r13b
jne 0x1400ae2eb
mov rax, qword [rbx + 0xd8]
movzx ecx, byte [rax + 4]
movzx edx, byte [rax + 5]
shl ecx, 8
or ecx, edx
cmp dword [rbx + 0xc], r13d
jne 0x1400ae1fc
mov rdx, qword [rbx + 0x70]
mov eax, dword [rdx + 0x464]
cmp ecx, eax
je 0x1400ae1f2
mov dword [rsp + 0x30], eax
mov r9d, 0x67e
mov dword [rsp + 0x28], ecx
lea rax, str.bad_client_hello_message_seq:__u__expected__u_
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, r12
mov edx, r13d
call fcn.1400b2b30
jmp 0x1400af355
inc eax
mov dword [rdx + 0x464], eax
jmp 0x1400ae212
mov rax, qword [rbx + 0x70]
mov dword [rax + 0x460], ecx
inc ecx
mov rax, qword [rbx + 0x70]
mov dword [rax + 0x464], ecx
mov r8, qword [rbx + 0xd8]
movzx eax, byte [r8 + 2]
movzx ecx, byte [r8 + 6]
movzx r9d, byte [r8 + 1]
movzx edx, byte [r8 + 9]
shl r9d, 8
or r9d, eax
shl edx, 8
movzx eax, byte [r8 + 3]
shl ecx, 8
shl r9d, 8
or r9d, eax
movzx eax, byte [r8 + 0xa]
or edx, eax
mov dword [rsp + 0x38], r9d
movzx eax, byte [r8 + 0xb]
mov r9d, 0x695
shl edx, 8
or edx, eax
movzx eax, byte [r8 + 7]
or ecx, eax
mov dword [rsp + 0x30], edx
movzx eax, byte [r8 + 8]
mov edx, r14d
shl ecx, 8
mov r8, r12
or ecx, eax
lea rax, str.fragment_offset_u_fragment_length_u_length_u
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov rcx, qword [rbx + 0xd8]
cmp byte [rcx + 6], 0
jne 0x1400ae2c1
cmp byte [rcx + 7], 0
jne 0x1400ae2c1
cmp byte [rcx + 8], 0
jne 0x1400ae2c1
movzx eax, word [rcx + 1]
cmp ax, word [rcx + 9]
jne 0x1400ae2c1
movzx eax, byte [rcx + 3]
cmp al, byte [rcx + 0xb]
je 0x1400ae2eb
lea rax, str.ClientHello_fragmentation_not_supported
mov r9d, 0x699
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, r13d
mov rcx, rbx
call fcn.1400b2b30
mov eax, 0xffff8f80
jmp 0x1400af35a
mov rax, qword [rbx]
mov rcx, rdi
mov r8, r12
cmp byte [rax + 5], r13b
cmovne rcx, r14
add rbp, rcx
sub rsi, rcx
mov rcx, rbx
cmp rsi, 0x26
jae 0x1400ae316
mov r9d, 0x6b9
jmp 0x1400af341
mov qword [rsp + 0x30], 2
lea rax, str.client_hello__version
mov qword [rsp + 0x28], rbp
mov r9d, 0x6c0
mov edx, 3
mov qword [rsp + 0x20], rax
call fcn.1400b22b0
mov rax, qword [rbx]
lea rdx, [rbx + 0x18]
mov r9, rbp
lea rcx, [rbx + 0x14]
movzx r8d, byte [rax + 5]
call fcn.1400a4950
mov rcx, qword [rbx + 0x70]
movzx eax, byte [rbx + 0x14]
mov byte [rcx], al
mov rcx, qword [rbx + 0x70]
movzx eax, byte [rbx + 0x18]
mov byte [rcx + 1], al
mov rdx, qword [rbx]
mov r8d, dword [rbx + 0x14]
movzx r10d, byte [rdx + 2]
cmp r8d, r10d
jl 0x1400af2e0
movzx eax, byte [rdx + 3]
mov r9d, dword [rbx + 0x18]
cmp r9d, eax
jl 0x1400af2e0
movzx eax, byte [rdx]
cmp r8d, eax
jle 0x1400ae3a4
mov dword [rbx + 0x14], eax
movzx eax, byte [rdx + 1]
jmp 0x1400ae3ad
movzx eax, byte [rdx + 1]
cmp r9d, eax
jle 0x1400ae3b0
mov dword [rbx + 0x18], eax
mov qword [rsp + 0x30], 0x20
lea rax, str.client_hello__random_bytes
lea rdi, [rbp + 2]
mov r9d, 0x6df
mov qword [rsp + 0x28], rdi
mov r8, r12
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b22b0
mov rax, qword [rbx + 0x70]
movups xmm0, xmmword [rdi]
movups xmmword [rax + 0x6a8], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x6b8], xmm1
movzx r14d, byte [rbp + 0x22]
cmp r14, 0x20
ja 0x1400af2d5
lea rax, [r14 + 0x24]
cmp rax, rsi
ja 0x1400af2d5
mov qword [rsp + 0x30], r14
lea rax, str.client_hello__session_id
lea rdi, [rbp + 0x23]
mov r9d, 0x6f1
mov qword [rsp + 0x28], rdi
mov r8, r12
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b22b0
mov rax, qword [rbx + 0x68]
xorps xmm0, xmm0
mov rdx, rdi
mov qword [rax + 0x18], r14
mov rax, qword [rbx + 0x68]
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov r8, qword [rbx + 0x68]
lea rcx, [r8 + 0x20]
mov r8, qword [r8 + 0x18]
call fcn.1400b9a70
mov rax, qword [rbx]
lea rcx, [r14 + 0x23]
cmp byte [rax + 5], r13b
jne 0x1400ae5bf
movzx edi, byte [rcx + rbp]
lea rdx, [rcx + rbp]
mov r8, r12
lea r14, [rdi + rcx]
mov rcx, rbx
lea rax, [r14 + 3]
cmp rax, rsi
jbe 0x1400ae4cc
lea rax, str.bad_client_hello_message
mov r9d, 0x704
mov edx, r13d
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov r8b, 0x46
mov dl, 2
mov rcx, rbx
call fcn.1400a4c40
jmp 0x1400af355
lea r15, [rdx + 1]
mov qword [rsp + 0x30], rdi
lea rax, str.client_hello__cookie
mov qword [rsp + 0x28], r15
mov r9d, 0x70b
mov qword [rsp + 0x20], rax
mov edx, 3
call fcn.1400b22b0
mov rcx, qword [rbx]
mov r10, qword [rcx + 0xc8]
test r10, r10
je 0x1400ae589
cmp dword [rbx + 0xc], 0
jne 0x1400ae589
mov rax, qword [rbx + 0x1a8]
mov r8, rdi
mov r9, qword [rbx + 0x1a0]
mov rdx, r15
mov rcx, qword [rcx + 0xd0]
mov qword [rsp + 0x20], rax
call r10
mov r8, r12
mov edx, 2
mov rcx, rbx
test eax, eax
je 0x1400ae565
lea rax, str.cookie_verification_failed
mov r9d, 0x718
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov rax, qword [rbx + 0x70]
mov byte [rax + 0x470], r13b
jmp 0x1400ae5bb
lea rax, str.cookie_verification_passed
mov r9d, 0x71d
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov rax, qword [rbx + 0x70]
mov byte [rax + 0x470], 0
jmp 0x1400ae5bb
mov r8, r12
mov rcx, rbx
test rdi, rdi
je 0x1400ae59f
mov r9d, 0x728
jmp 0x1400af341
lea rax, str.cookie_verification_skipped
mov r9d, 0x72c
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
lea rcx, [r14 + 1]
movzx r14d, byte [rcx + rbp]
movzx eax, byte [rcx + rbp + 1]
shl r14, 8
or r14, rax
mov qword [rsp + 0x78], r14
cmp r14, 2
jb 0x1400af2ca
lea rdi, [r14 + rcx]
lea rax, [rdi + 3]
cmp rax, rsi
ja 0x1400af2ca
test r13b, r14b
jne 0x1400af2ca
mov qword [rsp + 0x30], r14
lea rax, [rbp + 2]
add rax, rcx
mov r9d, 0x746
mov qword [rsp + 0x28], rax
mov r8, r12
mov qword [rsp + 0x58], rax
mov edx, 3
lea rax, str.client_hello__ciphersuitelist
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400b22b0
movzx ecx, byte [rdi + rbp + 2]
lea rdx, [rdi + rbp]
lea rax, [rcx - 1]
cmp rax, 0xf
ja 0x1400af2bf
add rdi, 3
add rdi, rcx
cmp rdi, rsi
ja 0x1400af2bf
lea rax, [rdx + 3]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov r9d, 0x75a
lea rax, str.client_hello__compression
mov r8, r12
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b22b0
mov rax, qword [rbx + 0x68]
xor ecx, ecx
mov dword [rax + 0x14], ecx
mov rax, qword [rbx]
cmp byte [rax + 5], r13b
jne 0x1400ae6a1
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x14], ecx
cmp rsi, rdi
jbe 0x1400ae70d
lea rax, [rdi + 2]
cmp rsi, rax
jae 0x1400ae6e1
mov r9d, 0x77b
lea rax, str.bad_client_hello_message
mov r8, r12
mov edx, r13d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b2b30
mov r8b, 0x32
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
movzx eax, byte [rdi + rbp]
lea rcx, [rdi + rbp]
movzx edx, byte [rcx + 1]
shl rax, 8
or rdx, rax
mov qword [rsp + 0x50], rdx
lea rax, [rdx + 2]
add rax, rdi
cmp rsi, rax
je 0x1400ae719
mov r9d, 0x786
jmp 0x1400ae6b5
mov rdx, rcx
mov qword [rsp + 0x50], rcx
lea rcx, [rdi + rbp]
lea r15, [rcx + 2]
mov qword [rsp + 0x30], rdx
lea rax, str.client_hello_extensions
mov qword [rsp + 0x28], r15
mov r9d, 0x790
mov qword [rsp + 0x20], rax
mov r8, r12
mov qword [rsp + 0x70], r15
mov edx, 3
mov rcx, rbx
call fcn.1400b22b0
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400aef0c
lea rbp, str.found_encrypt_then_mac_extension
lea r14, str.found_extended_master_secret_extension
lea r9, str.unknown_extension_found:__u__ignoring_
lea r10, str.found_renegotiation_extension
lea rsi, str.found_truncated_hmac_extension
lea r11, str.found_max_fragment_length_extension
lea r8, [0x140000000]
cmp rcx, 4
jb 0x1400aef01
movzx eax, byte [r15 + 1]
movzx edx, byte [r15]
movzx edi, byte [r15 + 2]
shl edx, 8
or edx, eax
shl edi, 8
movzx eax, byte [r15 + 3]
or edi, eax
lea eax, [rdi + 4]
mov qword [rsp + 0x80], rax
cmp rax, rcx
ja 0x1400aeef6
cmp edx, 0xff01
ja case.0x1400ae7f7.10
je 0x1400aed26
cmp edx, 0x23
ja case.0x1400ae7f7.10
movzx eax, byte [r8 + rdx + 0xaf3a4]
mov ecx, dword [r8 + rax*4 + 0xaf378]
add rcx, r8
jmp rcx
lea rax, str.found_ServerName_extension
mov r9d, 0x7aa
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov rax, qword [rbx]
cmp qword [rax + 0x90], 0
je 0x1400ae97f
mov r8d, edi
lea rdx, [r15 + 4]
mov rcx, rbx
call fcn.1400aff30
test eax, eax
jne 0x1400af35a
jmp 0x1400ae97f
lea rax, str.found_signature_algorithms_extension
mov r9d, 0x7c2
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov r8d, edi
lea rdx, [r15 + 4]
mov rcx, rbx
call fcn.1400b03e0
test eax, eax
jne 0x1400af35a
mov edi, r13d
mov dword [rsp + 0xe0], r13d
jmp 0x1400ae986
lea rax, str.found_supported_elliptic_curves_extension
mov r9d, 0x7d0
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov ecx, edi
cmp rcx, 2
jb 0x1400aee0e
movzx eax, byte [r15 + 5]
movzx ebp, byte [r15 + 4]
shl rbp, 8
or rbp, rax
lea rax, [rbp + 2]
cmp rax, rcx
jne 0x1400aee06
test r13b, bpl
jne 0x1400aee06
mov rax, qword [rbx + 0x70]
cmp qword [rax + 0x3a0], 0
jne 0x1400aedfe
mov eax, recv
mov rsi, rbp
shr rsi, 1
inc rsi
cmp rsi, 0xc
lea edx, [rax - 4]
cmova rsi, rax
mov rcx, rsi
call fcn.1400be94c
mov r14, rax
test rax, rax
je 0x1400aede5
mov rcx, qword [rbx + 0x70]
lea rdi, [r15 + 6]
mov qword [rcx + 0x3a0], rax
test rbp, rbp
je 0x1400ae971
nop dword [rax]
cmp rsi, r13
jbe 0x1400ae971
movzx eax, byte [rdi]
movzx ecx, byte [rdi + 1]
shl ax, 8
or cx, ax
call fcn.140082560
test rax, rax
je 0x1400ae967
mov qword [r14], rax
add r14, 8
dec rsi
add rdi, 2
sub rbp, 2
jne 0x1400ae940
lea rbp, str.found_encrypt_then_mac_extension
lea r14, str.found_extended_master_secret_extension
mov edi, dword [rsp + 0xe0]
mov esi, dword [rsp + 0xe8]
mov rcx, qword [rsp + 0x50]
sub rcx, qword [rsp + 0x80]
add r15, qword [rsp + 0x80]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x70], r15
test rcx, rcx
jne 0x1400ae76a
mov r14, qword [rsp + 0x78]
xor r15d, r15d
jmp 0x1400aef15
lea rax, str.found_supported_point_formats_extension
mov r9d, 0x7d8
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov rax, qword [rbx + 0x70]
mov edx, edi
or byte [rax + 3], r13b
test edi, edi
je 0x1400aee47
movzx ecx, byte [r15 + 4]
lea rax, [rcx + 1]
cmp rax, rdx
jne 0x1400aee47
lea rdx, [r15 + 5]
test rcx, rcx
je 0x1400ae97f
movzx eax, byte [rdx]
cmp al, 2
jb 0x1400aea29
inc rdx
sub rcx, r13
jne 0x1400aea15
jmp 0x1400ae97f
mov ecx, eax
mov r9d, 0x1a5
mov rax, qword [rbx + 0x70]
mov r8, r12
mov dword [rax + 0x2f0], ecx
mov rcx, rbx
movzx eax, byte [rdx]
mov edx, 4
mov dword [rsp + 0x28], eax
lea rax, str.point_format_selected:__d
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
jmp 0x1400ae97f
mov r9d, 0x7ee
mov qword [rsp + 0x20], r11
mov r8, r12
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
cmp edi, r13d
jne 0x1400aee4f
movzx ecx, byte [r15 + 4]
cmp cl, 5
jae 0x1400aee4f
mov rax, qword [rbx + 0x68]
mov byte [rax], cl
jmp 0x1400ae97f
mov r9d, 0x7f8
mov qword [rsp + 0x20], rsi
mov r8, r12
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
test edi, edi
jne 0x1400aee5a
mov rax, qword [rbx]
mov esi, dword [rsp + 0xe8]
mov edi, dword [rsp + 0xe0]
cmp byte [rax + 0xf], r13b
jne 0x1400ae98d
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x94], r13d
jmp 0x1400ae98d
mov r9d, 0x80c
mov qword [rsp + 0x20], rbp
mov r8, r12
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
test edi, edi
jne 0x1400aee62
mov rax, qword [rbx]
cmp byte [rax + 0xa], r13b
jne 0x1400ae97f
cmp dword [rbx + 0x18], 0
mov esi, dword [rsp + 0xe8]
mov edi, dword [rsp + 0xe0]
je 0x1400ae98d
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x98], r13d
jmp 0x1400ae98d
mov r9d, 0x816
mov qword [rsp + 0x20], r14
mov r8, r12
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
test edi, edi
jne 0x1400aee6a
mov rax, qword [rbx]
cmp byte [rax + 0xb], r13b
jne 0x1400ae97f
cmp dword [rbx + 0x18], 0
mov esi, dword [rsp + 0xe8]
mov edi, dword [rsp + 0xe0]
je 0x1400ae98d
mov rax, qword [rbx + 0x70]
mov byte [rax + 6], r13b
jmp 0x1400ae98d
lea rax, str.found_session_ticket_extension
mov r9d, 0x820
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov r8d, edi
lea rdx, [r15 + 4]
mov rcx, rbx
call fcn.1400b0180
test eax, eax
jne 0x1400af35a
jmp 0x1400ae97f
lea rax, str.found_alpn_extension
mov r9d, 0x82a
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
mov rax, qword [rbx]
mov edx, edi
mov r8, qword [rax + 0x188]
mov qword [rsp + 0x68], r8
test r8, r8
je 0x1400ae97f
cmp rdx, 4
jb 0x1400ae6cf
movzx eax, byte [r15 + 4]
movzx ecx, byte [r15 + 5]
shl rax, 8
or rcx, rax
lea rax, [rdi - 2]
cmp rcx, rax
jne 0x1400ae6cf
lea rax, [r15 + 6]
add r15, 4
add r15, rdx
mov qword [rsp + 0x60], rax
mov rcx, rax
cmp rax, r15
je 0x1400aec8b
nop word [rax + rax]
movzx edx, byte [rcx]
mov rax, r15
inc rcx
sub rax, rcx
cmp rdx, rax
ja 0x1400ae6cf
test rdx, rdx
je 0x1400aeea3
add rcx, rdx
cmp rcx, r15
jne 0x1400aec60
mov rax, qword [rsp + 0x60]
mov r14, qword [r8]
test r14, r14
je 0x1400aed03
nop dword [rax]
nop word [rax + rax]
mov rbp, 0xffffffffffffffff
nop word [rax + rax]
inc rbp
cmp byte [r14 + rbp], 0
jne 0x1400aecb0
mov rdi, rax
cmp rax, r15
je 0x1400aecf1
movzx esi, byte [rdi]
inc rdi
cmp rsi, rbp
jne 0x1400aecdf
mov r8d, esi
mov rdx, r14
mov rcx, rdi
call fcn.1400ba580
test eax, eax
je 0x1400aed15
add rdi, rsi
cmp rdi, r15
jne 0x1400aecc2
mov r8, qword [rsp + 0x68]
mov rax, qword [rsp + 0x60]
mov r14, qword [r8 + 8]
add r8, 8
mov qword [rsp + 0x68], r8
test r14, r14
jne 0x1400aeca0
mov r8b, 0x78
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
mov r15, qword [rsp + 0x70]
mov qword [rbx + 0x198], r14
jmp 0x1400ae971
mov r9d, 0x7b5
mov qword [rsp + 0x20], r10
mov r8, r12
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
cmp dword [rbx + 0xc], 0
mov esi, r13d
mov dword [rsp + 0xe8], r13d
mov ecx, edi
je 0x1400aed9a
mov r8, qword [rbx + 0x1b8]
lea rax, [r8 + 1]
cmp rcx, rax
jne 0x1400aeeb5
movzx eax, byte [r15 + 4]
cmp rax, r8
jne 0x1400aeeb5
lea rdx, [rbx + 0x1cc]
lea rcx, [r15 + 5]
call fcn.14008f620
test eax, eax
jne 0x1400aeeb5
mov edi, dword [rsp + 0xe0]
jmp 0x1400ae98d
cmp rcx, rsi
jne 0x1400aeec4
cmp byte [r15 + 4], 0
jne 0x1400aeec4
mov edi, dword [rsp + 0xe0]
mov dword [rbx + 0x1b0], r13d
jmp 0x1400ae98d
mov dword [rsp + 0x28], edx
mov r8, r12
mov qword [rsp + 0x20], r9
mov edx, 3
mov r9d, 0x83e
mov rcx, rbx
call fcn.1400b2b30
jmp 0x1400ae97f
mov r8b, 0x50
mov dl, 2
mov rcx, rbx
mov edi, 0xffff8100
call fcn.1400a4c40
mov eax, edi
jmp 0x1400af35a
mov r9d, 0x161
jmp 0x1400aee14
mov r9d, 0x158
jmp 0x1400aee14
mov r9d, 0x14f
lea rax, str.bad_client_hello_message
mov r8, r12
mov edx, r13d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b2b30
mov r8b, 0x32
mov dl, 2
mov rcx, rbx
mov edi, 0xffff8700
call fcn.1400a4c40
mov eax, edi
jmp 0x1400af35a
mov r9d, 0x192
jmp 0x1400aee70
mov sil, 0x2f
mov r9d, 0x1d8
jmp 0x1400aee73
mov r9d, 0x235
jmp 0x1400aee70
mov r9d, 0x24c
jmp 0x1400aee70
mov r9d, 0x266
mov sil, 0x32
lea rax, str.bad_client_hello_message
mov r8, r12
mov edx, r13d
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdi, rbx
call fcn.1400b2b30
movzx r8d, sil
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
mov r8b, 0x2f
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
mov r9d, 0xd0
lea rax, str.non_matching_renegotiation_info
jmp 0x1400aeed1
mov r9d, 0xdb
lea rax, str.non_zero_length_renegotiation_info
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov edx, r13d
mov r8, r12
call fcn.1400b2b30
mov r8b, 0x28
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
mov r9d, 0x7a1
jmp 0x1400ae6b5
mov r9d, 0x797
jmp 0x1400ae6b5
xor r15d, r15d
mov esi, r15d
mov edi, r15d
mov rbp, qword [rsp + 0x58]
mov r8, r15
mov rdx, rbp
movzx ecx, byte [rdx]
movzx eax, byte [rdx + 1]
shl ecx, 8
or ecx, eax
cmp ecx, 0x5600
je 0x1400aef8d
add r8, 2
add rdx, 2
cmp r8, r14
jb 0x1400aef20
test edi, edi
jne 0x1400aef69
mov edi, 4
mov rcx, rbx
mov edx, edi
call fcn.14009ba50
mov rcx, qword [rbx + 0x70]
test eax, eax
cmovne edi, r15d
add rcx, 8
mov edx, edi
call fcn.14009e2c0
mov rax, rbp
mov rcx, r15
nop
cmp byte [rax], 0
jne 0x1400aef7b
cmp byte [rax + 1], 0xff
je 0x1400aefed
add rcx, 2
add rax, 2
cmp rcx, r14
jb 0x1400aef70
jmp 0x1400af02e
lea rax, str.received_FALLBACK_SCSV
mov r9d, 0x84d
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.1400b2b30
mov rax, qword [rbx]
movzx ecx, byte [rax + 1]
cmp dword [rbx + 0x18], ecx
jge 0x1400aef41
lea rax, str.inapropriate_fallback
mov r9d, 0x851
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, r13d
mov rcx, rbx
call fcn.1400b2b30
mov r8b, 0x56
mov rcx, rbx
mov dl, 2
call fcn.1400a4c40
jmp 0x1400af355
lea rax, str.received_TLS_EMPTY_RENEGOTIATION_INFO
mov r9d, 0x879
mov r8, r12
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
cmp dword [rbx + 0xc], r13d
jne 0x1400af027
lea rax, str.received_RENEGOTIATION_SCSV_during_renegotiation
mov r9d, 0x87e
jmp 0x1400aeed1
mov dword [rbx + 0x1b0], r13d
mov ecx, dword [rbx + 0x1b0]
cmp ecx, r13d
je 0x1400af054
mov rax, qword [rbx]
cmp byte [rax + 7], 2
jne 0x1400af054
mov r9d, 0x88f
lea rax, str.legacy_renegotiation__breaking_off_handshake
jmp 0x1400aeed1
cmp dword [rbx + 0xc], r13d
jne 0x1400af0ae
cmp ecx, r13d
jne 0x1400af075
test esi, esi
jne 0x1400af093
mov r9d, 0x897
lea rax, str.renegotiation_info_extension_missing__secure_
jmp 0x1400aeed1
test ecx, ecx
jne 0x1400af0ae
mov rax, qword [rbx]
cmp byte [rax + 7], cl
jne 0x1400af097
mov r9d, 0x89e
lea rax, str.legacy_renegotiation_not_allowed
jmp 0x1400aeed1
test ecx, ecx
jne 0x1400af0ae
cmp esi, r13d
jne 0x1400af0ae
mov r9d, 0x8a5
lea rax, str.renegotiation_info_extension_present__legacy_
jmp 0x1400aeed1
movsxd rcx, dword [rbx + 0x18]
mov r14d, r15d
mov rax, qword [rbx]
mov r12, r15
mov qword [rsp + 0xe0], r15
mov r13, qword [rax + rcx*8 + 0x38]
cmp dword [r13], 0
je 0x1400af282
mov r15, r13
nop word [rax + rax]
xor eax, eax
mov rdi, rbp
mov esi, eax
nop word [rax + rax]
movzx ecx, byte [rdi]
movzx eax, byte [rdi + 1]
mov edx, dword [r15]
shl ecx, 8
or ecx, eax
cmp ecx, edx
jne 0x1400af12e
lea r8, [rsp + 0xe0]
mov rcx, rbx
mov r14d, 1
call fcn.1400ad350
test eax, eax
jne 0x1400af35a
mov rbp, qword [rsp + 0xe0]
test rbp, rbp
jne 0x1400af158
add rsi, 2
add rdi, 2
mov eax, r14d
cmp rsi, qword [rsp + 0x78]
jb 0x1400af0f0
add r15, 4
inc r12
cmp dword [r15], 0
je 0x1400af241
mov rbp, qword [rsp + 0x58]
jmp 0x1400af0e0
mov rax, qword [rbp + 8]
lea rdi, str.D:usrlocal_scoop_apps_vcpkgcurrent_buildtreesmbedtls_src_v2.28.1_6e0e5fbb91.cleanlibrary_ssl_srv.c
mov qword [rsp + 0x28], rax
mov r9d, 0x8df
lea rax, str.selected_ciphersuite:__s
mov r8, rdi
mov edx, 2
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1400b2b30
mov eax, dword [r13 + r12*4]
mov rcx, qword [rbx + 0x68]
mov dword [rcx + 0x10], eax
mov rax, qword [rbx + 0x70]
mov qword [rax + 0x18], rbp
mov rax, qword [rbx]
inc dword [rbx + 8]
cmp byte [rax + 5], r14b
jne 0x1400af1b2
mov rcx, rbx
call fcn.1400a4990
cmp dword [rbx + 0x18], 3
jne 0x1400af218
mov rcx, rbp
call fcn.1400a8200
test eax, eax
je 0x1400af1f0
mov rcx, qword [rbx + 0x70]
mov edx, eax
add rcx, 8
call fcn.14009e2d0
mov ecx, eax
call fcn.14009d130
movzx eax, al
mov r9d, 0x8f7
mov dword [rsp + 0x28], eax
lea rax, str.client_hello_v3__signature_algorithm_ext:__d
jmp 0x1400af203
xor eax, eax
mov r9d, 0x8fc
mov dword [rsp + 0x28], eax
lea rax, str.no_hash_algorithm_for_signature_algorithm__u___should_not_happen
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.1400b2b30
lea rax, str.__parse_client_hello
mov r9d, 0x901
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.1400b2b30
xor eax, eax
jmp 0x1400af35a
test eax, eax
je 0x1400af282
lea rax, str.got_ciphersuites_in_common__but_none_of_them_usable
mov r9d, 0x8d1
lea r8, str.D:usrlocal_scoop_apps_vcpkgcurrent_buildtreesmbedtls_src_v2.28.1_6e0e5fbb91.cleanlibrary_ssl_srv.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.1400b2b30
mov r8b, 0x28
mov dl, 2
mov rcx, rbx
call fcn.1400a4c40
mov eax, 0xffff9680
jmp 0x1400af35a
lea rax, str.got_no_ciphersuites_in_common
mov r9d, 0x8d8
lea r8, str.D:usrlocal_scoop_apps_vcpkgcurrent_buildtreesmbedtls_src_v2.28.1_6e0e5fbb91.cleanlibrary_ssl_srv.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.1400b2b30
mov r8b, 0x28
mov dl, 2
mov rcx, rbx
call fcn.1400a4c40
mov eax, 0xffff8c80
jmp 0x1400af35a
mov r9d, 0x753
jmp 0x1400ae6b5
mov r9d, 0x73f
jmp 0x1400ae6b5
mov r9d, 0x6eb
jmp 0x1400ae6b5
movzx eax, byte [rdx + 3]
mov r9d, 0x6ce
mov dword [rsp + 0x40], eax
mov edx, r13d
mov eax, dword [rbx + 0x18]
mov rcx, rbx
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x30], eax
lea rax, str.client_only_supports_ssl_smaller_than_minimum___d:_d______d:_d_
mov dword [rsp + 0x28], r8d
mov r8, r12
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov r8b, 0x46
mov dl, 2
mov rcx, rbx
call fcn.1400a4c40
mov eax, 0xffff9180
jmp 0x1400af35a
mov r9d, 0x5f7
mov r8, r12
jmp 0x1400af33e
mov r9d, 0x5e5
mov rcx, rbx
lea rax, str.bad_client_hello_message
mov edx, r13d
mov qword [rsp + 0x20], rax
call fcn.1400b2b30
mov eax, 0xffff8700
mov rsi, qword [rsp + 0x98]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret