Function at 0x405d20
Capabilities:
Accept command line arguments

Disassembly:
and byte [ecx + 2], dh
inc ecx
add byte [ebx + 0x468aed4d], cl
adc byte [edi - 0x77], bl
mov byte [ecx], al
mov eax, 0xf630117e
pop ebp
push es
adc byte [eax], al
mov edx, dword [esi + 0x20]
mov ebp, dword [ecx]
or al, 0xf
mov esi, 0xf8834202
cmp cl, byte [ecx + 0x56891046]
and byte [edi], cl
test byte [edi], ah
mov bl, 0
add byte [eax + 0x57], dl
call dword [sym.imp.MSVCRT.dll_strchr]
add esp, 8
test eax, eax
je 0x405cbf
add byte [eax], al
add byte [eax], al
cmp byte [eax + 1], 0x3a
je 0x405c22
mov edi, dword [eax - 0x5e]
cmc
push edi
add byte [eax], al
add byte [eax], al
mov edx, dword [esi + 0x20]
cmp byte [edx], 0
jne 0xe840af
jmp 0x405cb5
push ds
inc esi
cmp byte es:[eax], 0
je 0x405c31
mov ecx, dword [ebp + 0x14]
mov edx, eax
jmp 0x405bbe
mov eax, dword [esp + ecx]
mov ecx, dword [esi + 0x18]
inc edx
mov eax, edx
mov dword [ebx + 0x7fc83b0c], ecx
pop ecx
jecxz 0x405c60
and ah, dl
add al, byte [ecx]
sahf
pop es
cmp al, 0xd
jne 0x405c61
mov ecx, dword [edi + 0x10]
mov al, bl
sbb byte [edi + 0x5e], 0xd3
adc byte [eax + 0x4b01667d], bh
pop ebp
ret 0x10
add byte [ebx - 0x3f7afbba], cl
mov eax, dword [esi + 4]
test eax, eax
je 0x405c87
hlt
call 0x40a5e5
mov ecx, dword [esi - 0x1714aff8]
inc eax
add byte [esi + 0x6c0456ff], bh
les edx, [eax]
mov eax, dword [ebp + 0x10]
mov dl, byte [esi + 0x10]
adc cl, dl
mov byte [eax], dl
mov eax, 0x1117c
pop ebp
ret 0x3010
mov dword [eax], edx
inc esi
inc esi
and byte [edx], dh
add al, byte [ecx]
inc dword [esi + 0xc]
or dword [ebp + 0x10], edx
mov cl, byte [esi - 0x57]
adc byte [ebx], dh
ror byte [eax - 0x6a28ff6], 0x10
add byte [ebx + 0xf2dbd7e], al
test dl, bh
invalid
cmp dword [esi - 0x43], 0x2d
je 0xff675bc3
movsb byte es:[edi], byte [esi]
push esi
and bl, ah
cmp al, byte [eax]
jne 0x405c72
inc dword [esi - 0x79]
mov eax, dword [esi + 0x3d]
test dword [eax + 0x3f806c86], edx
xchg dword [ebx - 0x6f7ac2ba], ecx
xchg byte [eax + eax*4 + 0x3f], ch
salc
je 0x405cff
mov ecx, dword [esi - 0x5a]
mov esi, dword [edx - 0x39]
push eax
mov edx, dword [ecx]
jns 0x405cd3
xchg ecx, eax
je 0x405cee
clc
aad 0x8b
inc esi
or byte [eax - 0x34], ch
push esp
inc eax
mov al, byte [0x41fffea]
or dword [ebp - 0xb], 0xffffff8b
push ebp
adc byte [edx - 0x47a0fab2], cl
les edx, [ecx]
add dword [eax], eax
mov edx, dword [ebp + 0x10]
mov cl, byte [esi + 5]
pop edi
mov eax, 0x111c4
movsd dword es:[edi], dword [esi]
or bl, byte [esi - 8]
jb 0x405d21
ja 0x405ca3
nop
seto byte [eax - 0x6f4e3e70]
nop
nop
nop
nop
in eax, dx
push ebp
mov ebp, esp
push ecx
sub dh, byte [esi + 0xa4cfe8]
add byte [ebp - 0x27ac040], al
out dx, al
add byte [eax], al
cmp dword [0x4108dc], 0x14
jl 0x405e2e
mov eax, dword [0x470384]
push esp
rol al, 0x27
loope 0x405ce0
add byte [ebp - 0x39], cl
add eax, 0x410384
add dword [eax], eax
add byte [eax], al
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
fdiv st(0)
test esi, esi
je 0x405db3
mov eax, dword [0x410358]
test eax, eax
jne 0x405d89
out 0x56, al
invalid
mov cl, 0x4d
cld
rcl dword [esi - 1], cl
ror byte [ebx - 0x78097a10], 1
sbb eax, 0x8bfc5509
push 0xc
push edx
push esi
push eax
call 0xe940fed0
mov eax, dword [ecx + 8]
add esp, 0xffffff95
push esi
mov dword [ecx], eax
call dword [0xaf40c058]
stosd dword es:[edi], eax
jae 0x405dcb
push esp
sar byte [ecx], 0x1a
mov ebx, eax
push 0xffffffffffffffff
mov ah, 0xff
adc eax, sym.imp.MSVCRT.dll___p__environ
push eax
call 0x405e50
mov edi, dword [ebp]
add esp, 0xc
mov edi, 0x8d2d742c
xor al, 0x85
add al, 0xf7
fistp word [eax + edi*2]
call dword [0x40bb62]
add esp, 0xffffff95
mov dword [edi], eax
bnd ja 0x405e0f
fiadd word [eax]
mov esi, dword [edx - 0x75]
into
mov esi, dword [eax]
mov edx, ecx
mov dword [0xa5f302e9], eax
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
jmp edi
call esi
mov edi, dword [ebp - 0x133627a5]
push cs
adc eax, 0xff388bd6
salc
xor eax, edi
add byte [eax], al
dec eax
jle 0x405e4a
call dword [sym.imp.MSVCRT.dll_free]
add esp, 4
inc ebp
mov byte [edi + 0x5e], bl
mov esp, ebp
pop ebp
ret 0xc
mov cl, 0x90
xor byte [eax - 0x74aa3813], dl
in al, dx
outsb dx, byte [esi]
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
test ebx, ebx
push edi
jge 0x405e79
mov ebx, 0xa10001
cmp word [eax], 0
jne 0x405e74
invalid
add eax, 2
mov al, byte [0xc452bd2]
sub eax, dword [ebp + 0xc]
add eax, 0xffffffd7
mov eax, edi
mov dword [ebp + 0x51], eax
lea edi, [ebx*4 + 0x49000004]
push eax
call dword [0x4d7c15c]
mov edi, eax
mov eax, dword [ebp + 0x10]
lea esi, [eax + eax*2 + 1]
push esi
mov dword [ebp - 4], esi
push dword [eax + 0x40075c]
add esp, 8
lea ecx, [ebp - 4]
pop es
lea edx, [ebp + 0x10]
push ecx
push eax
xlatb
inc ebp
or al, 0x52
push eax
push esi
invalid