Function at 0x6b419f30
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ecx, str.application_x_pkcs7_
mov edx, str.application_pkcs7_
push edi
push esi
push ebx
sub esp, 0x8c
mov esi, dword [esp + 0xb8]
mov eax, dword [esp + 0xa4]
mov edi, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0xbc]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x24], esi
mov esi, dword [sym.imp.libssp_0.dll___stack_chk_guard]
mov dword [esp + 0x7c], esi
xor esi, esi
mov esi, 0x6b5cabba
mov dword [esp + 0x30], edi
test dword [esp + 0xac], 0x400
cmovne edx, ecx
test dword [esp + 0xac], 0x800
mov dword [esp + 0x2c], edx
mov edx, 0x6b5cacd7
cmove esi, edx
test byte [esp + 0xac], 0x40
je 0x6b419fc6
test edi, edi
jne 0x6b41a0d0
cmp eax, 0x17
je 0x6b41a480
cmp eax, 0x16
je 0x6b41a558
cmp eax, 0x312
je 0x6b41a660
mov dword [esp + 8], esi
mov edi, str.smime.p7m
mov dword [esp + 4], str.MIME_Version:_1.0_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 4], str.Content_Disposition:_attachment_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.smime.p7m
mov dword [esp + 4], str._filename__s__s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], str.Content_Type:__smime_
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
mov dword [esp + 4], str._name__s__s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
mov dword [esp + 4], str.Content_Transfer_Encoding:_base64_s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, ebx
call sym._B64_write_ASN1
test eax, eax
je 0x6b41a500
mov dword [esp + 8], esi
mov dword [esp + 4], 0x6b5caeee
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, 1
mov ebx, dword [esp + 0x7c]
xor ebx, dword [sym.imp.libssp_0.dll___stack_chk_guard]
jne 0x6b41a6dc
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [esp + 0x5b]
mov dword [esp + 4], 0x20
lea ebp, [esp + 0x7b]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_RAND_bytes
lea edx, [esp + 0x5b]
test eax, eax
jle 0x6b41a500
lea esi, [esi]
movzx eax, byte [edx]
and eax, 0xf
cmp al, 9
lea edi, [eax + 0x30]
lea ecx, [eax + 0x37]
cmovle ecx, edi
add edx, 1
mov byte [edx - 1], cl
cmp ebp, edx
jne 0x6b41a0f8
mov dword [esp + 8], esi
xor ebp, ebp
xor edi, edi
mov dword [esp + 4], str.MIME_Version:_1.0_s
mov dword [esp], ebx
mov byte [esp + 0x7b], 0
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 4], str.Content_Type:_multipart_signed_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], str._protocol__ssignature__
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 4], str._micalg_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
mov dword [esp + 0x38], esi
mov esi, ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x3c], 0
jmp 0x6b41a1b3
cmp esi, 0x40
je 0x6b41a640
cmp esi, 0x2a0
jne 0x6b41a510
mov dword [esp + 4], str.sha_256
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
lea esi, [esi]
add edi, 1
mov dword [esp], ebp
call sym.libcrypto_1_1.dll_OPENSSL_sk_num
cmp edi, eax
jge 0x6b41a6a0
test esi, esi
jne 0x6b41a538
mov dword [esp + 4], edi
mov dword [esp], ebp
call sym.libcrypto_1_1.dll_OPENSSL_sk_value
mov eax, dword [eax]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_OBJ_obj2nid
mov dword [esp], eax
mov esi, eax
call sym.libcrypto_1_1.dll_OBJ_nid2sn
mov dword [esp], eax
call sym.libcrypto_1_1.dll_EVP_get_digestbyname
test eax, eax
je 0x6b41a230
mov eax, dword [eax + 0x2c]
test eax, eax
je 0x6b41a230
lea ecx, [esp + 0x4c]
mov dword [esp + 8], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 4], 2
mov dword [esp], 0
call eax
test eax, eax
jg 0x6b41a590
cmp eax, 0xfffffffe
jne 0x6b41a6a0
cmp esi, 0x2a1
je 0x6b41a620
jle 0x6b41a180
cmp esi, 0x2a2
je 0x6b41a600
cmp esi, 0x329
jne 0x6b41a5d0
mov dword [esp + 4], str.gostr3411_94
mov esi, dword [esp + 0x38]
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
lea eax, [esp + 0x5b]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.___boundary______s__s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
mov dword [esp + 4], str.This_is_an_S_MIME_signed_message_s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
lea eax, [esp + 0x5b]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str._______s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x28]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xac]
and eax, 0x8040
cmp eax, 0x40
jne 0x6b41a680
mov eax, dword [esp + 0x24]
mov edi, dword [eax + 0x10]
test edi, edi
je 0x6b41a6a9
mov eax, dword [edi + 0x10]
test eax, eax
je 0x6b41a6a9
mov ecx, dword [esp + 0x24]
lea ebp, [esp + 0x4c]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0
mov dword [esp + 8], ecx
lea ecx, [esp + 0x48]
mov dword [esp + 0x54], 0
mov dword [esp + 0xc], ebp
mov dword [esp + 4], ecx
mov dword [esp], 0xc
call eax
test eax, eax
jle 0x6b41a500
mov eax, dword [esp + 0xac]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_SMIME_crlf_copy
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], ebp
mov dword [esp], 0xd
mov dword [esp + 8], eax
lea eax, [esp + 0x48]
mov dword [esp + 4], eax
call dword [edi + 0x10]
mov ebp, dword [esp + 0x50]
mov edi, eax
cmp ebx, ebp
je 0x6b41a39e
lea esi, [esi]
mov dword [esp], ebp
call sym.libcrypto_1_1.dll_BIO_pop
mov ebp, eax
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_BIO_free
mov dword [esp + 0x50], ebp
cmp ebx, ebp
jne 0x6b41a380
test edi, edi
jle 0x6b41a500
lea eax, [esp + 0x5b]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], str._s_______s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], str.Content_Type:__ssignature_
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 8], esi
mov dword [esp + 4], str._name_smime.p7s__s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 8], esi
mov dword [esp + 4], str.Content_Transfer_Encoding:_base64_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 4], str.Content_Disposition:_attachment_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
mov dword [esp + 4], str._filename_smime.p7s__s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
xor ecx, ecx
mov dword [esp], 0
mov dword [esp + 4], eax
mov eax, ebx
call sym._B64_write_ASN1
lea eax, [esp + 0x5b]
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], str._s_______s___s_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, 1
jmp 0x6b41a0b2
mov ebp, str.enveloped_data
mov edi, str.smime.p7m
mov dword [esp + 8], esi
mov dword [esp + 4], str.MIME_Version:_1.0_s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 4], str.Content_Disposition:_attachment_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
mov dword [esp + 4], str._filename__s__s
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], str.Content_Type:__smime_
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym.libcrypto_1_1.dll_BIO_printf
mov dword [esp + 8], ebp
mov dword [esp + 4], str._smime_type_s_
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_printf
jmp 0x6b41a040
xor eax, eax
jmp 0x6b41a0b2
cmp esi, 4
jne 0x6b41a5d0
mov dword [esp + 4], 0x6b5cad92
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
jmp 0x6b41a1b0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x6b5cad8b
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_write
jmp 0x6b41a1cb
cmp dword [esp + 0xb4], 0xcc
je 0x6b41a670
mov eax, dword [esp + 0x34]
mov ebp, str.signed_data
mov edi, str.smime.p7m
mov dword [esp], eax
call sym.libcrypto_1_1.dll_OPENSSL_sk_num
test eax, eax
mov eax, str.certs_only
cmovs ebp, eax
jmp 0x6b41a48a
mov eax, dword [esp + 0x4c]
mov dword [esp], ebx
mov esi, 1
mov dword [esp + 4], eax
call sym.libcrypto_1_1.dll_BIO_puts
mov eax, dword [esp + 0x4c]
mov dword [esp + 8], 0xaa
mov dword [esp + 4], str.crypto_asn1_asn_mime.c
mov dword [esp], eax
call sym.libcrypto_1_1.dll_CRYPTO_free
jmp 0x6b41a1b0
mov eax, dword [esp + 0x3c]
xor esi, esi
test eax, eax
jne 0x6b41a1b0
mov dword [esp + 4], 0x6b5cadbb
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
mov dword [esp + 0x3c], 1
jmp 0x6b41a1b0
mov dword [esp + 4], str.sha_512
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
jmp 0x6b41a1b0
mov dword [esp + 4], str.sha_384
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
jmp 0x6b41a1b0
mov dword [esp + 4], 0x6b5cad8d
mov esi, 1
mov dword [esp], ebx
call sym.libcrypto_1_1.dll_BIO_puts
jmp 0x6b41a1b0
mov ebp, str.compressed_data
mov edi, str.smime.p7z
jmp 0x6b41a48a
mov ebp, str.signed_receipt
mov edi, str.smime.p7m
jmp 0x6b41a48a
mov eax, dword [esp + 0xac]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_SMIME_crlf_copy
jmp 0x6b41a3a6
mov esi, dword [esp + 0x38]
jmp 0x6b41a26e
mov dword [esp + 0x10], 0x14c
mov dword [esp + 0xc], str.crypto_asn1_asn_mime.c
mov dword [esp + 8], 0xca
mov dword [esp + 4], 0xd6
mov dword [esp], 0xd
call sym.libcrypto_1_1.dll_ERR_put_error
xor eax, eax
jmp 0x6b41a0b2
call sym.___stack_chk_fail
lea esi, [esi]
lea esi, [esi]
nop