Function at 0x4021e0
Capabilities:
Accept command line arguments

Disassembly:
sub esp, 0x10
push ebx
push ebp
push esi
push edi
xor edi, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov esi, eax
mov al, byte [esi]
test al, al
je 0x40248e
mov ebp, dword [sym.imp.MSVCRT.dll_atoi]
mov bl, 0x20
cmp al, 0x2d
je 0x402221
cmp al, 0x2f
jne 0x40245d
xor edi, edi
mov al, byte [esi + 1]
inc esi
test al, al
je 0x402471
movsx eax, al
push eax
call dword [sym.imp.MSVCRT.dll_tolower]
sub eax, 0x70
pop ecx
je 0x402409
dec eax
je 0x4023cf
dec eax
dec eax
je 0x402354
dec eax
je 0x4022d9
dec eax
jne 0x40248e
cmp dword [esp + 0x18], edi
jne 0x40245d
inc esi
cmp byte [esi], bl
je 0x402268
mov edi, esi
inc edi
cmp byte [edi], bl
jne 0x40226f
push 0x80
push 0
push 0x404114
call sub.MSVCRT.dll_memset
mov eax, edi
sub eax, esi
push eax
push esi
push 0x404114
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x18
cmp byte [edi], bl
mov eax, edi
jne 0x4022a4
inc eax
cmp byte [eax], bl
je 0x40229f
mov cl, byte [eax]
mov esi, eax
cmp cl, bl
je 0x4022b6
test cl, cl
je 0x4022b6
mov cl, byte [esi + 1]
inc esi
jmp 0x4022a8
and byte [esi], 0
push eax
call ebp
test ax, ax
pop ecx
mov word [0x4043b8], ax
je 0x40248e
mov dword [esp + 0x18], 1
jmp 0x40245d
cmp dword [esp + 0x14], edi
jne 0x40245d
inc esi
cmp byte [esi], bl
je 0x4022e3
mov edi, esi
inc edi
cmp byte [edi], bl
jne 0x4022ea
push 0x80
push 0
push 0x404198
call sub.MSVCRT.dll_memset
mov eax, edi
sub eax, esi
push eax
push esi
push 0x404198
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x18
cmp byte [edi], bl
mov eax, edi
jne 0x40231f
inc eax
cmp byte [eax], bl
je 0x40231a
mov cl, byte [eax]
mov esi, eax
cmp cl, bl
je 0x402331
test cl, cl
je 0x402331
mov cl, byte [esi + 1]
inc esi
jmp 0x402323
and byte [esi], 0
push eax
call ebp
test ax, ax
pop ecx
mov word [0x4043b6], ax
je 0x40248e
mov dword [esp + 0x14], 1
jmp 0x40245d
cmp dword [esp + 0x10], edi
jne 0x40245d
inc esi
cmp byte [esi], bl
je 0x40235e
mov edi, esi
inc edi
cmp byte [edi], bl
jne 0x402365
push 0x80
push 0
push 0x404320
call sub.MSVCRT.dll_memset
mov eax, edi
sub eax, esi
push eax
push esi
push 0x404320
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x18
cmp byte [edi], bl
mov eax, edi
jne 0x40239a
inc eax
cmp byte [eax], bl
je 0x402395
mov cl, byte [eax]
mov esi, eax
cmp cl, bl
je 0x4023ac
test cl, cl
je 0x4023ac
mov cl, byte [esi + 1]
inc esi
jmp 0x40239e
and byte [esi], 0
push eax
call ebp
test ax, ax
pop ecx
mov word [0x4043b4], ax
je 0x40248e
mov dword [esp + 0x10], 1
jmp 0x40245d
lea eax, [esi + 1]
cmp byte [eax], bl
jne 0x4023d9
inc eax
jmp 0x4023d2
mov cl, byte [eax]
mov esi, eax
cmp cl, bl
je 0x4023eb
test cl, cl
je 0x4023eb
mov cl, byte [esi + 1]
inc esi
jmp 0x4023dd
and byte [esi], 0
push eax
call ebp
cmp eax, edi
pop ecx
mov dword [0x404010], eax
je 0x40248e
imul eax, eax, 0x3c
mov dword [0x404010], eax
jmp 0x40245d
lea ebp, [esi + 1]
cmp byte [ebp], bl
jne 0x402414
inc ebp
jmp 0x40240c
mov al, byte [ebp]
mov edi, ebp
cmp al, bl
je 0x402427
test al, al
je 0x402427
mov al, byte [edi + 1]
inc edi
jmp 0x402419
and byte [edi], 0
push 0x104
push 0
push 0x40421c
mov esi, edi
call sub.MSVCRT.dll_memset
sub edi, ebp
push edi
push ebp
push 0x40421c
call dword [sym.imp.MSVCRT.dll_strncpy]
mov ebp, dword [sym.imp.MSVCRT.dll_atoi]
add esp, 0x18
mov dword [esp + 0x1c], 1
test esi, esi
je 0x402462
inc esi
mov al, byte [esi]
test al, al
je 0x40246f
xor edi, edi
jmp 0x402213
xor edi, edi
cmp dword [esp + 0x10], edi
je 0x40248e
cmp dword [esp + 0x14], edi
je 0x40248e
cmp dword [esp + 0x18], edi
je 0x40248e
cmp dword [esp + 0x1c], edi
je 0x40248e
push 1
pop eax
jmp 0x402490
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret