Function at 0x450c30
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xc
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x450e66
push 0x168
push str.external_openssl_crypto_engine_eng_list.c
push 0x1e
push 9
call fcn.00428070
mov esi, dword [0x4ec310]
add esp, 0x10
test esi, esi
jne 0x450c6d
jmp 0x450cb0
mov esi, dword [esi + 0x6c]
test esi, esi
je 0x450cb0
push eax
push eax
mov eax, dword [esi]
push eax
push ebx
call sub.msvcrt.dll_strcmp
add esp, 0x10
test eax, eax
jne 0x450c66
test byte [esi + 0x54], 4
jne 0x450dd0
mov eax, dword [esi + 0x58]
inc eax
mov dword [esi + 0x58], eax
push 0x182
push str.external_openssl_crypto_engine_eng_list.c
push 0x1e
push 0xa
call fcn.00428070
mov eax, esi
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push 0x182
push str.external_openssl_crypto_engine_eng_list.c
push 0x1e
push 0xa
call fcn.00428070
mov esi, ebx
cld
mov edi, str.dynamic
mov ecx, 8
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
add esp, 0x10
xor esi, esi
cmp dl, al
je 0x450d26
sub esp, 0xc
push str.OPENSSL_ENGINES
call sub.msvcrt.dll_getenv
add esp, 0x10
mov edi, eax
test eax, eax
je 0x450e5c
sub esp, 0xc
push str.dynamic
call fcn.00450c30
add esp, 0x10
mov esi, eax
test eax, eax
je 0x450d26
push 0
push ebx
push 0x4ca61e
push eax
call fcn.00469040
add esp, 0x10
test eax, eax
jne 0x450d65
sub esp, 0xc
push esi
call fcn.004432a0
mov dword [esp], 0x1a2
push str.external_openssl_crypto_engine_eng_list.c
push 0x74
push 0x6a
push 0x26
call fcn.00424900
add esp, 0x1c
xor esi, esi
push ebx
push 0x4ca644
push 2
call fcn.00424540
add esp, 0x10
lea esp, [ebp - 0xc]
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
push 0
push 0x4ca621
push str.DIR_LOAD
push esi
call fcn.00469040
add esp, 0x10
test eax, eax
je 0x450d26
push 0
push edi
push str.DIR_ADD
push esi
call fcn.00469040
add esp, 0x10
test eax, eax
je 0x450d26
push 0
push 0x4ca634
push str.LIST_ADD
push esi
call fcn.00469040
add esp, 0x10
test eax, eax
je 0x450d26
push 0
push 0
push str.LOAD
push esi
call fcn.00469040
add esp, 0x10
test eax, eax
je 0x450d26
jmp 0x450d5b
call fcn.004432c0
mov edx, eax
test eax, eax
je 0x450cb0
mov eax, dword [esi]
mov dword [edx], eax
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [edx + 0x1c], eax
mov eax, dword [esi + 0x20]
mov dword [edx + 0x20], eax
mov eax, dword [esi + 0x24]
mov dword [edx + 0x24], eax
mov eax, dword [esi + 0x28]
mov dword [edx + 0x28], eax
mov eax, dword [esi + 0x2c]
mov dword [edx + 0x2c], eax
mov eax, dword [esi + 0x34]
mov dword [edx + 0x34], eax
mov eax, dword [esi + 0x38]
mov dword [edx + 0x38], eax
mov eax, dword [esi + 0x3c]
mov dword [edx + 0x3c], eax
mov eax, dword [esi + 0x40]
mov dword [edx + 0x40], eax
mov eax, dword [esi + 0x44]
mov dword [edx + 0x44], eax
mov eax, dword [esi + 0x48]
mov dword [edx + 0x48], eax
mov eax, dword [esi + 0x50]
mov dword [edx + 0x50], eax
mov eax, dword [esi + 0x54]
mov esi, edx
mov dword [edx + 0x54], eax
jmp 0x450c90
mov edi, str._system_lib_ssl_engines
jmp 0x450cfb
sub esp, 0xc
xor esi, esi
push 0x165
push str.external_openssl_crypto_engine_eng_list.c
push 0x43
push 0x6a
push 0x26
call fcn.00424900
add esp, 0x20
jmp 0x450d5b