Function at 0x4192a0
Capabilities:
Set environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x4038
call fcn.00401050
sub esp, eax
mov eax, dword [esp + eax]
mov edi, eax
mov eax, dword [eax]
test eax, eax
je 0x4193e8
mov ebx, edx
mov edx, dword [edx]
test edx, edx
je 0x4193e8
movzx esi, word [eax + 4]
mov edx, dword [eax + 8]
mov dword [edi], edx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_free]
movzx eax, si
mov dword [ebp - 0x4024], eax
test byte [0x423010], 8
jne 0x419380
mov eax, ebx
call sym._WCMD_popnumber
mov dword [ebp - 0x4020], eax
cmp si, 0x50
je 0x4194b0
ja 0x419360
cmp si, 0x21
je 0x419440
cmp si, 0x4e
jne 0x419460
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor eax, eax
neg edx
call sym._WCMD_pushnumber
mov eax, dword [ebx]
test eax, eax
jne case.0x419476.0
test byte [0x423010], 8
jne 0x419510
mov dword [ebp - 0x401c], 0x412
jmp 0x4193ff
cmp si, 0x7e
jne 0x419460
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor eax, eax
not edx
call sym._WCMD_pushnumber
jmp 0x419334
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Popped_operator__c_n
mov dword [esp + 8], str.WCMD_popoperator
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
test byte [0x423010], 8
je 0x4192f6
movzx eax, si
mov dword [esp + 0xc], str.Reducing_the_stacks___processing_operator__c_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
jmp 0x4192f6
test byte [0x423010], 8
jne 0x419480
mov dword [ebp - 0x401c], 0x413
mov eax, dword [ebp - 0x401c]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, ebx
call sym._WCMD_popnumber
movzx ecx, byte [ebp - 0x4020]
sar eax, cl
mov edx, eax
mov ecx, ebx
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
mov eax, dword [ebp - 0x401c]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, dword [ebp - 0x4020]
xor edx, edx
mov ecx, ebx
test esi, esi
sete dl
xor eax, eax
call sym._WCMD_pushnumber
jmp 0x419334
mov edx, dword [ebx]
test edx, edx
je 0x41933e
lea eax, [esi - 0x21]
cmp ax, 0x5d
ja case.0x419476.1
movzx eax, ax
jmp dword [eax*4 + 0x435484]
mov dword [esp + 0xc], str.No_operators_for_the_reduce_n
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
jmp 0x4193f5
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor eax, eax
call sym._WCMD_pushnumber
jmp 0x419334
test byte [0x423010], 2
je case.0x419476.0
mov eax, dword [ebp - 0x4024]
mov dword [esp + 0xc], str.Unrecognized_operator__c_n
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x423010
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_1
jmp case.0x419476.0
mov dword [esp + 0xc], str.No_operands_left_for_the_reduce__n
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
jmp 0x41934b
mov eax, dword [edx]
mov dword [ebp - 0x401c], eax
test eax, eax
jne 0x41934b
mov eax, ebx
call sym._WCMD_peeknumber
mov ecx, ebx
mov edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor eax, eax
mov ebx, 0x2a
call sym._WCMD_pushnumber
xor eax, eax
mov edx, 0x61
jmp 0x41959b
inc eax
movzx ebx, word [eax*4 + str.a_b_cd_efgh_i_j]
movzx edx, word [eax*4 + 0x438062]
cmp bx, 0x20
je 0x419898
cmp dx, si
jne 0x419580
mov dword [esp], 0xc
call sym._xalloc
mov edx, 0x3d
mov dword [eax], 1
mov esi, eax
mov word [eax + 4], dx
mov eax, dword [edi]
mov dword [esi + 8], eax
test byte [0x423010], 8
jne 0x4198ec
lea eax, [ebx - 0x21]
mov dword [edi], esi
xor edx, edx
cmp ax, 0x5d
ja 0x4195e6
movzx eax, ax
movsx edx, byte [eax + 0x437c60]
mov dword [esp], 0xc
mov dword [ebp - 0x4020], edx
call sym._xalloc
mov edx, dword [ebp - 0x4020]
mov word [eax + 4], bx
mov esi, eax
mov dword [eax], edx
mov eax, dword [edi]
mov dword [esi + 8], eax
test byte [0x423010], 8
jne 0x41961b
mov dword [edi], esi
jmp 0x4193ff
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], str.Pushed_operator__c_n
mov dword [esp + 8], str.WCMD_pushoperator
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
mov dword [edi], esi
jmp 0x4193ff
mov eax, dword [ebp - 0x4020]
lea edi, [ebp - 0x4018]
mov dword [esp + 8], 0x4350d6
mov dword [esp + 4], 0x2000
mov dword [esp + 0xc], eax
mov dword [esp], edi
call sym._swprintf.constprop.0
test byte [0x423010], 8
jne 0x419850
mov dword [esp + 4], edi
mov eax, dword [ebx]
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableW]
mov eax, ebx
sub esp, 8
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
xor edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
or edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov ecx, dword [ebp - 0x4020]
test ecx, ecx
je 0x419828
cdq
idiv ecx
mov ecx, ebx
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
imul edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
cmp dword [ebp - 0x4020], 0x1f
jbe 0x419840
mov ecx, ebx
xor edx, edx
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov ecx, dword [ebp - 0x4020]
test ecx, ecx
je 0x419828
cdq
mov ecx, ebx
idiv dword [ebp - 0x4020]
mov edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
and edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov eax, ebx
call sym._WCMD_popnumber
sub eax, dword [ebp - 0x4020]
jmp 0x41941d
mov eax, ebx
call sym._WCMD_popnumber
mov edx, dword [ebp - 0x4020]
mov ecx, ebx
add edx, eax
xor eax, eax
call sym._WCMD_pushnumber
mov dword [ebp - 0x401c], 0
jmp 0x4193ff
mov dword [ebp - 0x401c], 0x411
jmp 0x4193ff
movzx ecx, byte [ebp - 0x4020]
shl eax, cl
jmp 0x41941d
mov eax, edi
call sym._wine_dbgstr_wn.constprop.0
mov esi, eax
mov eax, dword [ebx]
mov eax, dword [eax + 4]
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Assigning__s_a_value__s_n
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
jmp 0x41967f
cmp dx, 0x20
jne 0x4195a0
test byte [0x423010], 2
je 0x4193f5
mov eax, dword [ebp - 0x4024]
mov dword [esp + 0xc], str.Unexpected_operator__c_n
mov dword [esp + 8], str.WCMD_reduce
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x423010
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_1
mov dword [ebp - 0x401c], 0x413
jmp 0x4193ff
mov dword [esp + 0x10], 0x3d
mov dword [esp + 0xc], str.Pushed_operator__c_n
mov dword [esp + 8], str.WCMD_pushoperator
mov dword [esp + 4], 0x423010
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_1
jmp 0x4195cf