Function at 0x140ca5d50
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x30
mov rax, qword [rcx + 0x70]
mov rbx, rcx
xor edi, edi
movzx ecx, byte [rax + 4]
cmp cl, 3
jne 0x140c99c18
mov rax, qword [rbx]
movzx ecx, byte [rax + 6]
movzx ebp, cl
lea rax, [0x140dbbc70]
mov rcx, rbx
mov qword [rsp + 0x40], rsi
mov r9d, 0xad3
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x48], r14
mov edx, 2
call fcn.140caf730
mov rax, qword [rbx + 0x70]
mov rcx, qword [rax + 0x18]
mov edx, dword [rcx + 0x18]
lea eax, [rdx - 1]
cmp eax, 9
ja case.0x140c99c72.5
lea r8, [0x140000000]
cdqe
mov ecx, dword [r8 + rax*4 + 0xc99ea4]
add rcx, r8
jmp rcx
mov rax, qword [rbx]
cmp byte [rax + 4], 1
jne 0x140c99cd6
cmp edx, 7
je case.0x140c99c72.5
test ebp, ebp
jne 0x140c99cd6
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x78], 0x80
lea rax, str.__skip_parse_certificate
mov r9d, 0xad7
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
inc dword [rbx + 8]
mov eax, edi
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140c99d15
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
lea rax, str.mbedtls_ssl_read_record
mov r9d, 0xae7
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
jmp 0x140c99cba
mov rax, qword [rbx]
cmp byte [rax + 4], 0
je 0x140c99db8
movzx edx, byte [rax + 5]
mov ecx, 7
cmp dl, 1
mov eax, reloc.WS2_32.dll_ntohs
cmovne eax, ecx
cmp qword [rbx + 0x120], rax
jne 0x140c99db8
cmp dword [rbx + 0xe8], 0x16
jne 0x140c99db8
mov rcx, qword [rbx + 0xd8]
cmp byte [rcx], 0xb
jne 0x140c99db8
cmp dl, 1
mov eax, reloc.WS2_32.dll_inet_ntoa
mov r8d, 4
cmovne eax, r8d
cmp word [rax + rcx], 0
jne 0x140c99db8
cmp byte [rax + rcx + 2], 0
jne 0x140c99db8
lea rax, str.TLSv1_client_has_no_certificate
mov r9d, 0x9ad
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x78], 0x40
cmp ebp, 1
je 0x140c99cb7
mov eax, 0xffff8b80
jmp 0x140c99cbc
mov eax, 0x68
mov rcx, rbx
mov rdi, qword [rbx + rax]
lea r14, [rbx + rax]
mov rcx, qword [rdi + 0x70]
test rcx, rcx
je 0x140c99de7
call fcn.140cafa30
mov rcx, qword [rdi + 0x70]
call fcn.140cccd80
mov qword [rdi + 0x70], 0
mov edx, 0x268
mov ecx, 1
call fcn.140cd7980
mov rsi, rax
test rax, rax
jne 0x140c99e44
lea rax, str.alloc__zu_bytes__failed
mov qword [rsp + 0x28], 0x268
mov r9d, 0xafe
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x50
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8100
jmp 0x140c99cbc
mov rcx, rsi
call fcn.140cb02d0
mov rdx, rsi
mov rcx, rbx
call fcn.140c9c030
mov edi, eax
test eax, eax
jne 0x140c99e8c
xor r9d, r9d
mov r8, rsi
mov edx, ebp
mov rcx, rbx
call fcn.140c9c3f0
mov edi, eax
test eax, eax
jne 0x140c99e8c
mov rax, qword [r14]
mov r9d, 0xb44
mov qword [rax + 0x70], rsi
lea rax, str.__parse_certificate
jmp 0x140c99c9e
mov rcx, rsi
call fcn.140cafa30
mov rcx, rsi
call fcn.140cccd80
jmp 0x140c99cba
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x50
mov rax, qword [0x140f4c000]
xor rax, rsp
mov qword [rsp + 0x40], rax
lea rax, [0x140dbbf50]
mov r9d, 0xdd9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov rax, qword [rbx]
lea rdx, [rsp + 0x30]
mov r9, qword [rbx + 0x70]
mov rcx, rbx
movzx r8d, byte [rax + 4]
xor r8d, 1
call qword [r9 + gethostbyaddr]
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140c99f6d
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
lea rax, str.mbedtls_ssl_read_record
mov r9d, 0xde6
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
jmp 0x140c9a0ff
cmp dword [rbx + 0xe8], 0x16
je 0x140c99fb3
lea rax, str.bad_finished_message
mov r9d, 0xdeb
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov edi, 0xffff8900
jmp 0x140c9a0ff
mov rdx, qword [rbx + 0xd8]
cmp byte [rdx], 0x14
jne 0x140c9a0c7
mov rax, qword [rbx]
mov ecx, reloc.WS2_32.dll_recv
movzx r8d, byte [rax + 5]
mov eax, 0x18
cmp r8b, 1
cmovne eax, ecx
cmp qword [rbx + 0x120], rax
jne 0x140c9a0c7
cmp r8b, 1
mov eax, 4
mov ecx, reloc.WS2_32.dll_inet_ntoa
mov r8d, reloc.WS2_32.dll_inet_ntoa
cmovne ecx, eax
add rcx, rdx
lea rdx, [rsp + 0x30]
call fcn.140c8c420
test eax, eax
je 0x140c9a03f
lea rax, str.bad_finished_message
mov r9d, 0xdfd
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, reloc.WS2_32.dll_gethostbyaddr
jmp 0x140c9a0f0
mov eax, dword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mov qword [rbx + 0x1b8], reloc.WS2_32.dll_inet_ntoa
movsd qword [rbx + 0x1cc], xmm0
mov dword [rbx + 0x1d4], eax
mov rax, qword [rbx + 0x70]
cmp byte [rax + 2], 0
je 0x140c9a08b
mov rax, qword [rbx]
cmp byte [rax + 4], 0
jne 0x140c9a07c
mov dword [rbx + 8], 0xa
cmp byte [rax + 4], 1
jne 0x140c9a08e
mov dword [rbx + 8], reloc.WS2_32.dll_ntohs
jmp 0x140c9a08e
inc dword [rbx + 8]
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140c9a09f
mov rcx, rbx
call fcn.140ca1830
lea rax, str.__parse_finished
mov r9d, 0xe1e
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
jmp 0x140c9a0ff
lea rax, str.bad_finished_message
mov r9d, 0xdf4
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov edi, 0xffff8180
mov edx, reloc.WS2_32.dll_inet_ntoa
lea rcx, [rsp + 0x30]
call fcn.140c6d8e0
mov eax, edi
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140cbacb0
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x40
mov rax, qword [rcx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov r9d, 0x865
mov edx, 2
mov rdi, rcx
mov rbx, qword [rax + 0x18]
lea rax, [0x140dbb9b0]
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov eax, dword [rbx + 0x18]
dec eax
cmp eax, 9
ja case.0x140c9ae19.5
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0xc9b104]
add rcx, rdx
jmp rcx
mov rcx, qword [rdi]
movzx eax, byte [rcx + 4]
test al, al
jne 0x140c9ae69
cmp dword [rdi + 0x18c], 0
jne 0x140c9aeca
lea rax, str.__skip_write_certificate
mov r9d, 0x870
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rdi
call fcn.140caf730
inc dword [rdi + 8]
xor eax, eax
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
cmp al, 1
jne 0x140c9aeca
mov rax, qword [rdi + 0x70]
test rax, rax
je 0x140c9ae82
mov rax, qword [rax + 0x3b8]
test rax, rax
jne 0x140c9ae8e
mov rax, qword [rcx + 0x110]
test rax, rax
je 0x140c9ae94
cmp qword [rax], 0
jne 0x140c9aeca
lea rax, str.got_no_certificate_to_send
mov r9d, 0x88a
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf730
mov eax, 0xffff8a80
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
mov rax, qword [rdi + 0x70]
mov qword [rsp + 0x50], rbp
test rax, rax
je 0x140c9aee4
mov rax, qword [rax + 0x3b8]
test rax, rax
jne 0x140c9aef0
mov rax, qword [rcx + 0x110]
test rax, rax
je 0x140c9aef3
mov rax, qword [rax]
mov qword [rsp + 0x28], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
lea rax, str.own_certificate
mov qword [rsp + 0x58], rsi
mov r9d, 0x890
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf140
mov rbp, qword [rdi + 0x70]
mov ebx, 7
test rbp, rbp
je 0x140c9af3d
mov rbp, qword [rbp + 0x3b8]
test rbp, rbp
jne 0x140c9af50
mov rax, qword [rdi]
mov rbp, qword [rax + 0x110]
test rbp, rbp
je 0x140c9afcd
mov rbp, qword [rbp]
test rbp, rbp
je 0x140c9afcd
nop dword [rax]
mov rsi, qword [rbp + 0x10]
mov eax, 0x3ffd
sub rax, rbx
cmp rsi, rax
ja 0x140c9b06a
mov rax, qword [rdi + 0x160]
mov rcx, rsi
shr rcx, 0x10
mov r8, rsi
mov byte [rbx + rax], cl
mov rcx, rsi
mov rax, qword [rdi + 0x160]
shr rcx, 8
mov byte [rax + rbx + 1], cl
mov rax, qword [rdi + 0x160]
mov byte [rax + rbx + 2], sil
add rbx, 3
mov rcx, qword [rdi + 0x160]
mov rdx, qword [rbp + 0x18]
add rcx, rbx
call fcn.140cfb740
mov rbp, qword [rbp + 0x260]
add rbx, rsi
test rbp, rbp
jne 0x140c9af60
mov rax, qword [rdi + 0x160]
lea rdx, [rbx - 7]
mov rcx, rdx
shr rdx, 8
shr rcx, 0x10
mov byte [rax + 4], cl
lea ecx, [rbx - 7]
mov rax, qword [rdi + 0x160]
mov byte [rax + 5], dl
mov rax, qword [rdi + 0x160]
mov byte [rax + 6], cl
mov rcx, rdi
mov rax, qword [rdi + 0x160]
mov qword [rdi + 0x170], rbx
mov dword [rdi + reloc.WS2_32.dll_shutdown8], 0x16
mov byte [rax], reloc.WS2_32.dll_inet_addr
inc dword [rdi + 8]
call fcn.140ca21b0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov ebx, eax
mov rcx, rdi
test eax, eax
je 0x140c9b0ac
mov dword [rsp + 0x28], eax
mov r9d, 0x8be
lea rax, str.mbedtls_ssl_write_handshake_msg
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, ebx
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 0x30], 0x4000
lea rax, [rbx + 3]
add rax, rsi
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x28], rax
mov r9d, 0x8a3
lea rax, str.certificate_too_large___zu____zu
mov edx, 1
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov eax, 0xffff8b00
jmp 0x140c9b055
lea rax, str.__write_certificate
mov r9d, 0x8c2
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
xor eax, eax
jmp 0x140c9b055
lea rax, str.__skip_write_certificate
mov r9d, 0x868
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rdi
call fcn.140caf730
inc dword [rdi + 8]
mov rbx, qword [rsp + 0x60]
xor eax, eax
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
lea rax, [0x140dbbeb0]
mov r9d, 0xd5e
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov rdx, qword [rbx + 0x90]
mov rcx, rbx
call fcn.140ca1eb0
mov rax, qword [rbx]
lea rsi, [rbx + 0x70]
mov rdx, qword [rbx + 0x160]
mov rcx, rbx
mov r9, qword [rsi]
add rdx, 4
movzx r8d, byte [rax + 4]
call qword [r9 + gethostbyaddr]
mov edi, dword [rbx + 0x18]
lea rcx, [rbx + 0x1c0]
mov rdx, qword [rbx + 0x160]
mov eax, 0x24
test edi, edi
mov r8d, reloc.WS2_32.dll_inet_ntoa
cmove r8d, eax
add rdx, 4
mov qword [rbx + 0x1b8], r8
call fcn.140cfb740
test edi, edi
mov dword [rbx + reloc.WS2_32.dll_shutdown8], 0x16
mov eax, reloc.WS2_32.dll_recv
mov ecx, 0x28
cmove eax, ecx
mov qword [rbx + 0x170], rax
mov rax, qword [rbx + 0x160]
mov byte [rax], reloc.WS2_32.dll_sendto
mov rax, qword [rsi]
cmp byte [rax + 2], 0
je 0x140c9b21d
mov rax, qword [rbx]
cmp byte [rax + 4], 0
jne 0x140c9b20e
mov dword [rbx + 8], reloc.WS2_32.dll_ntohs
lea rsi, [rbx + 0x70]
cmp byte [rax + 4], 1
jne 0x140c9b220
mov dword [rbx + 8], 0xa
jmp 0x140c9b220
inc dword [rbx + 8]
lea rax, str.switching_to_new_transform_spec_for_outbound_data
mov r9d, 0xd8c
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140c9b2dd
mov rcx, qword [rsi]
mov rax, qword [rbx + 0x80]
mov qword [rcx + 0x498], rax
mov rcx, qword [rsi]
mov rax, qword [rbx + 0x180]
mov qword [rcx + 0x4a0], rax
xor eax, eax
mov dword [rbx + 0x182], eax
mov cl, 2
mov word [rbx + 0x186], ax
nop word [rax + rax]
movzx eax, cl
add byte [rax + rbx + 0x17f], 1
jne 0x140c9b2e6
add cl, 0xff
jne 0x140c9b290
lea rax, str.DTLS_epoch_would_wrap
mov r9d, 0xda2
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff9480
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
xor eax, eax
mov qword [rbx + 0x180], rax
mov rax, qword [rbx + 0x90]
mov qword [rbx + 0x80], rax
mov rax, qword [rbx + 0x68]
mov qword [rbx + 0x58], rax
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140c9b30d
mov rcx, rbx
call fcn.140ca1bd0
mov rcx, rbx
call fcn.140ca21b0
mov edi, eax
test eax, eax
je 0x140c9b357
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
lea rax, str.mbedtls_ssl_write_handshake_msg
mov r9d, 0xdbc
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140c9b3aa
mov rcx, rbx
call fcn.140c9ffa0
mov edi, eax
test eax, eax
je 0x140c9b3aa
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
lea rax, str.mbedtls_ssl_flight_transmit
mov r9d, 0xdc3
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
lea rax, str.__write_finished
mov r9d, 0xdc8
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_tls.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
mov rbx, qword [rsp + 0x40]
xor eax, eax
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
lea rax, [0x140dbdf10]
mov r9d, 0x12dc
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov edi, eax
mov rcx, rbx
test eax, eax
je 0x140ca09da
mov dword [rsp + 0x28], eax
mov r9d, 0x12df
lea rax, str.mbedtls_ssl_read_record
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, edi
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
cmp dword [rbx + 0xe8], 0x14
je 0x140ca0a1c
lea rax, str.bad_change_cipher_spec_message
mov r9d, 0x12e4
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8900
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
lea rax, str.switching_to_new_transform_spec_for_inbound_data
mov r9d, 0x12f1
mov edx, 3
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rbx + 0x90]
mov qword [rbx + 0x78], rax
mov rax, qword [rbx + 0x68]
mov qword [rbx + 0x50], rax
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140ca0aa4
xor eax, eax
add word [rbx + 0x100], 1
mov qword [rbx + 0x110], rax
mov qword [rbx + 0x118], rax
jne 0x140ca0ab0
lea rax, str.DTLS_epoch_would_wrap
mov r9d, 0x12fd
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff9480
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov rax, qword [rbx + 0xb8]
xor ecx, ecx
mov qword [rax], rcx
mov rcx, rbx
call fcn.140ca1e50
inc dword [rbx + 8]
lea rax, str.__parse_change_cipher_spec
mov r9d, 0x1315
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov edx, 2
mov rcx, rbx
call fcn.140caf730
mov rbx, qword [rsp + 0x40]
xor eax, eax
add rsp, 0x30
pop rdi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
lea rax, [0x140dbded0]
mov r9d, 0x12c6
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov rax, qword [rbx + 0x160]
mov rcx, rbx
mov dword [rbx + 0x168], reloc.WS2_32.dll_sendto
mov qword [rbx + 0x170], 1
mov byte [rax], 1
inc dword [rbx + 8]
call fcn.140ca21b0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_msg.c
mov edi, eax
mov rcx, rbx
test eax, eax
je 0x140ca2187
mov dword [rsp + 0x28], eax
mov r9d, 0x12cf
lea rax, str.mbedtls_ssl_write_handshake_msg
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, edi
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
lea rax, str.__write_change_cipher_spec
mov r9d, 0x12d3
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rbx, qword [rsp + 0x40]
xor eax, eax
add rsp, 0x30
pop rdi
ret
push rbx
sub rsp, 0x30
mov eax, dword [rcx + 8]
mov rbx, rcx
cmp eax, 0x10
je 0x140ca51a6
cmp qword [rcx + 0x70], 0
je 0x140ca51a6
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.client_state:__d
mov qword [rsp + 0x40], rdi
mov r9d, 0x10a4
mov qword [rsp + 0x20], rax
mov edx, 2
call fcn.140caf730
mov rcx, rbx
call fcn.140ca0400
mov edi, eax
test eax, eax
jne 0x140ca5161
mov rax, qword [rbx]
cmp byte [rax + 5], 1
jne 0x140ca4e83
mov rax, qword [rbx + 0x70]
cmp byte [rax + 7], 1
jne 0x140ca4e83
mov rcx, rbx
call fcn.140c9ffa0
mov edi, eax
test eax, eax
jne 0x140ca5161
movsxd rdx, dword [rbx + 8]
cmp edx, 0xc
jne 0x140ca4eaf
mov rax, qword [rbx + 0x70]
cmp byte [rax + 5], 0
je 0x140ca4eaf
mov dword [rbx + 8], reloc.WS2_32.dll_recvfrom
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca59b0
cmp edx, 0x11
ja case.0x140ca4eca.16
lea r8, [0x140000000]
mov ecx, dword [r8 + rdx*4 + 0xca51b4]
add rcx, r8
jmp rcx
mov eax, edi
mov dword [rbx + 8], 1
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca7c50
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca5d50
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140c99bf0
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca6c80
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca52e0
lea rax, [0x140dc2b38]
mov r9d, 0xdc0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140ca4faa
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_read_record
mov r9d, 0xdc3
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
cmp dword [rbx + 0xe8], 0x16
je 0x140ca4feb
lea rax, str.bad_server_hello_done_message
mov r9d, 0xdc8
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov edi, 0xffff8900
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
mov rcx, qword [rbx]
mov eax, reloc.WS2_32.dll_inet_ntoa
mov edx, 4
cmp byte [rcx + 5], 1
cmovne eax, edx
cmp qword [rbx + 0x120], rax
jne 0x140ca505a
mov rax, qword [rbx + 0xd8]
cmp byte [rax], 0xe
jne 0x140ca505a
inc dword [rbx + 8]
cmp byte [rcx + 5], 1
jne 0x140ca5025
mov rcx, rbx
call fcn.140ca1830
lea rax, str.__parse_server_hello_done
mov r9d, 0xddc
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
xor edi, edi
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
lea rax, str.bad_server_hello_done_message
mov r9d, 0xdce
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov edi, 0xffff8480
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140c9adc0
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca8f20
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca7840
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca20f0
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140c9b130
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140ca0960
mov rcx, rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
jmp 0x140c99ed0
lea rax, str.handshake:_done
mov r9d, 0x1112
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
mov eax, edi
mov dword [rbx + 8], reloc.WS2_32.dll_ntohs
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
mov rcx, rbx
call fcn.140c99820
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
mov dword [rsp + 0x28], edx
lea rax, str.invalid_state__d
mov edx, 1
mov qword [rsp + 0x20], rax
mov r9d, 0x111b
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov rcx, rbx
call fcn.140caf730
mov rdi, qword [rsp + 0x40]
mov eax, 0xffff8f00
add rsp, 0x30
pop rbx
ret
mov eax, 0xffff8f00
add rsp, 0x30
pop rbx
ret
push rbx
push rdi
sub rsp, 0x58
mov rax, qword [rcx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0xd23
mov edx, 2
mov rdi, rcx
mov rbx, qword [rax + 0x18]
lea rax, [0x140dc2a60]
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov eax, dword [rbx + 0x18]
dec eax
cmp eax, 9
ja case.0x140ca5336.5
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0xca56a4]
add rcx, rdx
jmp rcx
mov edx, 1
mov rcx, rdi
call fcn.140ca1490
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
test eax, eax
je 0x140ca537e
mov dword [rsp + 0x28], eax
mov r9d, 0xd2c
lea rax, str.mbedtls_ssl_read_record
mov edx, 1
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, ebx
add rsp, 0x58
pop rdi
pop rbx
ret
cmp dword [rdi + 0xe8], 0x16
je 0x140ca53bf
lea rax, str.bad_certificate_request_message
mov r9d, 0xd31
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rdi
call fcn.140ca1a70
mov eax, 0xffff8900
add rsp, 0x58
pop rdi
pop rbx
ret
mov rax, qword [rdi + 0xd8]
lea rdx, [0x140d32e90]
inc dword [rdi + 8]
mov r9d, 0xd3d
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x80], r12
movzx ecx, byte [rax]
xor eax, eax
cmp cl, 0xd
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x48], r14
mov rcx, rdi
sete al
mov qword [rsp + 0x40], r15
mov dword [rdi + 0x18c], eax
lea rax, [0x140d306a8]
cmove rax, rdx
mov edx, 3
mov qword [rsp + 0x28], rax
lea rax, str.got__s_certificate_request
mov qword [rsp + 0x20], rax
call fcn.140caf730
cmp dword [rdi + 0x18c], 0
jne 0x140ca5469
mov dword [rdi + 0x12c], 1
lea rax, str.__parse_certificate_request
mov r9d, 0xdb5
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rdi
call fcn.140caf730
xor eax, eax
jmp 0x140ca54cd
mov rdx, qword [rdi]
mov r8d, 4
mov r13, qword [rdi + 0xd8]
mov eax, reloc.WS2_32.dll_inet_ntoa
movzx ecx, byte [rdx + 5]
cmp cl, 1
cmovne eax, r8d
mov r8, qword [rdi + 0x120]
cmp r8, rax
ja 0x140ca54f0
lea rax, str.bad_certificate_request_message
mov r9d, 0xd61
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rdi
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rdi
call fcn.140ca1a70
mov eax, 0xffff8580
mov r14, qword [rsp + 0x48]
mov r13, qword [rsp + 0x50]
mov r12, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x70]
mov r15, qword [rsp + 0x40]
add rsp, 0x58
pop rdi
pop rbx
ret
movzx r14d, byte [rax + r13]
lea r9, [rax + r13]
cmp cl, 1
mov r15d, reloc.WS2_32.dll_ntohl
mov eax, r15d
mov r10d, 6
cmovne eax, r10d
add rax, r14
cmp r8, rax
ja 0x140ca552e
lea rax, str.bad_certificate_request_message
mov r9d, 0xd74
mov qword [rsp + 0x20], rax
jmp 0x140ca54a7
cmp dword [rdi + 0x18], 3
mov r12d, reloc.WS2_32.dll_ntohs
mov r11d, 7
jne 0x140ca5610
movzx eax, byte [r9 + r14 + 2]
movzx ebp, byte [r9 + r14 + 1]
shl rbp, 8
or rbp, rax
mov eax, r12d
cmp cl, 1
cmovne eax, r11d
add rax, rbp
add rax, r14
cmp r8, rax
ja 0x140ca5583
lea rax, str.bad_certificate_request_message
mov r9d, 0xd93
mov qword [rsp + 0x20], rax
jmp 0x140ca54a7
lea rbx, [r9 + 3]
add rbx, r14
test rbp, rbp
je 0x140ca5609
mov qword [rsp + 0x78], rsi
lea r12, str.Supported_Signature_Algorithm_found:__d__d
lea rsi, [rbp - 1]
shr rsi, 1
inc rsi
nop word [rax + rax]
movzx ecx, byte [rbx]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
movzx eax, byte [rbx + 1]
mov r9d, 0xda0
mov dword [rsp + 0x30], eax
mov edx, 3
mov dword [rsp + 0x28], ecx
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.140caf730
lea rbx, [rbx + 2]
sub rsi, 1
jne 0x140ca55b0
mov rsi, qword [rsp + 0x78]
mov r12d, reloc.WS2_32.dll_ntohs
mov rdx, qword [rdi]
mov r10d, 6
mov r8, qword [rdi + 0x120]
mov r11d, 7
add r14, 2
add r14, rbp
movzx edx, byte [rdx + 5]
mov ecx, 5
cmp dl, 1
mov eax, reloc.WS2_32.dll_listen
cmovne eax, ecx
add rax, r13
movzx ecx, byte [rax + r14]
shl rcx, 8
cmp dl, 1
cmovne r15, r10
add r15, r13
movzx eax, byte [r15 + r14]
or rax, rcx
cmp dl, 1
cmovne r12, r11
add rax, r14
add r12, rax
cmp r8, r12
je 0x140ca543f
lea rax, str.bad_certificate_request_message
mov r9d, 0xdae
mov qword [rsp + 0x20], rax
jmp 0x140ca54a7
lea rax, str.__skip_parse_certificate_request
mov r9d, 0xd26
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rdi
call fcn.140caf730
inc dword [rdi + 8]
xor eax, eax
add rsp, 0x58
pop rdi
pop rbx
ret
push rbx
push rdi
sub rsp, 0x38
lea rax, [0x140dc2d58]
mov r9d, 0x1032
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140ca5a23
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_read_record
mov r9d, 0x1035
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
add rsp, 0x38
pop rdi
pop rbx
ret
cmp dword [rbx + 0xe8], 0x16
je 0x140ca5a6b
lea rax, str.bad_new_session_ticket_message
mov r9d, 0x103a
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8900
add rsp, 0x38
pop rdi
pop rbx
ret
mov rdx, qword [rbx + 0xd8]
cmp byte [rdx], 4
jne 0x140ca5d0c
mov rax, qword [rbx]
mov ecx, reloc.WS2_32.dll_select
mov r9, qword [rbx + 0x120]
movzx r8d, byte [rax + 5]
mov eax, 0xa
cmp r8b, 1
cmovne ecx, eax
cmp r9, rcx
jb 0x140ca5d0c
mov qword [rsp + 0x50], rbp
cmp r8b, 1
mov qword [rsp + 0x58], rsi
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov eax, 4
mov esi, reloc.WS2_32.dll_inet_ntoa
cmovne esi, eax
add rsi, rdx
movzx eax, byte [rsi + 2]
movzx ebp, byte [rsi + 1]
movzx edi, byte [rsi + 4]
shl ebp, 8
or ebp, eax
shl rdi, 8
movzx eax, byte [rsi]
shl eax, 0x18
shl ebp, 8
or ebp, eax
movzx eax, byte [rsi + 3]
or ebp, eax
movzx eax, byte [rsi + 5]
or rdi, rax
lea rax, [rcx + rdi]
mov rcx, rbx
cmp rax, r9
je 0x140ca5b41
lea rax, str.bad_new_session_ticket_message
mov r9d, 0x105c
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov rbp, qword [rsp + 0x50]
mov eax, 0xffff9200
mov rsi, qword [rsp + 0x58]
add rsp, 0x38
pop rdi
pop rbx
ret
lea rax, str.ticket_length:__zu
mov qword [rsp + 0x28], rdi
mov r9d, 0x1062
mov qword [rsp + 0x20], rax
mov edx, 3
call fcn.140caf730
mov rax, qword [rbx + 0x70]
mov byte [rax + 5], 0
mov dword [rbx + 8], reloc.WS2_32.dll_inet_ntoa
test rdi, rdi
jne 0x140ca5b89
mov rbp, qword [rsp + 0x50]
xor eax, eax
mov rsi, qword [rsp + 0x58]
add rsp, 0x38
pop rdi
pop rbx
ret
mov rdx, qword [rbx + 0x60]
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x30], r15
xor r15d, r15d
test rdx, rdx
je 0x140ca5bdd
mov rcx, qword [rdx + 0x80]
test rcx, rcx
je 0x140ca5bdd
mov rdx, qword [rdx + 0x88]
call fcn.140c6d8e0
mov rcx, qword [rbx + 0x60]
mov rcx, qword [rcx + 0x80]
call fcn.140cccd80
mov rax, qword [rbx + 0x60]
mov qword [rax + 0x80], r15
mov rax, qword [rbx + 0x60]
mov qword [rax + 0x88], r15
mov rcx, qword [rbx + 0x68]
mov rdx, qword [rcx + 0x88]
mov rcx, qword [rcx + 0x80]
call fcn.140c6d8e0
mov rcx, qword [rbx + 0x68]
mov rcx, qword [rcx + 0x80]
call fcn.140cccd80
mov rax, qword [rbx + 0x68]
mov rdx, rdi
mov ecx, 1
mov qword [rax + 0x80], r15
mov rax, qword [rbx + 0x68]
mov qword [rax + 0x88], r15
call fcn.140cd7980
mov r14, rax
test rax, rax
jne 0x140ca5c82
lea rax, str.ticket_alloc_failed
mov r9d, 0x107f
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x50
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8100
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x38
pop rdi
pop rbx
ret
lea rdx, [rsi + 6]
mov r8, rdi
mov rcx, r14
call fcn.140cfb740
mov rax, qword [rbx + 0x68]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x1090
mov edx, 3
mov rcx, rbx
mov qword [rax + 0x80], r14
mov rax, qword [rbx + 0x68]
mov qword [rax + 0x88], rdi
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x90], ebp
lea rax, str.ticket_in_use__discarding_session_id
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rbx + 0x68]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x1093
mov edx, 2
mov rcx, rbx
mov qword [rax + 0x18], r15
lea rax, str.__parse_new_session_ticket
mov qword [rsp + 0x20], rax
call fcn.140caf730
xor eax, eax
jmp 0x140ca5c67
lea rax, str.bad_new_session_ticket_message
mov r9d, 0x104e
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff9200
add rsp, 0x38
pop rdi
pop rbx
ret
push rbx
push rsi
push rdi
push r13
push r15
sub rsp, 0x70
lea rax, [0x140dc21d8]
xor esi, esi
lea r13, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0xb0], rsi
mov r8, r13
mov qword [rsp + 0x20], rax
mov r9d, 0x7ec
mov edx, 2
mov rbx, rcx
call fcn.140caf730
mov r15d, 1
mov rcx, rbx
mov edx, r15d
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140ca5dd8
mov dword [rsp + 0x28], eax
mov r9d, 0x7f0
lea rax, str.mbedtls_ssl_read_record
mov r8, r13
mov edx, r15d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
add rsp, 0x70
pop r15
pop r13
pop rdi
pop rsi
pop rbx
ret
cmp dword [rbx + 0xe8], 0x16
mov qword [rsp + 0xa0], rbp
mov rbp, qword [rbx + 0xd8]
je 0x140ca5ea2
cmp dword [rbx + 0xc], r15d
jne 0x140ca5e6b
mov ecx, dword [rbx + 0x10]
mov rax, qword [rbx]
inc ecx
mov dword [rbx + 0x10], ecx
mov edx, dword [rax + 0x20]
test edx, edx
js 0x140ca5e3a
cmp ecx, edx
jle 0x140ca5e3a
lea rax, str.renegotiation_requested__but_not_honored_by_server
mov r9d, 0x7fe
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff8900
jmp 0x140ca63ff
lea rax, str.non_handshake_message_during_renegotiation
mov r9d, 0x803
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff9500
mov dword [rbx + 0x12c], r15d
jmp 0x140ca63ff
lea rax, str.bad_server_hello_message
mov r9d, 0x80a
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, rbx
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8900
jmp 0x140ca63ff
mov rax, qword [rbx]
cmp byte [rax + 5], r15b
jne 0x140ca5f28
cmp byte [rbp], 3
jne 0x140ca5f02
lea rax, str.received_hello_verify_request
mov r9d, 0x815
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
lea rax, str.__parse_server_hello
mov r9d, 0x816
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
mov rcx, rbx
call fcn.140ca56d0
jmp 0x140ca63ff
mov rcx, qword [rbx + 0x70]
mov rcx, qword [rcx + 0x468]
call fcn.140cccd80
mov rax, qword [rbx + 0x70]
mov qword [rax + 0x468], rsi
mov rax, qword [rbx + 0x70]
mov byte [rax + 0x470], sil
mov rax, qword [rbx]
mov edx, 0x2a
mov qword [rsp + 0x60], r14
mov r14d, getservbyname
movzx ecx, byte [rax + 5]
mov eax, r14d
cmp cl, r15b
cmovne eax, edx
cmp qword [rbx + 0x120], rax
jb 0x140ca6c44
cmp byte [rbp], 2
jne 0x140ca6c44
cmp cl, r15b
mov qword [rsp + 0x30], 2
mov edx, 4
mov qword [rsp + 0x68], r12
mov eax, reloc.WS2_32.dll_inet_ntoa
mov r9d, 0x836
cmovne eax, edx
mov r8, r13
add rbp, rax
mov edx, 3
lea rax, str.server_hello__version
mov qword [rsp + 0x28], rbp
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caeeb0
mov rax, qword [rbx]
lea rdx, [rbx + 0x18]
mov r9, rbp
lea rcx, [rbx + 0x14]
movzx r8d, byte [rax + 5]
call fcn.140ca17f0
mov rdx, qword [rbx]
mov r8d, dword [rbx + 0x14]
movzx r9d, byte [rdx + 2]
cmp r8d, r9d
jl 0x140ca6be5
movzx eax, byte [rdx + 3]
mov ecx, dword [rbx + 0x18]
cmp ecx, eax
jl 0x140ca6be5
movzx eax, byte [rdx]
cmp r8d, eax
jg 0x140ca6be5
movzx eax, byte [rdx + 1]
cmp ecx, eax
jg 0x140ca6be5
movzx eax, byte [rbp + 2]
lea rdi, [rbp + 2]
movzx ecx, byte [rbp + 3]
mov r9d, 0x851
shl eax, 8
mov r8, r13
or ecx, eax
mov edx, 3
movzx eax, byte [rbp + 4]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbp + 5]
shl ecx, 8
or ecx, eax
lea rax, str.server_hello__current_time:__lu
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rbx + 0x70]
mov r9d, 0x857
movups xmm0, xmmword [rdi]
mov qword [rsp + 0x30], 0x20
mov r8, r13
mov qword [rsp + 0x28], rdi
mov edx, 3
movups xmmword [rax + 0x6c8], xmm0
mov rcx, rbx
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x6d8], xmm1
movzx esi, byte [rbp + 0x22]
lea rax, str.server_hello__random_bytes
mov qword [rsp + 0x20], rax
call fcn.140caeeb0
cmp rsi, 0x20
jbe 0x140ca60c0
lea rax, str.bad_server_hello_message
mov r9d, 0x85a
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, rbx
call fcn.140caf730
movzx r8d, r14b
jmp 0x140ca63e6
mov rax, qword [rbx]
mov r8d, 0x2b
mov rdx, qword [rbx + 0x120]
movzx ecx, byte [rax + 5]
mov eax, reloc.WS2_32.dll_gethostbyaddr
cmp cl, r15b
cmovne eax, r8d
add rax, rsi
cmp rdx, rax
jbe 0x140ca6137
movzx eax, byte [rsi + rbp + 0x27]
lea r14, [rsi + rbp]
movzx r8d, byte [r14 + 0x26]
shl r8, 8
or r8, rax
mov qword [rsp + 0xa8], r8
lea rax, [r8 - 1]
cmp rax, 2
jbe 0x140ca612c
cmp cl, r15b
mov eax, reloc.WS2_32.dll_gethostbyname
mov r9d, 0x2c
cmovne eax, r9d
add rax, r8
add rax, rsi
cmp rdx, rax
je 0x140ca615e
mov r9d, 0x866
jmp 0x140ca6bc3
cmp cl, r15b
mov eax, 0x2a
cmovne r14, rax
add r14, rsi
cmp rdx, r14
jne 0x140ca6bbd
xor r8d, r8d
lea r14, [rsi + rbp]
mov qword [rsp + 0xa8], r8
movzx edi, byte [r14 + 0x23]
movzx eax, byte [r14 + 0x24]
movzx r15d, byte [r14 + 0x25]
shl edi, 8
or edi, eax
test r15b, r15b
je 0x140ca61b5
lea rax, str.server_hello__bad_compression:__d
mov dword [rsp + 0x28], r15d
mov r9d, 0x880
mov qword [rsp + 0x20], rax
mov r8, r13
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8f80
jmp 0x140ca63f5
mov ecx, edi
call fcn.140ca4be0
mov rcx, qword [rbx + 0x70]
mov qword [rcx + 0x18], rax
mov rcx, rbx
mov rax, qword [rbx + 0x70]
mov rdx, qword [rax + 0x18]
test rdx, rdx
jne 0x140ca620e
lea rax, str.ciphersuite_info_for__04x_not_found
mov dword [rsp + 0x28], edi
mov r9d, 0x88e
mov qword [rsp + 0x20], rax
mov r8, r13
mov edx, 1
call fcn.140caf730
mov r8b, 0x50
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8f00
jmp 0x140ca63f5
call fcn.140c99bc0
lea rax, str.server_hello__session_id_len.:__zu
mov qword [rsp + 0x28], rsi
mov r9d, 0x896
mov qword [rsp + 0x20], rax
mov r8, r13
mov edx, 3
mov rcx, rbx
call fcn.140caf730
lea rax, str.server_hello__session_id
mov qword [rsp + 0x30], rsi
add rbp, 0x23
mov r9d, 0x897
mov qword [rsp + 0x28], rbp
mov r8, r13
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caeeb0
mov r13, qword [rbx + 0x70]
cmp byte [r13 + 2], 0
je 0x140ca62b1
test rsi, rsi
je 0x140ca62b1
cmp dword [rbx + 0xc], 0
jne 0x140ca62b1
mov rcx, qword [rbx + 0x68]
cmp dword [rcx + 0x10], edi
jne 0x140ca62b1
cmp dword [rcx + 0x14], r15d
jne 0x140ca62b1
cmp qword [rcx + 0x18], rsi
jne 0x140ca62b1
add rcx, 0x20
mov r8, rsi
mov rdx, rbp
call fcn.140cfb640
test eax, eax
jne 0x140ca62b1
mov dword [rbx + 8], reloc.WS2_32.dll_inet_ntoa
jmp 0x140ca62f2
inc dword [rbx + 8]
xor ecx, ecx
mov byte [r13 + 2], 0
call fcn.140cde0b0
mov rcx, qword [rbx + 0x68]
mov r8, rsi
mov rdx, rbp
mov qword [rcx + 8], rax
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x10], edi
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x14], r15d
mov rax, qword [rbx + 0x68]
mov qword [rax + 0x18], rsi
mov rcx, qword [rbx + 0x68]
add rcx, 0x20
call fcn.140cfb740
mov rax, qword [rbx + 0x70]
lea rdx, [0x140d32e90]
lea rcx, [0x140d306a8]
mov r9d, 0x8b2
lea r15, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r8, r15
cmp byte [rax + 2], 0
lea rax, str._s_session_has_been_resumed
cmovne rcx, rdx
mov edx, 3
mov qword [rsp + 0x28], rcx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf730
lea rax, str.server_hello__chosen_ciphersuite:__04x
mov dword [rsp + 0x28], edi
mov r9d, 0x8b4
mov qword [rsp + 0x20], rax
mov r8, r15
mov edx, 3
mov rcx, rbx
call fcn.140caf730
movzx eax, byte [r14 + 0x25]
mov r9d, 0x8b6
mov dword [rsp + 0x28], eax
mov r8, r15
lea rax, str.server_hello__compress_alg.:__d
mov edx, 3
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf730
movsxd r9, dword [rbx + 0x18]
mov rcx, qword [rbx]
mov rdx, qword [rcx + r9*8 + 0x38]
cmp dword [rdx], 0
je 0x140ca63c1
mov rax, qword [rbx + 0x68]
xor ebp, ebp
mov ecx, ebp
mov r8d, dword [rax + 0x10]
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
lea rcx, [rcx + 4]
cmp eax, r8d
je 0x140ca6413
cmp dword [rcx + rdx], ebp
jne 0x140ca63b0
lea rax, str.bad_server_hello_message
mov r9d, 0x8be
mov qword [rsp + 0x20], rax
mov r8, r15
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8680
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x60]
mov rbp, qword [rsp + 0xa0]
add rsp, 0x70
pop r15
pop r13
pop rdi
pop rsi
pop rbx
ret
mov ecx, r8d
call fcn.140ca4be0
mov r8d, dword [rbx + 0x18]
mov rdx, rbx
mov r9d, r8d
mov rcx, rax
mov rdi, rax
call fcn.140ca77c0
mov r8, r15
mov rcx, rbx
test eax, eax
je 0x140ca6453
lea rax, str.bad_server_hello_message
mov r9d, 0x8d0
mov qword [rsp + 0x20], rax
mov edx, 1
jmp 0x140ca63de
mov rax, qword [rdi + 8]
mov r9d, 0x8d9
mov qword [rsp + 0x28], rax
mov edx, 3
lea rax, str.server_hello__chosen_ciphersuite:__s
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rbx + 0x68]
lea r13, [r14 + 0x28]
mov r12, qword [rsp + 0xa8]
mov r9d, 0x8f4
mov qword [rsp + 0x28], r12
mov r8, r15
mov edx, 2
mov rcx, rbx
mov dword [rax + 0x14], ebp
lea rax, str.server_hello__total_extension_length:__zu
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r14d, 1
test r12, r12
je 0x140ca6abc
movzx eax, byte [r13 + 1]
lea r11, [0x140dc2528]
movzx ecx, byte [r13]
lea r10, [0x140dc2550]
movzx edi, byte [r13 + 2]
lea rdx, str.unknown_extension_found:__u__ignoring_
shl ecx, 8
lea r9, [0x140dc2500]
or ecx, eax
shl edi, 8
movzx eax, byte [r13 + 3]
lea r8, [0x140dc24e0]
or edi, eax
lea esi, [rdi + 4]
mov qword [rsp + 0xa8], rsi
cmp rsi, r12
ja 0x140ca6aab
cmp ecx, 0x16
ja 0x140ca67b2
je 0x140ca6768
mov eax, ecx
sub eax, r14d
je 0x140ca670f
sub eax, 3
je 0x140ca66cf
sub eax, 7
je 0x140ca662a
cmp eax, 5
jne 0x140ca67cc
lea rax, str.found_alpn_extension
mov r9d, 0x97a
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
mov edx, edi
mov rsi, qword [rax + 0x188]
test rsi, rsi
je 0x140ca6988
cmp rdx, 4
jb 0x140ca6983
movzx eax, byte [r13 + 5]
movzx ecx, byte [r13 + 4]
shl rcx, 8
or rcx, rax
lea rax, [rdi - 2]
cmp rcx, rax
jne 0x140ca6983
movzx ebp, byte [r13 + 6]
lea rax, [rcx - 1]
cmp rbp, rax
jne 0x140ca6983
mov rcx, qword [rsi]
test rcx, rcx
je 0x140ca695e
mov rdi, rcx
nop dword [rax + rax]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140ca65d7
cmp rbp, rax
jne 0x140ca65f8
lea rcx, [r13 + 7]
mov r8, rbp
mov rdx, rdi
call fcn.140cfb640
test eax, eax
je 0x140ca660e
mov rdi, qword [rsi + 8]
add rsi, 8
test rdi, rdi
je 0x140ca695e
mov rcx, rdi
jmp 0x140ca65d0
mov rsi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xb0]
mov qword [rbx + 0x198], rdi
jmp 0x140ca6924
lea rax, [0x140dc2570]
mov r9d, 0x961
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov edx, edi
test edi, edi
je 0x140ca69c1
movzx ecx, byte [r13 + 4]
lea rax, [rcx + 1]
cmp rax, rdx
jne 0x140ca69c1
lea rdx, [r13 + 5]
test rcx, rcx
je 0x140ca6680
movzx eax, byte [rdx]
cmp al, 2
jb 0x140ca6695
inc rdx
sub rcx, r14
jne 0x140ca6671
mov bpl, 0x28
lea rax, str.no_point_format_in_common
mov r9d, 0x694
jmp 0x140ca69d1
mov ecx, eax
mov r9d, 0x68c
mov rax, qword [rbx + 0x70]
mov r8, r15
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.140caf730
jmp 0x140ca6924
mov qword [rsp + 0x20], r8
mov r9d, 0x921
mov r8, r15
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
cmp byte [rax + 0xf], 0
je 0x140ca6a01
test edi, edi
jne 0x140ca6a01
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x94], r14d
jmp 0x140ca6924
lea rax, [0x140dc24b8]
mov r9d, 0x915
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
movzx ecx, byte [rax + 9]
test cl, cl
je 0x140ca674b
cmp edi, r14d
jne 0x140ca674b
cmp byte [r13 + 4], cl
je 0x140ca6924
lea rax, str.non_matching_max_fragment_length_extension
mov r9d, 0x5c9
mov qword [rsp + 0x20], rax
mov r8, r15
mov edx, r14d
jmp 0x140ca63db
mov qword [rsp + 0x20], r9
mov r8, r15
mov r9d, 0x93a
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
cmp byte [rax + 0xa], 0
je 0x140ca6a29
cmp dword [rbx + 0x18], 0
je 0x140ca6a29
test edi, edi
jne 0x140ca6a29
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x98], r14d
jmp 0x140ca6924
cmp ecx, 0x17
je 0x140ca68e2
cmp ecx, 0x23
je 0x140ca68a8
cmp ecx, 0xff01
je 0x140ca67f0
mov dword [rsp + 0x28], ecx
mov r9d, 0x990
mov qword [rsp + 0x20], rdx
mov r8, r15
mov edx, 3
mov rcx, rbx
call fcn.140caf730
jmp 0x140ca6924
lea rax, str.found_renegotiation_extension
mov r9d, 0x906
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rbx
call fcn.140caf730
cmp dword [rbx + 0xc], 0
mov ebp, r14d
mov qword [rsp + 0xb0], rbp
mov ecx, edi
je 0x140ca688b
mov r8, qword [rbx + 0x1b8]
lea rdx, [r8 + r8]
lea rax, [rdx + 1]
cmp rcx, rax
jne 0x140ca6879
movzx eax, byte [r13 + 4]
cmp rax, rdx
jne 0x140ca6879
lea rdx, [rbx + 0x1c0]
lea rcx, [r13 + 5]
call fcn.140c8c420
test eax, eax
jne 0x140ca6879
mov r8, qword [rbx + 0x1b8]
lea rdx, [rbx + 0x1cc]
lea rcx, [r8 + 5]
add rcx, r13
call fcn.140c8c420
test eax, eax
je 0x140ca6924
mov r9d, 0x5a1
lea rax, str.non_matching_renegotiation_info
jmp 0x140ca6a45
cmp rcx, rbp
jne 0x140ca6a38
cmp byte [r13 + 4], 0
jne 0x140ca6a38
mov dword [rbx + 0x1b0], r14d
jmp 0x140ca6924
mov r9d, 0x953
mov qword [rsp + 0x20], r10
mov r8, r15
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
cmp byte [rax + 0x10], 0
je 0x140ca6a74
test edi, edi
jne 0x140ca6a74
mov rax, qword [rbx + 0x70]
mov byte [rax + 5], r14b
jmp 0x140ca6924
mov r9d, 0x947
mov qword [rsp + 0x20], r11
mov r8, r15
mov edx, 3
mov rcx, rbx
call fcn.140caf730
mov rax, qword [rbx]
cmp byte [rax + 0xb], 0
je 0x140ca6a83
cmp dword [rbx + 0x18], 0
je 0x140ca6a83
test edi, edi
jne 0x140ca6a83
mov rax, qword [rbx + 0x70]
mov byte [rax + 6], r14b
sub r12, rsi
add r13, rsi
lea rax, [r12 - 1]
cmp rax, 2
ja 0x140ca64b8
lea rax, str.bad_server_hello_message
mov r9d, 0x997
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
call fcn.140caf730
jmp 0x140ca63f0
lea rax, str.ALPN_extension:_no_matching_protocol
mov r9d, 0x6f7
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x28
jmp 0x140ca69ab
mov r8b, gethostbyaddr
jmp 0x140ca69ab
lea rax, str.non_matching_ALPN_extension
mov r9d, 0x6c7
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
call fcn.140caf730
mov r8b, WSAGetLastError
mov dl, 2
mov rcx, rbx
mov edi, 0xffff8680
call fcn.140ca1a70
mov eax, edi
jmp 0x140ca63f5
mov bpl, gethostbyaddr
lea rax, str.bad_server_hello_message
mov r9d, 0x67b
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
mov rsi, rbx
mov edi, 0xffff8680
call fcn.140caf730
movzx r8d, bpl
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, edi
jmp 0x140ca63f5
lea rax, str.non_matching_truncated_HMAC_extension
mov r9d, 0x5de
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x28
jmp 0x140ca63e6
lea rax, str.non_matching_encrypt_then_MAC_extension
mov r9d, 0x62d
jmp 0x140ca6a90
mov r9d, 0x5ad
lea rax, str.non_zero_length_renegotiation_info
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
mov rsi, rbx
mov edi, 0xffff8680
call fcn.140caf730
mov r8b, 0x28
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, edi
jmp 0x140ca63f5
lea rax, str.non_matching_session_ticket_extension
mov r9d, 0x660
jmp 0x140ca6a90
lea rax, str.non_matching_extended_master_secret_extension
mov r9d, 0x647
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, r14d
mov rcx, rbx
call fcn.140caf730
mov r8b, WSAGetLastError
jmp 0x140ca63e6
mov r9d, 0x8fd
mov r8, r15
mov edx, r14d
jmp 0x140ca6bc9
mov rax, qword [rbx + 0x70]
cmp byte [rax + 2], 0
je 0x140ca6b0c
mov rcx, rbx
call fcn.140c98920
mov edi, eax
test eax, eax
je 0x140ca6b0c
mov dword [rsp + 0x28], eax
mov r9d, 0x9a3
lea rax, str.mbedtls_ssl_derive_keys
mov r8, r15
mov edx, r14d
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov r8b, 0x50
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, edi
jmp 0x140ca63f5
mov ecx, dword [rbx + 0x1b0]
test ecx, ecx
jne 0x140ca6b2e
mov rax, qword [rbx]
cmp byte [rax + 7], 2
jne 0x140ca6b2e
mov r9d, 0x9b3
lea rax, str.legacy_renegotiation__breaking_off_handshake
jmp 0x140ca6b79
cmp dword [rbx + 0xc], 1
jne 0x140ca6b94
cmp ecx, 1
jne 0x140ca6b4c
test ebp, ebp
jne 0x140ca6b94
mov r9d, 0x9bb
lea rax, str.renegotiation_info_extension_missing__secure_
jmp 0x140ca6b79
test ecx, ecx
jne 0x140ca6b94
mov rax, qword [rbx]
cmp byte [rax + 7], cl
jne 0x140ca6b67
mov r9d, 0x9c1
lea rax, str.legacy_renegotiation_not_allowed
jmp 0x140ca6b79
cmp ebp, 1
jne 0x140ca6b94
mov r9d, 0x9c7
lea rax, str.renegotiation_info_extension_present__legacy_
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, r15
mov edx, r14d
call fcn.140caf730
mov r8b, 0x28
jmp 0x140ca63e6
lea rax, str.__parse_server_hello
mov r9d, 0x9d4
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
xor eax, eax
jmp 0x140ca63f5
mov r9d, 0x870
mov r8, r13
mov edx, r15d
lea rax, str.bad_server_hello_message
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r8b, gethostbyaddr
jmp 0x140ca63e6
movzx eax, byte [rdx + 1]
movzx ecx, byte [rdx]
movzx edx, byte [rdx + 3]
mov dword [rsp + 0x50], eax
mov eax, dword [rbx + 0x18]
mov dword [rsp + 0x48], ecx
mov rcx, rbx
mov dword [rsp + 0x40], eax
lea rax, str.server_version_out_of_bounds____min:___d:_d___server:___d:_d___max:___d:_d_
mov dword [rsp + 0x38], r8d
mov r8, r13
mov dword [rsp + 0x30], edx
mov edx, r15d
mov dword [rsp + 0x28], r9d
mov r9d, 0x845
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r8b, 0x46
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff9180
jmp 0x140ca63f5
lea rax, str.bad_server_hello_message
mov r9d, 0x823
mov r8, r13
mov qword [rsp + 0x20], rax
mov edx, r15d
mov rcx, rbx
call fcn.140caf730
movzx r8d, r14b
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8680
jmp 0x140ca63fa
push rbp
push rbx
push rsi
push r12
lea rbp, [rsp - 0x3f]
sub rsp, 0xb8
mov rax, qword [0x140f4c000]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rax, qword [rcx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
xor r12d, r12d
mov r9d, 0xb9a
mov edx, 2
mov rbx, rcx
mov rsi, qword [rax + 0x18]
lea rax, [0x140dc2948]
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x39], r12
call fcn.140caf730
mov eax, dword [rsi + 0x18]
cmp eax, 1
jne 0x140ca6d0d
lea rax, str.__skip_parse_server_key_exchange
mov r9d, 0xb9e
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rbx
call fcn.140caf730
inc dword [rbx + 8]
xor eax, eax
jmp 0x140ca709b
add eax, 0xfffffff7
mov qword [rsp + 0xe8], rdi
cmp eax, 1
jbe 0x140ca7628
mov edx, 1
mov rcx, rbx
call fcn.140ca1490
mov edi, eax
test eax, eax
je 0x140ca6d65
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_read_record
mov r9d, 0xbc4
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
jmp 0x140ca7093
cmp dword [rbx + 0xe8], 0x16
je 0x140ca6dab
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xbc9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8900
jmp 0x140ca7093
mov r8, qword [rbx + 0xd8]
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xf8], r14
mov qword [rsp + 0xb0], r15
cmp byte [r8], 0xc
je 0x140ca6e58
mov eax, dword [rsi + 0x18]
sub eax, 5
test eax, 0xfffffffd
je 0x140ca6e1e
lea rax, str.server_key_exchange_message_must_not_be_skipped
mov r9d, 0xbdf
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0xa
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8900
jmp 0x140ca707b
mov dword [rbx + 0x12c], 1
inc dword [rbx + 8]
lea rax, str.__parse_server_key_exchange
mov r9d, 0xd01
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 2
mov rcx, rbx
call fcn.140caf730
xor eax, eax
jmp 0x140ca707b
mov rax, qword [rbx]
mov r13d, reloc.WS2_32.dll_inet_ntoa
mov r14, qword [rbx + 0x120]
mov edx, r13d
mov edi, 4
mov r9d, 0xbf1
mov rcx, rbx
cmp byte [rax + 5], 1
cmovne edx, edi
add r14, r8
add rdx, r8
mov rax, r14
sub rax, rdx
mov qword [rbp - 0x39], rdx
mov qword [rsp + 0x30], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x28], rdx
lea rax, str.server_key_exchange
mov edx, 3
mov qword [rsp + 0x20], rax
call fcn.140caeeb0
mov eax, dword [rsi + 0x18]
mov rdx, qword [rbp - 0x39]
sub eax, 5
cmp eax, 3
ja 0x140ca6f66
mov rax, r14
sub rax, rdx
cmp rax, 2
jge 0x140ca6ede
mov r9d, 0xab1
jmp 0x140ca6f01
movzx eax, byte [rdx + 1]
lea r8, [rdx + 2]
movzx ecx, byte [rdx]
shl rcx, 8
or rcx, rax
mov rax, r14
sub rax, r8
cmp rax, rcx
jge 0x140ca6f5e
mov r9d, 0xab9
lea rax, str.bad_server_key_exchange_message__psk_identity_hint_length_
mov rcx, rbx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
call fcn.140caf730
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xbf9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
lea rdx, [r8 + rcx]
mov qword [rbp - 0x39], rdx
mov ecx, dword [rsi + 0x18]
lea eax, [rcx - 5]
test eax, 0xfffffffd
je 0x140ca7211
lea eax, [rcx - 2]
test eax, 0xfffffffb
je 0x140ca70b4
lea eax, [rcx - 3]
test eax, 0xfffffffa
jne 0x140ca7050
cmp ecx, 7
je 0x140ca7050
mov rcx, qword [rbx + 0x70]
lea rdx, [rbp - 0x39]
add rcx, 0x138
mov r8, r14
call fcn.140cf87a0
mov rcx, rbx
test eax, eax
je 0x140ca6fe3
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ecdh_read_params
mov r9d, 0xa8b
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
jmp 0x140ca7016
call fcn.140ca5200
test eax, eax
je 0x140ca720d
lea rax, str.bad_server_key_exchange_message__ECDHE_curve_
mov r9d, 0xa96
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xc32
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
lea rax, str.should_never_happen
mov r9d, 0xc4c
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff9400
mov r14, qword [rsp + 0xf8]
mov r13, qword [rsp + 0xf0]
mov r15, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xe8]
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140cbacb0
add rsp, 0xb8
pop r12
pop rsi
pop rbx
pop rbp
ret
mov rcx, qword [rbx + 0x70]
lea rdx, [rbp - 0x39]
add rcx, 0x40
mov r8, r14
call fcn.140cf8150
test eax, eax
je 0x140ca70f8
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_dhm_read_params
mov r9d, 0x9ee
mov edx, 2
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
jmp 0x140ca713f
mov rcx, qword [rbx + 0x70]
add rcx, 0x48
call fcn.140c725c0
mov rcx, qword [rbx]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, dword [rcx + 0x30]
mov rcx, rbx
cmp rax, rdx
jae 0x140ca717c
mov dword [rsp + 0x30], edx
mov r9d, 0x9f6
mov qword [rsp + 0x28], rax
mov edx, 1
lea rax, str.DHM_prime_too_short:__zu____u
mov qword [rsp + 0x20], rax
call fcn.140caf730
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xc10
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
mov rax, qword [rbx + 0x70]
mov r9d, 0x9fa
add rax, 0x48
mov edx, 3
mov qword [rsp + 0x28], rax
lea rax, str.DHM:_P
mov qword [rsp + 0x20], rax
call fcn.140caf530
mov rax, qword [rbx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
add rax, 0x60
mov r9d, 0x9fb
mov qword [rsp + 0x28], rax
mov edx, 3
lea rax, str.DHM:_G
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf530
mov rax, qword [rbx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
add rax, 0xa8
mov r9d, 0x9fc
mov qword [rsp + 0x28], rax
mov edx, 3
lea rax, str.DHM:_GY
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf530
mov rdx, qword [rbp - 0x39]
mov ecx, dword [rsi + 0x18]
sub ecx, 2
je 0x140ca7226
sub ecx, 1
je 0x140ca7226
mov eax, r12d
cmp ecx, 1
jne 0x140ca722b
mov eax, 1
test eax, eax
je 0x140ca6e28
mov rax, qword [rbx]
cmp byte [rax + 5], 1
mov rax, rdx
cmovne r13, rdi
add r13, qword [rbx + 0xd8]
sub rax, r13
cmp dword [rbx + 0x18], 3
mov qword [rbp - 0x29], rax
jne 0x140ca73f3
lea rax, [rdx + 2]
cmp rax, r14
ja 0x140ca72a1
movzx ecx, byte [rdx]
call fcn.140c99b60
mov edi, eax
test eax, eax
jne 0x140ca72de
mov rax, qword [rbp - 0x39]
mov r9d, 0xb3a
movzx ecx, byte [rax]
lea rax, str.Server_used_unsupported_HashAlgorithm__d
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rbx
call fcn.140caf730
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xc68
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
mov rcx, qword [rbp - 0x39]
movzx ecx, byte [rcx + 1]
call fcn.140c9a130
mov r15d, eax
test eax, eax
jne 0x140ca7315
mov rax, qword [rbp - 0x39]
mov r9d, 0xb44
movzx ecx, byte [rax + 1]
lea rax, str.server_used_unsupported_SignatureAlgorithm__d
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
jmp 0x140ca728d
mov edx, edi
mov rcx, rbx
call fcn.140c98420
test eax, eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov rax, qword [rbp - 0x39]
je 0x140ca734c
movzx ecx, byte [rax]
mov r9d, 0xb4d
lea rax, str.server_used_HashAlgorithm__d_that_was_not_offered
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
jmp 0x140ca7294
movzx ecx, byte [rax + 1]
mov r9d, 0xb52
mov dword [rsp + 0x28], ecx
lea rax, str.Server_used_SignatureAlgorithm__d
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov edx, 2
call fcn.140caf730
mov rax, qword [rbp - 0x39]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0xb54
mov rcx, rbx
movzx edx, byte [rax]
lea rax, str.Server_used_HashAlgorithm__d
mov dword [rsp + 0x28], edx
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
add qword [rbp - 0x39], 2
mov rcx, rsi
call fcn.140ca4cf0
cmp r15d, eax
je 0x140ca7412
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xc73
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x2f
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
jge 0x140ca7611
mov rcx, rsi
call fcn.140ca4cf0
cmp eax, 4
mov r15d, eax
mov eax, 4
mov edi, r12d
cmove edi, eax
mov rcx, qword [rbp - 0x39]
lea rax, [r14 - 2]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
cmp rcx, rax
jbe 0x140ca742e
mov r9d, 0xc91
jmp 0x140ca7452
movzx esi, byte [rcx]
movzx eax, byte [rcx + 1]
add rcx, 2
shl rsi, 8
or rsi, rax
mov qword [rbp - 0x39], rcx
sub r14, rsi
cmp rcx, r14
je 0x140ca7482
mov r9d, 0xc9c
lea rax, str.bad_server_key_exchange_message
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov r8b, gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff8500
jmp 0x140ca707b
mov qword [rsp + 0x30], rsi
lea rax, str.signature
mov qword [rsp + 0x28], rcx
mov r9d, 0xca4
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov edx, 3
call fcn.140caeeb0
lea rdx, [rbp - 0x19]
mov rcx, rbx
test edi, edi
jne 0x140ca74d3
mov r9, qword [rbp - 0x29]
mov r8, r13
mov qword [rbp - 0x31], 0x24
call fcn.140c98fc0
test eax, eax
je 0x140ca74f4
jmp 0x140ca707b
mov rax, qword [rbp - 0x29]
lea r8, [rbp - 0x31]
mov dword [rsp + 0x28], edi
mov r9, r13
mov qword [rsp + 0x20], rax
call fcn.140c991c0
test eax, eax
jne 0x140ca707b
mov rax, qword [rbp - 0x31]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x30], rax
mov r9d, 0xcc6
lea rax, [rbp - 0x19]
mov edx, 3
mov qword [rsp + 0x28], rax
mov rcx, rbx
lea rax, str.parameters_hash
mov qword [rsp + 0x20], rax
call fcn.140caeeb0
mov rax, qword [rbx + 0x68]
mov r14, qword [rax + 0x70]
test r14, r14
jne 0x140ca7550
lea rax, str.should_never_happen
mov r9d, 0xccd
mov qword [rsp + 0x20], rax
jmp 0x140ca7062
mov edx, r15d
lea rcx, [r14 + 0x168]
call fcn.140c6a3d0
test eax, eax
jne 0x140ca75a0
lea rax, str.bad_server_key_exchange_message
mov r9d, 0xcd7
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov r8b, 0x28
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, 0xffff9300
jmp 0x140ca707b
mov rax, qword [rbp - 0x39]
lea r8, [rbp - 0x19]
mov r9, qword [rbp - 0x31]
lea rcx, [r14 + 0x168]
mov qword [rsp + 0x30], r12
mov edx, edi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.140c6a6b0
mov edi, eax
test eax, eax
je 0x140ca6e28
mov r8b, reloc.WS2_32.dll_gethostbyaddr
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
lea rax, str.mbedtls_pk_verify
mov dword [rsp + 0x28], edi
mov r9d, 0xcf1
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rbx
call fcn.140caf800
mov eax, edi
jmp 0x140ca707b
lea rax, str.should_never_happen
mov r9d, 0xc88
mov qword [rsp + 0x20], rax
jmp 0x140ca7062
mov rax, qword [rbx + 0x68]
mov rcx, qword [rax + 0x70]
test rcx, rcx
jne 0x140ca7665
lea rax, str.should_never_happen
mov r9d, 0xb6c
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov edi, 0xffff9400
jmp 0x140ca774f
lea rdi, [rcx + 0x168]
mov edx, 2
mov rcx, rdi
call fcn.140c6a3d0
test eax, eax
jne 0x140ca76ad
lea rax, str.server_key_not_ECDH_capable
mov r9d, 0xb75
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov edi, 0xffff9300
jmp 0x140ca774f
movups xmm0, xmmword [rdi]
lea rcx, [rbp - 0x29]
movaps xmmword [rbp - 0x29], xmm0
call fcn.140c6a500
sub eax, 2
je 0x140ca76cc
sub eax, 1
je 0x140ca76cc
cmp eax, 1
jne 0x140ca76d0
mov r12, qword [rbp - 0x21]
mov rcx, qword [rbx + 0x70]
mov r8d, 1
add rcx, 0x138
mov rdx, r12
call fcn.140cf84d0
mov edi, eax
mov rcx, rbx
test eax, eax
je 0x140ca771b
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ecdh_get_params
mov r9d, 0xb7d
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
jmp 0x140ca774f
call fcn.140ca5200
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov rcx, rbx
test eax, eax
je 0x140ca778d
lea rax, str.bad_server_certificate__ECDH_curve_
mov r9d, 0xb82
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov edi, 0xffff8600
lea rax, str.ssl_get_ecdh_params_from_cert
mov dword [rsp + 0x28], edi
mov r9d, 0xbab
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rbx
call fcn.140caf800
mov r8b, 0x28
mov dl, 2
mov rcx, rbx
call fcn.140ca1a70
mov eax, edi
jmp 0x140ca7093
lea rax, str.__skip_parse_server_key_exchange
mov r9d, 0xbb3
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
inc dword [rbx + 8]
xor eax, eax
jmp 0x140ca7093
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0xa0
mov rax, qword [0x140f4c000]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rax, qword [rcx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0xf95
lea r14, [rsp + 0x60]
mov edx, 2
mov rbx, rcx
xor ebp, ebp
mov rsi, qword [rax + 0x18]
lea rax, [0x140dc2cb8]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x58], 0
call fcn.140caf730
mov rcx, rbx
call fcn.140c98920
mov edi, eax
test eax, eax
je 0x140ca78e4
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_derive_keys
mov r9d, 0xf9f
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
jmp 0x140ca7bf6
mov eax, dword [rsi + 0x18]
dec eax
cmp eax, 9
ja case.0x140ca7905.5
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0xca7c20]
add rcx, rdx
jmp rcx
cmp dword [rbx + 0x18c], ebp
je 0x140ca7bc3
mov r9, qword [rbx + 0x70]
test r9, r9
je 0x140ca7928
mov rax, qword [r9 + 0x3b8]
test rax, rax
jne 0x140ca793b
mov rax, qword [rbx]
mov rax, qword [rax + 0x110]
test rax, rax
je 0x140ca7bc3
cmp qword [rax], rbp
je 0x140ca7bc3
test r9, r9
je 0x140ca7955
mov rax, qword [r9 + 0x3b8]
test rax, rax
jne 0x140ca7968
mov rax, qword [rbx]
mov rax, qword [rax + 0x110]
test rax, rax
je 0x140ca7b96
cmp qword [rax + 8], rbp
je 0x140ca7b96
lea r8, [rsp + 0x50]
mov rcx, rbx
lea rdx, [rsp + 0x60]
call qword [r9 + 0x28]
cmp dword [rbx + 0x18], 3
mov rax, qword [rbx + 0x70]
je 0x140ca79da
xor edi, edi
test rax, rax
je 0x140ca79a0
mov rax, qword [rax + 0x3b8]
test rax, rax
jne 0x140ca79b3
mov rax, qword [rbx]
mov rax, qword [rax + 0x110]
test rax, rax
jne 0x140ca79b3
xor ecx, ecx
jmp 0x140ca79b7
mov rcx, qword [rax + 8]
mov edx, 4
call fcn.140c6a3d0
mov r9, qword [rsp + 0x50]
test eax, eax
je 0x140ca7a46
lea r14, [rsp + 0x70]
sub r9, 0x10
mov edi, 4
jmp 0x140ca7a41
mov rcx, qword [rax + 0x18]
mov rdx, qword [rbx + 0x160]
cmp dword [rcx + 0x14], 7
jne 0x140ca79f4
mov edi, 7
mov al, 5
jmp 0x140ca79fb
mov edi, 6
mov al, 4
mov byte [rdx + 4], al
mov rax, qword [rbx + 0x70]
test rax, rax
je 0x140ca7a13
mov rax, qword [rax + 0x3b8]
test rax, rax
jne 0x140ca7a26
mov rax, qword [rbx]
mov rax, qword [rax + 0x110]
test rax, rax
jne 0x140ca7a26
xor ecx, ecx
jmp 0x140ca7a2a
mov rcx, qword [rax + 8]
call fcn.140c9ac20
mov rcx, qword [rbx + 0x160]
xor r9d, r9d
mov ebp, 2
mov byte [rcx + 5], al
mov qword [rsp + 0x50], r9
mov rax, qword [rbx + 0x70]
test rax, rax
je 0x140ca7a5b
mov rax, qword [rax + 0x3b8]
test rax, rax
jne 0x140ca7a6e
mov rax, qword [rbx]
mov rax, qword [rax + 0x110]
test rax, rax
jne 0x140ca7a6e
xor ecx, ecx
jmp 0x140ca7a72
mov rcx, qword [rax + 8]
mov rdx, qword [rbx]
mov r8, r14
mov r10, qword [rbx + 0x160]
mov qword [rsp + 0x40], 0
add r10, 6
add r10, rbp
mov rax, qword [rdx + 0x70]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x68]
mov edx, edi
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r10
call fcn.140c6a5d0
mov edi, eax
test eax, eax
je 0x140ca7aee
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_pk_sign
mov r9d, 0x100c
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf800
mov eax, edi
jmp 0x140ca7bf6
mov rax, qword [rbx + 0x160]
mov rcx, qword [rsp + 0x58]
shr rcx, 8
mov byte [rax + rbp + 4], cl
mov rcx, qword [rbx + 0x160]
movzx eax, byte [rsp + 0x58]
mov byte [rcx + rbp + 5], al
mov rcx, qword [rsp + 0x58]
mov rax, qword [rbx + 0x160]
add rcx, 6
add rcx, rbp
mov dword [rbx + reloc.WS2_32.dll_shutdown8], 0x16
mov qword [rbx + 0x170], rcx
mov rcx, rbx
mov byte [rax], reloc.WS2_32.dll_ntohs
inc dword [rbx + 8]
call fcn.140ca21b0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edi, eax
mov rcx, rbx
test eax, eax
je 0x140ca7b78
mov dword [rsp + 0x28], eax
mov r9d, 0x101e
lea rax, str.mbedtls_ssl_write_handshake_msg
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, edi
jmp 0x140ca7bf6
lea rax, str.__write_certificate_verify
mov r9d, 0x1022
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
jmp 0x140ca7bf4
lea rax, str.got_no_private_key_for_certificate
mov r9d, 0xfb0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call fcn.140caf730
mov eax, 0xffff8a00
jmp 0x140ca7bf6
mov r9d, 0xfaa
jmp 0x140ca7bd1
mov r9d, 0xfa4
lea rax, str.__skip_write_certificate_verify
mov edx, 2
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140caf730
inc dword [rbx + 8]
xor eax, eax
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140cbacb0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
push rdi
push r12
sub rsp, 0x78
lea rax, [0x140dc1b10]
xor r12d, r12d
mov r9d, 0x3d6
mov dword [rsp + 0x90], r12d
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rdi, rcx
call fcn.140caf730
mov rcx, qword [rdi]
cmp qword [rcx + 0x68], r12
jne 0x140ca7cc5
lea rax, str.no_RNG_provided
mov r9d, 0x3d9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf730
mov eax, 0xffff8c00
add rsp, 0x78
pop r12
pop rdi
ret
mov qword [rsp + 0x58], r13
cmp dword [rdi + 0xc], r12d
je 0x140ca7cd8
mov r13d, 1
jmp 0x140ca7ce9
movzx eax, byte [rcx + 2]
mov r13d, r12d
mov dword [rdi + 0x14], eax
movzx eax, byte [rcx + 3]
mov dword [rdi + 0x18], eax
movzx eax, byte [rcx]
test al, al
jne 0x140ca7d28
lea rax, str.configured_max_major_version_is_invalid__consider_using_mbedtls_ssl_config_defaults__
mov r9d, 0x3eb
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf730
mov r13, qword [rsp + 0x58]
mov eax, 0xffff8f00
add rsp, 0x78
pop r12
pop rdi
ret
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r15
mov r15, qword [rdi + 0x160]
mov qword [rsp + 0xa8], r15
lea rbp, [r15 + 0x4000]
cmp r15, rbp
ja 0x140ca8ef2
movzx r8d, byte [rcx + 5]
lea r9, [r15 + 4]
movzx edx, byte [rcx + 1]
lea rsi, [r15 + 6]
mov ecx, eax
call fcn.140ca2b60
movzx eax, byte [r15 + 5]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
movzx ecx, byte [r15 + 4]
mov r9d, 0x410
mov dword [rsp + 0x30], eax
mov edx, 3
mov dword [rsp + 0x28], ecx
lea rax, str.client_hello__max_version:___d:_d_
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rdi]
mov rbx, qword [rdi + 0x70]
cmp byte [rax + 5], 1
jne 0x140ca7dca
cmp qword [rbx + 0x468], r12
jne 0x140ca7e77
xor ecx, ecx
call fcn.140cde0b0
mov rcx, rax
mov qword [rsp + 0x28], rax
sar rcx, 0x18
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov byte [rbx + 0x6a8], cl
mov r9d, 0x37a
mov rcx, rax
mov byte [rbx + 0x6ab], al
sar rcx, 0x10
mov edx, 3
mov byte [rbx + 0x6a9], cl
mov rcx, rax
sar rcx, 8
lea rax, str.client_hello__current_time:__lld
mov byte [rbx + 0x6aa], cl
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rax, qword [rdi]
lea rdx, [rbx + 0x6ac]
mov r8d, 0x1c
mov rcx, qword [rax + 0x70]
call qword [rax + 0x68]
mov ebx, eax
test eax, eax
je 0x140ca7e77
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.ssl_generate_random
mov r9d, 0x413
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
mov rax, qword [rdi + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x30], 0x20
mov r9d, 0x418
mov qword [rsp + 0x28], rsi
mov edx, 3
mov rcx, rdi
movups xmm0, xmmword [rax + 0x6a8]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rax + 0x6b8]
lea rax, str.client_hello__random_bytes
mov qword [rsp + 0x20], rax
movups xmmword [rsi + 0x10], xmm1
call fcn.140caeeb0
mov rdx, qword [rdi + 0x68]
mov rbx, qword [rdx + 0x18]
lea rax, [rbx - 0x10]
cmp rax, 0x10
ja 0x140ca7ee6
cmp dword [rdi + 0xc], r12d
jne 0x140ca7ee6
mov rax, qword [rdi + 0x70]
cmp byte [rax + 2], r12b
jne 0x140ca7ee9
mov rbx, r12
test r13d, r13d
jne 0x140ca7f35
cmp qword [rdx + 0x80], r12
je 0x140ca7f35
cmp qword [rdx + 0x88], r12
je 0x140ca7f35
mov rax, qword [rdi]
add rdx, 0x20
mov r8d, 0x20
mov rcx, qword [rax + 0x70]
call qword [rax + 0x68]
test eax, eax
jne 0x140ca8ef7
mov rax, qword [rdi + 0x68]
mov ebx, 0x20
mov rdx, r12
mov qword [rax + 0x18], rbx
mov byte [rsi + 0x20], bl
add rsi, 0x21
jmp 0x140ca7f50
mov byte [rsi + 0x20], bl
mov rdx, r12
add rsi, 0x21
test rbx, rbx
je 0x140ca7f66
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rdi + 0x68]
movzx ecx, byte [rax + rdx + 0x20]
inc rdx
mov byte [rsi], cl
inc rsi
cmp rdx, rbx
jb 0x140ca7f50
lea rax, str.client_hello__session_id_len.:__zu
mov qword [rsp + 0x28], rbx
mov r9d, 0x451
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 3
mov rcx, rdi
call fcn.140caf730
lea rax, [r15 + 0x27]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.client_hello__session_id
mov r9d, 0x452
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caeeb0
mov rax, qword [rdi]
cmp byte [rax + 5], 1
jne 0x140ca80b7
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 1
jb 0x140ca8ef2
mov rax, qword [rdi + 0x70]
lea rbx, [rsi + 1]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 3
mov rcx, qword [rax + 0x468]
test rcx, rcx
jne 0x140ca8030
lea rax, str.no_verify_cookie_to_send
mov r9d, 0x469
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov byte [rsi], r12b
mov rsi, rbx
jmp 0x140ca80b7
movzx eax, byte [rax + 0x470]
mov r9d, 0x46e
mov qword [rsp + 0x30], rax
lea rax, str.client_hello__cookie
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140caeeb0
mov rax, qword [rdi + 0x70]
movzx ecx, byte [rax + 0x470]
mov byte [rsi], cl
mov rsi, rbx
cmp rbx, rbp
ja 0x140ca8ef2
mov rax, qword [rdi + 0x70]
movzx ecx, byte [rax + 0x470]
mov rax, rbp
sub rax, rbx
cmp rcx, rax
ja 0x140ca8ef2
mov rdx, qword [rdi + 0x70]
mov rcx, rbx
movzx r8d, byte [rdx + 0x470]
mov rdx, qword [rdx + 0x468]
call fcn.140cfb740
mov rax, qword [rdi + 0x70]
movzx ecx, byte [rax + 0x470]
add rsi, rcx
movsxd rcx, dword [rdi + 0x18]
mov rbx, rsi
mov rax, qword [rdi]
mov r15, r12
mov qword [rsp + 0xa0], rbx
mov rcx, qword [rax + rcx*8 + 0x38]
mov qword [rsp + 0x98], rcx
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 2
jb 0x140ca8ef2
mov eax, dword [rcx]
add rsi, 2
test eax, eax
je 0x140ca8229
mov r14, rcx
mov ecx, eax
call fcn.140ca4be0
mov rbx, rax
test rax, rax
je 0x140ca8206
mov rax, qword [rdi]
movzx ecx, byte [rax + 1]
cmp dword [rbx + 0x20], ecx
jg 0x140ca8206
movzx ecx, byte [rax + 3]
cmp dword [rbx + 0x28], ecx
jl 0x140ca8206
cmp byte [rax + 5], 1
jne 0x140ca8143
test byte [rbx + 0x2c], 4
jne 0x140ca8206
cmp byte [rax + 8], 1
jne 0x140ca8153
cmp dword [rbx + 0x10], 0x2a
je 0x140ca8206
mov rcx, rbx
call fcn.140ca4c60
test eax, eax
je 0x140ca8192
mov rax, qword [rdi]
cmp qword [rax + 0x178], 0
je 0x140ca8206
cmp qword [rax + 0x180], 0
je 0x140ca8206
cmp qword [rax + 0x168], 0
je 0x140ca8206
cmp qword [rax + 0x170], 0
je 0x140ca8206
mov rax, qword [rbx + 8]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x30], rax
mov r9d, 0x491
mov eax, dword [r14]
mov edx, 3
mov dword [rsp + 0x28], eax
mov rcx, rdi
lea rax, str.client_hello__add_ciphersuite:__04x___s_
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov rcx, rbx
call fcn.140ca4c10
or dword [rsp + 0x90], eax
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 2
jb 0x140ca8ef2
mov eax, dword [r14]
inc r15
sar eax, 8
mov byte [rsi], al
movzx eax, byte [r14]
mov byte [rsi + 1], al
add rsi, 2
mov rax, qword [rsp + 0x98]
inc r12
lea r14, [rax + r12*4]
mov eax, dword [rax + r12*4]
test eax, eax
jne 0x140ca8103
mov rbx, qword [rsp + 0xa0]
lea rax, str.client_hello__got__zu_ciphersuites__excluding_SCSVs_
mov qword [rsp + 0x28], r15
mov r9d, 0x4a1
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 3
mov rcx, rdi
call fcn.140caf730
test r13d, r13d
jne 0x140ca82a4
lea rax, str.adding_EMPTY_RENEGOTIATION_INFO_SCSV
mov r9d, 0x4a7
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 2
jb 0x140ca8ef2
mov word [rsi], 0xff00
add rsi, 2
inc r15
mov rax, qword [rdi]
cmp byte [rax + 0x11], 1
jne 0x140ca82f8
lea rax, str.adding_FALLBACK_SCSV
mov r9d, 0x4b1
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 2
jb 0x140ca8ef2
mov word [rsi], 0x56
add rsi, 2
inc r15
mov rax, r15
mov dword [rsp + 0x28], 1
shr rax, 7
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov byte [rbx], al
add r15b, r15b
lea rax, str.client_hello__compress_len.:__d
mov byte [rbx + 1], r15b
mov r9d, 0x4da
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
lea rax, str.client_hello__compress_alg.:__d
xor r13d, r13d
mov qword [rsp + 0x28], r13
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x4dc
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rsi, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, rsi
cmp rax, 2
jb 0x140ca8ef2
lea r12, [rsi + 2]
mov word [rsi], 1
cmp r12, rbp
ja 0x140ca8ef2
mov rax, rbp
sub rax, r12
cmp rax, 2
jb 0x140ca8ef2
mov rax, qword [rdi + 0x190]
lea rbx, [r12 + 2]
mov esi, r13d
test rax, rax
je 0x140ca845f
mov qword [rsp + 0x28], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.client_hello__adding_server_name_extension:__s
mov r9d, 0x60
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf730
mov rax, qword [rdi + 0x190]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], sil
jne 0x140ca83f0
cmp rbx, rbp
ja 0x140ca8bc6
mov rax, rbp
lea rsi, [r8 + 9]
sub rax, rbx
cmp rsi, rax
ja 0x140ca8bc6
lea rax, [r8 + 5]
mov word [rbx], r13w
shr rax, 8
lea rcx, [rbx + 9]
mov byte [rbx + 2], al
lea eax, [r8 + 5]
mov byte [rbx + 3], al
lea rax, [r8 + 3]
shr rax, 8
mov byte [rbx + 4], al
lea eax, [r8 + 3]
mov byte [rbx + 5], al
mov rax, r8
shr rax, 8
mov byte [rbx + 7], al
mov byte [rbx + 6], r13b
mov byte [rbx + 8], r8b
mov rdx, qword [rdi + 0x190]
call fcn.140cfb740
lea rbx, [rsi + 2]
mov rax, r13
add rbx, r12
cmp dword [rdi + 0xc], 1
jne 0x140ca84fd
lea rax, str.client_hello__adding_renegotiation_extension
mov r9d, 0xa9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8bfc
mov rax, qword [rdi + 0x1b8]
mov rcx, rbp
sub rcx, rbx
add rax, 5
cmp rax, rcx
ja 0x140ca8bfc
mov word [rbx], 0x1ff
lea rdx, [rdi + 0x1c0]
mov byte [rbx + 2], r13b
lea rcx, [rbx + 5]
movzx eax, byte [rdi + 0x1b8]
inc al
mov byte [rbx + 3], al
movzx eax, byte [rdi + 0x1b8]
mov byte [rbx + 4], al
mov r8, qword [rdi + 0x1b8]
call fcn.140cfb740
mov rax, qword [rdi + 0x1b8]
add rax, 5
add rsi, rax
mov rbx, r13
mov rax, qword [rdi]
mov rcx, r13
lea r15, [rsi + 2]
add r15, r12
cmp byte [rax + 1], 3
jne 0x140ca8613
lea rax, str.client_hello__adding_signature_algorithms_extension
mov r9d, 0xd9
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
mov rax, qword [rdi]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x140ca8c5f
cmp dword [rcx], ebx
je 0x140ca8c5f
nop dword [rax + rax]
add rbx, 4
cmp rbx, 0xfffe
ja 0x140ca8c39
add rcx, 4
cmp dword [rcx], r13d
jne 0x140ca8560
test rbx, rbx
je 0x140ca8c5f
cmp r15, rbp
ja 0x140ca8c32
mov rcx, rbp
lea rax, [rbx + 6]
sub rcx, r15
cmp rax, rcx
ja 0x140ca8c32
mov rax, qword [rdi]
mov rbx, r13
mov r14, qword [rax + 0x128]
mov eax, dword [r14]
test eax, eax
je 0x140ca85e7
mov ecx, eax
call fcn.140c99b00
mov byte [r15 + rbx + 6], al
mov byte [r15 + rbx + 7], 3
mov ecx, dword [r14]
call fcn.140c99b00
mov byte [r15 + rbx + 8], al
lea r14, [r14 + 4]
mov byte [r15 + rbx + 9], 1
add rbx, 4
mov eax, dword [r14]
test eax, eax
jne 0x140ca85b3
lea rax, [rbx + 2]
mov word [r15], 0xd00
shr rax, 8
lea rcx, [rbx + 6]
mov byte [r15 + 2], al
lea eax, [rbx + 2]
mov byte [r15 + 3], al
mov rax, rbx
shr rax, 8
mov byte [r15 + 4], al
mov byte [r15 + 5], bl
add rsi, rcx
cmp dword [rsp + 0x90], r13d
je 0x140ca8785
lea rax, str.client_hello__adding_supported_elliptic_curves_extension
mov r9d, 0x136
lea r15, [rsi + 2]
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 3
mov rcx, rdi
add r15, r12
mov rbx, r13
call fcn.140caf730
mov rax, qword [rdi]
mov r14, qword [rax + 0x130]
test r14, r14
je 0x140ca8d0c
mov eax, dword [r14]
test eax, eax
je 0x140ca8d0c
mov ecx, eax
call fcn.140c7e290
test rax, rax
je 0x140ca8ce6
add rbx, 2
cmp rbx, 0xffff
ja 0x140ca8cd2
mov eax, dword [r14 + 4]
add r14, 4
test eax, eax
jne 0x140ca8672
test rbx, rbx
je 0x140ca8d0c
cmp r15, rbp
ja 0x140ca8ccb
mov rcx, rbp
lea rax, [rbx + 6]
sub rcx, r15
cmp rax, rcx
ja 0x140ca8ccb
mov rax, qword [rdi]
mov rbx, r13
mov r14, qword [rax + 0x130]
mov eax, dword [r14]
test eax, eax
je 0x140ca8700
mov ecx, eax
call fcn.140c7e290
lea r14, [r14 + 4]
movzx ecx, byte [rax + 5]
mov byte [rbx + r15 + 6], cl
movzx eax, byte [rax + 4]
mov byte [rbx + r15 + 7], al
add rbx, 2
mov eax, dword [r14]
test eax, eax
jne 0x140ca86d8
lea rax, [rbx + 2]
mov byte [r15 + 5], bl
shr rax, 8
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov byte [r15 + 2], al
mov r9d, 0x179
lea eax, [rbx + 2]
mov word [r15], 0xa00
mov byte [r15 + 3], al
mov edx, 3
mov rax, rbx
mov rcx, rdi
shr rax, 8
mov byte [r15 + 4], al
lea rax, [rbx + 6]
add rsi, rax
lea rax, str.client_hello__adding_supported_point_formats_extension
mov qword [rsp + 0x20], rax
lea rbx, [rsi + 2]
add rbx, r12
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8c95
mov rax, rbp
sub rax, rbx
cmp rax, 6
jb 0x140ca8c95
mov dword [rbx], 0x2000b00
add rsi, 6
mov word [rbx + 4], 1
mov rax, qword [rdi]
lea rbx, [rsi + 2]
add rbx, r12
mov rcx, r13
cmp byte [rax + 9], r13b
je 0x140ca87ec
lea rax, str.client_hello__adding_max_fragment_length_extension
mov r9d, 0x210
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8d42
mov rax, rbp
sub rax, rbx
cmp rax, 5
jb 0x140ca8d42
mov dword [rbx], 0x1000100
mov rax, qword [rdi]
movzx ecx, byte [rax + 9]
mov byte [rbx + 4], cl
mov ecx, 5
mov rax, qword [rdi]
add rsi, rcx
mov rcx, r13
lea rbx, [rsi + 2]
add rbx, r12
cmp byte [rax + 0xf], r13b
je 0x140ca884c
lea rax, str.client_hello__adding_truncated_hmac_extension
mov r9d, 0x232
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8d78
mov rax, rbp
sub rax, rbx
cmp rax, 4
jb 0x140ca8d78
mov dword [rbx], 0x400
mov ecx, 4
mov rax, qword [rdi]
add rsi, rcx
mov rcx, r13
lea rbx, [rsi + 2]
add rbx, r12
cmp byte [rax + 0xa], r13b
je 0x140ca88b1
cmp byte [rax + 1], cl
je 0x140ca88b1
lea rax, str.client_hello__adding_encrypt_then_mac_extension
mov r9d, 0x253
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8dae
mov rax, rbp
sub rax, rbx
cmp rax, 4
jb 0x140ca8dae
mov dword [rbx], 0x1600
mov ecx, 4
mov rax, qword [rdi]
add rsi, rcx
mov rcx, r13
lea rbx, [rsi + 2]
add rbx, r12
cmp byte [rax + 0xb], r13b
je 0x140ca8916
cmp byte [rax + 1], cl
je 0x140ca8916
lea rax, str.client_hello__adding_extended_master_secret_extension
mov r9d, 0x274
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8de4
mov rax, rbp
sub rax, rbx
cmp rax, 4
jb 0x140ca8de4
mov dword [rbx], 0x1700
mov ecx, 4
mov rax, qword [rdi]
add rsi, rcx
mov r14, r13
mov rbx, r13
lea r15, [rsi + 2]
add r15, r12
cmp qword [rax + 0x188], r13
je 0x140ca8a30
lea rax, str.client_hello__adding_alpn_extension
mov r9d, 0x2c2
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
mov rax, qword [rdi]
mov rdx, qword [rax + 0x188]
mov rcx, qword [rdx]
test rcx, rcx
je 0x140ca8992
nop
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], bl
jne 0x140ca8977
mov rcx, qword [rdx + 8]
add rdx, 8
inc r14
add r14, rax
test rcx, rcx
jne 0x140ca8970
cmp r15, rbp
ja 0x140ca8e1a
mov rcx, rbp
lea rax, [r14 + 6]
sub rcx, r15
cmp rax, rcx
ja 0x140ca8e1a
mov word [r15], 0x1000
lea rbx, [r15 + 6]
mov rax, qword [rdi]
mov r14, qword [rax + 0x188]
mov rcx, qword [r14]
test rcx, rcx
je 0x140ca8a07
nop word [rax + rax]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r13b
jne 0x140ca89d7
mov byte [rbx], al
lea rcx, [rbx + 1]
mov rdx, qword [r14]
movzx r8d, al
call fcn.140cfb740
movzx eax, byte [rbx]
add r14, 8
inc rbx
add rbx, rax
mov rcx, qword [r14]
test rcx, rcx
jne 0x140ca89d0
sub rbx, r15
lea rax, [rbx - 6]
shr rax, 8
mov byte [r15 + 4], al
lea eax, [rbx - 6]
mov byte [r15 + 5], al
lea rax, [rbx - 4]
shr rax, 8
mov byte [r15 + 2], al
lea eax, [rbx - 4]
mov byte [r15 + 3], al
mov rax, qword [rdi + 0x68]
add rsi, rbx
mov r14, qword [rax + 0x88]
lea rbx, [rsi + 2]
mov rax, qword [rdi]
add rbx, r12
cmp byte [rax + 0x10], r13b
je 0x140ca8b02
lea rax, str.client_hello__adding_session_ticket_extension
mov r9d, 0x295
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
cmp rbx, rbp
ja 0x140ca8e50
lea r15, [r14 + 4]
sub rbp, rbx
cmp r15, rbp
ja 0x140ca8e50
mov word [rbx], 0x2300
mov rax, r14
shr rax, 8
mov r13d, 4
mov byte [rbx + 2], al
mov byte [rbx + 3], r14b
mov rax, qword [rdi + 0x68]
cmp qword [rax + 0x80], 0
je 0x140ca8b02
test r14, r14
je 0x140ca8b02
lea rax, str.sending_session_ticket_of_length__zu
mov qword [rsp + 0x28], r14
mov r9d, 0x2a7
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 3
mov rcx, rdi
call fcn.140caf730
mov rdx, qword [rdi + 0x68]
lea rcx, [rbx + 4]
mov r8, r14
mov rdx, qword [rdx + 0x80]
call fcn.140cfb740
mov r13, r15
lea rax, str.client_hello__total_extension_length:__zu
add rsi, r13
mov qword [rsp + 0x28], rsi
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x56c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
test rsi, rsi
je 0x140ca8b4c
mov byte [r12 + 1], sil
mov rax, rsi
shr rax, 8
mov byte [r12], al
add r12, 2
add r12, rsi
mov rax, qword [rdi + 0x160]
sub r12, qword [rsp + 0xa8]
mov qword [rdi + 0x170], r12
mov dword [rdi + reloc.WS2_32.dll_shutdown8], 0x16
mov byte [rax], 1
mov rax, qword [rdi]
inc dword [rdi + 8]
cmp byte [rax + 5], 1
jne 0x140ca8b83
mov rcx, rdi
call fcn.140ca1bd0
mov rcx, rdi
call fcn.140ca21b0
mov ebx, eax
test eax, eax
je 0x140ca8e83
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_write_handshake_msg
mov r9d, 0x582
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_hostname_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x4ea
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_renegotiation_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x4f5
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
mov ebx, 0xffff9600
jmp 0x140ca8c64
lea rax, str.length_in_bytes_of_sig_hash_alg_extension_too_big
mov r9d, 0xe8
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 3
mov rcx, rdi
call fcn.140caf730
mov ebx, 0xffffa180
lea rax, str.ssl_write_signature_algorithms_ext
mov dword [rsp + 0x28], ebx
mov r9d, 0x4ff
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_supported_point_formats_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x511
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
mov ebx, 0xffff9600
jmp 0x140ca8d11
lea rax, str.malformed_supported_elliptic_curves_extension_in_config
mov r9d, 0x149
mov edx, 3
jmp 0x140ca8cf8
lea rax, str.invalid_curve_in_ssl_configuration
mov r9d, 0x142
mov edx, 1
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf730
mov ebx, 0xffffa180
lea rax, str.ssl_write_supported_elliptic_curves_ext
mov dword [rsp + 0x28], ebx
mov r9d, 0x50a
mov qword [rsp + 0x20], rax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_max_fragment_length_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x52c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_truncated_hmac_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x535
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_encrypt_then_mac_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x53e
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_extended_ms_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x547
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_alpn_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x550
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.ssl_write_session_ticket_ext
mov ebx, 0xffff9600
mov dword [rsp + 0x28], ebx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0x562
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
mov rax, qword [rdi]
cmp byte [rax + 5], 1
jne 0x140ca8ec8
mov rcx, rdi
call fcn.140c9ffa0
mov ebx, eax
test eax, eax
je 0x140ca8ec8
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_flight_transmit
mov r9d, 0x589
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca8ef7
lea rax, str.__write_client_hello
mov r9d, 0x58e
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, rdi
call fcn.140caf730
xor eax, eax
jmp 0x140ca8ef7
mov eax, 0xffff9600
mov r14, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
mov r13, qword [rsp + 0x58]
add rsp, 0x78
pop r12
pop rdi
ret
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov rax, qword [rcx + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov r9d, 0xdeb
mov edx, 2
mov rsi, rcx
mov rbp, qword [rax + 0x18]
lea rax, [0x140dc2b98]
mov qword [rsp + 0x20], rax
call fcn.140caf730
mov ecx, dword [rbp + 0x18]
cmp ecx, 2
jne 0x140ca9110
mov rax, qword [rsi + 0x70]
mov r14d, 6
mov rcx, qword [rax + 0x40]
mov rax, qword [rsi + 0x160]
mov qword [rsp + 0x50], rcx
shr rcx, 8
mov byte [rax + 4], cl
mov rcx, qword [rsi + 0x160]
movzx eax, byte [rsp + 0x50]
mov byte [rcx + 5], al
mov rcx, qword [rsi + 0x70]
mov rbx, qword [rsi]
add rcx, 0x48
mov rdi, qword [rsi + 0x160]
call fcn.140c77760
mov rcx, qword [rsi + 0x70]
lea r8, [rdi + 6]
mov r9, qword [rsp + 0x50]
mov rdx, rax
mov rax, qword [rbx + 0x70]
add rcx, 0x40
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x20], rax
call fcn.140cf80b0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
test eax, eax
je 0x140ca9015
lea rcx, str.mbedtls_dhm_make_public
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, 0xdfc
mov rcx, rsi
mov edx, 1
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
mov rax, qword [rsi + 0x70]
mov r9d, 0xe00
add rax, 0x78
mov edx, 3
mov qword [rsp + 0x28], rax
mov rcx, rsi
lea rax, str.DHM:_X
mov qword [rsp + 0x20], rax
call fcn.140caf530
mov rax, qword [rsi + 0x70]
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
add rax, 0x90
mov r9d, 0xe01
mov qword [rsp + 0x28], rax
mov edx, 3
lea rax, str.DHM:_GX
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140caf530
mov r8, qword [rsi]
mov rcx, qword [rsi + 0x70]
mov rax, qword [r8 + 0x70]
mov qword [rsp + 0x28], rax
lea r9, [rcx + 0x10]
mov rax, qword [r8 + 0x68]
lea rdx, [rcx + 0x6e8]
mov r8d, 0x424
mov qword [rsp + 0x20], rax
add rcx, 0x40
call fcn.140cf7d60
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
mov rcx, rsi
test eax, eax
je 0x140ca90e0
mov dword [rsp + 0x28], eax
mov r9d, 0xe08
lea rax, str.mbedtls_dhm_calc_secret
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
mov rax, qword [rsi + 0x70]
mov r9d, 0xe0c
add rax, 0xc0
mov edx, 3
mov qword [rsp + 0x28], rax
lea rax, str.DHM:_K
mov qword [rsp + 0x20], rax
call fcn.140caf530
jmp 0x140ca95e1
lea eax, [rcx - 3]
cmp eax, 1
jbe 0x140ca94ac
lea eax, [rcx - 9]
cmp eax, 1
jbe 0x140ca94ac
mov rcx, rbp
call fcn.140ca4c60
test eax, eax
je 0x140ca9453
mov rax, qword [rsi]
cmp qword [rax + 0x178], 0
je 0x140ca9449
cmp qword [rax + 0x180], 0
je 0x140ca9449
cmp qword [rax + 0x168], 0
je 0x140ca9449
cmp qword [rax + 0x170], 0
je 0x140ca9449
mov rcx, qword [rax + 0x180]
mov ebx, 0x4000
mov qword [rsp + 0x50], rcx
lea rax, [rcx + 6]
cmp rax, rbx
jbe 0x140ca91bd
lea rax, str.psk_identity_too_long_or_SSL_buffer_too_short
mov r9d, 0xec3
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rsi
call fcn.140caf730
mov eax, 0xffff9600
jmp 0x140ca9661
mov rax, qword [rsi + 0x160]
shr rcx, 8
mov byte [rax + 4], cl
mov rcx, qword [rsi + 0x160]
movzx eax, byte [rsp + 0x50]
mov byte [rcx + 5], al
mov rdx, qword [rsi]
mov rcx, qword [rsi + 0x160]
add rcx, 6
mov r8, qword [rdx + 0x180]
mov rdx, qword [rdx + 0x178]
call fcn.140cfb740
mov rdx, qword [rsi]
mov eax, dword [rbp + 0x18]
mov r14, qword [rdx + 0x180]
add r14, 6
cmp eax, 5
jne 0x140ca921f
mov qword [rsp + 0x50], 0
jmp 0x140ca93dd
cmp eax, 7
jne 0x140ca9247
mov r9d, 2
lea r8, [rsp + 0x50]
mov rdx, r14
mov rcx, rsi
call fcn.140ca9680
test eax, eax
je 0x140ca93dd
jmp 0x140ca9661
cmp eax, 6
jne 0x140ca933c
mov rax, qword [rsi + 0x70]
mov rcx, qword [rax + 0x40]
mov qword [rsp + 0x50], rcx
lea rax, [rcx + 2]
add rax, r14
cmp rax, rbx
jbe 0x140ca9299
lea rax, str.psk_identity_or_DHM_size_too_long_or_SSL_buffer_too_short
mov r9d, 0xef6
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rsi
call fcn.140caf730
mov eax, 0xffff9600
jmp 0x140ca9661
mov rax, qword [rsi + 0x160]
shr rcx, 8
mov byte [r14 + rax], cl
mov rcx, qword [rsi + 0x160]
movzx eax, byte [rsp + 0x50]
mov byte [r14 + rcx + 1], al
add r14, 2
mov rcx, qword [rsi + 0x70]
mov rdi, qword [rsi + 0x160]
add rcx, 0x48
mov rbx, qword [rsi]
add rdi, r14
call fcn.140c77760
mov rcx, qword [rsi + 0x70]
mov rdx, rax
mov rax, qword [rbx + 0x70]
add rcx, 0x40
mov r9, qword [rsp + 0x50]
mov r8, rdi
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x20], rax
call fcn.140cf80b0
mov ebx, eax
test eax, eax
je 0x140ca93dd
lea rcx, str.mbedtls_dhm_make_public
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov rcx, rsi
mov r9d, 0xf02
mov edx, 1
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
cmp eax, 8
jne 0x140ca9423
mov rax, qword [rdx + 0x70]
sub rbx, r14
mov r8, qword [rsi + 0x160]
mov r9, rbx
mov rcx, qword [rsi + 0x70]
add r8, r14
mov qword [rsp + 0x28], rax
add rcx, 0x138
mov rax, qword [rdx + 0x68]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.140cf8700
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
test eax, eax
je 0x140ca93b3
lea rcx, str.mbedtls_ecdh_make_public
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, 0xf1a
mov rcx, rsi
mov edx, 1
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
mov rax, qword [rsi + 0x70]
mov r9d, 0xf1f
add rax, 0x138
mov dword [rsp + 0x28], 0
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.140caf8c0
mov edx, dword [rbp + 0x18]
mov rcx, rsi
call fcn.140c9a150
mov ebx, eax
test eax, eax
je 0x140ca95e1
mov dword [rsp + 0x28], eax
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
lea rax, str.mbedtls_ssl_psk_derive_premaster
mov r9d, 0xf34
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
lea rax, str.should_never_happen
mov r9d, 0xf23
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rsi
call fcn.140caf730
mov eax, 0xffff9400
jmp 0x140ca9661
cmp dword [rbp + 0x18], 1
mov rcx, rsi
jne 0x140ca947f
mov r14d, 4
lea r8, [rsp + 0x50]
mov edx, r14d
xor r9d, r9d
call fcn.140ca9680
test eax, eax
je 0x140ca95e1
jmp 0x140ca9661
lea rax, str.should_never_happen
mov r9d, 0xf5b
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov qword [rsp + 0x20], rax
mov edx, 1
call fcn.140caf730
mov eax, 0xffff9400
jmp 0x140ca9661
mov rdx, qword [rsi]
mov r14d, 4
mov r8, qword [rsi + 0x160]
mov r9d, 0x3e8
mov rcx, qword [rsi + 0x70]
add r8, r14
add rcx, 0x138
mov rax, qword [rdx + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rdx + 0x68]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.140cf8700
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
test eax, eax
je 0x140ca9523
lea rcx, str.mbedtls_ecdh_make_public
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, 0xe86
mov rcx, rsi
mov edx, 1
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
mov rax, qword [rsi + 0x70]
mov r9d, 0xe90
add rax, 0x138
mov dword [rsp + 0x28], 0
mov edx, 3
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.140caf8c0
mov r9, qword [rsi]
mov rcx, qword [rsi + 0x70]
mov rax, qword [r9 + 0x70]
mov qword [rsp + 0x28], rax
lea r8, [rcx + 0x6e8]
mov rax, qword [r9 + 0x68]
lea rdx, [rcx + 0x10]
mov r9d, 0x400
mov qword [rsp + 0x20], rax
add rcx, 0x138
call fcn.140cf8290
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
mov rcx, rsi
test eax, eax
je 0x140ca95ba
mov dword [rsp + 0x28], eax
mov r9d, 0xea2
lea rax, str.mbedtls_ecdh_calc_secret
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
mov rax, qword [rsi + 0x70]
mov r9d, 0xeac
add rax, 0x138
mov dword [rsp + 0x28], 2
mov edx, 3
mov qword [rsp + 0x20], rax
call fcn.140caf8c0
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsi + 0x160]
add rcx, r14
mov qword [rsi + 0x170], rcx
mov rcx, rsi
mov dword [rsi + reloc.WS2_32.dll_shutdown8], 0x16
mov byte [rax], reloc.WS2_32.dll_recv
inc dword [rsi + 8]
call fcn.140ca21b0
lea r8, str.C:_vcpkg_buildtreesmbedtls_src_v2.28.7_a14e236f0b.cleanlibrary_ssl_cli.c
mov ebx, eax
mov rcx, rsi
test eax, eax
je 0x140ca9643
mov dword [rsp + 0x28], eax
mov r9d, 0xf66
lea rax, str.mbedtls_ssl_write_handshake_msg
mov edx, 1
mov qword [rsp + 0x20], rax
call fcn.140caf800
mov eax, ebx
jmp 0x140ca9661
lea rax, str.__write_client_key_exchange
mov r9d, 0xf6a
mov edx, 2
mov qword [rsp + 0x20], rax
call fcn.140caf730
xor eax, eax
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret