419639:	0f 8e c8 02 00 00    	jle    0x419907
41963f:	89 44 24 40          	mov    %eax,0x40(%esp)
419643:	8b c5                	mov    %ebp,%eax
419645:	e8 7e fc ff ff       	call   0x4192c8
41964a:	8b 98 68 04 00 00    	mov    0x468(%eax),%ebx
419650:	4b                   	dec    %ebx
419651:	85 db                	test   %ebx,%ebx
419653:	0f 8c b9 00 00 00    	jl     0x419712
419659:	43                   	inc    %ebx
41965a:	33 f6                	xor    %esi,%esi
41965c:	8b 44 24 3c          	mov    0x3c(%esp),%eax
419660:	8d 3c b0             	lea    (%eax,%esi,4),%edi
419663:	8b c5                	mov    %ebp,%eax
419665:	e8 5e fc ff ff       	call   0x4192c8
41966a:	8b 44 24 34          	mov    0x34(%esp),%eax
41966e:	0f b6 04 30          	movzbl (%eax,%esi,1),%eax
419672:	8b 54 24 38          	mov    0x38(%esp),%edx
419676:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
41967a:	f7 ea                	imul   %edx
41967c:	05 ff 00 00 00       	add    $0xff,%eax
419681:	8b 54 24 38          	mov    0x38(%esp),%edx
419685:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
419689:	b9 ff 00 00 00       	mov    $0xff,%ecx
41968e:	2b ca                	sub    %edx,%ecx
419690:	33 d2                	xor    %edx,%edx
419692:	8a 57 02             	mov    0x2(%edi),%dl
419695:	0f af ca             	imul   %edx,%ecx
419698:	03 c1                	add    %ecx,%eax
41969a:	c1 e8 08             	shr    $0x8,%eax
41969d:	88 47 02             	mov    %al,0x2(%edi)
4196a0:	8b 44 24 34          	mov    0x34(%esp),%eax
4196a4:	0f b6 04 30          	movzbl (%eax,%esi,1),%eax
4196a8:	8b 54 24 38          	mov    0x38(%esp),%edx
4196ac:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
4196b0:	f7 ea                	imul   %edx
4196b2:	05 ff 00 00 00       	add    $0xff,%eax
4196b7:	8b 54 24 38          	mov    0x38(%esp),%edx
4196bb:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
4196bf:	b9 ff 00 00 00       	mov    $0xff,%ecx
4196c4:	2b ca                	sub    %edx,%ecx
4196c6:	33 d2                	xor    %edx,%edx
4196c8:	8a 57 01             	mov    0x1(%edi),%dl
4196cb:	0f af ca             	imul   %edx,%ecx
4196ce:	03 c1                	add    %ecx,%eax
4196d0:	c1 e8 08             	shr    $0x8,%eax
4196d3:	88 47 01             	mov    %al,0x1(%edi)
4196d6:	8b 44 24 34          	mov    0x34(%esp),%eax
4196da:	0f b6 04 30          	movzbl (%eax,%esi,1),%eax
4196de:	8b 54 24 38          	mov    0x38(%esp),%edx
4196e2:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
4196e6:	f7 ea                	imul   %edx
4196e8:	05 ff 00 00 00       	add    $0xff,%eax
4196ed:	8b 54 24 38          	mov    0x38(%esp),%edx
4196f1:	0f b6 14 32          	movzbl (%edx,%esi,1),%edx
4196f5:	b9 ff 00 00 00       	mov    $0xff,%ecx
4196fa:	2b ca                	sub    %edx,%ecx
4196fc:	33 d2                	xor    %edx,%edx
4196fe:	8a 17                	mov    (%edi),%dl
419700:	0f af ca             	imul   %edx,%ecx
419703:	03 c1                	add    %ecx,%eax
419705:	c1 e8 08             	shr    $0x8,%eax
419708:	88 07                	mov    %al,(%edi)
41970a:	46                   	inc    %esi
41970b:	4b                   	dec    %ebx
41970c:	0f 85 4a ff ff ff    	jne    0x41965c
419712:	8b 44 24 28          	mov    0x28(%esp),%eax
419716:	01 44 24 3c          	add    %eax,0x3c(%esp)
41971a:	8b 44 24 2c          	mov    0x2c(%esp),%eax
41971e:	29 44 24 34          	sub    %eax,0x34(%esp)
419722:	8b 44 24 30          	mov    0x30(%esp),%eax
419726:	01 44 24 38          	add    %eax,0x38(%esp)
41972a:	ff 4c 24 40          	decl   0x40(%esp)
41972e:	0f 85 0f ff ff ff    	jne    0x419643
419734:	e9 ce 01 00 00       	jmp    0x419907
419739:	8b c5                	mov    %ebp,%eax
41973b:	8b 15 90 99 41 00    	mov    0x419990,%edx
419741:	e8 96 07 00 00       	call   0x419edc
419746:	89 44 24 14          	mov    %eax,0x14(%esp)
41974a:	8b c5                	mov    %ebp,%eax
41974c:	8b 15 94 99 41 00    	mov    0x419994,%edx
419752:	e8 85 07 00 00       	call   0x419edc
419757:	89 44 24 18          	mov    %eax,0x18(%esp)
41975b:	8b c5                	mov    %ebp,%eax
41975d:	e8 66 fb ff ff       	call   0x4192c8
419762:	8b 80 6c 04 00 00    	mov    0x46c(%eax),%eax
419768:	85 c0                	test   %eax,%eax
41976a:	0f 8e 97 01 00 00    	jle    0x419907
419770:	89 44 24 40          	mov    %eax,0x40(%esp)
419774:	33 f6                	xor    %esi,%esi
419776:	8b 44 24 34          	mov    0x34(%esp),%eax
41977a:	89 44 24 24          	mov    %eax,0x24(%esp)
41977e:	33 c0                	xor    %eax,%eax
419780:	89 44 24 20          	mov    %eax,0x20(%esp)
419784:	8b c5                	mov    %ebp,%eax
419786:	e8 3d fb ff ff       	call   0x4192c8
41978b:	8a 80 70 04 00 00    	mov    0x470(%eax),%al
419791:	fe c8                	dec    %al
419793:	74 0a                	je     0x41979f
419795:	fe c8                	dec    %al
419797:	74 2c                	je     0x4197c5
419799:	2c 02                	sub    $0x2,%al
41979b:	74 28                	je     0x4197c5
41979d:	eb 51                	jmp    0x4197f0
41979f:	8b c6                	mov    %esi,%eax
4197a1:	25 07 00 00 80       	and    $0x80000007,%eax
4197a6:	79 05                	jns    0x4197ad
4197a8:	48                   	dec    %eax
4197a9:	83 c8 f8             	or     $0xfffffff8,%eax
4197ac:	40                   	inc    %eax
4197ad:	b9 07 00 00 00       	mov    $0x7,%ecx
4197b2:	2b c8                	sub    %eax,%ecx
4197b4:	8b 44 24 24          	mov    0x24(%esp),%eax
4197b8:	0f b6 00             	movzbl (%eax),%eax
4197bb:	d3 e8                	shr    %cl,%eax
4197bd:	24 01                	and    $0x1,%al
4197bf:	88 44 24 1c          	mov    %al,0x1c(%esp)
4197c3:	eb 35                	jmp    0x4197fa
4197c5:	8b c6                	mov    %esi,%eax
4197c7:	25 01 00 00 80       	and    $0x80000001,%eax
4197cc:	79 05                	jns    0x4197d3
4197ce:	48                   	dec    %eax
4197cf:	83 c8 fe             	or     $0xfffffffe,%eax
4197d2:	40                   	inc    %eax
4197d3:	ba 01 00 00 00       	mov    $0x1,%edx
4197d8:	2b d0                	sub    %eax,%edx
4197da:	8b ca                	mov    %edx,%ecx
4197dc:	c1 e1 02             	shl    $0x2,%ecx
4197df:	8b 44 24 24          	mov    0x24(%esp),%eax
4197e3:	0f b6 00             	movzbl (%eax),%eax
4197e6:	d3 e8                	shr    %cl,%eax
4197e8:	24 0f                	and    $0xf,%al
4197ea:	88 44 24 1c          	mov    %al,0x1c(%esp)
4197ee:	eb 0a                	jmp    0x4197fa
4197f0:	8b 44 24 24          	mov    0x24(%esp),%eax
4197f4:	8a 00                	mov    (%eax),%al
4197f6:	88 44 24 1c          	mov    %al,0x1c(%esp)
4197fa:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4197fe:	8d 3c b0             	lea    (%eax,%esi,4),%edi
419801:	33 c0                	xor    %eax,%eax
419803:	8a 44 24 1c          	mov    0x1c(%esp),%al
419807:	8b 54 24 14          	mov    0x14(%esp),%edx
41980b:	8a 5c 02 29          	mov    0x29(%edx,%eax,1),%bl
41980f:	8b 44 24 18          	mov    0x18(%esp),%eax
419813:	8a 54 24 1c          	mov    0x1c(%esp),%dl
419817:	e8 50 f4 ff ff       	call   0x418c6c
41981c:	c1 e8 10             	shr    $0x10,%eax
41981f:	25 ff 00 00 00       	and    $0xff,%eax
419824:	33 d2                	xor    %edx,%edx
419826:	8a d3                	mov    %bl,%dl
419828:	f7 ea                	imul   %edx
41982a:	05 ff 00 00 00       	add    $0xff,%eax
41982f:	33 d2                	xor    %edx,%edx
419831:	8a d3                	mov    %bl,%dl
419833:	b9 ff 00 00 00       	mov    $0xff,%ecx
419838:	2b ca                	sub    %edx,%ecx
41983a:	33 d2                	xor    %edx,%edx
41983c:	8a 57 02             	mov    0x2(%edi),%dl
41983f:	0f af ca             	imul   %edx,%ecx
419842:	03 c1                	add    %ecx,%eax
419844:	c1 e8 08             	shr    $0x8,%eax
419847:	88 47 02             	mov    %al,0x2(%edi)
41984a:	8b 44 24 18          	mov    0x18(%esp),%eax
41984e:	8a 54 24 1c          	mov    0x1c(%esp),%dl
419852:	e8 15 f4 ff ff       	call   0x418c6c
419857:	c1 e8 08             	shr    $0x8,%eax
41985a:	25 ff 00 00 00       	and    $0xff,%eax
41985f:	33 d2                	xor    %edx,%edx
419861:	8a d3                	mov    %bl,%dl
419863:	f7 ea                	imul   %edx
419865:	05 ff 00 00 00       	add    $0xff,%eax
41986a:	33 d2                	xor    %edx,%edx
41986c:	8a d3                	mov    %bl,%dl
41986e:	b9 ff 00 00 00       	mov    $0xff,%ecx
419873:	2b ca                	sub    %edx,%ecx
419875:	33 d2                	xor    %edx,%edx
419877:	8a 57 01             	mov    0x1(%edi),%dl
41987a:	0f af ca             	imul   %edx,%ecx
41987d:	03 c1                	add    %ecx,%eax
41987f:	c1 e8 08             	shr    $0x8,%eax
419882:	88 47 01             	mov    %al,0x1(%edi)
419885:	8b 44 24 18          	mov    0x18(%esp),%eax
419889:	8a 54 24 1c          	mov    0x1c(%esp),%dl
41988d:	e8 da f3 ff ff       	call   0x418c6c
419892:	25 ff 00 00 00       	and    $0xff,%eax
419897:	33 d2                	xor    %edx,%edx
419899:	8a d3                	mov    %bl,%dl
41989b:	f7 ea                	imul   %edx
41989d:	05 ff 00 00 00       	add    $0xff,%eax
4198a2:	33 d2                	xor    %edx,%edx
4198a4:	8a d3                	mov    %bl,%dl
4198a6:	b9 ff 00 00 00       	mov    $0xff,%ecx
4198ab:	2b ca                	sub    %edx,%ecx
4198ad:	33 d2                	xor    %edx,%edx
4198af:	8a 17                	mov    (%edi),%dl
4198b1:	0f af ca             	imul   %edx,%ecx
4198b4:	03 c1                	add    %ecx,%eax
4198b6:	c1 e8 08             	shr    $0x8,%eax
4198b9:	88 07                	mov    %al,(%edi)
4198bb:	46                   	inc    %esi
4198bc:	8b c5                	mov    %ebp,%eax
4198be:	e8 05 fa ff ff       	call   0x4192c8
4198c3:	0f b7 40 3f          	movzwl 0x3f(%eax),%eax
4198c7:	01 44 24 20          	add    %eax,0x20(%esp)
4198cb:	83 7c 24 20 08       	cmpl   $0x8,0x20(%esp)
4198d0:	0f 8c ae fe ff ff    	jl     0x419784
4198d6:	ff 44 24 24          	incl   0x24(%esp)
4198da:	8b c5                	mov    %ebp,%eax
4198dc:	e8 e7 f9 ff ff       	call   0x4192c8
4198e1:	3b b0 68 04 00 00    	cmp    0x468(%eax),%esi
4198e7:	0f 8c 91 fe ff ff    	jl     0x41977e
4198ed:	8b 44 24 28          	mov    0x28(%esp),%eax
4198f1:	01 44 24 3c          	add    %eax,0x3c(%esp)
4198f5:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4198f9:	29 44 24 34          	sub    %eax,0x34(%esp)
4198fd:	ff 4c 24 40          	decl   0x40(%esp)
419901:	0f 85 6d fe ff ff    	jne    0x419774
419907:	68 20 00 cc 00       	push   $0xcc0020
41990c:	8b c5                	mov    %ebp,%eax
41990e:	e8 b5 f9 ff ff       	call   0x4192c8
419913:	8b 80 6c 04 00 00    	mov    0x46c(%eax),%eax
419919:	50                   	push   %eax
41991a:	8b c5                	mov    %ebp,%eax
41991c:	e8 a7 f9 ff ff       	call   0x4192c8
419921:	8b 80 68 04 00 00    	mov    0x468(%eax),%eax
419927:	50                   	push   %eax
419928:	6a 00                	push   $0x0
41992a:	6a 00                	push   $0x0
41992c:	8b 44 24 18          	mov    0x18(%esp),%eax
419930:	50                   	push   %eax
419931:	8b c5                	mov    %ebp,%eax
419933:	e8 90 f9 ff ff       	call   0x4192c8
419938:	8b 80 6c 04 00 00    	mov    0x46c(%eax),%eax
41993e:	50                   	push   %eax
41993f:	8b c5                	mov    %ebp,%eax
419941:	e8 82 f9 ff ff       	call   0x4192c8
419946:	8b 80 68 04 00 00    	mov    0x468(%eax),%eax
41994c:	50                   	push   %eax
41994d:	8b 44 24 68          	mov    0x68(%esp),%eax
419951:	50                   	push   %eax
419952:	8b 44 24 68          	mov    0x68(%esp),%eax
419956:	50                   	push   %eax
419957:	8b 44 24 28          	mov    0x28(%esp),%eax
41995b:	50                   	push   %eax
41995c:	e8 4f b0 fe ff       	call   0x4049b0
419961:	8b 44 24 0c          	mov    0xc(%esp),%eax
419965:	50                   	push   %eax
419966:	8b 44 24 08          	mov    0x8(%esp),%eax
41996a:	50                   	push   %eax
41996b:	e8 e8 af fe ff       	call   0x404958
419970:	8b 44 24 10          	mov    0x10(%esp),%eax
419974:	50                   	push   %eax
419975:	e8 86 af fe ff       	call   0x404900
41997a:	8b 44 24 04          	mov    0x4(%esp),%eax
41997e:	50                   	push   %eax
41997f:	e8 74 af fe ff       	call   0x4048f8
419984:	81 c4 80 00 00 00    	add    $0x80,%esp
41998a:	5d                   	pop    %ebp
41998b:	5f                   	pop    %edi
41998c:	5e                   	pop    %esi
41998d:	5b                   	pop    %ebx
41998e:	c3                   	ret
41998f:	00 74 52 4e          	add    %dh,0x4e(%edx,%edx,2)
419993:	53                   	push   %ebx
419994:	50                   	push   %eax
419995:	4c                   	dec    %esp
419996:	54                   	push   %esp
419997:	45                   	inc    %ebp
419998:	55                   	push   %ebp
419999:	8b ec                	mov    %esp,%ebp
41999b:	83 c4 e8             	add    $0xffffffe8,%esp
41999e:	53                   	push   %ebx
41999f:	56                   	push   %esi
4199a0:	57                   	push   %edi
4199a1:	8b f1                	mov    %ecx,%esi
4199a3:	89 55 fc             	mov    %edx,-0x4(%ebp)
4199a6:	8b d8                	mov    %eax,%ebx
4199a8:	8b 7d 14             	mov    0x14(%ebp),%edi
4199ab:	8b c3                	mov    %ebx,%eax
4199ad:	e8 16 f9 ff ff       	call   0x4192c8
4199b2:	89 45 f8             	mov    %eax,-0x8(%ebp)
4199b5:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4199b9:	0f 84 a7 00 00 00    	je     0x419a66
4199bf:	8b c3                	mov    %ebx,%eax
4199c1:	e8 52 04 00 00       	call   0x419e18
4199c6:	2c 02                	sub    $0x2,%al
4199c8:	75 3e                	jne    0x419a08
4199ca:	8b c3                	mov    %ebx,%eax
4199cc:	e8 83 f8 ff ff       	call   0x419254
4199d1:	03 c7                	add    %edi,%eax
4199d3:	8b 55 0c             	mov    0xc(%ebp),%edx
4199d6:	e8 cd b6 fe ff       	call   0x4050a8
4199db:	50                   	push   %eax
4199dc:	8b c3                	mov    %ebx,%eax
4199de:	e8 95 f8 ff ff       	call   0x419278
4199e3:	03 c6                	add    %esi,%eax
4199e5:	8b 55 10             	mov    0x10(%ebp),%edx
4199e8:	e8 bb b6 fe ff       	call   0x4050a8
4199ed:	50                   	push   %eax
4199ee:	57                   	push   %edi
4199ef:	56                   	push   %esi
4199f0:	8d 45 e8             	lea    -0x18(%ebp),%eax
4199f3:	50                   	push   %eax
4199f4:	e8 93 07 ff ff       	call   0x40a18c
4199f9:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4199fc:	8b c3                	mov    %ebx,%eax
4199fe:	8b 55 fc             	mov    -0x4(%ebp),%edx
419a01:	e8 ee f8 ff ff       	call   0x4192f4
419a06:	eb 5e                	jmp    0x419a66
419a08:	8b c3                	mov    %ebx,%eax
419a0a:	e8 b9 f8 ff ff       	call   0x4192c8
419a0f:	83 c0 31             	add    $0x31,%eax
419a12:	50                   	push   %eax
419a13:	8b c3                	mov    %ebx,%eax
419a15:	e8 3a f8 ff ff       	call   0x419254
419a1a:	03 c7                	add    %edi,%eax
419a1c:	8b 55 0c             	mov    0xc(%ebp),%edx
419a1f:	e8 84 b6 fe ff       	call   0x4050a8
419a24:	50                   	push   %eax
419a25:	8b c3                	mov    %ebx,%eax
419a27:	e8 4c f8 ff ff       	call   0x419278
419a2c:	03 c6                	add    %esi,%eax
419a2e:	8b 55 10             	mov    0x10(%ebp),%edx
419a31:	e8 72 b6 fe ff       	call   0x4050a8
419a36:	50                   	push   %eax
419a37:	57                   	push   %edi
419a38:	56                   	push   %esi
419a39:	8d 45 e8             	lea    -0x18(%ebp),%eax
419a3c:	50                   	push   %eax
419a3d:	e8 4a 07 ff ff       	call   0x40a18c
419a42:	8d 45 e8             	lea    -0x18(%ebp),%eax
419a45:	50                   	push   %eax
419a46:	8b 45 08             	mov    0x8(%ebp),%eax
419a49:	e8 16 0a ff ff       	call   0x40a464
419a4e:	50                   	push   %eax
419a4f:	8b 45 f8             	mov    -0x8(%ebp),%eax
419a52:	8d 48 31             	lea    0x31(%eax),%ecx
419a55:	8b 45 f8             	mov    -0x8(%ebp),%eax
419a58:	8b 90 60 04 00 00    	mov    0x460(%eax),%edx
419a5e:	8b 45 fc             	mov    -0x4(%ebp),%eax
419a61:	e8 9e bb ff ff       	call   0x415604
419a66:	5f                   	pop    %edi
419a67:	5e                   	pop    %esi
419a68:	5b                   	pop    %ebx
419a69:	8b e5                	mov    %ebp,%esp
419a6b:	5d                   	pop    %ebp
419a6c:	c2 10 00             	ret    $0x10
419a6f:	90                   	nop
419a70:	55                   	push   %ebp
419a71:	8b ec                	mov    %esp,%ebp
419a73:	83 c4 c8             	add    $0xffffffc8,%esp