Function at 0x10017c43
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x1005fb53
call fcn.1005f318
sub esp, 0x1b8
push ebx
push esi
mov dword [ebp - 0x2c], 0x2b18
xor ebx, ebx
cmp dword [ebp - 0x2c], 0x2c02
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x6c], ecx
jle 0x10017cdc
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
mov dword [ebp - 0x14], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x3c], edi
lea eax, [edi + esi]
mov edi, 0x37da
mov dword [ebp - 0x24], eax
mov esi, eax
mov ecx, esi
mov eax, ebx
shl eax, cl
mov ecx, 0x106081f8
cdq
push edx
push eax
call fcn.1000f7b3
dec esi
dec edi
jne 0x10017c96
mov edi, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, 0x72b9
jl 0x10017c89
inc esi
mov dword [ebp - 0x1c], esi
push 0
pop ebx
cmp esi, 0x3359
jl 0x10017c81
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x4efb
jl 0x10017c7c
xor esi, esi
lea ecx, [ebp - 0xf0]
inc esi
push esi
call fcn.1000f8c8
mov dword [ebp - 4], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x38], 0x64a8
cmp dword [ebp - 0x38], 0x66ff
jle 0x10017d9a
mov edi, ebx
mov dword [ebp - 0x18], ebx
mov eax, ebx
mov dword [ebp - 0x20], ebx
mov edx, edi
mov dword [ebp - 0x24], ebx
mov ecx, eax
mov edi, ebx
sar edx, cl
mov dword [ebp - 0x1c], edx
mov ecx, ebx
mov dword [ebp - 0x14], 0x37ce
mov dword [ebp - 0x3c], ecx
mov eax, edx
shl eax, cl
lea ecx, [ebp - 0x1ac]
cdq
push edx
push eax
call fcn.1000cfb0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10017d4c
mov eax, dword [eax]
push eax
call fcn.1004a046
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x1ac]
call fcn.1000fc54
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x1c]
add ecx, edi
dec dword [ebp - 0x14]
mov dword [ebp - 0x3c], ecx
jne 0x10017d30
inc edi
cmp edi, 0x2e31
jl 0x10017d24
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x77b2
jl 0x10017d16
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x63da
jl 0x10017d11
push dword [ebp - 0x58]
movdqa xmm0, xmmword [0x1000bb50]
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x164]
mov dword [ebp - 0xd0], ebx
push eax
push ebx
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xcc], ebx
movdqu xmmword [ebp - 0x164], xmm0
mov dword [ebp - 0xc8], ebx
call fcn.1001177c
cmp dword [ebp - 0x38], 0x61c8
jge 0x10017ded
push 0x10007ec0
call fcn.1004a046
pop ecx
push 2
pop edi
push edi
lea ecx, [ebp - 0x144]
mov dword [ebp - 4], esi
call fcn.1000f8c8
mov dword [ebp - 0x18], ebx
jmp 0x10017e17
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0x53b26bdd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10017e04
mov dword [ebp - 0x18], ebx
jmp 0x10017e32
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x90], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10017e21
mov dword [ebp - 0x18], ebx
jmp 0x10017e4f
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x144]
mov dword [eax + ecx*4], 0xf944dcd6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10017e3c
mov eax, dword [ebp - 0xf0]
lea ecx, [ebp - 0x144]
mov dword [eax], ebx
call fcn.1000f94a
lea ecx, [ebp - 0xd0]
call fcn.1000f94a
lea ecx, [ebp - 0xf0]
call fcn.1000f94a
mov dword [ebp - 4], 4
cmp dword [ebp - 0x2c], 0x2a06
jge 0x10017e9c
mov edx, 0x10007ea8
mov ecx, 0x106081f8
call fcn.1001125d
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x14], 0x1a35ca42
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x1c], esi
push edi
call fcn.1000f8c8
mov dword [ebp - 0x18], ebx
jmp 0x10017ef4
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x44], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10017eea
mov dword [ebp - 0x18], ebx
jmp 0x10017f11
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x120]
mov dword [eax + ecx*4], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10017efe
cmp dword [ebp - 0x40], ebx
jne 0x10017f34
mov dword [ebp - 0x14], 0x2daa
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov eax, dword [ebp - 0x40]
cmp eax, esi
setle cl
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x14], ebx
je 0x10017f7c
mov edx, dword [ebp - 0x120]
cmp dword [edx + 4], ebx
je 0x10017f59
cmp dword [ebp - 0x40], ebx
jne 0x10017f5c
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp dword [edx + 4], 0x8d36
setg cl
xor eax, eax
cmp ecx, 0x1c17854c
sete al
add eax, dword [ebp - 0x40]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
xor edx, edx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setg dl
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], edx
xor edx, edx
cmp eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x120]
call fcn.1000f94a
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x1c], 0x8efa
mov dword [ebp - 0x18], ebx
jmp 0x1001800e
mov dword [ebp - 0x14], 4
mov dword [ebp - 0x14], ebx
jmp 0x10017fe5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xd8], 0x124f84b8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10017fd4
mov dword [ebp - 0x14], ebx
jmp 0x10018006
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xd8], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xd8]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x10017fef
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffe9
jle 0x10017fc8
mov eax, dword [ebp - 0x18]
mov edx, 0xaf275079
sub edx, eax
xor ecx, ecx
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp edx, eax
setle cl
cmp ecx, dword [ebp - 0x18]
jle 0x10018033
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x18]
jl 0x10018042
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x64]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
push esi
call fcn.1000f8c8
mov dword [ebp - 4], 6
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 0xca4f833f
mov dword [ebp - 0x2c], 0x556123d4
mov dword [ebp - 0xac], esi
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa0], esi
mov dword [ebp - 0x68], ebx
push 3
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x100180ac
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x78], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100180a2
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], ebx
jl 0x1001828b
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x18], 0x708d
cmp dword [ebp - 0x18], 0x72c6
jle 0x10018141
mov dword [ebp - 0x38], ebx
mov ecx, ebx
mov dword [ebp - 0x2c], 0x37b0
mov dword [ebp - 0x14], ecx
mov edi, ebx
mov eax, ecx
mov ecx, edi
sar eax, cl
lea ecx, [ebp - 0x17c]
cdq
push edx
push eax
call fcn.1000cfb0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018106
mov eax, dword [eax]
push eax
call fcn.1004a046
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x17c]
call fcn.1000fc54
mov ecx, dword [ebp - 0x14]
inc edi
cmp edi, 0x23e8
jl 0x100180e8
mov eax, dword [ebp - 0x38]
add ecx, eax
dec dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
jne 0x100180e6
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x3e40
jl 0x100180da
push 2
pop edi
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], ebx
jl 0x10018268
mov dword [ebp - 0x2c], 0x31aa08e
mov dword [ebp - 0x54], 0x82ec
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x78], ebx
je 0x10018250
mov dword [ebp - 0x2c], 0xffffffff
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x34], 0xfffffffb
push edi
call fcn.1000f8c8
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x14], ebx
jmp 0x1001819d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x114]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1001818a
mov eax, dword [ebp - 0xa8]
dec dword [ebp - 0xa8]
test eax, eax
je 0x100181c2
mov eax, dword [ebp - 0x68]
neg eax
mov dword [ebp - 0x38], esi
sbb eax, eax
inc eax
mov dword [ebp - 0x2c], eax
jne 0x100181c5
mov dword [ebp - 0x38], ebx
mov eax, dword [ebp - 0x54]
xor ecx, ecx
cmp eax, esi
setle cl
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0xfffffffc
setle cl
xor eax, eax
cmp ecx, 4
setge al
xor edx, edx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setge dl
xor ecx, ecx
cmp dword [ebp - 0x38], edx
setne cl
add ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
cmp ecx, dword [ebp + eax*4 - 0x78]
jge 0x10018210
mov ecx, ebx
cmp dword [ebp - 0x3c], ebx
je 0x10018212
mov ecx, esi
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x78], ecx
jl 0x10018226
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x78], ebx
mov eax, ebx
je 0x10018228
mov eax, esi
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x78]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x114]
mov dword [eax], ecx
lea ecx, [ebp - 0x114]
call fcn.1000f94a
jmp 0x1001825f
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x1001825f
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
dec dword [ebp - 0x1c]
jns 0x1001814d
cmp dword [ebp - 0x18], 0x6fdc
jge 0x1001827c
push 0x10007f20
call fcn.1004a046
pop ecx
mov dword [ebp - 4], 6
dec dword [ebp - 0x20]
jmp 0x100180b4
push 3
pop ecx
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], ebx
jl 0x1001829e
inc dword [ebp - 0x24]
dec dword [ebp - 0x20]
jns 0x10018296
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x14], 0xa88e00f6
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0xc4]
push esi
call fcn.1000f8c8
mov dword [ebp - 0x18], 0xfff6
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x14], ebx
jmp 0x100182e8
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc4]
mov dword [eax + ecx*4], 0x96c7979b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100182d5
mov eax, dword [ebp - 0x20]
xor ecx, ecx
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0xc4]
cmp dword [eax], esi
setg cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
dec dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x1c]
cmp dword [eax], esi
setle dl
mov dword [eax], edx
add ecx, edx
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setne dl
add edx, dword [ebp - 0x24]
je 0x1001833f
mov eax, esi
cmp dword [ebp - 0x24], ebx
jne 0x10018341
mov eax, ebx
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0xc4]
call fcn.1000f94a
push dword [ebp - 0x90]
movdqa xmm0, xmmword [0x1000bb50]
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x154]
mov dword [ebp - 0x9c], ebx
push eax
push ebx
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x98], ebx
movdqu xmmword [ebp - 0x154], xmm0
mov dword [ebp - 0x94], ebx
call fcn.1001177c
mov byte [ebp - 4], 9
or eax, 0xffffffff
mov dword [ebp - 0x14], 0xcea5d6c0
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xbefa1e1c
mov dword [ebp - 0x24], 0x93fe6966
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 3
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x2c], 0x123020f6
mov dword [ebp - 0x14], 0x1d
jmp 0x100184a7
lea ecx, [ebp - 0xb8]
call fcn.1000f8c8
mov dword [ebp - 0x130], ebx
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x128], ebx
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x18], ebx
jmp 0x1001841d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x8c], 0xfffffffe
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1001840c
mov dword [ebp - 0x18], ebx
jmp 0x1001843b
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xb8]
mov dword [eax + ecx*4], 0x120d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018428
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setge dl
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jbe 0x10018467
mov eax, dword [ebp - 0x88]
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0xb8]
imul ecx, dword [eax]
mov dword [ebp - 0x128], ecx
lea ecx, [ebp - 0xb8]
call fcn.1000f94a
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x18
push edi
jne 0x100183e4
inc dword [ebp - 0x2c]
lea ecx, [ebp - 0xe4]
call fcn.1000f8c8
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x18], ebx
jmp 0x100184d9
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x64]
mov dword [eax + ecx*4], 0x53b26bdd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100184c9
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x18], 0xfffffff7
mov dword [ebp - 0x14], 0xab72b21a
mov dword [ebp - 0x1c], 0x2ca12535
mov dword [ebp - 0x20], ebx
jmp 0x1001850d
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x50], 6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x100184ff
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], ebx
jl 0x10018527
mov dword [ebp - 0x18], 0xa3399244
dec dword [ebp - 0x20]
jns 0x1001851b
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jne 0x1001856c
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov ecx, esi
sub ecx, eax
mov eax, dword [ebp - 0x4c]
cmp ecx, eax
setge dl
xor eax, eax
cmp edx, 0xe155
setle al
xor ecx, ecx
cmp eax, esi
mov eax, dword [ebp - 0x14]
setl cl
xor edx, edx
cmp ecx, 0xfc7127b1
setne dl
add eax, edx
mov edx, ebx
je 0x1001856e
mov edx, esi
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setl dl
cmp edx, dword [ebp - 0x14]
jl 0x10018590
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x1c], 0xa83cd0cd
jb 0x100185a5
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x20], ebx
je 0x100185b3
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x50]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
sub edx, eax
mov eax, dword [ebp - 0x50]
cmp edx, eax
mov eax, dword [ebp - 0x1c]
sete cl
xor edx, edx
cmp ecx, eax
setle dl
imul edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
neg edx
add eax, edx
cmp eax, dword [ebp - 0x4c]
jle 0x1001870d
mov dword [ebp - 0x1c], ebx
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], esi
push 3
call fcn.1000f8c8
push 3
mov dword [ebp - 0x20], ebx
pop edx
jmp 0x10018628
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xfc], 0x315bb970
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x10018617
mov dword [ebp - 0x20], ebx
jmp 0x10018645
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x108]
mov dword [eax + ecx*4], 7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x10018632
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10018660
push ebx
push 0x123d
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
je 0x100186ae
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, 9
mov edx, dword [ebp - 0x18]
setg al
xor ecx, ecx
cmp eax, 0x1663317a
mov eax, dword [ebp - 0x14]
setle cl
add edx, ecx
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x18]
cmp eax, esi
mov eax, dword [ebp - 0xf8]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
cmp ecx, dword [ebp - 0x18]
je 0x100186d4
mov ecx, esi
cmp dword [ebp - 0x1c], ebx
jne 0x100186d6
mov ecx, ebx
mov eax, dword [ebp - 0xfc]
imul eax, ecx
cmp eax, 0xfffffff7
sbb eax, eax
inc eax
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x108]
mov dword [eax + 8], ecx
lea ecx, [ebp - 0x108]
call fcn.1000f94a
jmp 0x1001883d
mov dword [ebp - 0x14], ebx
jmp 0x10018720
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x80], 0x925c1f9a
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10018712
mov dword [ebp - 0x38], 0x1236
cmp dword [ebp - 0x38], 0x13ae
jle 0x100187b1
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov eax, ebx
mov dword [ebp - 0x24], ebx
mov edx, edi
mov dword [ebp - 0x34], ebx
mov ecx, eax
mov edi, ebx
sar edx, cl
mov dword [ebp - 0x54], edx
mov eax, edi
lea ecx, [ebp - 0x194]
or eax, edx
cdq
push edx
push eax
call fcn.1000cfb0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018769
mov eax, dword [eax]
push eax
call fcn.1004a046
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x194]
call fcn.1000fc54
mov edx, dword [ebp - 0x54]
inc edi
cmp edi, 0x3723
jl 0x1001874d
mov eax, dword [ebp - 0x24]
mov edi, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x48f0
jl 0x1001873f
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x39a1
jl 0x1001873a
push ebx
push ebx
call dword [sym.imp.USER32.dll_LoadMenuW]
push 2
pop edi
mov dword [ebp - 0x1c], 0xffffffe8
jmp 0x1001881c
mov dword [ebp - 0x14], ebx
mov ecx, 0xce2aafcf
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x2c], 0x16c6279e
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
sub ecx, eax
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
cmp eax, 0xfffffff9
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setle cl
imul edx, ecx, 0xfffffff9
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor ecx, ecx
add edx, 2
cmp eax, edx
setge cl
imul ecx, dword [ebp - 0x14]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x80], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1c
jg 0x100187ba
cmp dword [ebp - 0x38], 0x11ab
jge 0x10018836
push 0x10007f60
call fcn.1004a046
pop ecx
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x18], ebx
jmp 0x10018850
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x7c], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10018842
mov dword [ebp - 0x18], ebx
jmp 0x1001886d
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe4]
mov dword [eax + ecx*4], 0xf944dcd6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001885a
mov eax, dword [ebp - 0x64]
mov dword [eax], ebx
cmp dword [eax], 0xffffffee
jge 0x10018c11
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 0x38], 0x71ee
cmp dword [ebp - 0x38], 0x751c
jle 0x1001890e
push ebx
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov esi, ebx
mov dword [ebp - 0x2c], ebx
mov ecx, ebx
mov dword [ebp - 0x24], ebx
mov eax, esi
mov dword [ebp - 0x14], ebx
cdq
idiv ecx
mov eax, ebx
mov ecx, edx
mov dword [ebp - 0x34], ecx
mov edi, ecx
mov esi, ebx
mov ecx, eax
shl edi, cl
mov eax, esi
mov ecx, 0x106081f8
and eax, edi
cdq
push edx
push eax
call fcn.1000f7b3
inc esi
cmp esi, 0x4a87
jl 0x100188bf
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x7250
jl 0x100188b7
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x2c]
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x5827
jl 0x100188a8
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 0x77d8
jl 0x100188a3
xor esi, esi
push 2
inc esi
pop edi
mov dword [ebp - 0x2c], 0x88e1
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x38], 0x6fbc
jge 0x10018955
mov edx, 0x10007fc8
mov ecx, 0x106081f8
call fcn.1001125d
jmp 0x10018955
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x34], 0x847d
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10018973
push ebx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10018988
push ebx
push 0x1600
call dword [sym.imp.USER32.dll_TranslateMDISysAccel]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x64]
cmp dword [eax], 0x60389a9b
setg cl
mov dword [ebp - 0x7c], ecx
lea eax, [ecx + 0x62a49ee1]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x64]
add ecx, dword [eax]
mov eax, dword [ebp - 0x9c]
neg ecx
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x24]
cmp eax, edx
setl cl
xor eax, eax
cmp ecx, 0x65816309
setl al
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0xe4]
setne cl
sub ecx, 0xfe4d
add ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax + 4], ecx
mov byte [ebp - 0x2d], bl
mov dword [ebp - 0x2c], 0x6f5
cmp dword [ebp - 0x2c], 0x901
jle 0x10018a64
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x24], ebx
or eax, edi
lea ecx, [ebp - 0x1c4]
cdq
push edx
push eax
call fcn.1000cfb0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018a2b
mov eax, dword [eax]
push eax
call fcn.1004a046
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x1c4]
call fcn.1000fc54
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x5143
jl 0x10018a11
inc edi
cmp edi, 0x6e27
jl 0x10018a0c
push 0x1c89
call dword [sym.imp.USER32.dll_GetParent]
push 2
pop edi
cmp dword [ebp - 0x2c], 0x372
jge 0x10018a78
push 0x10008038
call fcn.1004a046
pop ecx
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x20], 0xfffffffa
mov dword [ebp - 0x2c], 5
mov dword [ebp - 0x14], 0x658d83f7
mov dword [ebp - 0x14], ebx
jmp 0x10018aaa
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x138], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10018a99
mov dword [ebp - 0x20], ebx
jmp 0x10018b9b
mov dword [ebp - 0x1c], 0x5b7d
mov dword [ebp - 0x24], 0x59cdc345
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x14], 0x3acb6d6
mov dword [ebp - 0x18], 0x6a0122d8
mov dword [ebp - 0x3c], 0x4ea1
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x20], 0x42c7
inc eax
je 0x10018b02
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x1c]
cmp eax, esi
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setge cl
xor edx, edx
sub eax, ecx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setne cl
cmp dword [ebp - 0x24], ecx
jl 0x10018b4a
mov ecx, esi
cmp dword [ebp - 0x18], ebx
jne 0x10018b4c
mov ecx, ebx
mov eax, dword [ebp - 0x2c]
imul eax, ecx
test eax, eax
jne 0x10018b59
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x3c], ebx
jne 0x10018b61
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], ebx
jmp 0x10018b93
mov dword [ebp - 0x34], 0xfffffffd
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x138], ebx
jne 0x10018b98
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0xfffffff6
setne cl
mov dword [ebp - 0x34], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x10018b6c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x1a
je 0x10018ab7
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10018bbd
push ebx
push ebx
push 0x35
push 0x188d
call dword [sym.imp.USER32.dll_GetDlgItemInt]
cmp byte [ebp - 0x2d], 0
je 0x10018c07
mov dword [ebp - 0x14], 0xfffffffb
mov dword [ebp - 0x14], 0xfffffff6
jmp 0x10018bf5
mov byte [ebp - 0x2d], bl
cmp byte [ebp - 0x2d], 0
je 0x10018be3
push ebx
call dword [sym.imp.GDI32.dll_GetObjectType]
mov byte [ebp - 0x2d], bl
cmp byte [ebp - 0x2d], 0
je 0x10018bf2
call dword [sym.imp.GDI32.dll_GdiFlush]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xe
jne 0x10018bd3
push ebx
push 0xce7
call dword [sym.imp.GDI32.dll_RectVisible]
mov eax, dword [ebp - 0x64]
dec dword [eax]
jmp 0x10018877
lea ecx, [ebp - 0xe4]
call fcn.1000f94a
lea ecx, [ebp - 0x9c]
call fcn.1000f94a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.1000f94a
mov eax, dword [ebp - 0x58]
mov ecx, 0x3e8
cdq
idiv ecx
mov ecx, dword [ebp - 0x6c]
mov esi, edx
mov edi, eax
call fcn.10017bd1
mov ecx, dword [ebp - 0xc]
add eax, esi
add eax, edi
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret