Function at 0x450cf0
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 0x450f26
push 0x168
push str.external_openssl_crypto_engine_eng_list.c
push 0x1e
push 9
call fcn.00428130
mov esi, dword [0x4eb310]
add esp, 0x10
test esi, esi
jne 0x450d2d
jmp 0x450d70
mov esi, dword [esi + 0x6c]
test esi, esi
je 0x450d70
push eax
push eax
mov eax, dword [esi]
push eax
push ebx
call sub.msvcrt.dll_strcmp
add esp, 0x10
test eax, eax
jne 0x450d26
test byte [esi + 0x54], 4
jne 0x450e90
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.00428130
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.00428130
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 0x450de6
sub esp, 0xc
push str.OPENSSL_ENGINES
call sub.msvcrt.dll_getenv
add esp, 0x10
mov edi, eax
test eax, eax
je 0x450f1c
sub esp, 0xc
push str.dynamic
call fcn.00450cf0
add esp, 0x10
mov esi, eax
test eax, eax
je 0x450de6
push 0
push ebx
push 0x4ca35e
push eax
call fcn.00469100
add esp, 0x10
test eax, eax
jne 0x450e25
sub esp, 0xc
push esi
call fcn.00443360
mov dword [esp], 0x1a2
push str.external_openssl_crypto_engine_eng_list.c
push 0x74
push 0x6a
push 0x26
call fcn.004249c0
add esp, 0x1c
xor esi, esi
push ebx
push 0x4ca384
push 2
call fcn.00424600
add esp, 0x10
lea esp, [ebp - 0xc]
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
push 0
push 0x4ca361
push str.DIR_LOAD
push esi
call fcn.00469100
add esp, 0x10
test eax, eax
je 0x450de6
push 0
push edi
push str.DIR_ADD
push esi
call fcn.00469100
add esp, 0x10
test eax, eax
je 0x450de6
push 0
push 0x4ca374
push str.LIST_ADD
push esi
call fcn.00469100
add esp, 0x10
test eax, eax
je 0x450de6
push 0
push 0
push str.LOAD
push esi
call fcn.00469100
add esp, 0x10
test eax, eax
je 0x450de6
jmp 0x450e1b
call fcn.00443380
mov edx, eax
test eax, eax
je 0x450d70
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 0x450d50
mov edi, str._system_lib_ssl_engines
jmp 0x450dbb
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.004249c0
add esp, 0x20
jmp 0x450e1b