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

Disassembly:
push ebp
mov ebp, esp
push 0x134
call fcn.0040a961
push ebx
push ecx
push esi
push edi
sub esp, 0x104
push eax
push edx
push 0x413598
call fcn.0040a9d4
add esp, 4
call fcn.00401311
push 0
mov eax, dword [0x4142f0]
xor ecx, ecx
mov ebx, 0x4135be
mov edx, 0x4135c3
call fcn.00401010
mov ebx, eax
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x4131f4
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
mov edx, 0x413386
lea eax, [ebp - 0x114]
call fcn.0040c2b0
mov edx, ebx
lea eax, [ebp - 0x114]
call fcn.0040c2b0
lea eax, [ebp - 0x114]
push eax
push 0x4135cb
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
lea eax, [ebp - 0x114]
push eax
push 0x4134e9
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
mov edx, 0x4135d3
lea eax, [ebp - 0x114]
call fcn.0040c2b0
lea eax, [ebp - 0x114]
push eax
push 0x4135e0
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
lea eax, [ebp - 0x114]
call fcn.0040aa90
add eax, 2
mov esi, eax
cmp dword [0x4142f4], 0
je 0x402105
lea esi, [eax + 3]
push 0
mov eax, dword [0x4142f0]
xor ecx, ecx
xor ebx, ebx
mov edx, 0x4135ee
call fcn.00401010
mov ebx, eax
test eax, eax
jne 0x40214d
push 0x4135f5
call fcn.0040a9d4
add esp, 4
push 0x10
mov ebx, dword [0x41551c]
push ebx
push 0x413620
push 0
call dword [sym.imp.USER32.DLL_MessageBoxA]
mov eax, 0xffffffff
jmp 0x4019d8
push eax
push 0x413661
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
mov eax, ebx
call fcn.0040aa90
inc eax
add esi, eax
push 0
mov eax, dword [0x4142f0]
xor ecx, ecx
mov ebx, 0x41366f
mov edx, 0x413671
call fcn.00401010
mov ebx, eax
push eax
push 0x413676
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
mov eax, ebx
call fcn.0040aa90
inc eax
add esi, eax
push 0
mov eax, dword [0x4142f0]
xor ecx, ecx
xor ebx, ebx
mov edx, 0x413682
call fcn.00401010
mov ebx, eax
test eax, eax
jne 0x4021d0
mov edx, dword [0x41551c]
lea eax, [ebp - 0x114]
call fcn.0040c130
lea eax, [ebp - 0x114]
call fcn.0040c510
lea ebx, [ebp - 0x114]
push ebx
push 0x413688
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
mov eax, ebx
call fcn.0040aa90
inc eax
add esi, eax
push 0x413691
push 0x41355a
call dword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableA]
mov edx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x118]
call fcn.0040184f
add esi, eax
lea eax, [esi + 1]
call fcn.0040c2e0
mov edi, eax
mov ebx, esi
xor edx, edx
call fcn.0040aa70
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x4135e0
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
mov eax, edi
mov byte [eax], 0x22
lea ebx, [eax + 1]
lea edx, [ebp - 0x114]
mov eax, ebx
call fcn.0040c130
mov eax, ebx
call fcn.0040aa90
add ebx, eax
mov byte [ebx], 0x22
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x413661
inc ebx
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
mov byte [ebx], 0x20
inc ebx
lea edx, [ebp - 0x114]
mov eax, ebx
call fcn.0040c130
mov eax, ebx
call fcn.0040aa90
add ebx, eax
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x413676
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
cmp byte [ebp - 0x114], 0x2d
jne 0x4022af
cmp byte [ebp - 0x113], 0
je 0x4022c9
mov byte [ebx], 0x3a
inc ebx
lea edx, [ebp - 0x114]
mov eax, ebx
call fcn.0040c130
mov eax, ebx
call fcn.0040aa90
add ebx, eax
cmp dword [0x4142f4], 0
je 0x4022de
mov byte [ebx], 0x20
inc ebx
mov byte [ebx], 0x2d
inc ebx
mov byte [ebx], 0x64
inc ebx
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x413688
call dword [sym.imp.KERNEL32.DLL_GetEnvironmentVariableA]
mov byte [ebx], 0x20
inc ebx
lea edx, [ebp - 0x114]
mov eax, ebx
call fcn.0040c130
mov eax, ebx
call fcn.0040aa90
mov ebx, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x118]
mov eax, edi
call fcn.0040173d
xor edx, edx
mov eax, edi
call fcn.0040186e
mov edx, eax
test edi, edi
je 0x402336
mov eax, edi
call fcn.0040c400
mov eax, edx
jmp 0x4019d8