Function at 0x140026290
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2d8
movdqa xmmword [rsp + 0x2c0], xmm14
movdqa xmmword [rsp + 0x2b0], xmm13
movdqa xmmword [rsp + 0x2a0], xmm12
movdqa xmmword [rsp + 0x290], xmm11
movdqa xmmword [rsp + 0x280], xmm10
movdqa xmmword [rsp + 0x270], xmm9
movdqa xmmword [rsp + 0x260], xmm8
movdqa xmmword [rsp + 0x250], xmm7
movdqa xmmword [rsp + 0x240], xmm6
mov rsi, rdx
mov rbx, rcx
mov rax, qword [0x140a7a0a8]
xor rax, rsp
mov qword [rsp + 0x238], rax
mov r14, qword [rcx + 0x10]
call fcn.140004280
mov rdi, rax
mov rcx, rbx
mov rdx, rsi
call fcn.1400042b0
mov qword [rsp + 0x230], 0
mov dword [rsp + 0xec], 0
mov rbp, qword [r14 + 0x20]
cmp byte [rdi + 0x69], 0
je 0x14002636d
cmp byte [rbp + 0x6c], 0
mov edx, 0x20
mov ecx, 8
cmove ecx, edx
cmp byte [rax + 0xb3], 0
je 0x140026374
or ecx, 0x1800
jmp 0x14002638b
mov ecx, 0x1808
jmp 0x14002638b
cmp byte [rax + 0xb5], 0
je 0x140026385
or ecx, 0x1a00
jmp 0x14002638b
or ecx, 0x200
mov r14d, ecx
or r14d, 4
cmp byte [rdi + 0x6a], 0
cmovne r14d, ecx
cmp byte [rax + 0xb7], 0
je 0x1400263ba
test rsi, rsi
je 0x1400263df
cmp byte [rsi + 0xaaf], 0
je 0x1400263df
lea rdx, str.schannel:_enabled_automatic_use_of_client_certificate
jmp 0x1400263d7
and r14d, 0xffffffaf
or r14d, 0x10
test rsi, rsi
je 0x1400263df
cmp byte [rsi + 0xaaf], 0
je 0x1400263df
lea rdx, str.schannel:_disabled_automatic_use_of_client_certificate
mov rcx, rsi
call fcn.140003900
movzx eax, byte [rdi + 0x68]
cmp eax, 7
ja 0x1400264e4
mov ecx, 0xf3
bt ecx, eax
jae 0x1400264cb
lea rcx, [rsp + 0xec]
mov rdx, rbx
mov r8, rsi
call fcn.140027210
mov ebx, eax
test eax, eax
jne 0x140027015
mov rcx, qword [rsi + 0x548]
mov rax, qword [rsi + 0x570]
test rcx, rcx
je 0x1400264fd
mov dword [rsp + 0x210], 0
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x220], 0
test rax, rax
jne 0x140026529
call fcn.140023ae0
test rax, rax
je 0x1400269ec
mov r15, rax
lea rdx, [rsp + 0x210]
lea r8, [rsp + 0x1f0]
lea r9, [rsp + 0x220]
mov rcx, rax
call fcn.140027310
test eax, eax
je 0x140026a70
mov ebx, eax
mov rcx, qword [rsi + 0x548]
cmp byte [rcx], 0
je 0x140026a4d
lea rdx, [0x14090507d]
call fcn.140023ca0
test rax, rax
je 0x140026a4d
mov r12, rax
mov al, 1
mov qword [rsp + 0x58], rax
xor r13d, r13d
xor ebx, ebx
jmp 0x14002653d
lea rdx, str.SSL_versions_not_supported
mov rcx, rsi
call fcn.140003830
mov ebx, 4
jmp 0x140027015
lea rdx, str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
mov rcx, rsi
call fcn.140003830
mov ebx, 0x23
jmp 0x140027015
test rax, rax
je 0x140026651
mov dword [rsp + 0x210], 0
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x220], 0
mov rbx, qword [rax]
mov r13, qword [rax + 8]
xor eax, eax
mov qword [rsp + 0x58], rax
xor r15d, r15d
xor r12d, r12d
mov rcx, qword [rsi + 0x5b8]
test rcx, rcx
je 0x14002655d
lea rdx, [0x1409098de]
call fcn.14001a020
test eax, eax
je 0x14002663a
cmp byte [rsp + 0x58], 0
je 0x14002656d
mov rax, qword [rsi + 0x548]
jmp 0x140026574
lea rax, str._memory_blob_
mov qword [rsp + 0x60], rax
test r15, r15
je 0x140026586
mov rcx, r15
call fcn.1408b5568
cmp byte [rsp + 0x58], 0
je 0x1400265e3
mov r15, rbp
mov rcx, r12
xor edx, edx
mov r8d, 2
call fcn.1408ba004
mov ebp, eax
mov al, 1
mov dword [rsp + 0x54], eax
test ebp, ebp
je 0x140026997
mov rbp, r15
xor r13d, r13d
test rbx, rbx
je 0x140026609
mov r8d, 1
mov rcx, rbx
mov rdx, r13
mov r9, r12
call fcn.1408c5358
cmp eax, 1
jne 0x140026609
mov rcx, r12
call fcn.1408b96b8
cmp byte [rsp + 0x54], 0
jne 0x140026611
mov qword [rsp + 0xc8], rbx
mov dword [rsp + 0xc0], r13d
mov rcx, qword [rsi + 0x5d8]
test rcx, rcx
je 0x140026659
call fcn.1408c5050
mov r13, rax
jmp 0x14002665c
mov rcx, r12
call fcn.1408b96b8
mov r8, qword [rsi + 0x548]
lea rdx, str.schannel:_Failed_to_read_cert_file__s
mov rcx, rsi
call fcn.140003830
mov rcx, rbx
call qword [fcn.1408b5568]
mov ebx, 0x3a
jmp 0x140027015
cmp byte [rsp + 0x58], 0
je 0x1400269f6
mov r8, qword [rsi + 0x548]
jmp 0x1400269fd
xor r12d, r12d
jmp 0x14002674f
xor r13d, r13d
lea rcx, [r13*2 + 2]
call qword [fcn.1408b557c]
xor r12d, r12d
test rax, rax
je 0x140026707
mov r15, rax
mov eax, 0
test r13, r13
je 0x1400266ad
lea rax, [r13 + 1]
mov r8, qword [rsi + 0x5d8]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r15
mov ecx, 0xfde9
mov edx, 8
mov r9d, r13d
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r12d, r13d
xor ecx, ecx
cmp eax, r12d
mov edx, eax
cmovg rdx, rcx
test eax, eax
cmovs rdx, rcx
mov word [r15 + rdx*2], 0
mov dword [rsp + 0x20], 3
mov ecx, 6
xor edx, edx
xor r8d, r8d
mov r9d, 2
call fcn.140027c90
movzx r8d, al
shl r8d, 0xf
lea rcx, [rsp + 0xc0]
mov rdx, r15
call qword [sym.imp.CRYPT32.dll_PFXImportCertStore]
mov r12, rax
mov rcx, r15
call qword [fcn.1408b5568]
cmp byte [rsp + 0x58], 0
je 0x140026717
mov rcx, rbx
call qword [fcn.1408b5568]
test r12, r12
je 0x14002692a
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov rcx, r12
mov edx, 0x10001
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x230], rax
test rax, rax
je 0x140026a1b
mov ecx, 1
mov edx, 0x30
call qword [case.0x14001328e.2]
mov qword [rbp], rax
test rax, rax
je 0x140026957
mov dword [rax + 0x28], 1
mov rax, qword [rbp]
mov qword [rax + 0x20], r12
mov rbx, qword [rdi + 0x20]
test rbx, rbx
jne 0x140026b71
mov dword [rsp + 0x20], 3
mov ecx, 0xa
xor edx, edx
mov r8d, 0x4563
mov r9d, 2
call fcn.140027c90
test al, al
je 0x140026b6d
mov qword [rsp + 0x68], rbp
pxor xmm0, xmm0
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmmword [rsp + 0x80], xmm0
movdqa xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0xb0], 0
movdqa xmmword [rsp + 0xd0], xmm0
movdqa xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xe0], 0
movdqa xmmword [rsp + 0x1a0], xmm0
movdqa xmmword [rsp + 0x190], xmm0
movdqa xmmword [rsp + 0x180], xmm0
movdqa xmmword [rsp + 0x170], xmm0
movdqa xmmword [rsp + 0x160], xmm0
movdqa xmmword [rsp + 0x150], xmm0
movdqa xmmword [rsp + 0x140], xmm0
movdqa xmmword [rsp + 0x130], xmm0
movdqa xmmword [rsp + 0x120], xmm0
movdqa xmmword [rsp + 0x110], xmm0
movdqa xmmword [rsp + 0x100], xmm0
movdqa xmmword [rsp + 0xf0], xmm0
movdqa xmmword [rsp + 0x220], xmm0
movdqa xmmword [rsp + 0x210], xmm0
mov r12, qword [rdi + 0x28]
xor r13d, r13d
test r12, r12
je 0x140026f0c
movabs rax, 0x5f4d43435f383231
movabs rcx, 0x5f5345415f534c54
movdqa xmmword [rsp + 0x200], xmm0
movdqa xmmword [rsp + 0x1f0], xmm0
mov bpl, 1
movq xmm6, rcx
movq xmm0, rax
punpcklqdq xmm6, xmm0
movdqa xmm7, xmmword [str._128_CCM_SHA256]
movdqa xmm8, xmmword [0x1409090a0]
movdqa xmm9, xmmword [0x140909080]
movdqa xmm10, xmmword [str.TLS_CHACHA20_POL28_CCM_8_SHA256]
movdqa xmm11, xmmword [0x140909060]
movdqa xmm12, xmmword [str.TLS_AES_128_GCM_POLY1305_SHA256]
movdqa xmm13, xmmword [str._256_GCM_SHA384]
movdqa xmm14, xmmword [str.TLS_AES_256_GCM__128_GCM_SHA256]
mov al, 1
mov dword [rsp + 0x54], eax
mov al, 1
mov dword [rsp + 0x58], eax
mov al, 1
mov dword [rsp + 0x60], eax
mov dil, 1
jmp 0x140026d69
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x140026b4c
lea rdx, str.schannel:_Failed_to_import_cert_file__s__password_is_bad
mov rcx, rsi
mov r8, qword [rsp + 0x60]
call fcn.140003830
mov ebx, 0x3a
jmp 0x140027015
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, rsi
call fcn.140003830
mov rcx, qword [rsp + 0x230]
test rcx, rcx
je 0x140026979
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov ebx, reloc.WLDAP32.dll_Ordinal_27
test r12, r12
je 0x140027015
mov rcx, r12
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x140027015
mov rcx, r12
call fcn.1408c5c40
test eax, eax
mov ecx, eax
cmovs rcx, r13
mov r13, rcx
test ebp, ebp
jne 0x140026d15
test eax, eax
mov rbp, r15
js 0x1400265b6
mov rcx, r12
xor edx, edx
xor r8d, r8d
call fcn.1408ba004
test eax, eax
jne 0x1400265b6
lea rcx, [r13 + 1]
call qword [fcn.1408b557c]
mov rbx, rax
mov dword [rsp + 0x54], 0
jmp 0x1400265b6
mov ebx, reloc.WLDAP32.dll_Ordinal_27
jmp 0x140027015
lea r8, str._memory_blob_
lea rdx, str.schannel:_certificate_format_compatibility_error__for__s
mov rcx, rsi
call fcn.140003830
mov ebx, 0x3a
test r15, r15
jne 0x140026a63
jmp 0x140027015
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
mov rcx, rsi
mov r8, qword [rsp + 0x60]
mov r9d, eax
call fcn.140003830
mov rcx, r12
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
mov ebx, 0x3a
jmp 0x140027015
mov r8, qword [rsi + 0x548]
lea rdx, str.schannel:_Failed_to_get_certificate_location_or_file_for__s
mov rcx, rsi
call fcn.140003830
mov rcx, r15
call fcn.1408b5568
jmp 0x140027015
mov r13, rbp
mov rbx, qword [rsp + 0x1f0]
mov ebp, dword [rsp + 0x210]
mov r9d, ebp
or r9d, 0x4000
mov qword [rsp + 0x20], rbx
mov ecx, 0xa
xor edx, edx
xor r8d, r8d
call qword [sym.imp.CRYPT32.dll_CertOpenStore]
test rax, rax
je 0x140026d1d
mov r12, rax
mov rcx, rbx
call qword [fcn.1408b5568]
lea r9, [rsp + 0xf0]
mov qword [rsp + 0x78], r9
mov dword [rsp + 0x70], reloc.WS2_32.dll_sendto
mov rcx, qword [rsp + 0x220]
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
lea rbx, [rsp + 0x70]
mov qword [rsp + 0x20], rbx
mov edx, Ordinal_41
mov r8d, 4
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryW]
test eax, eax
je 0x140026eff
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], 0
mov rcx, r12
mov edx, 0x10001
xor r8d, r8d
mov r9d, 0x10000
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x230], rax
mov rcx, r15
call fcn.1408b5568
cmp qword [rsp + 0x230], 0
je 0x140026a38
mov rbp, r13
jmp 0x14002674f
lea rdx, str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
mov rcx, rsi
mov r8, qword [rsp + 0x60]
mov r9d, eax
call fcn.140003830
mov ebx, 0x3a
jmp 0x140027015
mov rbx, qword [rdi + 0x20]
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0xb0], xmm0
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmmword [rsp + 0x80], xmm0
mov dword [rsp + 0x70], 4
mov dword [rsp + 0xb8], r14d
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0xa8], eax
test rbx, rbx
je 0x140026bfd
test eax, 0x2000
je 0x140026be1
cmp byte [rsi + 0xaaf], 0
je 0x140026be1
lea rdx, str.schannel:_WARNING:_This_version_of_Schannel_may_negotiate_a_less_secure_TLS_version_than_TLS_1.3_because_the_user_set_an_algorithm_cipher_list.
mov rcx, rsi
call fcn.140003900
cmp qword [rdi + 0x28], 0
je 0x140026cdb
mov ebx, 0x3b
lea rdx, str.schannel:_This_version_of_Schannel_does_not_support_setting_an_algorithm_cipher_list_and_TLS_1.3_cipher_list_at_the_same_time
jmp 0x140026d01
or r14d, 0x400000
mov dword [rsp + 0xb8], r14d
cmp qword [rsp + 0x230], 0
je 0x140026c2c
mov dword [rsp + 0x74], 1
lea rax, [rsp + 0x230]
mov qword [rsp + 0x78], rax
mov rax, qword [0x140a7ffd8]
mov rcx, qword [rbp]
lea rdx, [rcx + 0x10]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rcx
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x20], rcx
lea rdx, str.Microsoft_Unified_Security_Protocol_Provider
xor ecx, ecx
mov r8d, 2
xor r9d, r9d
call qword [rax + Ordinal_26]
mov edi, eax
mov rcx, qword [rsp + 0x230]
test rcx, rcx
je 0x140026c83
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test edi, edi
je 0x140026d0e
lea rdx, [rsp + 0xf0]
mov r8d, 0x100
mov ecx, edi
call fcn.1400373f0
lea rdx, str.schannel:_AcquireCredentialsHandle_failed:__s
mov rcx, rsi
mov r8, rax
call fcn.140003830
mov rcx, qword [rbp]
call qword [fcn.1408b5568]
mov qword [rbp], 0
xor eax, eax
cmp edi, 0x80090300
setne al
lea ebx, [rax*8 + 0x1b]
jmp 0x140027015
lea rcx, [rsp + 0x70]
lea r8, [rsp + 0xf0]
mov rdx, rbx
call fcn.1400274b0
test eax, eax
je 0x140026c0c
mov ebx, eax
lea rdx, str.schannel:_Failed_setting_algorithm_cipher_list
mov rcx, rsi
call fcn.140003830
jmp 0x140027015
xor ebx, ebx
jmp 0x140027015
mov rbp, r15
jmp 0x1400265b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea rdx, str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
mov rcx, rsi
mov r8d, ebp
mov r9, rbx
call fcn.140003830
mov rcx, rbx
call qword [fcn.1408b5568]
mov rcx, r15
call fcn.1408b5568
mov ebx, 0x3a
jmp 0x140027015
xor edi, edi
lea r12, [rbx + 1]
inc r13d
test rbx, rbx
je 0x140026f1f
cmp byte [r12], 0
je 0x140026f1f
cmp r13d, 4
ja 0x140026f1f
mov rcx, r12
mov edx, 0x3a
call fcn.1408b1cf0
mov rbx, rax
test rax, rax
je 0x140026d9b
mov r15, rbx
sub r15, r12
jmp 0x140026da6
mov rcx, r12
call fcn.1408c5050
mov r15, rax
cmp r15, 0x20
jae 0x140027001
lea rcx, [rsp + 0x1f0]
mov rdx, r12
mov r8, r15
call fcn.1408baae0
mov byte [rsp + r15 + 0x1f0], 0
test dil, 1
je 0x140026e01
movdqu xmm0, xmmword [rsp + 0x1f7]
pcmpeqb xmm0, xmm13
movdqa xmm1, xmmword [rsp + 0x1f0]
pcmpeqb xmm1, xmm14
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x140026d57
test byte [rsp + 0x60], 1
je 0x140026e37
movdqu xmm0, xmmword [rsp + 0x1f7]
pcmpeqb xmm0, xmm11
movdqa xmm1, xmmword [rsp + 0x1f0]
pcmpeqb xmm1, xmm12
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x140026ed8
test byte [rsp + 0x58], 1
je 0x140026e69
movdqu xmm0, xmmword [rsp + 0x1fd]
pcmpeqb xmm0, xmm9
movdqa xmm1, xmmword [rsp + 0x1f0]
pcmpeqb xmm1, xmm10
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x140026ee5
test byte [rsp + 0x54], 1
je 0x140026e9a
movdqu xmm0, xmmword [rsp + 0x1f9]
pcmpeqb xmm0, xmm8
movdqa xmm1, xmmword [rsp + 0x1f0]
pcmpeqb xmm1, xmm6
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x140026ef2
test bpl, 1
je 0x140026fe8
movdqu xmm0, xmmword [rsp + 0x1f7]
pcmpeqb xmm0, xmm7
movdqa xmm1, xmmword [rsp + 0x1f0]
pcmpeqb xmm1, xmm6
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x140026fe8
xor ebp, ebp
jmp 0x140026d59
mov dword [rsp + 0x60], 0
jmp 0x140026d59
mov dword [rsp + 0x58], 0
jmp 0x140026d59
mov dword [rsp + 0x54], 0
jmp 0x140026d59
mov rcx, r15
call fcn.1408b5568
jmp 0x140026a38
xor edi, edi
xor r9d, r9d
mov dword [rsp + 0x58], 0
xor edx, edx
xor ebp, ebp
jmp 0x140026f28
mov r9d, dword [rsp + 0x60]
mov edx, dword [rsp + 0x54]
and r9b, 1
and dl, 1
and bpl, 1
and dil, 1
je 0x140026f5b
test r9b, r9b
je 0x140026f5b
mov eax, dword [rsp + 0x58]
and al, 1
je 0x140026f5b
test dl, dl
je 0x140026f5b
test bpl, bpl
je 0x140026f5b
lea rdx, str.schannel:_All_available_TLS_1.3_ciphers_were_disabled
jmp 0x140027008
xor eax, eax
mov ecx, edx
or cl, bpl
je 0x140027095
mov dword [rsp + 0x220], 0x200020
lea rax, str.ChainingModeCCM
mov qword [rsp + 0x228], rax
mov dword [rsp + 0xf0], 2
lea rax, [rsp + 0x220]
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x108], 1
mov dword [rsp + 0xf8], 0x80008
lea rax, [0x140909aee]
mov qword [rsp + 0x100], rax
mov eax, 1
cmp dl, bpl
je 0x140027095
test dl, dl
jne 0x14002708a
mov dword [rsp + 0x11c], Ordinal_73
jmp 0x140027095
lea rdx, str.schannel:_Unknown_TLS_1.3_cipher:__s
lea r8, [rsp + 0x1f0]
mov rcx, rsi
call fcn.140003830
jmp 0x140027010
lea rdx, str.schannel:_Cipher_name_too_long__not_checked
mov rcx, rsi
call fcn.140003830
mov ebx, 0x3b
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.1408ac9a0
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x240]
movaps xmm7, xmmword [rsp + 0x250]
movaps xmm8, xmmword [rsp + 0x260]
movaps xmm9, xmmword [rsp + 0x270]
movaps xmm10, xmmword [rsp + 0x280]
movaps xmm11, xmmword [rsp + 0x290]
movaps xmm12, xmmword [rsp + 0x2a0]
movaps xmm13, xmmword [rsp + 0x2b0]
movaps xmm14, xmmword [rsp + 0x2c0]
add rsp, 0x2d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x118], Ordinal_133
mov ecx, edi
or cl, r9b
jne 0x1400270a6
mov rbp, qword [rsp + 0x68]
jmp 0x140027146
mov dword [rsp + 0x210], 0x200020
lea rcx, str.ChainingModeGCM
mov qword [rsp + 0x218], rcx
mov ecx, eax
lea rcx, [rcx + rcx*2]
shl rcx, 4
lea rdx, [rsp + rcx]
add rdx, 0xf0
cmp dil, r9b
mov rbp, qword [rsp + 0x68]
jne 0x1400270fa
mov dword [rdx], 2
mov word [rdx + 8], 8
mov word [rdx + 0xa], 8
lea rdx, [0x140909aee]
jmp 0x140027121
test dil, dil
mov dword [rdx], 3
mov word [rdx + 8], 8
mov word [rdx + 0xa], 8
lea r8, str.SHA256
lea rdx, str.SHA384
cmove rdx, r8
mov qword [rsp + rcx + 0x100], rdx
lea rdx, [rsp + 0x210]
mov qword [rsp + rcx + 0x110], rdx
mov dword [rsp + rcx + 0x108], 1
inc eax
test byte [rsp + 0x58], 1
je 0x14002717e
mov ecx, eax
lea rcx, [rcx + rcx*2]
shl rcx, 4
mov dword [rsp + rcx + 0xf0], 2
mov dword [rsp + rcx + 0xf8], 0x240024
lea rdx, str.CHACHA20_POLY1305
mov qword [rsp + rcx + 0x100], rdx
inc eax
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xd8], rcx
mov dword [rsp + 0xd4], eax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0xa8], 1
mov dword [rsp + 0x70], 5
or r14d, 0x400000
mov dword [rsp + 0xa4], r14d
mov eax, dword [rsp + 0xec]
not eax
mov dword [rsp + 0xd0], eax
cmp qword [rsp + 0x230], 0
je 0x140026c2c
mov dword [rsp + 0x78], 1
lea rax, [rsp + 0x230]
mov qword [rsp + 0x80], rax
jmp 0x140026c2c