Function at 0x1400644c0
Capabilities:
Get remote cert context via schannel

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1f8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x160], xmm6
mov qword [rbp + 0x158], 0xfffffffffffffffe
mov r13, rdx
mov r15, rcx
lea rax, [rdx + 0x1d4]
mov qword [rbp + 0x18], rax
lea rax, [rdx + 0x10]
mov qword [rbp + 0x58], rax
lea rax, [rdx + 0x1f0]
mov qword [rbp + 0x80], rax
lea rax, [rdx + 0x180]
mov qword [rbp + 0x10], rax
xorps xmm6, xmm6
movabs r12, 0x8000000000000000
mov qword [rbp + 0x148], rdx
movzx eax, byte [r13 + 0x1d0]
test rax, rax
jne 0x1400655a6
mov qword [rbp + 0x130], rbx
movzx esi, byte [r13 + 0x1d1]
movzx eax, byte [r13 + 0x1d2]
mov byte [rbp + 0x13f], al
movzx r8d, byte [r13 + 0x1d3]
movzx ebx, byte [r13 + 0x1d4]
mov rdx, qword [r13 + 0x190]
mov r14, qword [r13 + 0x198]
cmp r14, rdx
jne 0x1400645a0
test sil, sil
jne 0x140064650
jmp 0x1400646a1
mov byte [rbp + 0x153], r8b
mov r13, r15
xor r15d, r15d
nop dword [rax]
mov r9, rdx
sub r9, r14
jb 0x1400657a6
mov rdi, qword [rbp + 0x148]
mov r8, qword [rdi + 0x188]
add r8, r14
lea rcx, [rbp + 0xe0]
mov rdx, qword [rbp + 0x58]
call fcn.1400a4710
cmp qword [rbp + 0xe0], 0
mov rax, qword [rbp + 0xe8]
jne 0x14006557c
add r15, rax
add r14, rax
mov qword [rdi + 0x198], r14
mov rdx, qword [rdi + 0x190]
cmp r14, rdx
jne 0x1400645b0
test r15, r15
mov r15, r13
mov r13, qword [rbp + 0x148]
movabs r12, 0x8000000000000000
movzx r8d, byte [rbp + 0x153]
je 0x140064584
cmp byte [r13 + 0x1d0], 0
jne 0x140064650
mov byte [r13 + 0x1d1], 1
nop word cs:[rax + rax]
mov rax, qword [r13 + 0x138]
test rax, rax
je 0x1400657df
mov rcx, qword [rbp + 0x58]
cmp dword [rcx], 2
je 0x140064697
mov r14b, r8b
mov qword [r13 + 0x48], rax
mov rcx, qword [rbp + 0x58]
call fcn.140069750
mov rsi, rax
test rax, rax
jne 0x1400655e3
mov r13, qword [rbp + 0x148]
mov qword [r13 + 0x48], 0
mov r8d, r14d
cmp byte [r13 + 0x1d0], 0
je 0x1400646af
or bl, r8b
je 0x1400646bc
mov rbx, qword [rbp + 0x130]
jmp 0x1400646d1
mov byte [r13 + 0x1d1], 0
or bl, r8b
jne 0x1400646a6
cmp byte [r13 + 0x222], 0
mov rbx, qword [rbp + 0x130]
je 0x140064c97
cmp byte [rbp + 0x13f], 0
je 0x1400650e7
cmp qword [r13 + 0x210], 0
je 0x140064715
lea rcx, [rbp + 0xe0]
mov rdx, r13
call fcn.1400663f0
cmp qword [rbp + 0xe0], 0
mov rax, qword [rbp + 0xe8]
jne 0x1400655dd
test rax, rax
je 0x1400655c9
mov r14, qword [r13 + 0x178]
movzx eax, byte [0x1402b3399]
mov rax, qword [0x1402b32e8]
test rax, rax
jne 0x140064745
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400657b5
mov qword [0x1402b32e8], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400657b5
mov rdi, rax
mov rdx, qword [r13 + 0x170]
cmp r14, rdx
ja 0x1400657c4
mov rax, qword [r13 + 0x168]
mov dword [rdi], r14d
mov dword [rdi + 4], 2
mov qword [rdi + 8], rax
movups xmmword [rdi + 0x10], xmm6
mov qword [rbp + 0xb0], 2
mov qword [rbp + 0xb8], rdi
mov qword [rbp + 0xc0], 2
mov r14d, 2
cmp qword [r13 + 0x1b8], r12
je 0x140064860
mov rdx, qword [r13 + 0x1c0]
mov r8, qword [r13 + 0x1c8]
mov qword [rbp], 2
lea rcx, [rbp + 0xe0]
call fcn.1401540b0
mov rax, qword [rbp + 0xe0]
mov rbx, qword [rbp + 0xf0]
test rax, rax
je 0x140064860
mov rsi, qword [rbp + 0xe8]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
mov edx, 2
lea rcx, [rbp + 0xb0]
call fcn.140188490
mov rdi, qword [rbp + 0xb8]
mov r14, qword [rbp + 0xc0]
mov rax, r14
shl rax, 4
mov dword [rdi + rax], esi
mov dword [rdi + rax + 4], 0x12
mov qword [rdi + rax + 8], rbx
inc r14
mov qword [rbp + 0xc0], r14
mov r13, qword [rbp + 0x148]
jmp 0x140064869
xor eax, eax
mov qword [rbp + 0x140], rax
mov dword [rbp - 0x10], 0
mov dword [rbp - 0xc], r14d
mov qword [rbp - 8], rdi
movabs rax, 0x200000000
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], 0
movabs rax, 0x1100000000
mov qword [rbp + 0xf0], rax
lea rax, [rbp + 0xf8]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
movabs rax, 0x300000000
mov qword [rbp + 0x48], rax
lea rax, [rbp + 0xe0]
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x94], 0
cmp byte [r13 + 0x222], 0
je 0x140064970
cmp byte [r13 + 0x223], 0
mov edx, 0
mov rcx, qword [rbp + 0x80]
cmove rdx, rcx
mov rax, qword [r13 + 0x1e8]
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x60], xmm0
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
lea rax, [rbp + 0x94]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x10]
mov r9d, 0x1011c
call qword [sym.imp.secur32.dll_AcceptSecurityContext]
jmp 0x140064a1a
cmp byte [r13 + 0x220], 0
mov r8d, 0
je 0x140064987
mov r8, qword [r13 + 0x1a8]
cmp qword [r13 + 0x1a0], r12
mov eax, 0
cmove r8, rax
mov rax, qword [r13 + 0x1e8]
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x60], xmm0
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
lea rax, [rbp + 0x94]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x80]
mov r9d, 0x9819c
call qword [sym.imp.secur32.dll_InitializeSecurityContextW]
mov r13d, eax
xor esi, esi
nop
inc rsi
cmp rsi, 3
je 0x140064a60
mov rax, rsi
shl rax, 4
mov rcx, qword [rbp + rax + 0xe8]
test rcx, rcx
je 0x140064a20
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
call qword [sym.imp.secur32.dll_FreeContextBuffer]
jmp 0x140064a20
cmp r13d, 0x80090318
je 0x140064c00
test r13d, r13d
mov qword [rbp + 0x130], rbx
je 0x140064b40
cmp r13d, 0x90312
jne 0x14006567a
mov rcx, qword [rbp + 0x148]
mov byte [rcx + 0x223], 0
cmp r14, 1
jbe 0x14006571c
cmp dword [rdi + 0x14], 5
mov qword [rbp + 0xd0], r15
jne 0x140064c75
mov r14, qword [rcx + 0x178]
mov eax, dword [rdi + 0x10]
mov r13, r14
mov rsi, qword [rbp + 0xe8]
sub r13, rax
jb 0x14006582c
mov r15d, dword [rbp + 0xe0]
test eax, eax
je 0x140064cf9
mov rax, qword [rbp + 0x148]
mov rdx, qword [rax + 0x170]
mov rbx, rdx
sub rbx, r13
jb 0x14006584a
mov qword [rax + 0x170], 0
test r13, r13
je 0x140064df2
cmp rdx, r13
je 0x140064df7
mov rax, qword [rbp + 0x148]
mov rcx, qword [rax + 0x168]
lea rdx, [rcx + r13]
mov r8, rbx
call sub.VCRUNTIME140.dll_memmove
jmp 0x140064e02
cmp r14, 1
jbe 0x14006574a
cmp dword [rdi + 0x14], 5
jne 0x140064c2b
mov qword [rbp + 0xd0], r15
mov r15, qword [rbp + 0xe8]
test r15, r15
sete dl
mov rax, qword [rbp + 0x148]
je 0x140064b83
mov rcx, qword [rbp + 0xe0]
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0xd8], r15
mov rbx, qword [rax + 0x178]
mov r13d, dword [rdi + 0x10]
mov r14, rbx
sub r14, r13
cmp rbx, r14
jb 0x1400657f7
mov edi, edx
je 0x140064eef
mov rax, qword [rbp + 0x148]
mov rdx, qword [rax + 0x170]
mov rsi, rdx
sub rsi, r14
jb 0x14006585f
mov qword [rax + 0x170], 0
test r14, r14
je 0x140064ee6
cmp rdx, r14
je 0x140064eef
mov rax, qword [rbp + 0x148]
mov rcx, qword [rax + 0x168]
lea rdx, [rcx + r14]
mov r8, rsi
call sub.VCRUNTIME140.dll_memmove
jmp 0x140065088
cmp r14, 1
jbe 0x140065778
mov eax, 1
cmp dword [rdi + 0x14], 4
jne 0x140064c18
mov eax, dword [rdi + 0x10]
mov rcx, qword [rbp + 0x148]
mov qword [rcx + 0x210], rax
jmp 0x140065030
mov rax, qword [rbp + 0xe8]
test rax, rax
sete dil
mov rsi, qword [rbp + 0x148]
je 0x140064c54
mov rcx, qword [rbp + 0xe0]
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0xd8], rax
mov qword [rsi + 0x178], 0
mov qword [rsi + 0x210], 1
jne 0x140064f23
jmp 0x140065011
mov r14, qword [rcx + 0x178]
mov r15d, dword [rbp + 0xe0]
mov eax, 1
mov rsi, qword [rbp + 0xe8]
mov r13, r14
jmp 0x140064e20
mov byte [rbp + 0x153], r8b
mov qword [rbp + 0xe0], 0
mov rcx, qword [rbp + 0x80]
mov edx, 0x53
lea r8, [rbp + 0xe0]
call qword [sym.imp.secur32.dll_QueryContextAttributesW]
test eax, eax
je 0x140064d03
mov r14d, eax
shl r14, 0x20
or r14, 2
cmp byte [rbp + 0x13f], 0
je 0x140065671
mov rcx, r14
call fcn.14004da10
cmp qword [r13 + 0x210], 0
jne 0x1400646e8
jmp 0x140064715
mov eax, 1
jmp 0x140064df9
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x88], rax
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x14006516d
call qword [sym.imp.crypt32.dll_CertDuplicateStore]
mov qword [rbp + 0x118], rax
mov rax, qword [r13]
mov qword [rbp + 0x110], rax
test rax, rax
je 0x14006518a
xor edi, edi
mov rsi, qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rbx, qword [rbp + 0x20]
nop dword [rax]
mov rcx, qword [r13 + 8]
mov qword [rbp + 0xa8], rbx
mov byte [rbp + 0x157], 1
mov rdx, rdi
call qword [sym.imp.crypt32.dll_CertEnumCertificatesInStore]
mov qword [rbp + 0x20], rbx
test rax, rax
je 0x14006519b
mov rcx, rax
mov qword [rbp + 0x140], rax
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xe0], 0
mov rcx, qword [rbp + 0x118]
mov rdx, qword [rbp + 0x140]
mov r8d, 3
lea r9, [rbp + 0xe0]
call qword [sym.imp.crypt32.dll_CertAddCertificateContextToStore]
test eax, eax
je 0x140065619
mov rcx, qword [rbp + 0xe0]
call rsi
mov rdi, qword [rbp + 0xc8]
mov qword [rbp + 0xa8], rdi
mov byte [rbp + 0x157], 0
mov rcx, qword [rbp + 0x140]
call rsi
mov rbx, rdi
jmp 0x140064d50
cmp rdx, r13
jne 0x140064e02
xor eax, eax
mov rcx, qword [rbp + 0x148]
jmp 0x140064e20
mov rcx, qword [rbp + 0x148]
mov qword [rcx + 0x170], rbx
xor eax, eax
nop word cs:[rax + rax]
sub r14, r13
mov qword [rcx + 0x178], r14
mov qword [rcx + 0x210], rax
test r15d, r15d
mov r13d, r15d
mov r14, rsi
lea rax, str.Utf8Errorvalid_up_to
cmove r14, rax
mov rax, qword [rcx + 0x180]
mov rbx, qword [rcx + 0x190]
sub rax, rbx
cmp rax, r13
jae 0x140064e85
mov qword [rbp + 0x40], rsi
mov rcx, qword [rbp + 0x10]
mov rdx, rbx
mov r8, r13
call fcn.1401f07d0
mov r15, qword [rbp + 0xd0]
mov rdi, qword [rbp + 0x148]
mov rbx, qword [rdi + 0x190]
jmp 0x140064e93
mov r15, qword [rbp + 0xd0]
mov rdi, qword [rbp + 0x148]
mov rcx, qword [rdi + 0x188]
add rcx, rbx
mov rdx, r14
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add rbx, r13
mov qword [rdi + 0x190], rbx
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov rbx, qword [rbp + 0x130]
mov qword [rbp + 0x120], rbx
mov rcx, rsi
call qword [sym.imp.secur32.dll_FreeContextBuffer]
movabs r12, 0x8000000000000000
jmp 0x140065030
cmp rdx, r14
jne 0x140065088
xor eax, eax
cmp rbx, r14
sete al
mov rcx, qword [rbp + 0x148]
mov qword [rcx + 0x178], r13
mov qword [rcx + 0x210], rax
test r15, r15
je 0x1400650b5
mov r15, qword [rbp + 0xd0]
mov rsi, qword [rbp + 0x148]
mov r14d, dword [rbp + 0x28]
test r14, r14
mov r13, qword [rbp + 0xd8]
lea rax, str.Utf8Errorvalid_up_to
cmove r13, rax
mov rax, qword [rsi + 0x180]
mov rsi, qword [rsi + 0x190]
sub rax, rsi
cmp rax, r14
jae 0x140064f71
mov rcx, qword [rbp + 0x10]
mov rdx, rsi
mov r8, r14
call fcn.1401f07d0
mov rbx, qword [rbp + 0x148]
mov rsi, qword [rbx + 0x190]
jmp 0x140064f78
mov rbx, qword [rbp + 0x148]
mov rcx, qword [rbx + 0x188]
add rcx, rsi
mov rdx, r13
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add rsi, r14
mov qword [rbx + 0x190], rsi
mov rcx, qword [rbp + 0xd8]
mov qword [rbp + 0x98], rcx
mov byte [rbp + 0x155], 0
mov byte [rbp + 0x154], 0
call qword [sym.imp.secur32.dll_FreeContextBuffer]
mov r13, qword [rbx + 0x178]
xor eax, eax
mov rbx, qword [rbp + 0x130]
test r13, r13
je 0x1400650ce
mov rcx, qword [rbp + 0xd8]
mov qword [rbp + 0x98], rcx
mov byte [rbp + 0x155], dil
mov byte [rbp + 0x154], al
lea rcx, [rbp + 0x60]
mov rsi, qword [rbp + 0x148]
mov rdx, rsi
call fcn.140066610
cmp byte [rbp + 0x60], 0
mov rbx, qword [rbp + 0x130]
jne 0x140065684
cmp byte [rsi + 0x1d0], 0
jne 0x140065030
mov byte [rsi + 0x1d2], 0
nop word cs:[rax + rax]
mov rax, qword [rbp + 0x140]
test rax, rax
mov r13, qword [rbp + 0x148]
je 0x14006505f
mov r8, rbx
cmp rax, 0x11
jb 0x140065050
mov r8, qword [rbx - 8]
mov rcx, qword [0x1402b32e8]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rbp + 0xb0], 0
je 0x140064533
mov r8, qword [rbp + 0xb8]
mov rcx, qword [0x1402b32e8]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140064533
xor eax, eax
cmp rbx, r14
sete al
mov rcx, qword [rbp + 0x148]
mov qword [rcx + 0x170], rsi
mov qword [rcx + 0x178], r13
mov qword [rcx + 0x210], rax
test r15, r15
jne 0x140064f15
mov al, 1
mov r15, qword [rbp + 0xd0]
mov rbx, qword [rbp + 0x130]
test r13, r13
jne 0x140064fd2
mov rsi, qword [rbp + 0x148]
cmp byte [rsi + 0x1d0], 0
jne 0x140065030
jmp 0x14006501a
mov al, 2
test r8b, r8b
jne 0x140065141
movaps xmmword [rbp + 0xe0], xmm6
mov dword [rbp + 0xf0], 0
mov rcx, qword [rbp + 0x80]
mov edx, 4
lea r8, [rbp + 0xe0]
call qword [sym.imp.secur32.dll_QueryContextAttributesW]
test eax, eax
jne 0x14006570f
mov eax, dword [rbp + 0xe0]
mov dword [rbp + 0x3c], eax
mov rax, qword [rbp + 0xe4]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0xec]
mov qword [rbp - 0x18], rax
mov al, 1
mov byte [r13 + 0x1d0], al
mov eax, dword [rbp + 0x3c]
mov dword [r13 + 0x1d4], eax
mov rax, qword [rbp - 0x20]
mov qword [r13 + 0x1d8], rax
mov rax, qword [rbp - 0x18]
mov qword [r13 + 0x1e0], rax
jmp 0x140064533
mov rax, qword [r13]
mov qword [rbp + 0x118], rax
test rax, rax
je 0x1400651aa
mov rax, qword [r13 + 8]
mov qword [rbp + 0x118], rax
jmp 0x1400651aa
mov rcx, qword [rbp + 0x118]
xor edx, edx
call qword [sym.imp.crypt32.dll_CertCloseStore]
jmp 0x1400651aa
mov rcx, qword [rbp + 0x118]
xor edx, edx
call qword [sym.imp.crypt32.dll_CertCloseStore]
movaps xmmword [rbp + 0xe0], xmm6
mov qword [rbp + 0xf0], 0
mov dword [rbp + 0xe0], 0x20
mov dword [rbp + 0xe8], 1
lea rax, str.1.3.6.1.5.5.7.3.1
mov qword [rbp + 0xb0], rax
lea rax, str.1.3.6.1.4.1.311.10.3.3
mov qword [rbp + 0xb8], rax
lea rax, str.2.16.840.1.113730.4.1
mov qword [rbp + 0xc0], rax
mov dword [rbp + 0xf0], 3
lea rax, [rbp + 0xb0]
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x60], 0
lea rax, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0xc0000001
xor ecx, ecx
mov rdx, qword [rbp + 0x88]
xor r8d, r8d
mov r9, qword [rbp + 0x118]
call qword [sym.imp.crypt32.dll_CertGetCertificateChain]
test eax, eax
je 0x1400656d9
mov rdx, qword [rbp + 0x60]
cmp qword [r13], 0
mov qword [rbp + 0x110], rdx
je 0x1400653f4
mov byte [rbp + 0x156], 1
lea rcx, [rbp + 0xe0]
call fcn.1401543d0
cmp qword [rbp + 0xe0], 0
je 0x1400653fb
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x30], rax
xor r14d, r14d
nop word cs:[rax + rax]
mov rcx, qword [rbp + 0x118]
mov eax, dword [rcx + 0xc]
mov ebx, 0xf00
cmp r14, rax
jae 0x1400653e1
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400653e1
mov rax, qword [rax + r14*8]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x140], rcx
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov qword [rbp + 0xc8], rax
inc r14
mov rbx, qword [rbp + 0xa0]
xor edx, edx
nop dword [rax]
mov rcx, qword [r13 + 8]
mov qword [rbp + 0x78], rbx
mov byte [rbp + 0x152], 1
call qword [sym.imp.crypt32.dll_CertEnumCertificatesInStore]
test rax, rax
mov rdi, rax
je 0x1400653bc
mov qword [rbp + 0xa0], rbx
mov rcx, rdi
mov qword [rbp + 0x140], rdi
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov qword [rbp + 0xa0], rax
mov rdi, qword [rbp + 0x140]
mov r8d, dword [rdi + 0x10]
mov rax, qword [rbp + 0xc8]
cmp r8d, dword [rax + 0x10]
jne 0x140065380
mov rdx, qword [rax + 8]
mov rcx, qword [rdi + 8]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete bl
jmp 0x140065382
xor ebx, ebx
mov rsi, qword [rbp + 0xa0]
mov qword [rbp + 0x78], rsi
mov byte [rbp + 0x152], 0
mov rcx, rdi
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rax, rsi
test bl, bl
mov rbx, rsi
mov rdx, rsi
je 0x140065310
mov rcx, rdx
mov rbx, qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
call rbx
jmp 0x1400653ca
mov qword [rbp + 0xa0], rbx
mov rbx, qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rcx, qword [rbp + 0xc8]
call rbx
test rdi, rdi
je 0x1400652c0
mov ebx, 0xf10
mov byte [rbp + 0x156], 1
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
jmp 0x140065400
mov ebx, 0xf00
jmp 0x140065407
mov ebx, 0xf00
mov rdx, qword [rbp + 0x110]
lea rax, [rbp + 0x68]
movups xmmword [rax], xmm6
movabs rax, 0x200000018
mov qword [rbp + 0x60], rax
cmp qword [r13 + 0x1a0], r12
je 0x14006543a
cmp byte [r13 + 0x221], 0
jne 0x14006543a
mov rax, qword [r13 + 0x1a8]
mov qword [rbp + 0x70], rax
mov dword [rbp + 0x48], 0x10
mov dword [rbp + 0x4c], ebx
lea rax, [rbp + 0x60]
mov qword [rbp + 0x50], rax
movaps xmmword [rbp + 0xb0], xmm6
mov qword [rbp + 0xc0], 0
mov dword [rbp + 0xb0], 0x18
mov byte [rbp + 0x156], 1
mov ecx, 4
lea r8, [rbp + 0x48]
lea r9, [rbp + 0xb0]
call qword [sym.imp.crypt32.dll_CertVerifyCertificateChainPolicy]
test eax, eax
je 0x1400656e7
mov ebx, dword [rbp + 0xb4]
mov rsi, rbx
shl rsi, 0x20
or rsi, 2
mov rax, qword [r13 + 0x200]
test rax, rax
je 0x140065528
test ebx, ebx
mov rdx, rsi
mov ecx, 0
cmove rdx, rcx
mov r8, qword [r13 + 0x208]
mov rcx, qword [r8 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
add rcx, rax
add rcx, 0x10
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0xe0], rax
mov dword [rbp + 0xe8], ebx
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0xec], rax
mov rax, qword [r8 + 0x28]
mov qword [rbp + 8], rdx
lea rdx, [rbp + 0xe0]
call rax
mov r14, rax
test ebx, ebx
je 0x140065517
mov qword [rbp + 8], r14
mov rcx, rsi
call fcn.14004da10
test r14, r14
mov rbx, qword [rbp + 0x130]
je 0x140065544
jmp 0x140065664
test ebx, ebx
jne 0x1400656fa
mov rcx, qword [rbp + 0x110]
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
mov rbx, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
cmp byte [r13 + 0x1d0], 0
je 0x140065568
movzx r8d, byte [rbp + 0x153]
jmp 0x1400646d1
mov rax, qword [rbp + 0x18]
mov byte [rax], 1
movzx r8d, byte [rbp + 0x153]
jmp 0x1400646d1
mov r15, r13
mov qword [r13 + 8], rax
mov eax, 2
mov dword [r15], eax
movaps xmm6, xmmword [rbp + 0x160]
add rsp, 0x1f8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp eax, 1
jne 0x1400655c5
mov rcx, qword [rbp + 0x18]
mov eax, dword [rcx + 0x10]
mov dword [r15 + 0x14], eax
movups xmm0, xmmword [rcx]
movups xmmword [r15 + 4], xmm0
mov eax, 1
jmp 0x140065588
xor eax, eax
jmp 0x140065588
lea rdx, str.unexpected_EOF_during_handshakeassertion_failed:_size___nread
mov r8d, 0x1f
mov cl, 0x25
call fcn.140132d00
mov qword [r15 + 8], rax
jmp 0x140065583
mov rcx, rsi
call fcn.140057020
mov rcx, qword [rbp + 0x148]
mov qword [rcx + 0x48], 0
cmp al, 0xd
jne 0x140065610
mov rcx, rsi
call fcn.14004da10
movabs rsi, 0xd00000003
mov qword [r15 + 8], rsi
jmp 0x140065583
call qword [sym.imp.kernel32.dll_GetLastError]
mov r14d, eax
mov rsi, qword [rbp + 0xc8]
mov qword [rbp + 0xa8], rsi
mov byte [rbp + 0x157], 0
mov rcx, qword [rbp + 0x140]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rcx, rsi
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rcx, qword [rbp + 0x118]
xor edx, edx
call qword [sym.imp.crypt32.dll_CertCloseStore]
shl r14, 0x20
or r14, 2
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov qword [r15 + 8], r14
jmp 0x140065583
shl r13, 0x20
or r13, 2
jmp 0x140065688
mov r13, qword [rbp + 0x68]
mov rax, qword [rbp + 0x140]
test rax, rax
je 0x1400656b0
cmp rax, 0x11
jb 0x14006569e
mov rbx, qword [rbx - 8]
mov rcx, qword [0x1402b32e8]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rbp + 0xb0], 0
je 0x1400656d0
mov r8, qword [rbp + 0xb8]
mov rcx, qword [0x1402b32e8]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [r15 + 8], r13
jmp 0x140065583
call qword [sym.imp.kernel32.dll_GetLastError]
mov r14d, eax
jmp 0x14006565c
call qword [sym.imp.kernel32.dll_GetLastError]
mov r14d, eax
shl r14, 0x20
or r14, 2
jmp 0x1400656fd
mov r14, rsi
mov rcx, qword [rbp + 0x110]
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
jmp 0x140065664
shl rax, 0x20
or rax, 2
jmp 0x1400655dd
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov ecx, 1
mov rdx, r14
call fcn.1401e5f90
jmp 0x14006588a
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov ecx, 1
mov rdx, r14
call fcn.1401e5f90
jmp 0x14006588a
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x120], rbx
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov ecx, 1
mov rdx, r14
call fcn.1401e5f90
jmp 0x14006588a
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov rcx, r14
call fcn.1401e5f10
mov ecx, 8
mov edx, 0x20
call fcn.1401e5b40
mov qword [rbp + 0x140], rdi
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov rcx, r14
call fcn.1401e6010
jmp 0x14006588a
lea rcx, str.assertion_failed:__self.context.is_null__
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_native_tls_0.3.1_srclib.rs
mov edx, 0x29
call fcn.1401e6090
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x98], rax
mov byte [rbp + 0x155], dl
mov byte [rbp + 0x154], 1
lea rcx, [0x14021c7af]
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov edx, 0x1f
call fcn.1401e6090
jmp 0x14006588a
mov qword [rbp + 0x40], rsi
lea rcx, [0x14021c7af]
lea r8, str.C:UsersEnder.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.23_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64
mov edx, 0x1f
call fcn.1401e6090
jmp 0x14006588a
mov qword [rbp + 0x40], rsi
lea r8, [0x1402537b8]
mov rcx, r13
call fcn.1401e6010
jmp 0x14006588a
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x98], rax
mov byte [rbp + 0x155], dil
mov byte [rbp + 0x154], 1
lea r8, [0x1402537b8]
mov rcx, r14
call fcn.1401e6010
ud2