Function at 0x1003212d
Capabilities:
Allocate thread local storage
Connect pipe
Delete file
Get session user name
Parse pe header
Query environment variable
Terminate process

Disassembly:
mov eax, 0x10082c47
call fcn.10081828
mov eax, 0x150c
call fcn.1007dd60
push ebx
push esi
push edi
mov dword [ebp - 0x10], 0x1713b910
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x86c], eax
mov dword [ebp - 0x868], eax
mov dword [ebp - 0x864], eax
mov dword [ebp - 0x6c], ecx
lea ecx, [ebp - 0x1040]
mov dword [ebp - 0x860], eax
mov dword [ebp - 0x38], 0xe1b1b552
push 4
mov byte [ebp - 0x99], dl
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], eax
jmp 0x100321ab
push dword [ebp - 0x10]
lea ecx, [ebp - 0x1040]
call fcn.10019594
mov dword [eax], 0x3efe35fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10032194
push 1
pop ebx
push 0xffffffffffffffff
mov dword [ebp - 0x10], 0xffffffe2
pop edi
jmp 0x100322dd
movdqa xmm0, xmmword [0x1000a9a0]
lea eax, [ebp - 0x1164]
push eax
lea eax, [ebp - 0x1174]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 0x1009d434
lea ecx, [ebp - 0x1444]
mov dword [ebp - 0x30], 0xaa43b2b7
push eax
movdqu xmmword [ebp - 0x1174], xmm0
call fcn.100195a3
lea ecx, [ebp - 0x25d]
mov esi, eax
call fcn.1000bbe3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xe4c]
push dword [esi]
call fcn.10019552
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jg 0x100322cc
mov dword [ebp - 0x1c], 0x33c
lea ecx, [ebp - 0xe4c]
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x40], 0xfffffff8
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push ebx
mov eax, dword [ebp + eax*4 - 0x86c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x86c]
mov eax, dword [ebp - 0x40]
call fcn.10019594
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp + ecx*4 - 0x86c]
sub edx, dword [eax]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, ebx
setl cl
add ecx, edx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x86c]
mov eax, dword [ebp - 0x40]
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x10032239
xor eax, eax
lea ecx, [ebp - 0xe4c]
mov byte [ebp - 4], al
call fcn.10019578
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1d
jle 0x100321c3
lea ecx, [ebp - 0x1040]
mov dword [ebp - 4], edi
call fcn.10019578
push 2
pop esi
mov dword [ebp - 0x10], 0x1713b910
lea ecx, [ebp - 0x114c]
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x888], eax
mov dword [ebp - 0x884], eax
mov dword [ebp - 0x880], eax
mov dword [ebp - 0x87c], eax
mov dword [ebp - 0x38], 0xe1b1b552
push 4
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], esi
mov dword [ebp - 0x10], eax
jmp 0x10032352
push dword [ebp - 0x10]
lea ecx, [ebp - 0x114c]
call fcn.10019594
mov dword [eax], 0x3efe35fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1003233b
mov dword [ebp - 0x10], 0xffffffe2
jmp 0x10032473
movdqa xmm0, xmmword [0x1000a9a0]
lea eax, [ebp - 0x1194]
push eax
lea eax, [ebp - 0x11a4]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 0x1009d434
lea ecx, [ebp - 0x139c]
mov dword [ebp - 0x30], 0xaa43b2b7
push eax
movdqu xmmword [ebp - 0x11a4], xmm0
call fcn.100195a3
lea ecx, [ebp - 0x241]
mov esi, eax
call fcn.1000bbe3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xe64]
push dword [esi]
call fcn.10019552
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10032457
mov dword [ebp - 0x1c], 0x33c
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x40], 0xfffffff8
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push ebx
mov eax, dword [ebp + eax*4 - 0x888]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x888]
mov eax, dword [ebp - 0x40]
call fcn.10019594
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp + ecx*4 - 0x888]
sub edx, dword [eax]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, ebx
setl cl
add ecx, edx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x888]
mov eax, dword [ebp - 0x40]
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
lea ecx, [ebp - 0xe64]
jle 0x100323d6
mov byte [ebp - 4], 2
call fcn.10019578
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1d
jle 0x10032364
lea ecx, [ebp - 0x114c]
mov dword [ebp - 4], edi
call fcn.10019578
mov dword [ebp - 0x54], 2
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x48], 0x1c8b
mov dword [ebp - 0x30], 0x79c90e69
mov dword [ebp - 0x10], eax
jmp 0x100324c2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x128], 0x8c9dffbe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100324b1
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0x3c1d
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x128]
jg 0x100324f2
mov eax, dword [ebp - 0x128]
mov eax, dword [ebp - 0x128]
xor edx, edx
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x54]
cmp eax, ecx
mov ecx, 0xffff
setl dl
xor ebx, ebx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x48]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
mov ecx, 0x55e00fe1
setle bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x28]
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
setge dl
sub ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x54]
setle dl
xor ecx, ecx
cmp eax, edx
setne cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10032570
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
xor eax, eax
mov dword [ebp - 0x20], 0x1713b910
xor edi, edi
mov dword [ebp - 0x18], 8
inc edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 3
jge 0x100325a6
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x8fc], 0xfffffffe
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 3
jl 0x1003258d
xor eax, eax
push 2
mov dword [ebp - 0x18], eax
pop ecx
jmp 0x100325c9
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x100325c6
push edi
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push 2
xor eax, eax
pop ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jle 0x100325ae
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], eax
jl 0x100326c7
mov dword [ebp - 0x20], 0xc23afc37
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], eax
jl 0x100326be
mov dword [ebp - 0x28], eax
jmp 0x10032603
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x834], 0x5ee4c20f
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jl 0x100325f2
mov eax, dword [ebp - 0x20]
mov ecx, 0xffff
xor edx, edx
mov esi, dword [ebp + eax*4 - 0x8fc]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x8fc], esi
mov eax, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setle dl
xor eax, eax
cmp esi, edx
setle al
mov dword [ebp - 0x834], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10032675
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jg 0x10032696
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x8fc]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x8fc], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jle 0x10032656
jmp 0x10032694
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10032696
push eax
push 0x2115
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x100326af
push eax
push eax
push 0xdf
push eax
push edi
push eax
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x100325ed
push 2
pop ecx
dec dword [ebp - 0x18]
jns 0x100325da
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x180]
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x89c], eax
mov dword [ebp - 0x898], eax
mov dword [ebp - 0x894], eax
mov dword [ebp - 0x890], eax
push edi
call fcn.100194f6
push 4
pop ebx
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x574]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x28], 0xe40c18ab
push ebx
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 5
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10032739
push dword [ebp - 0x18]
lea ecx, [ebp - 0x180]
call fcn.10019594
mov dword [eax], 0xa77
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003271b
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003275c
push dword [ebp - 0x18]
lea ecx, [ebp - 0x574]
call fcn.10019594
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10032741
xor eax, eax
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], eax
je 0x10032769
mov eax, dword [ebp - 0x10]
xor eax, eax
push eax
lea ecx, [ebp - 0x180]
call fcn.10019594
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10032793
push eax
lea ecx, [ebp - 0x180]
call fcn.10019594
cmp dword [eax], 0
je 0x10032791
mov eax, edi
jmp 0x10032793
xor eax, eax
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x180]
xor eax, eax
push eax
call fcn.10019594
mov esi, 0xeff3
lea ecx, [ebp - 0x180]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [ebp - 0x28]
xor edx, edx
add ecx, esi
cmp ecx, edi
lea ecx, [ebp - 0x180]
setl dl
xor ebx, ebx
cmp edx, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.10019594
mov esi, eax
lea ecx, [ebp - 0x180]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [esi]
sub ecx, dword [eax]
imul eax, ecx, 0xffab
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, 0xd1b40e11
jb 0x1003280c
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x10], eax
je 0x1003280e
mov esi, edi
push edi
lea ecx, [ebp - 0x574]
call fcn.10019594
push edi
lea ecx, [ebp - 0x574]
mov dword [eax], esi
mov eax, dword [ebp - 0x10]
call fcn.10019594
cmp dword [eax], 0
jne 0x1003288f
xor eax, eax
lea ecx, [ebp - 0x180]
push eax
call fcn.10019594
xor eax, eax
lea ecx, [ebp - 0x180]
push eax
call fcn.10019594
xor eax, eax
lea ecx, [ebp - 0x180]
push eax
call fcn.10019594
cmp dword [eax], 0
je 0x10032876
xor eax, eax
lea ecx, [ebp - 0x180]
push eax
call fcn.10019594
cmp dword [eax], 0
je 0x10032876
mov edx, edi
jmp 0x1003287a
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
sete cl
cmp ecx, dword [ebp - 0x28]
jle 0x1003288f
xor eax, eax
mov esi, eax
jmp 0x10032893
mov esi, edi
xor eax, eax
push eax
lea ecx, [ebp - 0x574]
call fcn.10019594
xor ebx, ebx
lea ecx, [ebp - 0x574]
cmp esi, dword [eax]
sete bl
xor eax, eax
push eax
call fcn.10019594
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x180]
push eax
call fcn.10019594
mov esi, eax
lea ecx, [ebp - 0x180]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [esi]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, dword [ebp - 0x30]
lea ecx, [ebp - 0x574]
setg dl
sub edx, eax
imul eax, edx, 0x89ed
mov dword [ebp - 0x10], eax
call fcn.10019578
or esi, 0xffffffff
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x38], 0xe1b1b552
lea ecx, [ebp - 0x105c]
push 4
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1003295c
push dword [ebp - 0x10]
lea ecx, [ebp - 0x105c]
call fcn.10019594
mov dword [eax], 0x3efe35fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1003293d
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x20], 0xffffffe2
inc ebx
cmp dword [ebp - 0x20], 0x1d
jg 0x10032dcb
jmp 0x10032974
xor eax, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x18], 0x324ec2e0
mov dword [ebp - 0x40], 0xf58382bd
mov dword [ebp - 0x18], eax
jmp 0x100329fa
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x10], 0x1b
cmp dword [ebp - 0x10], 0xfffffff5
jle 0x100329f7
mov dword [ebp - 0x54], 6
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x18], eax
jne 0x100329b1
cmp dword [ebp - 0x10], eax
je 0x100329b3
mov eax, ebx
mov dword [ebp - 0x54], eax
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x40]
sub esi, dword [ebp - 0x40]
sub esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
mov ecx, dword [ebp - 0x54]
setle dl
xor eax, eax
cmp edx, esi
push 0
setg al
sub ecx, eax
dec ecx
neg ecx
pop eax
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x40], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff5
jg 0x1003299d
or esi, 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 9
jne 0x1003298a
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x38], 0x1009d434
mov dword [ebp - 0x30], 0xaa43b2b7
mov dword [ebp - 0x10], 0xfffffffa
mov dword [ebp - 0x48], 0xfffffffb
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x38], 0x83d1f0df
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10032a48
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x48]
sub ecx, eax
sub ecx, dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jg 0x10032a67
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x1c], eax
je 0x10032a69
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
movdqa xmm0, xmmword [0x1000a9a0]
sub edx, eax
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0xf635
setl al
xor ecx, ecx
cmp eax, 0xcf041577
lea eax, [ebp - 0x1294]
push eax
sete cl
lea eax, [ebp - 0x12a4]
sub ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x13fc]
push eax
movdqu xmmword [ebp - 0x12a4], xmm0
call fcn.100195a3
lea ecx, [ebp - 0x244]
mov esi, eax
call fcn.1000bbe3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xe7c]
push dword [esi]
call fcn.10019552
push 7
pop eax
mov byte [ebp - 4], al
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x30], 0x9a6e4c1c
push 2
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x10032b12
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x414], 0x2de4bf74
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10032afa
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x10032b32
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2bc], 0x8597a0b8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10032b1a
xor eax, eax
mov dword [ebp - 0x18], 0xfffffff3
or esi, 0xffffffff
cmp dword [ebp - 0x18], 0xfffffffd
jl 0x10032d0e
jmp 0x10032b4d
push 2
xor eax, eax
pop edx
mov dword [ebp - 0x24], 0x1f13
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x28], 0x47610b5c
mov dword [ebp - 0x30], 0x913db3b8
cmp dword [ebp - 0x18], eax
je 0x10032b6d
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x414]
mov eax, dword [ebp - 0x24]
xor eax, eax
cmp dword [ebp - 0x414], eax
je 0x10032c7a
mov dword [ebp - 0x10], 0xffff
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x10], eax
jne 0x10032bc4
imul eax, dword [ebp - 0x24], 0x3610
xor ecx, ecx
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x2bc], ebx
mov eax, dword [ebp - 0x10]
cmp eax, esi
setle cl
sub ecx, 0x2761e88f
jne 0x10032bc4
xor eax, eax
mov ecx, eax
jmp 0x10032bc6
mov ecx, ebx
xor eax, eax
cmp ecx, edx
setne al
add eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x24]
jge 0x10032bde
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x10], eax
je 0x10032be0
mov ecx, ebx
mov eax, dword [ebp - 0x24]
dec ecx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
dec ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x24]
cmp eax, 2
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x2bc]
mov eax, dword [ebp - 0x2bc]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x414], ecx
mov eax, dword [ebp - 0x2bc]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setle dl
imul eax, edx
cmp eax, 0xfffffff7
jne 0x10032c67
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
add eax, 5
mov dword [ebp - 0x30], eax
xor eax, eax
jmp 0x10032ceb
mov dword [ebp - 0x28], 0x1c
jmp 0x10032ce0
mov dword [ebp - 0x48], 0xfffffff6
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edx
jge 0x10032caa
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x414], 0x4a32a0c0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10032c92
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], ebx
jg 0x10032cdd
mov dword [ebp - 0x30], 9
dec dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp + eax*4 - 0x2bc]
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x2bc], ecx
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], ebx
jle 0x10032cb2
xor eax, eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x11
jle 0x10032c83
cmp dword [ebp - 0x28], eax
jne 0x10032d0e
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10032d01
push 0x1446
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffffd
jge 0x10032b48
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10032da5
mov dword [ebp - 0x1c], 0x33c
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x40], 0xfffffff8
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push ebx
mov eax, dword [ebp + eax*4 - 0x89c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x89c]
mov eax, dword [ebp - 0x40]
call fcn.10019594
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp + ecx*4 - 0x89c]
sub edx, dword [eax]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, ebx
setl cl
add ecx, edx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x89c]
mov eax, dword [ebp - 0x40]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
lea ecx, [ebp - 0xe7c]
jle 0x10032d24
mov byte [ebp - 4], 6
call fcn.10019578
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x1d
jle 0x10032972
lea ecx, [ebp - 0x105c]
mov dword [ebp - 4], esi
call fcn.10019578
push 3
lea ecx, [ebp - 0x810]
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10032e0f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x94], 0xb9f9b31
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10032df7
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10032e37
push dword [ebp - 0x18]
lea ecx, [ebp - 0x810]
call fcn.10019594
mov dword [eax], 0xffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10032e18
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [ebp - 0x94], eax
jmp 0x100330ec
mov dword [ebp - 0x3c], 0xf1bf506e
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x54], 0xfffa
mov dword [ebp - 0x48], 0x67c402fb
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffffa
je 0x100330d2
mov dword [ebp - 0x40], eax
mov edx, ebx
mov dword [ebp - 0x1c], 0x9eb11de2
xor ecx, ecx
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 0x30], 0xb676bd76
mov eax, dword [ebp - 0x94]
sub edx, eax
mov eax, dword [ebp - 0x3c]
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, dword [ebp - 0x28]
jle 0x10032eb2
cmp dword [ebp - 0x40], eax
je 0x10032eb2
mov eax, ebx
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10032ec1
cmp dword [ebp - 0x18], eax
jne 0x10032ec6
cmp dword [ebp - 0x3c], eax
je 0x10032eca
mov ecx, ebx
jmp 0x10032ecc
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x10032ee5
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
inc eax
cmp eax, 0x7fd8b26d
setg cl
xor eax, eax
cmp eax, ecx
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xb3a3fc4b
mov eax, dword [ebp - 0x94]
setne cl
xor edx, edx
cmp ecx, 5
setg dl
add eax, edx
cmp eax, dword [ebp - 0x3c]
jge 0x10033034
xor eax, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10032f45
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x74c], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10032f2c
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10032f6a
push 0x12ae
push 0x492
push 0xdcc
push 0xb5e
call dword [sym.imp.GDI32.dll_CreateRectRgn]
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10033028
mov dword [ebp - 0x48], 0xd884bb86
lea ecx, [ebp - 0xb4c]
push 3
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 9
mov dword [ebp - 0x10], eax
jmp 0x10032fa8
push dword [ebp - 0x10]
lea ecx, [ebp - 0xb4c]
call fcn.10019594
mov dword [eax], 0xef7b6068
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10032f91
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x74c]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x74c], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x74c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x74c], 0
jge 0x10032feb
mov eax, dword [ebp - 0x748]
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0xb4c]
xor eax, eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x54]
xor eax, eax
push eax
call fcn.10019594
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0xb4c]
mov dword [ebp - 0x30], ebx
mov byte [ebp - 4], 8
call fcn.10019578
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10032f72
jmp 0x100330ae
mov dword [ebp - 0x30], 0xfff6
mov dword [ebp - 0x4c], 0x57c19de8
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x1003306a
push 2
lea ecx, [ebp - 0x810]
call fcn.10019594
cmp dword [eax], 0
jne 0x1003306a
xor eax, eax
mov esi, eax
jmp 0x1003306c
mov esi, ebx
push ebx
lea ecx, [ebp - 0x810]
call fcn.10019594
mov ecx, dword [ebp - 0x3c]
xor edx, edx
cmp esi, ecx
setle dl
xor ecx, ecx
cmp dword [eax], edx
mov eax, dword [ebp - 0x94]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x54]
xor eax, eax
mov dword [ebp - 0x4c], eax
push ebx
lea ecx, [ebp - 0x810]
call fcn.10019594
push 0
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffffa
pop eax
jne 0x10032e71
or esi, 0xffffffff
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x100330e6
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
dec dword [ebp - 0x94]
cmp dword [ebp - 0x94], esi
jge 0x10032e48
lea ecx, [ebp - 0x810]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x54], 2
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x48], 0x1c8b
mov dword [ebp - 0x30], 0x79c90e69
mov dword [ebp - 0x10], eax
jmp 0x1003313d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x12c], 0x8c9dffbe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x1003312c
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0x3c1d
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x12c]
jg 0x1003316d
mov eax, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x12c]
xor edx, edx
mov ecx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x54]
cmp eax, ecx
mov ecx, 0xffff
setl dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
mov edx, 0x55e00fe1
setge cl
xor ebx, ebx
sub edx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x54]
setle bl
xor ecx, ecx
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x100331e9
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
xor eax, eax
mov dword [ebp - 0x18], esi
xor ebx, ebx
mov dword [ebp - 0x54], 0x7dcd
inc ebx
mov dword [ebp - 0x4c], 0xdbc1c234
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10033222
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe94], 0xae35
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10033209
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10033259
mov dword [ebp - 0x30], 0x9ea98311
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xe94]
mov dword [ebp - 0x30], eax
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10033256
push 0x22fe
push 0x127
push eax
call dword [sym.imp.GDI32.dll_OffsetRgn]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10033227
push 8
mov dword [ebp - 0x18], 0x15
pop ecx
jmp 0x100332aa
mov dword [ebp - 0x48], 0xe817
mov dword [ebp - 0x30], 0x62a04f77
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x58], 0xfffffffb
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0xe94]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x58], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jle 0x1003326b
mov dword [ebp - 0x18], 0x324ec2e0
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xfffffff7
je 0x100332db
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x100332d2
call dword [sym.imp.USER32.dll_GetCapture]
xor eax, eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff7
jne 0x100332c1
mov dword [ebp - 0x18], 0xfffffff3
jmp 0x10033368
push 3
lea ecx, [ebp - 0x580]
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x10], eax
jmp 0x10033310
push dword [ebp - 0x10]
call fcn.10019594
and dword [eax], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
lea ecx, [ebp - 0x580]
jl 0x10033302
push ebx
call fcn.10019594
and dword [eax], 0
jmp 0x10033346
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10033338
push eax
call dword [sym.imp.KERNEL32.dll_GetFileType]
push ebx
lea ecx, [ebp - 0x580]
call fcn.10019594
inc dword [eax]
push ebx
lea ecx, [ebp - 0x580]
call fcn.10019594
cmp dword [eax], 0xf
jg 0x10033327
lea ecx, [ebp - 0x580]
mov dword [ebp - 4], esi
call fcn.10019578
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff7
jge 0x100332e7
mov dword [ebp - 0x10], 6
lea ecx, [ebp - 0xeac]
mov dword [ebp - 0x28], 0x34688073
mov dword [ebp - 0x38], 0x29ed890f
push ebx
call fcn.100194f6
mov dword [ebp - 4], 0xb
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffb
mov dword [ebp - 0x38], 0x26fbd10c
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x54], 0x4b6749ef
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 4
jge 0x100333d6
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0xad4], 0x841b3c69
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 4
jl 0x100333bd
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jge 0x100333fc
push dword [ebp - 0x2c]
lea ecx, [ebp - 0xeac]
call fcn.10019594
mov dword [eax], 0xbb9cf7d1
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jl 0x100333de
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jge 0x1003341a
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x14d8], esi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 3
jl 0x10033405
xor eax, eax
mov dword [ebp - 0x10], 3
cmp dword [ebp - 0x10], eax
jl 0x10033509
mov dword [ebp - 0x1c], 6
lea ecx, [ebp - 0x1164]
mov dword [ebp - 0x38], 0x6758e356
push 3
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 0xc
push 3
mov dword [ebp - 0x28], eax
pop esi
cmp dword [ebp - 0x28], esi
jge 0x10033474
push dword [ebp - 0x28]
lea ecx, [ebp - 0x1164]
call fcn.10019594
mov dword [eax], 5
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jl 0x10033456
xor eax, eax
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x100334da
mov dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0xad4], 0
jne 0x10033496
mov eax, dword [ebp - 0xac8]
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0xad4]
cmp eax, 0xfffffffc
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0xad4]
cmp edx, eax
mov eax, dword [ebp - 0x30]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xad0]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x1c]
jns 0x1003347c
xor eax, eax
mov dword [ebp - 0x28], eax
or esi, 0xffffffff
cmp dword [ebp - 0x28], 3
jg 0x100334f1
mov dword [ebp - 0x48], esi
dec dword [ebp - 0x48]
inc dword [ebp - 0x28]
jmp 0x100334e0
lea ecx, [ebp - 0x1164]
mov byte [ebp - 4], 0xb
call fcn.10019578
dec dword [ebp - 0x10]
jns 0x1003342a
inc dword [ebp - 0x54]
lea ecx, [ebp - 0xeac]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x28], 0x1713b910
xor eax, eax
mov dword [ebp - 0x18], 8
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 3
jge 0x1003354f
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0xa04], 0xfffffffe
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 3
jl 0x10033536
xor eax, eax
push 2
mov dword [ebp - 0x18], eax
pop ecx
jmp 0x10033576
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10033573
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push 2
xor eax, eax
pop ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jle 0x10033557
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], eax
jl 0x10033678
mov dword [ebp - 0x20], 0xc23afc37
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], eax
jl 0x1003366f
mov dword [ebp - 0x28], eax
jmp 0x100335b0
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x7fc], 0x5ee4c20f
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
jl 0x1003359f
mov eax, dword [ebp - 0x20]
mov ecx, 0xffff
xor edx, edx
mov esi, dword [ebp + eax*4 - 0xa04]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa04], esi
mov eax, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setle dl
xor eax, eax
cmp esi, edx
setle al
mov dword [ebp - 0x7fc], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10033622
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jg 0x10033647
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0xa04]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xa04], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jle 0x10033603
jmp 0x10033645
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10033647
push eax
push 0x2115
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10033660
push eax
push eax
push 0xdf
push eax
push ebx
push eax
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x1003359a
push 2
pop ecx
dec dword [ebp - 0x18]
jns 0x10033587
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x200]
push ebx
call fcn.100194f6
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x58c]
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x28], 0xe40c18ab
push 4
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100336d1
push dword [ebp - 0x18]
lea ecx, [ebp - 0x200]
call fcn.10019594
mov dword [eax], 0xa77
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100336b3
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x100336f6
push dword [ebp - 0x18]
lea ecx, [ebp - 0x58c]
call fcn.10019594
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x100336da
xor eax, eax
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], eax
je 0x10033703
mov eax, dword [ebp - 0x10]
xor eax, eax
push eax
lea ecx, [ebp - 0x200]
call fcn.10019594
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1003372d
push eax
lea ecx, [ebp - 0x200]
call fcn.10019594
cmp dword [eax], 0
je 0x1003372b
mov eax, ebx
jmp 0x1003372d
xor eax, eax
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x200]
xor eax, eax
push eax
call fcn.10019594
mov esi, 0xeff3
lea ecx, [ebp - 0x200]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [ebp - 0x28]
xor edx, edx
add ecx, esi
cmp ecx, ebx
lea ecx, [ebp - 0x200]
setl dl
xor ebx, ebx
cmp edx, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.10019594
mov esi, eax
lea ecx, [ebp - 0x200]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [esi]
sub ecx, dword [eax]
imul eax, ecx, 0xffab
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, 0xd1b40e11
jb 0x100337ab
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x100337ab
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x100337b0
xor ebx, ebx
inc ebx
mov esi, ebx
push ebx
lea ecx, [ebp - 0x58c]
call fcn.10019594
push ebx
lea ecx, [ebp - 0x58c]
mov dword [eax], esi
mov eax, dword [ebp - 0x10]
call fcn.10019594
cmp dword [eax], 0
jne 0x10033831
xor eax, eax
lea ecx, [ebp - 0x200]
push eax
call fcn.10019594
xor eax, eax
lea ecx, [ebp - 0x200]
push eax
call fcn.10019594
xor eax, eax
lea ecx, [ebp - 0x200]
push eax
call fcn.10019594
cmp dword [eax], 0
je 0x10033818
xor eax, eax
lea ecx, [ebp - 0x200]
push eax
call fcn.10019594
cmp dword [eax], 0
je 0x10033818
mov edx, ebx
jmp 0x1003381c
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
sete cl
cmp ecx, dword [ebp - 0x28]
jle 0x10033831
xor eax, eax
mov esi, eax
jmp 0x10033835
mov esi, ebx
xor eax, eax
push eax
lea ecx, [ebp - 0x58c]
call fcn.10019594
xor ebx, ebx
lea ecx, [ebp - 0x58c]
cmp esi, dword [eax]
sete bl
xor eax, eax
push eax
call fcn.10019594
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x200]
push eax
call fcn.10019594
mov esi, eax
lea ecx, [ebp - 0x200]
xor eax, eax
push eax
call fcn.10019594
mov ecx, dword [esi]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, dword [ebp - 0x30]
lea ecx, [ebp - 0x58c]
setg dl
sub edx, eax
imul eax, edx, 0x89ed
mov dword [ebp - 0x10], eax
call fcn.10019578
or esi, 0xffffffff
lea ecx, [ebp - 0x200]
mov dword [ebp - 4], esi
call fcn.10019578
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x8d0], eax
mov dword [ebp - 0x8cc], eax
mov dword [ebp - 0x8c8], eax
mov dword [ebp - 0x8c4], eax
xor eax, eax
mov dword [ebp - 0x38], 0xe1b1b552
mov dword [ebp - 0x18], 0x324ec2e0
mov dword [ebp - 0x40], 0xf58382bd
mov dword [ebp - 0x18], eax
jmp 0x10033961
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x10], 0x1b
cmp dword [ebp - 0x10], 0xfffffff5
jle 0x1003395e
mov dword [ebp - 0x54], 6
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x18], eax
jne 0x10033917
cmp dword [ebp - 0x10], eax
je 0x1003391a
xor eax, eax
inc eax
mov dword [ebp - 0x54], eax
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x40]
sub esi, dword [ebp - 0x40]
sub esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
mov ecx, dword [ebp - 0x54]
setle dl
xor eax, eax
cmp edx, esi
push 0
setg al
sub ecx, eax
dec ecx
neg ecx
pop eax
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x40], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff5
jg 0x10033903
or esi, 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 9
jne 0x100338f0
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x10f8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x40], eax
push 4
call fcn.100194f6
mov dword [ebp - 4], 0xf
xor ebx, ebx
mov dword [ebp - 0x10], 0xfffffffa
inc ebx
mov dword [ebp - 0x48], 0xfffffffb
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x38], 0x83d1f0df
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x100339b8
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x48]
sub ecx, eax
sub ecx, dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jg 0x100339d7
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x1c], eax
je 0x100339d9
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x1c]
cmp edx, eax
push 2
setle cl
xor eax, eax
cmp ecx, 0xf635
pop edx
setl al
xor ecx, ecx
cmp eax, 0xcf041577
sete cl
xor eax, eax
sub ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x30], 0x9a6e4c1c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x10033a35
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x43c], 0x2de4bf74
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10033a1d
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x10033a55
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2e4], 0x8597a0b8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10033a3d
xor eax, eax
mov dword [ebp - 0x18], 0xfffffff3
cmp dword [ebp - 0x18], 0xfffffffd
jl 0x10033c2e
jmp 0x10033a6d
push 2
xor eax, eax
pop edx
mov dword [ebp - 0x24], 0x1f13
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x28], 0x47610b5c
mov dword [ebp - 0x30], 0x913db3b8
cmp dword [ebp - 0x18], eax
je 0x10033a8d
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x43c]
mov eax, dword [ebp - 0x24]
xor eax, eax
cmp dword [ebp - 0x43c], eax
je 0x10033b9a
mov dword [ebp - 0x10], 0xffff
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x10], eax
jne 0x10033ae4
imul eax, dword [ebp - 0x24], 0x3610
xor ecx, ecx
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x2e4], ebx
mov eax, dword [ebp - 0x10]
cmp eax, esi
setle cl
sub ecx, 0x2761e88f
jne 0x10033ae4
xor eax, eax
mov ecx, eax
jmp 0x10033ae6
mov ecx, ebx
xor eax, eax
cmp ecx, edx
setne al
add eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x24]
jge 0x10033afe
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x10], eax
je 0x10033b00
mov ecx, ebx
mov eax, dword [ebp - 0x24]
dec ecx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
dec ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x24]
cmp eax, 2
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x2e4]
mov eax, dword [ebp - 0x2e4]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x43c], ecx
mov eax, dword [ebp - 0x2e4]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setle dl
imul eax, edx
cmp eax, 0xfffffff7
jne 0x10033b87
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
add eax, 5
mov dword [ebp - 0x30], eax
xor eax, eax
jmp 0x10033c0b
mov dword [ebp - 0x28], 0x1c
jmp 0x10033c00
mov dword [ebp - 0x48], 0xfffffff6
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edx
jge 0x10033bca
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x43c], 0x4a32a0c0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10033bb2
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], ebx
jg 0x10033bfd
mov dword [ebp - 0x30], 9
dec dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp + eax*4 - 0x2e4]
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x2e4], ecx
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], ebx
jle 0x10033bd2
xor eax, eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x11
jle 0x10033ba3
cmp dword [ebp - 0x28], eax
jne 0x10033c2e
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10033c21
push 0x1446
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffffd
jge 0x10033a68
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10033c58
push dword [ebp - 0x10]
lea ecx, [ebp - 0x10f8]
call fcn.10019594
mov dword [eax], 0x3efe35fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10033c39
xor eax, eax
mov dword [ebp - 0x28], 0xffffffe2
cmp dword [ebp - 0x28], 0x1d
jg 0x10034b68
mov esi, 0xd53a38d0
jmp 0x10033c72
xor eax, eax
mov dword [ebp - 0x10], 0xca0029bf
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10033c95
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x848], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10033c81
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10033cb7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5a4], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10033c9e
xor eax, eax
mov dword [ebp - 0x5a0], eax
cmp dword [ebp - 0x5a0], ebx
jge 0x10033ce6
mov eax, dword [ebp - 0x5a0]
mov dword [ebp + eax*4 - 0x848], 0x59e57ad9
inc dword [ebp - 0x5a0]
cmp dword [ebp - 0x5a0], ebx
jl 0x10033cc5
xor eax, eax
mov dword [ebp - 0x10], 0xffffffe3
jmp 0x10033d1c
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10033d19
push eax
push 0x1e0d
push 0x1d14
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetPixel]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1a
jge 0x10033cef
mov dword [ebp - 0x30], ebx
lea ecx, [ebp - 0x5bc]
mov dword [ebp - 0x3c], 0x53aa9ac7
push ebx
call fcn.100194f6
mov byte [ebp - 4], 0x10
xor eax, eax
mov dword [ebp - 0x10], 0xcf5aa05d
mov dword [ebp - 0x560], esi
mov dword [ebp - 0x55c], esi
mov dword [ebp - 0x558], esi
mov dword [ebp - 0x554], esi
mov dword [ebp - 0x38], 0x626aece0
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10033d89
push dword [ebp - 0x10]
lea ecx, [ebp - 0x5bc]
call fcn.10019594
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10033d6c
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10033db4
push eax
lea ecx, [ebp - 0x5bc]
mov esi, ebx
call fcn.10019594
mov dword [eax], esi
cmp esi, dword [ebp - 0x3c]
jg 0x10033db1
xor eax, eax
lea ecx, [ebp - 0x5bc]
push eax
call fcn.10019594
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov ecx, ebx
sub ecx, eax
add ecx, dword [ebp - 0x3c]
imul ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x13
jl 0x10033fbb
or esi, 0xffffffff
mov dword [ebp - 0x40], 0x97756eb3
mov dword [ebp - 0x2c], 8
mov dword [ebp - 0x1c], 0xbe4bca0f
mov dword [ebp - 0x3c], 0x17
jmp 0x10033fa5
mov dword [ebp - 0x18], 0x2522abf7
mov dword [ebp - 0x48], 0xbf624e19
mov dword [ebp - 0x48], 0xd8c2
mov dword [ebp - 0x48], 0x93f1bfd6
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jl 0x10033fa2
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x10033f99
mov dword [ebp - 0x48], 0xa52fa57a
mov dword [ebp - 0x48], 0xfffffffb
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x10033e76
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x238], 0xdacb314b
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10033e5d
xor eax, eax
mov dword [ebp - 0x238], 3
cmp dword [ebp - 0x238], eax
jl 0x10033f90
push dword [ebp - 0x18]
lea ecx, [ebp - 0x5bc]
call fcn.10019594
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x55c]
imul ecx, dword [ebp - 0x2c], 0xffff
mov eax, dword [ebp - 0x238]
cmp ecx, eax
setle dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
lea ecx, [ebp - 0x5bc]
setge dl
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x234]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x560]
push dword [ebp - 0x18]
call fcn.10019594
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x554]
add ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
dec dword [ebp - 0x40]
cmp eax, ecx
je 0x10033f0a
mov ecx, ebx
jmp 0x10033f0e
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp + eax*4 - 0x554]
mov eax, dword [ebp - 0x18]
imul edx, ecx
mov eax, dword [ebp + eax*4 - 0x560]
sub edx, 4
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setge cl
mov dword [ebp - 0x48], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x48]
test eax, eax
setg cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x2c], eax
jge 0x10033f55
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x234]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0xb454
setg al
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0x238]
jns 0x10033e8c
xor eax, eax
dec dword [ebp - 0x20]
jns 0x10033e46
dec dword [ebp - 0x18]
jns 0x10033e33
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], esi
jne 0x10033e0b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x13
jge 0x10033dea
lea ecx, [ebp - 0x5bc]
mov byte [ebp - 4], 0xf
call fcn.10019578
mov dword [ebp - 0x38], 0x1009d434
lea ecx, [ebp - 0xcb4]
push 2
call fcn.100194f6
push 3
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0x11
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1003401d
push dword [ebp - 0x18]
lea ecx, [ebp - 0xcb4]
call fcn.10019594
mov dword [eax], 0x571177e8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10033ffe
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10034045
push dword [ebp - 0x18]
lea ecx, [ebp - 0x4e8]
call fcn.10019594
mov dword [eax], 0xaeef20fe
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10034026
xor eax, eax
push eax
lea ecx, [ebp - 0x4e8]
call fcn.10019594
and dword [eax], 0
jmp 0x10034081
xor eax, eax
push eax
call fcn.10019594
lea ecx, [ebp - 0xcb4]
push dword [eax]
call fcn.10019594
lea ecx, [ebp - 0x4e8]
mov dword [eax], 0x1dbeccce
xor eax, eax
push eax
call fcn.10019594
inc dword [eax]
xor eax, eax
lea ecx, [ebp - 0x4e8]
push eax
call fcn.10019594
lea ecx, [ebp - 0x4e8]
cmp dword [eax], 2
jl 0x10034056
call fcn.10019578
lea ecx, [ebp - 0xcb4]
mov byte [ebp - 4], 0xf
call fcn.10019578
mov dword [ebp - 0x30], 0xaa43b2b7
xor eax, eax
mov dword [ebp - 0x54], 2
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x48], 0x1c8b
mov dword [ebp - 0x30], 0x79c90e69
mov dword [ebp - 0x10], eax
jmp 0x100340ec
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x124], 0x8c9dffbe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100340db
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0x3c1d
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x124]
jg 0x1003411c
mov eax, dword [ebp - 0x124]
mov eax, dword [ebp - 0x124]
xor edx, edx
mov ecx, dword [ebp - 0x124]
mov eax, dword [ebp - 0x54]
cmp eax, ecx
mov ecx, 0xffff
setl dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x124]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x20]
mov edx, 0x55e00fe1
setge cl
xor ebx, ebx
sub edx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x54]
setle bl
xor ecx, ecx
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10034196
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
movdqa xmm0, xmmword [0x1000a9a0]
lea eax, [ebp - 0x11b4]
push eax
lea eax, [ebp - 0x11c4]
push eax
lea ecx, [ebp - 0x13ac]
movdqu xmmword [ebp - 0x11c4], xmm0
call fcn.100195a3
lea ecx, [ebp - 0x248]
mov esi, eax
call fcn.1000bbe3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xedc]
push dword [esi]
call fcn.10019552
mov byte [ebp - 4], 0x13
xor ebx, ebx
mov dword [ebp - 0x18], 0x5dcec3d7
inc ebx
xor eax, eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10034210
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x850], 0xed857289
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100341f8
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x100342fa
xor edx, edx
mov dword [ebp - 0x10], 0x89a2
mov dword [ebp - 0x54], 0x1aca
mov eax, dword [ebp - 0x10]
cmp eax, 3
setne dl
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setne cl
xor ebx, ebx
cmp ecx, eax
setne bl
xor edx, edx
imul ebx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setne dl
xor eax, eax
cmp edx, ebx
jl 0x10034271
cmp dword [ebp - 0x10], eax
je 0x10034271
xor ebx, ebx
inc ebx
mov edx, ebx
jmp 0x10034276
xor ebx, ebx
mov edx, eax
inc ebx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
setne cl
cmp ecx, dword [ebp - 0x18]
je 0x1003428e
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x10034290
mov ecx, ebx
mov eax, dword [ebp - 0x18]
add eax, ecx
je 0x100342a2
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x100342a4
mov edx, ebx
jmp 0x100342a6
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
setg cl
xor edx, edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
mov eax, dword [ebp - 0x54]
setge dl
xor ecx, ecx
sub edx, 0x1993
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x850], ecx
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10034320
push eax
push 0xea9
push 0xefe
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
jmp 0x10034320
mov dword [ebp - 0x18], eax
jmp 0x1003431a
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10034317
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1f
jne 0x100342ff
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0xec4]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], 0x1713b910
push 0xfffffffffffffff7
pop esi
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x8b4], esi
mov dword [ebp - 0x8b0], esi
mov dword [ebp - 0x8ac], esi
mov dword [ebp - 0x8a8], esi
mov dword [ebp - 0x38], 0xe1b1b552
push 4
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x10], eax
jmp 0x1003438b
push dword [ebp - 0x10]
lea ecx, [ebp - 0xec4]
call fcn.10019594
mov dword [eax], 0x3efe35fe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10034374
mov dword [ebp - 0x10], 0xffffffe2
cmp dword [ebp - 0x10], 0x1d
jg 0x100344c1
movdqa xmm0, xmmword [0x1000a9a0]
lea eax, [ebp - 0x1254]
push eax
lea eax, [ebp - 0x1264]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 0x1009d434
lea ecx, [ebp - 0x142c]
mov dword [ebp - 0x30], 0xaa43b2b7
push eax
movdqu xmmword [ebp - 0x1264], xmm0
call fcn.100195a3
lea ecx, [ebp - 0x259]
mov esi, eax
call fcn.1000bbe3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1128]
push dword [esi]
call fcn.10019552
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10034498
mov dword [ebp - 0x1c], 0x33c
or eax, 0xffffffff
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x40], 0xfffffff8
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push ebx
mov eax, dword [ebp + eax*4 - 0x8b4]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x8b4]
mov eax, dword [ebp - 0x40]
call fcn.10019594
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp + ecx*4 - 0x8b4]
sub edx, dword [eax]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, ebx
setl cl
add ecx, edx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x8b4]
mov eax, dword [ebp - 0x40]
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
lea ecx, [ebp - 0x1128]
jle 0x10034414
mov byte [ebp - 4], 0x14
call fcn.10019578
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1d
jle 0x100343a2
push 0xfffffffffffffff7
pop esi
lea ecx, [ebp - 0xec4]
mov byte [ebp - 4], 0x13
call fcn.10019578
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 3
jg 0x10034b44
jmp 0x100344e3
mov dword [ebp - 0x2c], 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x40], 0xf6657eef
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10034514
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x68], 3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100344ff
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10034780
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x68]
test eax, eax
mov eax, dword [ebp - 0x2c]
sete cl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x68]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setle dl
xor ebx, ebx
sub edx, 0x1c35c96f
imul edx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x68]
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x2c]
setg bl
sub ebx, 0x8f5f4990
mov eax, dword [ebp + eax*4 - 0x68]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
mov eax, dword [ebp - 0x2c]
setne cl
sub ecx, dword [ebp + eax*4 - 0x68]
je 0x10034592
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10034792
lea ecx, [ebp - 0xedc]
mov byte [ebp - 4], 0xf
call fcn.10019578
inc dword [ebp - 0x28]
mov esi, 0xd53a38d0
cmp dword [ebp - 0x28], 0x1d
jle 0x10033c70
or esi, 0xffffffff
lea ecx, [ebp - 0x10f8]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x10], 0xa9d9e177
xor eax, eax
mov dword [ebp - 0x30], 0x11caf1e2
mov dword [ebp - 0x4c], 0x2ec6f0d4
mov dword [ebp - 0x48], 0x67f5d1cc
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x10], eax
jmp 0x10034bb1
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x8c], 0xb165
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10034ba0
mov eax, dword [ebp - 0x8c]
xor eax, eax
cmp dword [ebp - 0x8c], eax
je 0x10034bc8
mov eax, ebx
mov dword [ebp - 0x10], eax
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x8c]
cmp eax, ebx
mov eax, 0xfffe
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x8c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x8c]
setne dl
imul eax, edx
dec eax
jne 0x10034c05
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x30]
inc eax
imul eax, eax, 0x91f1
test eax, eax
jne 0x10034c29
mov edx, eax
cmp dword [ebp - 0x8c], eax
je 0x10034c2b
mov edx, ebx
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x8c]
sete cl
sub eax, ecx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x48]
add eax, 0xa86214b9
add ecx, eax
neg ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], 0xfffffffc
cmp dword [ebp - 0x10], 0xfffffffc
jl 0x10034ca0
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10034c81
push 0x1f82
push eax
push eax
push eax
call dword [sym.imp.GDI32.dll_CombineRgn]
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x10034c91
cmp dword [ebp - 0x8c], eax
jne 0x10034c97
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffee
jle 0x10034c86
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffffc
jge 0x10034c68
push 3
lea ecx, [ebp - 0x774]
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], 0x1a
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10034cd6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa4], 0xb9f9b31
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10034cbe
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10034cfe
push dword [ebp - 0x18]
lea ecx, [ebp - 0x774]
call fcn.10019594
mov dword [eax], 0xffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10034cdf
xor eax, eax
mov dword [ebp - 0xa4], eax
jmp 0x10034fad
mov dword [ebp - 0x3c], 0xf1bf506e
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x54], 0xfffa
mov dword [ebp - 0x48], 0x67c402fb
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffffa
je 0x10034f93
mov dword [ebp - 0x40], eax
mov edx, ebx
mov dword [ebp - 0x1c], 0x9eb11de2
xor ecx, ecx
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 0x30], 0xb676bd76
mov eax, dword [ebp - 0xa4]
sub edx, eax
mov eax, dword [ebp - 0x3c]
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, dword [ebp - 0x28]
jle 0x10034d73
cmp dword [ebp - 0x40], eax
je 0x10034d73
mov eax, ebx
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10034d82
cmp dword [ebp - 0x18], eax
jne 0x10034d87
cmp dword [ebp - 0x3c], eax
je 0x10034d8b
mov ecx, ebx
jmp 0x10034d8d
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x10034da6
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
inc eax
cmp eax, 0x7fd8b26d
setg cl
xor eax, eax
cmp eax, ecx
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xb3a3fc4b
mov eax, dword [ebp - 0xa4]
setne cl
xor edx, edx
cmp ecx, 5
setg dl
add eax, edx
cmp eax, dword [ebp - 0x3c]
jge 0x10034ef5
xor eax, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10034e06
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x85c], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10034ded
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10034e2b
push 0x12ae
push 0x492
push 0xdcc
push 0xb5e
call dword [sym.imp.GDI32.dll_CreateRectRgn]
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10034ee9
mov dword [ebp - 0x48], 0xd884bb86
lea ecx, [ebp - 0xb7c]
push 3
call fcn.100194f6
xor eax, eax
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x10], eax
jmp 0x10034e69
push dword [ebp - 0x10]
lea ecx, [ebp - 0xb7c]
call fcn.10019594
mov dword [eax], 0xef7b6068
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10034e52
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x85c]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x85c], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x85c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x85c], 0
jge 0x10034eac
mov eax, dword [ebp - 0x858]
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0xb7c]
xor eax, eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x54]
xor eax, eax
push eax
call fcn.10019594
mov eax, dword [ebp - 0xa4]
lea ecx, [ebp - 0xb7c]
mov dword [ebp - 0x30], ebx
mov byte [ebp - 4], 0x1a
call fcn.10019578
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10034e33
jmp 0x10034f6f
mov dword [ebp - 0x30], 0xfff6
mov dword [ebp - 0x4c], 0x57c19de8
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10034f2b
push 2
lea ecx, [ebp - 0x774]
call fcn.10019594
cmp dword [eax], 0
jne 0x10034f2b
xor eax, eax
mov esi, eax
jmp 0x10034f2d
mov esi, ebx
push ebx
lea ecx, [ebp - 0x774]
call fcn.10019594
mov ecx, dword [ebp - 0x3c]
xor edx, edx
cmp esi, ecx
setle dl
xor ecx, ecx
cmp dword [eax], edx
mov eax, dword [ebp - 0xa4]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x54]
xor eax, eax
mov dword [ebp - 0x4c], eax
push ebx
lea ecx, [ebp - 0x774]
call fcn.10019594
push 0
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffffa
pop eax
jne 0x10034d32
or esi, 0xffffffff
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x10034fa7
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
dec dword [ebp - 0xa4]
cmp dword [ebp - 0xa4], esi
jge 0x10034d09
lea ecx, [ebp - 0x774]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x54], 2
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x48], 0x1c8b
mov dword [ebp - 0x30], 0x79c90e69
mov dword [ebp - 0x10], eax
jmp 0x10034ffe
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x154], 0x8c9dffbe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10034fed
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0x3c1d
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x154]
jg 0x1003502e
mov eax, dword [ebp - 0x154]
mov eax, dword [ebp - 0x154]
xor edx, edx
mov ecx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x54]
cmp eax, ecx
mov ecx, 0xffff
setl dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
sub ecx, eax
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
mov edx, 0x55e00fe1
setge cl
xor ebx, ebx
sub edx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x54]
setle bl
xor ecx, ecx
cmp eax, ebx
setne cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x100350aa
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x10], 0xfffffff8
inc ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xfffffff5
jl 0x100350df
mov dword [ebp - 0x30], 0x473eb905
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
jne 0x1003511a
mov eax, dword [ebp - 0x30]
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff5
push 0
pop eax
jge 0x100350c0
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x54], 0x7dcd
mov dword [ebp - 0x4c], 0xdbc1c234
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10035115
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xef4], 0xae35
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100350fc
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10035157
push 0x1579
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov dword [ebp - 0x30], 0x9ea98311
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xef4]
mov dword [ebp - 0x30], eax
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x10035154
push 0x22fe
push 0x127
push eax
call dword [sym.imp.GDI32.dll_OffsetRgn]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10035125
push 8
mov dword [ebp - 0x18], 0x15
pop ecx
jmp 0x100351a8
mov dword [ebp - 0x48], 0xe817
mov dword [ebp - 0x30], 0x62a04f77
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x58], 0xfffffffb
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0xef4]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x58], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jle 0x10035169
xor eax, eax
mov dword [ebp - 0x28], 0x7e2799ac
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xe
je 0x10035230
push ebx
lea ecx, [ebp - 0xa1c]
call fcn.100194f6
mov dword [ebp - 4], 0x1c
xor eax, eax
mov dword [ebp - 0x48], 0xefa9d19a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10035201
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa1c]
call fcn.10019594
mov dword [eax], 4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100351e3
xor eax, eax
push eax
lea ecx, [ebp - 0xa1c]
call fcn.10019594
lea ecx, [ebp - 0xa1c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 4], esi
cmp dword [ebp - 0x48], eax
call fcn.10019578
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xe
jne 0x100351bf
xor eax, eax
mov dword [ebp - 0x3c], 0xfffffffd
mov dword [ebp - 0x1c], 0x80a7c6dd
mov dword [ebp - 0x20], 0xfaa9634d
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x3c], 0xffffffea
cmp dword [ebp - 0x3c], 0x18
jle 0x100354a1
jmp 0x1003525d
xor eax, eax
mov dword [ebp - 0x24], 6
lea ecx, [ebp - 0xa34]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], eax
push ebx
call fcn.100194f6
xor eax, eax
mov dword [ebp - 4], 0x1d
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100352ab
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa34]
call fcn.10019594
mov dword [eax], 0xfffffff9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x1003528d
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x10035419
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
setge dl
xor eax, eax
sub edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x3c]
cmp edx, 0xfffffffe
setge al
cmp eax, dword [ebp - 0x3c]
jle 0x100352e5
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x100352e7
mov edx, ebx
jmp 0x100352e9
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x24]
sete cl
sub eax, ecx
sub eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x24]
jg 0x10035303
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, 4
setl cl
add ecx, dword [ebp - 0x3c]
jne 0x1003531a
mov dword [ebp - 0x38], 0x820eaada
mov dword [ebp - 0x38], 0x6833686a
mov dword [ebp - 0x38], esi
push 6
pop ecx
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x148], ecx
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x38], 0xdec7e1ef
mov dword [ebp - 0x40], 0xf9bdefab
cmp dword [ebp - 0x24], eax
jne 0x10035493
inc dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
sub eax, 0xca67b110
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 4], esi
cmp dword [ebp - 0x1c], eax
lea ecx, [ebp - 0xa34]
call fcn.10019578
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x18
jg 0x1003525b
jmp 0x100354a1
lea ecx, [ebp - 0xa34]
mov dword [ebp - 4], esi
call fcn.10019578
mov dword [ebp - 0x10], 0xa9d9e177
xor eax, eax
mov dword [ebp - 0x30], 0x11caf1e2
mov dword [ebp - 0x4c], 0x2ec6f0d4
mov dword [ebp - 0x48], 0x67f5d1cc
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x10], eax
jmp 0x100354dc
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x84], 0xb165
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100354cb
mov eax, dword [ebp - 0x84]
xor eax, eax
cmp dword [ebp - 0x84], eax
je 0x100354f3
mov eax, ebx
mov dword [ebp - 0x10], eax
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x84]
cmp eax, ebx
mov eax, 0xfffe
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x84]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x84]
setne dl
imul eax, edx
dec eax
jne 0x10035530
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x30]
inc eax
imul eax, eax, 0x91f1
test eax, eax
jne 0x10035554