Function at 0x440210
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x618
push ebx
push esi
push edi
xor ebx, ebx
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x40e]
mov word [ebp - 0x410], bx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, dword [ebp + 0x14]
mov esi, dword [sym.imp.MSVCRT.dll__snwprintf]
mov eax, edi
and eax, 0xff
sub eax, 0x20
je 0x44029a
dec eax
jne 0x4402e5
cmp dword [0x50fd38], ebx
je 0x440279
push 0x4f6a1c
lea eax, [ebp - 0x410]
push 0x103
push eax
push 0xffffffffffffffff
mov ecx, 0x50fce8
call fcn.00407c90
jmp 0x4402e5
cmp word [0x6b5318], bx
je 0x4402e5
push 0x6b5318
push 0x4f6574
lea ecx, [ebp - 0x410]
push 0x103
push ecx
jmp 0x4402e0
cmp dword [0x50fd38], ebx
je 0x4402c1
push str.IECache
lea edx, [ebp - 0x410]
push 0x103
push edx
push 0xffffffffffffffff
mov ecx, 0x50fce8
call fcn.00407c90
jmp 0x4402e5
cmp word [0x6b5110], bx
je 0x4402e5
push 0x6b5110
push 0x4f6574
lea eax, [ebp - 0x410]
push 0x103
push eax
call esi
add esp, 0x10
cmp word [ebp - 0x410], bx
je 0x440425
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x616]
mov word [ebp - 0x618], bx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x206]
mov word [ebp - 0x208], bx
rep stosd dword es:[edi], eax
lea ecx, [ebp - 0x618]
push 0x104
lea edx, [ebp - 0x410]
push ecx
push edx
stosw word es:[edi], ax
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea eax, [ebp - 0x618]
lea ecx, [ebp - 0x208]
push eax
push 0x50ff44
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [ebp - 0x208]
push 1
push edx
call fcn.004287e0
lea eax, [ebp - 0x208]
push eax
call fcn.00428a20
lea ecx, [ebp - 0x208]
push ecx
call dword [sym.imp.MSVCRT.dll_wcslen]
mov word [ebp + eax*2 - 0x20a], bx
mov eax, dword [ebp + 8]
add esp, 0x10
cmp eax, ebx
je 0x4403b8
mov eax, dword [ebp + 0x20]
lea edx, [ebp - 0x208]
push edx
push 0x4f6574
push 0x103
push eax
call esi
add esp, 0x10
xor eax, eax
lea esp, [ebp - 0x624]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
lea ecx, [ebp - 0x208]
test ecx, ecx
jne 0x4403c6
xor esi, esi
jmp 0x4403fc
lea edx, [ebp - 0x208]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea edi, [eax + eax + 2]
mov eax, edi
add eax, 3
and al, 0xfc
call fcn.004ace40
mov esi, esp
push ebx
push ebx
push edi
push esi
lea eax, [ebp - 0x208]
push 0xffffffffffffffff
push eax
push ebx
push ebx
mov byte [esi], bl
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ecx, dword [ebp + 0x20]
push esi
push 0x4f7528
push 0x103
push ecx
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x10
xor eax, eax
lea esp, [ebp - 0x624]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
cmp dword [ebp + 8], ebx
je 0x44044d
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x10]
push eax
push ecx
push edi
push edx
call dword [ebp + 0xc]
lea esp, [ebp - 0x624]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x10]
push ecx
push edx
push edi
push eax
call dword [ebp + 0xc]
lea esp, [ebp - 0x624]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c