Function at 0x10080688
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x10091547
call fcn.1008fe4c
sub esp, 0xb8
push ebx
push esi
push edi
mov dword [ebp - 0x50], ecx
lea ecx, [ebp - 0x4c]
push 4
mov dword [ebp - 0x40], edx
call fcn.100254f9
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x24], 0xfffffffc
mov dword [ebp - 0x58], 0x2c593c86
mov dword [ebp - 0x3c], 0xfffffffb
mov dword [ebp - 0x14], 0x775c
cmp dword [ebp - 0x14], 0x7834
jle 0x1008074e
mov eax, ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
add eax, ebx
mov dword [ebp - 0x1c], 0x1aaa
mov dword [ebp - 0x28], eax
mov ebx, eax
mov eax, ebx
cdq
mov edi, eax
mov esi, edx
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push esi
push edi
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x2c], eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10080712
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push 0
push 1
lea ecx, [ebp - 0x90]
call fcn.10025af4
dec ebx
dec dword [ebp - 0x1c]
jne 0x100806eb
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 0x24], ebx
cmp ebx, 0x3e72
jl 0x100806dd
inc eax
mov dword [ebp - 0x20], eax
push 0
pop ebx
cmp eax, 0x54c5
jl 0x100806da
mov dword [ebp - 0x2c], 0xb4b5a9ce
cmp dword [ebp - 0x14], 0x757e
jge 0x10080769
push 0x10010c80
call fcn.1008287d
pop ecx
mov dword [ebp - 0x2c], 0x578cca6
mov dword [ebp - 0x2c], 0x2305aba9
mov dword [ebp - 0x14], ebx
jmp 0x1008078c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x4c]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1008077c
push 2
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x100807a8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x78], 0x5cd1d2a6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1008079a
mov dword [ebp - 0x14], ebx
jmp 0x100807bc
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x60], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100807b2
push 3
mov dword [ebp - 0x14], ebx
pop esi
jmp 0x100807d7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x70], 0x12f6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100807c9
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x24], ebx
jl 0x10080a3d
mov dword [ebp - 0x14], 0xa772304b
mov dword [ebp - 0x30], 0xccedb775
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x14], ebx
jmp 0x10080812
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1008080f
push ebx
push ebx
call dword [sym.imp.USER32.dll_CopyRect]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x100807fe
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], ebx
jl 0x10080a31
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x20], 0xffff
mov dword [ebp - 0x1c], ebx
jmp 0x10080844
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x54], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x10080836
cmp dword [ebp - 0x14], ebx
je 0x1008085b
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + ecx*4]
xor ecx, ecx
mov dword [edx + esi*4], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
cmp eax, 0xe6ee
mov eax, dword [ebp - 0x3c]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x54]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x30]
setl bl
xor ecx, ecx
cmp ebx, eax
setl cl
neg ecx
je 0x10080948
mov dword [ebp - 0x1c], 0x6d45
cmp dword [ebp - 0x1c], 0x6e91
jle 0x10080920
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov eax, ebx
sar eax, cl
cdq
mov edi, eax
mov esi, edx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push esi
push edi
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x28], eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100808f2
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push 0
push 1
lea ecx, [ebp - 0xa8]
call fcn.10025af4
mov ecx, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x5bcc
jl 0x100808c9
inc ebx
cmp ebx, 0x623e
jl 0x100808c4
xor ebx, ebx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10080931
push ebx
call dword [sym.imp.GDI32.dll_GetStockObject]
cmp dword [ebp - 0x1c], 0x6a8f
jge 0x10080a1a
push 0x10010cd0
jmp 0x10080a14
xor ebx, ebx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10080a1a
mov dword [ebp - 0x28], 0x3bef
cmp dword [ebp - 0x28], 0x3c55
jle 0x100809fe
mov edi, ebx
mov dword [ebp - 0x1c], ebx
mov esi, ebx
mov dword [ebp - 0x20], esi
xor ecx, ecx
mov dword [ebp - 0x38], ecx
mov eax, ebx
cdq
idiv ecx
mov eax, esi
mov ecx, edx
shl eax, cl
or eax, edi
cdq
mov edi, eax
mov esi, edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push esi
push edi
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x64], eax
call fcn.1001147b
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100809ab
mov eax, dword [eax]
push eax
call fcn.1008287d
pop ecx
push 0
push 1
lea ecx, [ebp - 0xc0]
call fcn.10025af4
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x20]
inc ecx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x38], ecx
cmp ecx, 0x655f
jl 0x10080979
inc ebx
cmp ebx, 0xeac
jl 0x10080974
inc esi
mov dword [ebp - 0x20], esi
push 0
pop ebx
cmp esi, 0x480
jl 0x10080974
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x2e17
jl 0x1008096f
push ebx
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
cmp dword [ebp - 0x28], 0x3af7
jge 0x10080a1a
push 0x10010d38
call fcn.1008287d
pop ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
cmp dword [eax + ecx*4], ebx
jne 0x10080a2e
dec dword [ebp - 0x14]
jns 0x10080823
push 3
pop esi
dec dword [ebp - 0x24]
push 2
pop ecx
jns 0x100807e8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.1002557b
push dword [ebp - 0x40]
push dword [ebp - 0x50]
call fcn.1007bc90
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret