Function at 0x419eb1
Capabilities:
Set environment variable

Disassembly:
push ebp
mov ebp, esp
mov edi, edi
add esp, 0xffffffec
mov eax, dword [ebp + 8]
push ebx
xor ebx, ebx
cmp eax, ebx
mov dword [ebp - 0xc], ebx
jne 0x419edb
call fcn.0040bb94
mov dword [eax], 0x16
call fcn.0040bb42
or eax, 0xffffffff
jmp 0x419f49
push esi
mov esi, dword [eax]
cmp esi, ebx
push edi
mov dword [ebp - 4], esi
je 0x419f39
push 0x3d
push esi
call fcn.0041a1f5
pop edi
pop ecx
mov edi, eax
mov dword [ebp - 0x14], edi
cmp edi, ebx
je 0x419f39
cmp esi, edi
je 0x419f39
xor eax, eax
cmp byte [edi + 1], bl
sete al
mov dword [ebp - 8], eax
mov eax, dword [0x424004]
cmp eax, dword [0x424008]
jne 0x419f1f
call fcn.00419e51
mov dword [0x424004], eax
cmp eax, ebx
jne 0x419f83
cmp dword [ebp + 0xc], ebx
je 0x419f4c
cmp dword [0x42400c], ebx
je 0x419f4c
call fcn.00419780
or eax, eax
je 0x419f83
call fcn.0040bb94
mov dword [eax], 0x16
or eax, 0xffffffff
pop edi
pop esi
pop ebx
leave
ret
cmp dword [ebp - 8], ebx
jne 0x41a0ec
push 4
call fcn.0040d109
pop ecx
mov dword [0x424004], eax
cmp eax, ebx
je 0x419f44
mov dword [eax], ebx
cmp dword [0x42400c], ebx
jne 0x419f83
push 4
call fcn.0040d109
pop ecx
mov dword [0x42400c], eax
cmp eax, ebx
je 0x419f44
mov dword [eax], ebx
mov esi, dword [0x424004]
cmp esi, ebx
mov dword [ebp - 0x10], esi
je 0x419f44
sub edi, dword [ebp - 4]
push dword [ebp - 4]
call fcn.00419dff
mov edi, eax
cmp edi, ebx
pop ecx
jl 0x419ff4
cmp dword [esi], ebx
je 0x419ff4
lea esi, [esi + edi*4]
push dword [esi]
call fcn.00409842
pop ecx
cmp dword [ebp - 8], ebx
jne 0x419fd1
mov eax, dword [ebp - 4]
mov dword [esi], eax
mov eax, dword [ebp + 8]
mov dword [eax], ebx
jmp 0x41a047
mov eax, dword [esi + 4]
mov dword [esi], eax
inc edi
mov eax, dword [ebp - 0x10]
lea esi, [eax + edi*4]
cmp dword [esi], ebx
jne 0x419fc5
cmp edi, 0x3fffffff
jae 0x41a047
push 4
push edi
push dword [0x424004]
call fcn.0040d1e8
add esp, 0xc
cmp eax, ebx
je 0x41a047
jmp 0x41a042
cmp dword [ebp - 8], ebx
jne 0x41a0de
cmp edi, ebx
jge 0x41a003
neg edi
lea eax, [edi + 2]
cmp eax, edi
jl 0x419f44
cmp eax, 0x3fffffff
jae 0x419f44
push eax
push 4
push dword [0x424004]
call fcn.0040d1e8
add esp, 0xc
cmp eax, ebx
je 0x419f44
mov edx, dword [ebp - 4]
lea ecx, [eax + edi*4]
mov dword [ecx], edx
mov dword [ecx + 4], ebx
mov ecx, dword [ebp + 8]
mov dword [ecx], ebx
mov dword [0x424004], eax
cmp dword [ebp + 0xc], ebx
je 0x41a0b9
mov esi, dword [ebp - 4]
push 1
push esi
call fcn.00409310
pop ecx
add eax, 2
push eax
call fcn.0040d14e
pop edi
mov edi, eax
pop ecx
cmp edi, ebx
je 0x41a0b9
push esi
push esi
call fcn.00409310
pop ecx
add eax, 2
push eax
push edi
call fcn.00413c4b
add esp, 0xc
test eax, eax
jne 0x41a0d4
mov eax, edi
mov ecx, dword [ebp - 8]
sub eax, esi
add eax, dword [ebp - 0x14]
neg ecx
mov byte [eax], bl
inc eax
sbb ecx, ecx
not ecx
and ecx, eax
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
test eax, eax
jne 0x41a0b2
or dword [ebp - 0xc], 0xffffffff
call fcn.0040bb94
mov dword [eax], 0x2a
push edi
call fcn.00409842
pop ecx
cmp dword [ebp - 8], ebx
je 0x41a0cc
push dword [ebp - 4]
call fcn.00409842
mov eax, dword [ebp + 8]
pop ecx
mov dword [eax], ebx
mov eax, dword [ebp - 0xc]
jmp 0x419f47
push ebx
push ebx
push ebx
push ebx
push ebx
call fcn.0040baf0
push dword [ebp - 4]
call fcn.00409842
mov eax, dword [ebp + 8]
pop ecx
mov dword [eax], ebx
xor eax, eax
jmp 0x419f47