Function at 0x401280
Capabilities:
Accept command line arguments

Disassembly:
sub esp, 0x20
push ebx
push ebp
mov byte [esp + 0xb], 0
xor ebp, ebp
xor ebx, ebx
call fcn.00408e00
test al, al
je 0x4012a7
mov ecx, dword [esp + 0x30]
pop ebp
mov al, 1
mov dword [ecx], ebx
pop ebx
add esp, 0x20
ret 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
lea edx, [esp + 0x10]
lea ecx, [esp + 0x14]
push edx
push ecx
push eax
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
call fcn.004104f0
test al, al
je 0x4015f0
lea edx, [esp + 0x1c]
lea eax, [esp + 0x18]
push edx
push eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], ebp
call fcn.00408de0
test al, al
je 0x4015b7
mov eax, dword [esp + 0x18]
push esi
xor esi, esi
cmp eax, ebp
push edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x28], esi
jbe 0x401453
mov ecx, dword [esp + 0x24]
xor eax, eax
push 0xa
mov ebx, dword [ecx + esi*4]
or ecx, 0xffffffff
mov edi, ebx
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push ebx
call fcn.004114b0
test al, al
je 0x40137d
lea edx, [esp + 0x28]
mov dword [esp + 0x28], ebp
push edx
push 0xa
push ebp
push ebx
call fcn.004112d0
test al, al
je 0x401368
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
jae 0x401368
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov edi, dword [ecx + eax*4]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [edx + ecx + 1]
mov dword [esp + 0x14], eax
jmp 0x401440
call fcn.00409a50
test al, al
je 0x401440
push esi
push 0x4e
jmp 0x401400
mov edi, dword [esp + 0x1c]
mov ebp, 1
cmp edi, ebp
jbe 0x4013c9
mov edx, dword [esp + 0x18]
mov eax, ebx
mov esi, dword [edx + ebp*4]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4013b7
test cl, cl
je 0x4013b3
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4013b7
add eax, 2
add esi, 2
test cl, cl
jne 0x401393
xor eax, eax
jmp 0x4013bc
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4013c5
inc ebp
cmp ebp, edi
jb 0x40138a
mov esi, dword [esp + 0x28]
cmp ebp, edi
jne 0x4013ed
call fcn.00409a50
test al, al
je 0x401440
mov eax, dword [esp + 0x34]
push esi
push 0x4b
push 0x41b
push eax
call fcn.00401260
add esp, 0x10
jmp 0x401440
lea eax, [ebp + 1]
cmp eax, edi
jne 0x401414
call fcn.00409a50
test al, al
je 0x401440
push esi
push 0x56
mov ecx, dword [esp + 0x3c]
push 0x41b
push ecx
call fcn.00401260
add esp, 0x10
jmp 0x401440
mov edx, dword [esp + 0x18]
or ecx, 0xffffffff
mov edi, dword [edx + eax*4]
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [edx + ebp*4]
not ecx
dec ecx
mov ebx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x14]
not ecx
dec ecx
add ecx, eax
lea edx, [ecx + ebx + 2]
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x20]
inc esi
xor ebp, ebp
cmp esi, eax
mov dword [esp + 0x28], esi
jb 0x401304
mov eax, dword [esp + 0x14]
inc eax
push eax
call fcn.00426170
mov ebx, eax
cmp ebx, ebp
mov dword [esp + 0x2c], ebx
je 0x40158c
mov eax, dword [esp + 0x20]
xor esi, esi
cmp eax, ebp
mov dword [esp + 0x14], esi
mov dword [esp + 0x34], ebp
jbe 0x401583
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x34]
xor eax, eax
push 0xa
mov ebp, dword [ecx + edx*4]
or ecx, 0xffffffff
mov edi, ebp
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push ebp
call fcn.004114b0
test al, al
je 0x4014f0
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
push 0xa
push 0
push ebp
call fcn.004112d0
test al, al
je 0x40156e
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
jae 0x40156e
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + eax*4]
lea eax, [esi + ebx]
push edx
push 0x43e434
push eax
call fcn.004342af
add esp, 0xc
jmp 0x401568
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov edi, 1
cmp ecx, edi
jbe 0x401544
mov esi, dword [edx + edi*4]
mov eax, ebp
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x40152a
test cl, cl
je 0x401526
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x40152a
add eax, 2
add esi, 2
test cl, cl
jne 0x401506
xor eax, eax
jmp 0x40152f
sbb eax, eax
sbb eax, 0xffffffff
mov ecx, dword [esp + 0x1c]
test eax, eax
je 0x40153c
inc edi
cmp edi, ecx
jb 0x401501
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x2c]
cmp edi, ecx
je 0x40156e
lea eax, [edi + 1]
cmp eax, ecx
je 0x40156e
mov ecx, dword [edx + eax*4]
mov edx, dword [edx + edi*4]
push ecx
push edx
lea eax, [esi + ebx]
push str._s__s
push eax
call fcn.004342af
add esp, 0x10
add esi, eax
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
inc eax
cmp eax, ecx
mov dword [esp + 0x34], eax
jb 0x401482
mov byte [esp + 0x13], 1
xor ebp, ebp
jmp 0x4015a5
mov ecx, dword [esp + 0x34]
push 0xe0000002
push 0x4d
push 0x41b
push ecx
call fcn.00401260
add esp, 0x10
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], ebp
push eax
call fcn.00426640
pop edi
pop esi
jmp 0x4015d0
mov edx, dword [esp + 0x2c]
push 0xe0000002
push 0x54
push 0x41b
push edx
call fcn.00401260
add esp, 0x10
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], ebp
push eax
call fcn.00426640
pop ebp
mov eax, dword [esp + 0x2c]
mov dword [eax], ebx
mov al, byte [esp + 7]
pop ebx
add esp, 0x20
ret 8
mov ecx, dword [esp + 0x2c]
push 0xe0000002
push 0x41
push 0x41b
push ecx
call fcn.00401260
mov edx, dword [esp + 0x40]
mov al, byte [esp + 0x1b]
add esp, 0x10
mov dword [edx], ebx
pop ebp
pop ebx
add esp, 0x20
ret 8