Function at 0x10033dc5
Capabilities:
Connect pipe
Create pipe
Delete file
Enumerate files on windows
Get common file path
Get file attributes
Get geographical location
Get graphical window text
Get memory capacity
Parse pe header
Query or enumerate registry value
Set thread local storage value

Disassembly:
mov eax, 0x10089506
call fcn.10087e94
mov eax, 0x175c
call fcn.100835c0
push ebx
push esi
push edi
push 2
pop ebx
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x254]
push ebx
mov byte [ebp - 0x69], dl
call fcn.10017bbe
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x20], 0xa66fe7d8
mov dword [ebp - 0x4c], 0xf5ebec5
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], 0xffff
mov dword [ebp - 0x38], 0x216d7279
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10033e3f
push dword [ebp - 0x10]
lea ecx, [ebp - 0x254]
call fcn.10017c2b
mov dword [eax], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10033e21
xor eax, eax
xor edi, edi
mov dword [ebp - 0x20], eax
inc edi
jmp 0x10033f3a
mov dword [ebp - 0x5c], 0xfffc
lea ecx, [ebp - 0x254]
mov dword [ebp - 0x4c], 0xfffffff6
push dword [ebp - 0x20]
call fcn.10017c2b
push dword [ebp - 0x20]
lea ecx, [ebp - 0x254]
cmp dword [eax], 0xfffffffc
sbb esi, esi
neg esi
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
setne cl
xor eax, eax
cmp ecx, 0xfffc
lea ecx, [ebp - 0x254]
setne al
mov dword [ebp - 0x4c], eax
xor eax, eax
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x4c]
imul ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x254]
push dword [ebp - 0x20]
call fcn.10017c2b
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x254]
push dword [ebp - 0x20]
call fcn.10017c2b
cmp dword [eax], edi
jne 0x10033ed5
xor eax, eax
cmp dword [ebp - 0x5c], eax
je 0x10033ed7
mov esi, edi
jmp 0x10033ed9
xor eax, eax
mov esi, eax
push dword [ebp - 0x20]
lea ecx, [ebp - 0x254]
call fcn.10017c2b
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x254]
imul eax, dword [ebp - 0x20]
sub eax, esi
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
xor eax, eax
push eax
call fcn.10017c2b
and dword [eax], 0
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10033f1f
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x4c]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jle 0x10033f16
push dword [ebp - 0x20]
lea ecx, [ebp - 0x254]
call fcn.10017c2b
cmp dword [eax], 0
jne 0x10033f43
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jle 0x10033e4a
or esi, 0xffffffff
lea ecx, [ebp - 0x254]
mov dword [ebp - 4], esi
call fcn.10017c26
mov dword [ebp - 0x54], esi
lea ecx, [ebp - 0xa50]
push ebx
call fcn.10017bbe
mov eax, 0xcccddd1d
mov dword [ebp - 4], edi
mov dword [ebp - 0x7d0], eax
lea ecx, [ebp - 0xa38]
mov dword [ebp - 0x7cc], eax
mov dword [ebp - 0x7c8], eax
mov dword [ebp - 0x7c4], eax
push edi
call fcn.10017bbe
mov byte [ebp - 4], bl
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x38], 0xb9628eaf
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10033fcb
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa50]
call fcn.10017c2b
mov dword [eax], 0x2eac
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10033fad
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10033fe7
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa38]
call fcn.10017c2b
mov dword [eax], 0x22ba7b7e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10033fd0
push edi
lea ecx, [ebp - 0xa50]
mov dword [ebp - 0x7cc], esi
call fcn.10017c2b
cmp dword [eax], esi
jge 0x1003404c
push edi
lea ecx, [ebp - 0xa50]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0xa38]
push eax
call fcn.10017c2b
mov dword [ebp - 0x1c], 0x5590
xor edx, edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7d0]
imul ecx, eax
mov eax, dword [ebp - 0x7cc]
cmp eax, ecx
mov eax, dword [ebp - 0x7cc]
setle dl
sub edx, eax
je 0x1003404c
mov esi, edi
xor eax, eax
jmp 0x10034050
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0xa38]
call fcn.10017c2b
xor ecx, ecx
push 3
cmp esi, dword [eax]
pop esi
sete cl
xor eax, eax
cmp ecx, 0xfffffffd
setle al
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x100340a3
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], eax
jl 0x100340a0
mov dword [ebp - 0x38], 0xf118c84b
mov dword [ebp - 0x38], 0x6c4779d4
mov dword [ebp - 0x38], edi
dec dword [ebp - 0x4c]
dec dword [ebp - 0x10]
jns 0x10034087
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x10
jne 0x10034078
lea ecx, [ebp - 0xa38]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa50]
call fcn.10017c26
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100340e5
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1610], 0xb1cecb45
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100340cd
xor eax, eax
inc dword [ebp - 0x54]
mov ebx, dword [sym.imp.KERNEL32.dll_GetACP]
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x100340fb
call ebx
xor eax, eax
mov dword [ebp - 0x38], 0x2799
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034114
push eax
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034127
push eax
push eax
call dword [sym.imp.USER32.dll_CopyRect]
xor eax, eax
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x38], 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10034154
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xeac], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1003413c
xor eax, eax
push 2
pop esi
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], eax
jl 0x10034188
mov dword [ebp - 0x38], 0xffffffff
xor ecx, ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x10]
push 0
mov eax, dword [ebp + eax*4 - 0xeac]
cmp eax, edi
pop eax
setge cl
mov dword [ebp - 0x1c], ecx
dec dword [ebp - 0x10]
jns 0x1003415f
push 3
mov dword [ebp - 0x1c], eax
pop ecx
cmp dword [ebp - 0x1c], ecx
jge 0x100341ab
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xeac], 0x9d94
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10034193
xor eax, eax
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x24], 0x7d8e
mov dword [ebp - 0x14], 0xe8f21009
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x5c], 0x13db
cmp dword [ebp - 0x24], eax
jne 0x100341df
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3c], 0xffffffff
xor eax, eax
push 0xfffffffffffffffa
pop ecx
cmp dword [ebp - 0x3c], eax
je 0x1003423f
mov dword [ebp - 0x5c], 0x5c22c920
mov dword [ebp - 0x3c], eax
jmp 0x10034234
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034228
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_SelectObject]
xor eax, eax
cmp dword [ebp - 0x5c], eax
jne 0x10034388
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffffe
jne 0x10034208
jmp 0x10034388
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], 0xbdf9020c
mov dword [ebp - 0x34], 0x34572090
mov dword [ebp - 0x44], 0xba006696
mov dword [ebp - 0x10], eax
jmp 0x1003426d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x110], 0xeba4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1003425c
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x14]
cmp ecx, eax
mov ecx, 0x6e90
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
add ecx, dword [ebp - 0x1c]
jne 0x100342a1
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov ecx, 0x4768
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
sub ecx, eax
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
mov eax, dword [ebp - 0x3c]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setge cl
xor edx, edx
cmp ecx, eax
setl dl
add edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
shl edx, 3
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setg dl
cmp edx, 0x9123ebaa
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x3c]
jne 0x10034382
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x10034330
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x748], 0x865d4863
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10034318
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x1003436d
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x10034368
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], eax
jl 0x10034363
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp + eax*4 - 0x110]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x110], ecx
dec dword [ebp - 0x34]
jns 0x10034348
xor eax, eax
dec dword [ebp - 0x20]
jns 0x10034340
dec dword [ebp - 0x1c]
jns 0x10034338
mov eax, dword [ebp - 0x748]
xor ecx, ecx
mov eax, dword [ebp - 0x5c]
test eax, eax
sets cl
mov dword [ebp - 0x3c], ecx
jmp 0x10034388
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x44], eax
push 3
pop eax
push eax
lea ecx, [ebp - 0x564]
call fcn.10017bbe
push 3
pop ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x4c], 0x99333c7d
mov dword [ebp - 0x10], 6
mov dword [ebp - 0x30], 0xf0ef
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x100343df
push ecx
pop edi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x564]
call fcn.10017c2b
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x100343be
xor edi, edi
xor eax, eax
push 3
inc edi
pop ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x100343ff
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x19c], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100343e7
xor eax, eax
mov dword [ebp - 0x194], esi
cmp dword [ebp - 0x194], eax
jl 0x100344e7
jmp 0x10034415
xor eax, eax
mov dword [ebp - 0x54], 6
lea ecx, [ebp - 0x564]
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0x495761be
mov dword [ebp - 0x44], 6
mov dword [ebp - 0x5c], edi
push dword [ebp - 0x194]
call fcn.10017c2b
push dword [ebp - 0x194]
lea ecx, [ebp - 0x564]
mov esi, eax
call fcn.10017c2b
mov ecx, dword [esi]
push dword [ebp - 0x194]
mov dword [eax], ecx
lea ecx, [ebp - 0x564]
call fcn.10017c2b
mov dword [eax], 0xfffffffc
mov eax, dword [ebp - 0x194]
dec dword [ebp - 0x10]
mov eax, dword [ebp - 0x19c]
add eax, dword [ebp - 0x194]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x194]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x5c]
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x100344b1
mov eax, dword [ebp - 0x44]
push dword [ebp - 0x194]
lea ecx, [ebp - 0x564]
call fcn.10017c2b
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
test eax, eax
setle cl
mov dword [ebp - 0x54], ecx
dec dword [ebp - 0x194]
jns 0x10034413
push 2
pop esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x564]
call fcn.10017c26
push esi
lea ecx, [ebp - 0x2c0]
call fcn.10017bbe
mov dword [ebp - 4], 4
mov eax, 0xffff
mov dword [ebp - 0x20], 0xa66fe7d8
mov dword [ebp - 0x4c], 0xf5ebec5
mov dword [ebp - 0x34], 0xfffffffe
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x38], 0x216d7279
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10034555
push dword [ebp - 0x10]
lea ecx, [ebp - 0x2c0]
call fcn.10017c2b
mov dword [eax], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10034537
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jg 0x1003465d
mov dword [ebp - 0x5c], 0xfffc
lea ecx, [ebp - 0x2c0]
mov dword [ebp - 0x4c], 0xfffffff6
push dword [ebp - 0x20]
call fcn.10017c2b
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2c0]
cmp dword [eax], 0xfffffffc
sbb esi, esi
neg esi
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
setne cl
xor eax, eax
cmp ecx, 0xfffc
lea ecx, [ebp - 0x2c0]
setne al
mov dword [ebp - 0x4c], eax
xor eax, eax
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x4c]
imul ecx, dword [eax]
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x2c0]
push dword [ebp - 0x20]
call fcn.10017c2b
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x2c0]
push dword [ebp - 0x20]
call fcn.10017c2b
cmp dword [eax], edi
jne 0x100345ec
xor eax, eax
cmp dword [ebp - 0x5c], eax
je 0x100345ee
mov esi, edi
jmp 0x100345f0
xor eax, eax
mov esi, eax
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2c0]
call fcn.10017c2b
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x2c0]
imul eax, dword [ebp - 0x20]
sub eax, esi
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
xor eax, eax
push eax
call fcn.10017c2b
and dword [eax], 0
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x10034636
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x4c]
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], edi
jle 0x1003462d
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2c0]
call fcn.10017c2b
cmp dword [eax], 0
jne 0x1003465a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jle 0x10034561
push 2
pop esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c0]
call fcn.10017c26
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10034684
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1620], 0xb1cecb45
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10034673
push esi
lea ecx, [ebp - 0xa80]
call fcn.10017bbe
mov eax, 0xcccddd1d
mov dword [ebp - 4], 5
mov dword [ebp - 0x7e8], eax
lea ecx, [ebp - 0xa68]
mov dword [ebp - 0x7e4], eax
mov dword [ebp - 0x7e0], eax
mov dword [ebp - 0x7dc], eax
push edi
call fcn.10017bbe
mov byte [ebp - 4], 6
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x38], 0xb9628eaf
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10034702
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa80]
call fcn.10017c2b
mov dword [eax], 0x2eac
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100346e4
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003471e
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa68]
call fcn.10017c2b
mov dword [eax], 0x22ba7b7e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10034707
push edi
lea ecx, [ebp - 0xa80]
mov dword [ebp - 0x7e4], 0xffffffff
call fcn.10017c2b
cmp dword [eax], 0xffffffff
jge 0x10034788
push edi
lea ecx, [ebp - 0xa80]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0xa68]
push eax
call fcn.10017c2b
mov dword [ebp - 0x1c], 0x5590
xor edx, edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7e8]
imul ecx, eax
mov eax, dword [ebp - 0x7e4]
cmp eax, ecx
mov eax, dword [ebp - 0x7e4]
setle dl
sub edx, eax
je 0x10034788
mov esi, edi
xor eax, eax
jmp 0x1003478c
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0xa68]
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
sete cl
xor eax, eax
cmp ecx, 0xfffffffd
setle al
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x10
je 0x100347e9
push 3
pop edx
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], eax
jl 0x100347e0
mov dword [ebp - 0x38], 0xf118c84b
mov dword [ebp - 0x38], 0x6c4779d4
mov dword [ebp - 0x38], edi
dec dword [ebp - 0x4c]
dec dword [ebp - 0x10]
jns 0x100347c7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x10
jne 0x100347b8
lea ecx, [ebp - 0xa68]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa80]
call fcn.10017c26
inc dword [ebp - 0x50]
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x14], 0x8b13
push edi
call fcn.10017bbe
mov dword [ebp - 4], 7
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x24], 0xfffffff7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1003484e
push dword [ebp - 0x10]
lea ecx, [ebp - 0x278]
call fcn.10017c2b
mov dword [eax], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10034834
xor eax, eax
inc dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jg 0x10034a02
jmp 0x10034861
xor eax, eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x4c], 0x283d1f0d
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x10034989
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], eax
jl 0x10034980
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x100348ac
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x840], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10034894
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x10034967
mov dword [ebp - 0x30], 0xfffffff6
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], eax
jg 0x1003493d
jmp 0x100348cb
xor eax, eax
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x5c], 0x8ecb302a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jg 0x1003492a
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x48], eax
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x840], edi
push dword [ebp - 0x1c]
call fcn.10017c2b
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x278]
mov esi, eax
call fcn.10017c2b
mov ecx, dword [esi]
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edi
setge al
mov dword [ebp - 0x5c], eax
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], eax
jle 0x100348dd
xor edi, edi
inc edi
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
xor eax, eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x100348c9
push dword [ebp - 0x14]
lea ecx, [ebp - 0x278]
call fcn.10017c2b
xor ecx, ecx
cmp dword [eax], 0xf7d26684
setne cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x100348b8
mov dword [ebp - 0x24], eax
jmp 0x10034972
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x1003496c
dec dword [ebp - 0x34]
jns 0x1003488c
dec dword [ebp - 0x20]
jns 0x1003487a
push eax
lea ecx, [ebp - 0x278]
call fcn.10017c2b
cmp dword [eax], 0
jne 0x100349a5
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x100349a7
mov esi, eax
jmp 0x100349a9
xor eax, eax
mov esi, edi
push eax
lea ecx, [ebp - 0x278]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0x278]
cmp eax, esi
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
push dword [ebp - 0x14]
call fcn.10017c2b
push dword [ebp - 0x14]
lea ecx, [ebp - 0x278]
call fcn.10017c2b
push dword [ebp - 0x14]
lea ecx, [ebp - 0x278]
call fcn.10017c2b
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jle 0x1003485f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x278]
call fcn.10017c26
xor eax, eax
mov dword [ebp - 0x1c], 0xd16df251
push 2
mov dword [ebp - 0x10], eax
pop esi
cmp dword [ebp - 0x10], esi
jge 0x10034a3d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1630], 0xc6a5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10034a25
xor eax, eax
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], eax
jl 0x10034a5d
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034a58
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x10034a45
mov dword [ebp - 0x1c], 0x10
jmp 0x10034a86
cmp byte [ebp - 0x25], 0
je 0x10034a83
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_SetTextColor]
xor eax, eax
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff0
mov byte [ebp - 0x25], al
jle 0x10034a66
cmp byte [ebp - 0x25], 0
je 0x10034bd3
mov dword [ebp - 0x30], 0x90ac204e
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xf
je 0x10034bc9
push 3
pop edi
push edi
lea ecx, [ebp - 0x11bc]
call fcn.10017bbe
push 8
pop eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x1648]
movdqa xmm0, xmmword [0x10008270]
lea eax, [ebp - 0x11f0]
push eax
lea eax, [ebp - 0x1200]
mov dword [ebp - 0x1c], 0x197f0a29
mov dword [ebp - 0x38], 0xa0b8ee41
mov dword [ebp - 0x38], 0xcb143e95
push eax
movdqu xmmword [ebp - 0x1200], xmm0
call fcn.10017c3a
lea ecx, [ebp - 0x1fb]
mov esi, eax
call fcn.100095d3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x14ac]
push dword [esi]
call fcn.10017c00
mov byte [ebp - 4], 9
xor eax, eax
mov dword [ebp - 0x4c], 0xfffffff7
push edi
mov dword [ebp - 0x10], eax
pop esi
cmp dword [ebp - 0x10], esi
jge 0x10034b56
push dword [ebp - 0x10]
lea ecx, [ebp - 0x11bc]
call fcn.10017c2b
mov dword [eax], 0x95e17ca0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10034b38
xor eax, eax
push 2
mov dword [ebp - 0x1c], eax
pop esi
jmp 0x10034b64
inc dword [ebp - 0x4c]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10034b5e
mov dword [ebp - 0x1c], eax
jmp 0x10034b99
mov dword [ebp - 0x14], 0xfffffffb
jmp 0x10034b90
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034b8d
push 0x2310
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x17
jl 0x10034b77
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 5
jne 0x10034b6e
lea ecx, [ebp - 0x14ac]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x11bc]
call fcn.10017c26
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xf
jne 0x10034ab0
xor edi, edi
inc edi
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
call ebx
xor eax, eax
mov dword [ebp - 0x4c], 0xca7b5cf1
mov dword [ebp - 0x5c], 6
mov dword [ebp - 0x54], 0xffffffff
mov dword [ebp - 0x44], 0x120d
push 0xfffffffffffffffa
mov dword [ebp - 0x2c], 0x5bb08661
pop ecx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x10], eax
jmp 0x10034c12
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xb4], 0xcf415d72
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10034c01
mov eax, dword [ebp - 0xb4]
xor edx, edx
mov eax, dword [ebp - 0xb0]
imul eax, dword [ebp - 0xb0]
push 3
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb4]
neg ecx
cmp eax, ecx
mov eax, dword [ebp - 0xb4]
setne dl
xor ecx, ecx
cmp eax, edx
pop eax
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x4c]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
mov dword [ebp - 0xb0], ecx
test ecx, ecx
je 0x10034c79
mov edx, edi
cmp dword [ebp - 0xb4], eax
jne 0x10034c7b
mov edx, eax
mov eax, dword [ebp - 0x5c]
xor ecx, ecx
mov edi, dword [sym.imp.GDI32.dll_PlayEnhMetaFile]
cmp edx, eax
push 0xfffffffffffffff9
setge cl
xor eax, eax
neg ecx
cmp ecx, 0xffffffff
setl al
xor ecx, ecx
test eax, eax
setle cl
sub ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x44]
pop ecx
jge 0x10034d6f
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x10034d71
mov dword [ebp - 0x10], ecx
push 0xfffffffffffffffe
pop ecx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x44], 0xef6f1ac2
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10034ce8
xor edx, edx
inc edx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x4f0], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10034cd4
xor eax, eax
push 3
mov dword [ebp - 0x14], eax
pop esi
jmp 0x10034d01
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x144c], 0xfffffffb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10034cf0
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x4f0]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4f0]
mov eax, dword [ebp - 0xb0]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x4f0]
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
setle dl
xor ecx, ecx
mov dword [ebp - 0x1444], edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
cmp eax, 0x91bf520f
setne cl
mov dword [ebp - 0x44], ecx
jmp 0x10034de2
xor eax, eax
mov dword [ebp - 0x2c], 0x50fa
mov dword [ebp - 0x4c], 0xfffffff7
mov dword [ebp - 0x5c], 0x3d975123
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10034da1
push eax
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
mov eax, dword [ebp - 0x50]
xor edx, edx
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0xb4], esi
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
push 3
setg dl
xor ecx, ecx
cmp esi, 0x2e91
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x4c]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
pop esi
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x5c], ecx
xor ebx, ebx
inc ebx
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x1c], ebx
jmp 0x10034efc
mov dword [ebp - 0x24], 0x6ec7
lea ecx, [ebp - 0x774]
push ebx
call fcn.10017bbe
mov dword [ebp - 4], 0xa
xor eax, eax
mov dword [ebp - 0x5c], 0xffffffff
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10034e3e
push dword [ebp - 0x14]
lea ecx, [ebp - 0x774]
call fcn.10017c2b
mov dword [eax], 0xfffffffd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10034e20
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10034e5e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x141c], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10034e46
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10034f08
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
cmp eax, 0x928d9ba5
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 4
setl cl
xor eax, eax
cmp ecx, dword [ebp - 0x24]
jge 0x10034e94
mov ecx, ebx
cmp dword [ebp - 0x24], eax
jne 0x10034e96
mov ecx, eax
mov eax, dword [ebp - 0x24]
sub ecx, eax
mov esi, dword [ebp - 0x1c]
xor eax, eax
add esi, ecx
lea ecx, [ebp - 0x774]
push eax
call fcn.10017c2b
lea ecx, [ebp - 0x774]
mov dword [eax], esi
mov dword [ebp - 0x5c], esi
mov eax, dword [ebp - 0x1c]
xor eax, eax
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x24]
xor edx, edx
cmp dword [eax], ecx
lea ecx, [ebp - 0x774]
setg dl
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1414], 0xc8af9534
or dword [ebp - 4], 0xffffffff
call fcn.10017c26
inc dword [ebp - 0x1c]
push 3
pop esi
cmp dword [ebp - 0x1c], 0x16
jg 0x10034df5
jmp 0x10034f17
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x774]
call fcn.10017c26
push 2
lea ecx, [ebp - 0xa98]
call fcn.10017bbe
mov eax, 0xcccddd1d
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x7fc], eax
lea ecx, [ebp - 0x8a0]
mov dword [ebp - 0x7f8], eax
mov dword [ebp - 0x7f4], eax
mov dword [ebp - 0x7f0], eax
push ebx
call fcn.10017bbe
mov byte [ebp - 4], 0xc
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x38], 0xb9628eaf
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10034f93
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa98]
call fcn.10017c2b
mov dword [eax], 0x2eac
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10034f74
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10034faf
push dword [ebp - 0x14]
lea ecx, [ebp - 0x8a0]
call fcn.10017c2b
mov dword [eax], 0x22ba7b7e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10034f98
push ebx
lea ecx, [ebp - 0xa98]
mov dword [ebp - 0x7f8], 0xffffffff
call fcn.10017c2b
cmp dword [eax], 0xffffffff
jge 0x10035019
push ebx
lea ecx, [ebp - 0xa98]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0x8a0]
push eax
call fcn.10017c2b
mov dword [ebp - 0x1c], 0x5590
xor edx, edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7fc]
imul ecx, eax
mov eax, dword [ebp - 0x7f8]
cmp eax, ecx
mov eax, dword [ebp - 0x7f8]
setle dl
sub edx, eax
je 0x10035019
mov esi, ebx
xor eax, eax
jmp 0x1003501d
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0x8a0]
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
sete cl
xor eax, eax
cmp ecx, 0xfffffffd
setle al
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x10
je 0x1003507a
push 3
pop edx
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], eax
jl 0x10035071
mov dword [ebp - 0x38], 0xf118c84b
mov dword [ebp - 0x38], 0x6c4779d4
mov dword [ebp - 0x38], ebx
dec dword [ebp - 0x4c]
dec dword [ebp - 0x10]
jns 0x10035058
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x10
jne 0x10035049
lea ecx, [ebp - 0x8a0]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa98]
call fcn.10017c26
mov dword [ebp - 0x54], 0xf33880e0
lea ecx, [ebp - 0x20c]
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x1c], 0xd562b994
mov dword [ebp - 0x30], 0xbb75da2c
mov dword [ebp - 0x4c], ebx
push 2
call fcn.10017bbe
mov dword [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x5c], 7
mov dword [ebp - 0x10], eax
jmp 0x100350ed
push dword [ebp - 0x10]
lea ecx, [ebp - 0x20c]
call fcn.10017c2b
or dword [eax], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100350d9
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, 0x4cd021a
mov eax, dword [ebp - 0x34]
setne cl
inc dword [ebp - 0x34]
cmp eax, ecx
jne 0x1003510e
mov esi, ebx
jmp 0x10035112
xor eax, eax
mov esi, eax
push ebx
lea ecx, [ebp - 0x20c]
call fcn.10017c2b
xor ebx, ebx
lea ecx, [ebp - 0x20c]
cmp esi, dword [eax]
sete bl
xor eax, eax
push eax
call fcn.10017c2b
mov edx, dword [ebp - 0x48]
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, dword [eax]
setne cl
xor ebx, ebx
neg ecx
inc ebx
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0x20c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x54], 0x8b6b0e1b
push ebx
call fcn.10017c2b
mov esi, eax
lea ecx, [ebp - 0x20c]
xor eax, eax
push eax
call fcn.10017c2b
mov ecx, dword [esi]
xor edx, edx
push ebx
add ecx, dword [eax]
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
lea ecx, [ebp - 0x20c]
setge dl
mov dword [ebp - 0x4c], edx
call fcn.10017c2b
mov edx, dword [ebp - 0x4c]
mov esi, eax
mov ecx, dword [ebp - 0x54]
xor eax, eax
cmp ecx, edx
lea ecx, [ebp - 0x20c]
setl al
xor ebx, ebx
cmp eax, dword [esi]
setle bl
xor eax, eax
push eax
call fcn.10017c2b
push 0
lea ecx, [ebp - 0x20c]
cmp ebx, dword [eax]
pop ebx
setl bl
xor eax, eax
inc eax
push eax
call fcn.10017c2b
lea ecx, [ebp - 0x20c]
sub ebx, dword [eax]
xor eax, eax
mov dword [ebp - 0x30], ebx
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x30]
sub ecx, dword [eax]
je 0x100351fb
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x100351fd
xor ebx, ebx
inc ebx
mov esi, ebx
jmp 0x10035202
xor eax, eax
xor ebx, ebx
mov esi, eax
inc ebx
push eax
lea ecx, [ebp - 0x20c]
call fcn.10017c2b
xor ecx, ecx
cmp esi, 0x51c76d7b
setne cl
mov dword [eax], ecx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
neg ecx
imul eax, ecx
lea ecx, [ebp - 0x20c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x5c], eax
or dword [ebp - 4], 0xffffffff
call fcn.10017c26
mov dword [ebp - 0x34], ebx
xor eax, eax
mov dword [ebp - 0x4c], 0xb8d96378
mov dword [ebp - 0x54], 0x5eaf
mov dword [ebp - 0x4c], 0x14c5530c
mov dword [ebp - 0x5c], 0x3acb6d64
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], al
je 0x10035272
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x34]
neg ecx
push 3
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0xb18]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x5c], 0xfffffffb
xor eax, eax
pop esi
mov dword [ebp - 0x4c], 0xca7b5cf1
mov dword [ebp - 0x20], 0xe5f3
mov dword [ebp - 0x10], eax
push esi
call fcn.10017bbe
xor eax, eax
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x100352f9
push 0xfffffffffffffffa
pop ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0xb18]
call fcn.10017c2b
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100352dc
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10035317
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe94], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10035302
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10035330
push 0xe9a
push 0x23c1
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10035377
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xe136
setg cl
xor eax, eax
push eax
lea esi, [ecx - 0x220c4365]
lea ecx, [ebp - 0xb18]
call fcn.10017c2b
push 3
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
add eax, esi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
pop esi
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp eax, 0x74bd
setg dl
sub edx, 0x506e
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0xe94], edx
mov eax, dword [ebp - 0x20]
cmp edx, eax
setg cl
imul ecx, dword [ebp - 0x20]
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0xb18]
or dword [ebp - 4], 0xffffffff
call fcn.10017c26
mov dword [ebp - 0x54], 6
lea ecx, [ebp - 0x630]
mov dword [ebp - 0x1c], 0xfffffffd
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x14], esi
push 2
call fcn.10017bbe
mov dword [ebp - 4], 0xf
xor eax, eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x4c], 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10035427
push dword [ebp - 0x14]
lea ecx, [ebp - 0x630]
call fcn.10017c2b
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003540b
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003543d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7b4], 0xd71b36c9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003542c
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0xc9a1
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setg cl
xor ebx, ebx
cmp ecx, eax
setle bl
sub ebx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x1c]
neg ebx
mov eax, dword [ebp - 0x1c]
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, ebx
jl 0x1003548a
cmp dword [ebp - 0x34], eax
je 0x1003548a
xor ebx, ebx
inc ebx
mov eax, ebx
jmp 0x1003548d
xor ebx, ebx
inc ebx
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x630]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
xor eax, eax
push eax
call fcn.10017c2b
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, ebx
mov eax, dword [ebp - 0x1c]
setge cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x34]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setne dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], 0xfffffffe
jle 0x100354fb
xor eax, eax
lea ecx, [ebp - 0x630]
push eax
call fcn.10017c2b
cmp dword [eax], 0
je 0x100354fb
mov esi, ebx
xor eax, eax
jmp 0x100354ff
xor eax, eax
mov esi, eax
push eax
lea ecx, [ebp - 0x630]
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
mov eax, 0xe80a7c6d
setge cl
cmp eax, ecx
lea ecx, [ebp - 0x630]
sbb esi, esi
xor eax, eax
push eax
inc esi
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
mov eax, dword [ebp - 0x34]
setle cl
imul eax, ecx
xor ecx, ecx
cmp eax, 0x2f23
setl cl
mov dword [ebp - 0x4c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x4c]
cmp eax, 0x8cbd
setl cl
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x7b4], eax
mov dword [ebp - 0x14], 0x11
cmp dword [ebp - 0x14], 0xfffffff5
jg 0x10035587
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x1003557e
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff5
jle 0x1003556c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x630]
call fcn.10017c26
movdqa xmm0, xmmword [0x100082b0]
lea eax, [ebp - 0x1310]
push eax
lea eax, [ebp - 0x1320]
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x14], ebx
lea ecx, [ebp - 0x1658]
push eax
movdqu xmmword [ebp - 0x1320], xmm0
call fcn.10017c3a
lea ecx, [ebp - 0x242]
mov esi, eax
call fcn.100095d3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xec4]
push dword [esi]
call fcn.10017c00
xor eax, eax
mov dword [ebp - 4], 0x10
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10035610
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x440], 0x1a62a969
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x100355f8
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1003562c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7c0], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10035618
xor eax, eax
mov dword [ebp - 0x14], eax
push 3
pop eax
cmp dword [ebp - 0x14], eax
je 0x100357e9
movdqa xmm0, xmmword [0x10008360]
lea eax, [ebp - 0x1230]
push eax
lea eax, [ebp - 0x1240]
push eax
lea ecx, [ebp - 0x15d8]
movdqu xmmword [ebp - 0x1240], xmm0
call fcn.10017c3a
lea ecx, [ebp - 0x1fd]
mov esi, eax
call fcn.100095d3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x340]
push dword [esi]
call fcn.10017c00
push 3
pop esi
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x340]
push esi
mov dword [ebp - 0x34], 6
call fcn.10017c2b
and dword [eax], 0
jmp 0x100356c5
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], al
je 0x100356b7
push 0x25e3
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push esi
lea ecx, [ebp - 0x340]
call fcn.10017c2b
inc dword [eax]
push esi
lea ecx, [ebp - 0x340]
call fcn.10017c2b
cmp dword [eax], esi
jle 0x100356a1
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x100357be
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x100357bb
mov dword [ebp - 0x10], 0x9c96c797
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], eax
jl 0x1003571f
mov dword [ebp - 0x440], 0x3b2c57e7
lea ecx, [ebp - 0xec4]
push dword [ebp - 0x1c]
call fcn.10017c2b
cmp dword [eax], 0
jne 0x1003571f
dec dword [ebp - 0x10]
jns 0x100356fd
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x340]
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x1c]
call fcn.10017c2b
lea ecx, [ebp - 0x340]
mov eax, dword [eax]
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x34]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x7c0], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x1c]
call fcn.10017c2b
mov ecx, dword [ebp - 0x1c]
xor edx, edx
push 3
pop edi
cmp dword [eax], ecx
mov esi, 0x495231fb
mov ecx, 0xffff
setne dl
xor eax, eax
cmp edx, 0xf0bb
push edi
setle al
sub eax, ecx
lea ecx, [ebp - 0x340]
neg eax
sbb eax, eax
inc eax
sub esi, eax
call fcn.10017c2b
push edi
xor ebx, ebx
lea ecx, [ebp - 0x340]
cmp esi, dword [eax]
pop esi
push esi
setge bl
call fcn.10017c2b
push 0
mov dword [eax], ebx
dec dword [ebp - 0x1c]
pop eax
jns 0x100356ee
xor ebx, ebx
inc ebx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 5
jne 0x100356df
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x10
call fcn.10017c26
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jne 0x1003563b
mov edi, dword [sym.imp.GDI32.dll_PlayEnhMetaFile]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xec4]
call fcn.10017c26
mov dword [ebp - 0x58], 0x120d
xor eax, eax
mov dword [ebp - 0x10], 0x2c03342e
push 2
mov dword [ebp - 0x10], eax
pop esi
cmp dword [ebp - 0x10], esi
jge 0x1003582b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1600], 0x54c3c69a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10035813
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10035839
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x4c]
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffff
jl 0x10035830
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10035857
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
xor eax, eax
mov dword [ebp - 0x3c], 0x5bb08661
push 0xfffffffffffffffa
pop ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x1c], 0xe1757117
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x38], 0x30054750
mov dword [ebp - 0x38], 0xeaa3e8f0
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x38], 0x286a4abf
mov dword [ebp - 0x38], 0x935cb514
push 3
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x100358b8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x111c], 0x950169ff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x100358a0
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x100359e9
movdqa xmm0, xmmword [0x100082e0]
lea eax, [ebp - 0x1390]
push eax
lea eax, [ebp - 0x13a0]
mov dword [ebp - 0x2c], 0xce1e2c0d
mov dword [ebp - 0x34], 0x3a88e00f
lea ecx, [ebp - 0x15f8]
push eax
movdqu xmmword [ebp - 0x13a0], xmm0
call fcn.10017c3a
lea ecx, [ebp - 0x23e]
mov esi, eax
call fcn.100095d3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x118c]
push dword [esi]
call fcn.10017c00
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x5c], 0xfffffffe
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x1003597d
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x118c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor ebx, ebx
add eax, 2
cmp eax, 0xffffffff
setne bl
xor eax, eax
push eax
call fcn.10017c2b
mov dword [eax], ebx
lea eax, [ebx - 3]
sub eax, dword [ebp - 0x5c]
neg eax
sbb eax, eax
xor ebx, ebx
inc eax
cmp eax, dword [ebp - 0x1c]
jg 0x1003597c
xor eax, eax
inc ebx
mov edx, eax
jmp 0x1003597f
inc ebx
mov edx, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x10035a1a
mov dword [ebp - 0x34], eax
jmp 0x100359bf
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x100359bc
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_SetTextColor]
xor eax, eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x18
jle 0x1003599c
push 2
pop esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x118c]
call fcn.10017c26
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x100358c5
push 3
xor eax, eax
pop ecx
mov dword [ebp - 0x48], 7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10035a12
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1708], 0xf0bc5021
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x100359f9
xor eax, eax
mov dword [ebp - 0x48], eax
jmp 0x10035b01
push 2
pop esi
push esi
lea ecx, [ebp - 0xedc]
call fcn.10017bbe
xor eax, eax
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x10], eax
jmp 0x10035a42
push dword [ebp - 0x10]
call fcn.10017c2b
or dword [eax], 0xffffffff
inc dword [ebp - 0x10]
lea ecx, [ebp - 0xedc]
cmp dword [ebp - 0x10], esi
jl 0x10035a34
inc dword [ebp - 0x1114]
call fcn.10017c26
jmp 0x100359c8
mov dword [ebp - 0x30], 0x236432a2
mov dword [ebp - 0x38], 0xfffffffe
mov dword [ebp - 0x38], 0x652d0da0
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x10035a95
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x150c], 0xd564c7b7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10035a7d
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xfffffffc
jge 0x10035af4
mov dword [ebp - 0x10], 0xbe187950
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10035ac4
push 8
pop ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe50], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10035ab0
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10035adf
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10035adc
push eax
push eax
call dword [sym.imp.USER32.dll_CopyRect]
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jge 0x10035ac9
dec dword [ebp - 0x4c]
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xfffffffc
jl 0x10035a9e
push 3
pop ecx
mov dword [ebp - 0x1504], 0xffffffff
dec dword [ebp - 0x48]
cmp dword [ebp - 0x48], 0xffffffff
jge 0x10035a5d
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10035b2b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xcc], 0xcf415d72
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10035b13
xor eax, eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x24], 0xfa72c25
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x4c], 0x54292978
mov dword [ebp - 0x38], 0x5467356a
mov dword [ebp - 0x44], 0xdffa870c
cmp dword [ebp - 0x14], eax
je 0x10035cba
mov dword [ebp - 0x50], 0xfc2f92e6
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x14], esi
jmp 0x10035caf
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10035b8e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x468], 0x75c19c5a
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10035b76
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x10035bd1
mov dword [ebp - 0x24], 0xffff04c9
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jg 0x10035bce
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x468], 0
jne 0x10035bcc
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], al
je 0x10035bc4
push 0x1b91
call dword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x10035ba2
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jle 0x10035b93
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffe9
jle 0x10035cac
mov dword [ebp - 0x10], 0xa47cdedf
xor edx, edx
mov dword [ebp - 0x5c], 0xfd020461
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x2c], eax
mov eax, ebx
mov ecx, dword [ebp - 0x44]
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x464]
setg bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x468]
setne cl
xor ebx, ebx
cmp ecx, 0x7fff
setne bl
xor edx, edx
sub ebx, eax
mov eax, dword [ebp - 0x10]
cmp ebx, eax
mov eax, dword [ebp - 0x30]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x468]
setle cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setge dl
xor ecx, ecx
add edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
cmp edx, eax
setge cl
add ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x464]
jne 0x10035c7b
mov eax, dword [ebp - 0x30]
dec dword [ebp - 0x50]
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x4c]
inc ebx
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
cmp eax, ebx
setl cl
mov dword [ebp - 0x30], ecx
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe9
jg 0x10035be3
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
je 0x10035b6b
jmp 0x10035ce6
mov dword [ebp - 0x5c], 0x1ebc8481
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], al
je 0x10035ce6
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_GetClipBox]
mov eax, dword [ebp - 0xcc]
xor edx, edx
mov eax, dword [ebp - 0xc8]
imul eax, dword [ebp - 0xc8]
push 3
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xcc]
neg ecx
cmp eax, ecx
mov eax, dword [ebp - 0xcc]
setne dl
xor ecx, ecx
cmp eax, edx
pop eax
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x4c]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
mov dword [ebp - 0xc8], ecx
test ecx, ecx
je 0x10035d48
mov edx, ebx
cmp dword [ebp - 0xcc], eax
jne 0x10035d4a
mov edx, eax
mov eax, dword [ebp - 0x54]
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
neg ecx
cmp ecx, 0xffffffff
setl al
xor ecx, ecx
test eax, eax
setle cl
sub ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x58]
jge 0x10036a75
xor eax, eax
cmp dword [ebp - 0x3c], eax
jne 0x10036a75
mov dword [ebp - 0x48], 0xfffffff9
mov dword [ebp - 0x1c], 0xe1757117
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x38], 0x30054750
mov dword [ebp - 0x38], 0xeaa3e8f0
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x38], 0x286a4abf
mov dword [ebp - 0x38], 0x935cb514
push 3
mov dword [ebp - 0x10], eax
pop esi
cmp dword [ebp - 0x10], esi
jge 0x10035dd7
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xef4], 0x950169ff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10035dbf
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10035f41
movdqa xmm0, xmmword [0x100082e0]
lea eax, [ebp - 0x1250]
push eax
lea eax, [ebp - 0x1260]
mov dword [ebp - 0x2c], 0xce1e2c0d
mov dword [ebp - 0x34], 0x3a88e00f
lea ecx, [ebp - 0x1568]
push eax
movdqu xmmword [ebp - 0x1260], xmm0
call fcn.10017c3a
lea ecx, [ebp - 0x240]
mov esi, eax
call fcn.100095d3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xf0c]
push dword [esi]
call fcn.10017c00
mov dword [ebp - 4], 0x1b
mov dword [ebp - 0x58], 0xfffffffe
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x10035e9c
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0xf0c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor ebx, ebx
add eax, 2
cmp eax, 0xffffffff
setne bl
xor eax, eax
push eax
call fcn.10017c2b
mov dword [eax], ebx
lea eax, [ebx - 3]
sub eax, dword [ebp - 0x58]
neg eax
sbb eax, eax
xor ebx, ebx
inc eax
cmp eax, dword [ebp - 0x1c]
jg 0x10035e9b
xor eax, eax
inc ebx
mov edx, eax
jmp 0x10035e9e
inc ebx
mov edx, ebx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x10035ee2
mov dword [ebp - 0x34], eax
jmp 0x10035eda
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10035ed7
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_SetTextColor]
xor eax, eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x18
jle 0x10035eb7
jmp 0x10035f20
push 2
pop esi
push esi
lea ecx, [ebp - 0x1134]
call fcn.10017bbe
xor eax, eax
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x10], eax
jmp 0x10035f0a
push dword [ebp - 0x10]
call fcn.10017c2b
or dword [eax], 0xffffffff
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x1134]
cmp dword [ebp - 0x10], esi
jl 0x10035efc
inc dword [ebp - 0xeec]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf0c]
call fcn.10017c26
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10035de4
push 3
xor eax, eax
pop esi
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x4c], 0xb8d96378
mov dword [ebp - 0x54], 0x5eaf
mov dword [ebp - 0x4c], 0x14c5530c
mov dword [ebp - 0x58], 0x3acb6d64
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10035f70
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x34]
neg ecx
push esi
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0x98]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x58], 0xfffffffb
mov dword [ebp - 0x5c], 0xfffffffe
call fcn.10017bbe
mov dword [ebp - 4], 0x1d
xor eax, eax
mov dword [ebp - 0x24], 4
mov dword [ebp - 0x14], 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x20], 0x29ac
mov dword [ebp - 0x10], eax
jmp 0x10035ff2
push dword [ebp - 0x10]
call fcn.10017c2b
mov dword [eax], 0xfffffff7
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x98]
cmp dword [ebp - 0x10], esi
jl 0x10035fe1
push ebx
call fcn.10017c2b
xor ebx, ebx
lea ecx, [ebp - 0x98]
mov eax, dword [eax]
neg eax
cmp eax, 6
setne bl
xor esi, esi
inc esi
push esi
call fcn.10017c2b
lea ecx, [ebp - 0x98]
sub ebx, dword [eax]
xor eax, eax
push eax
mov dword [ebp - 0x58], ebx
call fcn.10017c2b
mov ecx, dword [ebp - 0x58]
xor ebx, ebx
push esi
cmp dword [eax], ecx
lea ecx, [ebp - 0x98]
setg bl
sub ebx, 0xdb85613
neg ebx
sbb ebx, ebx
inc ebx
call fcn.10017c2b
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
je 0x100361bc
push esi
lea ecx, [ebp - 0x98]
call fcn.10017c2b
mov ecx, dword [ebp - 0x14]
xor ebx, ebx
push esi
cmp ecx, dword [eax]
lea ecx, [ebp - 0x98]
setne bl
call fcn.10017c2b
mov ecx, dword [ebp - 0x24]
xor edx, edx
cmp ebx, ecx
lea ecx, [ebp - 0x98]
setg dl
xor ebx, ebx
inc ebx
cmp ebx, edx
push ebx
sbb esi, esi
inc esi
add esi, dword [eax]
call fcn.10017c2b
mov ecx, dword [ebp - 0x14]
xor edx, edx
cmp esi, ecx
sete dl
xor ecx, ecx
cmp edx, dword [eax]
mov eax, dword [ebp - 0x14]
setne cl
imul eax, ecx
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x14], eax
mov esi, dword [ebp - 0x1c]
neg esi
sbb esi, esi
xor eax, eax
push eax
neg esi
call fcn.10017c2b
mov ecx, dword [ebp - 0x24]
xor edx, edx
cmp esi, ecx
mov esi, dword [eax]
setl dl
mov eax, dword [ebp - 0x24]
cmp edx, 0xfffffff7
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, 0xe33a
setl dl
xor ecx, ecx
sub esi, edx
sub esi, 0x4764
cmp esi, eax
setge cl
cmp ecx, dword [ebp - 0x24]
jg 0x10036124
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x98]
push 2
call fcn.10017c2b
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x98]
push 2
call fcn.10017c2b
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
push 2
lea ecx, [ebp - 0x98]
call fcn.10017c2b
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0x98]
push eax
call fcn.10017c2b
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, 0xffffffff
setg cl
imul ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x10036190
mov eax, dword [ebp - 0x24]
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x98]
mov eax, dword [ebp - 0x24]
push ebx
call fcn.10017c2b
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
jmp 0x100361bf
xor ebx, ebx
inc ebx
mov dword [ebp - 0x50], ebx
lea ecx, [ebp - 0x6a0]
push 2
call fcn.10017bbe
mov byte [ebp - 4], 0x1e
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x58], 0xea102a83
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x10], eax
jmp 0x100361ff
push dword [ebp - 0x10]
lea ecx, [ebp - 0x6a0]
call fcn.10017c2b
or dword [eax], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x100361eb
mov eax, dword [ebp - 0x30]
neg eax
mov dword [ebp - 0x58], eax
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1003622c
cmp dword [ebp - 0x30], 0x1f84e
je 0x10036229
push eax
lea ecx, [ebp - 0x6a0]
call fcn.10017c2b
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp ebx, eax
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setle dl
xor eax, eax
imul edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x2c]
jne 0x10036251
mov esi, eax
cmp dword [ebp - 0x1c], eax
je 0x10036253
mov esi, ebx
push eax
lea ecx, [ebp - 0x6a0]
call fcn.10017c2b
xor ecx, ecx
cmp esi, dword [eax]
mov eax, dword [ebp - 0x1c]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x2c]
je 0x10036292
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10036292
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push ebx
call fcn.10017c2b
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
xor eax, eax
cmp dword [ebp - 0x30], eax
jne 0x100362c0
push ebx
lea ecx, [ebp - 0x98]
call fcn.10017c2b
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x6a0]
xor eax, eax
push eax
call fcn.10017c2b
dec dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x100362dd
mov eax, ebx
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x6a0]
call fcn.10017c26
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x98]
call fcn.10017c26
mov dword [ebp - 0x58], 0xef6f1ac2
lea ecx, [ebp - 0x694]
push ebx
call fcn.10017bbe
mov dword [ebp - 4], 0x1f
lea ecx, [ebp - 0x11e4]
mov dword [ebp - 0x14], 0xb0b02971
mov dword [ebp - 0x58], ebx
push ebx
call fcn.10017bbe
xor eax, eax
mov byte [ebp - 4], 0x20
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10036353
push dword [ebp - 0x14]
lea ecx, [ebp - 0x694]
call fcn.10017c2b
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10036338
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10036375
push dword [ebp - 0x14]
lea ecx, [ebp - 0x11e4]
call fcn.10017c2b
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003635b
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003642c
cmp dword [ebp - 0x14], eax
jle 0x1003637d
push esi
lea ecx, [ebp - 0x2a8]
call fcn.10017bbe
mov dword [ebp - 4], 0x14
xor eax, eax
mov dword [ebp - 0x10], 0xbe187950
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x10], eax
jmp 0x10036aab
push dword [ebp - 0x10]
call fcn.10017c2b
and dword [eax], 0
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x2a8]
cmp dword [ebp - 0x10], esi
jl 0x10036a9d
push ebx
call fcn.10017c2b
mov dword [eax], ebx
jmp 0x10036b38
xor eax, eax
mov dword [ebp - 0x4c], 0x8d20b50f
push eax
call fcn.10017c2b
xor ecx, ecx
push ebx
cmp dword [eax], ebx
setne cl
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x2a8]
call fcn.10017c2b
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x10], eax
jle 0x10036af9
push ebx
lea ecx, [ebp - 0x2a8]
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0x2a8]
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x10]
push ebx
add ecx, dword [eax]
mov eax, dword [ebp - 0x4c]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0x358bd4df
lea ecx, [ebp - 0x2a8]
setge al
mov dword [ebp - 0x10], eax
call fcn.10017c2b
dec dword [eax]
push ebx
lea ecx, [ebp - 0x2a8]
call fcn.10017c2b
lea ecx, [ebp - 0x2a8]
cmp dword [eax], 0
je 0x10036ac0
or dword [ebp - 4], 0xffffffff
call fcn.10017c26
push 3
pop eax
mov dword [ebp - 0x50], 0x50fa
lea ecx, [ebp - 0x600]
push eax
call fcn.10017bbe
mov dword [ebp - 4], 0x15
xor eax, eax
mov dword [ebp - 0x4c], 0x99333c7d
mov dword [ebp - 0x10], 6
mov dword [ebp - 0x44], 0xf0ef
push 3
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10036bbe
push ecx
pop ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x600]
call fcn.10017c2b
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10036b9d
xor ebx, ebx
xor eax, eax
push 3
inc ebx
pop ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10036bde
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1cc], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10036bc6
xor eax, eax
mov dword [ebp - 0x1c4], esi
cmp dword [ebp - 0x1c4], eax
jl 0x10036cc6
jmp 0x10036bf4
xor eax, eax
mov dword [ebp - 0x54], 6
lea ecx, [ebp - 0x600]
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0x495761be
mov dword [ebp - 0x5c], 6
mov dword [ebp - 0x58], ebx
push dword [ebp - 0x1c4]
call fcn.10017c2b
push dword [ebp - 0x1c4]
lea ecx, [ebp - 0x600]
mov esi, eax
call fcn.10017c2b
mov ecx, dword [esi]
push dword [ebp - 0x1c4]
mov dword [eax], ecx
lea ecx, [ebp - 0x600]
call fcn.10017c2b
mov dword [eax], 0xfffffffc
mov eax, dword [ebp - 0x1c4]
dec dword [ebp - 0x10]
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x58]
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10036c90
mov eax, dword [ebp - 0x5c]
push dword [ebp - 0x1c4]
lea ecx, [ebp - 0x600]
call fcn.10017c2b
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
test eax, eax
setle cl
mov dword [ebp - 0x54], ecx
dec dword [ebp - 0x1c4]
jns 0x10036bf2
push 2
pop esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x600]
call fcn.10017c26
mov dword [ebp - 0x4c], 0xfffffff7
or eax, 0xffffffff
mov dword [ebp - 0x1c], 0x18d4081c
mov dword [ebp - 0x494], eax
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x488], eax
xor eax, eax
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x14], 0x994b748a
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x1c], eax
jne 0x10036d22
dec dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x488]
mov ecx, dword [ebp - 0x488]
mov eax, dword [ebp - 0x488]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
sub edx, eax
jne 0x10036d4e
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x488], eax
je 0x10036d50
mov ecx, ebx
xor eax, eax
cmp ecx, 0x6ebf4d39
setne al
add eax, dword [ebp - 0x1c]
je 0x10036faa
push ebx
lea ecx, [ebp - 0x120]
call fcn.10017bbe
mov dword [ebp - 4], 0x16
xor eax, eax
mov dword [ebp - 0x1c], 0x945c66b3
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10036da2
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.10017c2b
mov dword [eax], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10036d88
xor eax, eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10036dbf
push 0x182c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
xor eax, eax
push eax
lea ecx, [ebp - 0x120]
call fcn.10017c2b
mov ecx, dword [ebp - 0x14]
xor ebx, ebx
cmp dword [eax], ecx
lea ecx, [ebp - 0x120]
setne bl
xor eax, eax
push eax
call fcn.10017c2b
sub ebx, dword [eax]
mov dword [ebp - 0x488], ebx
je 0x10036f31
mov dword [ebp - 0x30], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x4c], 0xfe35fe57
inc ebx
xor eax, eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10036e27
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1104], 0xf50e4b46
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10036e0f
xor eax, eax
mov esi, dword [ebp - 0x30]
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x488], esi
push eax
call fcn.10017c2b
xor ecx, ecx
cmp dword [eax], 0x64d91b05
setge cl
xor eax, eax
cmp esi, ecx
setg al
xor ecx, ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
cmp edx, eax
setl cl
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x30], 0xfffffffb
jle 0x10036e84
xor eax, eax
lea ecx, [ebp - 0x120]
push eax
call fcn.10017c2b
cmp dword [eax], 0
je 0x10036e84
mov edx, ebx
jmp 0x10036e88
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
cmp ecx, 0xe2bf
setle al
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x1c]
test eax, eax
je 0x10036edb
xor eax, eax
lea ecx, [ebp - 0x120]
push eax
call fcn.10017c2b
xor eax, eax
mov dword [ebp - 0x1c], esi
push eax
lea ecx, [ebp - 0x120]
call fcn.10017c2b
mov eax, dword [ebp - 0x4c]
lea ecx, [ebp - 0x120]
xor eax, eax
push eax
call fcn.10017c2b
xor eax, eax
lea ecx, [ebp - 0x120]
push eax
call fcn.10017c2b
mov ecx, 0xc547fce3
cmp ecx, dword [eax]
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x58]
jle 0x10036efc
xor eax, eax
mov dword [ebp - 0x4c], 0xa82e
xor ebx, ebx
mov dword [ebp - 0x1c], eax
inc ebx
cmp dword [ebp - 0x1c], ebx
jge 0x10036f63
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x120]
call fcn.10017c2b
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10036f45
xor eax, eax
push eax
lea ecx, [ebp - 0x120]
call fcn.10017c2b
cmp dword [eax], 0
jne 0x10036f81
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10036f7e
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
xor eax, eax
lea ecx, [ebp - 0x120]
push eax
call fcn.10017c2b
mov ecx, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x120]
call fcn.10017c26
jmp 0x10036fdb
xor eax, eax
push 3
mov dword [ebp - 0x14], eax
pop esi
jmp 0x10036fd6
mov dword [ebp - 0x24], eax
jmp 0x10036fce
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x10036fcb
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x10036fb9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x10036fb4
mov dword [ebp - 0x58], 0x3d975123
lea ecx, [ebp - 0x9e4]
mov dword [ebp - 0x1c], 0x86ba47c9
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x4c], 0xf9f7c8b1
push 2
call fcn.10017bbe
mov dword [ebp - 4], 0x17
xor eax, eax
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x10], eax
jmp 0x1003702c
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9e4]
call fcn.10017c2b
mov dword [eax], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10037015
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10037045
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
lea ecx, [ebp - 0x9e4]
setne dl
sub edx, 5
neg edx
sbb edx, edx
xor eax, eax
inc edx
push eax
imul esi, edx, 0xffff6e0a
call fcn.10017c2b
push 3
mov dword [eax], esi
mov eax, dword [ebp - 0x1c]
sub eax, esi
sub eax, dword [ebp - 0x1c]
pop esi
cmp eax, esi
ja 0x10037091