Function at 0x411ec8
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
pushfd
push esi
btr esi, 8
pop esi
pushal
call sub.KERNEL32.DLL_GetCurrentProcessId
popal
popfd
push ecx
call fcn.0041227a
pop ecx
jmp 0x411efd
pushal
mov esi, dword [0x421160]
pushfd
push ebx
btc ebx, 6
pop ebx
pushal
call sub.KERNEL32.DLL_GetLastError
popal
popfd
pushfd
push ebx
setne bl
pop ebx
pushal
call sub.KERNEL32.DLL_GetCurrentProcessId
popal
popfd
lodsd eax, dword [esi]
mov edx, eax
pushfd
push eax
ror eax, 0x12
pop eax
pushal
call sub.KERNEL32.DLL_GetCurrentProcess
popal
popfd
sub edx, 0xf9ffc
neg edx
mov dword [ebp - 4], edx
mov eax, esi
pushfd
push eax
btr eax, 0xf
pop eax
pushal
call sub.KERNEL32.DLL_GetCurrentProcessId
popal
popfd
pmaxsw mm0, mm1
pushal
pushfd
call sub.KERNEL32.DLL_GetCommandLineA
popfd
popal
add eax, 0xf9ffc
sub eax, dword [ebp - 4]
mov dword [ebp - 8], eax
push dword [ebp + 8]
call fcn.00415ec0
add eax, dword [ebp + 8]
sub eax, 4
pushfd
push ebx
bts ebx, 0xd
pop ebx
pushal
call sub.KERNEL32.DLL_GetCurrentThreadId
popal
popfd
push ecx
call fcn.0041227a
pop ecx
jmp 0x411fa2
mov eax, dword [eax]
cmp al, 0x2e
jne 0x411fe8
pushfd
push esi
btc esi, 7
pop esi
pushal
call sub.KERNEL32.DLL_GetCommandLineA
popal
popfd
pushfd
push ebx
setnp bl
pop ebx
pushal
call sub.KERNEL32.DLL_GetCurrentProcess
popal
popfd
shr eax, 8
pushfd
push esi
btr esi, 0x1e
pop esi
pushal
call sub.KERNEL32.DLL_GetCurrentProcessId
popal
popfd
psubsw mm0, mm1
pushal
pushfd
call sub.KERNEL32.DLL_GetLastError
popfd
popal
shl eax, 8
jmp 0x412013
cmp ah, 0x2e
jne 0x412013
pushfd
push esi
shl esi, 4
pop esi
pushal
call sub.KERNEL32.DLL_GetCurrentThread
popal
popfd
push esi
push ebx
pushfd
cmovae esi, ebx
popfd
pop ebx
pop esi
pushal
pushfd
call sub.KERNEL32.DLL_GetCommandLineA
popfd
popal
shr eax, 0x10
shl eax, 0x10
push eax
cmp byte [esp], 0
je 0x41202a
cmp byte [esp], 0x40
jbe 0x41202a
cmp byte [esp], 0x61
jae 0x41202a
add byte [esp], 0x20
cmp byte [esp + 1], 0
je 0x412064
cmp byte [esp + 1], 0x40
jbe 0x412064
cmp byte [esp + 1], 0x61
jae 0x412064
pushfd
push ebx
rcl ebx, 0x1b
pop ebx
pushal
call sub.KERNEL32.DLL_GetCurrentThreadId
popal
popfd
push eax
push eax
pushfd
cmovne eax, eax
popfd
pop eax
pop eax
pushal
pushfd
call sub.KERNEL32.DLL_GetCurrentThread
popfd
popal
add byte [esp + 1], 0x20
cmp byte [esp + 2], 0
je 0x41207e
cmp byte [esp + 2], 0x40
jbe 0x41207e
cmp byte [esp + 2], 0x61
jae 0x41207e
add byte [esp + 2], 0x20
cmp byte [esp + 3], 0
je 0x412098
cmp byte [esp + 3], 0x40
jbe 0x412098
cmp byte [esp + 3], 0x61
jae 0x412098
add byte [esp + 3], 0x20
pop eax
bswap eax
xor eax, 0x202020
cmp eax, 0x574142
jne 0x4120c0
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.004122cb
jmp 0x412275
cmp eax, 0x545854
je 0x4120e3
cmp eax, 0x4d5347
je 0x4120e3
cmp eax, 0x4d5346
je 0x4120e3
cmp eax, 0x48544d
je 0x4120e3
cmp eax, 0x68544d4c
jne 0x4120fc
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
jmp 0x412275
cmp eax, 0x7348544d
je 0x41211f
cmp eax, 0x53544d
je 0x41211f
cmp eax, 0x584d4c
je 0x41211f
cmp eax, 0x444258
je 0x41211f
cmp eax, 0x4d4258
jne 0x412152
pushfd
push ebx
ror ebx, 7
pop ebx
pushal
call sub.KERNEL32.DLL_GetCurrentProcess
popal
popfd
pmaxub mm0, mm1
pushal
pushfd
call sub.KERNEL32.DLL_GetCommandLineA
popfd
popal
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
jmp 0x412275
cmp eax, 0x4d4458
je 0x412175
cmp eax, 0x454d4c
je 0x412175
cmp eax, 0x4e4348
je 0x412175
cmp eax, 0x4d4d46
je 0x412175
cmp eax, 0x4f4453
jne 0x4121a8
pushfd
push ebx
rcr ebx, 0x19
pop ebx
pushal
call sub.KERNEL32.DLL_GetTickCount
popal
popfd
psubb mm0, mm1
pushal
pushfd
call sub.KERNEL32.DLL_GetCurrentThread
popfd
popal
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
jmp 0x412275
cmp eax, 0x434647
je 0x4121cb
cmp eax, 0x415350
je 0x4121cb
cmp eax, 0x504850
je 0x4121cb
cmp eax, 0x20504c
je 0x4121cb
cmp eax, 0x575348
jne 0x4121e4
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
jmp 0x412275
cmp eax, 0x414442
je 0x412207
cmp eax, 0x544242
je 0x412207
cmp eax, 0x534854
je 0x412207
cmp eax, 0x4f4654
je 0x412207
cmp eax, 0x55494e
jne 0x41221d
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
jmp 0x412275
cmp eax, 0x434749
je 0x412247
cmp eax, 0x4d4854
je 0x412247
cmp eax, 0x6448544d
je 0x412247
cmp eax, 0x4a5350
je 0x412247
cmp eax, 0x435356
je 0x412247
cmp eax, 0x53514c
jne 0x412275
pushfd
push ecx
shl ecx, 0x15
pop ecx
pushal
call sub.KERNEL32.DLL_GetCurrentThreadId
popal
popfd
psrad mm0, mm1
pushal
pushfd
call sub.KERNEL32.DLL_GetLastError
popfd
popal
push dword [ebp - 4]
push dword [ebp - 8]
push dword [0x421160]
push dword [ebp + 8]
call fcn.00403141
popal
leave
ret 4