ae6820:	09 45 0c             	or     %eax,0xc(%ebp)
ae6823:	8d 45 0c             	lea    0xc(%ebp),%eax
ae6826:	6a 1f                	push   $0x1f
ae6828:	50                   	push   %eax
ae6829:	e8 3c ac 91 ff       	call   0x40146a
ae682e:	83 c4 0c             	add    $0xc,%esp
ae6831:	85 f6                	test   %esi,%esi
ae6833:	5e                   	pop    %esi
ae6834:	74 0d                	je     0xae6843
ae6836:	e8 34 80 95 ff       	call   0x43e86f
ae683b:	c7 00 21 00 00 00    	movl   $0x21,(%eax)
ae6841:	eb 10                	jmp    0xae6853
ae6843:	f6 c3 1c             	test   $0x1c,%bl
ae6846:	74 0b                	je     0xae6853
ae6848:	e8 22 80 95 ff       	call   0x43e86f
ae684d:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
ae6853:	5b                   	pop    %ebx
ae6854:	5d                   	pop    %ebp
ae6855:	c3                   	ret
ae6856:	cc                   	int3
ae6857:	cc                   	int3
ae6858:	cc                   	int3
ae6859:	cc                   	int3
ae685a:	cc                   	int3
ae685b:	cc                   	int3
ae685c:	cc                   	int3
ae685d:	cc                   	int3
ae685e:	cc                   	int3
ae685f:	cc                   	int3
ae6860:	cc                   	int3
ae6861:	cc                   	int3
ae6862:	cc                   	int3
ae6863:	cc                   	int3
ae6864:	cc                   	int3
ae6865:	cc                   	int3
ae6866:	cc                   	int3
ae6867:	cc                   	int3
ae6868:	cc                   	int3
ae6869:	cc                   	int3
ae686a:	cc                   	int3
ae686b:	cc                   	int3
ae686c:	cc                   	int3
ae686d:	cc                   	int3
ae686e:	cc                   	int3
ae686f:	cc                   	int3
ae6870:	cc                   	int3
ae6871:	cc                   	int3
ae6872:	cc                   	int3
ae6873:	cc                   	int3
ae6874:	8b ff                	mov    %edi,%edi
ae6876:	55                   	push   %ebp
ae6877:	8b ec                	mov    %esp,%ebp
ae6879:	8b 4d 08             	mov    0x8(%ebp),%ecx
ae687c:	33 c0                	xor    %eax,%eax
ae687e:	f6 c1 1f             	test   $0x1f,%cl
ae6881:	74 32                	je     0xae68b5
ae6883:	f6 c1 10             	test   $0x10,%cl
ae6886:	74 05                	je     0xae688d
ae6888:	b8 10 00 10 10       	mov    $0x10100010,%eax
ae688d:	f6 c1 08             	test   $0x8,%cl
ae6890:	74 05                	je     0xae6897
ae6892:	0d 08 00 08 08       	or     $0x8080008,%eax
ae6897:	f6 c1 04             	test   $0x4,%cl
ae689a:	74 05                	je     0xae68a1
ae689c:	0d 04 00 04 04       	or     $0x4040004,%eax
ae68a1:	f6 c1 02             	test   $0x2,%cl
ae68a4:	74 05                	je     0xae68ab
ae68a6:	0d 02 00 02 02       	or     $0x2020002,%eax
ae68ab:	f6 c1 01             	test   $0x1,%cl
ae68ae:	74 05                	je     0xae68b5
ae68b0:	0d 01 00 01 01       	or     $0x1010001,%eax
ae68b5:	5d                   	pop    %ebp
ae68b6:	c3                   	ret
ae68b7:	cc                   	int3
ae68b8:	cc                   	int3
ae68b9:	cc                   	int3
ae68ba:	cc                   	int3
ae68bb:	cc                   	int3
ae68bc:	cc                   	int3
ae68bd:	cc                   	int3
ae68be:	cc                   	int3
ae68bf:	cc                   	int3
ae68c0:	cc                   	int3
ae68c1:	cc                   	int3
ae68c2:	cc                   	int3
ae68c3:	cc                   	int3
ae68c4:	cc                   	int3
ae68c5:	cc                   	int3
ae68c6:	cc                   	int3
ae68c7:	8b ff                	mov    %edi,%edi
ae68c9:	55                   	push   %ebp
ae68ca:	8b ec                	mov    %esp,%ebp
ae68cc:	8b 55 08             	mov    0x8(%ebp),%edx
ae68cf:	33 c9                	xor    %ecx,%ecx
ae68d1:	f7 c2 80 7e 00 00    	test   $0x7e80,%edx
ae68d7:	74 67                	je     0xae6940
ae68d9:	84 d2                	test   %dl,%dl
ae68db:	79 03                	jns    0xae68e0
ae68dd:	6a 10                	push   $0x10
ae68df:	59                   	pop    %ecx
ae68e0:	57                   	push   %edi
ae68e1:	bf 00 02 00 00       	mov    $0x200,%edi
ae68e6:	85 d7                	test   %edx,%edi
ae68e8:	74 03                	je     0xae68ed
ae68ea:	83 c9 08             	or     $0x8,%ecx
ae68ed:	f7 c2 00 04 00 00    	test   $0x400,%edx
ae68f3:	74 03                	je     0xae68f8
ae68f5:	83 c9 04             	or     $0x4,%ecx
ae68f8:	f7 c2 00 08 00 00    	test   $0x800,%edx
ae68fe:	74 03                	je     0xae6903
ae6900:	83 c9 02             	or     $0x2,%ecx
ae6903:	f7 c2 00 10 00 00    	test   $0x1000,%edx
ae6909:	74 03                	je     0xae690e
ae690b:	83 c9 01             	or     $0x1,%ecx
ae690e:	56                   	push   %esi
ae690f:	be 00 60 00 00       	mov    $0x6000,%esi
ae6914:	8b c2                	mov    %edx,%eax
ae6916:	23 c6                	and    %esi,%eax
ae6918:	3b c6                	cmp    %esi,%eax
ae691a:	5e                   	pop    %esi
ae691b:	75 08                	jne    0xae6925
ae691d:	81 c9 00 03 00 00    	or     $0x300,%ecx
ae6923:	eb 1a                	jmp    0xae693f
ae6925:	f7 c2 00 40 00 00    	test   $0x4000,%edx
ae692b:	74 08                	je     0xae6935
ae692d:	81 c9 00 01 00 00    	or     $0x100,%ecx
ae6933:	eb 0a                	jmp    0xae693f
ae6935:	f7 c2 00 20 00 00    	test   $0x2000,%edx
ae693b:	74 02                	je     0xae693f
ae693d:	0b cf                	or     %edi,%ecx
ae693f:	5f                   	pop    %edi
ae6940:	8b c1                	mov    %ecx,%eax
ae6942:	5d                   	pop    %ebp
ae6943:	c3                   	ret
ae6944:	cc                   	int3
ae6945:	cc                   	int3
ae6946:	cc                   	int3
ae6947:	cc                   	int3
ae6948:	cc                   	int3
ae6949:	cc                   	int3
ae694a:	cc                   	int3
ae694b:	cc                   	int3
ae694c:	cc                   	int3
ae694d:	cc                   	int3
ae694e:	cc                   	int3
ae694f:	cc                   	int3
ae6950:	cc                   	int3
ae6951:	cc                   	int3
ae6952:	cc                   	int3
ae6953:	cc                   	int3
ae6954:	cc                   	int3
ae6955:	cc                   	int3
ae6956:	cc                   	int3
ae6957:	cc                   	int3
ae6958:	cc                   	int3
ae6959:	cc                   	int3
ae695a:	cc                   	int3
ae695b:	cc                   	int3
ae695c:	cc                   	int3
ae695d:	cc                   	int3
ae695e:	cc                   	int3
ae695f:	cc                   	int3
ae6960:	cc                   	int3
ae6961:	cc                   	int3
ae6962:	cc                   	int3
ae6963:	8b ff                	mov    %edi,%edi
ae6965:	55                   	push   %ebp
ae6966:	8b ec                	mov    %esp,%ebp
ae6968:	8b 55 08             	mov    0x8(%ebp),%edx
ae696b:	33 c9                	xor    %ecx,%ecx
ae696d:	f7 c2 3d 0c 00 00    	test   $0xc3d,%edx
ae6973:	74 5d                	je     0xae69d2
ae6975:	f6 c2 01             	test   $0x1,%dl
ae6978:	74 03                	je     0xae697d
ae697a:	6a 10                	push   $0x10
ae697c:	59                   	pop    %ecx
ae697d:	f6 c2 04             	test   $0x4,%dl
ae6980:	74 03                	je     0xae6985
ae6982:	83 c9 08             	or     $0x8,%ecx
ae6985:	f6 c2 08             	test   $0x8,%dl
ae6988:	74 03                	je     0xae698d
ae698a:	83 c9 04             	or     $0x4,%ecx
ae698d:	f6 c2 10             	test   $0x10,%dl
ae6990:	74 03                	je     0xae6995
ae6992:	83 c9 02             	or     $0x2,%ecx
ae6995:	f6 c2 20             	test   $0x20,%dl
ae6998:	74 03                	je     0xae699d
ae699a:	83 c9 01             	or     $0x1,%ecx
ae699d:	56                   	push   %esi
ae699e:	be 00 0c 00 00       	mov    $0xc00,%esi
ae69a3:	8b c2                	mov    %edx,%eax
ae69a5:	23 c6                	and    %esi,%eax
ae69a7:	3b c6                	cmp    %esi,%eax
ae69a9:	5e                   	pop    %esi
ae69aa:	75 08                	jne    0xae69b4
ae69ac:	81 c9 00 03 00 00    	or     $0x300,%ecx
ae69b2:	eb 1e                	jmp    0xae69d2
ae69b4:	f7 c2 00 08 00 00    	test   $0x800,%edx
ae69ba:	74 08                	je     0xae69c4
ae69bc:	81 c9 00 01 00 00    	or     $0x100,%ecx
ae69c2:	eb 0e                	jmp    0xae69d2
ae69c4:	f7 c2 00 04 00 00    	test   $0x400,%edx
ae69ca:	74 06                	je     0xae69d2
ae69cc:	81 c9 00 02 00 00    	or     $0x200,%ecx
ae69d2:	8b c1                	mov    %ecx,%eax
ae69d4:	5d                   	pop    %ebp
ae69d5:	c3                   	ret
ae69d6:	cc                   	int3
ae69d7:	cc                   	int3
ae69d8:	cc                   	int3
ae69d9:	cc                   	int3
ae69da:	cc                   	int3
ae69db:	cc                   	int3
ae69dc:	cc                   	int3
ae69dd:	cc                   	int3
ae69de:	cc                   	int3
ae69df:	cc                   	int3
ae69e0:	cc                   	int3
ae69e1:	cc                   	int3
ae69e2:	cc                   	int3
ae69e3:	cc                   	int3
ae69e4:	cc                   	int3
ae69e5:	cc                   	int3
ae69e6:	cc                   	int3
ae69e7:	cc                   	int3
ae69e8:	cc                   	int3
ae69e9:	cc                   	int3
ae69ea:	cc                   	int3
ae69eb:	cc                   	int3
ae69ec:	cc                   	int3
ae69ed:	cc                   	int3
ae69ee:	cc                   	int3
ae69ef:	cc                   	int3
ae69f0:	cc                   	int3
ae69f1:	cc                   	int3
ae69f2:	8b ff                	mov    %edi,%edi
ae69f4:	55                   	push   %ebp
ae69f5:	8b ec                	mov    %esp,%ebp
ae69f7:	8b 4d 08             	mov    0x8(%ebp),%ecx
ae69fa:	33 c0                	xor    %eax,%eax
ae69fc:	f6 c1 3d             	test   $0x3d,%cl
ae69ff:	74 32                	je     0xae6a33
ae6a01:	f6 c1 01             	test   $0x1,%cl
ae6a04:	74 05                	je     0xae6a0b
ae6a06:	b8 10 00 00 10       	mov    $0x10000010,%eax
ae6a0b:	f6 c1 04             	test   $0x4,%cl
ae6a0e:	74 05                	je     0xae6a15
ae6a10:	0d 08 00 00 08       	or     $0x8000008,%eax
ae6a15:	f6 c1 08             	test   $0x8,%cl
ae6a18:	74 05                	je     0xae6a1f
ae6a1a:	0d 04 00 00 04       	or     $0x4000004,%eax
ae6a1f:	f6 c1 10             	test   $0x10,%cl
ae6a22:	74 05                	je     0xae6a29
ae6a24:	0d 02 00 00 02       	or     $0x2000002,%eax
ae6a29:	f6 c1 20             	test   $0x20,%cl
ae6a2c:	74 05                	je     0xae6a33
ae6a2e:	0d 01 00 00 01       	or     $0x1000001,%eax
ae6a33:	5d                   	pop    %ebp
ae6a34:	c3                   	ret
ae6a35:	cc                   	int3
ae6a36:	cc                   	int3
ae6a37:	cc                   	int3
ae6a38:	cc                   	int3
ae6a39:	cc                   	int3
ae6a3a:	cc                   	int3
ae6a3b:	cc                   	int3
ae6a3c:	cc                   	int3
ae6a3d:	cc                   	int3
ae6a3e:	cc                   	int3
ae6a3f:	cc                   	int3
ae6a40:	cc                   	int3
ae6a41:	cc                   	int3
ae6a42:	cc                   	int3
ae6a43:	cc                   	int3
ae6a44:	cc                   	int3
ae6a45:	8b ff                	mov    %edi,%edi
ae6a47:	55                   	push   %ebp
ae6a48:	8b ec                	mov    %esp,%ebp
ae6a4a:	8b 4d 08             	mov    0x8(%ebp),%ecx
ae6a4d:	33 c0                	xor    %eax,%eax
ae6a4f:	f6 c1 3d             	test   $0x3d,%cl
ae6a52:	74 32                	je     0xae6a86
ae6a54:	f6 c1 01             	test   $0x1,%cl
ae6a57:	74 05                	je     0xae6a5e
ae6a59:	b8 10 00 10 00       	mov    $0x100010,%eax
ae6a5e:	f6 c1 04             	test   $0x4,%cl
ae6a61:	74 05                	je     0xae6a68
ae6a63:	0d 08 00 08 00       	or     $0x80008,%eax
ae6a68:	f6 c1 08             	test   $0x8,%cl
ae6a6b:	74 05                	je     0xae6a72
ae6a6d:	0d 04 00 04 00       	or     $0x40004,%eax
ae6a72:	f6 c1 10             	test   $0x10,%cl
ae6a75:	74 05                	je     0xae6a7c
ae6a77:	0d 02 00 02 00       	or     $0x20002,%eax
ae6a7c:	f6 c1 20             	test   $0x20,%cl
ae6a7f:	74 05                	je     0xae6a86
ae6a81:	0d 01 00 01 00       	or     $0x10001,%eax
ae6a86:	5d                   	pop    %ebp
ae6a87:	c3                   	ret
ae6a88:	cc                   	int3
ae6a89:	cc                   	int3
ae6a8a:	cc                   	int3
ae6a8b:	cc                   	int3
ae6a8c:	cc                   	int3
ae6a8d:	cc                   	int3
ae6a8e:	cc                   	int3
ae6a8f:	cc                   	int3
ae6a90:	cc                   	int3
ae6a91:	cc                   	int3
ae6a92:	cc                   	int3
ae6a93:	cc                   	int3
ae6a94:	cc                   	int3
ae6a95:	cc                   	int3
ae6a96:	cc                   	int3
ae6a97:	cc                   	int3
ae6a98:	8b ff                	mov    %edi,%edi
ae6a9a:	55                   	push   %ebp
ae6a9b:	8b ec                	mov    %esp,%ebp
ae6a9d:	8b 55 08             	mov    0x8(%ebp),%edx
ae6aa0:	33 c9                	xor    %ecx,%ecx
ae6aa2:	f7 c2 1f 03 00 00    	test   $0x31f,%edx
ae6aa8:	74 5b                	je     0xae6b05
ae6aaa:	f6 c2 10             	test   $0x10,%dl
ae6aad:	74 01                	je     0xae6ab0
ae6aaf:	41                   	inc    %ecx
ae6ab0:	f6 c2 08             	test   $0x8,%dl
ae6ab3:	74 03                	je     0xae6ab8
ae6ab5:	83 c9 04             	or     $0x4,%ecx
ae6ab8:	f6 c2 04             	test   $0x4,%dl
ae6abb:	74 03                	je     0xae6ac0
ae6abd:	83 c9 08             	or     $0x8,%ecx
ae6ac0:	f6 c2 02             	test   $0x2,%dl
ae6ac3:	74 03                	je     0xae6ac8
ae6ac5:	83 c9 10             	or     $0x10,%ecx
ae6ac8:	f6 c2 01             	test   $0x1,%dl
ae6acb:	74 03                	je     0xae6ad0
ae6acd:	83 c9 20             	or     $0x20,%ecx
ae6ad0:	56                   	push   %esi
ae6ad1:	be 00 03 00 00       	mov    $0x300,%esi
ae6ad6:	8b c2                	mov    %edx,%eax
ae6ad8:	23 c6                	and    %esi,%eax
ae6ada:	3b c6                	cmp    %esi,%eax
ae6adc:	5e                   	pop    %esi
ae6add:	75 08                	jne    0xae6ae7
ae6adf:	81 c9 00 0c 00 00    	or     $0xc00,%ecx
ae6ae5:	eb 1e                	jmp    0xae6b05
ae6ae7:	f7 c2 00 02 00 00    	test   $0x200,%edx
ae6aed:	74 08                	je     0xae6af7
ae6aef:	81 c9 00 04 00 00    	or     $0x400,%ecx
ae6af5:	eb 0e                	jmp    0xae6b05