Function at 0x1000e2a0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x190
push ebx
push esi
push edi
push 0
mov dword [ebp - 4], 0x8c6a53d0
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 4], 0xfffffffa
pop ebx
jmp 0x1000e2f8
mov dword [ebp - 0x14], 0xffffffff
mov byte [ebp - 5], bl
cmp byte [ebp - 5], 0
je 0x1000e2ef
push 0x166f
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Polygon]
mov eax, dword [ebp - 4]
mov dword [ebp - 0x14], eax
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jge 0x1000e2c5
mov dword [ebp - 0x14], 0x148d
mov esi, 0x1000c28c
cmp dword [ebp - 0x14], 0x1166
jge 0x1000e367
lea eax, [ebp - 0x24]
push eax
push esi
call fcn.10050cbb
pop ecx
pop ecx
jmp 0x1000e35c
dec eax
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x44]
push eax
push 0x1000c290
call fcn.10050cbb
mov ecx, dword [ebp - 0x44]
xor eax, eax
cmp ecx, dword [ebp - 0x2c]
sete al
add eax, dword [ebp - 0x2c]
push eax
push ecx
push 0x1000c2a4
call fcn.10050eef
add esp, 0x20
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x1000e321
dec eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], 1
mov dword [ebp - 4], 0xfffffff7
mov dword [ebp - 0x14], 0x1b2b
cmp dword [ebp - 0x14], 0xb31
push 3
pop edi
jge 0x1000e43a
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.10050cbb
mov eax, dword [ebp - 0x28]
pop ecx
pop ecx
test eax, eax
je 0x1000e436
dec eax
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x50]
push eax
push esi
call fcn.10050cbb
mov esi, dword [ebp - 0x50]
mov edi, ebx
pop ecx
pop ecx
mov ecx, esi
and ecx, 0x80000001
jns 0x1000e3c7
dec ecx
or ecx, 0xfffffffe
inc ecx
jne 0x1000e3e3
mov eax, esi
inc edi
cdq
sub eax, edx
mov esi, eax
sar esi, 1
mov eax, esi
and eax, 0x80000001
jns 0x1000e3e1
dec eax
or eax, 0xfffffffe
inc eax
je 0x1000e3c9
push 3
pop ecx
jmp 0x1000e3f0
mov eax, esi
inc ebx
cdq
idiv ecx
mov esi, eax
mov eax, esi
cdq
idiv ecx
test edx, edx
je 0x1000e3e8
cmp esi, 1
jne 0x1000e415
cmp ebx, edi
jl 0x1000e415
lea eax, [ebx + ebx]
sub eax, edi
push eax
push 0x1000c2b4
call fcn.10050eef
pop ecx
jmp 0x1000e41f
push 0x1000c2b0
call fcn.100510c7
mov eax, dword [ebp - 0x28]
mov esi, 0x1000c28c
pop ecx
push 0
pop ebx
test eax, eax
jne 0x1000e3a3
push 3
pop edi
dec eax
mov dword [ebp - 0x28], eax
push 2
pop esi
cmp dword [ebp - 0xc], ebx
je 0x1000e48e
mov dword [ebp - 4], ebx
jmp 0x1000e458
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x88], 0x2061
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1000e447
mov byte [ebp - 5], bl
cmp byte [ebp - 5], 0
je 0x1000e473
push ebx
push 0xc19
push ebx
call dword [sym.imp.GDI32.dll_GetEnhMetaFileHeader]
mov dword [ebp - 0xc], esi
cmp dword [ebp - 0xc], ebx
jl 0x1000e4e9
mov eax, dword [ebp - 0xc]
cmp dword [ebp + eax*4 - 0x88], ebx
jne 0x1000e4e9
dec dword [ebp - 0xc]
jns 0x1000e47b
jmp 0x1000e4e9
push 1
lea ecx, [ebp - 0x40]
call fcn.100140c9
mov dword [ebp - 4], ebx
jmp 0x1000e4ad
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x40]
mov dword [eax + ecx*4], 0x94dd
inc dword [ebp - 4]
cmp dword [ebp - 4], 1
jl 0x1000e49d
mov dword [ebp - 0xc], ebx
jmp 0x1000e4cd
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x40]
cmp dword [ecx + eax*4], ebx
jne 0x1000e4d5
mov dword [ebp - 4], 0xfffffffd
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jle 0x1000e4b8
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x1000e4e9
push ecx
call fcn.10051057
pop ecx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 4], ebx
jmp 0x1000e54f
mov dword [ebp - 0x10], ebx
jmp 0x1000e501
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x78], 0x2265e3ed
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1000e4f3
mov byte [ebp - 5], bl
cmp byte [ebp - 5], 0
je 0x1000e516
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x70], ebx
je 0x1000e532
mov dword [ebp - 0x14], 0xdade
xor ecx, ecx
mov eax, dword [ebp - 0x70]
cmp eax, 0xffffffff
setne cl
mov dword [ebp - 0x14], ecx
jmp 0x1000e54c
mov dword [ebp - 0xc], ebx
jmp 0x1000e546
mov dword [ebp - 0x14], 1
cmp dword [ebp - 0x14], ebx
jne 0x1000e54c
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xd
jge 0x1000e537
inc dword [ebp - 4]
cmp dword [ebp - 4], 0xa
je 0x1000e4ee
mov dword [ebp - 4], 0x5595
mov dword [ebp - 0xc], 0x90611bc3
mov dword [ebp - 0x10], 0x40c
mov dword [ebp - 0x14], 0xf8de905f
mov dword [ebp - 0x1c], 0x265d6326
imul eax, dword [ebp - 0xc], 0x9e07
add eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0xc]
test eax, eax
jne 0x1000e58d
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
inc dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xcc7c
jg 0x1000e63f
mov dword [ebp - 4], ebx
jmp 0x1000e5c8
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x54], 0xfffffffd
inc dword [ebp - 4]
cmp dword [ebp - 4], 1
jl 0x1000e5ba
mov dword [ebp - 0xc], ebx
cmp dword [ebp - 0xc], ebx
jl 0x1000e6d9
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x1000e635
mov dword [ebp - 4], ebx
jmp 0x1000e62b
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x18], ebx
jmp 0x1000e623
mov dword [ebp - 0x1c], 0xffffffff
mov eax, dword [ebp - 0xc]
cmp dword [ebp + eax*4 - 0x54], ebx
jne 0x1000e628
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x1000e620
mov byte [ebp - 5], bl
cmp byte [ebp - 5], 0
je 0x1000e61b
push ebx
call dword [sym.imp.COMDLG32.dll_FindTextW]
dec dword [ebp - 0x1c]
jns 0x1000e60b
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x1000e5f3
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jle 0x1000e5e7
dec dword [ebp - 0x10]
jns 0x1000e5e2
dec dword [ebp - 0xc]
jns 0x1000e5da
jmp 0x1000e6d9
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x1000e660
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5c], 7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1000e652
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0x34], 0xffff
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x1000e684
cmp dword [ebp - 4], ebx
je 0x1000e684
xor ecx, ecx
inc ecx
jmp 0x1000e686
mov ecx, ebx
xor eax, eax
cmp ecx, 1
setge al
imul eax, eax, 0xf58a
test eax, eax
je 0x1000e6a2
cmp dword [ebp - 4], ebx
je 0x1000e6a2
xor edx, edx
inc edx
jmp 0x1000e6a4
mov edx, ebx
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x5c], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], 1
mov byte [ebp - 5], bl
cmp byte [ebp - 5], 0
je 0x1000e6d9
push 0x23f2
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov dword [ebp - 0x10], 9
mov dword [ebp - 0x14], 0xb6feb9e9
mov dword [ebp - 0x14], 0xfff8
mov dword [ebp - 0x18], ebx
jmp 0x1000e701
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x68], 1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1000e6f3
push 0x18
pop eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jl 0x1000e8bd
mov dword [ebp - 0x14], 0x198e
cmp dword [ebp - 0x14], 0x1182
jge 0x1000e872
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x1000c2bc
call fcn.10050cbb
mov esi, dword [ebp - 0x20]
add esp, 0xc
test esi, esi
je 0x1000e872
jle 0x1000e769
lea edi, [ebp - 0x10c]
push edi
push 0x1000c288
call fcn.10050cbb
mov esi, dword [ebp - 0x20]
inc ebx
pop ecx
add edi, 4
pop ecx
cmp ebx, esi
jl 0x1000e751
xor ebx, ebx
test esi, esi
jle 0x1000e78d
lea edi, [ebp - 0x190]
push edi
push 0x1000c288
call fcn.10050cbb
mov esi, dword [ebp - 0x20]
inc ebx
pop ecx
add edi, 4
pop ecx
cmp ebx, esi
jl 0x1000e775
mov ebx, dword [ebp - 0x30]
test ebx, ebx
js 0x1000e7a7
lea eax, [ebx + 1]
push eax
push 0
push 0x1065c1e0
call fcn.10050fa0
add esp, 0xc
xor eax, eax
mov byte [0x1065c1e0], 1
xor edx, edx
mov dword [ebp - 0x18], eax
test esi, esi
jle 0x1000e844
test ebx, ebx
js 0x1000e7d7
lea ecx, [ebx*4 + 4]
mov edi, 0x1065c150
shr ecx, 2
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp + edx*4 - 0x10c]
xor ecx, ecx
cmp edi, ebx
jg 0x1000e83b
cmp byte [ecx + 0x1065c1e0], 0
je 0x1000e832
mov eax, dword [ebp + edx*4 - 0x10c]
add eax, ecx
mov dword [ebp - 0x14], eax
cmp byte [eax + 0x1065c1e0], 0
jne 0x1000e82f
mov eax, dword [ecx*4 + 0x1065c150]
cmp eax, dword [ebp + edx*4 - 0x190]
jge 0x1000e82f
mov esi, dword [ebp - 0x14]
inc eax
mov dword [esi*4 + 0x1065c150], eax
mov eax, esi
mov byte [eax + 0x1065c1e0], 1
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
jmp 0x1000e832
mov eax, dword [ebp - 0x18]
inc ecx
inc edi
cmp edi, ebx
jle 0x1000e7e4
mov esi, dword [ebp - 0x20]
inc edx
cmp edx, esi
jl 0x1000e7bd
push eax
push 0x1000c2c4
call fcn.10050eef
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x1000c2bc
call fcn.10050cbb
mov esi, dword [ebp - 0x20]
add esp, 0x14
push 0
pop ebx
test esi, esi
jne 0x1000e749
mov dword [ebp - 0x14], 6
xor edx, edx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
cmp eax, 0xcf33
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
imul ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x14], 1
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x18
jge 0x1000e715
mov esi, dword [ebp + 8]
xor edx, edx
pop edi
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov ecx, dword [esi]
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
cmp dword [eax + ecx*4], ebx
mov eax, dword [esi]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x4c]
pop esi
setne cl
pop ebx
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret