Function at 0x1001a139
Capabilities:
Delete file

Disassembly:
mov eax, 0x10088791
call fcn.100882b0
sub esp, 0x194
push ebx
push esi
mov dword [ebp - 0x54], edx
push edi
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x1c], 0x51cfd1f2
mov dword [ebp - 0x18], 0xbd3aeb59
mov dword [ebp - 0x28], 0xce1a812c
push 4
call fcn.10016409
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x10], 0xffffffff
push 3
pop edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x2c], 0x17e5ed53
mov dword [ebp - 0x30], 0xfffffff6
mov dword [ebp - 0x10], ebx
jmp 0x1001a1a9
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xe0]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1001a199
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setne dl
xor ecx, ecx
mov dword [ebp - 0x34], edx
xor edx, edx
inc edx
sub edx, eax
mov eax, dword [ebp - 0x1c]
cmp edx, eax
mov eax, dword [ebp - 0x18]
setge cl
cmp ecx, 0xe9ab5c29
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
cmp dword [ebp - 0x34], ecx
setne dl
xor eax, eax
cmp edx, 1
setl al
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], 0x15
jmp 0x1001a3da
mov dword [ebp - 0x24], 0x3a5d
xor edx, edx
inc edx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], 0x7eeb
cmp dword [ebp - 0x24], ebx
jne 0x1001a2bf
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, 0xffffffff
mov eax, dword [ebp - 0xe0]
setge cl
mov dword [eax + 8], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
cmp eax, 0x9e46
setg cl
mov dword [ebp - 0x70], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x24]
imul edx, eax
mov eax, dword [ebp - 0x24]
cmp edx, eax
sete cl
xor edx, edx
inc edx
mov eax, edx
sub eax, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
je 0x1001a2b6
mov eax, edx
cmp dword [ebp - 0x70], ebx
jne 0x1001a2b8
mov eax, ebx
mov ecx, ebx
cmp eax, dword [ebp - 0x1c]
jl 0x1001a2c1
mov ecx, edx
mov eax, dword [ebp - 0x24]
add eax, ecx
jne 0x1001a2cb
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x70]
add eax, dword [ebp - 0x24]
cmp eax, 0xac7725ef
setne cl
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 9
cmp dword [ebp - 0x10], 0xffffffe5
jle 0x1001a3d7
mov esi, dword [ebp - 0xe0]
jmp 0x1001a30b
xor edx, edx
inc edx
push 7
pop eax
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x128]
push edx
call fcn.10016409
xor edx, edx
mov dword [ebp - 0x18], ebx
inc edx
jmp 0x1001a334
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1001a325
cmp dword [ebp - 0x20], ebx
je 0x1001a345
mov ecx, edx
cmp dword [ebp - 0x28], ebx
jne 0x1001a347
mov ecx, ebx
xor eax, eax
cmp ecx, edx
setle al
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x30], ebx
je 0x1001a359
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x74]
xor edx, edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
cmp eax, 1
setg dl
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x70]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x2682
setl cl
xor edx, edx
add eax, ecx
mov ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x128]
setg dl
imul edx, dword [esi + 8]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x1001a3bf
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegUnLoadKeyW]
lea ecx, [ebp - 0x128]
call fcn.1001648e
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe5
jg 0x1001a308
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe3
je 0x1001a229
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe0]
call fcn.1001648e
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x18], 0xb392
mov dword [ebp - 0x2c], 0xe418a527
push 2
mov dword [ebp - 0x20], 0xc3414b5
mov dword [ebp - 0x10], ebx
pop esi
jmp 0x1001a428
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x194], 1
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1001a417
mov dword [ebp - 0x10], ebx
jmp 0x1001a483
mov dword [ebp - 0x20], 0x977a124
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], 0xfaaa
mov dword [ebp - 0x2c], 1
mov eax, dword [ebp - 0x18]
cmp eax, 8
mov eax, dword [ebp - 0x10]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
add eax, 0x383c67ee
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff9
jne 0x1001a432
mov dword [ebp - 0x18], ebx
jmp 0x1001a4d7
mov dword [ebp - 0x28], 0x39e0
mov dword [ebp - 0x30], 0xaf2c9a13
mov dword [ebp - 0x30], 0xe974ca77
mov dword [ebp - 0x2c], 0xfffb
dec dword [ebp - 0x2c]
mov dword [ebp - 0x28], 1
cmp dword [ebp - 0x28], ebx
jl 0x1001a4d4
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x1001a4cf
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowPlacement]
dec dword [ebp - 0x28]
jns 0x1001a4b9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jle 0x1001a48e
mov dword [ebp - 0x30], 0xfffffffe
lea ecx, [ebp - 0xf8]
push 1
call fcn.10016409
push edi
lea ecx, [ebp - 0x160]
mov dword [ebp - 4], 1
call fcn.10016409
mov dword [ebp - 0x18], ebx
jmp 0x1001a51c
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf8]
mov dword [eax + ecx*4], 0x3ae35568
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x1001a509
mov dword [ebp - 0x18], ebx
jmp 0x1001a536
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x160]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a527
mov eax, dword [ebp - 0xf8]
mov edi, dword [sym.imp.USER32.dll_GetDC]
mov dword [eax], ebx
mov dword [ebp - 0x10], 0x8ab659d5
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a564
push 0x1714
call dword [sym.imp.USER32.dll_GetSysColorBrush]
mov dword [ebp - 0x10], ebx
jmp 0x1001a58a
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a587
push 0x79b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jle 0x1001a569
mov eax, dword [ebp - 0xf8]
inc dword [eax]
cmp dword [eax], esi
jne 0x1001a549
lea ecx, [ebp - 0x160]
call fcn.1001648e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf8]
call fcn.1001648e
push 4
pop eax
mov dword [ebp - 0x30], 0x5f394a2a
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x30], 0x2937a3a1
mov dword [ebp - 0x20], eax
push eax
call fcn.10016409
mov dword [ebp - 0x30], 0x64bae0f
mov dword [ebp - 0x18], ebx
jmp 0x1001a5ef
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x7c], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x1001a5e1
mov dword [ebp - 0x18], ebx
jmp 0x1001a60d
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x134]
mov dword [eax + ecx*4], 0x272b
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1001a5fa
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a623
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [ebp - 0x7c], ebx
mov eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 8
mov eax, dword [ebp - 0x20]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x134]
setle dl
add edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
sub eax, edx
neg eax
sbb eax, eax
inc eax
cmp eax, 0x555b
jge 0x1001a664
cmp dword [ebp - 0x7c], ebx
je 0x1001a664
xor eax, eax
inc eax
jmp 0x1001a666
mov eax, ebx
dec eax
lea ecx, [ebp - 0x134]
cmp eax, 0x89480189
sbb eax, eax
neg eax
mov dword [ebp - 0x30], eax
call fcn.1001648e
mov eax, 0x8144ad72
lea ecx, [ebp - 0x140]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x30], 0xfffffffa
push 3
call fcn.10016409
mov dword [ebp - 4], esi
push 3
mov dword [ebp - 0xc4], 0xf8ee
mov dword [ebp - 0x18], ebx
pop edx
jmp 0x1001a6d5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1a0], 1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1001a6c4
mov dword [ebp - 0x18], ebx
jmp 0x1001a6f2
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x140]
mov dword [eax + ecx*4], 0xe6dc660f
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1001a6df
lea eax, [ebp - 0xc4]
push eax
push 0x43b9
push ebx
call fcn.1001d08b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x140]
add esp, 0xc
call fcn.1001648e
push 3
lea ecx, [ebp - 0xec]
call fcn.10016409
push 3
pop edx
mov dword [ebp - 4], edx
mov dword [ebp - 0x10], 0x1cecb457
mov dword [ebp - 0x2c], 0x81479b69
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x10], ebx
jmp 0x1001a75b
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xec]
mov dword [eax + ecx*4], 0x9841b3c6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x1001a748
mov dword [ebp - 0x10], ebx
jmp 0x1001a835
push esi
lea ecx, [ebp - 0x94]
call fcn.10016409
mov dword [ebp - 0x18], ebx
jmp 0x1001a788
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x94]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1001a779
mov dword [ebp - 0x18], ebx
jmp 0x1001a7a3
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x18c], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1001a792
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a7c3
push ebx
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push ebx
push ebx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov eax, dword [ebp - 0x94]
mov dword [eax], esi
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a7df
push 0x1c95
call dword [sym.imp.USER32.dll_GetQueueStatus]
mov eax, dword [ebp - 0x94]
xor edx, edx
mov ecx, dword [eax]
mov eax, dword [ebp - 0xec]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x94]
mov eax, dword [ebp - 0xec]
mov ecx, dword [esi]
cmp ecx, dword [eax + ecx*4]
setne dl
xor eax, eax
cmp edx, 0x1464f16e
setne al
dec dword [esi]
mov dword [ebp - 0x184], eax
jns 0x1001a7cb
lea ecx, [ebp - 0x94]
call fcn.1001648e
inc dword [ebp - 0x10]
push 2
pop esi
cmp dword [ebp - 0x10], esi
jle 0x1001a768
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xec]
call fcn.1001648e
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x10], ebx
jne 0x1001a85c
xor al, al
jmp 0x1001b197
mov dword [ebp - 0x18], 0x75b57fd5
mov dword [ebp - 0x10], 0x7b1c2a2c
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x30], 0x2b29949d
mov dword [ebp - 0x18], ebx
jmp 0x1001a8cb
mov dword [ebp - 0x2c], 0x5fa5fef9
mov dword [ebp - 0x30], 0x425f5f99
dec dword [ebp - 0x2c]
mov dword [ebp - 0x10], 0xffffffe3
jmp 0x1001a8c2
mov dword [ebp - 0x30], 0xf6fb
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a8b9
push 0x1577
push 0x177b
push 0x2377
push ebx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffec
jle 0x1001a893
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x10
jg 0x1001a879
mov dword [ebp - 0x1c], 0x4e2d
lea ecx, [ebp - 0xa0]
push esi
call fcn.10016409
mov dword [ebp - 4], 4
mov dword [ebp - 0x18], 0xa6c6
mov dword [ebp - 0x24], 0xfc37
mov dword [ebp - 0x30], 0xad8edce5
mov dword [ebp - 0x10], ebx
jmp 0x1001a918
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xa0]
mov dword [eax + ecx*4], 0xad59e57a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1001a905
cmp dword [ebp - 0x1c], ebx
je 0x1001a974
mov dword [ebp - 0x10], ebx
jmp 0x1001a934
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x180], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1001a927
mov dword [ebp - 0x1c], ebx
jmp 0x1001a948
inc dword [ebp - 0x17c]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jle 0x1001a93f
mov dword [ebp - 0x1c], ebx
jmp 0x1001a96c
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a969
push 0x7373
push ebx
call fcn.1001b1e6
pop ecx
pop ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x27
jle 0x1001a953
jmp 0x1001a9e5
push ebx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x815898f0
push eax
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x34], 0xfffffffb
push eax
call fcn.1001caf0
mov ecx, dword [ebp - 0x30]
xor edx, edx
add ecx, dword [ebp - 0x1c]
add esp, 0xc
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
sub eax, edx
cmp eax, 0x1b0c
setge cl
cmp dword [ebp - 0x50], ecx
jle 0x1001a9c4
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x18], ebx
je 0x1001a9db
mov eax, dword [ebp - 0xa0]
cmp dword [eax], ebx
je 0x1001a9db
xor ecx, ecx
inc ecx
jmp 0x1001a9dd
mov ecx, ebx
mov eax, dword [ebp - 0x50]
sub eax, ecx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xfffffff0
je 0x1001aa95
mov esi, dword [ebp - 0xa0]
mov eax, 0xbecc33ba
mov dword [ebp - 0x20], ebx
xor ecx, ecx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x5c]
cmp eax, dword [esi + 4]
setle cl
cmp dword [ebp - 0x5c], ecx
jg 0x1001aa28
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x18]
test eax, eax
setns cl
xor edx, edx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x5c]
cmp eax, 0xb5bcdce
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x64]
setge dl
imul ecx, edx
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x5c]
mov ecx, 0x70c0f3ad
sete dl
sub ecx, edx
sub ecx, eax
mov eax, dword [ebp - 0x24]
sub ecx, eax
mov eax, 0xbecc33ba
mov dword [ebp - 0x30], ecx
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff0
jne 0x1001a9fd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa0]
call fcn.1001648e
lea eax, [ebp - 0x54]
push eax
push 0x673f
push 0xc38
push ebx
push 0x7eef
call fcn.1001d027
add esp, 0x14
lea ecx, [ebp - 0x14c]
push 1
call fcn.10016409
mov dword [ebp - 0x10], 0x8094a188
mov dword [ebp - 0x10], ebx
jmp 0x1001aaec
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14c]
mov dword [eax + ecx*4], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 1
jl 0x1001aad9
mov dword [ebp - 0x10], ebx
jmp 0x1001ab46
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001ab43
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
push 0x264f
push 0x323
push 0x121e
push ebx
push 0xb0d
push 0x19
call esi
push eax
call edi
push eax
push 0x1f25
push 0x12f
push 0x1bdc
push 0x14a5
call esi
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_MaskBlt]
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jle 0x1001aaf7
lea ecx, [ebp - 0x14c]
call fcn.1001648e
push 3
pop esi
push esi
lea ecx, [ebp - 0x104]
call fcn.10016409
mov dword [ebp - 4], 5
lea eax, [ebp - 0x160]
push dword [ebp - 0x68]
movdqa xmm0, xmmword [0x10008260]
lea ecx, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x170]
mov dword [ebp - 0x2c], 0xf0720718
push eax
push ebx
movdqu xmmword [ebp - 0x170], xmm0
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xb4], ebx
call fcn.10017aee
mov dword [ebp - 0x20], 0xf2ba167c
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x10], ebx
jmp 0x1001abdb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x104]
mov dword [eax + ecx*4], 0xde713a47
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1001abc8
mov ecx, dword [ebp - 0x104]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xbc]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0xbc]
add eax, 0x4f78
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], eax
call fcn.1001648e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x104]
call fcn.1001648e
mov dword [ebp - 0x24], 0x2ae7b79f
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x1c], 0xf746e33a
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x10], 0x752570e
push esi
call fcn.10016409
mov dword [ebp - 0x20], 0xc507b392
xor edx, edx
mov dword [ebp - 0x30], 0x592e0c80
inc edx
mov dword [ebp - 0x2c], edx
push 2
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x18], ebx
pop edi
jmp 0x1001ac7e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4c], 0xfffffff7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001ac70
mov dword [ebp - 0x18], ebx
jmp 0x1001ac97
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x110]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1001ac88
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x48]
sbb edx, edx
inc edx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x48]
jge 0x1001acb9
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x110]
push 7
pop ecx
inc dword [eax + 8]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
neg eax
cmp ecx, eax
sbb edx, edx
inc edx
imul edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
add edx, 0x223fa3a9
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp ecx, eax
setl dl
xor ecx, ecx
add edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
cmp edx, eax
setne cl
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], ebx
jne 0x1001ad37
cmp dword [ebp - 0x28], ebx
jne 0x1001ad37
cmp dword [ebp - 0x20], ebx
jne 0x1001ad37
mov eax, ebx
jmp 0x1001ad3a
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, dword [ebp - 0x48]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
sete cl
xor edx, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp eax, ecx
mov eax, dword [ebp - 0x48]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x48]
setne cl
cmp ecx, 4
mov ecx, dword [ebp - 0x2c]
sbb esi, esi
sub ecx, eax
mov eax, dword [ebp - 0x24]
xor edx, edx
inc esi
cmp ecx, 1
setg dl
xor ecx, ecx
cmp esi, eax
setl cl
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x110]
setg al
mov dword [ebp - 0x24], eax
call fcn.1001648e
push edi
lea ecx, [ebp - 0x11c]
call fcn.10016409
push 7
mov dword [ebp - 0x28], 0xfffffff7
pop eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], 0x338886a6
mov dword [ebp - 0x10], ebx
jmp 0x1001adeb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x11c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1001addc
dec dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x5b0b
mov esi, dword [ebp - 0x11c]
setne cl
xor edx, edx
add ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp ecx, dword [esi + 4]
setg dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
setge cl
mov dword [esi + 4], ecx
inc edx
xor ecx, ecx
mov byte [ebp - 0x11], bl
cmp edx, eax
setl cl
cmp ecx, 5
je 0x1001ae51
cmp byte [ebp - 0x11], 0
je 0x1001ae6a
push ebx
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetPropA]
jmp 0x1001ae6a
cmp byte [ebp - 0x11], 0
je 0x1001ae6a
push ebx
push ebx
push 0xd15
push 0x641
push ebx
call dword [sym.imp.USER32.dll_ModifyMenuW]
lea ecx, [ebp - 0x11c]
call fcn.1001648e
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x14], 0x10
jb 0x1001ae82
mov ecx, dword [eax]
jmp 0x1001ae84
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1001ae8e
mov edx, dword [eax]
jmp 0x1001ae90
mov edx, eax
mov eax, dword [eax + 0x10]
add eax, edx
cmp ecx, eax
je 0x1001afb9
mov al, byte [ecx]
cmp al, 0x30
jl 0x1001aebd
cmp al, 0x39
jg 0x1001aebd
mov esi, dword [ebp - 0x54]
movsx eax, al
imul edx, dword [esi], 0xa
add edx, 0xffffffd0
add eax, edx
inc ecx
mov dword [esi], eax
mov eax, dword [ebp - 0x3c]
jmp 0x1001ae84
mov dword [ebp - 0x30], 0xfb0b
mov dword [ebp - 0x10], ebx
jmp 0x1001aeda
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x154], 0xc1ec2db2
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1001aec9
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001aeef
push ebx
call fcn.1001d580
pop ecx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x54]
mov dword [eax], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x68], 0x275ff444
mov dword [ebp - 0xd4], 0x7c71
mov dword [ebp - 0xd0], 0xfffffffc
mov dword [ebp - 0x40], ebx
jmp 0x1001af96
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xc8], 4
push eax
lea eax, [ebp - 0xc0]
mov dword [ebp - 0xcc], 0xce3051eb
push eax
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xc0], 0xfffffffb
push eax
push ebx
lea eax, [ebp - 0x40]
push eax
push 0x284a
lea eax, [ebp - 0xd4]
push eax
push 0x6674
lea eax, [ebp - 0xd0]
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.1001d0d6
push 0x2d19
push 0x230f
lea eax, [ebp - 0x35]
mov byte [ebp - 0x35], bl
push ebx
push eax
call fcn.1001b2a2
add esp, 0x38
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xa
jg 0x1001af20
push 0x51f8
push ebx
push 0x2246
push 0x338c
call fcn.1001dd9e
add esp, 0x10
jmp 0x1001a855
mov dword [ebp - 0x28], 0x3df75dce
mov dword [ebp - 0x24], 0xfffffff7
mov dword [ebp - 0x1c], 0xbe02189f
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], 0xfffffff5
jg 0x1001b195
push 3
pop esi
xor edx, edx
push 0xfffffffffffffffe
inc edx
pop edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x30], 0x6f4ed832
mov dword [ebp - 0x10], ebx
jmp 0x1001b017
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x88], 0xa35f394a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1001b006
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001b02f
push ebx
call dword [sym.imp.KERNEL32.dll_GetThreadPriority]
xor edx, edx
inc edx
mov dword [ebp - 0x84], 4
jmp 0x1001b17b
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], edx
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xa4], edx
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x18], 0xc7a8
mov dword [ebp - 0x10], ebx
jmp 0x1001b07e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x44], 0xff44cacf
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x1001b070
dec dword [ebp - 0x18]
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], ebx
jl 0x1001b175
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x18], ebx
jmp 0x1001b0cb
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x1001b0c8
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x44]
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x44], ecx
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], ebx
jl 0x1001b0c3
inc dword [ebp - 0x3c]
dec dword [ebp - 0x1c]
jns 0x1001b0bb
dec dword [ebp - 0x10]
jns 0x1001b0a5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x1001b09d
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x2c]
jne 0x1001b0f0
cmp dword [ebp - 0x30], ebx
jne 0x1001b0f0
cmp dword [ebp - 0x18], ebx
jne 0x1001b0f0
mov edx, ebx
mov eax, dword [ebp - 0x80]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setl cl
xor edx, edx
imul eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x44]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
setg dl
cmp edx, 0xdfe1602a
jb 0x1001b11f
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x88]
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x24], ebx
jne 0x1001b139
cmp dword [ebp - 0x1c], ebx
jne 0x1001b139
xor edx, edx
mov eax, ebx
inc edx
jmp 0x1001b13e
xor edx, edx
inc edx
mov eax, edx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xfffb
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xffffffff
setne cl
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], ebx
jne 0x1001b167
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0x44], ebx
mov eax, ebx
je 0x1001b169
mov eax, edx
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x24]
jns 0x1001b092
dec dword [ebp - 0x84]
cmp dword [ebp - 0x84], 0xffffffec
jge 0x1001b03e
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff5
jle 0x1001afe4
mov al, 1
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret