Function at 0x70e42d0a
Capabilities:
Set environment variable

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x70e6e9d4
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
push esi
mov eax, dword [section..data]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x14]
call fcn.70df39c7
lea eax, [ebp - 0x14]
push eax
push 0x70e42f8c
mov dword [ebp - 4], 0
call fcn.70e42c31
mov bl, 1
test al, al
je 0x70e42d65
push 0
push 0x70e42f8c
mov byte [edi], bl
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea ecx, [ebp - 0x14]
push ecx
push 0x70e42fb0
call fcn.70e42c31
test al, al
je 0x70e42dc8
lea esi, [edi + 0xc]
lea edx, [ebp - 0x14]
mov byte [edi + 0x2c], bl
cmp esi, edx
je 0x70e42dbb
mov eax, dword [esi + 4]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x70e42da9
mov eax, dword [esi + 4]
push eax
call fcn.70df3455
mov eax, dword [esi]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
push eax
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0
push 0x70e42fb0
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea ecx, [ebp - 0x14]
push ecx
push 0x70e42fd0
call fcn.70e42c31
test al, al
je 0x70e42e2b
lea esi, [edi + 0x14]
lea edx, [ebp - 0x14]
mov byte [edi + 0x2c], bl
cmp esi, edx
je 0x70e42e1e
mov eax, dword [esi + 4]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x70e42e0c
mov eax, dword [esi + 4]
push eax
call fcn.70df3455
mov eax, dword [esi]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
push eax
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0
push 0x70e42fd0
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea ecx, [ebp - 0x14]
push ecx
push 0x70e43000
call fcn.70e42c31
test al, al
je 0x70e42e92
lea esi, [edi + 4]
lea edx, [ebp - 0x14]
mov byte [edi + 0x2c], bl
mov ebx, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp esi, edx
je 0x70e42e83
mov eax, dword [esi + 4]
push eax
call ebx
test eax, eax
jne 0x70e42e71
mov eax, dword [esi + 4]
push eax
call fcn.70df3455
mov eax, dword [esi]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
push eax
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0
push 0x70e43000
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
jmp 0x70e42e98
mov ebx, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
lea ecx, [ebp - 0x14]
push ecx
push 0x70e43038
call fcn.70e42c31
test al, al
je 0x70e42ef4
lea esi, [edi + 0x1c]
lea edx, [ebp - 0x14]
cmp esi, edx
je 0x70e42ee7
mov eax, dword [esi + 4]
push eax
call ebx
test eax, eax
jne 0x70e42ed5
mov eax, dword [esi + 4]
push eax
call fcn.70df3455
mov eax, dword [esi]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
push eax
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0
push 0x70e43038
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
lea ecx, [ebp - 0x14]
push ecx
push 0x70e43054
call fcn.70e42c31
test al, al
je 0x70e42f50
lea esi, [edi + 0x24]
lea edx, [ebp - 0x14]
cmp esi, edx
je 0x70e42f43
mov eax, dword [esi + 4]
push eax
call ebx
test eax, eax
jne 0x70e42f31
mov eax, dword [esi + 4]
push eax
call fcn.70df3455
mov eax, dword [esi]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov eax, dword [ebp - 0x14]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
push eax
mov dword [esi + 4], eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
push 0
push 0x70e43054
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10]
push ecx
call ebx
test eax, eax
jne 0x70e42f79
mov edx, dword [ebp - 0x10]
push edx
call fcn.70df3455
mov eax, dword [ebp - 0x14]
add esp, 4
push eax
call fcn.70df3455
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret