逆アセンブルで遊んでみる(3)signed long longの最大値を返す関数

「signed long longの最大値を返す関数」です。

unsigned long long func(void)
{
	return 0x7FFFFFFFFFFFFFFFLL;
}
   0:	55                   	push   %ebp
   1:	89 e5                	mov    %esp,%ebp
   3:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
   8:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
   d:	5d                   	pop    %ebp
   e:	c3                   	ret

64bitの整数値を返す場合は、上位32bitをedxレジスタに、下位32bitをeaxレジスタにセットするようです。