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

Disassembly:
push edi
mov edi, dword [esp + 8]
test edi, edi
jne 0x578985
push 0x171
push str.cryptoengineeng_list.c
push 0x43
push 0x6a
push 0x26
call fcn.00575710
add esp, 0x14
xor eax, eax
pop edi
ret
push 0x579790
push 0x7258f4
call fcn.0057c470
add esp, 8
neg eax
sbb eax, eax
test dword [0x7258f8], eax
jne 0x5789bf
push 0x175
push str.cryptoengineeng_list.c
push 0x41
push 0x6a
push 0x26
call fcn.00575710
add esp, 0x14
xor eax, eax
pop edi
ret
push esi
push dword [0x7260d0]
call fcn.0057c460
mov esi, dword [0x7258e4]
add esp, 4
test esi, esi
je 0x578b06
nop dword [eax]
mov eax, dword [esi]
mov ecx, edi
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x578a04
test dl, dl
je 0x578a00
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x578a04
add ecx, 2
add eax, 2
test dl, dl
jne 0x5789e4
xor eax, eax
jmp 0x578a09
sbb eax, eax
or eax, 1
test eax, eax
je 0x578a19
mov esi, dword [esi + 0x70]
test esi, esi
jne 0x5789e0
jmp 0x578b06
test byte [esi + 0x5c], 4
je 0x578aff
call fcn.00579590
mov ecx, eax
test ecx, ecx
jne 0x578a35
xor esi, esi
jmp 0x578b06
mov eax, dword [esi]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [ecx + 0x1c], eax
mov eax, dword [esi + 0x20]
mov dword [ecx + 0x20], eax
mov eax, dword [esi + 0x24]
mov dword [ecx + 0x24], eax
mov eax, dword [esi + 0x2c]
mov dword [ecx + 0x2c], eax
mov eax, dword [esi + 0x30]
mov dword [ecx + 0x30], eax
mov eax, dword [esi + 0x34]
mov dword [ecx + 0x34], eax
mov eax, dword [esi + 0x38]
mov dword [ecx + 0x38], eax
mov eax, dword [esi + 0x3c]
mov dword [ecx + 0x3c], eax
mov eax, dword [esi + 0x40]
mov dword [ecx + 0x40], eax
mov eax, dword [esi + 0x58]
mov dword [ecx + 0x58], eax
mov eax, dword [esi + 0x5c]
mov dword [ecx + 0x5c], eax
mov eax, dword [esi + 0x7c]
mov dword [ecx + 0x7c], eax
test eax, eax
je 0x578afb
cmp dword [0x7258ec], 0
jne 0x578ad9
cmp dword [0x7258f0], 0
jne 0x578afb
mov dword [0x7258ec], ecx
mov esi, ecx
mov dword [ecx + 0x74], 0
mov dword [0x7258f0], ecx
mov dword [ecx + 0x78], 0
jmp 0x578b06
mov eax, dword [0x7258f0]
test eax, eax
je 0x578afb
cmp dword [eax + 0x78], 0
jne 0x578afb
mov dword [eax + 0x78], ecx
mov dword [ecx + 0x74], eax
mov dword [0x7258f0], ecx
mov dword [ecx + 0x78], 0
mov esi, ecx
jmp 0x578b06
mov eax, dword [esi + 0x60]
inc eax
mov dword [esi + 0x60], eax
push dword [0x7260d0]
call fcn.0057c4e0
add esp, 4
test esi, esi
je 0x578b1d
mov eax, esi
pop esi
pop edi
ret
mov ecx, str.dynamic
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x578b44
test dl, dl
je 0x578b40
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x578b44
add eax, 2
add ecx, 2
test dl, dl
jne 0x578b24
xor eax, eax
jmp 0x578b49
sbb eax, eax
or eax, 1
push ebx
test eax, eax
je 0x578bf1
push str.OPENSSL_ENGINES
call fcn.005918f0
test eax, eax
mov ebx, str.H:_rc_v12_per_plu_240528wpsenv3rd_buildpackagesopenssl_windows_x86_windows_staticlibengines_1_1
push str.dynamic
cmovne ebx, eax
call fcn.00578960
mov esi, eax
add esp, 8
test esi, esi
je 0x578bf1
push 0
push edi
push 0x6a7f40
push esi
call fcn.005790e0
add esp, 0x10
test eax, eax
je 0x578bf1
push 0
push 0x6a7f44
push str.DIR_LOAD
push esi
call fcn.005790e0
add esp, 0x10
test eax, eax
je 0x578bf1
push 0
push ebx
push str.DIR_ADD
push esi
call fcn.005790e0
add esp, 0x10
test eax, eax
je 0x578bf1
push 0
push 0x684054
push str.LIST_ADD
push esi
call fcn.005790e0
add esp, 0x10
test eax, eax
je 0x578bf1
push 0
push 0
push str.LOAD
push esi
call fcn.005790e0
add esp, 0x10
test eax, eax
je 0x578bf1
pop ebx
mov eax, esi
pop esi
pop edi
ret
push esi
call fcn.00579510
push 0x1a5
push str.cryptoengineeng_list.c
push 0x74
push 0x6a
push 0x26
call fcn.00575710
push edi
push 0x6a7f70
push 2
call fcn.00574d50
add esp, 0x24
xor eax, eax
pop ebx
pop esi
pop edi
ret