Function at 0x4356d0
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 0x43575a
dec eax
jne 0x4357a5
cmp dword [0x4f052c], ebx
je 0x435739
push 0x4de6f4
lea eax, [ebp - 0x410]
push 0x103
push eax
push 0xffffffffffffffff
mov ecx, 0x4f04e8
call fcn.00406cd0
jmp 0x4357a5
cmp word [0x695308], bx
je 0x4357a5
push 0x695308
push 0x4de3ac
lea ecx, [ebp - 0x410]
push 0x103
push ecx
jmp 0x4357a0
cmp dword [0x4f052c], ebx
je 0x435781
push str.IECache
lea edx, [ebp - 0x410]
push 0x103
push edx
push 0xffffffffffffffff
mov ecx, 0x4f04e8
call fcn.00406cd0
jmp 0x4357a5
cmp word [0x695100], bx
je 0x4357a5
push 0x695100
push 0x4de3ac
lea eax, [ebp - 0x410]
push 0x103
push eax
call esi
add esp, 0x10
cmp word [ebp - 0x410], bx
je 0x4358e5
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 0x4f0738
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [ebp - 0x208]
push 1
push edx
call fcn.004228d0
lea eax, [ebp - 0x208]
push eax
call fcn.00422b10
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 0x435878
mov eax, dword [ebp + 0x20]
lea edx, [ebp - 0x208]
push edx
push 0x4de3ac
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 0x435886
xor esi, esi
jmp 0x4358bc
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.00495c50
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 0x4df378
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 0x43590d
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