Function at 0x46e37e
Capabilities:
Set environment variable

Disassembly:
push 0x19c
mov eax, 0x50f827
call fcn.004f41e2
mov edi, ecx
mov ecx, dword [0x5a23ec]
push 1
call fcn.004673c5
test eax, eax
je 0x46e3ab
mov ecx, dword [0x5a22a0]
call fcn.0040d4ac
mov ecx, dword [0x5a28e4]
xor ebx, ebx
test ecx, ecx
je 0x46e3bd
push ebx
call fcn.004508b5
mov ecx, dword [0x5a23ec]
lea eax, [ebp - 0x1a8]
push eax
call fcn.0045ef5e
push dword [ebp - 0x1a4]
call fcn.004e47ca
pop ecx
mov dword [ebp - 0x198], eax
lea ecx, [ebp - 0x190]
lea eax, [ebp - 0x198]
push eax
call fcn.004e24e8
push 0x514870
lea ecx, [ebp - 0x190]
mov dword [ebp - 4], ebx
call fcn.004e2b97
push eax
push str.ConEmuCfgDir
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov eax, dword [0x5a22a4]
mov ebx, dword [ebp + 8]
test eax, eax
je 0x46e423
test bl, 8
je 0x46e480
mov eax, dword [0x5a23ec]
mov ecx, dword [eax + 0x1115c]
mov eax, dword [0x5a22a0]
mov dword [eax + 0x358], ecx
mov eax, dword [0x5a23ec]
mov ecx, dword [eax + 0x11160]
mov eax, dword [0x5a22a0]
mov dword [eax + 0x35c], ecx
mov eax, dword [0x5a23ec]
mov ecx, dword [eax + 0x11120]
mov eax, dword [0x5a22a0]
mov dword [eax + 0x320], ecx
mov eax, dword [0x5a23ec]
mov ecx, dword [eax + 0x1113c]
mov eax, dword [0x5a22a0]
mov dword [eax + 0x33c], ecx
mov eax, dword [0x5a22a4]
test eax, eax
jne 0x46e4c8
mov ecx, dword [0x5a22a0]
lea esi, [edi + 0x12034]
push esi
lea ecx, [ecx + 0x180]
call fcn.0042c5f4
push dword [esi]
lea eax, [ebp - 0xd8]
push dword [edi + 0x12038]
push str.DPI_initialized_to__i__i_r_n
push eax
call fcn.00409b7d
push 0
lea eax, [ebp - 0xd8]
push 1
push eax
call fcn.00421c79
add esp, 0x1c
mov eax, dword [0x5a23ec]
add eax, 0x1a
push 1
push eax
call fcn.004e99f9
pop ecx
pop ecx
test bl, 2
je 0x46e5c9
mov ecx, dword [0x5a22a0]
call fcn.0040eff3
mov esi, dword [0x5a23f0]
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x194], eax
call fcn.004e25a1
push 0
push 1
mov byte [ebp - 4], 1
call fcn.00450eba
pop ecx
pop ecx
add esi, 0x1187c
je 0x46e533
xor ecx, ecx
cmp word [esi], cx
je 0x46e535
push ecx
push ecx
push ecx
push 0x521a98
push esi
push 0x521bd4
jmp 0x46e53b
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push eax
push 0x5225e4
push dword [ebp - 0x194]
call fcn.004e23a5
add esp, 0x24
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x194]
lea ecx, [ebp - 0x134]
push eax
call fcn.004e2618
push ebx
lea ecx, [ebp - 0x134]
call fcn.0044612f
push eax
call fcn.00470083
mov eax, dword [0x5a23ec]
pop ecx
pop ecx
xor ecx, ecx
cmp byte [eax + 0x11198], cl
je 0x46e5bb
mov eax, dword [0x5a23f0]
cmp dword [eax + 0x11a68], ecx
jne 0x46e5bb
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x46e5a3
cmp word [eax], cx
jne 0x46e5bb
mov eax, dword [0x5a22a0]
cmp dword [eax + 0x708], 2
je 0x46e5bb
mov dword [edi + 0x11a6c], 1
mov byte [ebp - 4], cl
lea ecx, [ebp - 0x134]
call fcn.004e25e0
test bl, 1
je 0x46e5ef
mov ecx, dword [0x5a22a0]
call fcn.0040fa57
xor esi, esi
test al, al
jne 0x46e5f1
mov ecx, dword [0x5a23ec]
push esi
push 1
call fcn.00465196
jmp 0x46e5f1
xor esi, esi
cmp dword [0x5a22cc], 6
ja 0x46e605
jne 0x46e60a
cmp dword [0x5a22d0], 0
jbe 0x46e60a
call fcn.004b458b
mov ecx, dword [0x5a23ec]
call fcn.00464362
mov ecx, dword [0x5a23ec]
push 1
push 0xffffffffffffffff
call fcn.0045ec25
mov ecx, dword [0x5a2294]
call fcn.0044c7bc
mov ecx, dword [0x5a2294]
call fcn.0044c76d
mov eax, dword [0x5a23ec]
mov edx, 0x51f
mov ecx, dword [eax + 0x11174]
cmp ecx, edx
je 0x46e669
cmp ecx, 0x520
je 0x46e669
cmp ecx, 0x521
je 0x46e669
mov dword [eax + 0x11174], edx
mov eax, dword [0x5a23ec]
cmp dword [eax + 0xec4], esi
jne 0x46e6af
push 0x18
call fcn.004e1bc1
pop ecx
mov dword [ebp - 0x194], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x46e696
push 0x64
mov ecx, eax
call fcn.00408507
mov ecx, eax
xor eax, eax
jmp 0x46e69a
xor eax, eax
mov ecx, eax
mov byte [ebp - 4], al
xor esi, esi
mov eax, dword [0x5a23ec]
mov dword [eax + 0xec4], ecx
mov eax, dword [0x5a23ec]
cmp dword [edi + 0x11a68], esi
jne 0x46e6cf
cmp byte [eax + 0x10f91], 0
je 0x46e6cf
mov dword [edi + 0x11a68], 1
mov eax, dword [0x5a23ec]
mov ecx, dword [0x5a22a0]
add eax, 0x1a
push eax
call fcn.0040f237
mov eax, dword [0x5a23ec]
add eax, 0xbb8
push eax
call fcn.004a9507
pop ecx
mov ecx, dword [0x5a2298]
push ebx
call fcn.00445ddb
cmp dword [0x5a22a4], 0
jne 0x46e71c
mov eax, dword [0x5a23ec]
mov ecx, dword [eax + 0x11174]
mov eax, dword [0x5a22a0]
mov dword [eax + 0x314], ecx
jmp 0x46e73c
mov ecx, dword [0x5a22a0]
xor eax, eax
push eax
push eax
mov eax, dword [0x5a23ec]
lea ecx, [ecx + 0x180]
push dword [eax + 0x11174]
call fcn.004306d3
mov ecx, dword [0x5a22a0]
call fcn.0040f13f
test al, al
jne 0x46e756
mov ecx, dword [0x5a22a0]
call fcn.00412b20
lea ecx, [ebp - 0x190]
call fcn.004e25e0
call fcn.004f418c
ret 8