Function at 0x10018e3b
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x1005fb73
call fcn.1005f318
sub esp, 0xd4
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
push 2
mov dword [ebp - 0x54], edx
inc ebx
pop edi
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x14], 0x1a35ca42
mov dword [ebp - 0x50], 4
mov dword [ebp - 0x20], ebx
push edi
call fcn.1000f8c8
xor esi, esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x1c], 0x1bbb
cmp dword [ebp - 0x1c], 0x1e3d
jle 0x10018f28
mov dword [ebp - 0x18], esi
mov edi, esi
mov dword [ebp - 0x28], esi
mov ecx, esi
mov dword [ebp - 0x38], esi
mov eax, edi
mov dword [ebp - 0x4c], 0x4eb7
cdq
idiv ecx
mov edi, dword [ebp - 0x18]
mov ecx, esi
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x44], ecx
mov eax, edi
sar eax, cl
lea ecx, [ebp - 0xe0]
cdq
push edx
push eax
call fcn.1000cfb0
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018ed3
mov eax, dword [eax]
push eax
call fcn.1004a046
pop ecx
push esi
push ebx
lea ecx, [ebp - 0xe0]
call fcn.1000fc54
mov ecx, dword [ebp - 0x44]
add ecx, dword [ebp - 0x24]
dec dword [ebp - 0x4c]
mov dword [ebp - 0x44], ecx
jne 0x10018eb7
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x28]
inc ecx
mov dword [ebp - 0x38], ecx
cmp ecx, 0xe2f
jl 0x10018ea0
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x33a6
jl 0x10018e9b
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x5a04
jl 0x10018e96
push 2
pop edi
mov dword [ebp - 0x18], esi
jmp 0x10018f37
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x40], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018f2d
cmp dword [ebp - 0x1c], 0x19cc
jge 0x10018f50
push 0x10008058
call fcn.1004a046
pop ecx
mov dword [ebp - 0x18], esi
jmp 0x10018f68
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xb4]
mov dword [eax + ecx*4], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018f55
cmp dword [ebp - 0x3c], esi
jne 0x10018f8b
mov dword [ebp - 0x14], 0x2daa
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
setle cl
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x14], esi
je 0x10018fd3
mov edx, dword [ebp - 0xb4]
cmp dword [edx + 4], esi
je 0x10018fb0
cmp dword [ebp - 0x3c], esi
jne 0x10018fb3
mov eax, dword [ebp - 0x50]
xor ecx, ecx
cmp dword [edx + 4], 0x8d36
setg cl
xor eax, eax
cmp ecx, 0x1c17854c
sete al
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
xor ebx, ebx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setg bl
add eax, dword [ebp - 0x50]
xor edx, edx
cmp eax, ebx
mov eax, dword [ebp - 0x50]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0xb4]
or dword [ebp - 4], 0xffffffff
call fcn.1000f94a
mov eax, dword [ebp - 0x58]
xor ebx, ebx
cmp dword [eax + 0x10], ebx
jne 0x1001901d
xor al, al
jmp 0x10019448
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x5c], 0x8efa
mov dword [ebp - 0x34], ebx
jmp 0x10019077
mov dword [ebp - 0x14], 4
mov dword [ebp - 0x20], ebx
jmp 0x1001904d
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x9c], 0x124f84b8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1001903c
mov dword [ebp - 0x14], ebx
jmp 0x1001906e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x9c], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x9c]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jle 0x10019057
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffe9
jle 0x10019030
lea edx, [ebp - 0x5c]
lea ecx, [ebp - 0x34]
call fcn.10018ceb
lea ecx, [ebp - 0x54]
call fcn.10018d29
mov eax, dword [ebp - 0x58]
cmp dword [eax + 0x14], 0x10
jb 0x1001909d
mov ecx, dword [eax]
jmp 0x1001909f
mov ecx, eax
push 3
pop esi
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x48], ecx
jb 0x100190af
mov edx, dword [eax]
jmp 0x100190b1
mov edx, eax
mov eax, dword [eax + 0x10]
add eax, edx
cmp ecx, eax
je 0x10019446
mov dword [ebp - 0x14], 0xca4f833f
xor eax, eax
mov dword [ebp - 0x1c], 0x556123d4
inc eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x60], 5
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], esi
jge 0x10019105
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x6c], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x100190f3
xor eax, eax
inc eax
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], ebx
jl 0x100192f7
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], ebx
jl 0x100192ec
mov dword [ebp - 0x1c], 0x31aa08e
mov dword [ebp - 0x4c], 0x82ec
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x6c], ebx
je 0x100192d6
mov dword [ebp - 0x1c], 0xffffffff
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x44], 0xfffffffb
push edi
call fcn.1000f8c8
mov dword [ebp - 4], esi
lea edx, [ebp - 0xa8]
mov dword [ebp - 0x1c], 1
lea ecx, [ebp - 0xc8]
call fcn.10018d2f
mov dword [ebp - 0x1c], 0x245b
cmp dword [ebp - 0x1c], 0x2722
jle 0x100191d9
push ebx
push 0x455
push 0x20d1
push 0x1278
call dword [sym.imp.GDI32.dll_SetPixel]
mov edi, ebx
mov esi, ebx
mov ecx, esi
mov eax, edi
sar eax, cl
mov ecx, 0x106081f8
cdq
push edx
push eax
call fcn.1000f7b3
inc esi
cmp esi, 0xd16
jl 0x100191a1
inc edi
cmp edi, 0x8d7
jl 0x1001919f
push ebx
push 0x298
push ebx
call dword [sym.imp.OLEAUT32.dll_SafeArrayDestroy]
push 2
pop edi
push 3
pop esi
mov byte [ebp - 4], 4
cmp dword [ebp - 0x1c], 0x239a
jge 0x10019219
mov edx, 0x100080bc
mov ecx, 0x106081f8
call fcn.1001125d
jmp 0x10019219
mov eax, dword [ebp - 0x84]
dec dword [ebp - 0x84]
test eax, eax
je 0x1001923d
mov eax, dword [ebp - 0x24]
neg eax
mov dword [ebp - 0x28], 1
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jne 0x10019240
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp eax, 1
setle cl
mov dword [ebp - 0x1c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
cmp eax, 0xfffffffc
setle cl
xor eax, eax
cmp ecx, 4
setge al
xor edx, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setge dl
xor ecx, ecx
cmp dword [ebp - 0x28], edx
setne cl
add ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x18]
cmp ecx, dword [ebp + eax*4 - 0x6c]
jge 0x1001928e
cmp dword [ebp - 0x38], ebx
jne 0x1001928e
mov ecx, ebx
jmp 0x10019291
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x6c], ecx
jl 0x100192a7
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x6c], ebx
jne 0x100192a7
mov eax, ebx
jmp 0x100192aa
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x6c]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa8]
or dword [ebp - 4], 0xffffffff
mov dword [eax], ecx
lea ecx, [ebp - 0xa8]
call fcn.1000f94a
jmp 0x100192e4
mov byte [ebp - 0x29], bl
cmp byte [ebp - 0x29], 0
je 0x100192e4
call sub.KERNEL32.dll_GetCommandLineA
dec dword [ebp - 0x18]
jmp 0x1001911e
dec dword [ebp - 0x14]
xor eax, eax
inc eax
jmp 0x10019108
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], ebx
jl 0x1001930c
lea ecx, [ebp - 0x60]
call fcn.10018d54
dec dword [ebp - 0x14]
jns 0x100192ff
mov eax, dword [ebp - 0x48]
mov al, byte [eax]
cmp al, 0x30
jl 0x10019335
cmp al, 0x39
jg 0x10019335
call fcn.10018d57
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x54]
call fcn.10018e08
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x58]
inc ecx
jmp 0x100190a2
mov dword [ebp - 0x14], 0xcea5d6c0
or eax, 0xffffffff
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], 0xbefa1e1c
mov dword [ebp - 0x1c], 0x93fe6966
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], 0x123020f6
mov dword [ebp - 0x14], 0x1d
jmp 0x10019422
push edi
lea ecx, [ebp - 0x94]
call fcn.1000f8c8
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0x30], ebx
jmp 0x100193b7
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x78], 0xfffffffe
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x100193a9
lea edx, [ebp - 0x94]
lea ecx, [ebp - 0x30]
call fcn.10018e1c
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setge dl
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jbe 0x100193eb
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x94]
imul ecx, dword [eax]
mov dword [ebp - 0xbc], ecx
lea ecx, [ebp - 0x94]
call fcn.1000f94a
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x18
jne 0x10019380
inc dword [ebp - 0x28]
lea eax, [ebp - 0x54]
push 0x66b3
push ebx
push eax
call fcn.10019497
add esp, 0xc
jmp 0x10019016
mov al, 1
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret