Function at 0x10032304
Capabilities:
Allocate thread local storage
Clear file content
Create thread
Delete file
Delete registry key
Enumerate files on windows
Get common file path
Get geographical location
Get graphical window text
Query environment variable
Set thread local storage value

Disassembly:
mov eax, 0x100829a6
call fcn.10082358
mov eax, 0x1180
call fcn.1007eb10
xor eax, eax
mov dword [ebp - 0x6c], ecx
push 4
mov dword [ebp - 0x18], eax
pop ecx
mov byte [ebp - 0x8d], dl
cmp dword [ebp - 0x18], ecx
jge 0x10032346
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2d4], 0x638ecf54
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1003232e
xor eax, eax
push 2
pop ecx
mov dword [ebp - 0x18], eax
push 0xffffffffffffffff
pop edx
cmp dword [ebp - 0x18], ecx
jge 0x10032368
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4d8], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032354
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1003237e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb50], 0xf4cc511e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1003236d
mov ecx, dword [ebp - 0x2d0]
xor edx, edx
mov eax, dword [ebp - 0x2c8]
cmp ecx, eax
push ebx
setge dl
xor ecx, ecx
mov dword [ebp - 0x2cc], edx
mov eax, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x4d4]
cmp eax, 0x8331
mov eax, dword [ebp - 0x4d4]
setg cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x2cc]
mov eax, dword [ebp - 0x2d0]
setg dl
imul ecx, edx
xor edx, edx
push esi
push edi
cmp eax, ecx
mov eax, dword [ebp - 0x2d0]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2d0]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2d0]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2d0]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2d0]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2cc]
setg cl
xor edx, edx
cmp ecx, 0xb09b
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
xor ecx, ecx
mov dword [ebp - 0x2cc], ebx
mov eax, dword [ebp - 0x4d4]
cmp ebx, eax
mov eax, dword [ebp - 0x4d4]
setl cl
xor edi, edi
add eax, ecx
inc edi
mov dword [ebp - 0xb50], eax
or ecx, 0xffffffff
mov dword [ebp - 0xcc], ecx
xor eax, eax
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], edi
jge 0x10032498
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x118], 0xfffffffb
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edi
jl 0x10032480
xor eax, eax
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
push 3
pop esi
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], esi
jg 0x100324eb
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100324da
push 0x10c
push eax
push 0x8de
push 0x5cc
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_TextOutA]
xor eax, eax
inc dword [ebp - 0x118]
cmp dword [ebp - 0x118], esi
jle 0x100324af
or ecx, 0xffffffff
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x66c], ecx
mov dword [ebp - 0x668], ecx
mov dword [ebp - 0x664], ecx
mov dword [ebp - 0x660], ecx
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], esi
jge 0x10032529
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc00], 0x434678dc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x10032511
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x1003253f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x400], 0x2bf33880
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edi
jl 0x1003252e
mov eax, dword [ebp - 0x2c]
xor edx, edx
push 6
pop ecx
cmp eax, ecx
mov eax, dword [ebp - 0xbf8]
setne dl
xor ecx, ecx
cmp eax, edx
mov edx, dword [ebp - 0x668]
mov eax, dword [ebp - 0xbfc]
setle cl
add edx, ecx
xor ecx, ecx
cmp eax, 4
setne cl
dec dword [ebp - 0x668]
xor eax, eax
cmp ecx, edx
jne 0x1003258a
mov ecx, edi
cmp dword [ebp - 0x66c], eax
jne 0x1003258c
mov ecx, eax
mov eax, dword [ebp - 0x400]
sub ecx, eax
xor eax, eax
cmp ecx, 0x51c76d7b
setl al
xor ecx, ecx
cmp eax, 0x760fc5c2
setg cl
xor edx, edx
cmp ecx, 0xfffffff9
setle dl
xor eax, eax
cmp edx, 0xa33e
setge al
mov dword [ebp - 0x400], eax
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x100325e5
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100325e2
push 0x1186
call ebx
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x100325c9
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], esi
jge 0x1003260a
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x5cc], 0xf5540d7f
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x100325f2
xor eax, eax
mov dword [ebp - 0x5cc], 0xffffffe4
jmp 0x1003262f
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10032629
push eax
push eax
call dword [sym.imp.USER32.dll_UnregisterClassA]
xor eax, eax
inc dword [ebp - 0x5cc]
cmp dword [ebp - 0x5cc], 0xffffffe8
jge 0x10032616
mov dword [ebp - 0x34], 0xf4c
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10032667
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x130], 0x13b91020
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x1003264e
xor eax, eax
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x1003267f
push 0x1eff
call esi
xor eax, eax
push 0xffffffffffffffe2
pop ecx
mov dword [ebp - 0x130], ecx
cmp dword [ebp - 0x130], ecx
jle 0x10032885
mov esi, 0xc1f5e2d0
jmp 0x1003269d
xor eax, eax
mov dword [ebp - 0x1c], 0xe55059b8
mov dword [ebp - 0x10], 0x60fc5c2f
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x100326cd
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x510], 0xe8384627
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x100326b4
xor eax, eax
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], eax
jl 0x10032856
xor edx, edx
push 4
pop eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x28], 0xfffffff8
mov dword [ebp - 0x34], 0xa84cbed5
mov dword [ebp - 0x3c], 0xb748abb7
mov dword [ebp - 0x30], 0x35c2
mov dword [ebp - 0x48], 0xfe35fe57
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x510]
inc dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
mov eax, dword [ebp - 0x58]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp - 0x510]
mov eax, dword [ebp - 0x50c]
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x130]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x130]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x58]
setle cl
xor edx, edx
cmp ecx, 0x44c1
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x30]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x130]
setg dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x1c]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x40]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
sub ebx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x40]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setle cl
cmp esi, ecx
mov ecx, 0xcebb36e9
sbb eax, eax
inc eax
cmp ecx, eax
mov eax, dword [ebp - 0x12c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
setne dl
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg bl
xor ecx, ecx
cmp ebx, eax
setne cl
cmp ecx, dword [ebp - 0x40]
je 0x1003282c
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x510], 0
je 0x1003282c
mov eax, edi
jmp 0x1003282e
xor eax, eax
cmp eax, dword [ebp - 0x10]
jne 0x1003283e
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x10032840
mov eax, edi
jmp 0x10032840
xor eax, eax
mov dword [ebp - 0x58], eax
xor eax, eax
cmp dword [ebp - 0x12c], eax
jne 0x10032856
dec dword [ebp - 0x1c]
jns 0x100326d9
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setle dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x130]
cmp dword [ebp - 0x130], 0xffffffe2
jg 0x1003269b
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x10], 0xea5d6c05
xor eax, eax
mov dword [ebp - 0x18], 0xbb7ab61b
or ecx, 0xffffffff
mov dword [ebp - 0x60], eax
xor ebx, ebx
mov dword [ebp - 0x28], ecx
inc ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x100328bf
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x3a8], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x100328aa
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x100328db
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xb8], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x100328c7
xor eax, eax
mov dword [ebp - 0xb8], ebx
cmp dword [ebp - 0xb8], eax
jl 0x100329e3
push 7
pop esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jg 0x10032964
mov dword [ebp - 0x28], 0x1c17
xor ecx, ecx
mov eax, dword [ebp - 0xb8]
mov eax, dword [ebp + eax*4 - 0x3a8]
mov eax, dword [ebp - 0xb8]
mov edx, dword [ebp + eax*4 - 0x3a8]
mov eax, dword [ebp - 0x38]
cmp eax, 0x7563
mov eax, dword [ebp - 0x28]
setg cl
xor ebx, ebx
cmp ecx, edx
setle bl
xor ecx, ecx
cmp ebx, eax
setl cl
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x18], eax
inc ebx
cmp dword [ebp - 0x18], 2
jge 0x1003295a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x3a8], ebx
inc dword [ebp - 0x18]
jmp 0x10032945
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x100328fb
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jg 0x100329d1
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3062a4b1
jl 0x10032988
mov eax, dword [ebp - 0xb8]
mov eax, dword [ebp + eax*4 - 0x3a8]
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x38]
jle 0x10032999
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x1003299b
mov ecx, ebx
mov eax, dword [ebp - 0xb8]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x3a8]
cmp eax, ecx
mov eax, dword [ebp - 0x60]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
cmp ecx, 0xffff
setne al
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x1003296c
xor eax, eax
dec dword [ebp - 0xb8]
jns 0x100328f0
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
mov dword [ebp - 0x10], 0xffffffec
cmp dword [ebp - 0x10], 0x19
jle 0x100334cd
jmp 0x100329fe
xor eax, eax
mov dword [ebp - 0x40], 0x2b165808
mov dword [ebp - 0x18], 0xe229
mov dword [ebp - 0x34], 0x17ab6dad
mov dword [ebp - 0x5c], 9
push 6
mov dword [ebp - 0x30], 0x57863718
pop ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x30], eax
jmp 0x10032a3d
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x1e4], 0xfffffffc
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10032a2c
mov ecx, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setle dl
add edx, dword [ebp - 0x18]
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x40], 0x84edc022
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], ebx
jg 0x10032c90
or ecx, 0xffffffff
mov edi, 0xfffc
mov dword [ebp - 0x1c], 5
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], 0x7ee0456b
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x10032ac8
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x408], 0xb1cb454
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10032ab0
xor eax, eax
mov dword [ebp - 0x44], ebx
cmp dword [ebp - 0x44], eax
jl 0x10032c7e
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0xfa57a880
push 4
mov dword [ebp - 0x24], eax
pop ecx
cmp dword [ebp - 0x24], ecx
jge 0x10032b01
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc90], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10032ae9
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x10032b21
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x214], 0x3bc6c2db
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10032b09
xor eax, eax
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], eax
jl 0x10032c5c
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0xc84]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x214]
imul eax, dword [ebp - 0x2c]
sub eax, 0x5c2bbbb3
je 0x10032b5f
xor eax, eax
cmp dword [ebp - 0xc88], eax
je 0x10032b61
mov ecx, ebx
jmp 0x10032b63
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0xc88]
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
cmp eax, 0xfffb
sbb eax, eax
add eax, 0xfffffff8
dec dword [ebp - 0x1c]
add ecx, eax
je 0x10032b8a
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x10032b8c
mov eax, ebx
jmp 0x10032b8c
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x4c]
add eax, 3
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
dec eax
jne 0x10032bb9
cmp dword [ebp - 0x4c], eax
je 0x10032bbb
mov eax, ebx
mov dword [ebp - 0x34], eax
xor ebx, ebx
mov eax, dword [ebp - 0x18]
push 1
mov ecx, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge bl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x1e4]
cmp eax, ebx
mov eax, dword [ebp - 0x4c]
setge dl
xor ecx, ecx
cmp edx, eax
pop ebx
setne cl
cmp edi, ecx
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x676e
setle cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x408]
mov eax, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1e4]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x214]
mov eax, dword [ebp - 0x408]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], 0xe808e27f
dec dword [ebp - 0x18]
jns 0x10032b2d
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10032c72
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor eax, eax
dec dword [ebp - 0x44]
jns 0x10032ad4
or ecx, 0xffffffff
inc dword [ebp - 0x5c]
cmp dword [ebp - 0x5c], ebx
jle 0x10032a94
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
mov dword [ebp - 0x44], 0xeede0b40
mov dword [ebp - 0x38], 0x29aa
mov dword [ebp - 0x30], 0x67f8b4df
mov dword [ebp - 0x34], 0xa8f1edd1
mov dword [ebp - 0x28], 0x64d9248e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10032cd3
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x638], 0x5637
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10032cbb
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10032cf5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdf0], 0x4ed383de
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10032cdc
xor eax, eax
push 4
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10032d18
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd34], 0x60bc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032d00
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x10032d71
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x638], eax
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0xdec], eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0xd2c]
jg 0x10032d6b
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10032d6f
mov ecx, ebx
jmp 0x10032d73
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x38]
imul eax, ecx
neg eax
sbb eax, eax
neg eax
cmp eax, ebx
mov eax, dword [ebp - 0xd2c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfffffffa
setl al
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10032dba
push 0x26aa
push 0x1c19
push eax
call dword [sym.imp.GDI32.dll_OffsetRgn]
xor eax, eax
mov dword [ebp - 0x48], 0xc821
or ecx, 0xffffffff
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x34], 0xfffffffa
push 4
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x10032df4
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x10bc], 0xfffffff6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10032ddc
xor eax, eax
mov dword [ebp - 0x2c], 0xffffffed
cmp dword [ebp - 0x2c], 0x19
je 0x10032e7c
jmp 0x10032e05
xor eax, eax
mov dword [ebp - 0x28], 0x2c36544d
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x48], 0xf340
mov dword [ebp - 0x30], eax
jmp 0x10032e30
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x220], 0xfffffff9
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10032e1f
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x220]
neg ecx
dec dword [ebp - 0x48]
cmp ecx, eax
jl 0x10032e54
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10032e65
mov eax, dword [ebp - 0x220]
cmp dword [ebp - 0x34], eax
jl 0x10032e65
xor esi, esi
mov eax, esi
jmp 0x10032e67
mov eax, ebx
mov dword [ebp - 0x220], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x19
jne 0x10032e03
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x44], 0x16
jmp 0x100334b6
mov dword [ebp - 0x40], 0x25e7
xor eax, eax
mov dword [ebp - 0x3c], 0x4d073ff8
cmp dword [ebp - 0x40], eax
je 0x10032eb9
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10032f00
push ebx
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x10032efe
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10032ed7
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xc80], ebx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10032ec2
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jg 0x10032f00
mov dword [ebp - 0x34], 9
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
cmp dword [ebp + eax*4 - 0xc80], 0
jne 0x10032efe
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jle 0x10032edf
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10032f1f
push eax
push 0x12eb
push eax
push eax
push 0x134d
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
mov dword [ebp - 0x4c], 0xfffffffe
mov dword [ebp - 0x3c], 0xfffffffb
mov dword [ebp - 0x3c], 0x19ac
mov dword [ebp - 0x3c], 0xad744d02
mov dword [ebp - 0x3c], 0x68819570
push 2
pop ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x3c], 0xbb8bffbe
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10032f71
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x10a0], 0x4801897a
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x10032f58
xor eax, eax
dec dword [ebp - 0x34]
mov dword [ebp - 0x34], 7
push 4
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x10032f9e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2a4], 0x638ecf54
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10032f86
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10032fbd
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x498], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032fa9
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10032fd3
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb60], 0xf4cc511e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032fc2
mov ecx, dword [ebp - 0x2a0]
xor edx, edx
mov eax, dword [ebp - 0x298]
cmp ecx, eax
setge dl
xor ecx, ecx
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x494]
cmp eax, 0x8331
mov eax, dword [ebp - 0x494]
setg cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x2a0]
setg dl
imul ecx, edx
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x2a0]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2a0]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2a0]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2a0]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2a0]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x29c]
setg cl
xor edx, edx
cmp ecx, 0xb09b
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
xor ecx, ecx
mov dword [ebp - 0x29c], ebx
mov eax, dword [ebp - 0x494]
cmp ebx, eax
mov eax, dword [ebp - 0x494]
setl cl
xor ebx, ebx
add eax, ecx
inc ebx
mov dword [ebp - 0xb60], eax
mov dword [ebp - 0x4c], 0x13
cmp dword [ebp - 0x4c], 0xffffffeb
jge 0x100334b3
push 7
pop eax
mov dword [ebp - 0x60], eax
or eax, 0xffffffff
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x680], eax
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x678], eax
mov dword [ebp - 0x674], eax
xor eax, eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x10033109
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc10], 0x434678dc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x100330f0
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x1003311f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x43c], 0x2bf33880
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003310e
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, 6
mov eax, dword [ebp - 0xc08]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x67c]
setle dl
xor ecx, ecx
add edx, eax
mov eax, dword [ebp - 0xc0c]
cmp eax, 4
setne cl
dec dword [ebp - 0x67c]
xor eax, eax
cmp ecx, edx
jne 0x10033168
mov ecx, ebx
cmp dword [ebp - 0x680], eax
jne 0x1003316a
mov ecx, eax
mov eax, dword [ebp - 0x43c]
sub ecx, eax
xor eax, eax
cmp ecx, 0x51c76d7b
setl al
xor ecx, ecx
cmp eax, 0x760fc5c2
setg cl
xor edx, edx
cmp ecx, 0xfffffff9
setle dl
xor eax, eax
cmp edx, 0xa33e
setge al
mov dword [ebp - 0x43c], eax
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x100331c7
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100331c4
push 0x1186
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x100331a7
mov dword [ebp - 0x54], ebx
or ecx, 0xffffffff
mov dword [ebp - 0x34], 0xf4c
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x100331fe
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x13c], 0x13b91020
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x100331e5
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10033210
push 0x1eff
call esi
xor eax, eax
push 0xffffffffffffffe2
pop ecx
mov dword [ebp - 0x13c], ecx
cmp dword [ebp - 0x13c], ecx
jle 0x10033421
xor edi, edi
inc edi
jmp 0x1003322c
xor eax, eax
mov dword [ebp - 0x1c], 0xe55059b8
mov dword [ebp - 0x2c], 0x60fc5c2f
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x1003325c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x480], 0xe8384627
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10033243
xor eax, eax
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], eax
jl 0x100333e9
xor edx, edx
push 4
pop eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x28], 0xfffffff8
mov dword [ebp - 0x34], 0xa84cbed5
mov dword [ebp - 0x3c], 0xb748abb7
mov dword [ebp - 0x30], 0x35c2
mov dword [ebp - 0x48], 0xfe35fe57
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x480]
inc dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
mov eax, dword [ebp - 0x58]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp - 0x480]
mov eax, dword [ebp - 0x47c]
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x13c]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x13c]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x58]
setle cl
xor edx, edx
cmp ecx, 0x44c1
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x30]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x13c]
setg dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x1c]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x40]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
sub ebx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x40]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setle cl
mov eax, 0xc1f5e2d0
cmp eax, ecx
mov ecx, 0xcebb36e9
sbb eax, eax
inc eax
cmp ecx, eax
mov eax, dword [ebp - 0x138]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
setne dl
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x2c]
setg bl
xor ecx, ecx
cmp ebx, eax
setne cl
xor esi, esi
cmp ecx, dword [ebp - 0x40]
je 0x100333bf
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x480], esi
mov eax, edi
jne 0x100333c1
mov eax, esi
cmp eax, dword [ebp - 0x2c]
jne 0x100333d1
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x100333d3
mov eax, edi
jmp 0x100333d3
xor eax, eax
mov dword [ebp - 0x58], eax
xor eax, eax
cmp dword [ebp - 0x138], eax
jne 0x100333e9
dec dword [ebp - 0x1c]
jns 0x10033268
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setle dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x13c]
cmp dword [ebp - 0x13c], 0xffffffe2
jg 0x1003322a
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
xor ebx, ebx
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
inc ebx
xor eax, eax
mov dword [ebp - 0x34], 0x639e6a4
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10033447
push 0x90d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x4c]
xor eax, eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp eax, ebx
mov eax, dword [ebp - 0x60]
setl cl
add eax, 0x9ee4
add ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x54]
cmp ecx, eax
setle dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
test eax, eax
mov eax, dword [ebp - 0x44]
setns dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, 0x193fe696
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x44]
jge 0x1003349b
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, 0xe0f758f8
setge cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x4c]
jmp 0x100330b4
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xffffffef
jne 0x10032e8b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x19
jg 0x100329fc
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x100334f1
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x65c], 0xf5540d7f
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x100334d8
xor eax, eax
mov dword [ebp - 0x65c], 0xffffffe4
jmp 0x10033516
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10033510
push eax
push eax
call dword [sym.imp.USER32.dll_UnregisterClassA]
xor eax, eax
inc dword [ebp - 0x65c]
cmp dword [ebp - 0x65c], 0xffffffe8
jge 0x100334fd
mov dword [ebp - 0x18], 0xbb7ab61b
or ecx, 0xffffffff
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x1003354d
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x3b0], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10033538
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x10033569
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xb4], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10033555
xor eax, eax
mov dword [ebp - 0xb4], ebx
cmp dword [ebp - 0xb4], eax
jl 0x10033671
push 7
pop esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jg 0x100335f2
mov dword [ebp - 0x28], 0x1c17
xor ecx, ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp + eax*4 - 0x3b0]
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp + eax*4 - 0x3b0]
mov eax, dword [ebp - 0x38]
cmp eax, 0x7563
mov eax, dword [ebp - 0x28]
setg cl
xor ebx, ebx
cmp ecx, edx
setle bl
xor ecx, ecx
cmp ebx, eax
setl cl
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x18], eax
inc ebx
cmp dword [ebp - 0x18], 2
jge 0x100335e8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x3b0], ebx
inc dword [ebp - 0x18]
jmp 0x100335d3
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x10033589
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jg 0x1003365f
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3062a4b1
jl 0x10033616
mov eax, dword [ebp - 0xb4]
mov eax, dword [ebp + eax*4 - 0x3b0]
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x38]
jle 0x10033627
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x10033629
mov ecx, ebx
mov eax, dword [ebp - 0xb4]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x3b0]
cmp eax, ecx
mov eax, dword [ebp - 0x60]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
cmp ecx, 0xffff
setne al
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x100335fa
xor eax, eax
dec dword [ebp - 0xb4]
jns 0x1003357e
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x4c], 0xea5d6c05
mov dword [ebp - 0x40], 0x2b165808
mov dword [ebp - 0x18], 0xe229
mov dword [ebp - 0x34], 0x17ab6dad
mov dword [ebp - 0x5c], 9
push 6
mov dword [ebp - 0x30], 0x57863718
pop ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x30], eax
jmp 0x100336b7
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x1cc], 0xfffffffc
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x100336a6
mov ecx, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setle dl
add edx, dword [ebp - 0x18]
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x40], 0x84edc022
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], ebx
jg 0x1003390a
or ecx, 0xffffffff
mov esi, 0xfffc
mov dword [ebp - 0x4c], 5
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x34], 0x7ee0456b
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x10033742
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x3a0], 0xb1cb454
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x1003372a
xor eax, eax
mov dword [ebp - 0x44], ebx
cmp dword [ebp - 0x44], eax
jl 0x100338f8
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0xfa57a880
push 4
mov dword [ebp - 0x24], eax
pop ecx
cmp dword [ebp - 0x24], ecx
jge 0x1003377b
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xca8], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10033763
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x1003379b
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x268], 0x3bc6c2db
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10033783
xor eax, eax
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], eax
jl 0x100338d6
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0xc9c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x268]
imul eax, dword [ebp - 0x10]
sub eax, 0x5c2bbbb3
je 0x100337d9
xor eax, eax
cmp dword [ebp - 0xca0], eax
je 0x100337db
mov ecx, ebx
jmp 0x100337dd
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0xca0]
sub eax, ecx
mov ecx, dword [ebp - 0x4c]
cmp eax, 0xfffb
sbb eax, eax
add eax, 0xfffffff8
dec dword [ebp - 0x4c]
add ecx, eax
je 0x10033804
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10033806
mov eax, ebx
jmp 0x10033806
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x268]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0x2c]
add eax, 3
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
dec eax
jne 0x10033833
cmp dword [ebp - 0x2c], eax
je 0x10033835
mov eax, ebx
mov dword [ebp - 0x34], eax
xor ebx, ebx
mov eax, dword [ebp - 0x18]
push 1
mov ecx, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge bl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x1cc]
cmp eax, ebx
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp edx, eax
pop ebx
setne cl
cmp esi, ecx
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x676e
setle cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1cc]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x268]
mov eax, dword [ebp - 0x3a0]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], 0xe808e27f
dec dword [ebp - 0x18]
jns 0x100337a7
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100338ec
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor eax, eax
dec dword [ebp - 0x44]
jns 0x1003374e
or ecx, 0xffffffff
inc dword [ebp - 0x5c]
cmp dword [ebp - 0x5c], ebx
jle 0x1003370e
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x4c], 0xffffffec
cmp dword [ebp - 0x4c], 0x19
jle 0x100346d5
jmp 0x1003391f
xor eax, eax
mov dword [ebp - 0x38], 0x29aa
mov dword [ebp - 0x30], 0x67f8b4df
mov dword [ebp - 0x34], 0xa8f1edd1
mov dword [ebp - 0x28], 0x64d9248e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003395b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x648], 0x5637
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10033943
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x1003397d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe74], 0x4ed383de
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10033964
xor eax, eax
push 4
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x100339a0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd94], 0x60bc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10033988
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x100339f9
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x648], eax
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0xe70], eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0xd8c]
jg 0x100339f3
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x100339f7
mov ecx, ebx
jmp 0x100339fb
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x38]
imul eax, ecx
neg eax
sbb eax, eax
neg eax
cmp eax, ebx
mov eax, dword [ebp - 0xd8c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfffffffa
setl al
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10033a42
push 0x26aa
push 0x1c19
push eax
call dword [sym.imp.GDI32.dll_OffsetRgn]
xor eax, eax
mov dword [ebp - 0x44], 0xeede0b40
or ecx, 0xffffffff
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x34], 0xfffffffa
push 4
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x10033a7c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x10dc], 0xfffffff6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10033a64
xor eax, eax
mov dword [ebp - 0x10], 0xffffffed
cmp dword [ebp - 0x10], 0x19
je 0x10033b04
jmp 0x10033a8d
xor eax, eax
mov dword [ebp - 0x28], 0x2c36544d
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x48], 0xf340
mov dword [ebp - 0x30], eax
jmp 0x10033ab8
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x240], 0xfffffff9
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10033aa7
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x240]
neg ecx
dec dword [ebp - 0x48]
cmp ecx, eax
jl 0x10033adc
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10033aed
mov eax, dword [ebp - 0x240]
cmp dword [ebp - 0x34], eax
jl 0x10033aed
xor edi, edi
mov eax, edi
jmp 0x10033aef
mov eax, ebx
mov dword [ebp - 0x240], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x19
jne 0x10033a8b
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
mov dword [ebp - 0x48], 0xc821
xor eax, eax
mov dword [ebp - 0x40], 0x25e7
mov dword [ebp - 0x3c], 0x4d073ff8
cmp dword [ebp - 0x40], eax
je 0x10033b39
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10033b80
push ebx
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x10033b7e
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10033b57
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xa94], ebx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10033b42
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jg 0x10033b80
mov dword [ebp - 0x34], 9
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
cmp dword [ebp + eax*4 - 0xa94], 0
jne 0x10033b7e
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], ebx
jle 0x10033b5f
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10033b9f
push eax
push 0x12eb
push eax
push eax
push 0x134d
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x44], 0x16
cmp dword [ebp - 0x44], 0xffffffef
je 0x100346c8
jmp 0x10033bb7
xor eax, eax
mov dword [ebp - 0x3c], 0xfffffffb
mov dword [ebp - 0x3c], 0x19ac
mov dword [ebp - 0x3c], 0xad744d02
mov dword [ebp - 0x3c], 0x68819570
push 2
pop ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x3c], 0xbb8bffbe
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10033c02
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x101c], 0x4801897a
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x10033be9
xor eax, eax
dec dword [ebp - 0x34]
mov dword [ebp - 0x2c], 0xfffffffe
push 4
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x10033c2f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2c4], 0x638ecf54
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10033c17
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10033c4e
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4b8], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10033c3a
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10033c64
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa9c], 0xf4cc511e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10033c53
mov ecx, dword [ebp - 0x2c0]
xor edx, edx
mov eax, dword [ebp - 0x2b8]
cmp ecx, eax
push 7
setge dl
xor ecx, ecx
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x2c0]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [ebp - 0x4b4]
cmp eax, 0x8331
mov eax, dword [ebp - 0x4b4]
setg cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x2bc]
mov eax, dword [ebp - 0x2c0]
setg dl
imul ecx, edx
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x2c0]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2c0]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c0]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2c0]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c0]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x2bc]
setg cl
xor edx, edx
cmp ecx, 0xb09b
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
xor ecx, ecx
mov dword [ebp - 0x2bc], ebx
mov eax, dword [ebp - 0x4b4]
cmp ebx, eax
mov eax, dword [ebp - 0x4b4]
setl cl
xor ebx, ebx
add eax, ecx
inc ebx
mov dword [ebp - 0xa9c], eax
pop eax
mov dword [ebp - 0x34], eax
or eax, 0xffffffff
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x694], eax
mov dword [ebp - 0x690], eax
mov dword [ebp - 0x68c], eax
mov dword [ebp - 0x688], eax
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x10033d89
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc28], 0x434678dc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10033d70
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x10033d9f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x3d8], 0x2bf33880
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10033d8e
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, 6
mov eax, dword [ebp - 0xc20]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x690]
setle dl
xor ecx, ecx
add edx, eax
mov eax, dword [ebp - 0xc24]
cmp eax, 4
setne cl
dec dword [ebp - 0x690]
xor eax, eax
cmp ecx, edx
jne 0x10033de8
mov ecx, ebx
cmp dword [ebp - 0x694], eax
jne 0x10033dea
mov ecx, eax
mov eax, dword [ebp - 0x3d8]
sub ecx, eax
xor eax, eax
cmp ecx, 0x51c76d7b
setl al
xor ecx, ecx
cmp eax, 0x760fc5c2
setg cl
xor edx, edx
cmp ecx, 0xfffffff9
setle dl
xor eax, eax
cmp edx, 0xa33e
setge al
mov dword [ebp - 0x3d8], eax
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10033e47
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10033e44
push 0x1186
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], eax
jle 0x10033e27
mov dword [ebp - 0x2c], 0x13
cmp dword [ebp - 0x2c], 0xffffffeb
jge 0x100346bb
jmp 0x10033e61
xor eax, eax
mov dword [ebp - 0x34], 0xf4c
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10033e90
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x148], 0x13b91020
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10033e77
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10033ea2
push 0x1eff
call esi
xor eax, eax
push 0xffffffffffffffe2
pop ecx
mov dword [ebp - 0x148], ecx
cmp dword [ebp - 0x148], ecx
jle 0x100340b3
xor esi, esi
inc esi
jmp 0x10033ebe
mov dword [ebp - 0x1c], 0xe55059b8
mov dword [ebp - 0x10], 0x60fc5c2f
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10033eee
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x4b0], 0xe8384627
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10033ed5
xor eax, eax
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x1003407b
xor edx, edx
push 4
pop eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x28], 0xfffffff8
mov dword [ebp - 0x34], 0xa84cbed5
mov dword [ebp - 0x3c], 0xb748abb7
mov dword [ebp - 0x30], 0x35c2
mov dword [ebp - 0x48], 0xfe35fe57
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x4b0]
inc dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
mov eax, dword [ebp - 0x58]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4ac]
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
cmp eax, ecx
mov eax, dword [ebp - 0x148]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x148]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x58]
setle cl
xor edx, edx
cmp ecx, 0x44c1
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x30]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x148]
setg dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x1c]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x40]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ebx, ebx
cmp edx, eax
setl bl
sub ebx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x40]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setle cl
mov eax, 0xc1f5e2d0
cmp eax, ecx
mov ecx, 0xcebb36e9
sbb eax, eax
inc eax
cmp ecx, eax
mov eax, dword [ebp - 0x144]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
setne dl
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg bl
xor ecx, ecx
cmp ebx, eax
setne cl
xor edi, edi
cmp ecx, dword [ebp - 0x40]
je 0x10034051
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setle dl
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x148]
cmp dword [ebp - 0x148], 0xffffffe2
jg 0x10033ebc
push 7
pop eax
mov dword [ebp - 0x60], eax
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x100340dd
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x5bc], 0x42eb90da
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x100340c4
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x100340f6
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x80], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x100340e5
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10034115
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_EndPage]
xor eax, eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], ebx
jg 0x10034225
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x1003413f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x210], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x1003412a
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x10034155
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xf34], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10034144
mov eax, dword [ebp - 0x80]
xor ecx, ecx
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x20c]
cmp eax, 0x477ae27
mov eax, dword [ebp - 0x20c]
setl cl
xor edx, edx
cmp ecx, 0x6082
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
imul eax, ecx, 0x4d25
cmp eax, 8
jne 0x100341ab
xor eax, eax
cmp dword [ebp - 0x80], eax
je 0x100341ad
mov edx, ebx
jmp 0x100341af
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x5b8]
xor ecx, ecx
cmp ecx, eax
push 0
sbb eax, eax
inc eax
cmp eax, edx
mov eax, dword [ebp - 0x210]
setle cl
cmp ecx, 0xffff
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x5bc]
mov eax, dword [ebp - 0x20c]
setge dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x80]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x80]
setl cl
add eax, 7
add ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x5bc], ecx
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0xf2c], eax
inc dword [ebp - 0x80]
pop eax
cmp dword [ebp - 0x80], ebx
jle 0x10034121
mov dword [ebp - 0x54], ebx
or ecx, 0xffffffff
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x34], 0xeb11de2a
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x1003425c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x94], 0xb9f9b31
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10034244
xor eax, eax
mov dword [ebp - 0x94], 0x17
cmp dword [ebp - 0x94], 0xffffffe9
jl 0x1003435a
push 6
pop esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x34], 0x8d10fbf2
mov dword [ebp - 0x34], 9
cmp dword [ebp - 0x10], eax
je 0x1003432f
cmp dword [ebp - 0x94], eax
je 0x1003430e
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x94]
sub edx, eax
mov eax, dword [ebp - 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, 0xfbd1
setg cl
xor edx, edx
sub eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
cmp eax, 0xa320
mov eax, dword [ebp - 0x94]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x94]
setg cl
xor edx, edx
add ecx, 0xbec1ba74
cmp ecx, eax
setge dl
xor eax, eax
cmp edx, 0xfffffff9
setle al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x94]
cmp dword [ebp - 0x94], ebx
jne 0x1003430c
mov eax, ebx
jmp 0x1003430e
xor eax, eax
mov dword [ebp - 0x34], eax
xor edx, edx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setg dl
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x10]
jle 0x1003432d
mov ecx, ebx
jmp 0x10034331
xor eax, eax
mov ecx, eax
xor eax, eax
or edx, 0xffffffff
cmp ecx, edx
push 0
setne al
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x94]
cmp dword [ebp - 0x94], 0xffffffe9
pop eax
jge 0x10034276
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
xor eax, eax
mov dword [ebp - 0x34], 0x639e6a4
push 3
mov dword [ebp - 0x30], eax
pop edx
jmp 0x1003437c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x114], 0x25b9b55b
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edx
jl 0x1003436b
mov dword [ebp - 0x114], edx
cmp dword [ebp - 0x114], 0xfffffff5
jle 0x10034460
push 4
pop esi
mov dword [ebp - 0x30], 0x3f0b
mov dword [ebp - 0x48], 0xe72e
mov dword [ebp - 0x28], 0xfffffff7
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x10c], eax
jne 0x10034416
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x110], eax
je 0x100343f3
mov eax, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x110]
mov eax, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x114]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x110]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jg 0x10034416
xor edi, edi
mov eax, edi
jmp 0x10034418
mov eax, ebx
imul ecx, eax, 0xd79
xor edx, edx
mov eax, dword [ebp - 0x114]
cmp ecx, eax
setge dl
cmp edx, esi
jle 0x10034439
xor eax, eax
cmp dword [ebp - 0x114], eax
je 0x1003443b
mov eax, ebx
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x114]
cmp dword [ebp - 0x114], 0xfffffff5
jg 0x10034397
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
push 3
pop edx
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x1003448e
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x538], 0x713b
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10034475
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jg 0x100344de
mov dword [ebp - 0x34], 0xc38b
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x538], ecx
je 0x100344c1
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x538], ecx
jne 0x100344be
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x100344c1
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x534]
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x538], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jle 0x10034496
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100345f9
mov dword [ebp - 0x30], eax
jmp 0x10034501
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x108], 0x25b9b55b
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edx
jl 0x100344f0
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 0xfffffff5
jle 0x100345e2
push 4
pop esi
mov dword [ebp - 0x30], 0x3f0b
mov dword [ebp - 0x48], 0xe72e
mov dword [ebp - 0x28], 0xfffffff7
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x100], eax
jne 0x1003459b
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x104], eax
je 0x10034578
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x108]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x104]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jg 0x1003459b
xor edi, edi
mov eax, edi
jmp 0x1003459d
mov eax, ebx
imul ecx, eax, 0xd79
xor edx, edx
mov eax, dword [ebp - 0x108]
cmp ecx, eax
setge dl
cmp edx, esi
jle 0x100345be
xor eax, eax
cmp dword [ebp - 0x108], eax
je 0x100345c0
mov eax, ebx
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x108]
cmp dword [ebp - 0x108], 0xfffffff5
jg 0x1003451c
mov esi, dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov edi, dword [sym.imp.GDI32.dll_SetROP2]
push 0x90d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x10034619
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xfc], 0x8c6a53d0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10034601
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x1003462b
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
xor eax, eax
mov dword [ebp - 0xfc], eax
jmp 0x10034641
cmp dword [ebp - 0xfc], eax
jne 0x1003464a
dec dword [ebp - 0xfc]
cmp dword [ebp - 0xfc], 0xfffffffb
jge 0x10034633
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp eax, ebx
mov eax, dword [ebp - 0x60]
setl cl
add eax, 0x9ee4
add ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x54]
cmp ecx, eax
setle dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
test eax, eax
mov eax, dword [ebp - 0x44]
setns dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, 0x193fe696
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x34], eax
jge 0x1003469e
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp eax, 0xe0f758f8
setge cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffeb
jl 0x10033e5f
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xffffffef
jne 0x10033bb5
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0x19
jg 0x1003391d
mov dword [ebp - 0x48], 0x4dd03248
xor eax, eax
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x34], 0xfffffffb
mov dword [ebp - 0x28], 0x844a7543
mov dword [ebp - 0x30], eax
jmp 0x10034709
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xe8c], 0x534bf8f0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x100346f8
mov eax, dword [ebp - 0x48]
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
mov ebx, dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
setl dl
mov dword [ebp - 0xe8c], edx
xor ecx, ecx
mov eax, dword [ebp - 0x48]
neg eax
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x1003475d
push eax
call esi
push eax
call ebx
xor eax, eax
mov dword [ebp - 0x2c], 0xea5d6c05
mov dword [ebp - 0x2c], 0xffffffec
cmp dword [ebp - 0x2c], 0x19
jle 0x1003487d
xor ecx, ecx
inc ecx
jmp 0x1003477c
xor eax, eax
mov dword [ebp - 0x44], 0xeede0b40
mov dword [ebp - 0x48], 0xc821
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x44], 0x16
cmp dword [ebp - 0x44], 0xffffffef
je 0x10034870
push 7
pop edx
jmp 0x100347a5
xor eax, eax
mov dword [ebp - 0x10], 0xfffffffe
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x10], 0x13
cmp dword [ebp - 0x10], 0xffffffeb
jge 0x10034863
jmp 0x100347c4
xor eax, eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x34], 0x639e6a4
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100347eb
push 0x90d
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp eax, 1
mov eax, dword [ebp - 0x28]
setl cl
add eax, 0x9ee4
add ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x60]
cmp ecx, eax
setle dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
test eax, eax
mov eax, dword [ebp - 0x44]
setns dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, 0x193fe696
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x44]
jge 0x10034840
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, 0xe0f758f8
push 1
setge cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffeb
pop ecx
push 7
pop edx
jl 0x100347c2
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xffffffef
jne 0x100347a3
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x19
jg 0x1003477a
mov dword [ebp - 0x2c], 0xea5d6c05
mov dword [ebp - 0x2c], 0xffffffec
cmp dword [ebp - 0x2c], 0x19
jle 0x10034992
xor eax, eax
inc eax
mov dword [ebp - 0x44], 0xeede0b40
mov dword [ebp - 0x48], 0xc821
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x44], 0x16
cmp dword [ebp - 0x44], 0xffffffef
je 0x10034985
push 7
pop ecx
mov dword [ebp - 0x10], 0xfffffffe
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x10], 0x13
cmp dword [ebp - 0x10], 0xffffffeb
jge 0x10034978
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x60], eax
xor eax, eax
mov dword [ebp - 0x34], 0x639e6a4
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10034900
push 0x90d
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp eax, 1
mov eax, dword [ebp - 0x28]
setl cl
add eax, 0x9ee4
add ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x60]
cmp ecx, eax
setle dl
mov dword [ebp - 0x48], edx
xor edx, edx
mov eax, dword [ebp - 0x48]
test eax, eax
mov eax, dword [ebp - 0x44]
setns dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, 0x193fe696
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x44]
jge 0x10034955
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, 0xe0f758f8
push 1
setge cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffeb
pop eax
push 7
pop ecx
jl 0x100348d8
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xffffffef
jne 0x100348bd
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x19
jg 0x10034898
mov dword [ebp - 0x48], 0x4dd03248
xor eax, eax
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x34], 0xfffffffb
mov dword [ebp - 0x28], 0x844a7543
mov dword [ebp - 0x30], eax
jmp 0x100349c6
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xdfc], 0x534bf8f0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x100349b5
mov eax, dword [ebp - 0x48]
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
setl dl
xor ecx, ecx
mov dword [ebp - 0xdfc], edx
mov eax, dword [ebp - 0x48]
neg eax
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10034a0e
push eax
call esi
push eax
call ebx
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
push 4
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x10034a37
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x83c], 0xfffffff8
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10034a1f
xor eax, eax
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10034a4c
push eax
push eax
call edi
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xfffffffa
jge 0x10034c13
mov dword [ebp - 0x24], 0x53aa9ac7
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x24], 0x16
cmp dword [ebp - 0x24], 9
jle 0x10034bfe
or edi, 0xffffffff
mov dword [ebp - 0x1c], 0x816f
xor ecx, ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x10], 0xfffa
mov dword [ebp - 0x34], 0x41209775
mov dword [ebp - 0x28], 0xb30732ba
mov edx, dword [ebp - 0x24]
imul eax, dword [ebp - 0x44], 0xdc41
sub edx, 0x61235702
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
jne 0x10034aca
cmp dword [ebp - 0x44], eax
jne 0x10034aca
cmp dword [ebp - 0x1c], eax
jne 0x10034aca
xor ecx, ecx
inc ecx
jmp 0x10034acf
xor ecx, ecx
inc ecx
mov eax, ecx
mov dword [ebp - 0x838], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x834]
mov eax, dword [ebp - 0x44]
xor eax, eax
cmp dword [ebp - 0x834], eax
je 0x10034b4a
push 3
mov dword [ebp - 0x3c], edi
pop edx
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], eax
jl 0x10034bf1
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], eax
jl 0x10034b40
mov dword [ebp - 0x3c], 0x8dacb314
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ecx
jge 0x10034b33
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xb44], 0xb63e91cb
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10034b1b
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x24], eax
jne 0x10034b40
dec dword [ebp - 0x1c]
jns 0x10034b0c
dec dword [ebp - 0x40]
jns 0x10034afd
jmp 0x10034bf1
mov eax, 0xc1846e97
xor edx, edx
mov dword [ebp - 0x85c], eax
mov dword [ebp - 0x858], eax
mov dword [ebp - 0x854], eax
mov dword [ebp - 0x850], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x838]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setne dl
sub edx, eax
xor eax, eax
cmp edx, 0xfffffffc
setg al
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x10034ba7
cmp dword [ebp - 0x854], eax
jne 0x10034ba7
xor edi, edi
inc edi
jmp 0x10034bac
xor edi, edi
inc edi
mov eax, edi
cmp eax, dword [ebp - 0x48]
jg 0x10034bb4
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x83c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x858]
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, dword [ebp - 0x40]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0x48a24e22
jne 0x10034beb
cmp dword [ebp - 0x1c], eax
je 0x10034beb
mov eax, edi
mov dword [ebp - 0x28], eax
or edi, 0xffffffff
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
jg 0x10034a7b
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xfffffffa
jl 0x10034a59
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
push 4
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x10034c3c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x874], 0xfffffff8
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10034c24
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10034c4b
push eax
push eax
call edi
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xfffffffa
jge 0x10034e12
mov dword [ebp - 0x24], 0x53aa9ac7
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x24], 0x16
cmp dword [ebp - 0x24], 9
jle 0x10034dfd
or edi, 0xffffffff
mov dword [ebp - 0x1c], 0x816f
xor ecx, ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x10], 0xfffa
mov dword [ebp - 0x34], 0x41209775
mov dword [ebp - 0x28], 0xb30732ba
mov edx, dword [ebp - 0x24]
imul eax, dword [ebp - 0x44], 0xdc41
sub edx, 0x61235702
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
jne 0x10034cc9
cmp dword [ebp - 0x44], eax
jne 0x10034cc9
cmp dword [ebp - 0x1c], eax
jne 0x10034cc9
xor ecx, ecx
inc ecx
jmp 0x10034cce
xor ecx, ecx
inc ecx
mov eax, ecx
mov dword [ebp - 0x870], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x86c]
mov eax, dword [ebp - 0x44]
xor eax, eax
cmp dword [ebp - 0x86c], eax
je 0x10034d49
push 3
mov dword [ebp - 0x3c], edi
pop edx
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], eax
jl 0x10034df0
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], eax
jl 0x10034d3f
mov dword [ebp - 0x3c], 0x8dacb314
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ecx
jge 0x10034d32
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xc04], 0xb63e91cb
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x10034d1a
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x24], eax
jne 0x10034d3f
dec dword [ebp - 0x1c]
jns 0x10034d0b
dec dword [ebp - 0x40]
jns 0x10034cfc
jmp 0x10034df0
mov eax, 0xc1846e97
xor edx, edx
mov dword [ebp - 0x88c], eax
mov dword [ebp - 0x888], eax
mov dword [ebp - 0x884], eax
mov dword [ebp - 0x880], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x870]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setne dl
sub edx, eax
xor eax, eax
cmp edx, 0xfffffffc
setg al
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x10034da6
cmp dword [ebp - 0x884], eax
jne 0x10034da6
xor edi, edi
inc edi
jmp 0x10034dab
xor edi, edi
inc edi
mov eax, edi
cmp eax, dword [ebp - 0x48]
jg 0x10034db3
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x874]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x888]
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, dword [ebp - 0x40]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0x48a24e22
jne 0x10034dea
cmp dword [ebp - 0x1c], eax
je 0x10034dea
mov eax, edi
mov dword [ebp - 0x28], eax
or edi, 0xffffffff
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
jg 0x10034c7a
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xfffffffa
jl 0x10034c58
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
xor eax, eax
mov dword [ebp - 0x48], 0x4dd03248
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x34], 0xfffffffb
mov dword [ebp - 0x28], 0x844a7543
mov dword [ebp - 0x30], eax
jmp 0x10034e44
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xe08], 0x534bf8f0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x10034e33
mov eax, dword [ebp - 0x48]
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
setl dl
xor ecx, ecx
mov dword [ebp - 0xe08], edx
mov eax, dword [ebp - 0x48]
neg eax
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10034e8c
push eax
call esi
push eax
call ebx
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x18], eax
push 3
inc ebx
pop ecx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
push 5
pop edx
cmp dword [ebp - 0x24], ecx
jge 0x10034eb7
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x7e4], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10034ea3
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ecx
jge 0x10034ed7
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc40], 0x75278539
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10034ebf
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 8
jge 0x10034f92
or edi, 0xffffffff
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x48], 0xfffffffe
mov ecx, eax
cmp dword [ebp - 0x48], eax
je 0x10034f0b
mov ecx, ebx
mov eax, dword [ebp - 0x18]
add eax, ecx
mov ecx, 0xf29c8dda
imul eax, eax, 0xdef9
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp eax, ecx
mov eax, 0x85c6471
setl dl
xor ecx, ecx
cmp edx, 0x2daa
setg cl
sub eax, ecx
add eax, dword [ebp - 0x54]
je 0x10034f52
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10034f54
mov ecx, ebx
jmp 0x10034f56
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
add eax, ecx
xor ecx, ecx
cmp eax, 3
setg cl
add ecx, dword [ebp - 0x7dc]
jne 0x10034f72
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10034f74
mov eax, ebx
mov dword [ebp - 0x7e0], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 8
push 5
pop edx
jl 0x10034ee7
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
xor eax, eax
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], eax
jl 0x100350d7
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x10034fc2
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x84], 0xa025ec56
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10034faa
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jge 0x10034fe2
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x698], 0xfffffff8
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x10034fca
xor eax, eax
mov dword [ebp - 0x84], 2
cmp dword [ebp - 0x84], eax
jl 0x100350c8
mov dword [ebp - 0x34], 0x83cd0cd8
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x30], eax
jmp 0x1003501c
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x438], 0xbc6a
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x1003500b
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp + eax*4 - 0x7e4]
sub eax, dword [ebp - 0x84]
jne 0x1003508e
cmp dword [ebp - 0x84], eax
jne 0x1003504e
mov eax, dword [ebp - 0x438]
neg eax
jne 0x1003504e
xor eax, eax
mov ecx, eax
jmp 0x10035050
mov ecx, ebx
mov eax, dword [ebp - 0x438]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x84]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x84]
mov dword [ebp + eax*4 - 0x7e4], ecx
lea eax, [ecx + 0x525ac89d]
test eax, eax
jne 0x1003508e
xor edi, edi
mov ecx, edi
jmp 0x10035090
mov ecx, ebx
mov eax, dword [ebp - 0xc38]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xc38]
push 0
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x698], eax
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x84]
pop eax
jns 0x10034ff8
dec dword [ebp - 0x18]
jns 0x10034fa2
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov dword [ebp - 0x28], 0xf89b5461
push 4
mov dword [ebp - 0x30], eax
pop edx
cmp dword [ebp - 0x30], edx
jge 0x100350fe
or ecx, 0xffffffff
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xfc8], ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edx
jl 0x100350ec
mov eax, dword [ebp - 0xfc0]
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10035124
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetClipBox]
xor eax, eax
mov dword [ebp - 0x64], 0x4dd03248
mov dword [ebp - 0x3c], 8
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x1003515c
push 0x10fb
push eax
push eax
push 0x77
push 0x1487
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDIBits]
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035174
push 0x156d
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x18], 0x18d5
push 7
pop ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], 2
mov dword [ebp - 0x10], 0x778c4b1e
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x100351bb
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x330], 0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x100351a2
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x18], eax
je 0x100351c4
mov esi, ebx
mov ecx, dword [ebp - 0x18]
xor ebx, ebx
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
setl bl
xor edx, edx
cmp ecx, eax
setg dl
sub ebx, edx
neg ebx
sbb ebx, ebx
xor eax, eax
neg ebx
cmp esi, ebx
setl al
cmp eax, 0x4e94
jl 0x1003541d
mov dword [ebp - 0x4c], 0xdb756fd8
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x1c], 0x92ce4ca0
mov dword [ebp - 0x5c], 0xeb41
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10035234
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x784], 0x63090707
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x1003521b
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x31
jg 0x1003538b
push 6
pop ecx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x60], 0x8ce22955
mov dword [ebp - 0x3c], 0x2f8dc70e
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10035277
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x958], 0x5256
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x1003525e
xor eax, eax
xor edx, edx
cmp dword [ebp - 0x54], eax
je 0x100352d3
or eax, 0xffffffff
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4c]
xor eax, eax
inc eax
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x950]
cmp eax, ecx
setle dl
add edx, 2
mov dword [ebp - 0x2c], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x950]
mov edx, dword [ebp - 0x4c]
imul ecx, eax
mov eax, dword [ebp - 0x30]
imul edx, ecx
xor ecx, ecx
neg edx
cmp edx, eax
setne cl
mov dword [ebp - 0x32c], ecx
jmp 0x10035375
mov dword [ebp - 0x48], 0xec02dfce
inc edx
mov dword [ebp - 0x58], 0xfffffff9
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x34], 0x513e67dc
cmp dword [ebp - 0x780], eax
jne 0x1003534f
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x330]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x784], ecx
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x18]
imul eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
inc dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x950]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x32c], eax
jle 0x1003534f
xor edi, edi
mov eax, edi
jmp 0x10035351
mov eax, edx
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10035375
push 0x2050
push 0xa4d
push eax
call dword [sym.imp.USER32.dll_DeleteMenu]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x31
push 0
pop eax
jle 0x10035241
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
cmp dword [ebp - 0x44], eax
jne 0x10035409
mov eax, dword [ebp - 0x5c]
xor edx, edx
mov ecx, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 0x4c]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2c], 0x29490294
mov ecx, dword [ebp - 0x2c]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setge bl
xor edx, edx
cmp eax, ecx
setne dl
xor ecx, ecx
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
cmp eax, ebx
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x5c]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
add ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x780]
cmp ecx, eax
mov eax, dword [ebp - 0x330]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, dword [ebp - 0x4c]
jl 0x10035409
xor eax, eax
mov edx, eax
jmp 0x1003540e
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x48], ecx
jmp 0x1003543c
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x1003543c
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 - 0x48]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x32c], 0x248f24b1
jl 0x10035457
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov eax, dword [ebp - 0x48]
mov edx, 0x3ea4b544
test eax, eax
push 6
setg cl
sub edx, ecx
sub edx, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x40]
neg edx
pop ebx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, eax
mov dword [ebp - 0x32c], edx
mov eax, dword [ebp - 0x44]
sub edx, eax
mov eax, dword [ebp - 0x18]
sub edx, 0x755d73b6
cmp edx, eax
setle cl
xor esi, esi
mov dword [ebp - 0x44], ecx
inc esi
mov dword [ebp - 0x34], esi
xor eax, eax
mov dword [ebp - 0x34], 0x46bd29a2
mov dword [ebp - 0x34], 0x11a53fde
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], esi
jge 0x100354d8
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x74], 0xfffffffe
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x100354c3
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x100354ee
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xab0], 0xfffffffd
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x100354dd
cmp dword [ebp - 0x74], 0xfffffff8
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x74]
jge 0x10035508
xor eax, eax
cmp dword [ebp - 0x74], eax
je 0x1003550a
mov eax, esi
mov dword [ebp - 0x34], eax
xor edx, edx
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x34]
cmp eax, ecx
mov eax, dword [ebp - 0x74]
setge dl
xor ecx, ecx
cmp edx, eax
push 0xfffffffffffffffb
setl cl
sub ecx, ebx
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [ebp - 0xaac], ecx
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x34]
cmp eax, ecx
setg dl
mov dword [ebp - 0x34], edx
xor edx, edx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x74]
cmp ecx, esi
mov ecx, dword [ebp - 0x74]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x74]
setne bl
xor edx, edx
imul ecx, ebx
cmp ecx, eax
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x74]
setg dl
sub edx, eax
lea eax, [edx + 4]
imul ecx, eax
xor eax, eax
cmp ecx, 0xe2e
setl al
xor edx, edx
cmp eax, 0x53d8
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
pop eax
setl cl
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x48], 0x4dd03248
mov dword [ebp - 0x34], 0xfffffff6
mov dword [ebp - 0x34], eax
xor eax, eax
push 3
mov dword [ebp - 0x28], 0x844a7543
mov dword [ebp - 0x30], eax
pop ebx
jmp 0x100355e7
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xe20], 0x534bf8f0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x100355d6
mov eax, dword [ebp - 0x48]
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
setl dl
xor ecx, ecx
mov dword [ebp - 0xe20], edx
mov eax, dword [ebp - 0x48]
neg eax
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10035636
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
xor eax, eax
mov dword [ebp - 0x28], 0x844a7543
mov dword [ebp - 0x38], 0xbacd
mov dword [ebp - 0x10], 0x5e4bc795
mov dword [ebp - 0x34], 0xad88ca0e
mov dword [ebp - 0x28], 0xb8a442f
mov dword [ebp - 0x3c], 0xb077cb11
mov dword [ebp - 0x60], 0xd4d3380d
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10035687
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x258], 0x5bf25cbd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003566f
xor eax, eax
mov dword [ebp - 0x18], eax
or ecx, 0xffffffff
cmp dword [ebp - 0x18], ebx
jge 0x100356a6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1058], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10035692
xor eax, eax
push 4
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x100356c9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xcbc], 0x47610b5c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x100356b1
xor eax, eax
cmp eax, dword [ebp - 0x38]
je 0x1003584f
mov eax, esi
cmp eax, dword [ebp - 0x38]
jle 0x1003584f
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x100356ff
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x430], 2
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x100356e7
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], eax
jg 0x1003588f
jmp 0x1003570f
xor eax, eax
mov dword [ebp - 0x2c], 0x9cf1813f
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x48], 0x78f1e0c8
mov dword [ebp - 0x3c], 0xa1c33c01
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], edx
jge 0x1003574a
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xfe0], 0x37e0d1b7
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edx
jl 0x10035732
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10035789
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x3c], 0xf6f97812
mov dword [ebp - 0x3c], 0xff68e1
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10035781
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xf78], ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x1003576c
xor eax, eax
inc dword [ebp - 0x34]
dec dword [ebp - 0x2c]
jns 0x10035752
cmp dword [ebp - 0x430], eax
je 0x100357d6
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x100357a1
mov eax, dword [ebp - 0x42c]
dec dword [ebp - 0xcb0]
mov ecx, dword [ebp - 0xcb0]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp + eax*4 - 0x258]
imul eax, dword [ebp - 0x430]
imul eax, ecx
xor ecx, ecx
cmp eax, 0x6da9
setg cl
cmp ecx, dword [ebp - 0x60]
je 0x100357d4
mov ecx, esi
jmp 0x100357d8
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x10]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x428]
push 0xffffffffffffffff
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
neg ecx
mov dword [ebp - 0xfdc], ecx
mov eax, dword [ebp - 0x430]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x430]
mov eax, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp + eax*4 - 0x258]
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setne dl
pop ecx
push 4
mov dword [ebp + eax*4 - 0x258], edx
xor eax, eax
inc dword [ebp - 0x38]
pop edx
cmp dword [ebp - 0x38], eax
jle 0x1003570d
jmp 0x1003588f
mov dword [ebp - 0x10], 0xffffffeb
cmp dword [ebp - 0x10], 0xffffffee
jne 0x1003588f
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10035880
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xac4], 0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10035867
xor eax, eax
mov dword [ebp - 0xac4], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffee
je 0x1003585e
mov dword [ebp - 0x10], 8
mov dword [ebp - 0x34], 0x265ab3e9
mov dword [ebp - 0x3c], 0xfe4d9edb
mov dword [ebp - 0x34], 0xbeb0647d
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x10], eax
jge 0x100358c5
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x100358df
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
jmp 0x100358dd
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x100358dd
push eax
push eax
push 0x1f13
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10035903
mov dword [ebp - 0x34], 0xfffb
inc dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035900
push eax
call dword [sym.imp.GDI32.dll_CreatePatternBrush]
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe9
jl 0x100358e4
mov dword [ebp - 0x30], eax
jmp 0x1003591f
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xe38], 0x534bf8f0
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x1003590e
mov dword [ebp - 0x3c], 0xcecb4571
mov eax, 0xbb6748f6
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
xor eax, eax
mov dword [ebp - 0x3c], 0xfffffffc
mov dword [ebp - 0x34], 0xffff
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10035976
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xfb8], esi
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10035961
xor eax, eax
inc dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x100359ca
push eax
push 0x21cd
push 0x18fc
push 0x445
push 0x23a9
push 0x42e
push 0x15c3
push 0x2034
push 0x12f8
push 0x1bb7
push 0x23f4
push 0x484
push 0x140f
push 0x259a
call dword [sym.imp.GDI32.dll_CreateFontA]
mov eax, dword [ebp - 0x64]
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x64]
cmp eax, ecx
push 4
setl dl
xor ecx, ecx
mov dword [ebp - 0xe38], edx
mov eax, dword [ebp - 0x64]
neg eax
cmp edx, eax
pop edx
setl cl
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x38], 0xac46
mov dword [ebp - 0x30], 0x9b2b534
mov dword [ebp - 0x24], 0xbdac842f
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edx
jge 0x10035a33
or ecx, 0xffffffff
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x4a8], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10035a1f
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x10035a49
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x21c], 0xfffffffc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10035a38
mov eax, dword [ebp - 0x4a4]
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x38]
jl 0x10035a69
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x4a8], eax
je 0x10035a6b
mov edx, esi
mov eax, dword [ebp - 0x4a8]
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x4a4]
cmp eax, ecx
setl dl
sub edx, 0x885ea6ed
neg edx
sbb edx, edx
xor eax, eax
inc edx
cmp edx, 0x432a2768
setle al
mov dword [ebp - 0x21c], eax
test eax, eax
je 0x10035ab9
xor eax, eax
cmp dword [ebp - 0x21c], eax
je 0x10035abb
mov eax, esi
jmp 0x10035abb
xor eax, eax
mov dword [ebp - 0x24], eax
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x10035af5
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], al
je 0x10035cfa
push eax
push 0x884
push 0x18fb
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_MoveToEx]
jmp 0x10035cfa
mov dword [ebp - 0x10], eax
push 4
mov dword [ebp - 0x34], 0xd04870e7
pop edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
push 5
pop ecx
cmp dword [ebp - 0x24], edx
jge 0x10035b24
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xff8], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10035b10
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x10035b42
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xad8], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10035b2d
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x26
jg 0x10035b7f
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035b61
push 0x697
call dword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035b73
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor eax, eax
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x26
jle 0x10035b4b
push 4
pop edx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x23
jne 0x10035cfa
or edi, 0xffffffff
mov dword [ebp - 0x48], 0xfffffff9
mov dword [ebp - 0x2c], 0x467468e5
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x10035bbd
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xe50], 0xf0ab59a6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10035ba5
xor eax, eax
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x24], eax
jl 0x10035ce4
mov dword [ebp - 0x34], esi
mov ecx, esi
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4a8]
mov eax, dword [ebp - 0x4a4]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4a8]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4a8]
sub ecx, eax
mov eax, dword [ebp - 0x10]
cmp edx, ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x218]
setle dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setne bl
imul ecx, ebx
imul eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x48]
neg ecx
sbb ecx, ecx
neg ecx
dec dword [ebp - 0x48]
cmp eax, ecx
je 0x10035c49
mov ecx, esi
jmp 0x10035c4d
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
push 4
setne dl
sub edx, 0xf0d22965
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], esi
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0xe48], eax
mov eax, dword [ebp - 0x49c]
cmp eax, edi
setge cl
mov dword [ebp - 0xff4], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x21c]
imul eax, ecx
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x21c]
test eax, eax
mov dword [ebp - 0xad8], eax
mov eax, dword [ebp - 0x24]
setne cl
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x21c]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
pop edx
setle cl
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x24]
jns 0x10035bc9
push 3
xor eax, eax
pop ebx
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x23
push 4
pop edx
je 0x10035b8f
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov dword [ebp - 0x44], 0xfffffffd
xor eax, eax
mov dword [ebp - 0x34], 0x240ca700
mov dword [ebp - 0x3c], 0x5fec46bc
mov dword [ebp - 0x3c], eax
push 4
mov dword [ebp - 0x30], eax
pop edx
cmp dword [ebp - 0x30], edx
jge 0x10035d36
or ecx, 0xffffffff
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x113c], ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edx
jl 0x10035d22
xor eax, eax
mov dword [ebp - 0x44], eax
mov ecx, 0xc105a83d
cmp dword [ebp - 0x44], 0xf
je 0x10035dd6
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x9d4], ecx
mov dword [ebp - 0x9d0], ecx
mov dword [ebp - 0x9cc], ecx
mov dword [ebp - 0x9c8], ecx
xor ecx, ecx
mov dword [ebp - 0x54], esi
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
test eax, eax
setle cl
xor eax, eax
test ecx, ecx
setg al
imul ecx, eax, 7
sub ecx, 0x76fda024
imul ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x44]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x34], eax
jg 0x10035da8
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x10035daa
mov edx, esi
jmp 0x10035dac
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
push 4
setl cl
mov dword [ebp - 0x9cc], ecx
mov ecx, 0xc105a83d
inc dword [ebp - 0x54]
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xf
pop edx
jne 0x10035d48
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035f01
mov dword [ebp - 0x40], 0x20f89b5
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x34], 0xfffffffe
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x28], 0x6364d64e
mov dword [ebp - 0x3c], 0x40e11a79
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], edx
jge 0x10035e25
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xd54], 0xc85f70ad
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10035e0d
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], esi
jge 0x10035e45
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x59c], 0x4a90c6d2
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x10035e2d
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], ebx
jg 0x10035ef1
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jge 0x10035e74
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xf1c], 0xfffffff7
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x10035e5c
xor eax, eax
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0xd48], eax
je 0x10035e87
cmp dword [ebp - 0xd4c], eax
jne 0x10035e89
mov esi, eax
mov eax, dword [ebp - 0x34]
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10035e9f
cmp dword [ebp - 0x40], eax
je 0x10035e9f
xor edi, edi
inc edi
mov eax, edi
jmp 0x10035ea2
xor edi, edi
inc edi
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10035eb6
mov ecx, edi
cmp dword [ebp - 0xf14], eax
jne 0x10035eb8
mov ecx, eax
mov eax, dword [ebp - 0x40]
xor edx, edx
add eax, ecx
cmp esi, eax
push 0
setle dl
xor ecx, ecx
test edx, edx
mov dword [ebp - 0x59c], edx
mov eax, dword [ebp - 0x60]
setne cl
add eax, ecx
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x40]
pop eax
push 1
pop esi
cmp dword [ebp - 0x40], ebx
jle 0x10035e51
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
xor eax, eax
mov ebx, dword [sym.imp.KERNEL32.dll_Beep]
mov ecx, 0x76820624
mov dword [ebp - 0x2e4], ecx
mov dword [ebp - 0x2e0], ecx
mov dword [ebp - 0x2dc], ecx
mov dword [ebp - 0x2d8], ecx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x2e4], 0xffffffee
jmp 0x10035f50
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035f4a
push 0x323
push 0x1cea
call ebx
xor eax, eax
dec dword [ebp - 0x2e4]
cmp dword [ebp - 0x2e4], 0xffffffe9
jge 0x10035f33
mov dword [ebp - 0x2dc], 0xff55e00f
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10035f8f
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xaec], 0x69b42c51
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x10035f76
xor eax, eax
cmp dword [ebp - 0x2e0], eax
jne 0x10035fdd
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2d8]
imul ecx, eax, 0xffff
mov eax, dword [ebp - 0x2e4]
cmp ecx, eax
mov eax, 0xfffb
sete dl
sub edx, eax
mov eax, 0xab5c2947
neg edx
sbb edx, edx
inc edx
cmp eax, edx
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x10], 3
cmp dword [ebp - 0x10], eax
jl 0x10036004
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10035fff
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor eax, eax
dec dword [ebp - 0x10]
jns 0x10035fec
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xae8], eax
mov eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2e4], eax
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
push 4
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jge 0x10036044
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x82c], 0xfffffff8
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jl 0x1003602c
xor eax, eax
mov byte [ebp - 0x1d], al
cmp byte [ebp - 0x1d], 0
je 0x10036053
push eax
push eax
call edi
xor eax, eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xfffffffa
jge 0x10036201
or edi, 0xffffffff
mov dword [ebp - 0x24], 0x53aa9ac7
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x24], 0x16
jmp 0x100361e2
mov dword [ebp - 0x1c], 0x816f
xor ecx, ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x10], 0xfffa
mov dword [ebp - 0x34], 0x41209775
mov dword [ebp - 0x28], 0xb30732ba
mov edx, dword [ebp - 0x24]
imul eax, dword [ebp - 0x44], 0xdc41
sub edx, 0x61235702
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
jne 0x100360c7
cmp dword [ebp - 0x44], eax
jne 0x100360c7
cmp dword [ebp - 0x1c], eax
je 0x100360c9
mov eax, esi
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x824]
mov eax, dword [ebp - 0x44]
xor eax, eax
cmp dword [ebp - 0x824], eax
je 0x10036143
push 3
mov dword [ebp - 0x3c], edi
pop ecx
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], eax
jl 0x100361df
push 4
pop edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x1c], eax
jl 0x10036139
mov eax, 0xc1846e97
xor edx, edx
mov dword [ebp - 0x8a4], eax
mov dword [ebp - 0x8a0], eax
mov dword [ebp - 0x89c], eax
mov dword [ebp - 0x898], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x828]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setne dl
sub edx, eax
xor eax, eax
cmp edx, 0xfffffffc
setg al
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
jne 0x1003619b
cmp dword [ebp - 0x89c], eax
je 0x1003619d
mov eax, esi
cmp eax, dword [ebp - 0x48]
jg 0x100361a5
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
jg 0x1003607d
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xfffffffa
jl 0x10036063
mov edi, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
xor eax, eax
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x34], 0xfffffffc
push 0xfffffffffffffff6
pop ecx
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x488], ecx
mov dword [ebp - 0x484], ecx
or ecx, 0xffffffff
mov dword [ebp - 0x54], 0x31c0a9c5
mov dword [ebp - 0x34], 0xa4a2c6eb
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x28], ecx
push 4
mov dword [ebp - 0x24], eax
pop ecx
cmp dword [ebp - 0x24], ecx
jge 0x10036268
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xdd4], 0x8129ec6e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jl 0x10036250
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x1003627a
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xc54], esi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x1003626d
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x484], eax
test eax, eax
jne 0x100362a3
cmp dword [ebp - 0x488], eax
je 0x100362ac
xor eax, eax
mov ecx, esi
cmp dword [ebp - 0x18], eax
jne 0x100362ae