Function at 0x40c1d6
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x66c
mov eax, dword [0x44f4e8]
xor eax, esp
mov dword [esp + 0x668], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [0x453bd0], eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov ecx, eax
lea ebx, [esp + 0x2d8]
mov dword [esp + 0x1c], ecx
call fcn.00409671
lea eax, [esp + 0xb0]
call fcn.00407ac5
push 7
pop eax
xor esi, esi
mov dword [esp + 0x70], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0xac], eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x70], esi
mov word [esp + 0x60], si
mov dword [esp + 0x8c], esi
mov word [esp + 0x7c], si
mov dword [esp + 0xac], esi
mov word [esp + 0x9c], si
mov byte [esp + 0x94], 0
mov byte [esp + 0x95], 1
mov dword [esp + 0x1c], esi
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ebx, eax
cmp ebx, esi
je 0x40c53c
xor eax, eax
inc eax
cmp dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
jle 0x40c535
mov dword [esp + 0x10], 2
mov edi, dword [esp + 0x14]
shl edi, 2
mov eax, dword [edi + ebx]
lea ecx, [esp + 0x3c]
call fcn.0040118b
push 0x44451c
lea esi, [esp + 0x40]
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ed
push 0x444524
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ed
push 0x44452c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ed
push 0x444534
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ed
push 0x44453c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4d9
push 0x444544
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4d9
push 0x44454c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4d9
push 0x444554
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4d9
push 0x44455c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x444564
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x44456c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x444574
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x44457c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x444584
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x44458c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x444594
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4cf
push 0x44459c
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4c5
push 0x4445a4
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4c5
push 0x4445ac
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4c5
push 0x4445b4
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4c5
push 0x4445bc
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445c4
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445cc
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445d4
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445dc
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445e4
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445ec
call fcn.004091ef
test al, al
pop ecx
jne 0x40c4ae
push 0x4445f4
call fcn.004091ef
test al, al
pop ecx
je 0x40c510
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
jge 0x40c5a6
lea esi, [esp + 0x94]
jmp 0x40c4ff
mov byte [esp + 0x91], 0
jmp 0x40c510
mov byte [esp + 0x90], 1
jmp 0x40c510
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
jge 0x40c5ef
lea esi, [esp + 0x74]
jmp 0x40c4ff
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
jge 0x40c5ef
lea esi, [esp + 0x58]
mov eax, dword [edi + ebx + 4]
call fcn.00401337
inc dword [esp + 0x14]
inc dword [esp + 0x10]
push 0
push 1
lea esi, [esp + 0x44]
call fcn.00401451
inc dword [esp + 0x14]
mov eax, dword [esp + 0x14]
inc dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
jl 0x40c2a3
xor esi, esi
push ebx
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea edi, [esp + 0x58]
lea eax, [esp + 0x2d8]
call fcn.0040bbef
cmp dword [esp + 0x200], esi
je 0x40c592
cmp dword [esp + 0x1e4], esi
jne 0x40c592
push 0x27ea
call fcn.004050db
lea ecx, [esp + 0x24]
call fcn.0040ffe4
push 0xffffffffffffffff
lea eax, [esp + 0x1d4]
push eax
xor ebx, ebx
lea eax, [esp + 0x28]
call fcn.004016e8
push ebx
push 1
lea esi, [esp + 0x28]
call fcn.00401451
push dword [esp + 0x1c]
lea ecx, [esp + 0x2dc]
call fcn.0040bc2d
mov esi, eax
jmp 0x40c5b6
push 0
push 1
lea esi, [esp + 0x44]
call fcn.00401451
push 0xfffffffffffffffe
pop esi
lea edi, [esp + 0x58]
call fcn.004097e4
lea edi, [esp + 0xb0]
call fcn.0040980a
lea eax, [esp + 0x2d8]
push eax
call fcn.004098fc
mov eax, esi
mov ecx, dword [esp + 0x674]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004327eb
mov esp, ebp
pop ebp
ret
push 0
push 1
lea esi, [esp + 0x44]
call fcn.00401451
lea edi, [esp + 0x58]
call fcn.004097e4
lea edi, [esp + 0xb0]
call fcn.0040980a
lea eax, [esp + 0x2d8]
push eax
call fcn.004098fc
push 0xfffffffffffffffe
pop eax
jmp 0x40c5da