Function at 0x4011d0
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53b8e5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xdc
push ebx
push esi
push edi
mov edi, ecx
push 0x551fbc
mov dword [ebp - 0x4c], edi
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov dword [edi + 0xcc], eax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x54], 8
mov dword [ebp - 0x50], 0xff
call fcn.00402480
add esp, 4
mov ecx, edi
call fcn.00406094
push 0xc
call fcn.00402756
add esp, 4
mov dword [ebp - 0x44], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x401249
mov ecx, eax
call fcn.0040fabd
jmp 0x40124b
xor eax, eax
push 0x553758
mov dword [ebp - 0x28], eax
mov dword [ebp - 4], 0xffffffff
call fcn.0040f5f4
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
push 0x551e68
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x44], esi
call fcn.004018f0
push 0x551e68
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 1
call fcn.004018f0
xor al, al
push 0xc8
mov byte [ebp - 4], 2
xor bl, bl
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_Sleep]
test esi, esi
je 0x4014bb
mov eax, dword [ebp - 0x24]
cmp eax, 1
jle 0x4014bb
mov edi, dword [ebp - 0x44]
mov esi, 1
mov ecx, 0x2d
xor eax, eax
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x40], 0x70002d
mov dword [ebp - 0x38], 0x68
lea edx, [esi + 0x67]
mov dword [ebp - 0x3c], 0x740061
mov word [ebp - 0x1c], cx
mov word [ebp - 0x16], ax
mov dword [ebp - 0x32], 0x680072
mov word [ebp - 0x2e], ax
mov word [ebp - 0x34], cx
mov eax, dword [edi + esi*4]
lea ecx, [ebp - 0x40]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40132d
test dx, dx
je 0x401329
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40132d
add eax, 4
add ecx, 4
test dx, dx
jne 0x401307
xor eax, eax
jmp 0x401332
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40134b
push dword [edi + esi*4 + 4]
lea eax, [ebp - 0x2c]
push 0x551fe4
push eax
call fcn.00401c60
add esp, 0xc
mov eax, dword [edi + esi*4]
mov dword [ebp - 0x1a], 0x640069
lea ecx, [ebp - 0x1c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40137e
test dx, dx
je 0x40137a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40137e
add eax, 4
add ecx, 4
test dx, dx
jne 0x401358
xor eax, eax
jmp 0x401383
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40139c
push dword [edi + esi*4 + 4]
lea eax, [ebp - 0x20]
push 0x551fe4
push eax
call fcn.00401c60
add esp, 0xc
mov edx, dword [edi + esi*4]
mov dword [ebp - 0x1a], 0x680073
lea ecx, [ebp - 0x48]
mov eax, edx
jmp 0x4013b0
mov si, word [eax]
cmp si, word [ecx]
jne 0x4013d6
test si, si
je 0x4013d2
mov si, word [eax + 2]
cmp si, word [ecx + 2]
jne 0x4013d6
add eax, 4
add ecx, 4
test si, si
jne 0x4013b0
xor eax, eax
jmp 0x4013db
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x14]
movzx ecx, cl
test eax, eax
mov esi, 1
cmove ecx, esi
mov dword [ebp - 0x14], ecx
lea eax, [ebp - 0x34]
mov cx, word [edx]
cmp cx, word [eax]
jne 0x401417
test cx, cx
je 0x401413
mov cx, word [edx + 2]
cmp cx, word [eax + 2]
jne 0x401417
add edx, 4
add eax, 4
test cx, cx
jne 0x4013f1
xor eax, eax
jmp 0x40141c
sbb eax, eax
or eax, 1
movzx ebx, bl
test eax, eax
cmove ebx, esi
mov esi, dword [ebp - 0x10]
inc esi
mov dword [ebp - 0x10], esi
cmp esi, dword [ebp - 0x24]
jl 0x401301
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x4c]
test al, al
je 0x4014ae
mov ecx, edi
call fcn.00401050
push 0
lea ecx, [ebp - 0xe8]
call fcn.00402170
lea eax, [ebp - 0xe8]
mov ecx, eax
mov byte [ebp - 4], 3
mov dword [edi + 0x20], eax
call fcn.00404679
mov eax, dword [edi + 0xd0]
test eax, eax
je 0x401481
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [edi + 0xd0], 0
cmp byte [edi + 0xdc], 0
je 0x40149f
push dword [edi + 0xd8]
call fcn.00402600
add esp, 4
mov byte [edi + 0xdc], 0
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 2
call fcn.00402190
test bl, bl
je 0x4014bb
push 3
mov ecx, edi
call fcn.00401170
mov eax, dword [ebp - 0x2c]
cmp dword [eax - 0xc], 0
je 0x4014f0
mov ecx, dword [ebp - 0x20]
cmp dword [ecx - 0xc], 0
je 0x4014f0
lea edx, [ebp - 0x10]
push edx
push 1
push eax
push ecx
push 0
mov dword [ebp - 0x10], 0
call fcn.00402520
add esp, 0x14
test eax, eax
jne 0x401506
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ebx, ebx
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x401500
mov eax, dword [ecx]
push 1
call dword [eax + 4]
push ebx
call fcn.00523f13
xor ebx, ebx
cmp dword [ebp - 0x10], ebx
setne bl
inc ebx
jmp 0x4014f2