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

Disassembly:
mov eax, 0x48
call fcn.005c85a0
mov eax, dword [0x679dc8]
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 0x4f79d2
call fcn.004a42d0
mov ebp, eax
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x4f79d8
call fcn.004a9920
push str.PEM_X509_INFO_read_bio_ex
push ebp
push 0x66fd1f
call fcn.004a9a20
push ebp
push 0xc0100
push 9
call fcn.004a9a30
add esp, 0x18
mov edi, ebp
xor ebx, ebx
jmp 0x4f7e4c
mov ebp, ecx
mov dword [esp + 0x10], ecx
call fcn.004f78f0
mov ebx, eax
test ebx, ebx
je 0x4f7e48
call fcn.004a3640
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.004c9b60
add esp, 0x14
test eax, eax
je 0x4f7dde
call fcn.004a30a0
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 0x4f7a50
test dl, dl
je 0x4f7a4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4f7a50
add eax, 2
add ecx, 2
test dl, dl
jne 0x4f7a30
xor eax, eax
jmp 0x4f7a55
sbb eax, eax
or eax, 1
test eax, eax
je 0x4f7b80
mov ecx, str.X509_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4f7a84
test dl, dl
je 0x4f7a80
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4f7a84
add eax, 2
add ecx, 2
test dl, dl
jne 0x4f7a64
xor eax, eax
jmp 0x4f7a89
sbb eax, eax
or eax, 1
test eax, eax
je 0x4f7b80
mov ecx, str.TRUSTED_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4f7ab8
test dl, dl
je 0x4f7ab4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4f7ab8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4f7a98
xor eax, eax
jmp 0x4f7abd
sbb eax, eax
or eax, 1
test eax, eax
je 0x4f7b80
mov eax, str.X509_CRL
mov ecx, esi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4f7af0
test dl, dl
je 0x4f7aec
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4f7af0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4f7ad0
xor eax, eax
jmp 0x4f7af5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4f7b33
lea edi, [ebx + 4]
mov ebp, fcn.004f7520
cmp dword [edi], eax
je 0x4f7c82
mov ebp, dword [esp + 0x10]
push ebx
push ebp
call fcn.004a43d0
add esp, 8
test eax, eax
je 0x4f7e48
call fcn.004f78f0
mov ebx, eax
test ebx, ebx
jne 0x4f7a20
jmp 0x4f7e48
push str.PRIVATE_KEY
push esi
call fcn.005cb480
mov esi, eax
add esp, 8
test esi, esi
je 0x4f7d63
cmp dword [ebx + 8], 0
jne 0x4f7b0d
mov eax, dword [esp + 0x14]
cmp esi, eax
je 0x4f7bd8
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4f7bbb
test dl, dl
je 0x4f7b7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4f7bbb
add eax, 2
add ecx, 2
test dl, dl
jne 0x4f7b60
xor eax, eax
jmp 0x4f7bc0
cmp dword [ebx], 0
jne 0x4f7b0d
mov eax, str.TRUSTED_CERTIFICATE
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x4f7c52
test cl, cl
je 0x4f7bb4
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x4f7c52
add esi, 2
add eax, 2
test cl, cl
jne 0x4f7b90
xor esi, esi
jmp 0x4f7c57
sbb eax, eax
or eax, 1
test eax, eax
je 0x4f7bd8
mov byte [esi - 1], 0
push dword [esp + 0x14]
call fcn.004b2cd0
add esp, 4
mov esi, eax
jmp 0x4f7bda
xor esi, esi
mov dword [ebx + 0x24], 0
mov ebp, 0x4e3550
mov dword [ebx + 0x20], 0
call fcn.0052e310
mov dword [ebx + 8], eax
test eax, eax
je 0x4f7e48
mov ecx, dword [esp + 0x1c]
lea edi, [eax + 0xc]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4f7c07
sub ecx, edx
cmp ecx, 0xa
jg 0x4f7c4b
mov eax, dword [esp + 0x14]
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4f7c40
test dl, dl
je 0x4f7c3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4f7c40
add eax, 2
add ecx, 2
test dl, dl
jne 0x4f7c20
xor eax, eax
jmp 0x4f7c45
sbb eax, eax
or eax, 1
xor ecx, ecx
test eax, eax
jne 0x4f7c86
mov ecx, 1
jmp 0x4f7c86
sbb esi, esi
or esi, 1
push dword [esp + 0x24]
push dword [esp + 0x2c]
call fcn.004bae50
add esp, 8
mov dword [ebx], eax
test eax, eax
je 0x4f7e48
test esi, esi
mov ebp, fcn.004baef0
mov eax, fcn.004baed0
mov edi, ebx
cmovne ebp, eax
xor ecx, ecx
xor esi, esi
test ecx, ecx
jne 0x4f7d35
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x20]
call fcn.004c9850
add esp, 8
test eax, eax
je 0x4f7e48
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.004c95d0
add esp, 0x14
test eax, eax
je 0x4f7e48
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
test esi, esi
je 0x4f7d24
push dword [esp + 0x24]
push dword [esp + 0x2c]
push dword [esp + 0x28]
push eax
push edi
push esi
call fcn.004e3940
add esp, 0x18
test eax, eax
jne 0x4f7d63
call fcn.004a9920
push str.PEM_X509_INFO_read_bio_ex
push 0
push 0x66fd1f
call fcn.004a9a20
push 0
push 0x8000d
push 9
call fcn.004a9a30
add esp, 0x18
jmp 0x4f7e48
push dword [esp + 0x20]
push eax
push edi
call ebp
add esp, 0xc
test eax, eax
je 0x4f7cf8
jmp 0x4f7d63
lea eax, [ebx + 0xc]
push eax
push dword [esp + 0x20]
call fcn.004c9850
add esp, 8
test eax, eax
je 0x4f7e48
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 0
push 0x66fd1f
push dword [esp + 0x1c]
call fcn.004a5400
push 0
push 0x66fd1f
push dword [esp + 0x30]
mov dword [esp + 0x2c], 0
call fcn.004a5400
push 0
push 0x66fd1f
push dword [esp + 0x38]
mov dword [esp + 0x40], 0
call fcn.004a5400
mov dword [esp + 0x3c], 0
call fcn.004a3640
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.004c9b60
add esp, 0x38
test eax, eax
je 0x4f7dde
mov ebp, dword [esp + 0x10]
jmp 0x4f7a11
call fcn.004a3470
test eax, eax
mov ecx, 0x7fffff
mov edx, closesocket
cmovs ecx, edx
and ecx, eax
cmp ecx, 0x6c
jne 0x4f7e43
call fcn.004a3510
cmp dword [ebx], 0
jne 0x4f7e15
cmp dword [ebx + 4], 0
jne 0x4f7e15
cmp dword [ebx + 8], 0
jne 0x4f7e15
cmp dword [ebx + 0x24], 0
je 0x4f7e34
mov edi, dword [esp + 0x10]
push ebx
push edi
call fcn.004a43d0
add esp, 8
test eax, eax
je 0x4f7e4c
xor ebx, ebx
push ebx
call fcn.004f78a0
add esp, 4
jmp 0x4f7e8d
mov edi, dword [esp + 0x10]
push ebx
call fcn.004f78a0
add esp, 4
jmp 0x4f7e8d
call fcn.004a30a0
mov edi, dword [esp + 0x10]
push ebx
call fcn.004f78a0
push edi
xor esi, esi
call fcn.004a4350
add esp, 8
test eax, eax
jle 0x4f7e7c
push esi
push edi
call fcn.004a4500
push eax
call fcn.004f78a0
push edi
inc esi
call fcn.004a4350
add esp, 0x10
cmp esi, eax
jl 0x4f7e61
cmp edi, dword [esp + 0x3c]
je 0x4f7e8b
push edi
call fcn.004a41e0
add esp, 4
xor edi, edi
push 0
push 0x66fd1f
push dword [esp + 0x1c]
call fcn.004a5400
push 0
push 0x66fd1f
push dword [esp + 0x30]
call fcn.004a5400
push 0
push 0x66fd1f
push dword [esp + 0x38]
call fcn.004a5400
mov ecx, dword [esp + 0x78]
add esp, 0x24
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005c7d0a
add esp, 0x48
ret