Function at 0x4a7460
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x40c
call fcn.007081d0
mov eax, dword [0x7d0e44]
xor eax, ebp
mov dword [ebp - 4], eax
push 5
push str.pass:
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4a74ad
push 0x108
push str.appslib_apps.c
mov ecx, dword [ebp + 8]
add ecx, 5
push ecx
call fcn.0052d940
add esp, 0xc
jmp 0x4a7707
push 4
push str.env:
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4a7524
mov eax, dword [ebp + 8]
add eax, 4
push eax
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
add esp, 4
mov dword [ebp - 0x408], eax
cmp dword [ebp - 0x408], 0
jne 0x4a7506
mov ecx, dword [ebp + 8]
add ecx, 4
push ecx
push str.No_environment_variable__s_n
mov edx, dword [0x7d10f0]
push edx
call fcn.00513860
add esp, 0xc
xor eax, eax
jmp 0x4a7707
push 0x10f
push str.appslib_apps.c
mov eax, dword [ebp - 0x408]
push eax
call fcn.0052d940
add esp, 0xc
jmp 0x4a7707
cmp dword [ebp + 0xc], 0
je 0x4a7537
cmp dword [0x7d1ff0], 0
jne 0x4a7665
push 5
push str.file:
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4a7598
push 0x70bea8
mov edx, dword [ebp + 8]
add edx, 5
push edx
call fcn.0052eb70
add esp, 8
mov dword [0x7d1ff0], eax
cmp dword [0x7d1ff0], 0
jne 0x4a7593
mov eax, dword [ebp + 8]
add eax, 5
push eax
push str.Cant_open_file__s_n
mov ecx, dword [0x7d10f0]
push ecx
call fcn.00513860
add esp, 0xc
xor eax, eax
jmp 0x4a7707
jmp 0x4a7665
push str.stdin
mov edx, dword [ebp + 8]
push edx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a75f8
push 0
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
add esp, 4
push eax
call fcn.004ad350
add esp, 4
push 0x8001
call fcn.004a9210
add esp, 4
mov dword [0x7d1ff0], eax
cmp dword [0x7d1ff0], 0
jne 0x4a75f6
push str.Cant_open_BIO_for_stdin_n
mov eax, dword [0x7d10f0]
push eax
call fcn.00513860
add esp, 8
xor eax, eax
jmp 0x4a7707
jmp 0x4a7665
push 0x3a
mov ecx, dword [ebp + 8]
push ecx
call sub.VCRUNTIME140.dll_strchr
add esp, 8
mov dword [ebp - 0x408], eax
cmp dword [ebp - 0x408], 0
je 0x4a7623
mov edx, dword [ebp - 0x408]
sub edx, dword [ebp + 8]
cmp edx, 4
jle 0x4a763a
push 5
push str.Invalid_password_argument__missing_:_within_the_first__d_chars_n
mov eax, dword [0x7d10f0]
push eax
call fcn.00513860
add esp, 0xc
jmp 0x4a765e
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x408]
sub edx, dword [ebp + 8]
add edx, 1
push edx
push str.Invalid_password_argument__starting_with___.s__n
mov eax, dword [0x7d10f0]
push eax
call fcn.00513860
add esp, 0x10
xor eax, eax
jmp 0x4a7707
push 0x400
lea ecx, [ebp - 0x404]
push ecx
mov edx, dword [0x7d1ff0]
push edx
call fcn.005210e0
add esp, 0xc
mov dword [ebp - 0x40c], eax
cmp dword [ebp + 0xc], 1
je 0x4a76a4
mov eax, dword [0x7d1ff0]
push eax
call fcn.00520ee0
add esp, 4
mov dword [0x7d1ff0], 0
cmp dword [ebp - 0x40c], 0
jg 0x4a76c5
push str.Error_reading_password_from_BIO_n
mov ecx, dword [0x7d10f0]
push ecx
call fcn.00513860
add esp, 8
xor eax, eax
jmp 0x4a7707
push 0xa
lea edx, [ebp - 0x404]
push edx
call sub.VCRUNTIME140.dll_strchr
add esp, 8
mov dword [ebp - 0x408], eax
cmp dword [ebp - 0x408], 0
je 0x4a76ee
mov eax, dword [ebp - 0x408]
mov byte [eax], 0
push 0x157
push str.appslib_apps.c
lea ecx, [ebp - 0x404]
push ecx
call fcn.0052d940
add esp, 0xc
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.007081b5
mov esp, ebp
pop ebp
ret