Function at 0x100300dc
Capabilities:
Check for time delay via gettickcount
Create pipe
Delete registry key
Delete registry value
Get common file path
Get file attributes
Query environment variable
Set environment variable

Disassembly:
mov eax, 0x10082a8d
call fcn.10082418
mov eax, 0x112c
call fcn.1007db40
push 7
pop eax
mov dword [ebp - 0x28], eax
xor eax, eax
push 3
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x14], eax
pop ecx
mov byte [ebp - 0x8d], dl
cmp dword [ebp - 0x14], ecx
jge 0x10030124
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10c8], 0x4778
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003010c
xor eax, eax
push ebx
mov ebx, dword [sym.imp.USER32.dll_CopyRect]
push esi
push edi
push 2
pop esi
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x1003014c
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030147
push eax
push eax
call ebx
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10030138
mov edi, dword [sym.imp.USER32.dll_GetClientRect]
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030167
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
push 7
pop ecx
mov dword [ebp - 0x28], ecx
push 3
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10030190
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xfcc], 0x4778
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10030178
xor eax, eax
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x100301ac
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100301a7
push eax
push eax
call ebx
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10030198
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100301c1
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
push 7
pop ecx
mov dword [ebp - 0x28], ecx
push 3
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x100301ea
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10d4], 0x4778
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100301d2
xor eax, eax
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x10030206
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030201
push eax
push eax
call ebx
xor eax, eax
dec dword [ebp - 0x28]
jns 0x100301f2
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003021b
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
mov dword [ebp - 0x40], 0xffffffff
xor esi, esi
mov dword [ebp - 0x24], 0xfffffffc
inc esi
mov dword [ebp - 0x40], 0xe24307a3
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10030253
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xcc], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003023b
xor eax, eax
push 3
pop ecx
mov dword [ebp - 0x18], eax
push 0xfffffffffffffffa
pop edx
cmp dword [ebp - 0x18], ecx
jge 0x10030275
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xcf4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10030261
xor eax, eax
cmp dword [ebp - 0xcc], eax
je 0x1003027f
mov eax, esi
add eax, 0xfffffffe
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xcc]
xor eax, eax
mov edx, eax
cmp dword [ebp - 0xcc], eax
je 0x100302ae
mov edx, esi
mov eax, dword [ebp - 0xcc]
xor ecx, ecx
cmp eax, edx
setge cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x40], 0x41720348
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xcec], eax
xor eax, eax
mov dword [ebp - 0x1c], 0xcf5720e8
mov dword [ebp - 0x40], 0x49480dd0
mov dword [ebp - 0x24], 0x2b461593
mov dword [ebp - 0x14], eax
jmp 0x100302fb
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x120], 5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100302ea
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10030365
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x8722
setne cl
xor edx, edx
imul ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setle dl
xor ecx, ecx
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setge cl
sub ecx, dword [ebp - 0x1c]
jne 0x1003034b
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x1003034d
mov eax, esi
add eax, 0xfffffff6
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
neg eax
cmp dword [ebp - 0x1c], eax
je 0x10030365
xor eax, eax
mov ecx, eax
jmp 0x10030367
mov ecx, esi
mov eax, dword [ebp - 0x1c]
imul eax, ecx
cmp eax, 0x829cbc21
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, 0xfffd
setne al
cmp eax, dword [ebp - 0x1c]
jle 0x100304ea
mov dword [ebp - 0x60], 0x8951fe51
xor eax, eax
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x1c], eax
jmp 0x100304db
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x40], 0xffffffff
cmp dword [ebp - 0x60], eax
je 0x10030402
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100303d6
push 0x1c5
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100304d8
push 0x98d
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_Polyline]
jmp 0x100304d6
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x40], 0xffffffff
mov dword [ebp - 0x24], 5
cmp dword [ebp - 0x4c], eax
jne 0x100305da
dec dword [ebp - 0x28]
je 0x100304c8
mov eax, dword [ebp - 0x120]
xor edx, edx
cmp eax, 0x7f72
mov eax, dword [ebp - 0x6c]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
imul ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x120]
cmp ecx, esi
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setne dl
sub edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
cmp ecx, esi
sbb eax, eax
neg eax
cmp eax, 2
sbb eax, eax
inc eax
cmp eax, 0x37a762af
jge 0x1003049d
xor eax, eax
cmp dword [ebp - 0x60], eax
je 0x1003049f
mov eax, esi
mov edx, dword [ebp - 0x120]
xor ecx, ecx
imul edx, eax
mov eax, dword [ebp - 0x38]
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, 0x575e
setle al
cmp eax, dword [ebp - 0x28]
jne 0x100304c6
mov ecx, esi
jmp 0x100304ca
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x11c]
imul eax, ecx
mov dword [ebp - 0x6c], eax
xor eax, eax
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff3
jl 0x100303ac
jmp 0x100305da
xor eax, eax
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x1c], eax
jmp 0x10030517
mov dword [ebp - 0x28], 0xef1792f5
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x10030514
cmp dword [ebp - 0x120], eax
jne 0x10030514
dec dword [ebp - 0x28]
jns 0x10030507
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x100304f8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jg 0x100305dc
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x120]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x120], 0
jne 0x10030591
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x120]
inc edx
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp + eax*4 - 0x120]
mov eax, dword [ebp - 0x20]
cmp eax, edx
mov eax, dword [ebp - 0x11c]
setg cl
xor edx, edx
cmp esi, ecx
sete dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle cl
xor esi, esi
mov eax, dword [ebp + eax*4 - 0x120]
add eax, ecx
cmp eax, dword [ebp - 0x20]
jge 0x10030590
xor eax, eax
inc esi
mov edx, eax
jmp 0x10030593
inc esi
mov edx, esi
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
sete cl
mov dword [ebp + eax*4 - 0x120], ecx
xor eax, eax
neg ecx
je 0x100305b4
mov ecx, esi
cmp dword [ebp - 0x1c], eax
jne 0x100305b6
mov ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
mov dword [ebp - 0x40], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x40]
cmp eax, 0x77dc9657
setge cl
mov dword [ebp - 0x24], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10030528
xor eax, eax
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x68], 0x9ae4f78d
mov dword [ebp - 0x68], 0xbac8
mov dword [ebp - 0x68], 0x504e
push 2
pop ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], ecx
jge 0x10030624
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0xe8c], 0xffffffff
inc dword [ebp - 0x74]
cmp dword [ebp - 0x74], ecx
jl 0x1003060c
xor eax, eax
push 3
mov dword [ebp - 0x74], eax
pop ecx
cmp dword [ebp - 0x74], ecx
jge 0x10030647
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0xfe4], 0xffffffff
inc dword [ebp - 0x74]
cmp dword [ebp - 0x74], ecx
jl 0x1003062f
xor eax, eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], ecx
jge 0x10030667
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x108c], 0xfffffffe
inc dword [ebp - 0x74]
cmp dword [ebp - 0x74], ecx
jl 0x1003064f
xor eax, eax
dec dword [ebp - 0x40]
mov edx, 0xe9d0
mov dword [ebp - 0x67c], edx
mov dword [ebp - 0x678], edx
mov dword [ebp - 0x674], edx
mov dword [ebp - 0x670], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x68], 0xd303f024
mov dword [ebp - 0x68], 0x88039d6b
mov dword [ebp - 0x68], 0xc593c869
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x14], eax
jmp 0x100306b8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xffc], 0x1ec2184e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100306a7
mov eax, dword [ebp - 0x670]
xor ecx, ecx
cmp eax, 0x51ea
setle cl
xor eax, eax
cmp ecx, esi
jg 0x100306dd
mov ecx, esi
cmp dword [ebp - 0x67c], eax
jne 0x100306df
mov ecx, eax
mov eax, dword [ebp - 0x670]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x670]
push 7
setle dl
xor ecx, ecx
cmp edx, eax
pop eax
sete cl
mov dword [ebp - 0x24], ecx
dec dword [ebp - 0x40]
mov dword [ebp - 0x58], eax
xor eax, eax
mov dword [ebp - 0x1c], 0xb13638ec
mov dword [ebp - 0x40], 9
push 3
mov dword [ebp - 0x14], eax
pop edx
cmp dword [ebp - 0x14], edx
jge 0x10030738
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x268], 0x3342eb90
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10030720
xor eax, eax
push 2
pop ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0xa0], 4
mov dword [ebp - 0x74], 0xffff
cmp dword [ebp - 0x1c], eax
jl 0x10030963
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x20], 0xcc511ec1
mov dword [ebp - 0x60], 0x4c3dc4d7
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10030792
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x998], 0x89bdd777
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10030779
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x100307a8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x768], 9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10030797
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x268]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x268]
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x268], ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp + eax*4 - 0x268]
mov eax, dword [ebp - 0x1c]
neg eax
cmp eax, 4
mov eax, dword [ebp - 0x998]
sbb ecx, ecx
inc ecx
sub ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x998]
setle cl
xor ebx, ebx
inc ecx
cmp ecx, 0x4129
setle bl
add ebx, 0x8aad9e0e
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ebx, eax
mov eax, dword [ebp - 0x98c]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
imul eax, ecx, 0xfffc
mov dword [ebp - 0x994], ecx
add eax, dword [ebp - 0x768]
je 0x1003084f
xor eax, eax
cmp dword [ebp - 0x260], eax
je 0x10030851
mov edx, esi
jmp 0x10030853
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
mov dword [ebp - 0x768], ecx
mov dword [ebp - 0x20], eax
jmp 0x1003093b
mov dword [ebp - 0x6c], 2
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x264], 0xa099
test eax, eax
jne 0x100308d6
mov eax, dword [ebp - 0x6c]
xor ecx, ecx
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x268]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x764]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x268]
test eax, eax
setne cl
cmp edi, ecx
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0x3dcd
setge cl
sub ecx, 0xfff7
jne 0x100308d6
xor eax, eax
mov ecx, eax
jmp 0x100308d8
mov ecx, esi
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x268]
mov edx, dword [ebp - 0x1c]
add edx, ecx
sub edx, eax
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x6c]
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x768], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x260]
mov eax, dword [ebp - 0x1c]
cmp eax, 0xffffffff
mov eax, dword [ebp - 0x268]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x268], 0
jne 0x10030945
dec dword [ebp - 0x20]
push 0
pop eax
cmp dword [ebp - 0x20], 0xffffffe6
je 0x1003086d
dec dword [ebp - 0x1c]
push 0
pop eax
push 3
pop edx
jns 0x1003075b
mov edi, dword [sym.imp.USER32.dll_GetClientRect]
mov ebx, dword [sym.imp.USER32.dll_CopyRect]
push 2
pop ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x10030983
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10f8], 0x4778
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1003096b
xor eax, eax
mov dword [ebp - 0x14], 0x24ec2e0c
mov dword [ebp - 0x978], 9
mov dword [ebp - 0x974], 9
mov dword [ebp - 0x970], 9
mov dword [ebp - 0x96c], 9
mov dword [ebp - 0x68], 0x3a79cc09
mov dword [ebp - 0x40], 0x3413
mov dword [ebp - 0x68], 0xc0e0752
mov dword [ebp - 0x14], eax
jmp 0x100309f5
mov dword [ebp - 0x20], 0x6e52d8cb
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edx
jg 0x100309f2
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x978], 0
jne 0x100309f0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jle 0x100309db
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe7
jle 0x100309cc
inc dword [ebp - 0x40]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x68], 0xfffffff7
mov dword [ebp - 0x6c], 0xcb818ebc
mov dword [ebp - 0x60], 0x8a77f2a5
cmp dword [ebp - 0x58], eax
jl 0x10030e2e
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x10030a46
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1014], 0x4778
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10030a2e
xor eax, eax
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], eax
jl 0x10030a62
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030a5d
push eax
push eax
call ebx
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10030a4e
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030a77
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
mov dword [ebp - 0x14], 0x9b3198a8
mov dword [ebp - 0xa18], 0xb0ceafd9
mov dword [ebp - 0xa14], 0xb0ceafd9
mov dword [ebp - 0xa10], 0xb0ceafd9
mov dword [ebp - 0xa0c], 0xb0ceafd9
mov dword [ebp - 0x14], eax
jmp 0x10030ad0
mov dword [ebp - 0xa14], 0xffffffff
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030acd
push 0x3c2
push eax
push eax
call dword [sym.imp.GDI32.dll_TranslateCharsetInfo]
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff7
jle 0x10030aab
mov ecx, dword [ebp - 0x74]
mov byte [ebp - 0xd], al
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x40], 0x6c12a7b0
mov dword [ebp - 0x24], 0xfe16
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x3c], 0xfffffffd
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10030b27
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xbc4], 0xdd664087
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10030b0e
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10030c99
push 7
pop ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x38], 0x1d69
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030b55
push eax
push eax
push 0x140d
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
neg esi
mov eax, dword [ebp - 0x20]
sbb esi, esi
xor edx, edx
neg esi
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, esi
setl al
cmp eax, dword [ebp - 0x20]
jle 0x10030b8f
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10030b91
xor esi, esi
inc esi
mov eax, esi
jmp 0x10030b94
xor eax, eax
xor esi, esi
inc esi
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x10030ba1
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0x3f1571c0
mov eax, dword [ebp - 0x4c]
setle cl
xor edx, edx
cmp eax, ecx
setge dl
xor eax, eax
mov dword [ebp - 0xbc4], edx
cmp edx, dword [ebp - 0x18]
jle 0x10030bfc
mov dword [ebp - 0x18], 0xd
cmp dword [ebp - 0x18], 0x20
jl 0x10030cc4
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030bee
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x20
jge 0x10030bd6
jmp 0x10030c95
mov dword [ebp - 0x40], 0xe0689bb5
mov dword [ebp - 0x14], eax
jmp 0x10030c19
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x508], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10030c08
mov ecx, dword [ebp - 0x504]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
neg ecx
neg eax
sbb eax, eax
neg eax
imul edx, eax, 0xfaba
lea eax, [ecx + 1]
cmp dword [ebp - 0x6c], eax
sbb eax, eax
xor ecx, ecx
inc eax
add edx, eax
mov eax, dword [ebp - 0x4c]
cmp edx, eax
mov eax, dword [ebp - 0x504]
setne cl
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setg dl
xor ecx, ecx
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
cmp edx, eax
setge cl
xor eax, eax
add ecx, dword [ebp - 0x18]
cmp ecx, 8
setg al
cmp eax, dword [ebp - 0x508]
jle 0x10030c90
xor eax, eax
cmp dword [ebp - 0x504], eax
je 0x10030c92
mov eax, esi
jmp 0x10030c92
xor eax, eax
mov dword [ebp - 0x40], eax
xor eax, eax
jmp 0x10030cc4
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 5
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x40]
cmp byte [ebp - 0xd], 0
je 0x10030e1c
push 6
mov dword [ebp - 0x2c], 0x17571177
mov dword [ebp - 0x2c], eax
pop ecx
jmp 0x10030e0f
mov dword [ebp - 0x44], 0x6e3245f1
mov dword [ebp - 0x44], 0xffffffed
cmp dword [ebp - 0x44], 0xffffffe4
jne 0x10030e07
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10030d1a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x46c], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10030d01
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10030d32
push eax
push 0xae0
push eax
call dword [sym.imp.GDI32.dll_GetBitmapBits]
xor eax, eax
mov dword [ebp - 0x468], eax
jmp 0x10030dea
mov dword [ebp - 0x20], 0x928fbc78
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10030d64
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xaf8], 0xe00f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030d4c
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xa
jne 0x10030de4
push 3
pop ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10030d90
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x774], 4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10030d78
xor eax, eax
mov dword [ebp - 0x76c], eax
cmp dword [ebp - 0x76c], eax
jl 0x10030ddb
mov dword [ebp - 0x14], 2
mov dword [ebp - 0x14], eax
jmp 0x10030dcb
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10030dc3
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x10030dd0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jle 0x10030daa
dec dword [ebp - 0x76c]
jns 0x10030d9e
push 3
pop ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xa
je 0x10030d70
inc dword [ebp - 0x468]
cmp dword [ebp - 0x468], 0x11
jne 0x10030d3d
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xffffffe4
je 0x10030cf8
push 6
pop ecx
cmp dword [ebp - 0x2c], eax
jne 0x10030e18
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ecx
je 0x10030ce0
push eax
push eax
call ebx
dec dword [ebp - 0x58]
push 0
pop eax
push 2
pop ecx
push 3
pop edx
jns 0x10030a1f
mov dword [ebp - 0x2c], 0x53d06ce1
or ebx, 0xffffffff
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x10030e5e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x4bc], 0x1d69f428
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x10030e46
xor eax, eax
dec dword [ebp - 0x18]
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], eax
jl 0x10030f8f
mov dword [ebp - 0x4bc], 0xfffffff8
mov eax, dword [ebp - 0x2c]
cmp dword [ebp + eax*4 - 0x4bc], 0
jne 0x10030f84
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10030f7b
mov dword [ebp - 0x548], ebx
mov dword [ebp - 0x544], ebx
mov dword [ebp - 0x540], ebx
mov dword [ebp - 0x53c], ebx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x53c], eax
cmp dword [ebp - 0x53c], ecx
jg 0x10030f78
push 3
pop esi
mov dword [ebp - 0x958], ebx
xor edx, edx
mov dword [ebp - 0x954], ebx
mov dword [ebp - 0x950], ebx
mov dword [ebp - 0x94c], ebx
mov dword [ebp - 0x4c], esi
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x4bc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x4bc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + eax*4 - 0x4bc]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
sete dl
xor ebx, ebx
sub edx, 0xc1ebe4a
cmp edx, eax
mov eax, dword [ebp - 0x18]
setge bl
sub ebx, dword [ebp + eax*4 - 0x4bc]
neg ebx
sbb ebx, ebx
inc ebx
mov dword [ebp - 0x954], ebx
mov ecx, dword [ebp - 0x24]
add ecx, ebx
imul ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4bc]
sub ecx, eax
cmp ecx, dword [ebp - 0x548]
jle 0x10030f4c
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x2c]
push 2
pop ecx
push 0xffffffffffffffff
mov eax, dword [ebp + eax*4 - 0x4bc]
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x53c]
pop ebx
cmp dword [ebp - 0x53c], ecx
jle 0x10030ec5
xor esi, esi
xor eax, eax
inc esi
or ebx, ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jle 0x10030e92
dec dword [ebp - 0x2c]
jns 0x10030e6d
xor eax, eax
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x40], 0x6c12a7b0
mov dword [ebp - 0x24], 0xfe16
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x3c], 0xfffffffd
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10030fd7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc1c], 0xdd664087
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10030fbf
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10031145
push 7
pop ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x38], 0x1d69
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10031005
push eax
push eax
push 0x140d
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
neg esi
mov eax, dword [ebp - 0x20]
sbb esi, esi
xor edx, edx
neg esi
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, esi
setl al
cmp eax, dword [ebp - 0x20]
jle 0x1003103f
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10031041
xor esi, esi
inc esi
mov eax, esi
jmp 0x10031044
xor eax, eax
xor esi, esi
inc esi
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x10031051
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0x3f1571c0
mov eax, dword [ebp - 0x4c]
setle cl
xor edx, edx
cmp eax, ecx
setge dl
xor eax, eax
mov dword [ebp - 0xc1c], edx
cmp edx, dword [ebp - 0x18]
jle 0x100310ac
mov dword [ebp - 0x18], 0xd
cmp dword [ebp - 0x18], 0x20
jl 0x10031170
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1003109e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x20
jge 0x10031086
jmp 0x10031141
mov dword [ebp - 0x40], 0xe0689bb5
mov dword [ebp - 0x14], eax
jmp 0x100310c5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x518], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100310b8
mov ecx, dword [ebp - 0x514]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
neg ecx
neg eax
sbb eax, eax
neg eax
imul edx, eax, 0xfaba
lea eax, [ecx + 1]
cmp dword [ebp - 0x6c], eax
sbb eax, eax
xor ecx, ecx
inc eax
add edx, eax
mov eax, dword [ebp - 0x4c]
cmp edx, eax
mov eax, dword [ebp - 0x514]
setne cl
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setg dl
xor ecx, ecx
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
cmp edx, eax
setge cl
xor eax, eax
add ecx, dword [ebp - 0x18]
cmp ecx, 8
setg al
cmp eax, dword [ebp - 0x518]
jle 0x1003113c
xor eax, eax
cmp dword [ebp - 0x514], eax
je 0x1003113e
mov eax, esi
jmp 0x1003113e
xor eax, eax
mov dword [ebp - 0x40], eax
xor eax, eax
jmp 0x10031170
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 5
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x40]
mov byte [ebp - 0x51], al
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031196
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x640], 0x9f9b3198
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003117e
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jg 0x1003120b
mov dword [ebp - 0x28], 6
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100311b8
push eax
push eax
call dword [sym.imp.GDI32.dll_RectInRegion]
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jl 0x100311fd
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100311e5
push 0x23d
push 0x3a5
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
xor edi, edi
push edi
call dword [sym.imp.USER32.dll_GetMessageA]
jmp 0x100311e7
xor edi, edi
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x640], edi
jne 0x100311fb
dec dword [ebp - 0x28]
push 0
pop eax
jns 0x100311c0
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x1003119e
mov edi, dword [sym.imp.USER32.dll_GetClientRect]
cmp byte [ebp - 0x51], 0
je 0x1003121d
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
xor eax, eax
mov dword [ebp - 0x40], ebx
mov ebx, 0xe24307a3
mov dword [ebp - 0x24], 0xfffffffc
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003124f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc4], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10031237
xor eax, eax
push 3
mov dword [ebp - 0x18], eax
pop edi
cmp dword [ebp - 0x18], edi
jge 0x10031271
push 0xfffffffffffffffa
pop ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd6c], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003125d
xor eax, eax
cmp dword [ebp - 0xc4], eax
je 0x1003127b
mov eax, esi
add eax, 0xfffffffe
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc4]
xor eax, eax
mov edx, eax
cmp dword [ebp - 0xc4], eax
je 0x100312aa
mov edx, esi
mov eax, dword [ebp - 0xc4]
xor ecx, ecx
cmp eax, edx
mov esi, 0x41720348
setge cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xd64], eax
xor eax, eax
mov dword [ebp - 0x40], 0xffffffff
mov dword [ebp - 0x24], 0xfffffffc
mov dword [ebp - 0x40], ebx
xor ebx, ebx
mov dword [ebp - 0x18], eax
inc ebx
cmp dword [ebp - 0x18], ebx
jge 0x10031301
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc8], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100312e9
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10031320
push 0xfffffffffffffffa
pop ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdf0], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1003130c
xor eax, eax
cmp dword [ebp - 0xc8], eax
je 0x1003132a
mov eax, ebx
add eax, 0xfffffffe
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xc8]
xor eax, eax
mov edx, eax
cmp dword [ebp - 0xc8], eax
je 0x10031359
mov edx, ebx
mov eax, dword [ebp - 0xc8]
xor ecx, ecx
cmp eax, edx
setge cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x40], esi
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xde8], eax
xor eax, eax
mov dword [ebp - 0x34], 0x3f5047c4
mov dword [ebp - 0x24], 0xafa01777
mov dword [ebp - 0x14], eax
jmp 0x1003139b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xbd4], 0xec299e88
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003138a
mov eax, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
imul ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, 0x9cd4431f
setge cl
cmp eax, ecx
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x34]
jne 0x100313d8
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x100313da
mov eax, ebx
mov esi, dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xbd0], eax
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x10031411
push eax
push 0xbfa
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call esi
xor eax, eax
mov dword [ebp - 0x20], 0xfffffff8
mov ecx, 0x747b1d00
mov dword [ebp - 0x14], 0xef7d6512
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x81c], ecx
mov dword [ebp - 0x818], ecx
mov dword [ebp - 0x814], ecx
mov dword [ebp - 0x810], ecx
mov dword [ebp - 0x14], eax
jmp 0x1003145f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc0], 0xc17e5c28
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003144e
mov dword [ebp - 0x44], 0x4b4b1328
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
imul ecx, dword [ebp - 0x20]
imul ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
setne dl
xor eax, eax
mov dword [ebp - 0xc0], edx
test edx, edx
je 0x100314ad
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x100315ee
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
jmp 0x100315ec
mov dword [ebp - 0x34], 0x76373a4c
push 0xfffffffffffffffa
mov dword [ebp - 0x2c], eax
pop ecx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x24], 0xffffffff
cmp dword [ebp - 0x28], eax
jne 0x100314d8
mov eax, dword [ebp - 0xc0]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xc0]
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0xc0], 0xfff9
sbb eax, eax
neg eax
mov dword [ebp - 0x44], eax
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x100315a0
cmp dword [ebp - 0x34], eax
je 0x1003152a
mov eax, dword [ebp - 0xc0]
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10031528
mov ecx, ebx
jmp 0x1003152c
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0xc0]
sub ecx, eax
lea eax, [ecx - 0xf603]
mov dword [ebp - 0xc0], eax
cmp eax, dword [ebp - 0x2c]
jge 0x10031550
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x10031552
mov edx, ebx
jmp 0x10031554
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x34]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, 2
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x44], eax
jne 0x1003158d
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
sub eax, 0xfff6
je 0x1003159e
mov ecx, ebx
jmp 0x100315a2
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x40]
sub ecx, eax
cmp ecx, dword [ebp - 0x20]
je 0x100315b2
mov eax, dword [ebp - 0x81c]
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x34]
inc ecx
cmp ecx, eax
setne dl
imul edx, dword [ebp - 0x4c]
sub edx, dword [ebp - 0x4c]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x2c]
jne 0x100315da
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x20], eax
je 0x100315dc
mov edx, ebx
mov eax, dword [ebp - 0x810]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x24], ecx
xor eax, eax
mov dword [ebp - 0x34], 0x3f5047c4
mov dword [ebp - 0x24], 0xafa01777
mov dword [ebp - 0x14], eax
jmp 0x10031612
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc48], 0xec299e88
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10031601
mov eax, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
imul ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, 0x9cd4431f
setge cl
cmp eax, ecx
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x34]
jne 0x1003164f
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10031651
mov eax, ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xc44], eax
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1003167c
push eax
push 0xbfa
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call esi
xor eax, eax
mov dword [ebp - 0x50], 0x2132
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], 0x4ae9c241
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100316b7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x328], 0x7f47073e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003169f
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x100316cd
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x98], 0xe769035a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100316bc
mov ecx, dword [ebp - 0x50]
xor ebx, ebx
mov eax, dword [ebp - 0x50]
cmp ecx, eax
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
setle bl
xor edx, edx
cmp ecx, eax
setne dl
xor eax, eax
cmp ebx, edx
setge al
add eax, dword [ebp - 0x50]
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x50]
je 0x10031703
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x50]
xor ecx, ecx
mov eax, dword [ebp - 0x50]
add edx, 0x4448
cmp eax, edx
setge cl
xor ebx, ebx
mov dword [ebp - 0x1c], ecx
inc ebx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x1003172b
mov eax, ebx
imul edx, eax, 0xffff
mov dword [ebp - 0x328], eax
mov eax, dword [ebp - 0x50]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
xor eax, eax
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], eax
je 0x10031756
mov eax, dword [ebp - 0x328]
mov eax, dword [ebp - 0x50]
xor edx, edx
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x98]
imul ecx, dword [ebp - 0x50], 3
mov eax, dword [ebp - 0x98]
cmp ecx, eax
setl dl
cmp edx, 0xffffffff
jae 0x100318c0
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], 0xfffffff9
mov dword [ebp - 0x40], 0x93d1d1ce
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x34], 8
cmp dword [ebp - 0x30], eax
jne 0x100317bf
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x30]
jge 0x100317d9
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], 0xfff8
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x100317ea
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp eax, 0xfffffff8
setg cl
xor eax, eax
imul ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x38]
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x38]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0x38
je 0x100318dc
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x34]
sub eax, 6
je 0x1003189c
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov eax, 0x9b47bed2
setge dl
cmp eax, edx
sbb eax, eax
inc eax
cmp dword [ebp - 0x30], eax
jne 0x1003189c
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x10031895
mov dword [ebp - 0x2c], eax
jmp 0x1003188d
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10031863
push eax
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jl 0x1003188a
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x98], 2
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp + eax*4 - 0x98]
dec dword [ebp - 0x18]
jns 0x1003186b
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], eax
jle 0x10031851
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], eax
jle 0x1003184c
jmp 0x100318ae
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x100318ae
mov dword [ebp - 0x28], ebx
dec dword [ebp - 0x1c]
jns 0x100318a6
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], 0x38
push 0
pop eax
jne 0x10031812
jmp 0x100318da
mov dword [ebp - 0x40], 0xffffffff
xor edx, edx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x98]
cmp eax, ecx
setg dl
mov dword [ebp - 0x40], edx
xor eax, eax
mov dword [ebp - 0x34], 0x3f5047c4
mov dword [ebp - 0x24], 0xafa01777
mov dword [ebp - 0x14], eax
jmp 0x10031900
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb38], 0xec299e88
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100318ef
mov eax, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
imul ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, 0x9cd4431f
setge cl
cmp eax, ecx
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x34]
jne 0x1003193d
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x1003193f
mov eax, ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xb34], eax
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1003196a
push eax
push 0xbfa
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call esi
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x24], 0x9ef3212
mov dword [ebp - 0x38], 8
mov dword [ebp - 0x40], 0xfc8d6799
push 3
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x100319a9
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x900], 0xfffffff7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10031991
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xfffffff5
je 0x10031b86
mov dword [ebp - 0x34], 0x4c506d44
mov dword [ebp - 0x28], 0x41bbbbfe
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xffffffef
jne 0x10031b49
push 0xfffffffffffffffa
pop ecx
mov dword [ebp - 0x48], 0x8a6b950b
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0xb
je 0x10031b3c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10031a09
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x804], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100319f4
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x10031a27
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x16c], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10031a12
xor eax, eax
mov dword [ebp - 0x168], eax
cmp dword [ebp - 0x168], ebx
jg 0x10031b2c
mov dword [ebp - 0x40], 0x9329
xor edx, edx
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x34]
cmp eax, 0xd7ba9668
mov eax, dword [ebp - 0x48]
setne dl
xor ecx, ecx
add edx, 0x6286
cmp edx, eax
setne cl
cmp ecx, dword [ebp - 0x14]
jle 0x10031a71
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x30], eax
je 0x10031a73
mov edx, ebx
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x48]
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
cmp ecx, 0x4c259dba
jne 0x10031aa0
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x10031aa2
mov eax, ebx
cmp eax, dword [ebp - 0x30]
je 0x10031aaa
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x168]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x168]
mov dword [ebp + eax*4 - 0x804], 0xfffffa1b
mov eax, dword [ebp - 0x168]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x168]
mov eax, dword [ebp - 0x168]
mov ecx, dword [ebp + eax*4 - 0x804]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
sete dl
sub edx, 0x70669599
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setge cl
inc ecx
mov dword [ebp - 0x8fc], ecx
inc dword [ebp - 0x168]
cmp dword [ebp - 0x168], ebx
jle 0x10031a39
xor eax, eax
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], 0xb
jne 0x100319eb
push 0xfffffffffffffffa
pop ecx
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffef
je 0x100319d4
cmp dword [ebp - 0x38], eax
jne 0x10031b51
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x8fc], eax
mov eax, dword [ebp - 0x38]
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x10031b6a
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x8fc]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xfffffff5
push 0
pop eax
jne 0x100319b6
xor esi, esi
inc esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], 0x2d621ec2
mov dword [ebp - 0x40], 0xf0f5ebec
mov dword [ebp - 0x24], 0x2b4b5a9c
mov dword [ebp - 0x14], eax
jmp 0x10031bb7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x320], 0xd303f024
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031ba6
mov eax, dword [ebp - 0x48]
xor edx, edx
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
inc ecx
cmp eax, ecx
mov eax, dword [ebp - 0x320]
setg dl
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x48]
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x4c], ecx
mov ecx, 0xffffe136
mov eax, dword [ebp - 0x48]
sub ecx, eax
mov eax, dword [ebp - 0x320]
sub ecx, eax
mov eax, dword [ebp - 0x48]
add eax, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x320]
mov eax, dword [ebp - 0x4c]
cmp eax, ecx
mov eax, dword [ebp - 0x48]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x48]
setge cl
cmp ecx, dword [ebp - 0x74]
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
xor eax, eax
mov dword [ebp - 0x24], ecx
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x10031c45
push 0x8e
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0x38], 0x96dd1e1e
or ebx, 0xffffffff
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x4c], 6
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], 0x8f5537c5
mov dword [ebp - 0x20], 0x5900b088
mov dword [ebp - 0x24], 0x17216709
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x10031c9c
mov edx, eax
cmp dword [ebp - 0x28], eax
je 0x10031c9e
mov edx, esi
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setne cl
cmp esi, ecx
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x4c]
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x44]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setl dl
xor eax, eax
imul edx, dword [ebp - 0x4c]
neg edx
cmp edx, 0x3c40
setl al
cmp eax, 0x4af7bdd4
je 0x10031cf0
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10031cf2
mov eax, esi
jmp 0x10031cf2
xor eax, eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x24], esi
xor eax, eax
mov dword [ebp - 0x1c], 9
mov dword [ebp - 0x38], 0xe8b72fd4
mov dword [ebp - 0x18], 0xfffffff8
mov dword [ebp - 0x14], 0x9d012742
mov dword [ebp - 0x20], 0xd56a4262
mov dword [ebp - 0x24], ebx
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x10031d3f
push 0x22e
push 0x121e
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, 0xfffffffe
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
imul eax, ecx, 0x46e
test eax, eax
jne 0x10031d61
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10031d77
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10031d91
mov eax, esi
cmp dword [ebp - 0x1c], eax
jne 0x10031d94
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
inc dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
je 0x10031e19
mov dword [ebp - 0x28], 0x183
xor edx, edx
mov eax, 0xfff6
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, 0xf84b0f4f
setge dl
sub edx, dword [ebp - 0x28]
cmp eax, edx
mov eax, dword [ebp - 0x14]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
sub eax, ecx
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10031e0e
mov dword [ebp - 0x24], 0x42d63d2c
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffef
jge 0x10031e04
jmp 0x10031e9e
xor eax, eax
mov dword [ebp - 0x34], eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x10031e2d
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov eax, dword [ebp - 0x34]
xor edx, edx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setl dl
add edx, dword [ebp - 0x34]
jne 0x10031e45
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x34], 0xccbd95d6
sbb eax, eax
cmp eax, esi
jb 0x10031e60
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x10031e62
mov eax, esi
jmp 0x10031e62
xor eax, eax
mov ecx, 0x86cc6b0c
cmp ecx, eax
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x34]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x74]
sbb eax, eax
neg eax
imul eax, eax, 0xe8d9
test eax, eax
je 0x10031e89
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
setge cl
xor eax, eax
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x14], 0x4a8c6a53
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x24], 0x41b6
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10031ecd
push eax
push eax
push 0x1364
call edi
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
push 0xfffffffffffffffc
mov dword [ebp - 0x14], 0xe
pop edi
cmp dword [ebp - 0x14], edi
jne 0x10031f73
push 3
pop ecx
mov dword [ebp - 0x3c], 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10031f06
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x18c], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10031ef2
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10031f26
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10a4], 0x25739271
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10031f0e
xor eax, eax
mov dword [ebp - 0x18c], eax
jmp 0x10031f5c
mov dword [ebp - 0x20], 0xccb03629
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x12
jg 0x10031f56
mov dword [ebp - 0x24], 0xcb61
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x12
jle 0x10031f3e
xor eax, eax
dec dword [ebp - 0x18c]
cmp dword [ebp - 0x18c], edi
jne 0x10031f2e
mov dword [ebp - 0x24], esi
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
je 0x10031ee3
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0xfb26c4f3
mov dword [ebp - 0x18], 0x13
cmp dword [ebp - 0x18], edi
jne 0x100320aa
push 7
pop ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x24], 0xcc5d9b4e
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10031fb0
push eax
call dword [sym.imp.GDI32.dll_CreatePatternBrush]
mov dword [ebp - 0x44], 4
jmp 0x10032091
mov dword [ebp - 0x14], 0x5de05dae
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x24], ebx
mov eax, dword [ebp - 0x14]
neg eax
je 0x10032003
mov dword [ebp - 0x24], esi
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setl dl
xor eax, eax
mov dword [ebp - 0x24], edx
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1003208e
push 0x11c
push eax
push eax
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
jmp 0x1003208e
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003201b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2f4], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003200a
mov ecx, dword [ebp - 0x2f4]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, dword [ebp - 0x20]
je 0x1003203e
cmp dword [ebp - 0x18], eax
je 0x1003203e
mov eax, esi
cmp eax, dword [ebp - 0x38]
je 0x1003204f
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x2f4], eax
je 0x10032051
mov edx, esi
mov eax, dword [ebp - 0x2f4]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x38]
cmp edx, eax
mov eax, dword [ebp - 0x24]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x14]
setg bl
xor ecx, ecx
sub ebx, 0x7fffaa23
cmp eax, ebx
setl cl
or ebx, 0xffffffff
mov dword [ebp - 0x28], ecx
dec dword [ebp - 0x44]
cmp dword [ebp - 0x44], 0xfffffffe
jle 0x10031fbc
dec dword [ebp - 0x18]
push 0
pop eax
cmp dword [ebp - 0x18], edi
je 0x10031f93
cmp dword [ebp - 0x20], eax
jne 0x100320d2
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, 0xfff6
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 5
je 0x100320d2
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x20], eax
je 0x100320d4
mov edx, esi
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
push 0xfffffffffffffffd
setg cl
xor eax, eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x40], 0xe24307a3
mov dword [ebp - 0x3c], 0xefbde283
mov dword [ebp - 0x3c], 0xe2cf4565
pop edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x40], 0x6e483bbb
mov dword [ebp - 0x24], 0x4e20eeb
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x1003212b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x600], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032117
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1003214b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb08], 0xcd1b7e2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10032133
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [ebp - 0x600], 0x1c
cmp dword [ebp - 0x600], 0xffffffee
jl 0x1003230c
mov dword [ebp - 0x3c], 0xadca1a1f
mov dword [ebp - 0x3c], 0x46e74a6e
mov dword [ebp - 0x38], 0x11b55e9
mov dword [ebp - 0x48], 0x14ba09a1
mov dword [ebp - 0x4c], 0x9d012742
mov dword [ebp - 0x3c], 0x96d56a42
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x100321b5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe0], 0x8b72fd49
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003219d
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100321d1
push 0x140e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push 3
xor eax, eax
pop ecx
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0xffffffe3
jle 0x100322f3
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x28], 0x92570183
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1003220c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x510], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100321f7
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10032222
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x918], 0x1a88af16
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032211
mov eax, dword [ebp - 0xe0]
xor edx, edx
mov eax, dword [ebp - 0x510]
inc dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x918]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x50c]
mov eax, dword [ebp - 0x910]
cmp eax, ecx
mov eax, dword [ebp - 0x50c]
setl dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x510]
setl bl
xor ecx, ecx
cmp ebx, eax
sete cl
xor eax, eax
mov dword [ebp - 0x48], ecx
cmp dword [ebp - 0x48], 0x4f2d
jne 0x1003228d
mov ecx, esi
cmp dword [ebp - 0x38], eax
jne 0x1003228f
mov ecx, eax
mov eax, dword [ebp - 0xe0]
sub ecx, eax
cmp ecx, dword [ebp - 0x38]
je 0x100322b2
mov dword [ebp - 0x40], 0xffffffff
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x100322eb
jmp 0x100322bb
xor edi, edi
cmp dword [ebp - 0x40], edi
jne 0x100322eb
xor eax, eax
push 3
mov dword [ebp - 0x48], eax
pop ecx
cmp dword [ebp - 0x48], esi
jg 0x100322d5
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x914], ecx
inc dword [ebp - 0x48]
jmp 0x100322c1
dec dword [ebp - 0xe0]
cmp dword [ebp - 0xe0], 0xffffffe3
push 0
pop eax
jg 0x100321e4
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
xor eax, eax
dec dword [ebp - 0x600]
cmp dword [ebp - 0x600], 0xffffffee
push 3
pop ecx
push 0xfffffffffffffffd
pop edx
jge 0x10032168
mov dword [ebp - 0x18], 0x31713b91
mov dword [ebp - 0x24], 0x4c9ff750
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032339
push 0xfffffffffffffffa
pop edx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x6fc], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10032325
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x1c
push 7
pop ebx
jne 0x1003242f
mov dword [ebp - 0x48], 0xffffffff
mov dword [ebp - 0x40], 0xe1b61bab
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10032377
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x930], 0xfffd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1003235f
xor eax, eax
mov dword [ebp - 0x48], eax
jmp 0x100323aa
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100323a0
push 0x187e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
xor eax, eax
mov dword [ebp - 0x40], 0x7e55059b
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], ebx
jne 0x1003237c
mov eax, dword [ebp - 0x48]
xor edi, edi
cmp dword [ebp - 0x40], edi
jl 0x100323bf
mov eax, dword [ebp - 0x92c]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x930], 0x2452
push 0xfffffffffffffffa
cmp eax, 5
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0x3923
pop eax
setge cl
cmp eax, ecx
mov dword [ebp - 0x6fc], ecx
mov eax, dword [ebp - 0x18]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x18]
jne 0x10032403
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x92c]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
cmp eax, esi
push 0
setg cl
mov dword [ebp - 0x24], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1c
pop eax
push 3
pop ecx
je 0x10032349
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [ebp - 0x58], 0x13b91020
mov dword [ebp - 0x40], ebx
push 2
mov dword [ebp - 0x18], eax
pop ebx
cmp dword [ebp - 0x18], ebx
jge 0x1003245c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb50], 0x9d43467
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10032444
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x1003247e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xcb8], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10032465
xor eax, eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0xffffffff
jg 0x10032520
mov edi, 0xfffb
mov dword [ebp - 0x2c], 0xb74c38b6
mov dword [ebp - 0x24], 0xfffffff9
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xb50], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0xcb4], eax
je 0x100324d0
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xcb0]
add eax, ecx
mov ecx, dword [ebp - 0x2c]
imul ecx, eax
sub ecx, dword [ebp - 0x2c]
je 0x100324ce
mov eax, esi
jmp 0x100324d0
xor eax, eax
cmp eax, 0xfff9
sbb eax, eax
inc eax
add eax, dword [ebp - 0x2c]
cmp edi, eax
sbb eax, eax
xor edx, edx
neg eax
cmp eax, 0x11aa
mov eax, dword [ebp - 0x58]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x6e83
setl cl
mov dword [ebp - 0x24], ecx
inc dword [ebp - 0x40]
dec dword [ebp - 0x58]
cmp dword [ebp - 0x58], 0xffffffff
jle 0x10032490
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10032540
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd0], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10032528
xor eax, eax
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032567
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xfc], 0x1824a8c6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003254f
xor eax, eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0x1a
jne 0x100325cc
jmp 0x1003257a
xor eax, eax
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1003259d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7d4], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032585
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x100325b2
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x7d4], 0
jne 0x100325b7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x100325a2
mov eax, dword [ebp - 0x7d0]
inc dword [ebp - 0xfc]
cmp dword [ebp - 0xfc], 0x1a
je 0x10032578
mov edx, dword [ebp - 0xfc]
sub edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
neg edx
push 3
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, eax
mov eax, dword [ebp - 0xfc]
cmp eax, edx
mov eax, dword [ebp - 0xfc]
setle cl
sub eax, ecx
neg eax
sbb eax, eax
xor edx, edx
lea ecx, [eax + 0xcd9d76]
mov eax, dword [ebp - 0xfc]
cmp ecx, eax
mov eax, dword [ebp - 0xfc]
setle dl
sub edx, 0xe55a
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x3717
setne cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0xf8]
cmp ecx, eax
pop ecx
setle dl
xor eax, eax
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10032669
push 0xfffffffffffffffa
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd90], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10032655
xor eax, eax
mov dword [ebp - 0x2c], 0x60ec01e6
mov dword [ebp - 0x38], 0x8c9d
mov dword [ebp - 0x44], 0x49968cb6
mov dword [ebp - 0x58], 0xfffffff7
mov dword [ebp - 0x3c], 0x812c005d
mov dword [ebp - 0x3c], 0x67684abf
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
jmp 0x100326ac
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5e0], 0xfffffffb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003269b
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
imul eax, ecx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
imul ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
cmp ecx, eax
setl dl
sub edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0x2c]
jle 0x100326fa
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x5dc], eax
je 0x100326fc
mov edx, esi
mov eax, dword [ebp - 0x58]
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0xc6d0
setl al
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x58], 0x1d
jmp 0x100327e2
mov dword [ebp - 0x4c], 0xcd17cd95
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], 0xa9e1a0e1
mov dword [ebp - 0x3c], 0xb5c4ce10
mov dword [ebp - 0xa98], ecx
mov dword [ebp - 0xa94], ecx
mov dword [ebp - 0xa90], ecx
mov dword [ebp - 0xa8c], ecx
mov dword [ebp - 0x28], 0xb9d6240
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x24], 0x66449d4c
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032785
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x464], 0x826243a5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003276d
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x464], eax
jne 0x10032799
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x464], eax
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x5dc]
cmp eax, ecx
mov ecx, dword [ebp - 0xa8c]
setl dl
lea eax, [edx - 0x206f]
imul ecx, eax
mov dword [ebp - 0x38], ecx
dec dword [ebp - 0x58]
xor eax, eax
mov ecx, 0xe7587697
cmp dword [ebp - 0x58], 0x16
jle 0x10032720
cmp dword [ebp - 0xd0], eax
je 0x100327fd
mov eax, esi
add eax, 0xfffffffe
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xd0]
mov eax, dword [ebp - 0xd0]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0xd0]
mov eax, dword [ebp - 0xd0]
xor eax, eax
mov edx, eax
cmp dword [ebp - 0xd0], eax
je 0x1003282c
mov edx, esi
mov eax, dword [ebp - 0xd0]
xor ecx, ecx
cmp eax, edx
setge cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x40], 0x41720348
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xd88], eax
xor eax, eax
mov dword [ebp - 0x3c], 0x62fd41e5
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x3c], 0xfffffffe
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x1c], 0x666a756a
mov dword [ebp - 0x40], 0xd9a924c0
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x44], 8
mov dword [ebp - 0x3c], 0x20b95ae6
mov dword [ebp - 0x3c], 0xfffffffb
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x3c], 0xdc5336de
mov dword [ebp - 0x28], 0xfffffff6
mov dword [ebp - 0x24], 0x2dd78f4f
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x3c], 0x2c41ac3d
mov dword [ebp - 0x38], 0xdf11bbb4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x100328e4