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

Disassembly:
mov eax, 0x48
call fcn.0053e710
mov eax, dword [0x7ec540]
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 0x5ab013
call fcn.0054f410
mov ebp, eax
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x5ab019
call fcn.0054cc90
push str.PEM_X509_INFO_read_bio_ex
push 0x46
push str.cryptopempem_info.c
call fcn.0054cd90
push ebp
push 0x8000f
push 9
call fcn.0054cea0
add esp, 0x18
mov edi, ebp
xor ebx, ebx
jmp 0x5ab4a9
mov ebp, ecx
mov dword [esp + 0x10], ecx
call fcn.005ab540
mov ebx, eax
test ebx, ebx
je 0x5ab4a5
call fcn.00556290
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.0054d6d0
add esp, 0x14
test eax, eax
je 0x5ab439
call fcn.005563f0
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 0x5ab090
test dl, dl
je 0x5ab08c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5ab090
add eax, 2
add ecx, 2
test dl, dl
jne 0x5ab070
xor eax, eax
jmp 0x5ab095
sbb eax, eax
or eax, 1
test eax, eax
je 0x5ab1c0
mov ecx, str.X509_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5ab0c4
test dl, dl
je 0x5ab0c0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5ab0c4
add eax, 2
add ecx, 2
test dl, dl
jne 0x5ab0a4
xor eax, eax
jmp 0x5ab0c9
sbb eax, eax
or eax, 1
test eax, eax
je 0x5ab1c0
mov ecx, str.TRUSTED_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5ab0f8
test dl, dl
je 0x5ab0f4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5ab0f8
add eax, 2
add ecx, 2
test dl, dl
jne 0x5ab0d8
xor eax, eax
jmp 0x5ab0fd
sbb eax, eax
or eax, 1
test eax, eax
je 0x5ab1c0
mov eax, str.X509_CRL
mov ecx, esi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x5ab130
test dl, dl
je 0x5ab12c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x5ab130
add ecx, 2
add eax, 2
test dl, dl
jne 0x5ab110
xor eax, eax
jmp 0x5ab135
sbb eax, eax
or eax, 1
test eax, eax
jne 0x5ab173
lea edi, [ebx + 4]
mov ebp, fcn.0058f160
cmp dword [edi], eax
je 0x5ab2c2
mov ebp, dword [esp + 0x10]
push ebx
push ebp
call fcn.0054f8c0
add esp, 8
test eax, eax
je 0x5ab4a5
call fcn.005ab540
mov ebx, eax
test ebx, ebx
jne 0x5ab060
jmp 0x5ab4a5
push 0x7c0710
push esi
call fcn.006fbe20
mov esi, eax
add esp, 8
test esi, esi
je 0x5ab3b5
cmp dword [ebx + 8], 0
jne 0x5ab14d
mov eax, dword [esp + 0x14]
cmp esi, eax
je 0x5ab218
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5ab1fb
test dl, dl
je 0x5ab1bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5ab1fb
add eax, 2
add ecx, 2
test dl, dl
jne 0x5ab1a0
xor eax, eax
jmp 0x5ab200
cmp dword [ebx], 0
jne 0x5ab14d
mov eax, str.TRUSTED_CERTIFICATE
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x5ab292
test cl, cl
je 0x5ab1f4
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x5ab292
add esi, 2
add eax, 2
test cl, cl
jne 0x5ab1d0
xor esi, esi
jmp 0x5ab297
sbb eax, eax
or eax, 1
test eax, eax
je 0x5ab218
mov byte [esi - 1], 0
push dword [esp + 0x14]
call fcn.005621c0
add esp, 4
mov esi, eax
jmp 0x5ab21a
xor esi, esi
mov dword [ebx + 0x24], 0
mov ebp, 0x604130
mov dword [ebx + 0x20], 0
call fcn.0060dfe0
mov dword [ebx + 8], eax
test eax, eax
je 0x5ab4a5
mov ecx, dword [esp + 0x1c]
lea edi, [eax + 0xc]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ab247
sub ecx, edx
cmp ecx, 0xa
jg 0x5ab28b
mov eax, dword [esp + 0x14]
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5ab280
test dl, dl
je 0x5ab27c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5ab280
add eax, 2
add ecx, 2
test dl, dl
jne 0x5ab260
xor eax, eax
jmp 0x5ab285
sbb eax, eax
or eax, 1
xor ecx, ecx
test eax, eax
jne 0x5ab2c6
mov ecx, 1
jmp 0x5ab2c6
sbb esi, esi
or esi, 1
push dword [esp + 0x24]
push dword [esp + 0x2c]
call fcn.0054acf0
add esp, 8
mov dword [ebx], eax
test eax, eax
je 0x5ab4a5
test esi, esi
mov ebp, fcn.0054ad80
mov eax, fcn.0054aca0
mov edi, ebx
cmovne ebp, eax
xor ecx, ecx
xor esi, esi
test ecx, ecx
jne 0x5ab387
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x20]
call fcn.0054d110
add esp, 8
test eax, eax
je 0x5ab4a5
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.0054d450
add esp, 0x14
test eax, eax
je 0x5ab4a5
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
test esi, esi
je 0x5ab367
push dword [esp + 0x24]
push dword [esp + 0x2c]
push dword [esp + 0x28]
push eax
push edi
push esi
call fcn.00603fb0
add esp, 0x18
test eax, eax
jne 0x5ab3b5
call fcn.0054cc90
push str.PEM_X509_INFO_read_bio_ex
push 0xa5
push str.cryptopempem_info.c
call fcn.0054cd90
push 0
push 0x8000d
push 9
call fcn.0054cea0
add esp, 0x18
jmp 0x5ab4a5
push dword [esp + 0x20]
push eax
push edi
call ebp
add esp, 0xc
test eax, eax
jne 0x5ab3b5
call fcn.0054cc90
push str.PEM_X509_INFO_read_bio_ex
push 0xa9
jmp 0x5ab347
lea eax, [ebx + 0xc]
push eax
push dword [esp + 0x20]
call fcn.0054d110
add esp, 8
test eax, eax
je 0x5ab4a5
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.0054c6e0
push 0xb6
push str.cryptopempem_info.c
push dword [esp + 0x30]
mov dword [esp + 0x2c], 0
call fcn.0054c6e0
push 0xb8
push str.cryptopempem_info.c
push dword [esp + 0x38]
mov dword [esp + 0x40], 0
call fcn.0054c6e0
mov dword [esp + 0x3c], 0
call fcn.00556290
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.0054d6d0
add esp, 0x38
test eax, eax
je 0x5ab439
mov ebp, dword [esp + 0x10]
jmp 0x5ab052
call fcn.00555310
mov ecx, eax
sar ecx, 0x1f
and ecx, 0x7f800000
add ecx, 0x7fffff
and ecx, eax
cmp ecx, 0x6c
jne 0x5ab4a0
call fcn.005562c0
cmp dword [ebx], 0
jne 0x5ab472
cmp dword [ebx + 4], 0
jne 0x5ab472
cmp dword [ebx + 8], 0
jne 0x5ab472
cmp dword [ebx + 0x24], 0
je 0x5ab491
mov edi, dword [esp + 0x10]
push ebx
push edi
call fcn.0054f8c0
add esp, 8
test eax, eax
je 0x5ab4a9
xor ebx, ebx
push ebx
call fcn.005ab560
add esp, 4
jmp 0x5ab4ec
mov edi, dword [esp + 0x10]
push ebx
call fcn.005ab560
add esp, 4
jmp 0x5ab4ec
call fcn.005563f0
mov edi, dword [esp + 0x10]
push ebx
call fcn.005ab560
push edi
xor esi, esi
call fcn.0054f320
add esp, 8
test eax, eax
jle 0x5ab4db
nop
push esi
push edi
call fcn.0054f330
push eax
call fcn.005ab560
push edi
inc esi
call fcn.0054f320
add esp, 0x10
cmp esi, eax
jl 0x5ab4c0
cmp edi, dword [esp + 0x3c]
je 0x5ab4ea
push edi
call fcn.0054f500
add esp, 4
xor edi, edi
push 0xd3
push str.cryptopempem_info.c
push dword [esp + 0x1c]
call fcn.0054c6e0
push 0xd4
push str.cryptopempem_info.c
push dword [esp + 0x30]
call fcn.0054c6e0
push 0xd5
push str.cryptopempem_info.c
push dword [esp + 0x38]
call fcn.0054c6e0
mov ecx, dword [esp + 0x78]
add esp, 0x24
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00541f33
add esp, 0x48
ret