5af9c5:	e8 6a 9a ff ff       	call   0x5a9434
5af9ca:	88 03                	mov    %al,(%ebx)
5af9cc:	eb 4e                	jmp    0x5afa1c
5af9ce:	8b c6                	mov    %esi,%eax
5af9d0:	f7 6d bc             	imull  -0x44(%ebp)
5af9d3:	8b 55 90             	mov    -0x70(%ebp),%edx
5af9d6:	8d 04 02             	lea    (%edx,%eax,1),%eax
5af9d9:	89 45 8c             	mov    %eax,-0x74(%ebp)
5af9dc:	8b d6                	mov    %esi,%edx
5af9de:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af9e1:	8b 08                	mov    (%eax),%ecx
5af9e3:	ff 11                	call   *(%ecx)
5af9e5:	89 45 88             	mov    %eax,-0x78(%ebp)
5af9e8:	8b 7d bc             	mov    -0x44(%ebp),%edi
5af9eb:	4f                   	dec    %edi
5af9ec:	85 ff                	test   %edi,%edi
5af9ee:	7c 2c                	jl     0x5afa1c
5af9f0:	47                   	inc    %edi
5af9f1:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
5af9f8:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af9fb:	03 45 a4             	add    -0x5c(%ebp),%eax
5af9fe:	85 c0                	test   %eax,%eax
5afa00:	7c 11                	jl     0x5afa13
5afa02:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5afa05:	7d 0c                	jge    0x5afa13
5afa07:	8b 55 88             	mov    -0x78(%ebp),%edx
5afa0a:	03 d0                	add    %eax,%edx
5afa0c:	8b 45 8c             	mov    -0x74(%ebp),%eax
5afa0f:	8a 00                	mov    (%eax),%al
5afa11:	88 02                	mov    %al,(%edx)
5afa13:	ff 45 8c             	incl   -0x74(%ebp)
5afa16:	ff 45 a4             	incl   -0x5c(%ebp)
5afa19:	4f                   	dec    %edi
5afa1a:	75 dc                	jne    0x5af9f8
5afa1c:	66 83 7d 0e 00       	cmpw   $0x0,0xe(%ebp)
5afa21:	74 2a                	je     0x5afa4d
5afa23:	8b 45 c0             	mov    -0x40(%ebp),%eax
5afa26:	03 45 bc             	add    -0x44(%ebp),%eax
5afa29:	03 c6                	add    %esi,%eax
5afa2b:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5afa31:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5afa37:	dc 8d 78 ff ff ff    	fmull  -0x88(%ebp)
5afa3d:	e8 8a 32 e5 ff       	call   0x402ccc
5afa42:	8b c8                	mov    %eax,%ecx
5afa44:	8b 55 08             	mov    0x8(%ebp),%edx
5afa47:	8b 45 10             	mov    0x10(%ebp),%eax
5afa4a:	ff 55 0c             	call   *0xc(%ebp)
5afa4d:	46                   	inc    %esi
5afa4e:	ff 8d 74 ff ff ff    	decl   -0x8c(%ebp)
5afa54:	0f 85 17 fe ff ff    	jne    0x5af871
5afa5a:	8b 45 90             	mov    -0x70(%ebp),%eax
5afa5d:	e8 6a 2d e5 ff       	call   0x4027cc
5afa62:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5afa65:	e8 0e 40 e5 ff       	call   0x403a78
5afa6a:	5f                   	pop    %edi
5afa6b:	5e                   	pop    %esi
5afa6c:	5b                   	pop    %ebx
5afa6d:	8b e5                	mov    %ebp,%esp
5afa6f:	5d                   	pop    %ebp
5afa70:	c2 14 00             	ret    $0x14
5afa73:	00 00                	add    %al,(%eax)
5afa75:	00 00                	add    %al,(%eax)
5afa77:	00 00                	add    %al,(%eax)
5afa79:	00 7a 44             	add    %bh,0x44(%edx)
5afa7c:	00 00                	add    %al,(%eax)
5afa7e:	34 c2                	xor    $0xc2,%al
5afa80:	00 00                	add    %al,(%eax)
5afa82:	34 42                	xor    $0x42,%al
5afa84:	00 00                	add    %al,(%eax)
5afa86:	b4 42                	mov    $0x42,%ah
5afa88:	35 c2 68 21 a2       	xor    $0xa22168c2,%eax
5afa8d:	da 0f                	fimull (%edi)
5afa8f:	c9                   	leave
5afa90:	00 40 00             	add    %al,0x0(%eax)
5afa93:	00 00                	add    %al,(%eax)
5afa95:	00 34 43             	add    %dh,(%ebx,%eax,2)
5afa98:	00 00                	add    %al,(%eax)
5afa9a:	00 40 00             	add    %al,0x0(%eax)
5afa9d:	00 80 3f 00 00 c8    	add    %al,-0x37ffffc1(%eax)
5afaa3:	42                   	inc    %edx
5afaa4:	00 00                	add    %al,(%eax)
5afaa6:	80 45 53 56          	addb   $0x56,0x53(%ebp)
5afaaa:	57                   	push   %edi
5afaab:	8b d8                	mov    %eax,%ebx
5afaad:	84 c9                	test   %cl,%cl
5afaaf:	74 07                	je     0x5afab8
5afab1:	33 c0                	xor    %eax,%eax
5afab3:	89 43 34             	mov    %eax,0x34(%ebx)
5afab6:	eb 43                	jmp    0x5afafb
5afab8:	8b 73 34             	mov    0x34(%ebx),%esi
5afabb:	85 f6                	test   %esi,%esi
5afabd:	74 3c                	je     0x5afafb
5afabf:	8b c6                	mov    %esi,%eax
5afac1:	8b 10                	mov    (%eax),%edx
5afac3:	ff 92 cc 00 00 00    	call   *0xcc(%edx)
5afac9:	8b f8                	mov    %eax,%edi
5afacb:	89 7b 78             	mov    %edi,0x78(%ebx)
5aface:	80 7b 5c 00          	cmpb   $0x0,0x5c(%ebx)
5afad2:	74 0e                	je     0x5afae2
5afad4:	b1 01                	mov    $0x1,%cl
5afad6:	8b d7                	mov    %edi,%edx
5afad8:	8b 43 58             	mov    0x58(%ebx),%eax
5afadb:	e8 60 8b 04 00       	call   0x5f8640
5afae0:	eb 19                	jmp    0x5afafb
5afae2:	8b 43 34             	mov    0x34(%ebx),%eax
5afae5:	8b 10                	mov    (%eax),%edx
5afae7:	ff 92 d0 00 00 00    	call   *0xd0(%edx)
5afaed:	8b f0                	mov    %eax,%esi
5afaef:	89 73 58             	mov    %esi,0x58(%ebx)
5afaf2:	85 f6                	test   %esi,%esi
5afaf4:	74 05                	je     0x5afafb
5afaf6:	33 c0                	xor    %eax,%eax
5afaf8:	89 43 78             	mov    %eax,0x78(%ebx)
5afafb:	5f                   	pop    %edi
5afafc:	5e                   	pop    %esi
5afafd:	5b                   	pop    %ebx
5afafe:	c3                   	ret
5afaff:	90                   	nop
5afb00:	8b ca                	mov    %edx,%ecx
5afb02:	c1 e9 03             	shr    $0x3,%ecx
5afb05:	8a 04 08             	mov    (%eax,%ecx,1),%al
5afb08:	83 e2 07             	and    $0x7,%edx
5afb0b:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5afb11:	22 04 11             	and    (%ecx,%edx,1),%al
5afb14:	25 ff 00 00 00       	and    $0xff,%eax
5afb19:	c3                   	ret
5afb1a:	8b c0                	mov    %eax,%eax
5afb1c:	53                   	push   %ebx
5afb1d:	8b da                	mov    %edx,%ebx
5afb1f:	c1 eb 03             	shr    $0x3,%ebx
5afb22:	03 d8                	add    %eax,%ebx
5afb24:	8b c3                	mov    %ebx,%eax
5afb26:	85 c9                	test   %ecx,%ecx
5afb28:	74 10                	je     0x5afb3a
5afb2a:	83 e2 07             	and    $0x7,%edx
5afb2d:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5afb33:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5afb36:	08 10                	or     %dl,(%eax)
5afb38:	5b                   	pop    %ebx
5afb39:	c3                   	ret
5afb3a:	83 e2 07             	and    $0x7,%edx
5afb3d:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5afb43:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5afb46:	f6 d2                	not    %dl
5afb48:	20 10                	and    %dl,(%eax)
5afb4a:	5b                   	pop    %ebx
5afb4b:	c3                   	ret
5afb4c:	55                   	push   %ebp
5afb4d:	8b ec                	mov    %esp,%ebp
5afb4f:	81 c4 60 ff ff ff    	add    $0xffffff60,%esp
5afb55:	53                   	push   %ebx
5afb56:	56                   	push   %esi
5afb57:	57                   	push   %edi
5afb58:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5afb5b:	89 55 f8             	mov    %edx,-0x8(%ebp)
5afb5e:	89 45 fc             	mov    %eax,-0x4(%ebp)
5afb61:	8b 45 fc             	mov    -0x4(%ebp),%eax
5afb64:	8b 10                	mov    (%eax),%edx
5afb66:	ff 52 08             	call   *0x8(%edx)
5afb69:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5afb6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
5afb6f:	8b 10                	mov    (%eax),%edx
5afb71:	ff 52 0c             	call   *0xc(%edx)
5afb74:	89 45 e0             	mov    %eax,-0x20(%ebp)
5afb77:	b2 01                	mov    $0x1,%dl
5afb79:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5afb7e:	e8 21 7a 04 00       	call   0x5f75a4
5afb83:	89 45 f0             	mov    %eax,-0x10(%ebp)
5afb86:	33 d2                	xor    %edx,%edx
5afb88:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afb8b:	e8 f8 c9 04 00       	call   0x5fc588
5afb90:	dd 45 08             	fldl   0x8(%ebp)
5afb93:	d8 1d ec 01 5b 00    	fcomps 0x5b01ec
5afb99:	df e0                	fnstsw %ax
5afb9b:	9e                   	sahf
5afb9c:	74 3c                	je     0x5afbda
5afb9e:	dd 45 08             	fldl   0x8(%ebp)
5afba1:	d8 1d f0 01 5b 00    	fcomps 0x5b01f0
5afba7:	df e0                	fnstsw %ax
5afba9:	9e                   	sahf
5afbaa:	74 2e                	je     0x5afbda
5afbac:	dd 45 08             	fldl   0x8(%ebp)
5afbaf:	d8 1d f4 01 5b 00    	fcomps 0x5b01f4
5afbb5:	df e0                	fnstsw %ax
5afbb7:	9e                   	sahf
5afbb8:	74 20                	je     0x5afbda
5afbba:	dd 45 08             	fldl   0x8(%ebp)
5afbbd:	d8 1d f8 01 5b 00    	fcomps 0x5b01f8
5afbc3:	df e0                	fnstsw %ax
5afbc5:	9e                   	sahf
5afbc6:	74 12                	je     0x5afbda
5afbc8:	dd 45 08             	fldl   0x8(%ebp)
5afbcb:	d8 1d fc 01 5b 00    	fcomps 0x5b01fc
5afbd1:	df e0                	fnstsw %ax
5afbd3:	9e                   	sahf
5afbd4:	0f 85 f2 02 00 00    	jne    0x5afecc
5afbda:	dd 45 08             	fldl   0x8(%ebp)
5afbdd:	d8 1d ec 01 5b 00    	fcomps 0x5b01ec
5afbe3:	df e0                	fnstsw %ax
5afbe5:	9e                   	sahf
5afbe6:	0f 85 b1 00 00 00    	jne    0x5afc9d
5afbec:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5afbef:	89 45 e8             	mov    %eax,-0x18(%ebp)
5afbf2:	8b 75 e0             	mov    -0x20(%ebp),%esi
5afbf5:	6a 01                	push   $0x1
5afbf7:	8b ce                	mov    %esi,%ecx
5afbf9:	8b 55 e8             	mov    -0x18(%ebp),%edx
5afbfc:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afbff:	8b 18                	mov    (%eax),%ebx
5afc01:	ff 53 24             	call   *0x24(%ebx)
5afc04:	6a 00                	push   $0x0
5afc06:	6a 00                	push   $0x0
5afc08:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afc0b:	e8 b8 c3 04 00       	call   0x5fbfc8
5afc10:	8b 45 e0             	mov    -0x20(%ebp),%eax
5afc13:	48                   	dec    %eax
5afc14:	85 c0                	test   %eax,%eax
5afc16:	0f 8c b3 05 00 00    	jl     0x5b01cf
5afc1c:	40                   	inc    %eax
5afc1d:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
5afc23:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
5afc2a:	8b 55 e0             	mov    -0x20(%ebp),%edx
5afc2d:	2b 55 d8             	sub    -0x28(%ebp),%edx
5afc30:	4a                   	dec    %edx
5afc31:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afc34:	8b 08                	mov    (%eax),%ecx
5afc36:	ff 11                	call   *(%ecx)
5afc38:	89 45 8c             	mov    %eax,-0x74(%ebp)
5afc3b:	8b 45 d8             	mov    -0x28(%ebp),%eax
5afc3e:	83 e0 07             	and    $0x7,%eax
5afc41:	8b 15 88 6d 6a 00    	mov    0x6a6d88,%edx
5afc47:	0f b6 04 02          	movzbl (%edx,%eax,1),%eax
5afc4b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5afc4e:	8b 7d d8             	mov    -0x28(%ebp),%edi
5afc51:	c1 ef 03             	shr    $0x3,%edi
5afc54:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5afc57:	4e                   	dec    %esi
5afc58:	85 f6                	test   %esi,%esi
5afc5a:	7c 31                	jl     0x5afc8d
5afc5c:	46                   	inc    %esi
5afc5d:	33 db                	xor    %ebx,%ebx
5afc5f:	8b d3                	mov    %ebx,%edx
5afc61:	8b 45 fc             	mov    -0x4(%ebp),%eax
5afc64:	8b 08                	mov    (%eax),%ecx
5afc66:	ff 11                	call   *(%ecx)
5afc68:	0f b6 04 38          	movzbl (%eax,%edi,1),%eax
5afc6c:	23 45 d4             	and    -0x2c(%ebp),%eax
5afc6f:	74 18                	je     0x5afc89
5afc71:	8b c3                	mov    %ebx,%eax
5afc73:	c1 e8 03             	shr    $0x3,%eax
5afc76:	03 45 8c             	add    -0x74(%ebp),%eax
5afc79:	8b d3                	mov    %ebx,%edx
5afc7b:	83 e2 07             	and    $0x7,%edx
5afc7e:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5afc84:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5afc87:	08 10                	or     %dl,(%eax)
5afc89:	43                   	inc    %ebx
5afc8a:	4e                   	dec    %esi
5afc8b:	75 d2                	jne    0x5afc5f
5afc8d:	ff 45 d8             	incl   -0x28(%ebp)
5afc90:	ff 8d 78 ff ff ff    	decl   -0x88(%ebp)
5afc96:	75 92                	jne    0x5afc2a
5afc98:	e9 32 05 00 00       	jmp    0x5b01cf
5afc9d:	dd 45 08             	fldl   0x8(%ebp)
5afca0:	d8 1d f0 01 5b 00    	fcomps 0x5b01f0
5afca6:	df e0                	fnstsw %ax
5afca8:	9e                   	sahf
5afca9:	74 12                	je     0x5afcbd
5afcab:	dd 45 08             	fldl   0x8(%ebp)
5afcae:	d8 1d f4 01 5b 00    	fcomps 0x5b01f4
5afcb4:	df e0                	fnstsw %ax
5afcb6:	9e                   	sahf
5afcb7:	0f 85 b1 00 00 00    	jne    0x5afd6e
5afcbd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5afcc0:	89 45 e8             	mov    %eax,-0x18(%ebp)
5afcc3:	8b 75 e0             	mov    -0x20(%ebp),%esi
5afcc6:	6a 01                	push   $0x1
5afcc8:	8b ce                	mov    %esi,%ecx
5afcca:	8b 55 e8             	mov    -0x18(%ebp),%edx
5afccd:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afcd0:	8b 18                	mov    (%eax),%ebx
5afcd2:	ff 53 24             	call   *0x24(%ebx)
5afcd5:	6a 00                	push   $0x0
5afcd7:	6a 00                	push   $0x0
5afcd9:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afcdc:	e8 e7 c2 04 00       	call   0x5fbfc8
5afce1:	8b 45 e0             	mov    -0x20(%ebp),%eax
5afce4:	48                   	dec    %eax
5afce5:	85 c0                	test   %eax,%eax
5afce7:	0f 8c e2 04 00 00    	jl     0x5b01cf
5afced:	40                   	inc    %eax
5afcee:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
5afcf4:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
5afcfb:	8b 55 d8             	mov    -0x28(%ebp),%edx
5afcfe:	8b 45 f0             	mov    -0x10(%ebp),%eax
5afd01:	8b 08                	mov    (%eax),%ecx
5afd03:	ff 11                	call   *(%ecx)
5afd05:	89 45 8c             	mov    %eax,-0x74(%ebp)
5afd08:	8b 45 d8             	mov    -0x28(%ebp),%eax
5afd0b:	83 e0 07             	and    $0x7,%eax
5afd0e:	8b 15 88 6d 6a 00    	mov    0x6a6d88,%edx
5afd14:	0f b6 04 02          	movzbl (%edx,%eax,1),%eax
5afd18:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5afd1b:	8b 7d d8             	mov    -0x28(%ebp),%edi
5afd1e:	c1 ef 03             	shr    $0x3,%edi
5afd21:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5afd24:	4e                   	dec    %esi
5afd25:	85 f6                	test   %esi,%esi
5afd27:	7c 35                	jl     0x5afd5e
5afd29:	46                   	inc    %esi
5afd2a:	33 db                	xor    %ebx,%ebx
5afd2c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5afd2f:	2b d3                	sub    %ebx,%edx
5afd31:	4a                   	dec    %edx
5afd32:	8b 45 fc             	mov    -0x4(%ebp),%eax
5afd35:	8b 08                	mov    (%eax),%ecx
5afd37:	ff 11                	call   *(%ecx)
5afd39:	0f b6 04 38          	movzbl (%eax,%edi,1),%eax
5afd3d:	23 45 d4             	and    -0x2c(%ebp),%eax
5afd40:	74 18                	je     0x5afd5a
5afd42:	8b c3                	mov    %ebx,%eax
5afd44:	c1 e8 03             	shr    $0x3,%eax
5afd47:	03 45 8c             	add    -0x74(%ebp),%eax
5afd4a:	8b d3                	mov    %ebx,%edx
5afd4c:	83 e2 07             	and    $0x7,%edx
5afd4f:	8b 0d 88 6d 6a 00    	mov    0x6a6d88,%ecx
5afd55:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5afd58:	08 10                	or     %dl,(%eax)
5afd5a:	43                   	inc    %ebx
5afd5b:	4e                   	dec    %esi
5afd5c:	75 ce                	jne    0x5afd2c
5afd5e:	ff 45 d8             	incl   -0x28(%ebp)
5afd61:	ff 8d 78 ff ff ff    	decl   -0x88(%ebp)
5afd67:	75 92                	jne    0x5afcfb
5afd69:	e9 61 04 00 00       	jmp    0x5b01cf
5afd6e:	dd 45 08             	fldl   0x8(%ebp)
5afd71:	d8 1d f8 01 5b 00    	fcomps 0x5b01f8
5afd77:	df e0                	fnstsw %ax
5afd79:	9e                   	sahf
5afd7a:	74 12                	je     0x5afd8e
5afd7c:	dd 45 08             	fldl   0x8(%ebp)
5afd7f:	d8 1d fc 01 5b 00    	fcomps 0x5b01fc
5afd85:	df e0                	fnstsw %ax
5afd87:	9e                   	sahf
5afd88:	0f 85 41 04 00 00    	jne    0x5b01cf
5afd8e:	8b 45 e0             	mov    -0x20(%ebp),%eax
5afd91:	89 45 e8             	mov    %eax,-0x18(%ebp)
5afd94:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5afd97:	6a 01                	push   $0x1
5afd99:	8b ce                	mov    %esi,%ecx