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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2bc
mov eax, dword [0x10110164]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x3c
pop ecx
push 0x3a
mov eax, 0x81
mov word [ebp - 0x2b0], ax
pop eax
push 0x4c
pop ebx
mov word [ebp - 0x2ae], cx
mov word [ebp - 0x2ac], ax
push 0x48
pop eax
push 0x38
pop edi
mov word [ebp - 0x2aa], bx
mov word [ebp - 0x2a8], ax
push 0x37
mov word [ebp - 0x2a6], di
mov word [ebp - 0x2a4], cx
mov word [ebp - 0x2a2], ax
pop ecx
push 0x33
pop edx
mov word [ebp - 0x2a0], cx
push 0x36
mov word [ebp - 0x29e], dx
mov word [ebp - 0x29c], ax
pop eax
push 0x49
pop esi
mov word [ebp - 0x29a], cx
mov word [ebp - 0x298], ax
push 0x3a
pop ecx
push 0x6a
mov word [ebp - 0x296], si
pop eax
mov word [ebp - 0x294], dx
mov word [ebp - 0x292], cx
mov word [ebp - 0x290], ax
push 0x69
pop eax
mov word [ebp - 0x28e], cx
mov word [ebp - 0x28c], ax
push 0x3f
pop eax
push 0x3b
pop ecx
mov word [ebp - 0x28a], dx
mov word [ebp - 0x288], ax
push 0x37
pop eax
mov word [ebp - 0x286], cx
mov word [ebp - 0x284], ax
push 0x3a
pop eax
mov word [ebp - 0x282], ax
push 0x4a
mov word [ebp - 0x280], dx
pop eax
mov word [ebp - 0x27e], ax
push 0x3d
pop eax
push 0x3c
mov word [ebp - 0x27c], di
mov word [ebp - 0x27a], ax
pop edx
mov word [ebp - 0x278], dx
push 0x47
mov word [ebp - 0x276], si
pop eax
mov word [ebp - 0x274], ax
mov word [ebp - 0x272], cx
mov word [ebp - 0x270], bx
mov word [ebp - 0x26e], dx
push 0x37
mov word [ebp - 0x26c], ax
pop eax
mov word [ebp - 0x26a], ax
lea ecx, [ebp - 0x2b0]
push 0x3a
pop eax
mov word [ebp - 0x268], ax
mov esi, 0x104
add eax, 0x49
mov word [ebp - 0x266], ax
xor eax, eax
mov word [ebp - 0x264], ax
mov ax, word [ebp - 0x2b0]
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.10010f82
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x100c85c6
cmp eax, esi
jae 0x100c85c6
mov eax, dword [0x10201ab4]
lea ecx, [ebp - 0x2bc]
mov eax, dword [eax + 0x10]
mov edi, dword [eax + 0x38]
mov eax, 0x42b3
mov dword [ebp - 0x2bc], 0x4296
add edi, 4
mov word [ebp - 0x2b8], ax
add eax, 0x32
mov word [ebp - 0x2b6], ax
xor eax, eax
mov word [ebp - 0x2b4], ax
mov ax, word [ebp - 0x2b8]
mov esi, dword [edi]
lea eax, [ebp - 0x20c]
push eax
call fcn.1004ab46
push eax
push 0x3002
push edi
call dword [esi + 0x1c]
add esp, 0x10
mov dword [ebp - 0x260], 0x2296
mov eax, dword [ebp - 0x260]
xor eax, 0x7b
mov word [ebp - 0x25c], ax
mov eax, dword [ebp - 0x260]
inc eax
push 0x36
pop ebx
xor eax, ebx
mov word [ebp - 0x25a], ax
mov eax, dword [ebp - 0x260]
add eax, 2
push 0x34
pop esi
xor eax, esi
mov word [ebp - 0x258], ax
mov eax, dword [ebp - 0x260]
add eax, 3
xor eax, 0x46
mov word [ebp - 0x256], ax
mov eax, dword [ebp - 0x260]
add eax, 4
xor eax, 0x42
mov word [ebp - 0x254], ax
mov eax, dword [ebp - 0x260]
add eax, 5
xor eax, 0x32
mov word [ebp - 0x252], ax
mov eax, dword [ebp - 0x260]
add eax, 6
xor eax, ebx
mov word [ebp - 0x250], ax
mov eax, dword [ebp - 0x260]
add eax, 7
xor eax, 0x42
mov word [ebp - 0x24e], ax
mov eax, dword [ebp - 0x260]
add eax, 8
push 0x31
pop edx
xor eax, edx
mov word [ebp - 0x24c], ax
mov eax, dword [ebp - 0x260]
add eax, 9
push 0x2d
pop ecx
xor eax, ecx
mov word [ebp - 0x24a], ax
mov eax, dword [ebp - 0x260]
add eax, 0xa
xor eax, 0x42
mov word [ebp - 0x248], ax
mov eax, dword [ebp - 0x260]
add eax, 0xb
xor eax, edx
mov word [ebp - 0x246], ax
mov eax, dword [ebp - 0x260]
add eax, 0xc
xor eax, 0x30
mov word [ebp - 0x244], ax
mov eax, dword [ebp - 0x260]
add eax, 0xd
xor eax, 0x43
mov word [ebp - 0x242], ax
mov eax, dword [ebp - 0x260]
add eax, 0xe
xor eax, ecx
mov word [ebp - 0x240], ax
mov eax, dword [ebp - 0x260]
add eax, 0xf
xor eax, esi
mov word [ebp - 0x23e], ax
mov eax, dword [ebp - 0x260]
add eax, 0x10
xor eax, 0x64
mov word [ebp - 0x23c], ax
mov eax, dword [ebp - 0x260]
add eax, 0x11
xor eax, esi
mov word [ebp - 0x23a], ax
mov eax, dword [ebp - 0x260]
add eax, 0x12
xor eax, 0x63
mov word [ebp - 0x238], ax
mov eax, dword [ebp - 0x260]
add eax, 0x13
xor eax, ecx
mov word [ebp - 0x236], ax
mov eax, dword [ebp - 0x260]
add eax, 0x14
xor eax, 0x39
mov word [ebp - 0x234], ax
mov eax, dword [ebp - 0x260]
add eax, 0x15
xor eax, 0x35
mov word [ebp - 0x232], ax
mov eax, dword [ebp - 0x260]
add eax, 0x16
xor eax, edx
mov word [ebp - 0x230], ax
mov eax, dword [ebp - 0x260]
add eax, 0x17
xor eax, esi
mov word [ebp - 0x22e], ax
mov eax, dword [ebp - 0x260]
add eax, 0x18
xor eax, ecx
mov word [ebp - 0x22c], ax
mov eax, dword [ebp - 0x260]
add eax, 0x19
xor eax, 0x44
mov word [ebp - 0x22a], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1a
xor eax, 0x32
mov word [ebp - 0x228], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1b
xor eax, 0x37
mov word [ebp - 0x226], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1c
xor eax, ebx
mov word [ebp - 0x224], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1d
xor eax, 0x43
mov word [ebp - 0x222], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1e
xor eax, 0x41
mov word [ebp - 0x220], ax
mov eax, dword [ebp - 0x260]
add eax, 0x1f
xor eax, 0x35
mov word [ebp - 0x21e], ax
mov eax, dword [ebp - 0x260]
add eax, 0x20
xor eax, 0x46
mov word [ebp - 0x21c], ax
mov eax, dword [ebp - 0x260]
add eax, 0x21
xor eax, ebx
mov word [ebp - 0x21a], ax
mov eax, dword [ebp - 0x260]
add eax, 0x22
xor eax, 0x41
mov word [ebp - 0x218], ax
mov eax, dword [ebp - 0x260]
add eax, 0x23
xor eax, edx
mov word [ebp - 0x216], ax
mov eax, dword [ebp - 0x260]
add eax, 0x24
xor eax, esi
mov word [ebp - 0x214], ax
mov eax, dword [ebp - 0x260]
add eax, 0x25
xor eax, 0x7d
mov word [ebp - 0x212], ax
xor eax, eax
mov word [ebp - 0x210], ax
mov ax, word [ebp - 0x25c]
lea ecx, [ebp - 0x260]
push 0
call fcn.1000b49e
push eax
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100cc9b8
leave
ret