Function at 0x1002f013
Capabilities:
Accept command line arguments
Check for time delay via queryperformancecounter
Check os version
Create pipe
Create process on windows
Enumerate files on windows
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get file attributes
Get file size
Get file system object information
Get memory capacity
Get thread local storage value
Query environment variable
Query service status
Read .ini file
Start service
Terminate process

Disassembly:
mov eax, 0x1007a486
call fcn.10079e38
mov eax, 0x1604
call fcn.10077a60
mov dword [ebp - 0x10], 0xa7c2
xor eax, eax
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x38], 0x7ddbf4d
push ebx
mov dword [ebp - 0x3c], 0x3b06d9e9
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
push esi
push edi
mov byte [ebp - 0x81], dl
mov dword [ebp - 0x60], ecx
jge 0x1002f073
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1370], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002f05a
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1002f089
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10d0], 0x8169c147
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002f078
mov eax, dword [ebp - 0x10]
xor edx, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x5daa
mov eax, dword [ebp - 0x10]
setl dl
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1370], edx
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, edx
mov ebx, dword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
setl cl
xor edx, edx
cmp ecx, 0xfffffffa
setle dl
sub edx, dword [ebp - 0x10]
sub edx, 0x26b5
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
xor edx, edx
cmp ecx, eax
setge dl
xor eax, eax
mov dword [ebp - 0x10cc], edx
mov dword [ebp - 0x3c], edx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1002f123
push 0x1a32
call ebx
xor eax, eax
push 2
mov dword [ebp - 0x14], eax
pop esi
cmp dword [ebp - 0x14], esi
jge 0x1002f146
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xdd4], 0x7862fd41
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002f12e
xor eax, eax
xor edi, edi
mov dword [ebp - 0x14], eax
inc edi
cmp dword [ebp - 0x14], edi
jge 0x1002f169
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x14c], 0x57a7c203
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002f151
xor eax, eax
mov dword [ebp - 0x14c], edi
cmp dword [ebp - 0x14c], eax
jl 0x1002f197
mov eax, dword [ebp - 0x14c]
cmp dword [ebp + eax*4 - 0xdd4], 0
jne 0x1002f195
mov eax, dword [ebp - 0x14c]
dec dword [ebp - 0x14c]
jns 0x1002f177
xor eax, eax
mov ecx, 0xe91a049f
mov dword [ebp - 0xb68], ecx
mov dword [ebp - 0xb64], ecx
mov dword [ebp - 0xb60], ecx
mov dword [ebp - 0xb5c], ecx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], eax
push 9
pop ecx
cmp dword [ebp - 0x20], edi
jge 0x1002f1d6
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xa8], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002f1c2
xor eax, eax
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 4
jge 0x1002f203
mov eax, dword [ebp - 0xa8]
mov dword [ebp + eax*4 - 0xb68], edi
inc dword [ebp - 0xa8]
cmp dword [ebp - 0xa8], 4
jl 0x1002f1e5
xor eax, eax
push 3
pop ecx
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], eax
jl 0x1002f31b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002f232
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x4e4], 0xfffffffe
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002f21a
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x1002f252
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd64], 0xd870a326
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1002f23a
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1002f270
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xfcc], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1002f25b
xor eax, eax
mov dword [ebp - 0x4e0], ecx
cmp dword [ebp - 0x4e0], eax
jl 0x1002f312
mov dword [ebp - 0x20], eax
jmp 0x1002f298
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x97c], 0x38591b68
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1002f287
mov edx, dword [ebp - 0x978]
xor ecx, ecx
mov eax, dword [ebp - 0xfc0]
imul edx, eax
mov eax, dword [ebp - 0x24]
sub edx, eax
mov eax, dword [ebp - 0xfc0]
cmp edx, eax
setne cl
xor eax, eax
cmp dword [ebp - 0x978], ecx
jne 0x1002f2d2
mov ecx, edi
cmp dword [ebp - 0xa8], eax
jne 0x1002f2d4
mov ecx, eax
mov dword [ebp - 0xd5c], eax
mov eax, dword [ebp - 0xa8]
add eax, ecx
cmp dword [ebp - 0x978], eax
jle 0x1002f2f8
xor eax, eax
cmp dword [ebp - 0xd64], eax
je 0x1002f2fa
mov eax, edi
jmp 0x1002f2fa
xor eax, eax
push 0
mov dword [ebp - 0xa8], eax
dec dword [ebp - 0x4e0]
pop eax
push 3
pop ecx
jns 0x1002f282
dec dword [ebp - 0x24]
jns 0x1002f212
mov dword [ebp - 0x24], 0x1928c176
or ecx, 0xffffffff
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], 0xd193e056
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x44], 0x7d50f82b
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002f359
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xde0], 0x515466bc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002f341
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002f379
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xdf8], 0x939c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002f361
xor eax, eax
push 0xfffffffffffffff7
mov dword [ebp - 0x24], 0x1a
pop edx
jmp 0x1002f516
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], 0x29edca8f
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x2c], 0xf11caf1e
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], eax
jne 0x1002f513
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x44], 0x2d5fba25
mov dword [ebp - 0x38], 0xe9f4
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1002f3e2
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x76c], 0xfffd
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002f3ca
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jg 0x1002f50a
mov dword [ebp - 0x1c], 0xededb5ca
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x3c], 0x3b1067dc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x1002f41f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x4b4], 0xa7c7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1002f407
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x1002f495
mov ecx, 0xd850
mov dword [ebp - 0x44], 0x24dc41fd
mov dword [ebp - 0x44], 0xb6dad816
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x44], 0x84edc02
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1002f469
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xd0c], edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002f455
xor eax, eax
inc dword [ebp - 0x38]
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1002f490
push 0x57c
push 0x9cd
push eax
call dword [sym.imp.GDI32.dll_CreatePolygonRgn]
push 0xfffffffffffffff7
xor eax, eax
mov ecx, 0xd850
pop edx
dec dword [ebp - 0x1c]
jns 0x1002f42c
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x76c]
cmp eax, 0x9b95520
setne cl
mov dword [ebp - 0xddc], ecx
mov dword [ebp - 0xdf8], ecx
neg ecx
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x4b0]
inc dword [ebp - 0x4b0]
test eax, eax
je 0x1002f4e5
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x4b0]
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x58], eax
je 0x1002f4e5
mov ecx, edi
jmp 0x1002f4e9
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, 0xb249
push 0xffffffffffffffff
setl al
mov dword [ebp - 0x3c], eax
xor eax, eax
inc dword [ebp - 0x28]
pop ecx
cmp dword [ebp - 0x28], eax
jle 0x1002f3ee
or ecx, ecx
inc dword [ebp - 0x4c]
je 0x1002f3a8
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x15
jge 0x1002f388
mov dword [ebp - 0x28], 0x5d6c05ba
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x44], 0xd7f19125
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1002f553
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1458], 0x79d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x1002f53a
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x1002f60a
mov dword [ebp - 0x44], 0x249aaed6
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1002f58b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x15c], 0xeede0b40
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002f573
xor eax, eax
mov dword [ebp - 0x15c], 5
jmp 0x1002f5fe
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x54], 0x7d7c1188
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x2c], 0x7b5cf1c9
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xa
jl 0x1002f5f8
mov dword [ebp - 0x44], 0x3ab1943c
xor ecx, ecx
mov dword [ebp - 0x44], 0x6d210ec3
mov dword [ebp - 0x44], 0x52568108
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x28]
inc eax
cmp eax, 0x7967
push 0
setge cl
mov dword [ebp - 0x38], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xa
pop eax
jge 0x1002f5b4
or ecx, 0xffffffff
inc dword [ebp - 0x15c]
cmp dword [ebp - 0x15c], 0xc
jl 0x1002f597
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xa
jne 0x1002f55b
mov dword [ebp - 0x10], 0xa7c2
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x38], 0x7ddbf4d
mov dword [ebp - 0x3c], 0x3b06d9e9
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002f652
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1308], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002f639
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1002f668
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10e8], 0x8169c147
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002f657
mov eax, dword [ebp - 0x10]
xor edx, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x5daa
mov eax, dword [ebp - 0x10]
setl dl
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1308], edx
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, edx
setl cl
xor edx, edx
cmp ecx, 0xfffffffa
setle dl
sub edx, dword [ebp - 0x10]
sub edx, 0x26b5
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
xor edx, edx
cmp ecx, eax
setge dl
xor eax, eax
mov dword [ebp - 0x10e4], edx
mov dword [ebp - 0x3c], edx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1002f6fc
push 0x1a32
call ebx
xor eax, eax
push 0xfffffffffffffffd
pop ecx
mov dword [ebp - 0x30], ecx
push 3
mov dword [ebp - 0x10], 0xb1891f78
pop ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x20], eax
jmp 0x1002f721
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x110], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1002f714
mov ecx, dword [ebp - 0x30]
imul ecx, dword [ebp - 0x30]
neg ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x10c], ecx
mov eax, dword [ebp - 0x30]
imul eax, ecx
cmp eax, 0x7110
jge 0x1002f74c
mov eax, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x30]
or edx, 0xffffffff
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, edx
mov eax, dword [ebp - 0x30]
setl cl
xor edx, edx
cmp edx, eax
sbb eax, eax
neg eax
cmp ecx, eax
jge 0x1002f7cb
or eax, 0xffffffff
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x3c], 0x9c1c73b0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x30]
jne 0x1002f792
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x34]
imul eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov ecx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x34]
setg dl
sub ecx, edx
sub ecx, eax
xor eax, eax
cmp ecx, 0x477a
setne al
mov dword [ebp - 0x3c], eax
jmp 0x1002f950
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x38], 0x5a33b115
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x1002f7fd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x818], 7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1002f7e5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x1002f830
mov dword [ebp - 0x10], eax
jmp 0x1002f814
mov dword [ebp - 0x38], 0xfffffff9
inc dword [ebp - 0x38]
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe9
jl 0x1002f807
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1002f82d
push eax
push eax
call dword [sym.imp.GDI32.dll_GetNearestPaletteIndex]
xor eax, eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x19
jle 0x1002f802
mov dword [ebp - 0x10], 0x14
cmp dword [ebp - 0x10], 0xd
jle 0x1002f950
push 0xfffffffffffffffa
pop eax
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], eax
mov dword [ebp - 0x30], 0xfffffff1
jmp 0x1002f8f3
mov dword [ebp - 0x38], 0x9275a805
mov eax, dword [ebp - 0x408]
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1002f88c
mov ecx, eax
cmp dword [ebp - 0x10], eax
je 0x1002f88e
mov ecx, edi
xor eax, eax
cmp ecx, edi
setne al
xor ecx, ecx
cmp eax, 0xa10b
setl cl
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x10c], ecx
mov eax, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x408]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
imul eax, ecx
cmp eax, 0xfffffff9
mov eax, dword [ebp - 0x38]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x408]
mov dword [ebp - 0x818], eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x16
jne 0x1002f86e
mov eax, dword [ebp - 0x410]
mov esi, dword [ebp - 0x404]
mov eax, dword [ebp - 0x408]
imul esi, eax
mov eax, dword [ebp - 0x10]
sub esi, eax
sub esi, dword [ebp - 0x818]
mov ecx, dword [ebp - 0x50]
neg esi
mov eax, dword [ebp - 0x30]
sbb esi, esi
xor edx, edx
inc esi
cmp ecx, eax
setg dl
xor eax, eax
imul edx, dword [ebp - 0x10]
cmp edx, esi
setne al
mov dword [ebp - 0x10c], eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xd
jg 0x1002f847
push 2
pop esi
xor eax, eax
mov edx, 0xffff
mov dword [ebp - 0x30], eax
jmp 0x1002fa04
mov dword [ebp - 0x1c], 0x8ae6fb37
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], eax
jl 0x1002fa01
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + eax*4 - 0x110]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x110], ecx
test ecx, ecx
jne 0x1002f9dc
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x110]
test eax, eax
setne cl
cmp dword [ebp - 0x1c], ecx
jg 0x1002f9af
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x110], 0
jne 0x1002f9af
xor eax, eax
jmp 0x1002f9b1
mov eax, edi
cmp eax, dword [ebp - 0x1c]
jle 0x1002f9c0
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x110]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x110]
cmp eax, dword [ebp - 0x10c]
jle 0x1002f9dc
xor eax, eax
jmp 0x1002f9de
mov eax, edi
cmp edx, eax
mov eax, dword [ebp - 0x1c]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov edx, 0xffff
setg cl
mov dword [ebp - 0x3c], ecx
dec dword [ebp - 0x10]
jns 0x1002f972
xor eax, eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edi
jle 0x1002f95f
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002fa2d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe28], 0x7862fd41
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002fa15
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x568], edi
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x560], edi
mov dword [ebp - 0x55c], edi
mov dword [ebp - 0x1c], 0xbecc425f
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1002fa6f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x68], 7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002fa5a
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], eax
jg 0x1002fc46
jmp 0x1002fa7f
xor eax, eax
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x3c], 0x7967268f
mov dword [ebp - 0x2c], eax
push 0xfffffffffffffffd
pop eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov dword [ebp - 0x28], 0x1c946b43
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x68]
mov dword [ebp - 0x55c], ecx
mov eax, dword [ebp - 0x30]
cmp ecx, dword [ebp + eax*4 - 0x68]
jl 0x1002fb01
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x1002fb03
mov ecx, edi
jmp 0x1002fb05
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
cmp ecx, dword [ebp + eax*4 - 0x68]
jle 0x1002fb1c
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x68], 0
je 0x1002fb1c
mov ecx, edi
jmp 0x1002fb20
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x3c]
imul eax, ecx
test eax, eax
je 0x1002fb2d
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
xor edx, edx
push 0xfffffffffffffffd
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x68]
cmp ecx, eax
pop eax
sete dl
cmp eax, edx
mov eax, dword [ebp - 0x30]
sbb edx, edx
neg edx
sub edx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x30]
neg edx
sbb edx, edx
inc edx
mov ecx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x68]
add eax, edx
imul ecx, eax
mov eax, dword [ebp - 0x30]
imul eax, ecx
test eax, eax
je 0x1002fc23
or ecx, 0xffffffff
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x3c], eax
push 9
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x50], 0x6cbaba27
mov eax, dword [ebp - 0x68]
inc eax
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x55c], eax
mov ecx, dword [ebp - 0x38]
imul ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x55c]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setle cl
dec dword [ebp - 0x1c]
cmp eax, ecx
jl 0x1002fbda
mov ecx, edi
jmp 0x1002fbde
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
push 0
pop edx
sete dl
mov dword [ebp - 0x68], ecx
mov eax, dword [ebp - 0x38]
xor ecx, ecx
add edx, 0xf31a
cmp edx, eax
setl cl
imul eax, ecx, 3
cmp eax, 0x721cb4f5
jl 0x1002fc09
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
add eax, dword [ebp - 0x20]
push 0
pop eax
sets al
mov dword [ebp - 0x28], eax
jmp 0x1002fc38
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1002fc3a
push 0x1040
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x1002fa7d
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x55c]
cmp eax, ecx
mov eax, dword [ebp - 0x564]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1002fc88
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x144], 0x57a7c203
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002fc70
xor eax, eax
mov dword [ebp - 0x28], 0x387fb0b0
mov dword [ebp - 0x1c], 0xedf6b3e7
mov dword [ebp - 0x4c], 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x1002fcbd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe08], 0x98ef544b
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1002fca5
xor eax, eax
mov edx, 0x87642760
push 0xfffffffffffffffb
pop ecx
cmp dword [ebp - 0x28], eax
je 0x1002fd5d
mov dword [ebp - 0x38], 0xac54c975
mov dword [ebp - 0x2c], 0x23e52509
mov dword [ebp - 0x20], 0x4edf0ebf
mov dword [ebp - 0x50], 0x3847
mov dword [ebp - 0x3c], 0x80c6548a
cmp dword [ebp - 0x38], eax
je 0x1002fcfd
mov ecx, edi
cmp dword [ebp - 0x28], eax
jne 0x1002fcff
mov ecx, eax
mov eax, dword [ebp - 0x1c]
add eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x2c], eax
jne 0x1002fd1a
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x1002fd1c
mov eax, edi
jmp 0x1002fd1c
xor eax, eax
neg eax
cmp edx, eax
mov eax, dword [ebp - 0x1c]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setge cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x1002fd40
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1c], 0x768c
jg 0x1002fd56
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x1002fd58
mov eax, edi
mov dword [ebp - 0x3c], eax
jmp 0x1002fdca
mov dword [ebp - 0x24], 0x796a
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x1002fd87
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xbd4], 0x71db9567
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1002fd6f
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x1002fda9
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
cmp edi, eax
sbb eax, eax
inc eax
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xe04]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0xbd0]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1002fde3
push 0x1ccc
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
xor eax, eax
mov dword [ebp - 0x144], edi
push 0xfffffffffffffffc
pop edx
cmp dword [ebp - 0x144], eax
jl 0x1003026d
mov esi, 0xdc99220c
or ebx, 0xffffffff
mov dword [ebp - 0x28], 0x18885c6f
mov dword [ebp - 0x2c], 0x8de6
mov dword [ebp - 0xac8], esi
mov dword [ebp - 0xac4], esi
mov dword [ebp - 0xac0], esi
mov dword [ebp - 0xabc], esi
mov dword [ebp - 0x38], 0x233fd52
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x1002fe50
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x218], 0x3198a8f9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1002fe38
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x1002fe70
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe18], 0xa19820b2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1002fe58
xor eax, eax
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x28], eax
jl 0x1002febd
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], eax
jl 0x1002feb8
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1002fe9a
push eax
push 0xc8f
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1002feb0
push 0x1137
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x1002fe83
push 0xfffffffffffffffc
pop edx
dec dword [ebp - 0x28]
jns 0x1002fe78
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x218]
xor eax, eax
cmp dword [ebp - 0x214], eax
je 0x1002fed7
mov eax, dword [ebp - 0x2c]
mov ecx, edi
jmp 0x1002fed9
mov ecx, eax
mov eax, dword [ebp - 0x218]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x214]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xabc], eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x218]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x218]
mov eax, dword [ebp - 0x218]
add ecx, 6
cmp ecx, eax
mov eax, dword [ebp - 0x218]
sete dl
imul eax, edx
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0xe18], eax
xor eax, eax
mov dword [ebp - 0x14], 0xe1757117
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x28], 0xb7d4763c
mov dword [ebp - 0x4c], 0xa04a8f9
mov dword [ebp - 0x5c], 0x17e5c3e0
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1002ff7a
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x108], 0x656d4c01
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002ff62
xor eax, eax
mov dword [ebp - 0x14], 0xfffffff0
cmp dword [ebp - 0x14], 0xe
jle 0x100301d1
push 0xfffffffffffffffd
pop esi
jmp 0x1002ff92
xor eax, eax
mov dword [ebp - 0x30], 0xf9e923e6
mov dword [ebp - 0x24], 0x495231fb
mov dword [ebp - 0x20], 0x56c37fc0
mov dword [ebp - 0x54], 0xe5950169
mov dword [ebp - 0x38], 0x55be9843
mov dword [ebp - 0x34], 0x3205e60d
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], 0xa60d4e02
mov dword [ebp - 0x44], 0x2820a3d
mov dword [ebp - 0x58], 0x85ca7dbc
mov dword [ebp - 0x3c], 0xba6c15a2
mov dword [ebp - 0x20], eax
jmp 0x1002fff1
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x650], 0x6ab81d4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1002ffe0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x14], eax
je 0x10030007
mov edx, edi
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp edx, eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
sete cl
imul edx, ecx
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x14], eax
jl 0x1003002f
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
neg eax
imul eax, dword [ebp - 0x14]
sub eax, 6
cmp eax, 0x66b
jge 0x10030133
mov dword [ebp - 0x10], 0xfffffffa
xor edx, edx
mov dword [ebp - 0x878], esi
mov dword [ebp - 0x874], esi
mov dword [ebp - 0x870], esi
mov dword [ebp - 0x86c], esi
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x50], 0x23a55a41
mov dword [ebp - 0x2c], 0x6c4949f7
mov dword [ebp - 0x1c], 0xfe0f9cc3
mov eax, dword [ebp - 0x2c]
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x50]
dec dword [ebp - 0x50]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x878]
mov dword [ebp - 0x874], ecx
mov eax, dword [ebp - 0x108]
cmp ecx, eax
mov eax, dword [ebp - 0x4c]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], 0x7f693945
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x54]
inc eax
add ecx, eax
mov dword [ebp - 0x650], ecx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setne cl
sub ecx, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x108]
mov eax, dword [ebp - 0x4c]
sub ecx, eax
mov eax, dword [ebp - 0x10]
sub ecx, eax
mov dword [ebp - 0x108], ecx
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x1c], eax
xor eax, eax
jmp 0x10030146
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x108], eax
xor eax, eax
cmp dword [ebp - 0x108], eax
jne 0x100301bf
push 0xfffffffffffffffb
mov dword [ebp - 0x34], eax
pop ecx
jmp 0x100301ba
mov dword [ebp - 0x3c], 0xb0ce4c8d
mov dword [ebp - 0x28], 0xa
cmp dword [ebp - 0x28], 7
je 0x100301b7
cmp dword [ebp - 0x5c], eax
jne 0x100301b4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x108], eax
test eax, eax
je 0x10030176
mov eax, edi
mov ecx, dword [ebp - 0x40]
sub ecx, eax
neg ecx
push 0xfffffffffffffff7
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x781ee239
pop ecx
setne al
cmp ecx, eax
push 0
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x19a7386f
setle cl
xor eax, eax
cmp ecx, 0xc
setne al
mov dword [ebp - 0x3c], eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 7
pop eax
jne 0x10030162
push 0xfffffffffffffffb
pop ecx
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], ecx
jle 0x1003014e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xe
jg 0x1002ff90
mov esi, 0xdc99220c
mov eax, dword [ebp - 0x144]
cmp dword [ebp + eax*4 - 0xe28], 0
jne 0x10030268
xor eax, eax
mov dword [ebp - 0x10], 0x29be1d92
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1003020e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5f8], 0x1f9c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x100301f6
xor eax, eax
push 0xfffffffffffffffc
mov dword [ebp - 0x10], eax
pop edx
cmp dword [ebp - 0x10], eax
jg 0x1003023d
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x10030238
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x5f8], 0
jne 0x10030236
dec dword [ebp - 0x1c]
jns 0x10030224
xor eax, eax
inc dword [ebp - 0x10]
jmp 0x10030214
mov dword [ebp - 0x10], eax
jmp 0x1003024e
mov dword [ebp - 0x40], edi
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x10030242
mov eax, dword [ebp - 0x144]
dec dword [ebp - 0x144]
push 0
pop eax
jns 0x1002fe00
push 2
xor eax, eax
pop esi
mov dword [ebp - 0x30], 0x24f0
mov dword [ebp - 0x20], eax
jmp 0x1003028a
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xc4], 0x1f2c29a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10030279
mov eax, dword [ebp - 0x30]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, dword [sym.imp.ADVAPI32.dll_StartServiceW]
mov dword [ebp - 0xc4], eax
test eax, eax
je 0x100304d9
mov dword [ebp - 0x1c], 0xfffffffa
xor eax, eax
mov dword [ebp - 0x40], 0x7f7ffff9
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x100302d4
push eax
push eax
push 0x18b
push eax
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
xor eax, eax
xor ebx, ebx
inc ebx
mov dword [ebp - 0x30], ebx
cmp dword [ebp - 0x30], eax
jl 0x100303ee
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0xc4]
mov dword [ebp - 0x2c], 0x1f94
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x30]
setl dl
add ecx, edx
xor ebx, ebx
mov eax, dword [ebp + eax*4 - 0xc4]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setle bl
xor ecx, ecx
sub ebx, dword [ebp + eax*4 - 0xc4]
sub ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
test eax, eax
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
cmp ecx, ebx
setg dl
dec edx
cmp edx, dword [ebp + eax*4 - 0xc4]
jne 0x10030371
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov dword [ebp - 0xc4], eax
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x100303da
call esi
jmp 0x100303da
or eax, 0xffffffff
xor edx, edx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setg dl
sub edx, dword [ebp + eax*4 - 0xc4]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x30]
jns 0x100302e3
xor ebx, ebx
xor eax, eax
inc ebx
push 2
mov dword [ebp - 0x14], eax
pop ecx
cmp dword [ebp - 0x14], ecx
jge 0x10030411
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe3c], 0x7862fd41
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100303f9
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10030431
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x130], 0x57a7c203
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10030419
xor eax, eax
mov dword [ebp - 0x130], ebx
cmp dword [ebp - 0x130], eax
jl 0x1003045f
mov eax, dword [ebp - 0x130]
cmp dword [ebp + eax*4 - 0xe3c], 0
jne 0x1003045d
mov eax, dword [ebp - 0x130]
dec dword [ebp - 0x130]
jns 0x1003043f
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x1003047f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe50], 0x7862fd41
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10030467
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1003049f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x140], 0x57a7c203
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10030487
xor eax, eax
mov dword [ebp - 0x140], ebx
cmp dword [ebp - 0x140], eax
jl 0x100304cd
mov eax, dword [ebp - 0x140]
cmp dword [ebp + eax*4 - 0xe50], 0
jne 0x100304cb
mov eax, dword [ebp - 0x140]
dec dword [ebp - 0x140]
jns 0x100304ad
xor eax, eax
mov dword [ebp - 0x30], 0x24f0
mov dword [ebp - 0x20], eax
jmp 0x10030528
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x100303e9
xor ebx, ebx
inc ebx
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030502
push eax
push 0xa98
push eax
call edi
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x10030510
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 4
jne 0x100304eb
xor eax, eax
jmp 0x100303ee
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xbc], 0x1f2c29a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10030517
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x10030681
mov dword [ebp - 0x1c], 0xfffffffa
xor eax, eax
mov dword [ebp - 0x40], 0x7f7ffff9
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x10030566
push eax
push eax
push 0x18b
push eax
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
xor eax, eax
mov dword [ebp - 0x30], ebx
cmp dword [ebp - 0x30], eax
jl 0x100306af
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0xbc]
mov dword [ebp - 0x2c], 0x1f94
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x30]
setl dl
add ecx, edx
xor ebx, ebx
mov eax, dword [ebp + eax*4 - 0xbc]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setle bl
xor ecx, ecx
sub ebx, dword [ebp + eax*4 - 0xbc]
sub ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
test eax, eax
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
cmp ecx, ebx
setg dl
dec edx
cmp edx, dword [ebp + eax*4 - 0xbc]
jne 0x10030600
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov dword [ebp - 0xbc], eax
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1003066b
call esi
jmp 0x1003066b
or eax, 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xbc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + eax*4 - 0xbc]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setg bl
sub ebx, edx
neg ebx
sbb ebx, ebx
inc ebx
mov dword [ebp - 0x40], ebx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x30]
jns 0x10030572
xor ebx, ebx
xor eax, eax
inc ebx
jmp 0x100306af
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x100306ad
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x100306a3
push eax
push 0xa98
push eax
call edi
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x100306ad
inc dword [ebp - 0x30]
jmp 0x10030686
xor eax, eax
mov dword [ebp - 0x30], 0x24f0
mov dword [ebp - 0x20], eax
jmp 0x100306cc
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xcc], 0x1f2c29a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x100306bb
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x10030884
mov dword [ebp - 0x1c], 0xfffffffa
xor eax, eax
mov dword [ebp - 0x40], 0x7f7ffff9
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x1003070b
push eax
push eax
push 0x18b
push eax
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
xor eax, eax
mov dword [ebp - 0x30], ebx
cmp dword [ebp - 0x30], eax
jl 0x10030821
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0xcc]
mov dword [ebp - 0x2c], 0x1f94
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x30]
setl dl
add ecx, edx
xor ebx, ebx
mov eax, dword [ebp + eax*4 - 0xcc]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setle bl
xor ecx, ecx
sub ebx, dword [ebp + eax*4 - 0xcc]
sub ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
test eax, eax
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
cmp ecx, ebx
setg dl
dec edx
cmp edx, dword [ebp + eax*4 - 0xcc]
jne 0x100307a5
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov dword [ebp - 0xcc], eax
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x10030810
call esi
jmp 0x10030810
or eax, 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + eax*4 - 0xcc]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setg bl
sub ebx, edx
neg ebx
sbb ebx, ebx
inc ebx
mov dword [ebp - 0x40], ebx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x30]
jns 0x10030717
xor eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x24], 0xd5e48d32
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1003083d
push eax
push eax
call esi
xor eax, eax
mov ebx, dword [sym.imp.GDI32.dll_GetRgnBox]
push 0xfffffffffffffff6
pop edi
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], 0xfffffff9
jl 0x10030901
xor edi, edi
inc edi
mov dword [ebp - 0x20], 0xee7d214c
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1003087f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe64], 0x5683c8fc
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10030866
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x100308ec
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x1003081f
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x100308a6
push eax
push 0xa98
push eax
call edi
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x1003081f
inc dword [ebp - 0x30]
jmp 0x10030889
mov dword [ebp - 0x28], 0x7822e6e7
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x100308ca
push eax
push eax
call ebx
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], edi
jg 0x100308e9
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0xe64], 0
jne 0x100308e7
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jle 0x100308d2
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jle 0x100308b4
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffff9
jge 0x10030856
push 0xfffffffffffffff6
pop edi
mov dword [ebp - 0x24], 0xd5e48d32
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030917
push eax
push eax
call esi
xor eax, eax
xor esi, esi
mov dword [ebp - 0x24], edi
inc esi
cmp dword [ebp - 0x24], 0xfffffff9
jl 0x10030993
mov dword [ebp - 0x20], 0xee7d214c
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1003094c
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xb90], 0x5683c8fc
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10030933
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10030989
mov dword [ebp - 0x28], 0x7822e6e7
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030967
push eax
push eax
call ebx
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], esi
jg 0x10030986
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0xb90], 0
jne 0x10030984
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jle 0x1003096f
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10030951
inc dword [ebp - 0x24]
jmp 0x1003091d
mov dword [ebp - 0x44], 0x91df82
mov ebx, 0x67215912
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x38], 0xc3ec3d4e
mov dword [ebp - 0x2c], 0x3268
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x100309d8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x318], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100309c3
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x100309ee
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1028], 0x38330377
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100309dd
mov eax, dword [ebp - 0x318]
mov edi, 0xc0b333ee
mov eax, dword [ebp - 0x318]
mov eax, dword [ebp - 0x2c]
inc dword [ebp - 0x2c]
test eax, eax
jne 0x10030a48
imul eax, dword [ebp - 0x318], 0x3fc2
cmp edi, eax
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x318]
cmp ecx, 0xa083
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x1028], ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x314]
mov eax, dword [ebp - 0x318]
mov dword [ebp - 0x38], 0xa9c5a74d
xor eax, eax
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x38], 0x13c27f35
mov dword [ebp - 0x40], 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10030a90
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x3c8], 0xfffffffd
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10030a77
xor eax, eax
mov dword [ebp - 0x10], 2
cmp dword [ebp - 0x10], eax
jl 0x10030b7e
mov dword [ebp - 0x38], 0xdfc9
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x3c8], 0xc8f0d071
jbe 0x10030aca
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x3c8], 0
jne 0x10030aca
xor eax, eax
mov edi, eax
jmp 0x10030acc
mov edi, esi
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x3c8], 0xebfb2c41
je 0x10030aef
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x3c8], 0
jne 0x10030aef
xor eax, eax
mov edx, eax
jmp 0x10030af1
mov edx, esi
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov esi, dword [ebp + eax*4 - 0x3c8]
mov eax, dword [ebp - 0x10]
cmp edx, eax
setle cl
xor edx, edx
cmp ecx, esi
setle dl
xor eax, eax
sub edx, dword [ebp - 0x10]
cmp edi, edx
setl al
xor edx, edx
mov dword [ebp - 0x38], eax
xor esi, esi
mov eax, dword [ebp - 0x38]
inc esi
cmp eax, esi
mov eax, dword [ebp - 0x10]
setg dl
sub edx, 0xc0de
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x7dd
mov edx, dword [ebp + eax*4 - 0x3c8]
mov eax, dword [ebp - 0x10]
setge cl
sub edx, ecx
xor ecx, ecx
sub edx, dword [ebp + eax*4 - 0x3c8]
mov eax, dword [ebp - 0x3c4]
cmp edx, eax
setne cl
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x10]
jns 0x10030aa0
xor eax, eax
mov edi, 0xc0b333ee
mov dword [ebp - 0x30], 0x24f0
mov dword [ebp - 0x44], 0x91df82
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x38], 0xc3ec3d4e
mov dword [ebp - 0x2c], 0x3268
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10030bc9
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x348], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10030bb4
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10030bdf
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1034], 0x38330377
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10030bce
mov eax, dword [ebp - 0x348]
mov eax, dword [ebp - 0x348]
mov eax, dword [ebp - 0x2c]
inc dword [ebp - 0x2c]
test eax, eax
jne 0x10030c34
imul eax, dword [ebp - 0x348], 0x3fc2
cmp edi, eax
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x348]
cmp ecx, 0xa083
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x1034], ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x344]
mov eax, dword [ebp - 0x348]
mov dword [ebp - 0x38], 0xa9c5a74d
xor eax, eax
push 3
mov dword [ebp - 0x40], 0x4a025691
pop edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x10030c76
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x60c], 0x951ad386
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10030c5e
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030c90
push 0x19e4
push 0x7d4
push eax
call dword [sym.imp.USER32.dll_InflateRect]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10030cbc
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe78], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10030ca7
xor eax, eax
cmp dword [ebp - 0xe6c], eax
je 0x10030d9e
mov dword [ebp - 0x24], 0x4964a53a
or edx, 0xffffffff
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x24], 0xffffffe7
cmp dword [ebp - 0x24], 0xffffffe4
jle 0x10030d94
jmp 0x10030ced
xor eax, eax
mov dword [ebp - 0x1c], 0x10fe
mov dword [ebp - 0xa28], esi
mov dword [ebp - 0xa24], esi
mov dword [ebp - 0xa20], esi
mov dword [ebp - 0xa1c], esi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x20], eax
jmp 0x10030d21
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1230], edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10030d14
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0xe74]
mov eax, dword [ebp - 0x2c]
add eax, ecx
mov dword [ebp - 0xa20], eax
mov dword [ebp - 0x38], eax
imul eax, dword [ebp - 0x38], 0xc752
add eax, dword [ebp - 0x1c]
jne 0x10030d52
cmp dword [ebp - 0x2c], eax
je 0x10030d54
mov eax, esi
mov edx, dword [ebp - 0x1c]
sub edx, eax
mov eax, dword [ebp - 0x1c]
neg edx
push 0xffffffffffffffff
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
pop edx
setge cl
mov dword [ebp - 0x1224], ecx
xor ecx, ecx
mov eax, dword [ebp - 0xe70]
cmp eax, 0xe7ad
setle cl
mov dword [ebp - 0x40], ecx
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe4
jg 0x10030ceb
or edx, 0xffffffff
xor eax, eax
push 2
mov dword [ebp - 0x20], eax
pop ebx
jmp 0x10030dd6
mov dword [ebp - 0x20], 0x7d96711d
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1c
jne 0x10030d91
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030dc0
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
inc dword [ebp - 0x20]
jmp 0x10030da8
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xb4], 0x1f2c29a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10030dc5
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xb4], eax
test eax, eax
je 0x1003276a
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x10030e0e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x660], 0xb110c93b
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10030df6
xor eax, eax
mov dword [ebp - 0x660], eax
jmp 0x10030e2e
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030e28
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
dec dword [ebp - 0x660]
cmp dword [ebp - 0x660], 0xffffffe8
je 0x10030e16
mov dword [ebp - 0x4c], 0xfffffffa
or ecx, 0xffffffff
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x44], 5
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x44], 0xd05ba772
mov dword [ebp - 0x44], 0xb3b9da4d
mov dword [ebp - 0x44], ecx
push 0xfffffffffffffff7
mov dword [ebp - 0x44], 7
pop ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10030e8e
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1570], 0x2ff40fc0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10030e75
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030ea0
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
xor eax, eax
inc dword [ebp - 0x38]
mov dword [ebp - 0x40], 0x7f7ffff9
mov dword [ebp - 0x10], 0xfffffff6
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x40], 0xfffa
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10030ef0
mov dword [ebp - 0x38], 0xefa5f9c7
inc dword [ebp - 0x38]
jmp 0x10030fb1
mov dword [ebp - 0x38], 0x6e8f5917
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x10030f1c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1250], 0xfffd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10030f03
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10030f3c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x11f0], 0xd0127420
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10030f24
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x10030f52
push 0x13de
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
mov eax, 0x83bc1b0f
mov dword [ebp - 0x1250], eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10030f74
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], eax
je 0x10030f74
mov eax, esi
mov dword [ebp - 0x11ec], eax
xor edx, edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setl dl
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, 0x1a049fe3
mov dword [ebp - 0x384], eax
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], eax
mov dword [ebp - 0x378], eax
push 0xfffffffffffffffb
mov dword [ebp - 0x10], esi
pop eax
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10030ff9
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x908], 0x58efa97
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10030fe1
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jg 0x10031118
mov dword [ebp - 0x20], eax
jmp 0x1003101b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe90], 0xebf9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x1003100a
mov eax, dword [ebp - 0x378]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x384]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x384]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x384]
mov eax, dword [ebp - 0xe8c]
mov eax, dword [ebp - 0xe8c]
or eax, 0xffffffff
cmp dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x904]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x38]
cmp eax, 0xb56411d7
setne cl
sub ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xe8c]
neg ecx
sbb ecx, ecx
xor ebx, ebx
add ecx, 0xfffffffa
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setle bl
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x384]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x384]
cmp ecx, eax
mov eax, dword [ebp - 0x904]
setge dl
xor ecx, ecx
cmp ebx, eax
setge cl
add edx, ecx
je 0x100310e4
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x100310d5
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegUnLoadKeyW]
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x384], 0
jne 0x10031113
jmp 0x100310f2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x384], 0
xor eax, eax
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], al
je 0x10031104
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
inc dword [ebp - 0x10]
push 0
pop eax
cmp dword [ebp - 0x10], edi
jle 0x10031005
push 2
xor eax, eax
pop ebx
mov byte [ebp - 0x45], al
cmp byte [ebp - 0x45], 0
je 0x1003113c
push 0x11b9
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetLayout]
xor eax, eax
mov byte [ebp - 0x45], al
or ecx, 0xffffffff
push 0xfffffffffffffff7
pop edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x50], 9
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x2c], 0x7de97ee8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1003117c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x210], 0xe279
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10031164
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031198
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xd18], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031184
xor eax, eax
mov dword [ebp - 0x30], ebx
cmp dword [ebp - 0x30], eax
jl 0x10031245
mov dword [ebp - 0x40], 0x11b55e97
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x210]
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x210], 0
je 0x1003120c
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x210]
cmp eax, esi
mov eax, dword [ebp - 0x30]
setle dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x210]
cmp edx, eax
setge cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x208]
cmp dword [ebp - 0x1c], eax
jl 0x100311f5
mov eax, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x208]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x210]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x210]
mov eax, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x40], ecx
dec dword [ebp - 0x30]
jns 0x100311a4
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x30], ebx
cmp dword [ebp - 0x30], eax
jl 0x10031308
mov dword [ebp - 0x40], 0x2570
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10031278
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1210], 0x748aee51
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10031260
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10031298
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd24], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031280
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x100312b4
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1524], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x100312a0
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100312ca
cmp dword [ebp - 0x10], ebx
jl 0x100312b9
cmp byte [ebp - 0x45], 0
je 0x10031474
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10031332
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1f0], 0x571177e8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1003131a
xor eax, eax
mov dword [ebp - 0x1ec], 0xfffffff9
jmp 0x10031459
mov dword [ebp - 0x10], 0xc0d37ad4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x10031364
cmp dword [ebp - 0x1ec], 0x14
jl 0x10031341
push eax
push eax
push 0x18b
push eax
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
mov dword [ebp - 0x10], 0xfffffff9
xor eax, eax
mov dword [ebp - 0x34], 0x5ebd
mov dword [ebp - 0x20], 0x9e62b560
mov dword [ebp - 0x40], 0xfffffffe
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x100314b2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2e8], 0xe672
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1003149a
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x100314c8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2bc], 0xadf1adb2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100314b7
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
or edx, 0xffffffff
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2e8]
cmp eax, edx
mov eax, dword [ebp - 0x2e8]
setle cl
sub ecx, eax
jne 0x10031508
mov dword [ebp - 0x10], 0xfa860b4f
mov edi, 0xc17854c3
mov dword [ebp - 0x28], 0xb6bd
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x8e0], edi
mov dword [ebp - 0x8dc], edi
mov dword [ebp - 0x8d8], edi
mov dword [ebp - 0x8d4], edi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x50], 0x9bb816e1
push 0xfffffffffffffffb
pop eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], 0x85c9e53
jne 0x100327c9
mov edx, esi
cmp dword [ebp - 0x10], eax
jne 0x100327cb
mov edx, eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
add ecx, dword [ebp - 0x10]
je 0x100327e3
mov edx, esi
cmp dword [ebp - 0x10], eax
jne 0x100327e5
mov edx, eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0xb2f1
setge al
mov dword [ebp - 0x10], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10032852
mov dword [ebp - 0x2c], 0x4a93
or eax, 0xffffffff
mov dword [ebp - 0x40], eax
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
sub dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, 0xc0fa
setl cl
add ecx, 0xfffb
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10], eax
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x28], eax
jmp 0x10032957
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10032844
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
push 0xcce
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetClassNameW]
xor eax, eax
jmp 0x1003284a
mov dword [ebp - 0x40], 0xcadfd6f6
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x1003289a
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xd54], 0x39ae
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10032882
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x1003294a
mov dword [ebp - 0x38], 0xfffd
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x10], 3
cmp dword [ebp - 0x10], eax
jl 0x10032947
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp + eax*4 - 0x8e0]
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x8e0], ecx
xor eax, eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xd50], eax
mov dword [ebp - 0x38], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x100328f3
mov edx, eax
cmp dword [ebp - 0x50], eax
je 0x100328f5
mov edx, esi
cmp dword [ebp - 0x34], esi
jbe 0x10032901
mov ecx, esi
cmp dword [ebp - 0x2c], eax
jne 0x10032903
mov ecx, eax
mov eax, dword [ebp - 0x2c]
sub ecx, eax
je 0x10032915
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x10032917
mov ecx, esi
jmp 0x10032919
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x40]
add eax, ecx
mov ecx, dword [ebp - 0x10]
neg eax
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp edx, ecx
setl al
add eax, ebx
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x3c], eax
dec dword [ebp - 0x10]
jns 0x100328c0
xor eax, eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jle 0x100328a2
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 3
jle 0x10032873
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x10032d6e
mov ebx, 0x8caf
mov dword [ebp - 0x34], 0xac204e2
mov dword [ebp - 0x34], eax
jmp 0x100329af
mov dword [ebp - 0x20], 0x95e17ca0
mov dword [ebp - 0x40], 0x2098
mov dword [ebp - 0x3c], 0x6c3a0b8e
mov dword [ebp - 0x20], 0x14
jmp 0x100329a6
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x17
jge 0x1003299d
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffe5
jle 0x1003297f
mov eax, dword [ebp - 0x34]
imul eax, dword [ebp - 0x34]
push 0xfffffffffffffff7
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x44], 0x19a80bfb
mov dword [ebp - 0x20], 0x6f97812a
pop eax
mov dword [ebp - 0x50], eax
xor eax, eax
mov dword [ebp - 0x40], 0xb96ce028
mov dword [ebp - 0x38], 0xff
mov dword [ebp - 0x1c], 0x7d30fa2e
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x10032a12
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1268], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x100329fd
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10032a31
or ecx, 0xffffffff
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x29c], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10032a1d
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x10032a3b
dec dword [ebp - 0x38]
jne 0x10032a3d
mov esi, eax
mov ecx, dword [ebp - 0x40]
xor edx, edx
imul ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
setne dl
neg ecx
add edx, 0xb304ec4
imul eax, edx, 7
sub ecx, eax
xor eax, eax
cmp esi, ecx
sete al
cmp eax, 0x73ede5c4
jge 0x10032a7a
xor eax, eax
cmp dword [ebp - 0x50], eax
je 0x10032a7c
xor eax, eax
xor esi, esi
inc esi
mov dword [ebp - 0x125c], eax
mov eax, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffffc
add eax, ecx
jne 0x10032aae
push 3
xor eax, eax
pop edi
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x10032d96
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1208], 0xd925b0e4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10032d7e
xor eax, eax
mov dword [ebp - 0x1204], eax
mov dword [ebp - 0x40], esi
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032db3
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
xor eax, eax
mov dword [ebp - 0x24], 0xd5e48d32
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032dcd
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor eax, eax
mov dword [ebp - 0x24], 0xfffffff6
jmp 0x10032e46
mov dword [ebp - 0x20], 0xee7d214c
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10032dfd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xbb0], 0x5683c8fc
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10032de5
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10032e3e
mov dword [ebp - 0x28], 0x7822e6e7
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032e1c
push eax
push eax
call dword [sym.imp.GDI32.dll_GetRgnBox]
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], esi
jg 0x10032e3b
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0xbb0], 0
jne 0x10032e39
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10032e02
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffff9
jge 0x10032dd6
mov dword [ebp - 0x44], 0x91df82
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x38], 0xc3ec3d4e
mov dword [ebp - 0x2c], 0x3268
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032e92
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x328], 0x67215912
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032e7a
mov dword [ebp - 0x14], eax
jmp 0x10032ea8