Function at 0x140113540
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 rdi, rdx
mov rbx, rcx
lea rax, [rdx + 0x44]
mov qword [rbp + 0x18], rax
lea rax, [rdx + 0x10]
mov qword [rbp - 0x20], rax
lea rax, [rdx + 0xa0]
mov qword [rbp + 0x10], rax
lea rax, [rdx + 0xc0]
mov qword [rbp + 0x88], rax
xorps xmm6, xmm6
mov r12, qword [sym.imp.secur32.dll_FreeContextBuffer]
mov qword [rbp + 0x120], rcx
movzx eax, byte [rdi + 0x40]
test rax, rax
jne 0x14011450b
mov qword [rbp + 0x118], r15
movzx ebx, byte [rdi + 0x41]
movzx r15d, byte [rdi + 0x42]
movzx ecx, byte [rdi + 0x43]
movzx r13d, byte [rdi + 0x44]
mov r14, qword [rdi + 0xb8]
mov rdx, qword [rdi + 0xb0]
cmp r14, rdx
jne 0x140113620
test bl, bl
mov rbx, qword [rbp + 0x120]
je 0x140113606
cmp qword [rdi + 0x38], 0
je 0x1401146e0
cmp byte [rdi + 0x40], 0
je 0x1401136d9
or r13b, cl
jne 0x1401136ef
jmp 0x1401136e2
mov byte [rbp + 0x157], cl
mov r12d, r15d
mov r15, rsi
xor esi, esi
nop
mov rax, rdx
sub rax, r14
jb 0x1401146fa
mov r8, qword [rdi + 0x38]
test r8, r8
je 0x1401146e0
mov r9, qword [rdi + 0xa0]
add r9, r14
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xe0]
mov rdx, qword [rbp - 0x20]
call case.0x140153662.235
mov rcx, qword [rbp + 0xe0]
cmp rcx, 2
je 0x1401144d4
mov rax, qword [rbp + 0xe8]
test rcx, rcx
jne 0x1401144de
add rsi, rax
add r14, rax
mov qword [rdi + 0xb8], r14
mov rdx, qword [rdi + 0xb0]
cmp r14, rdx
jne 0x140113630
test rsi, rsi
mov rsi, r15
mov r15d, r12d
mov r12, qword [sym.imp.secur32.dll_FreeContextBuffer]
movzx ecx, byte [rbp + 0x157]
je 0x1401135e6
cmp byte [rdi + 0x40], 0
mov rbx, qword [rbp + 0x120]
jne 0x1401135f1
mov byte [rdi + 0x41], 1
jmp 0x1401135f1
mov byte [rdi + 0x41], 0
or r13b, cl
jne 0x1401136ef
cmp byte [rdi + 0x122], 0
je 0x140113c91
test r15b, r15b
je 0x140114079
cmp qword [rdi + 0xf8], 0
mov r15, qword [rbp + 0x118]
je 0x140113736
lea rcx, [rbp + 0xe0]
mov rdx, rdi
call fcn.140115000
cmp qword [rbp + 0xe0], 0
mov rax, qword [rbp + 0xe8]
jne 0x1401144e5
test rax, rax
je 0x14011452c
mov r14, qword [rdi + 0x98]
movzx eax, byte [0x14023c308]
mov rax, qword [0x14023c258]
test rax, rax
jne 0x140113766
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x14011470b
mov qword [0x14023c258], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14011470b
mov r13, rax
mov rdx, qword [rdi + 0x90]
cmp r14, rdx
ja 0x14011471c
mov rax, qword [rdi + 0x80]
mov dword [r13], r14d
mov dword [r13 + 4], 2
mov qword [r13 + 8], rax
movups xmmword [r13 + 0x10], xmm6
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], 2
mov qword [rbp + 0xd0], 2
mov rdx, qword [rdi + 0x108]
mov r14d, 2
test rdx, rdx
je 0x140113880
mov r8, qword [rdi + 0x118]
mov qword [rbp + 8], 2
mov qword [rbp], r13
lea rcx, [rbp + 0xe0]
call fcn.140148370
mov rax, qword [rbp + 0xe0]
mov r15, qword [rbp + 0xf0]
test rax, rax
je 0x140113880
mov r13, rsi
mov rsi, qword [rbp + 0xe8]
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea rcx, [rbp + 0xc0]
call fcn.140148920
mov rcx, qword [rbp + 0xc0]
mov r14, qword [rbp + 0xd0]
mov rax, r14
shl rax, 4
mov dword [rcx + rax], esi
mov dword [rcx + rax + 4], shutdown
mov qword [rcx + rax + 8], r15
inc r14
mov qword [rbp + 0xd0], r14
mov rsi, r13
mov r13, rcx
jmp 0x140113889
xor eax, eax
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x110], rsi
mov dword [rbp - 0x10], 0
mov dword [rbp - 0xc], r14d
mov qword [rbp + 0x140], r13
mov qword [rbp - 8], r13
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 + 0xa4], 0
cmp byte [rdi + 0x122], 0
je 0x140113990
cmp byte [rdi + 0x123], 0
mov edx, 0
mov rcx, qword [rbp + 0x88]
cmove rdx, rcx
mov rax, qword [rdi + 0x58]
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x60], xmm0
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea rax, [rbp + 0xa4]
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 0x140113a2f
cmp byte [rdi + 0x120], 0
mov rax, qword [rdi + 0xd0]
mov r8d, 0
cmovne r8, rax
test rax, rax
cmove r8, rax
mov rax, qword [rdi + 0x58]
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x60], xmm0
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea rax, [rbp + 0xa4]
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 + 0x88]
mov r9d, 0x9819c
call qword [sym.imp.secur32.dll_InitializeSecurityContextW]
mov r13d, eax
xor esi, esi
nop word cs:[rax + rax]
inc rsi
cmp rsi, 3
je 0x140113a80
mov rax, rsi
shl rax, 4
mov rcx, qword [rbp + rax + 0xe8]
test rcx, rcx
je 0x140113a40
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
call r12
jmp 0x140113a40
cmp r13d, 0x80090318
je 0x140113bf0
test r13d, r13d
mov qword [rbp + 0x118], r15
je 0x140113b3f
cmp r13d, 0x90312
jne 0x1401145a7
mov byte [rdi + 0x123], 0
cmp r14, 1
jbe 0x140114684
mov rax, qword [rbp + 0x140]
cmp dword [rax + 0x14], 5
jne 0x140113c64
mov r15, qword [rdi + 0x98]
mov eax, dword [rax + 0x10]
mov r13, r15
mov rsi, qword [rbp + 0xe8]
sub r13, rax
jb 0x140114737
mov ebx, dword [rbp + 0xe0]
test eax, eax
je 0x140113cfa
mov rdx, qword [rdi + 0x90]
mov r14, rdx
sub r14, r13
jb 0x140114794
mov qword [rdi + 0x90], 0
test r13, r13
je 0x140113e05
cmp rdx, r13
je 0x140113e18
mov rcx, qword [rdi + 0x80]
lea rdx, [rcx + r13]
mov r8, r14
call sub.VCRUNTIME140.dll_memmove
jmp 0x140113e11
cmp r14, 1
jbe 0x1401146b2
mov rax, qword [rbp + 0x140]
cmp dword [rax + 0x14], 5
jne 0x140113c1b
mov rbx, qword [rbp + 0xe8]
test rbx, rbx
sete cl
je 0x140113b7b
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x128], rbx
mov byte [rbp + 0x157], cl
mov r13, qword [rdi + 0x98]
mov rax, qword [rbp + 0x140]
mov r15d, dword [rax + 0x10]
mov r14, r13
sub r14, r15
cmp r13, r14
jb 0x140114758
je 0x140113ecd
mov rdx, qword [rdi + 0x90]
mov rsi, rdx
sub rsi, r14
jb 0x1401147a9
mov qword [rdi + 0x90], 0
test r14, r14
je 0x140113ec4
cmp rdx, r14
je 0x140113ecd
mov rcx, qword [rdi + 0x80]
lea rdx, [rcx + r14]
mov r8, rsi
call sub.VCRUNTIME140.dll_memmove
jmp 0x140113f9a
cmp r14, 1
jbe 0x140114656
mov eax, 1
mov rcx, qword [rbp + 0x140]
cmp dword [rcx + 0x14], 4
jne 0x140113c85
mov eax, dword [rcx + 0x10]
mov qword [rdi + 0xf8], rax
jmp 0x14011401e
mov rax, qword [rbp + 0xe8]
test rax, rax
sete byte [rbp + 0x157]
mov r13, qword [rbp + 0x128]
je 0x140113c43
mov rcx, qword [rbp + 0xe0]
mov qword [rbp + 0x20], rcx
mov r13, rax
mov qword [rdi + 0x98], 0
mov qword [rdi + 0xf8], 1
jne 0x140113efa
jmp 0x140114006
mov r15, qword [rdi + 0x98]
mov ebx, dword [rbp + 0xe0]
mov eax, 1
mov rsi, qword [rbp + 0xe8]
mov r13, r15
jmp 0x140113e1a
mov qword [rdi + 0xf8], rax
jmp 0x14011401e
mov byte [rbp + 0x157], cl
mov qword [rbp + 0xe0], 0
mov rcx, qword [rbp + 0x88]
mov edx, 0x53
lea r8, [rbp + 0xe0]
call qword [sym.imp.secur32.dll_QueryContextAttributesW]
test eax, eax
je 0x140113d04
mov r14d, eax
shl r14, 0x20
or r14, 2
test r15b, r15b
je 0x14011459e
mov ecx, 1
mov rdx, r14
call fcn.140114f10
cmp qword [rdi + 0xf8], 0
mov r15, qword [rbp + 0x118]
jne 0x140113709
jmp 0x140113736
mov eax, 1
jmp 0x140113e1a
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x98], rax
mov r14, qword [rax + 0x20]
test r14, r14
je 0x1401140e5
mov rcx, r14
call qword [sym.imp.crypt32.dll_CertDuplicateStore]
mov qword [rbp + 0x140], rax
mov rax, qword [rdi]
mov qword [rbp + 0x58], rax
test rax, rax
je 0x140114101
mov qword [rbp + 0xd8], r14
xor r13d, r13d
nop dword [rax]
mov rcx, qword [rdi + 8]
mov qword [rbp + 0xb8], r14
mov qword [rbp + 0xb0], 0
mov rdx, r13
call qword [sym.imp.crypt32.dll_CertEnumCertificatesInStore]
mov qword [rbp + 0x90], r14
test rax, rax
je 0x140114112
mov rcx, rax
mov qword [rbp + 0x148], rax
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0xe0], 0
mov rcx, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x148]
mov r8d, 3
lea r9, [rbp + 0xe0]
call qword [sym.imp.crypt32.dll_CertAddCertificateContextToStore]
test eax, eax
je 0x140114542
mov rcx, qword [rbp + 0xe0]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov r13, qword [rbp + 0x110]
mov qword [rbp + 0xb8], r13
mov qword [rbp + 0xb0], 1
mov rcx, qword [rbp + 0x148]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov r14, r13
jmp 0x140113d50
cmp rdx, r13
jne 0x140113e11
xor eax, eax
xor r13d, r13d
jmp 0x140113e1a
mov qword [rdi + 0x90], r14
xor eax, eax
sub r15, r13
mov qword [rdi + 0x98], r15
mov qword [rdi + 0xf8], rax
test ebx, ebx
mov r13d, ebx
mov r14, rsi
lea rax, [0x1401ea218]
cmove r14, rax
mov rax, qword [rdi + 0xa8]
mov r15, qword [rdi + 0xb0]
sub rax, r15
cmp rax, r13
jae 0x140113e77
mov qword [rbp + 0x40], rsi
mov rcx, qword [rbp + 0x10]
mov rdx, r15
mov r8, r13
call fcn.14018d7c0
mov rbx, qword [rbp + 0x120]
mov r15, qword [rdi + 0xb0]
jmp 0x140113e7e
mov rbx, qword [rbp + 0x120]
mov rcx, qword [rdi + 0xa0]
add rcx, r15
mov rdx, r14
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add r15, r13
mov qword [rdi + 0xb0], r15
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov r15, qword [rbp + 0x118]
mov qword [rbp + 0x130], r15
mov rcx, rsi
call r12
jmp 0x14011401e
cmp rdx, r14
jne 0x140113f9a
xor eax, eax
cmp r13, r14
sete al
mov qword [rdi + 0x98], r15
mov qword [rdi + 0xf8], rax
test rbx, rbx
je 0x140113fc0
mov rbx, qword [rbp + 0x120]
mov r13, qword [rbp + 0x128]
mov r14d, dword [rbp + 0x20]
test r14, r14
mov rsi, r13
lea rax, [0x1401ea218]
cmove rsi, rax
mov rax, qword [rdi + 0xa8]
mov r15, qword [rdi + 0xb0]
sub rax, r15
cmp rax, r14
jae 0x140113f49
mov qword [rbp + 0x128], r13
mov rcx, qword [rbp + 0x10]
mov rdx, r15
mov r8, r14
call fcn.14018d7c0
mov r15, qword [rdi + 0xb0]
mov r13, qword [rbp + 0x128]
mov rcx, qword [rdi + 0xa0]
add rcx, r15
mov rdx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add r15, r14
mov qword [rdi + 0xb0], r15
mov sil, byte [rbp + 0x157]
mov byte [rbp + 0x155], sil
mov qword [rbp + 0xa8], r13
mov byte [rbp + 0x154], 0
mov rcx, r13
call r12
mov r15, qword [rdi + 0x98]
xor eax, eax
test r15, r15
jne 0x140113fdc
jmp 0x140114006
xor eax, eax
cmp r13, r14
sete al
mov qword [rdi + 0x90], rsi
mov qword [rdi + 0x98], r15
mov qword [rdi + 0xf8], rax
test rbx, rbx
jne 0x140113eec
mov al, 1
mov rbx, qword [rbp + 0x120]
mov r13, qword [rbp + 0x128]
movzx esi, byte [rbp + 0x157]
test r15, r15
je 0x140114006
mov byte [rbp + 0x155], sil
mov qword [rbp + 0xa8], r13
mov byte [rbp + 0x154], al
lea rcx, [rbp + 0x60]
mov rdx, rdi
call case.0x1400e9218.353
cmp byte [rbp + 0x60], 0
jne 0x1401145b1
mov qword [rbp + 0x128], r13
cmp byte [rdi + 0x40], 0
jne 0x140114017
mov byte [rdi + 0x42], 0
mov r15, qword [rbp + 0x118]
mov rax, qword [rbp + 0x148]
test rax, rax
mov rsi, qword [rbp + 0x110]
mov r14, qword [rbp + 0x140]
je 0x140114054
mov r8, r15
cmp rax, 0x11
jb 0x140114045
mov r8, qword [r15 - 8]
mov rcx, qword [0x14023c258]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rbp + 0xc8], 0
je 0x1401135ad
mov rcx, qword [0x14023c258]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1401135ad
mov al, 2
test cl, cl
mov r15, qword [rbp + 0x118]
jne 0x1401140c7
lea rcx, [rbp + 0xe0]
mov rdx, qword [rbp + 0x88]
call fcn.1401489d0
cmp dword [rbp + 0xe0], 0
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x28], rax
jne 0x14011464d
mov eax, dword [rbp + 0xe4]
mov dword [rbp + 0x3c], eax
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 0x18], rax
mov al, 1
mov byte [rdi + 0x40], al
mov eax, dword [rbp + 0x3c]
mov dword [rdi + 0x44], eax
mov rax, qword [rbp + 0x28]
mov qword [rdi + 0x48], rax
mov rax, qword [rbp - 0x18]
mov qword [rdi + 0x50], rax
jmp 0x1401135ad
mov rax, qword [rdi]
mov qword [rbp + 0x140], rax
test rax, rax
je 0x14011412b
mov rax, qword [rdi + 8]
mov qword [rbp + 0x140], rax
jmp 0x14011412b
mov rcx, qword [rbp + 0x140]
xor edx, edx
call qword [sym.imp.crypt32.dll_CertCloseStore]
jmp 0x14011412b
cmp qword [rbp + 0xd8], 0
je 0x14011412b
mov rcx, qword [rbp + 0x140]
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 + 0xc0], rax
lea rax, str.1.3.6.1.4.1.311.10.3.3
mov qword [rbp + 0xc8], rax
lea rax, str.2.16.840.1.113730.4.1
mov qword [rbp + 0xd0], rax
mov dword [rbp + 0xf0], 3
lea rax, [rbp + 0xc0]
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 + 0x98]
xor r8d, r8d
mov r9, qword [rbp + 0x140]
call qword [sym.imp.crypt32.dll_CertGetCertificateChain]
test eax, eax
je 0x14011460d
mov rdx, qword [rbp + 0x60]
cmp qword [rdi], 0
mov qword [rbp + 0xd8], rdx
je 0x14011435e
mov byte [rbp + 0x156], 1
lea rcx, [rbp + 0xe0]
call fcn.140147b30
cmp qword [rbp + 0xe0], 0
je 0x14011437e
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x30], rax
xor eax, eax
mov qword [rbp + 0x90], rax
nop word [rax + rax]
mov rcx, qword [rbp + 0x58]
mov eax, dword [rcx + 0xc]
mov ebx, 0xf00
mov r14, qword [rbp + 0x90]
cmp r14, rax
jae 0x140114365
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140114365
mov rax, qword [rax + r14*8]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x148], rcx
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov qword [rbp + 0x140], rax
inc r14
mov qword [rbp + 0x90], r14
xor r14d, r14d
mov rbx, qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
nop dword [rax]
mov rcx, qword [rdi + 8]
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x78], rsi
mov rdx, r14
call qword [sym.imp.crypt32.dll_CertEnumCertificatesInStore]
test rax, rax
mov rcx, rax
je 0x14011433c
mov qword [rbp + 0x110], rsi
mov qword [rbp + 0x148], rcx
call qword [sym.imp.crypt32.dll_CertDuplicateCertificateContext]
mov r14, rax
mov r13, qword [rbp + 0x148]
mov r8d, dword [r13 + 0x10]
mov rax, qword [rbp + 0x140]
cmp r8d, dword [rax + 0x10]
jne 0x140114310
mov rcx, qword [r13 + 8]
mov rdx, qword [rax + 8]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete sil
jmp 0x140114312
xor esi, esi
mov qword [rbp + 0x80], 1
mov qword [rbp + 0x78], r14
mov rcx, r13
call rbx
mov rax, r14
test sil, sil
mov rsi, r14
je 0x1401142a0
mov rcx, r14
call rbx
jmp 0x140114342
mov r13, rcx
mov r14, rsi
mov rcx, qword [rbp + 0x140]
call rbx
mov rsi, r14
test r13, r13
je 0x140114240
mov ebx, 0xf10
jmp 0x140114368
mov ebx, 0xf00
jmp 0x14011438a
mov r14, rsi
mov byte [rbp + 0x156], 1
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
mov rsi, r14
jmp 0x140114383
mov ebx, 0xf00
mov rdx, qword [rbp + 0xd8]
lea rax, [rbp + 0x68]
movups xmmword [rax], xmm6
movabs rax, 0x200000018
mov qword [rbp + 0x60], rax
mov rax, qword [rdi + 0xd0]
test rax, rax
je 0x1401143b8
cmp byte [rdi + 0x121], 0
jne 0x1401143b8
mov qword [rbp + 0x70], rax
mov dword [rbp + 0x48], reloc.WS2_32.dll_recv
mov dword [rbp + 0x4c], ebx
lea rax, [rbp + 0x60]
mov qword [rbp + 0x50], rax
movaps xmmword [rbp + 0xc0], xmm6
mov qword [rbp + 0xd0], 0
mov dword [rbp + 0xc0], 0x18
mov byte [rbp + 0x156], 1
mov ecx, 4
lea r8, [rbp + 0x48]
lea r9, [rbp + 0xc0]
call qword [sym.imp.crypt32.dll_CertVerifyCertificateChainPolicy]
test eax, eax
je 0x14011461b
mov edx, dword [rbp + 0xc4]
mov r14, rdx
shl r14, 0x20
or r14, 2
mov rax, qword [rdi + 0xe8]
test rax, rax
mov rbx, qword [rbp + 0x120]
je 0x14011448d
mov qword [rbp + 0x148], r14
mov r8, qword [rdi + 0xf0]
mov rcx, qword [r8 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
add rcx, rax
add rcx, 0x10
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0x110], rdx
mov dword [rbp + 0xe8], edx
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0xec], rax
lea rdx, [rbp + 0xe0]
call qword [r8 + 0x28]
test rax, rax
je 0x1401144a2
jmp 0x140114645
test edx, edx
mov rcx, qword [rbp + 0xd8]
jne 0x14011463a
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
mov rcx, qword [rbp + 0x98]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
cmp byte [rdi + 0x40], 0
je 0x1401144c1
movzx ecx, byte [rbp + 0x157]
jmp 0x1401136ef
mov rax, qword [rbp + 0x18]
mov byte [rax], 1
movzx ecx, byte [rbp + 0x157]
jmp 0x1401136ef
movabs rax, 0xd00000003
mov rbx, qword [rbp + 0x120]
mov qword [rbx + 8], rax
mov eax, 2
mov dword [rbx], 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 0x140114528
mov rcx, qword [rbp + 0x18]
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x14], eax
movups xmm0, xmmword [rcx]
movups xmmword [rbx + 4], xmm0
mov eax, 1
jmp 0x1401144ee
xor eax, eax
jmp 0x1401144ee
lea rdx, str.unexpected_EOF_during_handshakeassertion_failed:_size___nread
mov r8d, 0x1f
mov cl, 0x25
call fcn.1400e4a10
jmp 0x1401144e5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
mov rsi, qword [rbp + 0x110]
mov qword [rbp + 0xb8], rsi
mov qword [rbp + 0xb0], 1
mov rcx, qword [rbp + 0x148]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rcx, rsi
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov rcx, qword [rbp + 0x140]
xor edx, edx
call qword [sym.imp.crypt32.dll_CertCloseStore]
shl r14, 0x20
or r14, 2
mov rcx, qword [rbp + 0x98]
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov qword [rbx + 8], r14
jmp 0x1401144e9
shl r13, 0x20
or r13, 2
jmp 0x1401145bc
mov r13, qword [rbp + 0x68]
mov r15, qword [rbp + 0x118]
mov rax, qword [rbp + 0x148]
test rax, rax
je 0x1401145e4
cmp rax, 0x11
jb 0x1401145d2
mov r15, qword [r15 - 8]
mov rcx, qword [0x14023c258]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rbp + 0xc8], 0
je 0x140114604
mov rcx, qword [0x14023c258]
xor edx, edx
mov r8, qword [rbp + 0x140]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r13
jmp 0x1401144e9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
jmp 0x140114589
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
shl r14, 0x20
or r14, 2
mov rbx, qword [rbp + 0x120]
mov rcx, qword [rbp + 0xd8]
call qword [sym.imp.crypt32.dll_CertFreeCertificateChain]
jmp 0x140114591
mov r14, rax
jmp 0x140114591
mov rax, qword [rbp + 0x28]
jmp 0x1401144e5
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov ecx, 1
mov rdx, r14
call fcn.140186a70
jmp 0x1401147da
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov ecx, 1
mov rdx, r14
call fcn.140186a70
jmp 0x1401147da
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x130], r15
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov ecx, 1
mov rdx, r14
call fcn.140186a70
jmp 0x1401147da
lea rcx, str.assertion_failed:__self.context.is_null__
lea r8, [0x1401b99a8]
mov edx, 0x29
call fcn.140186b70
ud2
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov rcx, r14
call fcn.1401869f0
ud2
mov ecx, 8
mov edx, 0x20
call fcn.140186620
ud2
mov qword [rbp + 0x140], r13
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov rcx, r14
call fcn.140186af0
jmp 0x1401147da
mov qword [rbp + 0x40], rsi
lea rcx, [0x1401bda8f]
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov edx, 0x1f
call fcn.140186b70
jmp 0x1401147da
movzx eax, byte [rbp + 0x157]
mov byte [rbp + 0x155], al
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0xa8], rax
mov byte [rbp + 0x154], 1
lea rcx, [0x1401bda8f]
lea r8, str.C:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.22_src_tls_stream.rsC:UsersFokus.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.5.0_src_buf_take.rsassertion_failed:_cnt___self.limit
mov edx, 0x1f
call fcn.140186b70
jmp 0x1401147da
mov qword [rbp + 0x40], rsi
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962library_alloc_src_vecmod.rs
mov rcx, r13
call fcn.140186af0
jmp 0x1401147da
movzx eax, byte [rbp + 0x157]
mov byte [rbp + 0x155], al
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0xa8], rax
mov byte [rbp + 0x154], 1
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962library_alloc_src_vecmod.rs
mov rcx, r14
call fcn.140186af0
ud2