Function at 0x140003310
Capabilities:
Encrypt data using openssl rsa

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x1400c9948]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov r15, r9
mov rdi, rcx
mov edx, 0x3ff
test r9, r9
jne 0x14000338d
lea r8, str._nCertificate_is_uninitialised__n
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, 0x3ff
jb 0x140003365
mov eax, 0xffffd680
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1400946f0
mov rbx, qword [rsp + 0xc8]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, dword [r9 + 0x38]
lea r13, [0x1400a4182]
mov r9, r13
mov dword [rsp + 0x20], eax
lea r8, str._scert._version_____:__d_n
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, 0x3ff
jae 0x140003360
add rdi, rax
lea r8, str._sserial_number_____:
mov ebx, 0x3ff
mov r9, r13
sub rbx, rax
mov rcx, rdi
mov rdx, rbx
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov rbp, qword [r15 + 0x48]
lea r12, [rdi + rax]
sub rbx, rax
mov rsi, rbx
cmp rbp, 0x20
ja 0x140003407
test rbp, rbp
je 0x1400034b0
jmp 0x14000340c
mov ebp, 0x1c
mov r14, r12
lea rdx, [0x1400bc5a8]
xor edi, edi
test rdi, rdi
jne 0x14000342c
cmp rbp, 1
jbe 0x14000342c
mov rax, qword [r15 + 0x50]
cmp byte [rax], dil
je 0x14000347a
lea rax, [rbp - 1]
mov rcx, r13
cmp rdi, rax
lea r8, str._02X_s
mov rax, qword [r15 + 0x50]
cmovb rcx, rdx
mov rdx, rsi
mov qword [rsp + 0x20], rcx
mov rcx, r14
movzx r9d, byte [rax + rdi]
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rsi
jae 0x140003360
sub rsi, rax
lea rdx, [0x1400bc5a8]
add r14, rax
inc rdi
cmp rdi, rbp
jb 0x140003418
cmp rbp, qword [r15 + 0x48]
je 0x1400034b0
lea r8, str.....
mov rdx, rsi
mov rcx, r14
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rsi
jae 0x140003360
sub rsi, rax
mov eax, ebx
sub eax, esi
js 0x140003360
movsxd rcx, eax
cmp rcx, rbx
jae 0x140003360
sub rbx, rcx
lea rdi, [rcx + r12]
mov rdx, rbx
lea r8, str._n_sissuer_name_______:
mov rcx, rdi
mov r9, r13
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, [r15 + 0xa0]
add rdi, rax
mov rdx, rbx
mov rcx, rdi
call fcn.140015a40
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, str._n_ssubject_name______:
add rdi, rax
mov rdx, rbx
mov rcx, rdi
mov r9, r13
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, [r15 + 0xe0]
add rdi, rax
mov rdx, rbx
mov rcx, rdi
call fcn.140015a40
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, str._n_sissued__on________:__04d__02d__02d__02d:_02d:_02d
add rdi, rax
mov r9, r13
mov eax, dword [r15 + 0x134]
mov rdx, rbx
mov dword [rsp + 0x48], eax
mov rcx, rdi
mov eax, dword [r15 + 0x130]
mov dword [rsp + 0x40], eax
mov eax, dword [r15 + 0x12c]
mov dword [rsp + 0x38], eax
mov eax, dword [r15 + 0x128]
mov dword [rsp + 0x30], eax
mov eax, dword [r15 + 0x124]
mov dword [rsp + 0x28], eax
mov eax, dword [r15 + 0x120]
mov dword [rsp + 0x20], eax
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, str._n_sexpires_on________:__04d__02d__02d__02d:_02d:_02d
add rdi, rax
mov r9, r13
mov eax, dword [r15 + 0x14c]
mov rdx, rbx
mov dword [rsp + 0x48], eax
mov rcx, rdi
mov eax, dword [r15 + 0x148]
mov dword [rsp + 0x40], eax
mov eax, dword [r15 + 0x144]
mov dword [rsp + 0x38], eax
mov eax, dword [r15 + 0x140]
mov dword [rsp + 0x30], eax
mov eax, dword [r15 + 0x13c]
mov dword [rsp + 0x28], eax
mov eax, dword [r15 + 0x138]
mov dword [rsp + 0x20], eax
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r8, str._n_ssigned_using______:
add rdi, rax
mov rdx, rbx
mov rcx, rdi
mov r9, r13
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov r12d, dword [r15 + 0x254]
lea r14, [rax + rdi]
sub rbx, rax
lea r13, [r15 + 0x58]
mov rax, qword [r15 + 0x258]
lea rdi, [0x1400a4f60]
mov qword [rsp + 0x58], rax
mov rsi, rbx
mov eax, dword [r15 + 0x250]
mov rcx, rdi
mov dword [rsp + 0x50], eax
test r13, r13
je 0x1400036fa
cmp qword [0x1400a4f60], 0
je 0x1400036fa
mov rbp, qword [r13 + 8]
cmp qword [rcx + 8], rbp
jne 0x1400036ed
mov rdx, qword [r13 + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call fcn.140080030
test eax, eax
je 0x1400037c9
add rdi, 0x28
mov rcx, rdi
cmp qword [rdi], 0
jne 0x1400036d0
lea r8, [0x1400a42c8]
mov rdx, rsi
mov rcx, r14
call fcn.140018360
test eax, eax
js 0x140003360
movsxd r10, eax
cmp r10, rsi
jae 0x140003360
sub rsi, r10
cmp r12d, 6
jne 0x140003794
mov ecx, dword [rsp + 0x50]
call fcn.140014c20
mov r11, qword [rsp + 0x58]
mov r8, rax
mov ecx, dword [r11]
call fcn.140014c20
test rax, rax
lea rdx, [0x1400a42c8]
lea r9, [0x1400a42c8]
cmovne rdx, rax
lea rcx, [r10 + r14]
mov eax, dword [r11 + 4]
test r8, r8
mov dword [rsp + 0x28], eax
cmovne r9, r8
mov qword [rsp + 0x20], rdx
lea r8, str.___s__MGF1__s__0x_02X_
mov rdx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rsi
jae 0x140003360
sub rsi, rax
mov eax, ebx
sub eax, esi
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea rdi, [r15 + 0x168]
add r14, rax
test rdi, rdi
je 0x1400037ed
mov rax, qword [rdi]
test rax, rax
je 0x1400037ed
mov r9, qword [rax + 8]
jmp 0x1400037f4
test rdi, rdi
je 0x1400036fa
mov r9, qword [rdi + 0x18]
lea r8, [0x1400bc5a4]
mov rdx, rsi
mov rcx, r14
call fcn.140018360
jmp 0x14000370c
lea r9, str.invalid_PK
lea r8, str._s_key_size
mov edx, reloc.WS2_32.dll_select
lea rcx, [rsp + 0x60]
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, 0x12
jae 0x140003360
test rdi, rdi
je 0x140003834
mov rax, qword [rdi]
test rax, rax
je 0x140003834
mov rcx, qword [rdi + 8]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x140003836
xor eax, eax
mov dword [rsp + 0x28], eax
lea r12, [0x1400a4182]
lea rax, [rsp + 0x60]
mov r9, r12
lea r8, str._n_s__18s:__d_bits
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, r14
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea rsi, [rax + r14]
test dword [r15 + 0x200], 0x100
mov rdi, rbx
mov r14, rsi
je 0x140003924
cmp dword [r15 + 0x204], 0
lea rcx, str.true
lea rax, str.false
mov r9, r12
cmovne rax, rcx
lea r8, str._n_sbasic_constraints_:_CA_s
mov rcx, rsi
mov qword [rsp + 0x20], rax
mov rdx, rbx
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov r9d, dword [r15 + 0x208]
sub rbx, rax
add rsi, rax
mov rdi, rbx
mov r14, rsi
test r9d, r9d
jle 0x140003924
dec r9d
lea r8, str.__max_pathlen_d
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
add rsi, rax
mov rdi, rbx
mov r14, rsi
test byte [r15 + 0x200], 0x20
je 0x14000398e
mov r9, r12
lea r8, str._n_ssubject_alt_name__:
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rdi
jae 0x140003360
sub rdi, rax
lea r8, [r15 + 0x1c0]
add rax, r14
mov qword [rsp + 0x58], rdi
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x50]
call fcn.140002b60
test eax, eax
jne 0x140003365
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
test dword [r15 + 0x200], 0x10000
je 0x1400039fc
mov r9, r12
lea r8, str._n_scert._type________:
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
movzx r8d, byte [r15 + 0x230]
lea rdx, [rsp + 0x58]
sub rbx, rax
lea rcx, [rsp + 0x50]
add rsi, rax
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rsi
call fcn.140002ec0
test eax, eax
jne 0x140003365
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
test byte [r15 + 0x200], 4
je 0x140003a66
mov r9, r12
lea r8, str._n_skey_usage_________:
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov r8d, dword [r15 + 0x20c]
lea rdx, [rsp + 0x58]
sub rbx, rax
lea rcx, [rsp + 0x50]
add rsi, rax
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rsi
call fcn.1400030d0
test eax, eax
jne 0x140003365
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
mov eax, dword [r15 + 0x200]
bt eax, 0xb
jae 0x140003b5a
mov r9, r12
lea r8, str._n_sext_key_usage_____:
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r14, [r15 + 0x210]
add rsi, rax
test r14, r14
je 0x140003b4c
lea r13, [0x1400a4c00]
nop dword [rax]
cmp qword [0x1400a4c00], 0
mov rdi, r13
mov rcx, r13
je 0x140003afe
mov rbp, qword [r14 + 8]
cmp qword [rcx + 8], rbp
jne 0x140003af1
mov rdx, qword [r14 + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call fcn.140080030
test eax, eax
je 0x140003c6d
add rdi, 0x20
mov rcx, rdi
cmp qword [rdi], 0
jne 0x140003ad4
lea rax, [0x1400a42c8]
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x1400a42cc]
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov r14, qword [r14 + 0x18]
lea r12, [0x1400a4198]
sub rbx, rax
add rsi, rax
test r14, r14
jne 0x140003ac0
mov eax, dword [r15 + 0x200]
lea r12, [0x1400a4182]
test al, 8
je 0x140003c3c
mov r9, r12
lea r8, str._n_scertificate_policies_:
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub rbx, rax
lea r14, [r15 + 0x1e0]
add rsi, rax
test r14, r14
je 0x140003c3c
lea r15, str.X__n_
nop word [rax + rax]
cmp qword [str.X__n_], 0
mov rdi, r15
mov rcx, r15
je 0x140003bee
mov rbp, qword [r14 + 8]
cmp qword [rcx + 8], rbp
jne 0x140003be1
mov rdx, qword [r14 + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call fcn.140080030
test eax, eax
je 0x140003c7f
add rdi, 0x20
mov rcx, rdi
cmp qword [rdi], 0
jne 0x140003bc4
lea rax, [0x1400a42c8]
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x1400a42cc]
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
mov r14, qword [r14 + 0x18]
lea r12, [0x1400a4198]
sub rbx, rax
add rsi, rax
test r14, r14
jne 0x140003bb0
lea r8, [0x1400a44c4]
mov rdx, rbx
mov rcx, rsi
call fcn.140018360
test eax, eax
js 0x140003360
cdqe
cmp rax, rbx
jae 0x140003360
sub eax, ebx
add eax, 0x3ff
jmp 0x140003365
test rdi, rdi
je 0x140003afe
mov rax, qword [rdi + 0x18]
jmp 0x140003b05
test rdi, rdi
je 0x140003bee
mov rax, qword [rdi + 0x18]
jmp 0x140003bf5