401624:	8b 41 04             	mov    0x4(%ecx),%eax
401627:	8b 30                	mov    (%eax),%esi
401629:	8b ce                	mov    %esi,%ecx
40162b:	e8 3c 7d 00 00       	call   0x40936c
401630:	8b 46 08             	mov    0x8(%esi),%eax
401633:	68 00 dc 49 00       	push   $0x49dc00
401638:	8b 30                	mov    (%eax),%esi
40163a:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
40163e:	89 74 24 14          	mov    %esi,0x14(%esp)
401642:	e8 de 12 00 00       	call   0x402925
401647:	8b 5d 0c             	mov    0xc(%ebp),%ebx
40164a:	8b cb                	mov    %ebx,%ecx
40164c:	e8 cf 15 01 00       	call   0x412c20
401651:	83 23 00             	andl   $0x0,(%ebx)
401654:	8d 87 0c 01 00 00    	lea    0x10c(%edi),%eax
40165a:	89 44 24 44          	mov    %eax,0x44(%esp)
40165e:	8d 87 01 01 00 00    	lea    0x101(%edi),%eax
401664:	89 44 24 50          	mov    %eax,0x50(%esp)
401668:	8d 87 02 01 00 00    	lea    0x102(%edi),%eax
40166e:	89 44 24 5c          	mov    %eax,0x5c(%esp)
401672:	8d 87 10 01 00 00    	lea    0x110(%edi),%eax
401678:	89 84 24 b0 00 00 00 	mov    %eax,0xb0(%esp)
40167f:	8d 87 14 01 00 00    	lea    0x114(%edi),%eax
401685:	89 84 24 bc 00 00 00 	mov    %eax,0xbc(%esp)
40168c:	8d 87 18 01 00 00    	lea    0x118(%edi),%eax
401692:	b9 dc 18 4b 00       	mov    $0x4b18dc,%ecx
401697:	89 84 24 c8 00 00 00 	mov    %eax,0xc8(%esp)
40169e:	8d 87 04 01 00 00    	lea    0x104(%edi),%eax
4016a4:	89 4c 24 54          	mov    %ecx,0x54(%esp)
4016a8:	89 4c 24 60          	mov    %ecx,0x60(%esp)
4016ac:	89 8c 24 9c 00 00 00 	mov    %ecx,0x9c(%esp)
4016b3:	b9 20 1a 4b 00       	mov    $0x4b1a20,%ecx
4016b8:	89 84 24 d4 00 00 00 	mov    %eax,0xd4(%esp)
4016bf:	8d 87 03 01 00 00    	lea    0x103(%edi),%eax
4016c5:	ba a8 18 4b 00       	mov    $0x4b18a8,%edx
4016ca:	89 8c 24 b4 00 00 00 	mov    %ecx,0xb4(%esp)
4016d1:	89 8c 24 c0 00 00 00 	mov    %ecx,0xc0(%esp)
4016d8:	89 84 24 e0 00 00 00 	mov    %eax,0xe0(%esp)
4016df:	b9 dc 18 4b 00       	mov    $0x4b18dc,%ecx
4016e4:	8d 87 08 01 00 00    	lea    0x108(%edi),%eax
4016ea:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
4016f1:	c7 44 24 40 88 18 4b 	movl   $0x4b1888,0x40(%esp)
4016f8:	00
4016f9:	89 54 24 48          	mov    %edx,0x48(%esp)
4016fd:	c7 44 24 4c b8 18 4b 	movl   $0x4b18b8,0x4c(%esp)
401704:	00
401705:	c7 44 24 58 e4 18 4b 	movl   $0x4b18e4,0x58(%esp)
40170c:	00
40170d:	c7 44 24 64 08 19 4b 	movl   $0x4b1908,0x64(%esp)
401714:	00
401715:	c7 44 24 68 28 16 4c 	movl   $0x4c1628,0x68(%esp)
40171c:	00
40171d:	c7 44 24 6c 24 19 4b 	movl   $0x4b1924,0x6c(%esp)
401724:	00
401725:	c7 44 24 70 2c 19 4b 	movl   $0x4b192c,0x70(%esp)
40172c:	00
40172d:	c7 44 24 74 2c 16 4c 	movl   $0x4c162c,0x74(%esp)
401734:	00
401735:	89 54 24 78          	mov    %edx,0x78(%esp)
401739:	c7 44 24 7c 48 19 4b 	movl   $0x4b1948,0x7c(%esp)
401740:	00
401741:	c7 84 24 80 00 00 00 	movl   $0x4c163c,0x80(%esp)
401748:	3c 16 4c 00
40174c:	c7 84 24 84 00 00 00 	movl   $0x4b1974,0x84(%esp)
401753:	74 19 4b 00
401757:	c7 84 24 88 00 00 00 	movl   $0x4b1980,0x88(%esp)
40175e:	80 19 4b 00
401762:	c7 84 24 8c 00 00 00 	movl   $0x4c1638,0x8c(%esp)
401769:	38 16 4c 00
40176d:	c7 84 24 90 00 00 00 	movl   $0x4b19a0,0x90(%esp)
401774:	a0 19 4b 00
401778:	c7 84 24 94 00 00 00 	movl   $0x4b19b0,0x94(%esp)
40177f:	b0 19 4b 00
401783:	c7 84 24 98 00 00 00 	movl   $0x4c1634,0x98(%esp)
40178a:	34 16 4c 00
40178e:	c7 84 24 a0 00 00 00 	movl   $0x4b19d0,0xa0(%esp)
401795:	d0 19 4b 00
401799:	c7 84 24 a4 00 00 00 	movl   $0x4c1630,0xa4(%esp)
4017a0:	30 16 4c 00
4017a4:	c7 84 24 a8 00 00 00 	movl   $0x4b19ec,0xa8(%esp)
4017ab:	ec 19 4b 00
4017af:	c7 84 24 ac 00 00 00 	movl   $0x4b1a00,0xac(%esp)
4017b6:	00 1a 4b 00
4017ba:	c7 84 24 b8 00 00 00 	movl   $0x4b1a2c,0xb8(%esp)
4017c1:	2c 1a 4b 00
4017c5:	c7 84 24 c4 00 00 00 	movl   $0x4b1a54,0xc4(%esp)
4017cc:	54 1a 4b 00
4017d0:	c7 84 24 cc 00 00 00 	movl   $0x4b1a7c,0xcc(%esp)
4017d7:	7c 1a 4b 00
4017db:	c7 84 24 d0 00 00 00 	movl   $0x4b1a8c,0xd0(%esp)
4017e2:	8c 1a 4b 00
4017e6:	89 94 24 d8 00 00 00 	mov    %edx,0xd8(%esp)
4017ed:	c7 84 24 dc 00 00 00 	movl   $0x4b1aac,0xdc(%esp)
4017f4:	ac 1a 4b 00
4017f8:	89 8c 24 e4 00 00 00 	mov    %ecx,0xe4(%esp)
4017ff:	c7 84 24 e8 00 00 00 	movl   $0x4b1acc,0xe8(%esp)
401806:	cc 1a 4b 00
40180a:	89 84 24 ec 00 00 00 	mov    %eax,0xec(%esp)
401811:	89 94 24 f0 00 00 00 	mov    %edx,0xf0(%esp)
401818:	8d 87 91 00 00 00    	lea    0x91(%edi),%eax
40181e:	89 84 24 f8 00 00 00 	mov    %eax,0xf8(%esp)
401825:	8d 87 90 00 00 00    	lea    0x90(%edi),%eax
40182b:	89 84 24 04 01 00 00 	mov    %eax,0x104(%esp)
401832:	8d 87 88 00 00 00    	lea    0x88(%edi),%eax
401838:	89 84 24 10 01 00 00 	mov    %eax,0x110(%esp)
40183f:	8d 87 8c 00 00 00    	lea    0x8c(%edi),%eax
401845:	89 84 24 1c 01 00 00 	mov    %eax,0x11c(%esp)
40184c:	8d 87 1c 01 00 00    	lea    0x11c(%edi),%eax
401852:	89 84 24 28 01 00 00 	mov    %eax,0x128(%esp)
401859:	8d 87 98 04 00 00    	lea    0x498(%edi),%eax
40185f:	89 84 24 34 01 00 00 	mov    %eax,0x134(%esp)
401866:	8d 87 fc 02 00 00    	lea    0x2fc(%edi),%eax
40186c:	89 84 24 7c 01 00 00 	mov    %eax,0x17c(%esp)
401873:	8d 87 fd 02 00 00    	lea    0x2fd(%edi),%eax
401879:	89 84 24 88 01 00 00 	mov    %eax,0x188(%esp)
401880:	8d 87 f8 02 00 00    	lea    0x2f8(%edi),%eax
401886:	89 84 24 94 01 00 00 	mov    %eax,0x194(%esp)
40188d:	89 8c 24 fc 00 00 00 	mov    %ecx,0xfc(%esp)
401894:	8d 87 14 03 00 00    	lea    0x314(%edi),%eax
40189a:	89 84 24 ac 01 00 00 	mov    %eax,0x1ac(%esp)
4018a1:	8b 45 08             	mov    0x8(%ebp),%eax
4018a4:	b9 4c 1b 4b 00       	mov    $0x4b1b4c,%ecx
4018a9:	8b 40 04             	mov    0x4(%eax),%eax
4018ac:	ba 24 19 4b 00       	mov    $0x4b1924,%edx
4018b1:	89 8c 24 14 01 00 00 	mov    %ecx,0x114(%esp)
4018b8:	89 8c 24 20 01 00 00 	mov    %ecx,0x120(%esp)
4018bf:	b9 dc 18 4b 00       	mov    $0x4b18dc,%ecx
4018c4:	89 94 24 08 01 00 00 	mov    %edx,0x108(%esp)
4018cb:	89 94 24 44 01 00 00 	mov    %edx,0x144(%esp)
4018d2:	33 d2                	xor    %edx,%edx
4018d4:	89 8c 24 2c 01 00 00 	mov    %ecx,0x12c(%esp)
4018db:	89 8c 24 50 01 00 00 	mov    %ecx,0x150(%esp)
4018e2:	89 8c 24 74 01 00 00 	mov    %ecx,0x174(%esp)
4018e9:	89 8c 24 80 01 00 00 	mov    %ecx,0x180(%esp)
4018f0:	89 8c 24 8c 01 00 00 	mov    %ecx,0x18c(%esp)
4018f7:	8b 08                	mov    (%eax),%ecx
4018f9:	6a 04                	push   $0x4
4018fb:	c7 84 24 f8 00 00 00 	movl   $0x4b1aec,0xf8(%esp)
401902:	ec 1a 4b 00
401906:	c7 84 24 04 01 00 00 	movl   $0x4b1b0c,0x104(%esp)
40190d:	0c 1b 4b 00
401911:	c7 84 24 10 01 00 00 	movl   $0x4b1b30,0x110(%esp)
401918:	30 1b 4b 00
40191c:	c7 84 24 1c 01 00 00 	movl   $0x4b1b58,0x11c(%esp)
401923:	58 1b 4b 00
401927:	c7 84 24 28 01 00 00 	movl   $0x4b1b7c,0x128(%esp)
40192e:	7c 1b 4b 00
401932:	c7 84 24 34 01 00 00 	movl   $0x4b1b94,0x134(%esp)
401939:	94 1b 4b 00
40193d:	c7 84 24 3c 01 00 00 	movl   $0x4b1bac,0x13c(%esp)
401944:	ac 1b 4b 00
401948:	c7 84 24 40 01 00 00 	movl   $0x4b1bbc,0x140(%esp)
40194f:	bc 1b 4b 00
401953:	c7 84 24 44 01 00 00 	movl   $0x4c170e,0x144(%esp)
40195a:	0e 17 4c 00
40195e:	c7 84 24 4c 01 00 00 	movl   $0x4b1bd8,0x14c(%esp)
401965:	d8 1b 4b 00
401969:	c7 84 24 50 01 00 00 	movl   $0x4c10c3,0x150(%esp)
401970:	c3 10 4c 00
401974:	c7 84 24 58 01 00 00 	movl   $0x4b1bf4,0x158(%esp)
40197b:	f4 1b 4b 00
40197f:	89 94 24 5c 01 00 00 	mov    %edx,0x15c(%esp)
401986:	c7 84 24 60 01 00 00 	movl   $0x4b1c10,0x160(%esp)
40198d:	10 1c 4b 00
401991:	c7 84 24 64 01 00 00 	movl   $0x4b1c1c,0x164(%esp)
401998:	1c 1c 4b 00
40199c:	89 94 24 68 01 00 00 	mov    %edx,0x168(%esp)
4019a3:	c7 84 24 6c 01 00 00 	movl   $0x4b1c38,0x16c(%esp)
4019aa:	38 1c 4b 00
4019ae:	c7 84 24 70 01 00 00 	movl   $0x4b1c44,0x170(%esp)
4019b5:	44 1c 4b 00
4019b9:	c7 84 24 74 01 00 00 	movl   $0x4c17a8,0x174(%esp)
4019c0:	a8 17 4c 00
4019c4:	c7 84 24 7c 01 00 00 	movl   $0x4b1c64,0x17c(%esp)
4019cb:	64 1c 4b 00
4019cf:	c7 84 24 88 01 00 00 	movl   $0x4b1c8c,0x188(%esp)
4019d6:	8c 1c 4b 00
4019da:	c7 84 24 94 01 00 00 	movl   $0x4b1cb0,0x194(%esp)
4019e1:	b0 1c 4b 00
4019e5:	c7 84 24 9c 01 00 00 	movl   $0x4b1cd4,0x19c(%esp)
4019ec:	d4 1c 4b 00
4019f0:	c7 84 24 a0 01 00 00 	movl   $0x4b1ce4,0x1a0(%esp)
4019f7:	e4 1c 4b 00
4019fb:	89 94 24 a4 01 00 00 	mov    %edx,0x1a4(%esp)
401a02:	c7 84 24 a8 01 00 00 	movl   $0x4b1d08,0x1a8(%esp)
401a09:	08 1d 4b 00
401a0d:	c7 84 24 ac 01 00 00 	movl   $0x4b1d14,0x1ac(%esp)
401a14:	14 1d 4b 00
401a18:	c7 84 24 b4 01 00 00 	movl   $0x4b1a7c,0x1b4(%esp)
401a1f:	7c 1a 4b 00
401a23:	89 44 24 28          	mov    %eax,0x28(%esp)
401a27:	e8 b8 bb 00 00       	call   0x40d5e4
401a2c:	84 c0                	test   %al,%al
401a2e:	0f 84 df 4e 07 00    	je     0x476913
401a34:	6a 2a                	push   $0x2a
401a36:	58                   	pop    %eax
401a37:	66 39 06             	cmp    %ax,(%esi)
401a3a:	0f 84 d3 4e 07 00    	je     0x476913
401a40:	83 7c 24 1c 01       	cmpl   $0x1,0x1c(%esp)
401a45:	0f 84 68 01 00 00    	je     0x401bb3
401a4b:	8b 74 24 24          	mov    0x24(%esp),%esi
401a4f:	6a 29                	push   $0x29
401a51:	8b 4e 04             	mov    0x4(%esi),%ecx
401a54:	e8 93 01 00 00       	call   0x401bec
401a59:	84 c0                	test   %al,%al
401a5b:	0f 85 5d 01 00 00    	jne    0x401bbe
401a61:	8b 4e 04             	mov    0x4(%esi),%ecx
401a64:	e8 1d b8 00 00       	call   0x40d286
401a69:	89 44 24 18          	mov    %eax,0x18(%esp)
401a6d:	6a 1e                	push   $0x1e
401a6f:	33 db                	xor    %ebx,%ebx
401a71:	5f                   	pop    %edi
401a72:	89 5c 24 20          	mov    %ebx,0x20(%esp)
401a76:	89 7c 24 24          	mov    %edi,0x24(%esp)
401a7a:	8d 34 1f             	lea    (%edi,%ebx,1),%esi
401a7d:	d1 fe                	sar    $1,%esi
401a7f:	8b c6                	mov    %esi,%eax
401a81:	6b c0 0c             	imul   $0xc,%eax,%eax
401a84:	ff 74 04 40          	push   0x40(%esp,%eax,1)
401a88:	ff 74 24 14          	push   0x14(%esp)
401a8c:	e8 16 f5 01 00       	call   0x420fa7
401a91:	59                   	pop    %ecx
401a92:	59                   	pop    %ecx
401a93:	85 c0                	test   %eax,%eax
401a95:	79 09                	jns    0x401aa0
401a97:	8d 7e ff             	lea    -0x1(%esi),%edi
401a9a:	3b df                	cmp    %edi,%ebx
401a9c:	7e dc                	jle    0x401a7a
401a9e:	eb 06                	jmp    0x401aa6
401aa0:	0f 8f 23 01 00 00    	jg     0x401bc9
401aa6:	3b df                	cmp    %edi,%ebx
401aa8:	89 5c 24 20          	mov    %ebx,0x20(%esp)
401aac:	8b 5d 0c             	mov    0xc(%ebp),%ebx
401aaf:	89 7c 24 24          	mov    %edi,0x24(%esp)
401ab3:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
401ab7:	0f 8f 56 4e 07 00    	jg     0x476913
401abd:	83 64 24 14 00       	andl   $0x0,0x14(%esp)
401ac2:	6b f6 0c             	imul   $0xc,%esi,%esi
401ac5:	8b 44 34 48          	mov    0x48(%esp,%esi,1),%eax
401ac9:	89 44 24 38          	mov    %eax,0x38(%esp)
401acd:	0f b7 08             	movzwl (%eax),%ecx
401ad0:	83 f9 64             	cmp    $0x64,%ecx
401ad3:	0f 85 c8 4a 07 00    	jne    0x4765a1
401ad9:	8d 4c 24 20          	lea    0x20(%esp),%ecx
401add:	51                   	push   %ecx
401ade:	8d 54 24 18          	lea    0x18(%esp),%edx
401ae2:	8b c8                	mov    %eax,%ecx
401ae4:	c7 44 24 18 01 00 00 	movl   $0x1,0x18(%esp)
401aeb:	00
401aec:	e8 17 01 00 00       	call   0x401c08
401af1:	59                   	pop    %ecx
401af2:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401af6:	e8 25 11 01 00       	call   0x412c20
401afb:	8b 44 24 20          	mov    0x20(%esp),%eax
401aff:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%esp)
401b06:	00
401b07:	89 44 24 28          	mov    %eax,0x28(%esp)
401b0b:	8b 44 24 14          	mov    0x14(%esp),%eax
401b0f:	8b 4c 34 48          	mov    0x48(%esp,%esi,1),%ecx
401b13:	ff 44 24 14          	incl   0x14(%esp)
401b17:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
401b1b:	83 f8 69             	cmp    $0x69,%eax
401b1e:	0f 8f d8 4d 07 00    	jg     0x4768fc
401b24:	0f 84 7f 4d 07 00    	je     0x4768a9
401b2a:	83 e8 23             	sub    $0x23,%eax
401b2d:	0f 84 ad 4b 07 00    	je     0x4766e0
401b33:	83 e8 30             	sub    $0x30,%eax
401b36:	0f 84 43 4b 07 00    	je     0x47667f
401b3c:	83 e8 0f             	sub    $0xf,%eax
401b3f:	0f 85 da 4a 07 00    	jne    0x47661f
401b45:	8b 44 34 44          	mov    0x44(%esp,%esi,1),%eax
401b49:	8b cb                	mov    %ebx,%ecx
401b4b:	0f b6 30             	movzbl (%eax),%esi
401b4e:	89 44 24 10          	mov    %eax,0x10(%esp)
401b52:	e8 c9 10 01 00       	call   0x412c20
401b57:	83 7c 24 1c 01       	cmpl   $0x1,0x1c(%esp)
401b5c:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
401b63:	89 33                	mov    %esi,(%ebx)
401b65:	76 22                	jbe    0x401b89
401b67:	8b 45 08             	mov    0x8(%ebp),%eax
401b6a:	6a 29                	push   $0x29
401b6c:	8b 48 04             	mov    0x4(%eax),%ecx
401b6f:	8b 49 04             	mov    0x4(%ecx),%ecx
401b72:	e8 75 00 00 00       	call   0x401bec
401b77:	84 c0                	test   %al,%al
401b79:	75 56                	jne    0x401bd1
401b7b:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
401b80:	8b 4c 24 10          	mov    0x10(%esp),%ecx
401b84:	0f 95 c0             	setne  %al
401b87:	88 01                	mov    %al,(%ecx)
401b89:	8b 44 24 14          	mov    0x14(%esp),%eax
401b8d:	8b 74 24 38          	mov    0x38(%esp),%esi
401b91:	8d 34 46             	lea    (%esi,%eax,2),%esi
401b94:	89 74 24 10          	mov    %esi,0x10(%esp)
401b98:	0f b7 06             	movzwl (%esi),%eax
401b9b:	85 c0                	test   %eax,%eax
401b9d:	75 3f                	jne    0x401bde
401b9f:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401ba3:	e8 78 10 01 00       	call   0x412c20
401ba8:	5f                   	pop    %edi
401ba9:	5e                   	pop    %esi
401baa:	33 c0                	xor    %eax,%eax
401bac:	5b                   	pop    %ebx
401bad:	8b e5                	mov    %ebp,%esp
401baf:	5d                   	pop    %ebp
401bb0:	c2 08 00             	ret    $0x8
401bb3:	33 c9                	xor    %ecx,%ecx
401bb5:	89 4c 24 18          	mov    %ecx,0x18(%esp)
401bb9:	e9 af fe ff ff       	jmp    0x401a6d
401bbe:	33 f6                	xor    %esi,%esi
401bc0:	89 74 24 18          	mov    %esi,0x18(%esp)
401bc4:	e9 a4 fe ff ff       	jmp    0x401a6d
401bc9:	8d 5e 01             	lea    0x1(%esi),%ebx
401bcc:	e9 c9 fe ff ff       	jmp    0x401a9a
401bd1:	8d 4c 24 28          	lea    0x28(%esp),%ecx
401bd5:	e8 ac b6 00 00       	call   0x40d286
401bda:	85 c0                	test   %eax,%eax
401bdc:	eb a2                	jmp    0x401b80
401bde:	83 f8 2a             	cmp    $0x2a,%eax
401be1:	0f 84 86 fe ff ff    	je     0x401a6d
401be7:	e9 27 4d 07 00       	jmp    0x476913
401bec:	55                   	push   %ebp
401bed:	8b ec                	mov    %esp,%ebp
401bef:	56                   	push   %esi
401bf0:	6a 0a                	push   $0xa
401bf2:	8b f1                	mov    %ecx,%esi
401bf4:	e8 eb b9 00 00       	call   0x40d5e4
401bf9:	84 c0                	test   %al,%al
401bfb:	0f 85 b8 fe 06 00    	jne    0x471ab9
401c01:	33 c0                	xor    %eax,%eax
401c03:	5e                   	pop    %esi
401c04:	5d                   	pop    %ebp
401c05:	c2 04 00             	ret    $0x4
401c08:	55                   	push   %ebp
401c09:	8b ec                	mov    %esp,%ebp
401c0b:	51                   	push   %ecx
401c0c:	51                   	push   %ecx
401c0d:	56                   	push   %esi
401c0e:	57                   	push   %edi
401c0f:	8b f9                	mov    %ecx,%edi
401c11:	33 c0                	xor    %eax,%eax
401c13:	8b f2                	mov    %edx,%esi
401c15:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
401c1c:	88 45 ff             	mov    %al,-0x1(%ebp)
401c1f:	85 ff                	test   %edi,%edi
401c21:	74 74                	je     0x401c97
401c23:	8b 06                	mov    (%esi),%eax
401c25:	0f b7 04 47          	movzwl (%edi,%eax,2),%eax
401c29:	50                   	push   %eax
401c2a:	e8 a1 fa 01 00       	call   0x4216d0