Function at 0x43dcbe
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
mov ebx, dword [ebp + 0xc]
xor eax, eax
and dword [ebp - 8], eax
xor ecx, ecx
test byte [ebp + 0x10], 1
push esi
push edi
push 0x40
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], ecx
pop edi
je 0x43ddeb
push edi
lea eax, [ebp - 4]
mov dword [ebp - 0xc], edi
push eax
call fcn.0044032a
mov esi, eax
test esi, esi
js 0x43df05
push dword [ebp - 0xc]
push dword [ebp - 4]
push ebx
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
jne 0x43dd3f
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x113
push str.pathutil.cpp
call fcn.0043bf09
jmp 0x43df05
mov ecx, dword [ebp - 0xc]
cmp ecx, eax
jae 0x43ddaa
push eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 4]
push eax
call fcn.0044032a
mov esi, eax
test esi, esi
js 0x43df05
push dword [ebp - 0xc]
push dword [ebp - 4]
push ebx
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
jne 0x43dd94
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x11e
jmp 0x43dd30
mov ecx, dword [ebp - 0xc]
cmp ecx, eax
jae 0x43ddaa
mov eax, 0x8007007a
push eax
mov esi, eax
push 0x123
jmp 0x43dd30
cmp eax, 0x104
jbe 0x43dde8
lea eax, [ebp - 4]
push eax
call fcn.0043e17d
mov esi, eax
xor eax, eax
cmp esi, 0x80070057
cmove esi, eax
test esi, esi
js 0x43df05
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 4]
call fcn.00440b97
mov esi, eax
test esi, esi
js 0x43df05
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
test byte [ebp + 0x10], 2
je 0x43deec
and dword [ebp + 0x10], 0
mov edx, ebx
test eax, eax
cmovne edx, eax
cmp ecx, edi
lea eax, [ebp - 8]
mov dword [ebp + 0xc], edx
cmova edi, ecx
push edi
push eax
call fcn.0044032a
mov esi, eax
test esi, esi
js 0x43df05
lea eax, [ebp + 0x10]
push eax
push dword [ebp - 8]
push edi
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
test eax, eax
jne 0x43de5a
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x144
jmp 0x43dd30
cmp edi, eax
jae 0x43ded1
cmp eax, 0x104
lea edi, [eax + 7]
cmovb edi, eax
lea eax, [ebp - 8]
push edi
push eax
call fcn.0044032a
mov esi, eax
test esi, esi
js 0x43df05
lea eax, [ebp + 0x10]
push eax
push dword [ebp - 8]
push edi
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
test eax, eax
jne 0x43debb
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x14f
jmp 0x43dd30
cmp edi, eax
jae 0x43ded1
mov eax, 0x8007007a
push eax
mov esi, eax
push 0x154
jmp 0x43dd30
cmp eax, 0x104
jbe 0x43dee7
lea eax, [ebp - 8]
push eax
call fcn.0043e17d
mov esi, eax
test esi, esi
js 0x43df05
mov eax, dword [ebp - 8]
jmp 0x43def3
and dword [ebp - 4], 0
mov dword [ebp - 8], eax
test eax, eax
push 0
cmovne ebx, eax
push ebx
push dword [ebp + 8]
call fcn.004405ef
mov esi, eax
cmp dword [ebp - 8], 0
je 0x43df13
push dword [ebp - 8]
call fcn.00444e5d
cmp dword [ebp - 4], 0
je 0x43df21
push dword [ebp - 4]
call fcn.00444e5d
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc