Function at 0x4244ce
Capabilities:
Accept command line arguments
Check for time delay via gettickcount
Enumerate processes
Query or enumerate registry value
Set environment variable
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x458
mov eax, dword [0x5836e0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
mov dword [ebp - 0x44c], eax
xor ebx, ebx
mov eax, dword [ebp + 8]
push edi
mov edi, ebx
mov dword [0x5a229c], eax
mov dword [0x5ab1f4], eax
mov dword [0x5ab1f8], ebx
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
jne 0x424519
push 0x42092e
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
push 0x114
push ebx
mov esi, 0x5a22c8
push esi
call fcn.004f5a90
push esi
mov dword [0x5a22c8], 0x114
call fcn.004e3525
mov eax, dword [0x5a22cc]
add esp, 0x10
movzx ecx, byte [0x5a22d0]
shl eax, 8
or ecx, eax
mov word [0x58115c], cx
call fcn.004e1c20
mov dword [0x5b2a58], 0x421ef1
mov dword [0x5b2a5c], 0x44a088
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x5a242c], eax
mov dword [0x5ab1bc], 0x4ee562
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
add esi, eax
push esi
call fcn.004ff68b
mov eax, 0x600
pop ecx
cmp word [0x58115c], ax
jb 0x4245ad
call fcn.0043a62d
lea ecx, [ebp - 0x218]
call fcn.004e25a1
mov esi, dword [ebp - 0x44c]
test esi, esi
je 0x4245e9
cmp byte [esi], bl
je 0x4245e9
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ecx, [eax + 1]
push ecx
push eax
lea ecx, [ebp - 0x218]
call fcn.004e2851
push eax
push 0xffffffffffffffff
push esi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ecx, [ebp - 0x160]
call fcn.004e25a1
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x160]
call fcn.004e2ad6
lea ecx, [ebp - 0x160]
call fcn.004e2932
test al, al
je 0x424629
push 0xffffffffffffffff
push 0x514870
lea ecx, [ebp - 0x160]
call fcn.004e2ad6
lea ecx, [ebp - 0x160]
call fcn.0044612f
push eax
call fcn.0041fd71
pop ecx
call fcn.004202bd
mov ecx, 0x600
mov dword [0x5a2408], eax
cmp word [0x58115c], cx
jb 0x42465a
push eax
call fcn.0043a591
pop ecx
call fcn.004e3d43
mov byte [0x5a22bd], al
test al, al
je 0x424676
push str.Liberation_Mono
push 0x20
push 0x581160
jmp 0x4246c2
cmp dword [0x5a22cc], 6
jb 0x4246c7
push ebx
lea eax, [ebp - 0x44c]
mov dword [ebp - 0x44c], ebx
push eax
push ebx
push 0x1048
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
je 0x4246b6
cmp dword [ebp - 0x44c], ebx
je 0x4246b6
push str.Consolas
push 0x20
push 0x581160
call fcn.00401a0b
push str.Segoe_UI
push 0x20
push str.Tahoma
call fcn.00401a0b
call fcn.004e3b22
mov byte [0x5a22be], al
test al, al
je 0x4247d0
mov dword [ebp - 0x44c], ebx
call dword [sym.imp.KERNEL32.dll_GetOEMCP]
mov esi, eax
call fcn.004e3cd3
movzx ecx, al
neg ecx
sbb ecx, ecx
and ecx, 0x100
or ecx, 0x20019
test esi, esi
je 0x4247d0
lea eax, [ebp - 0x44c]
push eax
push ecx
push ebx
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionConsoleTrueTypeFont
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4247d0
push esi
lea eax, [ebp - 0x104]
push 0x521bcc
push eax
call fcn.00409b67
push 0x80
lea eax, [ebp - 0x84]
push ebx
push eax
call fcn.004f5a90
add esp, 0x18
mov dword [ebp - 0x454], 0x7e
lea eax, [ebp - 0x454]
push eax
lea eax, [ebp - 0x84]
push eax
push ebx
push ebx
lea eax, [ebp - 0x104]
push eax
push dword [ebp - 0x44c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x4247c4
cmp word [ebp - 0x84], bx
je 0x4247c4
push 0x3f
pop eax
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.004f5617
pop ecx
pop ecx
test eax, eax
jne 0x4247c4
cmp word [ebp - 0x84], 0x2a
lea ecx, [ebp - 0x84]
push 0x20
lea eax, [ebp - 0x82]
cmovne eax, ecx
push eax
push 0x5811e0
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push dword [ebp - 0x44c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
push ebx
push str.ConEmuFakeDT
call esi
push ebx
push str.ConEmuHooks
call esi
push 0x14
call fcn.004e1bc1
pop ecx
test eax, eax
je 0x42480a
mov dword [eax + 0x10], ebx
mov dword [eax], 0xac
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], 0xcccccccc
jmp 0x42480c
mov eax, ebx
push 0x140
mov dword [0x5a2294], eax
call fcn.004e1bc1
pop ecx
test eax, eax
je 0x424829
mov ecx, eax
call fcn.00441ec4
jmp 0x42482b
mov eax, ebx
push 0x12f00
mov dword [0x5a2298], eax
call fcn.004e1bc1
pop ecx
test eax, eax
je 0x424848
mov ecx, eax
call fcn.0046781b
jmp 0x42484a
mov eax, ebx
push 0x790c
mov dword [0x5a23f0], eax
call fcn.004e1bc1
pop ecx
test eax, eax
je 0x424867
mov ecx, eax
call fcn.00409c70
jmp 0x424869
mov eax, ebx
mov dword [0x5a22a0], eax
call fcn.00450039
push 1
push 0x1e
mov ecx, 0x5a241c
call fcn.0040f155
push 1
push 0x1e
mov ecx, 0x5a240c
call fcn.0040f155
call fcn.004e4204
mov dword [0x5ab1f0], eax
call fcn.004ec51e
mov ecx, dword [0x5a2408]
mov dword [ecx + 0x48], eax
lea ecx, [ebp - 0x1bc]
mov eax, dword [0x5a23f0]
mov dword [eax + 0x11a68], ebx
mov eax, dword [0x5a23f0]
mov dword [eax + 0x11a6c], ebx
call fcn.004e25a1
lea eax, [ebp - 0x450]
mov byte [ebp - 0x445], bl
push eax
lea ecx, [ebp - 0x160]
mov dword [ebp - 0x450], ebx
call fcn.0044612f
mov ecx, dword [0x5a22a0]
push eax
lea ecx, [ecx + 0x3b4]
call fcn.00433398
test al, al
jne 0x424907
mov ebx, dword [ebp - 0x450]
jmp 0x42538c
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x9d0]
call fcn.00432d85
movzx eax, al
push eax
call fcn.0041fef2
pop ecx
test eax, eax
jns 0x424930
mov ebx, 0x95
jmp 0x42538c
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x9d0]
call fcn.00432d85
test al, al
je 0x42495e
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x9dc]
call fcn.00432d85
test al, al
jne 0x42538c
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x8e4], bl
je 0x424989
add ecx, 0x8dc
call fcn.00433371
mov ecx, dword [0x5a23f0]
push eax
call fcn.0046e101
mov ecx, dword [0x5a22a0]
add ecx, 0x900
call fcn.00432d85
mov ecx, dword [0x5a22a0]
test al, al
je 0x4249a5
call fcn.0041af1d
jmp 0x4249c7
cmp byte [ecx + 0x914], bl
je 0x4249c7
push 1
push ebx
add ecx, 0x90c
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
call fcn.0041ac84
call fcn.00422e62
mov ecx, dword [0x5a22a0]
push ebx
call fcn.0041ed47
mov ecx, dword [0x5a22a0]
mov byte [ebp - 0x446], bl
lea ecx, [ecx + 0xa00]
call fcn.00432d85
test al, al
je 0x424a0c
mov eax, dword [0x5a23f0]
mov byte [eax + 0x11a60], 1
mov ecx, dword [0x5a23ec]
call fcn.0045fedf
jmp 0x424a1f
mov ecx, dword [0x5a23ec]
lea eax, [ebp - 0x446]
push ebx
push eax
call fcn.00461437
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x824]
call fcn.004e2932
test al, al
jne 0x424ac5
mov eax, dword [0x5a22a0]
cmp dword [eax + 0x884], 0xffffffff
jne 0x424ac5
lea ecx, [ebp - 0x60]
call fcn.004e25a1
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x824]
call fcn.0044612f
mov dword [ebp - 0x454], eax
lea eax, [ebp - 0x60]
push ebx
push eax
lea eax, [ebp - 0x454]
push eax
call fcn.004e55bb
add esp, 0xc
test eax, eax
jne 0x424abd
lea ecx, [ebp - 0x60]
call fcn.0044612f
push eax
call fcn.004cbf16
pop ecx
test al, al
je 0x424abd
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x7c8]
call fcn.004e2830
lea ecx, [ebp - 0x60]
call fcn.0044612f
push eax
call fcn.004cc37c
pop ecx
lea ecx, [ebp - 0x60]
call fcn.004e25e0
jmp 0x4252fa
lea ecx, [ebp - 0x60]
call fcn.004e25e0
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x824]
call fcn.004e269c
test al, al
je 0x424b23
mov ecx, dword [0x5a22a0]
lea eax, [ebp - 0x445]
push eax
lea eax, [ebp - 0x1bc]
push eax
cmp dword [ecx + 0x884], 0xffffffff
sete al
movzx eax, al
push eax
movzx eax, byte [ecx + 0x880]
add ecx, 0x824
push eax
call fcn.0044612f
push eax
call fcn.00422164
add esp, 0x14
test eax, eax
je 0x424b23
mov ebx, eax
jmp 0x42538c
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0xa00]
call fcn.00432d85
test al, al
mov eax, dword [0x5a23f0]
jne 0x424b49
cmp byte [eax + 0x11a60], bl
jne 0x424b49
push 6
jmp 0x424b4b
push 0x16
pop ecx
xor esi, esi
cmp byte [eax + 0x11a61], bl
push 0x40
pop edx
cmovne esi, edx
xor eax, eax
cmp byte [ebp - 0x446], al
setne al
or esi, eax
or esi, ecx
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x824]
call fcn.0044612f
mov ecx, dword [0x5a23f0]
push eax
push esi
call fcn.0046e37e
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x8f0], bl
je 0x424bb2
add ecx, 0x8e8
call fcn.00433371
mov ecx, dword [0x5a23ec]
push eax
call fcn.00463e63
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x944], bl
je 0x424bdd
add ecx, 0x93c
call fcn.00433371
mov ecx, dword [0x5a23ec]
push eax
lea ecx, [ecx + 0x11608]
call fcn.004ce5b8
mov ecx, dword [0x5a22a0]
add ecx, 0x948
call fcn.00433371
test eax, eax
je 0x424c3f
mov eax, dword [0x5a23ec]
mov byte [eax + 0x113dc], 1
mov eax, dword [0x5a23ec]
mov eax, dword [eax + 0x113e0]
test eax, eax
je 0x424c19
push eax
call fcn.004e1bea
mov eax, dword [0x5a23ec]
pop ecx
mov dword [eax + 0x113e0], ebx
mov ecx, dword [0x5a22a0]
push ebx
lea ecx, [ecx + 0x948]
call fcn.00433371
push eax
call fcn.004e230a
pop ecx
pop ecx
mov ecx, dword [0x5a23ec]
mov dword [ecx + 0x113e0], eax
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x424c5d
push 1
push 1
push str.SettingsLoaded
call fcn.00410feb
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x15e4], bl
je 0x424ca5
add ecx, 0x9dc
call fcn.00432d85
test al, al
je 0x424c9f
push 1
lea ecx, [ebp - 0x458]
call fcn.0045d33a
push 1
push 1
call fcn.0042318e
pop ecx
pop ecx
push 0xa
pop ecx
test al, al
cmove edi, ecx
lea ecx, [ebp - 0x458]
call fcn.0045d35c
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x920], bl
je 0x424cf4
push 1
push 1
add ecx, 0x918
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
call fcn.0041ac84
test al, al
jne 0x424cd5
test edi, edi
jne 0x424cee
push 0xb
pop edi
jmp 0x424cee
mov ecx, dword [0x5a23ec]
push ebx
push ebx
call fcn.00465196
test eax, eax
jne 0x424cee
push 0xc
test edi, edi
pop eax
cmove edi, eax
mov ecx, dword [0x5a22a0]
add ecx, 0x9c4
call fcn.00432d85
test al, al
je 0x424d69
mov eax, dword [0x5a23ec]
mov byte [eax + 0xa5c], 1
mov eax, dword [0x5a23ec]
mov byte [eax + 0xa5d], 1
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x9dc]
call fcn.00432d85
test al, al
je 0x424d69
mov eax, dword [0x5a22a0]
mov ecx, dword [eax + 0x3e7c]
test ecx, ecx
je 0x424d5d
push 1
push 1
call fcn.00438141
mov ecx, dword [0x5a22a0]
push 1
push 1
mov ecx, dword [ecx + 0x3e7c]
call fcn.00438e2b
mov eax, dword [0x5a23f0]
mov byte [eax + 0x11a65], 1
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x9dc]
call fcn.00432d85
test al, al
jne 0x425373
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x954]
call fcn.00433371
test eax, eax
je 0x424db4
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x954]
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
call fcn.0041b03e
mov ecx, dword [0x5a22a0]
mov eax, dword [ecx + 0x3e68]
test eax, eax
je 0x424dd1
cmp dword [eax + 0x228], 0xffffffff
je 0x425295
call fcn.0040c33f
test al, al
je 0x425295
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x8d8], bl
je 0x424e09
add ecx, 0x8d0
call fcn.0043335f
mov ecx, dword [0x5a23f0]
push eax
call fcn.0046dfb7
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x8fc], bl
jne 0x424e3d
cmp dword [ebp + 0x14], 3
jne 0x424e28
mov eax, dword [0x5a23ec]
mov dword [eax + 0x11174], 0x520
jmp 0x424e54
cmp dword [ebp + 0x14], 2
je 0x424e34
cmp dword [ebp + 0x14], 7
jne 0x424e5a
mov byte [ecx + 0x3e8c], 1
jmp 0x424e54
add ecx, 0x8f4
call fcn.0043335f
mov ecx, dword [0x5a23ec]
mov dword [ecx + 0x11174], eax
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x9f0], bl
je 0x424e7f
add ecx, 0x9e8
call fcn.00432d85
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0x1119a], al
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x9fc], bl
je 0x424e9e
add ecx, 0x9f4
call fcn.00432d85
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0x113ec], al
mov ecx, dword [0x5a23f0]
call fcn.0046b57d
test al, al
jne 0x424ed0
mov ecx, dword [0x5a22a0]
push str.conman.exe
push ebx
push ebx
lea ecx, [ecx + 0x3b4]
call fcn.0043300a
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x424ee1
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x3b4]
call fcn.004353ce
cmp byte [ebp - 0x445], bl
je 0x424f1a
lea ecx, [ebp - 0x1bc]
call fcn.004e2932
test al, al
jne 0x424f1a
lea ecx, [ebp - 0x1bc]
call fcn.0044612f
push 0x3f
pop ecx
cmp word [eax], cx
jne 0x424f0e
add eax, 2
mov ecx, dword [0x5a23ec]
push eax
call fcn.0045f14e
mov ecx, dword [0x5a22a0]
lea ecx, [ecx + 0x180]
call fcn.0042f90e
mov eax, dword [0x5a2408]
cmp dword [eax + 0x48], ebx
je 0x424f49
mov ecx, dword [0x5a22a0]
push dword [eax + 0x48]
lea ecx, [ecx + 0x180]
call fcn.004305ef
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x984], bl
je 0x42500f
cmp byte [ecx + 0x990], bl
je 0x424f88
add ecx, 0x988
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
push 0x58
lea ecx, [ecx + 0x180]
call fcn.00431739
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x99c], bl
je 0x424fb5
add ecx, 0x994
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
push 0x59
lea ecx, [ecx + 0x180]
call fcn.00431739
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x9a8], bl
je 0x424fe2
add ecx, 0x9a0
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
push 0x57
lea ecx, [ecx + 0x180]
call fcn.00431739
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x9b4], bl
je 0x42500f
add ecx, 0x9ac
call fcn.00433371
mov ecx, dword [0x5a22a0]
push eax
push 0x48
lea ecx, [ecx + 0x180]
call fcn.00431739
mov ecx, dword [0x5a22a0]
cmp byte [ecx + 0x968], bl
je 0x425049
push ebx
push 0xffffffffffffffff
add ecx, 0x960
call fcn.0043335f
mov ecx, dword [0x5a22a0]
push eax
lea ecx, [ecx + 0x180]
call fcn.004303c5
mov eax, dword [0x5a23ec]
mov byte [eax + 0x10f98], 1
mov ecx, dword [0x5a22a0]
mov eax, dword [0x5a23ec]
cmp byte [eax + 0x11178], bl
je 0x425061
add ecx, 0x180
call fcn.00428c03
mov ecx, dword [0x5a23f0]
call fcn.0046b598
test al, al
je 0x42523e
mov ecx, dword [0x5a22a0]
push ebx
call fcn.0041ed47
test al, al
jne 0x42523e
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x4250a0
push 1
push 1
push str.Checking_for_existing_instance
call fcn.00410feb
push ebx
push str.VirtualConsoleClass
push ebx
push ebx
call dword [sym.imp.USER32.dll_FindWindowExW]
test eax, eax
jne 0x4251ad
mov eax, dword [0x5a23f0]
cmp dword [eax + 0x11a6c], ebx
jne 0x4251ad
mov ecx, dword [0x5a22a0]
push 1
push 1
push str.TH32CS_SNAPPROCESS
mov byte [ebp - 0x445], bl
call fcn.00410feb
push ebx
push 2
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov esi, eax
test esi, esi
je 0x4251ad
cmp esi, 0xffffffff
je 0x4251ad
push 0x228
lea eax, [ebp - 0x440]
mov dword [ebp - 0x444], 0x22c
push ebx
push eax
call fcn.004f5a90
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edi, eax
lea eax, [ebp - 0x444]
push eax
push esi
mov dword [ebp - 0x44c], edi
call sub.KERNEL32.dll_Process32FirstW
jmp 0x425186
cmp dword [ebp - 0x43c], edi
je 0x425179
lea eax, [ebp - 0x420]
push eax
call fcn.004e5a5b
mov edi, eax
pop ecx
test edi, edi
je 0x425173
push 0x52bd38
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x42518c
push str.ConEmu64.exe
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x42518c
mov edi, dword [ebp - 0x44c]
lea eax, [ebp - 0x444]
push eax
push esi
call sub.KERNEL32.dll_Process32NextW
test eax, eax
jne 0x425138
jmp 0x425193
mov byte [ebp - 0x445], 1
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp byte [ebp - 0x445], bl
je 0x4251ad
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x5a22a0]
push 1
push 1
push str.isFirstInstance
call fcn.00410feb
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov esi, eax
jmp 0x425216
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x4251eb
push 1
push 1
push str.Waiting_for_RunSingleInstance
call fcn.00410feb
mov ecx, dword [0x5a22a0]
push ebx
push ebx
call fcn.0041a3e6
test eax, eax
jg 0x4252b6
js 0x42529d
push 0xfa
call dword [sym.imp.KERNEL32.dll_Sleep]
call edi
sub eax, esi
cmp eax, 0x2710
ja 0x425226
mov ecx, dword [0x5a22a0]
push ebx
call fcn.0041ed47
test al, al
je 0x4251cd
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x42525c
push 1
push 1
push str.Existing_instance_was_terminated__continue_as_first_instance
call fcn.00410feb
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x42525c
push 1
push 1
push str.gpConEmu__Init
call fcn.00410feb
mov ecx, dword [0x5a22a0]
call fcn.0040f18d
test eax, eax
je 0x425295
call fcn.0041fbd0
test eax, eax
je 0x425295
mov ecx, dword [0x5a22a0]
test ecx, ecx
je 0x42528c
push 1
push 1
push str.gpConEmu__CreateMainWindow
call fcn.00410feb
mov ecx, dword [0x5a22a0]
call fcn.0040d5cd
test eax, eax
jne 0x4252cf
push 0x64
pop ebx
jmp 0x42538c
mov ecx, dword [0x5a22a0]
push 1
push 1
push str.Reusing_running_instance_is_not_allowed_here
call fcn.00410feb
jmp 0x425226
mov ecx, dword [0x5a22a0]
push 1
push 1
push str.Passed_to_first_instance__exiting
call fcn.00410feb
jmp 0x42538c
mov ecx, dword [0x5a22a0]
push ebx
call fcn.0041801d
push 1
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
call fcn.00421e3b
mov eax, dword [0x5a22a0]
mov edi, dword [eax + 0x704]
push ebx
push ebx
push ebx
push ebx
push str.MessageLoop_terminated
call fcn.00422955
mov ecx, dword [0x5a2298]
add esp, 0x14
call fcn.00445f68
call dword [sym.imp.ole32.dll_OleUninitialize]
push 0x5a22a0
call fcn.0041f495
mov dword [esp], 0x5a23f0
call fcn.00403ba7
mov dword [esp], 0x5a2298
call fcn.0041f4ee
mov dword [esp], 0x5a2294
call fcn.0041f556
mov dword [esp], 0x5a550c
call fcn.0041f4ba
mov dword [esp], 0x5a28e4
call fcn.0041f522
push ebx
push ebx
push ebx
push ebx
push str.Gui_terminated
call fcn.00422955
add esp, 0x18
call fcn.004e6969
test al, al
je 0x42538a
push edi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, edi
lea ecx, [ebp - 0x1bc]
call fcn.004e25e0
lea ecx, [ebp - 0x160]
call fcn.004e25e0
lea ecx, [ebp - 0x218]
call fcn.004e25e0
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004f4166
leave
ret 0x10