Function at 0x42e7e0
Capabilities:
Query environment variable
Set environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x451767
mov eax, dword fs:[0]
push eax
mov eax, 0x32460
call fcn.0043e100
mov eax, dword [0x472554]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov word [ebp - 0x21c], 0
push 0x206
push 0
lea eax, [ebp - 0x21a]
push eax
call sub.MSVCR80.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x220]
call fcn.0041bdb0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x228]
call fcn.0041bdb0
mov byte [ebp - 4], 1
push str.kinfoc.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0
jne 0x42e9a9
mov word [ebp - 0x43c], 0
push 0x208
push 0
lea ecx, [ebp - 0x43a]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
lea edx, [ebp - 0x43c]
push edx
call fcn.0042e660
add esp, 4
lea eax, [ebp - 0x43c]
push eax
lea ecx, [ebp - 0x220]
call fcn.0042c660
push str.ksoft_
lea ecx, [ebp - 0x220]
call fcn.0042f420
push str.kinfoc.dll
lea ecx, [ebp - 0x220]
push ecx
lea edx, [ebp - 0x32448]
push edx
call fcn.0042e190
add esp, 0xc
mov dword [ebp - 0x32458], eax
mov eax, dword [ebp - 0x32458]
mov dword [ebp - 0x3245c], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x3245c]
push ecx
lea ecx, [ebp - 0x228]
call fcn.0042e0a0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x32448]
call fcn.0041bdd0
lea ecx, [ebp - 0x228]
call fcn.00420660
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0
je 0x42e9a9
mov word [ebp - 0x32444], 0
push 0x31ffe
push 0
lea edx, [ebp - 0x32442]
push edx
call sub.MSVCR80.dll_memset
add esp, 0xc
push 0x19000
lea eax, [ebp - 0x32444]
push eax
push str.path
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov dword [ebp - 0x440], eax
cmp dword [ebp - 0x440], 0
jbe 0x42e9a9
mov ecx, dword [ebp - 0x220]
push ecx
lea edx, [ebp - 0x32444]
push edx
push str._s__s
lea eax, [ebp - 0x32444]
push eax
call fcn.0042f2b0
add esp, 0x10
lea ecx, [ebp - 0x32444]
push ecx
push str.path
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
cmp dword [ebp - 0x224], 0
jne 0x42ea68
lea edx, [ebp - 0x3244c]
push edx
call fcn.0042eac0
add esp, 4
mov dword [ebp - 0x32460], eax
mov eax, dword [ebp - 0x32460]
mov dword [ebp - 0x32464], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x32464]
push ecx
lea ecx, [ebp - 0x220]
call fcn.0042e0a0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3244c]
call fcn.0041bdd0
push str.ksoftkinfoc.dll
lea edx, [ebp - 0x220]
push edx
lea eax, [ebp - 0x32450]
push eax
call fcn.0042e190
add esp, 0xc
mov dword [ebp - 0x32468], eax
mov ecx, dword [ebp - 0x32468]
mov dword [ebp - 0x3246c], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x3246c]
push edx
lea ecx, [ebp - 0x220]
call fcn.0042e0a0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x32450]
call fcn.0041bdd0
push 0
lea ecx, [ebp - 0x220]
call fcn.0041bdf0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x32454], eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x228]
call fcn.0041bdd0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x220]
call fcn.0041bdd0
mov eax, dword [ebp - 0x32454]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043dcfe
mov esp, ebp
pop ebp
ret