Function at 0x40bc70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0xc0
call fcn.004466f0
mov eax, dword [0x4613d0]
xor eax, esp
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0xd0]
push ebp
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0xf0]
push esi
mov esi, dword [esp + 0xe4]
xor ebp, ebp
push edi
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x110]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 0x84], eax
mov dword [esp + 0x3c], edi
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x10], ebp
mov dword [esp + 0x44], ebp
mov dword [esp + 0xc], ebp
mov dword [esp + 0x20], 0xffffffff
call sub.LIBEAY32.dll_Ordinal_2060
mov dword [esp + 0x78], eax
cmp eax, ebp
jne 0x40bd70
mov eax, dword [0x462574]
push str.malloc_error_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
pop edi
pop esi
xor eax, eax
pop ebp
mov ecx, dword [esp + 0xbc]
xor ecx, esp
call fcn.0044671b
add esp, 0xc0
ret
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
cmp esi, ebp
je 0x40bdd7
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0xec]
push ecx
push edx
push esi
call fcn.0042e120
mov esi, eax
add esp, 0xc
cmp esi, ebp
jne 0x40bdbe
mov eax, dword [0x462574]
push eax
call sub.LIBEAY32.dll_Ordinal_250
add esp, 4
jmp 0x40cb86
push esi
push edi
call sub.LIBEAY32.dll_Ordinal_606
mov ecx, dword [edi]
push esi
mov dword [ecx + 8], 1
call sub.LIBEAY32.dll_Ordinal_577
add esp, 0xc
cmp dword [esp + 0x120], ebp
je 0x40bdf4
mov edx, dword [0x462574]
push str.The_Subjects_Distinguished_Name_is_as_follows_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
mov eax, dword [edi]
mov esi, dword [eax + 0x10]
push ebx
push esi
mov dword [esp + 0x24], esi
xor ebx, ebx
call sub.LIBEAY32.dll_Ordinal_576
add esp, 4
test eax, eax
jle 0x40bf1c
mov ecx, dword [esp + 0x20]
push ebx
push ecx
call sub.LIBEAY32.dll_Ordinal_578
mov edi, eax
push edi
call sub.LIBEAY32.dll_Ordinal_566
push edi
mov esi, eax
call sub.LIBEAY32.dll_Ordinal_567
add esp, 0x10
cmp dword [0x4618cc], 0
mov ebp, eax
je 0x40be7a
mov edx, dword [edi]
push edx
call sub.LIBEAY32.dll_Ordinal_364
add esp, 4
cmp dword [esi + 4], 0x1c
mov edi, eax
jne 0x40be56
push esi
call sub.LIBEAY32.dll_Ordinal_23
add esp, 4
mov eax, 0x16
cmp dword [esi + 4], eax
jne 0x40be6c
cmp edi, 0x30
je 0x40be71
mov dword [esi + 4], 0x14
cmp edi, 0x30
jne 0x40be7a
cmp dword [esi + 4], 0x13
jne 0x40be7a
mov dword [esi + 4], eax
push ebp
call sub.LIBEAY32.dll_Ordinal_364
add esp, 4
cmp eax, 0x30
jne 0x40be92
cmp dword [esp + 0xf8], 0
je 0x40bf00
push ebp
call sub.LIBEAY32.dll_Ordinal_364
add esp, 4
cmp eax, 0x30
jne 0x40beaa
cmp dword [esi + 4], 0x16
jne 0x40bf3b
mov eax, dword [esi + 4]
cmp eax, 0x1e
je 0x40bee5
cmp eax, 0xc
je 0x40bee5
mov eax, dword [esi]
mov ecx, dword [esi + 8]
push eax
push ecx
call sub.LIBEAY32.dll_Ordinal_13
add esp, 8
cmp eax, 0x14
jne 0x40beda
cmp dword [esi + 4], eax
je 0x40bee5
push str._nThe_string_contains_characters_that_are_illegal_for_the_ASN.1_type_n
jmp 0x40cb76
cmp eax, 0x16
jne 0x40bee5
cmp dword [esi + 4], 0x13
je 0x40bed0
cmp dword [esp + 0x124], 0
je 0x40bf00
mov edx, dword [0x462574]
push esi
push ebp
push edx
call fcn.0040b900
add esp, 0xc
mov eax, dword [esp + 0x20]
push eax
inc ebx
call sub.LIBEAY32.dll_Ordinal_576
add esp, 4
cmp ebx, eax
jl 0x40be11
mov esi, dword [esp + 0x20]
xor ebp, ebp
call sub.LIBEAY32.dll_Ordinal_584
mov ebx, eax
mov dword [esp + 0x14], ebx
cmp ebx, ebp
jne 0x40bf4c
mov eax, dword [0x462574]
push str.Memory_allocation_failure_n
push eax
jmp 0x40cb7d
mov ecx, dword [0x462574]
push str._nemailAddress_type_needs_to_be_of_type_IA5STRING_n
push ecx
jmp 0x40cb7d
cmp dword [esp + 0x12c], ebp
je 0x40bf58
push esi
jmp 0x40bf62
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
push eax
call sub.LIBEAY32.dll_Ordinal_575
add esp, 4
mov dword [esp + 0x44], eax
cmp eax, ebp
je 0x40cb85
mov ecx, dword [esp + 0x4c]
push ecx
mov dword [esp + 0x78], ebp
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], ebp
call sub.LIBEAY32.dll_Ordinal_1654
add esp, 4
test eax, eax
jle 0x40c28d
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x4c]
push edx
push eax
call sub.LIBEAY32.dll_Ordinal_1653
mov edi, eax
mov ecx, dword [edi + 4]
push ecx
mov dword [esp + 0x24], edi
call sub.LIBEAY32.dll_Ordinal_366
add esp, 0xc
cmp eax, ebp
je 0x40c1cc
push eax
call sub.LIBEAY32.dll_Ordinal_362
add esp, 4
mov dword [esp + 0x70], eax
or ebp, 0xffffffff
mov edx, dword [esp + 0x70]
push ebp
push edx
push esi
call sub.LIBEAY32.dll_Ordinal_580
mov edi, eax
add esp, 0xc
test edi, edi
jge 0x40bff8
cmp ebp, 0xffffffff
jne 0x40c183
mov dword [esp + 0x1c], 0
jmp 0x40c006
push edi
push esi
call sub.LIBEAY32.dll_Ordinal_578
add esp, 8
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 8]
mov ebp, edi
mov dword [esp + 0x5c], ebp
mov ecx, str.optional
mov eax, esi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c040
test dl, dl
je 0x40c03c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c040
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c020
xor eax, eax
jmp 0x40c045
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c05c
cmp dword [esp + 0x1c], eax
je 0x40c177
mov esi, dword [esp + 0x1c]
jmp 0x40c155
mov ecx, str.supplied
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c083
test dl, dl
je 0x40c07f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c083
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c063
xor eax, eax
jmp 0x40c088
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c0b8
mov esi, dword [esp + 0x1c]
test esi, esi
jne 0x40c155
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 4]
mov eax, dword [0x462574]
push edx
push str.The__s_field_needed_to_be_supplied_and_was_missing_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
mov ecx, str.match
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c0e0
test dl, dl
je 0x40c0dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c0e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c0c0
xor eax, eax
jmp 0x40c0e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c26c
cmp dword [esp + 0x1c], eax
je 0x40c1e8
mov ebx, dword [esp + 0x44]
or ebp, 0xffffffff
mov edi, edi
mov ecx, dword [esp + 0x70]
push ebp
push ecx
push ebx
call sub.LIBEAY32.dll_Ordinal_580
mov edi, eax
add esp, 0xc
test edi, edi
jl 0x40c1a8
push edi
push ebx
call sub.LIBEAY32.dll_Ordinal_578
mov edx, dword [esp + 0x24]
push edx
mov esi, eax
call sub.LIBEAY32.dll_Ordinal_566
push esi
mov dword [esp + 0x64], eax
call sub.LIBEAY32.dll_Ordinal_566
push eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x68]
push eax
mov ebp, edi
call sub.LIBEAY32.dll_Ordinal_14
add esp, 0x18
test eax, eax
jne 0x40c100
test edi, edi
jl 0x40c1ad
mov ebx, dword [esp + 0x14]
test esi, esi
je 0x40c173
push 0
push 0xffffffffffffffff
push esi
push ebx
call sub.LIBEAY32.dll_Ordinal_571
add esp, 0x10
test eax, eax
je 0x40c24d
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x20]
test edi, edi
jge 0x40bfd0
mov edi, dword [esp + 0x58]
mov ecx, dword [esp + 0x4c]
inc edi
push ecx
mov dword [esp + 0x5c], edi
call sub.LIBEAY32.dll_Ordinal_1654
add esp, 4
cmp edi, eax
jge 0x40c28d
xor ebp, ebp
jmp 0x40bf97
cmp ebp, 0xffffffff
je 0x40c208
mov eax, dword [esp + 0x54]
mov ecx, str.NULL
test eax, eax
je 0x40c1bd
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x40c228
mov eax, str.NULL
jmp 0x40c22b
mov edx, dword [edi + 4]
mov eax, dword [0x462574]
push edx
push str._s:unknown_object_type_in_policy_configuration_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 4]
mov eax, dword [0x462574]
push edx
push str.The_mandatory__s_field_was_missing_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 4]
mov eax, dword [0x462574]
push edx
push str.The__s_field_does_not_exist_in_the_CA_certificate__nthe_policy_is_misconfigured_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
mov eax, dword [eax + 8]
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 4]
push eax
mov eax, dword [0x462574]
push edx
push str.The__s_field_needed_to_be_the_same_in_the_nCA_certificate___s__and_the_request___s__n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0x14
jmp 0x40cb85
push esi
call sub.LIBEAY32.dll_Ordinal_565
mov ecx, dword [0x462574]
push str.Memory_allocation_failure_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 8]
mov ecx, dword [0x462574]
push eax
push str._s:invalid_type_in_policy_configuration_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40cb85
cmp dword [0x4618c8], 0
je 0x40c2b3
push ebx
call sub.LIBEAY32.dll_Ordinal_577
push esi
call sub.LIBEAY32.dll_Ordinal_575
mov ebx, eax
add esp, 8
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x40cb85
cmp dword [esp + 0x10c], 0
je 0x40c2d1
mov edx, dword [0x462574]
push str.The_subject_name_appears_to_be_ok__checking_data_base_for_clashes_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
cmp dword [esp + 0xf8], 0
je 0x40c2e1
mov dword [esp + 0x48], ebx
jmp 0x40c340
push ebx
call sub.LIBEAY32.dll_Ordinal_575
mov ebp, eax
add esp, 4
mov dword [esp + 0x48], ebp
test ebp, ebp
jne 0x40c304
mov eax, dword [0x462574]
push str.Memory_allocation_failure_n
push eax
jmp 0x40cb7d
push 0xffffffffffffffff
push 0x30
push ebp
call sub.LIBEAY32.dll_Ordinal_579
mov esi, eax
add esp, 0xc
test esi, esi
jl 0x40c340
push esi
push ebp
call sub.LIBEAY32.dll_Ordinal_578
push esi
push ebp
mov edi, eax
call sub.LIBEAY32.dll_Ordinal_573
push edi
call sub.LIBEAY32.dll_Ordinal_565
push 0xffffffffffffffff
push 0x30
push ebp
call sub.LIBEAY32.dll_Ordinal_579
mov esi, eax
add esp, 0x20
test esi, esi
jge 0x40c317
mov eax, dword [esp + 0x68]
cmp dword [eax + 4], 0
jne 0x40c356
push 0x44c5e8
call sub.LIBEAY32.dll_Ordinal_170
jmp 0x40c35c
push eax
call sub.LIBEAY32.dll_Ordinal_119_1
add esp, 4
mov dword [esp + 0x34], eax
test eax, eax
jne 0x40c378
mov ecx, dword [0x462574]
push str.Memory_allocation_failure_n
push ecx
jmp 0x40cb7d
mov edi, dword [esp + 0x6c]
cmp dword [edi], 0
je 0x40c3b5
mov eax, dword [edi + 4]
lea edx, [esp + 0x28]
push edx
push 5
push eax
call sub.LIBEAY32.dll_Ordinal_513
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40c3b5
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x462574]
push ecx
push str.ERROR:There_is_already_a_certificate_for__s_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
jmp 0x40c3fb
mov ecx, dword [edi + 4]
lea eax, [esp + 0x28]
push eax
push 3
push ecx
call sub.LIBEAY32.dll_Ordinal_513
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40c503
mov edx, dword [esp + 0x34]
mov eax, dword [0x462574]
push edx
push str.ERROR:Serial_number__s_has_already_been_issued__n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
mov ecx, dword [0x462574]
push str.______check_the_database_serial_file_for_corruption_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0x14
mov edx, dword [0x462574]
push str.The_matching_entry_has_the_following_details_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [esi]
mov al, byte [eax]
add esp, 8
cmp al, 0x45
jne 0x40c41e
mov eax, str.Expired
jmp 0x40c437
cmp al, 0x52
jne 0x40c429
mov eax, str.Revoked
jmp 0x40c437
cmp al, 0x56
mov eax, str.Valid
je 0x40c437
mov eax, str._ninvalid_type__Data_base_error_n
mov ecx, dword [0x462574]
push eax
push str.Type_t__:_s_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
mov edx, dword [esi]
add esp, 0xc
cmp byte [edx], 0x52
jne 0x40c473
mov eax, dword [esi + 4]
test eax, eax
jne 0x40c45f
mov eax, str.undef
push eax
mov eax, dword [0x462574]
push str.Was_revoked_on:_s_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
mov eax, dword [esi + 4]
test eax, eax
jne 0x40c47f
mov eax, str.undef
mov ecx, dword [0x462574]
push eax
push str.Expires_on____:_s_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [esi + 0xc]
add esp, 0xc
test eax, eax
jne 0x40c4a0
mov eax, str.undef
mov edx, dword [0x462574]
push eax
push str.Serial_Number_:_s_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [esi + 0x10]
add esp, 0xc
test eax, eax
jne 0x40c4c1
mov eax, str.undef
push eax
mov eax, dword [0x462574]
push str.File_name_____:_s_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
mov esi, dword [esi + 0x14]
add esp, 0xc
test esi, esi
jne 0x40c4e1
mov esi, str.undef
mov ecx, dword [0x462574]
push esi
push str.Subject_Name__:_s_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
mov dword [esp + 0x24], 0xffffffff
jmp 0x40cb85
cmp dword [esp + 0x10c], 0
je 0x40c521
mov edx, dword [0x462574]
push str.Everything_appears_to_be_ok__creating_and_signing_the_certificate_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
call sub.LIBEAY32.dll_Ordinal_664
mov dword [esp + 0x10], eax
test eax, eax
je 0x40cb85
mov ebp, dword [eax]
mov ecx, dword [ebp + 4]
mov edx, dword [esp + 0x68]
push ecx
push edx
call sub.LIBEAY32.dll_Ordinal_164_1
add esp, 8
test eax, eax
je 0x40cb85
cmp dword [esp + 0x12c], 0
je 0x40c56b
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call sub.LIBEAY32.dll_Ordinal_667
add esp, 8
jmp 0x40c583
mov edx, dword [esp + 0x50]
push edx
call sub.LIBEAY32.dll_Ordinal_657
push eax
mov eax, dword [esp + 0x18]
push eax
call sub.LIBEAY32.dll_Ordinal_667
add esp, 0xc
test eax, eax
je 0x40cb85
mov esi, dword [esp + 0x8c]
mov ecx, str.today
mov eax, esi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c5c0
test dl, dl
je 0x40c5bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c5c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40c5a0
xor eax, eax
jmp 0x40c5c5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40c5dd
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x10]
push eax
mov eax, dword [edx]
push eax
call sub.LIBEAY32.dll_Ordinal_658
jmp 0x40c5ef
push esi
mov esi, dword [esp + 0x14]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x10]
mov eax, dword [edx]
push eax
call sub.LIBEAY32.dll_Ordinal_4536
mov eax, dword [esp + 0x90]
mov edx, dword [esi]
add esp, 8
test eax, eax
jne 0x40c61a
mov ecx, dword [esp + 0x104]
push eax
push eax
mov eax, dword [edx + 0x10]
push ecx
mov ecx, dword [eax + 4]
push ecx
call sub.LIBEAY32.dll_Ordinal_4454
add esp, 0x10
jmp 0x40c62a
push eax
mov eax, dword [edx + 0x10]
mov ecx, dword [eax + 4]
push ecx
call sub.LIBEAY32.dll_Ordinal_4536
add esp, 8
mov edx, dword [esp + 0x14]
push edx
push esi
call sub.LIBEAY32.dll_Ordinal_672
add esp, 8
test eax, eax
je 0x40cb85
mov eax, dword [esp + 0x40]
push eax
call sub.LIBEAY32.dll_Ordinal_601
mov ecx, dword [esp + 0x14]
mov esi, eax
push esi
push ecx
call sub.LIBEAY32.dll_Ordinal_670
push esi
mov edi, eax
call sub.LIBEAY32.dll_Ordinal_281_1
add esp, 0x10
test edi, edi
je 0x40cb85
mov ebx, dword [esp + 0x60]
test ebx, ebx
je 0x40c7f8
cmp dword [ebp], 0
jne 0x40c68c
call sub.LIBEAY32.dll_Ordinal_2131
mov dword [ebp], eax
test eax, eax
je 0x40cb85
mov edx, dword [ebp]
push 2
push edx
call sub.LIBEAY32.dll_Ordinal_8_1
mov eax, dword [ebp + 0x24]
add esp, 8
test eax, eax
je 0x40c6af
push sub.LIBEAY32.dll_Ordinal_541
push eax
call sub.LIBEAY32.dll_Ordinal_909
add esp, 8
cmp dword [esp + 0x12c], 0
mov edi, dword [esp + 0x10]
push 0
mov dword [ebp + 0x24], 0
lea ecx, [esp + 0x98]
push 0
je 0x40c6d8
mov eax, dword [esp + 0x48]
push eax
push edi
push edi
jmp 0x40c6e3
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x58]
push edx
push edi
push eax
push ecx
call sub.LIBEAY32.dll_Ordinal_1508
add esp, 0x18
cmp dword [0x4618c0], 0
je 0x40c78a
mov esi, dword [esp + 0x10c]
test esi, esi
je 0x40c718
mov edx, dword [0x462574]
push str.Extra_configuration_file_found_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
mov eax, dword [0x4618c0]
push eax
lea ecx, [esp + 0x98]
push ecx
call sub.LIBEAY32.dll_Ordinal_2695
mov eax, dword [0x4618c0]
push edi
push ebx
lea edx, [esp + 0xa4]
push edx
push eax
call sub.LIBEAY32.dll_Ordinal_2832
add esp, 0x18
test eax, eax
jne 0x40c76d
mov ecx, dword [0x462574]
push ebx
push str.ERROR:_adding_extensions_in_section__s_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
mov edx, dword [0x462574]
push edx
call sub.LIBEAY32.dll_Ordinal_250
add esp, 0x10
jmp 0x40cb85
test esi, esi
je 0x40c7fc
mov eax, dword [0x462574]
push str.Successfully_added_extensions_from_file._n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
jmp 0x40c7fc
mov esi, dword [esp + 0x78]
lea ecx, [esp + 0x94]
push esi
push ecx
call sub.LIBEAY32.dll_Ordinal_2695
push edi
push ebx
lea edx, [esp + 0xa4]
push edx
push esi
call sub.LIBEAY32.dll_Ordinal_2832
add esp, 0x18
test eax, eax
jne 0x40c7d8
mov eax, dword [0x462574]
push ebx
push str.ERROR:_adding_extensions_in_section__s_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
mov ecx, dword [0x462574]
push ecx
call sub.LIBEAY32.dll_Ordinal_250
add esp, 0x10
jmp 0x40cb85
cmp dword [esp + 0x10c], 0
je 0x40c7fc
mov edx, dword [0x462574]
push str.Successfully_added_extensions_from_config_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
jmp 0x40c7fc
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x40]
push eax
push ecx
push edi
call fcn.0042d530
add esp, 0xc
test eax, eax
jne 0x40c83a
mov edx, dword [0x462574]
push str.ERROR:_adding_extensions_from_request_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [0x462574]
push eax
call sub.LIBEAY32.dll_Ordinal_250
add esp, 0xc
jmp 0x40cb85
cmp dword [esp + 0xf8], 0
jne 0x40c85e
mov ecx, dword [esp + 0x48]
push ecx
push edi
call sub.LIBEAY32.dll_Ordinal_672
add esp, 8
test eax, eax
je 0x40cb85
mov edi, dword [esp + 0x10]
xor esi, esi
cmp dword [esp + 0x124], esi
jne 0x40c89f
mov edx, dword [0x462574]
push str.Certificate_Details:_n
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [esp + 0x124]
mov ecx, dword [0x462574]
or eax, 0x208
push eax
mov eax, dword [esp + 0x12c]
push eax
push edi
push ecx
call sub.LIBEAY32.dll_Ordinal_2544
add esp, 0x18
mov edx, dword [0x462574]
push str.Certificate_is_to_be_certified_until
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
mov eax, dword [edi]
mov ecx, dword [eax + 0x10]
mov edx, dword [ecx + 4]
mov eax, dword [0x462574]
push edx
push eax
call sub.LIBEAY32.dll_Ordinal_1161
mov eax, dword [esp + 0x114]
add esp, 0x10
cmp eax, esi
je 0x40c8e7
mov ecx, dword [0x462574]
push eax
push str.___ld_days_
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0xc
mov edx, dword [0x462574]
push 0x448294
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
cmp dword [esp + 0x108], esi
jne 0x40c990
mov eax, dword [0x462574]
push str.Sign_the_certificate___y_n_:
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
mov ecx, dword [0x462574]
push esi
push esi
push 0xb
push ecx
call sub.LIBEAY32.dll_Ordinal_52_1
mov byte [esp + 0xc8], 0
call dword [sym.imp.MSVCR90.dll___iob_func]
push eax
lea edx, [esp + 0xcc]
push 0x18
push edx
call dword [sym.imp.MSVCR90.dll_fgets]
add esp, 0x24
test eax, eax
jne 0x40c967
mov eax, dword [0x462574]
push str.CERTIFICATE_WILL_NOT_BE_CERTIFIED:_I_O_error_n
push eax
call sub.LIBEAY32.dll_Ordinal_86_1
mov dword [esp + 0x2c], esi
jmp 0x40cb82
mov al, byte [esp + 0xb0]
cmp al, 0x79
je 0x40c990
cmp al, 0x59
je 0x40c990
mov ecx, dword [0x462574]
push str.CERTIFICATE_WILL_NOT_BE_CERTIFIED_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
mov dword [esp + 0x2c], esi
jmp 0x40cb82
push edi
call sub.LIBEAY32.dll_Ordinal_654
mov esi, eax
push esi
call sub.LIBEAY32.dll_Ordinal_282
mov ebx, dword [esp + 0x6c]
add esp, 8
test eax, eax
je 0x40c9c0
push ebx
call sub.LIBEAY32.dll_Ordinal_282
add esp, 4
test eax, eax
jne 0x40c9c0
push ebx
push esi
call sub.LIBEAY32.dll_Ordinal_280
add esp, 8
push esi
call sub.LIBEAY32.dll_Ordinal_281_1
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x94]
mov ecx, dword [0x462574]
push edx
push eax
push ebx
push edi
push ecx
call fcn.00402cd0
add esp, 0x18
test eax, eax
je 0x40cb85
push 0x881
push str.._appsca.c
push 2
call sub.LIBEAY32.dll_Ordinal_188
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
mov edx, dword [edi]
mov eax, dword [edx + 0x10]
mov esi, dword [eax + 4]
mov ecx, dword [esi]
push 0x884
inc ecx
push str.._appsca.c
push ecx
call sub.LIBEAY32.dll_Ordinal_188
mov dword [esp + 0x44], eax
mov edx, dword [esi]
mov ecx, dword [esi + 8]
push edx
push ecx
push eax
call sub.MSVCR90.dll_memcpy
mov edx, dword [esi]
mov eax, dword [esp + 0x50]
push 0x88b
push str.._appsca.c
mov byte [eax + edx], 0
xor esi, esi
push 8
mov dword [esp + 0x60], esi
call sub.LIBEAY32.dll_Ordinal_188
add esp, 0x30
push esi
push esi
push edi
mov dword [esp + 0x44], eax
call sub.LIBEAY32.dll_Ordinal_657
add esp, 4
push eax
call sub.LIBEAY32.dll_Ordinal_585
add esp, 0xc
mov dword [esp + 0x3c], eax
cmp dword [esp + 0x28], esi
je 0x40cb71
cmp dword [esp + 0x2c], esi
je 0x40cb71
mov ecx, dword [esp + 0x38]
cmp ecx, esi
je 0x40cb71
cmp eax, esi
je 0x40cb71
push 8
push str.unknown
push ecx
call sub.LIBEAY32.dll_Ordinal_3243
mov ecx, dword [esp + 0x34]
push 0x898
mov byte [ecx], 0x56
mov edx, dword [esp + 0x38]
push str.._appsca.c
push 0x1c
mov byte [edx + 1], 0
call sub.LIBEAY32.dll_Ordinal_188
add esp, 0x18
cmp eax, esi
jne 0x40cae0
mov eax, dword [0x462574]
push str.Memory_allocation_failure_n
push eax
jmp 0x40cb7d
mov ecx, dword [esp + 0x28]
mov dword [eax], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x28], esi
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x2c], esi
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x30], esi
mov dword [eax + 0xc], edx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x34], esi
mov dword [eax + 0x10], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x38], esi
mov dword [eax + 0x14], edx
mov dword [esp + 0x3c], esi
mov dword [eax + 0x18], esi
mov esi, dword [esp + 0x6c]
push eax
mov eax, dword [esi + 4]
push eax
call sub.LIBEAY32.dll_Ordinal_514
add esp, 8
test eax, eax
jne 0x40cb67
mov ecx, dword [0x462574]
push str.failed_to_update_database_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
mov edx, dword [esi + 4]
mov eax, dword [edx + 0x10]
mov ecx, dword [0x462574]
push eax
push str.TXT_DB_error_number__ld_n
push ecx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 0x14
jmp 0x40cb85
mov dword [esp + 0x24], 1
jmp 0x40cb85
push str.Memory_allocation_failure_n
mov edx, dword [0x462574]
push edx
call sub.LIBEAY32.dll_Ordinal_86_1
add esp, 8
pop ebx
xor esi, esi
mov eax, dword [esp + esi*4 + 0x24]
test eax, eax
je 0x40cb99
push eax
call sub.LIBEAY32.dll_Ordinal_181
add esp, 4
inc esi
cmp esi, 6
jl 0x40cb88
mov eax, dword [esp + 0x40]
test eax, eax
je 0x40cbb0
push eax
call sub.LIBEAY32.dll_Ordinal_577
add esp, 4
mov eax, dword [esp + 0x10]
test eax, eax
je 0x40cbc1
push eax
call sub.LIBEAY32.dll_Ordinal_577
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
je 0x40cbdc
cmp dword [esp + 0xf4], 0
jne 0x40cbdc
push eax
call sub.LIBEAY32.dll_Ordinal_577
add esp, 4
mov eax, dword [esp + 0x78]
push eax
call sub.LIBEAY32.dll_Ordinal_1988
mov esi, dword [esp + 0x24]
add esp, 4
test esi, esi
jg 0x40cc04
mov eax, dword [esp + 0xc]
test eax, eax
je 0x40cc0e
push eax
call sub.LIBEAY32.dll_Ordinal_641
add esp, 4
jmp 0x40cc0e
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x7c]
mov dword [edx], ecx
mov ecx, dword [esp + 0xc8]
pop edi
mov eax, esi
pop esi
pop ebp
xor ecx, esp
call fcn.0044671b
add esp, 0xc0
ret