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

Disassembly:
mov eax, 0x48
call fcn.101fe2f0
mov eax, dword [0x102c5980]
xor eax, esp
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 4], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
push ebx
push ebp
push esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x34], esi
push edi
test ecx, ecx
jne 0x1022af83
call fcn.10056b00
mov ebp, eax
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x1022af89
call fcn.10050630
push str.PEM_X509_INFO_read_bio_ex
push 0x46
push str.cryptopempem_info.c
call fcn.10050730
push ebp
push 0x8000f
push 9
call fcn.10050840
add esp, 0x18
mov edi, ebp
xor ebx, ebx
jmp 0x1022b419
mov ebp, ecx
mov dword [esp + 0x10], ecx
call fcn.1022aeb0
mov ebx, eax
test ebx, ebx
je 0x1022b415
call fcn.10051c30
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x20]
push eax
push esi
call fcn.100e5a40
add esp, 0x14
test eax, eax
je 0x1022b3a9
call fcn.10051a70
nop word [eax + eax]
mov esi, dword [esp + 0x14]
mov ecx, str.CERTIFICATE
mov eax, esi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1022b000
test dl, dl
je 0x1022affc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1022b000
add eax, 2
add ecx, 2
test dl, dl
jne 0x1022afe0
xor eax, eax
jmp 0x1022b005
sbb eax, eax
or eax, 1
test eax, eax
je 0x1022b130
mov ecx, str.X509_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1022b034
test dl, dl
je 0x1022b030
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1022b034
add eax, 2
add ecx, 2
test dl, dl
jne 0x1022b014
xor eax, eax
jmp 0x1022b039
sbb eax, eax
or eax, 1
test eax, eax
je 0x1022b130
mov ecx, str.TRUSTED_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1022b068
test dl, dl
je 0x1022b064
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1022b068
add eax, 2
add ecx, 2
test dl, dl
jne 0x1022b048
xor eax, eax
jmp 0x1022b06d
sbb eax, eax
or eax, 1
test eax, eax
je 0x1022b130
mov eax, str.X509_CRL
mov ecx, esi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x1022b0a0
test dl, dl
je 0x1022b09c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x1022b0a0
add ecx, 2
add eax, 2
test dl, dl
jne 0x1022b080
xor eax, eax
jmp 0x1022b0a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1022b0e3
lea edi, [ebx + 4]
mov ebp, fcn.100ef970
cmp dword [edi], eax
je 0x1022b232
mov ebp, dword [esp + 0x10]
push ebx
push ebp
call fcn.10056c30
add esp, 8
test eax, eax
je 0x1022b415
call fcn.1022aeb0
mov ebx, eax
test ebx, ebx
jne 0x1022afd0
jmp 0x1022b415
push str.PRIVATE_KEY
push esi
call fcn.101ff590
mov esi, eax
add esp, 8
test esi, esi
je 0x1022b325
cmp dword [ebx + 8], 0
jne 0x1022b0bd
mov eax, dword [esp + 0x14]
cmp esi, eax
je 0x1022b188
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1022b16b
test dl, dl
je 0x1022b12c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1022b16b
add eax, 2
add ecx, 2
test dl, dl
jne 0x1022b110
xor eax, eax
jmp 0x1022b170
cmp dword [ebx], 0
jne 0x1022b0bd
mov eax, str.TRUSTED_CERTIFICATE
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x1022b202
test cl, cl
je 0x1022b164
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x1022b202
add esi, 2
add eax, 2
test cl, cl
jne 0x1022b140
xor esi, esi
jmp 0x1022b207
sbb eax, eax
or eax, 1
test eax, eax
je 0x1022b188
mov byte [esi - 1], 0
push dword [esp + 0x14]
call fcn.1009b030
add esp, 4
mov esi, eax
jmp 0x1022b18a
xor esi, esi
mov dword [ebx + 0x24], 0
mov ebp, 0x100e70e0
mov dword [ebx + 0x20], 0
call fcn.1022c250
mov dword [ebx + 8], eax
test eax, eax
je 0x1022b415
mov ecx, dword [esp + 0x1c]
lea edi, [eax + 0xc]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1022b1b7
sub ecx, edx
cmp ecx, 0xa
jg 0x1022b1fb
mov eax, dword [esp + 0x14]
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1022b1f0
test dl, dl
je 0x1022b1ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1022b1f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1022b1d0
xor eax, eax
jmp 0x1022b1f5
sbb eax, eax
or eax, 1
xor ecx, ecx
test eax, eax
jne 0x1022b236
mov ecx, 1
jmp 0x1022b236
sbb esi, esi
or esi, 1
push dword [esp + 0x24]
push dword [esp + 0x2c]
call fcn.100eef10
add esp, 8
mov dword [ebx], eax
test eax, eax
je 0x1022b415
test esi, esi
mov ebp, fcn.100eefd0
mov eax, fcn.100eefa0
mov edi, ebx
cmovne ebp, eax
xor ecx, ecx
xor esi, esi
test ecx, ecx
jne 0x1022b2f7
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x20]
call fcn.100e5700
add esp, 8
test eax, eax
je 0x1022b415
push dword [esp + 0x30]
lea eax, [esp + 0x24]
push dword [esp + 0x38]
push eax
push dword [esp + 0x24]
lea eax, [esp + 0x50]
push eax
call fcn.100e5480
add esp, 0x14
test eax, eax
je 0x1022b415
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
test esi, esi
je 0x1022b2d7
push dword [esp + 0x24]
push dword [esp + 0x2c]
push dword [esp + 0x28]
push eax
push edi
push esi
call fcn.100e7540
add esp, 0x18
test eax, eax
jne 0x1022b325
call fcn.10050630
push str.PEM_X509_INFO_read_bio_ex
push 0xa5
push str.cryptopempem_info.c
call fcn.10050730
push 0
push 0x8000d
push 9
call fcn.10050840
add esp, 0x18
jmp 0x1022b415
push dword [esp + 0x20]
push eax
push edi
call ebp
add esp, 0xc
test eax, eax
jne 0x1022b325
call fcn.10050630
push str.PEM_X509_INFO_read_bio_ex
push 0xa9
jmp 0x1022b2b7
lea eax, [ebx + 0xc]
push eax
push dword [esp + 0x20]
call fcn.100e5700
add esp, 8
test eax, eax
je 0x1022b415
mov eax, dword [esp + 0x18]
mov dword [ebx + 0x24], eax
mov eax, dword [esp + 0x20]
mov dword [ebx + 0x20], eax
mov dword [esp + 0x18], 0
push 0xb4
push str.cryptopempem_info.c
push dword [esp + 0x1c]
call fcn.10050120
push 0xb6
push str.cryptopempem_info.c
push dword [esp + 0x30]
mov dword [esp + 0x2c], 0
call fcn.10050120
push 0xb8
push str.cryptopempem_info.c
push dword [esp + 0x38]
mov dword [esp + 0x40], 0
call fcn.10050120
mov dword [esp + 0x3c], 0
call fcn.10051c30
mov esi, dword [esp + 0x5c]
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x44]
push eax
push esi
call fcn.100e5a40
add esp, 0x38
test eax, eax
je 0x1022b3a9
mov ebp, dword [esp + 0x10]
jmp 0x1022afc2
call fcn.10050e20
mov ecx, eax
sar ecx, 0x1f
and ecx, 0x7f800000
add ecx, 0x7fffff
and ecx, eax
cmp ecx, 0x6c
jne 0x1022b410
call fcn.10051b00
cmp dword [ebx], 0
jne 0x1022b3e2
cmp dword [ebx + 4], 0
jne 0x1022b3e2
cmp dword [ebx + 8], 0
jne 0x1022b3e2
cmp dword [ebx + 0x24], 0
je 0x1022b401
mov edi, dword [esp + 0x10]
push ebx
push edi
call fcn.10056c30
add esp, 8
test eax, eax
je 0x1022b419
xor ebx, ebx
push ebx
call fcn.1022ae60
add esp, 4
jmp 0x1022b45c
mov edi, dword [esp + 0x10]
push ebx
call fcn.1022ae60
add esp, 4
jmp 0x1022b45c
call fcn.10051a70
mov edi, dword [esp + 0x10]
push ebx
call fcn.1022ae60
push edi
xor esi, esi
call fcn.10056ba0
add esp, 8
test eax, eax
jle 0x1022b44b
nop
push esi
push edi
call fcn.10056df0
push eax
call fcn.1022ae60
push edi
inc esi
call fcn.10056ba0
add esp, 0x10
cmp esi, eax
jl 0x1022b430
cmp edi, dword [esp + 0x3c]
je 0x1022b45a
push edi
call fcn.100569a0
add esp, 4
xor edi, edi
push 0xd3
push str.cryptopempem_info.c
push dword [esp + 0x1c]
call fcn.10050120
push 0xd4
push str.cryptopempem_info.c
push dword [esp + 0x30]
call fcn.10050120
push 0xd5
push str.cryptopempem_info.c
push dword [esp + 0x38]
call fcn.10050120
mov ecx, dword [esp + 0x78]
add esp, 0x24
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.101fdd0b
add esp, 0x48
ret