44a7c8:	25 00 0f 00 00       	and    $0xf00,%eax
44a7cd:	3d 00 01 00 00       	cmp    $0x100,%eax
44a7d2:	0f 84 6b 02 00 00    	je     0x44aa43
44a7d8:	3d 00 02 00 00       	cmp    $0x200,%eax
44a7dd:	0f 84 54 02 00 00    	je     0x44aa37
44a7e3:	3d 00 04 00 00       	cmp    $0x400,%eax
44a7e8:	0f 84 cf 01 00 00    	je     0x44a9bd
44a7ee:	3d 00 08 00 00       	cmp    $0x800,%eax
44a7f3:	0f 84 3d 01 00 00    	je     0x44a936
44a7f9:	84 c9                	test   %cl,%cl
44a7fb:	0f 89 36 02 00 00    	jns    0x44aa37
44a801:	8d 45 08             	lea    0x8(%ebp),%eax
44a804:	50                   	push   %eax
44a805:	56                   	push   %esi
44a806:	ff 15 3c d4 48 00    	call   *0x48d43c
44a80c:	66 8b 4d 08          	mov    0x8(%ebp),%cx
44a810:	0f b7 c1             	movzwl %cx,%eax
44a813:	33 db                	xor    %ebx,%ebx
44a815:	83 c0 fe             	add    $0xfffffffe,%eax
44a818:	43                   	inc    %ebx
44a819:	83 f8 15             	cmp    $0x15,%eax
44a81c:	77 5e                	ja     0x44a87c
44a81e:	0f b6 80 e1 aa 44 00 	movzbl 0x44aae1(%eax),%eax
44a825:	ff 24 85 c9 aa 44 00 	jmp    *0x44aac9(,%eax,4)
44a82c:	8d 45 f4             	lea    -0xc(%ebp),%eax
44a82f:	50                   	push   %eax
44a830:	56                   	push   %esi
44a831:	ff 15 1c d4 48 00    	call   *0x48d41c
44a837:	85 c0                	test   %eax,%eax
44a839:	0f 88 f8 01 00 00    	js     0x44aa37
44a83f:	8b 45 f8             	mov    -0x8(%ebp),%eax
44a842:	50                   	push   %eax
44a843:	ff 75 f4             	push   -0xc(%ebp)
44a846:	8b cf                	mov    %edi,%ecx
44a848:	50                   	push   %eax
44a849:	e8 95 fb ff ff       	call   0x44a3e3
44a84e:	50                   	push   %eax
44a84f:	e8 2c 46 fd ff       	call   0x41ee80
44a854:	83 c4 0c             	add    $0xc,%esp
44a857:	56                   	push   %esi
44a858:	ff 15 18 d4 48 00    	call   *0x48d418
44a85e:	b0 01                	mov    $0x1,%al
44a860:	e9 5a 02 00 00       	jmp    0x44aabf
44a865:	89 5d ec             	mov    %ebx,-0x14(%ebp)
44a868:	eb 26                	jmp    0x44a890
44a86a:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
44a871:	eb 1d                	jmp    0x44a890
44a873:	c7 45 ec 08 00 00 00 	movl   $0x8,-0x14(%ebp)
44a87a:	eb 14                	jmp    0x44a890
44a87c:	0f b7 c1             	movzwl %cx,%eax
44a87f:	a9 00 40 00 00       	test   $0x4000,%eax
44a884:	0f 84 ad 01 00 00    	je     0x44aa37
44a88a:	6a 04                	push   $0x4
44a88c:	58                   	pop    %eax
44a88d:	89 45 ec             	mov    %eax,-0x14(%ebp)
44a890:	8d 45 f4             	lea    -0xc(%ebp),%eax
44a893:	50                   	push   %eax
44a894:	56                   	push   %esi
44a895:	ff 15 1c d4 48 00    	call   *0x48d41c
44a89b:	85 c0                	test   %eax,%eax
44a89d:	0f 88 1a 02 00 00    	js     0x44aabd
44a8a3:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
44a8a7:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44a8ab:	0f 8e 05 02 00 00    	jle    0x44aab6
44a8b1:	8b 75 ec             	mov    -0x14(%ebp),%esi
44a8b4:	6a 10                	push   $0x10
44a8b6:	e8 2f 4c fd ff       	call   0x41f4ea
44a8bb:	59                   	pop    %ecx
44a8bc:	8b c8                	mov    %eax,%ecx
44a8be:	85 c9                	test   %ecx,%ecx
44a8c0:	74 0c                	je     0x44a8ce
44a8c2:	83 21 00             	andl   $0x0,(%ecx)
44a8c5:	83 61 08 00          	andl   $0x0,0x8(%ecx)
44a8c9:	89 59 0c             	mov    %ebx,0xc(%ecx)
44a8cc:	eb 02                	jmp    0x44a8d0
44a8ce:	33 c9                	xor    %ecx,%ecx
44a8d0:	8b 07                	mov    (%edi),%eax
44a8d2:	8b 55 e8             	mov    -0x18(%ebp),%edx
44a8d5:	8b 00                	mov    (%eax),%eax
44a8d7:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
44a8da:	66 8b 4d 08          	mov    0x8(%ebp),%cx
44a8de:	0f b7 c1             	movzwl %cx,%eax
44a8e1:	ba 00 40 00 00       	mov    $0x4000,%edx
44a8e6:	85 c2                	test   %eax,%edx
44a8e8:	74 16                	je     0x44a900
44a8ea:	56                   	push   %esi
44a8eb:	ff 75 f4             	push   -0xc(%ebp)
44a8ee:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44a8f1:	50                   	push   %eax
44a8f2:	66 89 4d cc          	mov    %cx,-0x34(%ebp)
44a8f6:	e8 85 45 fd ff       	call   0x41ee80
44a8fb:	83 c4 0c             	add    $0xc,%esp
44a8fe:	eb 0f                	jmp    0x44a90f
44a900:	8b c2                	mov    %edx,%eax
44a902:	66 0b c1             	or     %cx,%ax
44a905:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
44a909:	8b 45 f4             	mov    -0xc(%ebp),%eax
44a90c:	89 45 d4             	mov    %eax,-0x2c(%ebp)
44a90f:	8d 45 cc             	lea    -0x34(%ebp),%eax
44a912:	50                   	push   %eax
44a913:	8b 07                	mov    (%edi),%eax
44a915:	8b 08                	mov    (%eax),%ecx
44a917:	8b 45 e8             	mov    -0x18(%ebp),%eax
44a91a:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
44a91d:	e8 a3 f4 ff ff       	call   0x449dc5
44a922:	8b 45 e8             	mov    -0x18(%ebp),%eax
44a925:	01 75 f4             	add    %esi,-0xc(%ebp)
44a928:	40                   	inc    %eax
44a929:	89 45 e8             	mov    %eax,-0x18(%ebp)
44a92c:	3b 45 f8             	cmp    -0x8(%ebp),%eax
44a92f:	7c 83                	jl     0x44a8b4
44a931:	e9 7d 01 00 00       	jmp    0x44aab3
44a936:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44a939:	50                   	push   %eax
44a93a:	56                   	push   %esi
44a93b:	ff 15 1c d4 48 00    	call   *0x48d41c
44a941:	33 db                	xor    %ebx,%ebx
44a943:	43                   	inc    %ebx
44a944:	85 c0                	test   %eax,%eax
44a946:	0f 88 71 01 00 00    	js     0x44aabd
44a94c:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
44a950:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44a954:	0f 8e 5c 01 00 00    	jle    0x44aab6
44a95a:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
44a95e:	8b 75 f8             	mov    -0x8(%ebp),%esi
44a961:	6a 10                	push   $0x10
44a963:	e8 82 4b fd ff       	call   0x41f4ea
44a968:	59                   	pop    %ecx
44a969:	8b c8                	mov    %eax,%ecx
44a96b:	85 c9                	test   %ecx,%ecx
44a96d:	74 0c                	je     0x44a97b
44a96f:	83 21 00             	andl   $0x0,(%ecx)
44a972:	83 61 08 00          	andl   $0x0,0x8(%ecx)
44a976:	89 59 0c             	mov    %ebx,0xc(%ecx)
44a979:	eb 02                	jmp    0x44a97d
44a97b:	33 c9                	xor    %ecx,%ecx
44a97d:	8b 07                	mov    (%edi),%eax
44a97f:	8b 55 e8             	mov    -0x18(%ebp),%edx
44a982:	8b 00                	mov    (%eax),%eax
44a984:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
44a987:	b8 0c 40 00 00       	mov    $0x400c,%eax
44a98c:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
44a990:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44a993:	03 45 ec             	add    -0x14(%ebp),%eax
44a996:	89 45 d4             	mov    %eax,-0x2c(%ebp)
44a999:	8d 45 cc             	lea    -0x34(%ebp),%eax
44a99c:	50                   	push   %eax
44a99d:	8b 07                	mov    (%edi),%eax
44a99f:	8b 08                	mov    (%eax),%ecx
44a9a1:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
44a9a4:	e8 1c f4 ff ff       	call   0x449dc5
44a9a9:	8b 45 e8             	mov    -0x18(%ebp),%eax
44a9ac:	83 45 ec 10          	addl   $0x10,-0x14(%ebp)
44a9b0:	40                   	inc    %eax
44a9b1:	89 45 e8             	mov    %eax,-0x18(%ebp)
44a9b4:	3b c6                	cmp    %esi,%eax
44a9b6:	7c a9                	jl     0x44a961
44a9b8:	e9 f6 00 00 00       	jmp    0x44aab3
44a9bd:	8d 45 e0             	lea    -0x20(%ebp),%eax
44a9c0:	50                   	push   %eax
44a9c1:	56                   	push   %esi
44a9c2:	ff 15 1c d4 48 00    	call   *0x48d41c
44a9c8:	33 db                	xor    %ebx,%ebx
44a9ca:	43                   	inc    %ebx
44a9cb:	85 c0                	test   %eax,%eax
44a9cd:	0f 88 ea 00 00 00    	js     0x44aabd
44a9d3:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
44a9d7:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44a9db:	0f 8e d5 00 00 00    	jle    0x44aab6
44a9e1:	8b 75 f8             	mov    -0x8(%ebp),%esi
44a9e4:	6a 10                	push   $0x10
44a9e6:	e8 ff 4a fd ff       	call   0x41f4ea
44a9eb:	59                   	pop    %ecx
44a9ec:	8b c8                	mov    %eax,%ecx
44a9ee:	85 c9                	test   %ecx,%ecx
44a9f0:	74 0c                	je     0x44a9fe
44a9f2:	83 21 00             	andl   $0x0,(%ecx)
44a9f5:	83 61 08 00          	andl   $0x0,0x8(%ecx)
44a9f9:	89 59 0c             	mov    %ebx,0xc(%ecx)
44a9fc:	eb 02                	jmp    0x44aa00
44a9fe:	33 c9                	xor    %ecx,%ecx
44aa00:	8b 07                	mov    (%edi),%eax
44aa02:	8b 55 e8             	mov    -0x18(%ebp),%edx
44aa05:	8b 00                	mov    (%eax),%eax
44aa07:	6a 09                	push   $0x9
44aa09:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
44aa0c:	58                   	pop    %eax
44aa0d:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
44aa11:	8b 45 e0             	mov    -0x20(%ebp),%eax
44aa14:	8d 04 90             	lea    (%eax,%edx,4),%eax
44aa17:	89 45 d4             	mov    %eax,-0x2c(%ebp)
44aa1a:	8d 45 cc             	lea    -0x34(%ebp),%eax
44aa1d:	50                   	push   %eax
44aa1e:	8b 07                	mov    (%edi),%eax
44aa20:	8b 08                	mov    (%eax),%ecx
44aa22:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
44aa25:	e8 9b f3 ff ff       	call   0x449dc5
44aa2a:	8b 45 e8             	mov    -0x18(%ebp),%eax
44aa2d:	40                   	inc    %eax
44aa2e:	89 45 e8             	mov    %eax,-0x18(%ebp)
44aa31:	3b c6                	cmp    %esi,%eax
44aa33:	7c af                	jl     0x44a9e4
44aa35:	eb 7c                	jmp    0x44aab3
44aa37:	8b cf                	mov    %edi,%ecx
44aa39:	e8 e2 81 fc ff       	call   0x412c20
44aa3e:	e9 fe fc ff ff       	jmp    0x44a741
44aa43:	8d 45 dc             	lea    -0x24(%ebp),%eax
44aa46:	50                   	push   %eax
44aa47:	56                   	push   %esi
44aa48:	ff 15 1c d4 48 00    	call   *0x48d41c
44aa4e:	33 db                	xor    %ebx,%ebx
44aa50:	43                   	inc    %ebx
44aa51:	85 c0                	test   %eax,%eax
44aa53:	78 68                	js     0x44aabd
44aa55:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
44aa59:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44aa5d:	7e 57                	jle    0x44aab6
44aa5f:	8b 75 f8             	mov    -0x8(%ebp),%esi
44aa62:	6a 10                	push   $0x10
44aa64:	e8 81 4a fd ff       	call   0x41f4ea
44aa69:	59                   	pop    %ecx
44aa6a:	8b c8                	mov    %eax,%ecx
44aa6c:	85 c9                	test   %ecx,%ecx
44aa6e:	74 0c                	je     0x44aa7c
44aa70:	83 21 00             	andl   $0x0,(%ecx)
44aa73:	83 61 08 00          	andl   $0x0,0x8(%ecx)
44aa77:	89 59 0c             	mov    %ebx,0xc(%ecx)
44aa7a:	eb 02                	jmp    0x44aa7e
44aa7c:	33 c9                	xor    %ecx,%ecx
44aa7e:	8b 07                	mov    (%edi),%eax
44aa80:	8b 55 e8             	mov    -0x18(%ebp),%edx
44aa83:	8b 00                	mov    (%eax),%eax
44aa85:	6a 08                	push   $0x8
44aa87:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
44aa8a:	58                   	pop    %eax
44aa8b:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
44aa8f:	8b 45 dc             	mov    -0x24(%ebp),%eax
44aa92:	8b 04 90             	mov    (%eax,%edx,4),%eax
44aa95:	89 45 d4             	mov    %eax,-0x2c(%ebp)
44aa98:	8d 45 cc             	lea    -0x34(%ebp),%eax
44aa9b:	50                   	push   %eax
44aa9c:	8b 07                	mov    (%edi),%eax
44aa9e:	8b 08                	mov    (%eax),%ecx
44aaa0:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
44aaa3:	e8 1d f3 ff ff       	call   0x449dc5
44aaa8:	8b 45 e8             	mov    -0x18(%ebp),%eax
44aaab:	40                   	inc    %eax
44aaac:	89 45 e8             	mov    %eax,-0x18(%ebp)
44aaaf:	3b c6                	cmp    %esi,%eax
44aab1:	7c af                	jl     0x44aa62
44aab3:	8b 75 f0             	mov    -0x10(%ebp),%esi
44aab6:	56                   	push   %esi
44aab7:	ff 15 18 d4 48 00    	call   *0x48d418
44aabd:	8a c3                	mov    %bl,%al
44aabf:	5f                   	pop    %edi
44aac0:	5e                   	pop    %esi
44aac1:	5b                   	pop    %ebx
44aac2:	c9                   	leave
44aac3:	c2 04 00             	ret    $0x4
44aac6:	8d 49 00             	lea    0x0(%ecx),%ecx
44aac9:	6a a8                	push   $0xffffffa8
44aacb:	44                   	inc    %esp
44aacc:	00 90 a8 44 00 73    	add    %dl,0x730044a8(%eax)
44aad2:	a8 44                	test   $0x44,%al
44aad4:	00 65 a8             	add    %ah,-0x58(%ebp)
44aad7:	44                   	inc    %esp
44aad8:	00 2c a8             	add    %ch,(%eax,%ebp,4)
44aadb:	44                   	inc    %esp
44aadc:	00 7c a8 44          	add    %bh,0x44(%eax,%ebp,4)
44aae0:	00 00                	add    %al,(%eax)
44aae2:	01 01                	add    %eax,(%ecx)
44aae4:	02 02                	add    (%edx),%al
44aae6:	02 05 05 01 00 05    	add    0x5000105,%al
44aaec:	05 05 05 03 04       	add    $0x4030505,%eax
44aaf1:	00 01                	add    %al,(%ecx)
44aaf3:	02 02                	add    (%edx),%al
44aaf5:	01 01                	add    %eax,(%ecx)
44aaf7:	cc                   	int3
44aaf8:	55                   	push   %ebp
44aaf9:	8b ec                	mov    %esp,%ebp
44aafb:	81 ec b0 00 00 00    	sub    $0xb0,%esp
44ab01:	53                   	push   %ebx
44ab02:	56                   	push   %esi
44ab03:	57                   	push   %edi
44ab04:	8b 7d 08             	mov    0x8(%ebp),%edi
44ab07:	8b d9                	mov    %ecx,%ebx
44ab09:	0f b7 07             	movzwl (%edi),%eax
44ab0c:	83 f8 24             	cmp    $0x24,%eax
44ab0f:	0f 8f 3e 03 00 00    	jg     0x44ae53
44ab15:	0f 84 2e 02 00 00    	je     0x44ad49
44ab1b:	83 f8 17             	cmp    $0x17,%eax
44ab1e:	0f 87 26 03 00 00    	ja     0x44ae4a
44ab24:	ff 24 85 a0 af 44 00 	jmp    *0x44afa0(,%eax,4)
44ab2b:	6a 10                	push   $0x10
44ab2d:	c7 43 0c 08 00 00 00 	movl   $0x8,0xc(%ebx)
44ab34:	e8 b1 49 fd ff       	call   0x41f4ea
44ab39:	59                   	pop    %ecx
44ab3a:	50                   	push   %eax
44ab3b:	89 03                	mov    %eax,(%ebx)
44ab3d:	ff 15 64 d4 48 00    	call   *0x48d464
44ab43:	57                   	push   %edi
44ab44:	ff 33                	push   (%ebx)
44ab46:	ff 15 48 d4 48 00    	call   *0x48d448
44ab4c:	85 c0                	test   %eax,%eax
44ab4e:	79 13                	jns    0x44ab63
44ab50:	ff 33                	push   (%ebx)
44ab52:	ff 15 4c d4 48 00    	call   *0x48d44c
44ab58:	ff 33                	push   (%ebx)
44ab5a:	e8 ff 49 fd ff       	call   0x41f55e
44ab5f:	83 23 00             	andl   $0x0,(%ebx)
44ab62:	59                   	pop    %ecx
44ab63:	b0 01                	mov    $0x1,%al
44ab65:	e9 e2 02 00 00       	jmp    0x44ae4c
44ab6a:	0f be 77 08          	movsbl 0x8(%edi),%esi
44ab6e:	e8 ad 80 fc ff       	call   0x412c20
44ab73:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
44ab7a:	89 33                	mov    %esi,(%ebx)
44ab7c:	eb e5                	jmp    0x44ab63
44ab7e:	0f b6 77 08          	movzbl 0x8(%edi),%esi
44ab82:	eb ea                	jmp    0x44ab6e
44ab84:	0f bf 77 08          	movswl 0x8(%edi),%esi
44ab88:	eb e4                	jmp    0x44ab6e
44ab8a:	0f b7 77 08          	movzwl 0x8(%edi),%esi
44ab8e:	eb de                	jmp    0x44ab6e
44ab90:	8b 77 08             	mov    0x8(%edi),%esi
44ab93:	eb d9                	jmp    0x44ab6e
44ab95:	8b 77 08             	mov    0x8(%edi),%esi
44ab98:	8b 7f 0c             	mov    0xc(%edi),%edi
44ab9b:	e8 80 80 fc ff       	call   0x412c20
44aba0:	c7 43 0c 02 00 00 00 	movl   $0x2,0xc(%ebx)
44aba7:	89 33                	mov    %esi,(%ebx)
44aba9:	89 7b 04             	mov    %edi,0x4(%ebx)
44abac:	eb b5                	jmp    0x44ab63
44abae:	d9 47 08             	flds   0x8(%edi)
44abb1:	dd 5d f4             	fstpl  -0xc(%ebp)
44abb4:	e8 67 80 fc ff       	call   0x412c20
44abb9:	dd 45 f4             	fldl   -0xc(%ebp)
44abbc:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
44abc3:	dd 1b                	fstpl  (%ebx)
44abc5:	eb 9c                	jmp    0x44ab63
44abc7:	dd 47 08             	fldl   0x8(%edi)
44abca:	eb e5                	jmp    0x44abb1
44abcc:	df 6f 08             	fildll 0x8(%edi)
44abcf:	dd 5d f4             	fstpl  -0xc(%ebp)
44abd2:	dd 45 f4             	fldl   -0xc(%ebp)
44abd5:	dc 35 f0 69 4b 00    	fdivl  0x4b69f0
44abdb:	eb d4                	jmp    0x44abb1
44abdd:	33 f6                	xor    %esi,%esi
44abdf:	6a 10                	push   $0x10
44abe1:	39 77 08             	cmp    %esi,0x8(%edi)