Function at 0x1004060c
Capabilities:
Create pipe

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007e0f9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x264
push esi
mov dword [ebp - 0x22c], 0xd8c4
mov byte [ebp - 0x35], 0
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x10040655
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetParent]
mov byte [ebp - 0x2e], 0
movzx eax, byte [ebp - 0x2e]
test eax, eax
je 0x10040672
push 0x259a
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_CombineRgn]
movzx eax, byte [ebp + 0xc]
test eax, eax
je 0x10040c46
mov dword [ebp - 0x50], 0x2799ac78
push 3
lea ecx, [ebp - 0x20c]
call fcn.10024520
and dword [ebp - 4], 0
mov dword [ebp - 0x230], 8
mov dword [ebp - 0xac], 0x8f59172d
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x18], 0
jmp 0x100406c1
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x100406da
push dword [ebp - 0x18]
lea ecx, [ebp - 0x20c]
call fcn.1002458d
or dword [eax], 0xffffffff
jmp 0x100406ba
mov dword [ebp - 0x18], 0
jmp 0x100406ea
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10040700
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1c8], 0x33e34b64
jmp 0x100406e3
mov dword [ebp - 0x50], 0
jmp 0x10040710
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x16
jge 0x10040885
mov dword [ebp - 0x40], 0x4173
mov dword [ebp - 0xb4], 0xbffbefa5
mov dword [ebp - 0x144], 0x283bc1b0
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x10040750
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_RemovePropA]
cmp dword [ebp - 0x40], 0x4ad744d0
je 0x10040765
mov dword [ebp - 0x154], 1
jmp 0x1004076c
and dword [ebp - 0x154], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1c8]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x1c8], eax
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x40], eax
jle 0x100407a1
mov eax, 0x78e045dc
test eax, eax
jne 0x100407a1
and dword [ebp - 0x100], 0
jmp 0x100407ab
mov dword [ebp - 0x100], 1
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xa4], eax
push 0
lea ecx, [ebp - 0x20c]
call fcn.1002458d
mov ecx, dword [ebp - 0xa4]
mov dword [eax], ecx
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0xa4], eax
jne 0x100407ef
mov dword [ebp - 0x14c], 1
jmp 0x100407f6
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0xac], eax
jne 0x10040819
mov dword [ebp - 0x16c], 1
jmp 0x10040820
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x238], eax
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x34], eax
jne 0x1004083d
mov dword [ebp - 0x15c], 1
jmp 0x10040844
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x154]
add eax, 5
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
cmp eax, dword [ebp - 0x15c]
jl 0x10040870
mov dword [ebp - 0xc0], 1
jmp 0x10040877
and dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x34], eax
jmp 0x10040709
mov dword [ebp - 0x34], 0xfffffffd
jmp 0x10040895
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffff
jge 0x100408bd
mov dword [ebp - 0x1a8], 0x1b55
mov dword [ebp - 0x184], 1
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x184], eax
jmp 0x1004088e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20c]
call fcn.10024588
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x60], 0x8cccddd1
push 1
lea ecx, [ebp - 0x1f4]
call fcn.10024520
mov dword [ebp - 4], 1
mov dword [ebp - 0x90], 0x722ba7b7
mov dword [ebp - 0x138], 0xffff
push 2
lea ecx, [ebp - 0x168]
call fcn.10024520
mov byte [ebp - 4], 2
push 1
lea ecx, [ebp - 0x1e8]
call fcn.10024520
mov byte [ebp - 4], 3
mov dword [ebp - 0x10], 0
jmp 0x10040936
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 1
jge 0x10040952
push dword [ebp - 0x10]
lea ecx, [ebp - 0x1f4]
call fcn.1002458d
mov dword [eax], 5
jmp 0x1004092f
mov dword [ebp - 0x10], 0
jmp 0x10040962
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x1004097e
push dword [ebp - 0x10]
lea ecx, [ebp - 0x168]
call fcn.1002458d
mov dword [eax], 0xb168f92
jmp 0x1004095b
mov dword [ebp - 0x10], 0
jmp 0x1004098e
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 1
jge 0x100409aa
push dword [ebp - 0x10]
lea ecx, [ebp - 0x1e8]
call fcn.1002458d
mov dword [eax], 0xe3bf118c
jmp 0x10040987
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0xbc], eax
push 0
lea ecx, [ebp - 0x1f4]
call fcn.1002458d
mov ecx, dword [ebp - 0xbc]
mov dword [eax], ecx
cmp dword [ebp - 0xbc], 0xfffffffb
jne 0x100409dd
mov dword [ebp - 0xd0], 1
jmp 0x100409e4
and dword [ebp - 0xd0], 0
cmp dword [ebp - 0x60], 0
jne 0x100409f7
xor eax, eax
jne 0x100409f7
and dword [ebp - 0x110], 0
jmp 0x10040a01
mov dword [ebp - 0x110], 1
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x138]
cmp dword [ebp - 0x90], eax
jne 0x10040a27
mov dword [ebp - 0xc8], 1
jmp 0x10040a2e
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x60]
add ecx, dword [ebp - 0xc8]
imul eax, ecx
imul esi, eax, 0xb89b
push 0
lea ecx, [ebp - 0x168]
call fcn.1002458d
mov dword [eax], esi
push 0
lea ecx, [ebp - 0x168]
call fcn.1002458d
cmp dword [eax], 0
jne 0x10040a76
cmp dword [ebp - 0x138], 0
jne 0x10040a76
and dword [ebp - 0x118], 0
jmp 0x10040a80
mov dword [ebp - 0x118], 1
mov eax, dword [ebp - 0xd0]
cmp eax, dword [ebp - 0x118]
jl 0x10040a9a
mov dword [ebp - 0xd8], 1
jmp 0x10040aa1
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0xd8]
sub eax, 0x365fe389
jne 0x10040aba
mov dword [ebp - 0x158], 1
jmp 0x10040ac1
and dword [ebp - 0x158], 0
cmp dword [ebp - 0x158], 5
ja 0x10040b03
push 1
lea ecx, [ebp - 0x168]
call fcn.1002458d
cmp dword [eax], 0
je 0x10040b03
cmp dword [ebp - 0x90], 0
je 0x10040b03
push 0
lea ecx, [ebp - 0x168]
call fcn.1002458d
cmp dword [eax], 0
je 0x10040b03
mov dword [ebp - 0xe0], 1
jmp 0x10040b0a
and dword [ebp - 0xe0], 0
push 0
lea ecx, [ebp - 0x1e8]
call fcn.1002458d
mov ecx, dword [ebp - 0xe0]
mov dword [eax], ecx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1e8]
call fcn.10024588
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x168]
call fcn.10024588
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f4]
call fcn.10024588
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x248], 0xe559
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x224], 0x8070ade2
mov dword [ebp - 0x21c], 0x64d07ddb
mov dword [ebp - 0x234], 0xfffffffc
push 1
lea ecx, [ebp - 0x200]
call fcn.10024520
mov dword [ebp - 4], 4
mov dword [ebp - 0x1c], 0
jmp 0x10040bae
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x10040bc4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x23c], 0
jmp 0x10040ba7
mov dword [ebp - 0x1c], 0
jmp 0x10040bd4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x10040bf0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x200]
call fcn.1002458d
mov dword [eax], 0x955
jmp 0x10040bcd
push 0
lea ecx, [ebp - 0x200]
call fcn.1002458d
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x120]
mov dword [ecx], eax
mov byte [ebp - 0x27], 0
movzx eax, byte [ebp - 0x27]
test eax, eax
je 0x10040c26
call dword [sym.imp.USER32.dll_EndMenu]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x200]
call fcn.10024588
mov eax, dword [ebp - 0x18c]
mov dword [eax], 9
jmp 0x100415fc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x24], 2
mov dword [ebp - 0x1dc], 0xa0e6
mov dword [ebp - 0x1d8], 0xa0e6
mov dword [ebp - 0x1d4], 0xa0e6
mov dword [ebp - 0x1d0], 0xa0e6
lea ecx, [ebp - 0x81]
call fcn.10008f5a
push eax
lea eax, [ebp - 0x1cc]
push eax
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [ebp - 0x270]
call fcn.1002459c
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1c0]
call fcn.10024562
mov dword [ebp - 4], 5
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x58], 0xf63588c5
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x24], 0x16
jmp 0x10040cdf
mov eax, dword [ebp - 0x24]
dec eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x14
jle 0x10040d18
mov dword [ebp - 0x70], 0x876942a1
mov dword [ebp - 0x70], 0
jmp 0x10040cfc
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jg 0x10040d16
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x10040d14
call dword [sym.imp.USER32.dll_DestroyCaret]
jmp 0x10040cf5
jmp 0x10040cd8
mov dword [ebp - 0x24], 0
jmp 0x10040d28
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jg 0x10041024
mov dword [ebp - 0x1a0], 1
mov dword [ebp - 0xf0], 0x57f6cc9c
mov dword [ebp - 0x188], 0xcf041577
mov dword [ebp - 0x80], 0xe283d1f0
mov dword [ebp - 0x88], 0xfffffffe
mov dword [ebp - 0xb8], 0x909d
mov dword [ebp - 0x68], 0
jmp 0x10040d7b
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 1
jge 0x10040d91
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x8c], 0xb4956e74
jmp 0x10040d74
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xe8], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xe8]
mov dword [ebp + eax - 0x8c], ecx
cmp dword [ebp - 0xe8], 0
jne 0x10040dfe
mov esi, dword [ebp - 0x78]
push 1
lea ecx, [ebp - 0x1c0]
call fcn.1002458d
cmp esi, dword [eax]
jge 0x10040ddd
mov dword [ebp - 0x140], 1
jmp 0x10040de4
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0xf0]
cmp dword [ebp - 0x140], eax
jl 0x10040dfe
mov dword [ebp - 0x180], 1
jmp 0x10040e05
and dword [ebp - 0x180], 0
mov dword [ebp - 0x58], 5
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0xf0]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
imul eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0x48]
jle 0x10040e36
mov dword [ebp - 0x128], 1
jmp 0x10040e3d
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0x128], eax
je 0x10040e57
mov dword [ebp - 0x190], 1
jmp 0x10040e5e
and dword [ebp - 0x190], 0
cmp dword [ebp - 0x88], 0
jne 0x10040e79
cmp dword [ebp - 0x188], 0
jne 0x10040e79
and dword [ebp - 0x198], 0
jmp 0x10040e83
mov dword [ebp - 0x198], 1
cmp dword [ebp - 0x48], 0xacb2d505
jne 0x10040e98
mov dword [ebp - 0xf8], 1
jmp 0x10040e9f
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf8]
add eax, 7
cmp eax, dword [ebp - 0x1a0]
je 0x10040ebc
mov dword [ebp - 0x150], 1
jmp 0x10040ec3
and dword [ebp - 0x150], 0
imul esi, dword [ebp - 0x150], 0xffff
push 2
lea ecx, [ebp - 0x1c0]
call fcn.1002458d
cmp esi, dword [eax]
jg 0x10040eea
mov dword [ebp - 0x98], 1
jmp 0x10040ef1
and dword [ebp - 0x98], 0
push dword [ebp - 0x24]
lea ecx, [ebp - 0x1c0]
call fcn.1002458d
mov eax, dword [eax]
cmp eax, dword [ebp - 0x98]
jle 0x10040f15
mov dword [ebp - 0x130], 1
jmp 0x10040f1c
and dword [ebp - 0x130], 0
cmp dword [ebp - 0x130], 5
je 0x10040f31
mov dword [ebp - 0x108], 1
jmp 0x10040f38
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x48], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x8c]
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x48], 1
jbe 0x10040f66
mov dword [ebp - 0x148], 1
jmp 0x10040f6d
and dword [ebp - 0x148], 0
cmp dword [ebp - 0x148], 0xec7d
je 0x10040f85
mov dword [ebp - 0xc4], 1
jmp 0x10040f8c
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x48], eax
imul eax, dword [ebp - 0x48], 0xfffffffe
mov dword [ebp - 0x58], eax
imul eax, dword [ebp - 0x78], 0x1401
cmp eax, dword [ebp - 0x58]
jle 0x10040fbd
mov dword [ebp - 0xcc], 1
jmp 0x10040fc4
and dword [ebp - 0xcc], 0
cmp dword [ebp - 0xcc], 0xe240
jge 0x10040fe9
push 0xfffffffffffffffc
pop eax
test eax, eax
je 0x10040fe9
cmp dword [ebp - 0x80], 0
je 0x10040fe9
mov dword [ebp - 0xd4], 1
jmp 0x10040ff0
and dword [ebp - 0xd4], 0
cmp dword [ebp - 0xd4], 0
jne 0x10041005
mov dword [ebp - 0xdc], 1
jmp 0x1004100c
and dword [ebp - 0xdc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xdc]
mov dword [ebp + eax - 0x8c], ecx
jmp 0x10040d21
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c0]
call fcn.10024588
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x1a4], eax
push 2
lea ecx, [ebp - 0x258]
call fcn.10024520
mov dword [ebp - 4], 6
mov dword [ebp - 0x5c], 0xeef20fe6
mov dword [ebp - 0x24c], 0xfffffffd
mov dword [ebp - 0x7c], 0
jmp 0x10041074
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 2
jge 0x10041090
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x258]
call fcn.1002458d
mov dword [eax], 0x571177e8
jmp 0x1004106d
mov dword [ebp - 0x5c], 0
jmp 0x100410a0
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jg 0x100410bf
mov dword [ebp - 0xe4], 0x363f
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
jmp 0x10041099
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x258]
call fcn.10024588
mov eax, dword [ebp - 0x1a4]
movzx eax, byte [eax]
test eax, eax
je 0x10041407
push 2
lea ecx, [ebp - 0x1b4]
call fcn.10024520
mov dword [ebp - 4], 7
mov dword [ebp - 0x240], 0xedfa
mov dword [ebp - 0x20], 0
jmp 0x1004110d
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10041123
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x268], 0x85f70ad6
jmp 0x10041106
mov dword [ebp - 0x20], 0
jmp 0x10041133
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1004114f
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1b4]
call fcn.1002458d
mov dword [eax], 0x20f89b54
jmp 0x1004112c
push 1
lea ecx, [ebp - 0x1b4]
call fcn.1002458d
and dword [eax], 0
jmp 0x10041185
push 1
lea ecx, [ebp - 0x1b4]
call fcn.1002458d
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0xec]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x1b4]
call fcn.1002458d
cmp dword [eax], 2
jg 0x100413e4
mov dword [ebp - 0x4c], 9
mov byte [ebp - 0x2b], 0
movzx eax, byte [ebp - 0x2b]
test eax, eax
je 0x100411bd
push 0
push 0
push 0xf14
call dword [sym.imp.ADVAPI32.dll_CopySid]
mov dword [ebp - 0x4c], 2
jmp 0x100411cd
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x100413df
mov dword [ebp - 0x6c], 0xd962ee6d
push 3
lea ecx, [ebp - 0x218]
call fcn.10024520
mov byte [ebp - 4], 8
mov dword [ebp - 0x64], 0
jmp 0x100411ff
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x1004121b
push dword [ebp - 0x64]
lea ecx, [ebp - 0x218]
call fcn.1002458d
mov dword [eax], 0xa9f8d19c
jmp 0x100411f8
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x1004122f
push 0
call dword [sym.imp.USER32.dll_IsRectEmpty]
mov dword [ebp - 0x6c], 2
jmp 0x1004123f
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
jl 0x100413cb
mov dword [ebp - 0x54], 5
mov dword [ebp - 0x54], 2
jmp 0x10041260
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jl 0x100413c6
mov dword [ebp - 0x3c], 0x3631e19e
mov dword [ebp - 0x124], 0x17a68fa
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 0
jmp 0x10041292
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 2
jg 0x100413c1
mov dword [ebp - 0x44], 0xfffffffb
mov dword [ebp - 0xf4], 0xe11914cc
mov dword [ebp - 0x44], 2
jmp 0x100412bd
mov eax, dword [ebp - 0x44]
dec eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jl 0x100413af
mov eax, dword [ebp - 0x54]
cmp dword [ebp + eax*4 - 0x268], 0
jne 0x100412e3
cmp dword [ebp - 0x44], 0
jne 0x100412e3
and dword [ebp - 0x114], 0
jmp 0x100412ed
mov dword [ebp - 0x114], 1
mov dword [ebp - 0xf4], 0x3b15a8d
cmp dword [ebp - 0xf4], 1
jne 0x10041312
cmp dword [ebp - 0x4c], 0
je 0x10041312
mov dword [ebp - 0xfc], 1
jmp 0x10041319
and dword [ebp - 0xfc], 0
cmp dword [ebp - 0xfc], 7
jge 0x1004132e
mov dword [ebp - 0x104], 1
jmp 0x10041335
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x104], eax
je 0x1004134c
mov dword [ebp - 0x10c], 1
jmp 0x10041353
and dword [ebp - 0x10c], 0
cmp dword [ebp - 0x10c], 0x8e60
jle 0x1004136e
cmp dword [ebp - 0x3c], 0
jne 0x1004136e
and dword [ebp - 0x11c], 0
jmp 0x10041378
mov dword [ebp - 0x11c], 1
mov esi, dword [ebp - 0x114]
add esi, dword [ebp - 0x11c]
push 1
lea ecx, [ebp - 0x218]
call fcn.1002458d
mov dword [eax], esi
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x100413aa
push 0x1d7f
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
jmp 0x100412b6
mov eax, dword [ebp - 0x124]
dec eax
mov dword [ebp - 0x124], eax
jmp 0x1004128b
jmp 0x10041259
jmp 0x10041238
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x218]
call fcn.10024588
jmp 0x100411c6
jmp 0x10041161
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b4]
call fcn.10024588
push 0
push 0x1d0e
push 0x20f3
push 0
call dword [sym.imp.GDI32.dll_SetPaletteEntries]
mov dword [ebp - 0x14], 0x7e17
mov dword [ebp - 0x94], 0xa7525d2d
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x174], 4
mov byte [ebp - 0x28], 0
movzx eax, byte [ebp - 0x28]
test eax, eax
je 0x10041445
push 0x21d1
push 0x114f
call dword [sym.imp.USER32.dll_SetCaretPos]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jle 0x10041459
mov dword [ebp - 0x134], 1
jmp 0x10041460
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x14], 5
jb 0x1004147b
mov dword [ebp - 0x12c], 1
jmp 0x10041482
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
sub eax, 0x3632b604
test eax, eax
jle 0x1004149d
mov dword [ebp - 0x19c], 1
jmp 0x100414a4
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x228], eax
mov eax, 0xb44cf592
test eax, eax
je 0x100414c8
cmp dword [ebp - 0x14], 0
je 0x100414c8
mov dword [ebp - 0x170], 1
jmp 0x100414cf
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x74], 0
jne 0x100414e2
cmp dword [ebp - 0x74], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jl 0x100414f6
mov dword [ebp - 0x13c], 1
jmp 0x100414fd
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x134]
cmp eax, dword [ebp - 0x13c]
jg 0x10041517
mov dword [ebp - 0x9c], 1
jmp 0x1004151e
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x174]
cmp dword [ebp - 0x9c], eax
jne 0x10041538
mov dword [ebp - 0xa0], 1
jmp 0x1004153f
and dword [ebp - 0xa0], 0
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xfffffffd
jl 0x100415c8
mov dword [ebp - 0x17c], 0x4ddc8777
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x10041573
push 0x86d
push 0
push 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov dword [ebp - 0x94], 1
cmp dword [ebp - 0x94], 0x89d9e62b
jb 0x10041595
mov dword [ebp - 0xa8], 1
jmp 0x1004159c
and dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0xa8]
jge 0x100415b3
mov dword [ebp - 0xb0], 1
jmp 0x100415ba
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x17c], eax
jmp 0x100415fc
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x100415fc
push 0
push 0x383
push 0xaee
push 0x7f5
push 0x1435
push 0xa7b
push 0x15d5
push 0
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret