41561d:	03 c2                	add    %edx,%eax
41561f:	03 c1                	add    %ecx,%eax
415621:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
415627:	83 f8 73             	cmp    $0x73,%eax
41562a:	77 b6                	ja     0x4155e2
41562c:	8d 79 ff             	lea    -0x1(%ecx),%edi
41562f:	48                   	dec    %eax
415630:	89 bd 84 f8 ff ff    	mov    %edi,-0x77c(%ebp)
415636:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
41563c:	3b c7                	cmp    %edi,%eax
41563e:	0f 84 91 00 00 00    	je     0x4156d5
415644:	8b f8                	mov    %eax,%edi
415646:	2b f9                	sub    %ecx,%edi
415648:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
41564e:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
415651:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
415657:	3b fa                	cmp    %edx,%edi
415659:	73 05                	jae    0x415660
41565b:	8b 41 04             	mov    0x4(%ecx),%eax
41565e:	eb 02                	jmp    0x415662
415660:	33 c0                	xor    %eax,%eax
415662:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
415668:	8d 47 ff             	lea    -0x1(%edi),%eax
41566b:	3b c2                	cmp    %edx,%eax
41566d:	73 04                	jae    0x415673
41566f:	8b 01                	mov    (%ecx),%eax
415671:	eb 02                	jmp    0x415675
415673:	33 c0                	xor    %eax,%eax
415675:	23 85 8c f8 ff ff    	and    -0x774(%ebp),%eax
41567b:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
415681:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
415687:	23 95 90 f8 ff ff    	and    -0x770(%ebp),%edx
41568d:	d3 e8                	shr    %cl,%eax
41568f:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
415695:	d3 e2                	shl    %cl,%edx
415697:	8b 8d b8 f8 ff ff    	mov    -0x748(%ebp),%ecx
41569d:	0b c2                	or     %edx,%eax
41569f:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
4156a6:	8b c1                	mov    %ecx,%eax
4156a8:	8b 8d a0 f8 ff ff    	mov    -0x760(%ebp),%ecx
4156ae:	48                   	dec    %eax
4156af:	83 e9 04             	sub    $0x4,%ecx
4156b2:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
4156b8:	4f                   	dec    %edi
4156b9:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
4156bf:	3b 85 84 f8 ff ff    	cmp    -0x77c(%ebp),%eax
4156c5:	74 08                	je     0x4156cf
4156c7:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
4156cd:	eb 88                	jmp    0x415657
4156cf:	8b 8d ac f8 ff ff    	mov    -0x754(%ebp),%ecx
4156d5:	85 c9                	test   %ecx,%ecx
4156d7:	74 0a                	je     0x4156e3
4156d9:	33 c0                	xor    %eax,%eax
4156db:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
4156e1:	f3 ab                	rep stos %eax,%es:(%edi)
4156e3:	8b 85 a8 f8 ff ff    	mov    -0x758(%ebp),%eax
4156e9:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4156ef:	6a 04                	push   $0x4
4156f1:	58                   	pop    %eax
4156f2:	89 85 90 fa ff ff    	mov    %eax,-0x570(%ebp)
4156f8:	50                   	push   %eax
4156f9:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
415700:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415706:	50                   	push   %eax
415707:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
41570d:	89 9d 5c fc ff ff    	mov    %ebx,-0x3a4(%ebp)
415713:	56                   	push   %esi
415714:	50                   	push   %eax
415715:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
41571b:	e8 9e a7 ff ff       	call   0x40febe
415720:	83 c4 10             	add    $0x10,%esp
415723:	e9 ca 03 00 00       	jmp    0x415af2
415728:	8d 8a ce fb ff ff    	lea    -0x432(%edx),%ecx
41572e:	8b f7                	mov    %edi,%esi
415730:	8b c1                	mov    %ecx,%eax
415732:	33 d2                	xor    %edx,%edx
415734:	83 e1 1f             	and    $0x1f,%ecx
415737:	c1 e8 05             	shr    $0x5,%eax
41573a:	2b f1                	sub    %ecx,%esi
41573c:	89 85 98 f8 ff ff    	mov    %eax,-0x768(%ebp)
415742:	89 8d b0 f8 ff ff    	mov    %ecx,-0x750(%ebp)
415748:	8b c3                	mov    %ebx,%eax
41574a:	8b ce                	mov    %esi,%ecx
41574c:	89 b5 84 f8 ff ff    	mov    %esi,-0x77c(%ebp)
415752:	e8 99 3c 00 00       	call   0x4193f0
415757:	8b 95 a0 f8 ff ff    	mov    -0x760(%ebp),%edx
41575d:	48                   	dec    %eax
41575e:	83 a5 b4 f8 ff ff 00 	andl   $0x0,-0x74c(%ebp)
415765:	89 85 8c f8 ff ff    	mov    %eax,-0x774(%ebp)
41576b:	f7 d0                	not    %eax
41576d:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
415773:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
41577a:	0f bd c1             	bsr    %ecx,%eax
41577d:	74 09                	je     0x415788
41577f:	40                   	inc    %eax
415780:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
415786:	eb 07                	jmp    0x41578f
415788:	83 a5 ac f8 ff ff 00 	andl   $0x0,-0x754(%ebp)
41578f:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
415795:	be cc 01 00 00       	mov    $0x1cc,%esi
41579a:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
41579d:	83 f8 73             	cmp    $0x73,%eax
4157a0:	76 2b                	jbe    0x4157cd
4157a2:	33 c0                	xor    %eax,%eax
4157a4:	50                   	push   %eax
4157a5:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
4157ab:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4157b1:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4157b7:	50                   	push   %eax
4157b8:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4157be:	56                   	push   %esi
4157bf:	50                   	push   %eax
4157c0:	e8 f9 a6 ff ff       	call   0x40febe
4157c5:	83 c4 10             	add    $0x10,%esp
4157c8:	e9 e2 00 00 00       	jmp    0x4158af
4157cd:	2b bd ac f8 ff ff    	sub    -0x754(%ebp),%edi
4157d3:	3b bd b0 f8 ff ff    	cmp    -0x750(%ebp),%edi
4157d9:	1b c0                	sbb    %eax,%eax
4157db:	f7 d8                	neg    %eax
4157dd:	03 c2                	add    %edx,%eax
4157df:	03 c1                	add    %ecx,%eax
4157e1:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
4157e7:	83 f8 73             	cmp    $0x73,%eax
4157ea:	77 b6                	ja     0x4157a2
4157ec:	8d 79 ff             	lea    -0x1(%ecx),%edi
4157ef:	48                   	dec    %eax
4157f0:	89 bd b4 f8 ff ff    	mov    %edi,-0x74c(%ebp)
4157f6:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
4157fc:	3b c7                	cmp    %edi,%eax
4157fe:	0f 84 91 00 00 00    	je     0x415895
415804:	8b f8                	mov    %eax,%edi
415806:	2b f9                	sub    %ecx,%edi
415808:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
41580e:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
415811:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
415817:	3b fa                	cmp    %edx,%edi
415819:	73 05                	jae    0x415820
41581b:	8b 41 04             	mov    0x4(%ecx),%eax
41581e:	eb 02                	jmp    0x415822
415820:	33 c0                	xor    %eax,%eax
415822:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
415828:	8d 47 ff             	lea    -0x1(%edi),%eax
41582b:	3b c2                	cmp    %edx,%eax
41582d:	73 04                	jae    0x415833
41582f:	8b 01                	mov    (%ecx),%eax
415831:	eb 02                	jmp    0x415835
415833:	33 c0                	xor    %eax,%eax
415835:	23 85 a8 f8 ff ff    	and    -0x758(%ebp),%eax
41583b:	8b 8d 84 f8 ff ff    	mov    -0x77c(%ebp),%ecx
415841:	8b 95 ac f8 ff ff    	mov    -0x754(%ebp),%edx
415847:	23 95 8c f8 ff ff    	and    -0x774(%ebp),%edx
41584d:	d3 e8                	shr    %cl,%eax
41584f:	8b 8d b0 f8 ff ff    	mov    -0x750(%ebp),%ecx
415855:	d3 e2                	shl    %cl,%edx
415857:	8b 8d b8 f8 ff ff    	mov    -0x748(%ebp),%ecx
41585d:	0b c2                	or     %edx,%eax
41585f:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
415866:	8b c1                	mov    %ecx,%eax
415868:	8b 8d a0 f8 ff ff    	mov    -0x760(%ebp),%ecx
41586e:	48                   	dec    %eax
41586f:	83 e9 04             	sub    $0x4,%ecx
415872:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
415878:	4f                   	dec    %edi
415879:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
41587f:	3b 85 b4 f8 ff ff    	cmp    -0x74c(%ebp),%eax
415885:	74 08                	je     0x41588f
415887:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
41588d:	eb 88                	jmp    0x415817
41588f:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
415895:	85 c9                	test   %ecx,%ecx
415897:	74 0a                	je     0x4158a3
415899:	33 c0                	xor    %eax,%eax
41589b:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
4158a1:	f3 ab                	rep stos %eax,%es:(%edi)
4158a3:	8b 85 90 f8 ff ff    	mov    -0x770(%ebp),%eax
4158a9:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4158af:	c7 85 90 fa ff ff 02 	movl   $0x2,-0x570(%ebp)
4158b6:	00 00 00
4158b9:	6a 04                	push   $0x4
4158bb:	e9 39 fe ff ff       	jmp    0x4156f9
4158c0:	83 fa 35             	cmp    $0x35,%edx
4158c3:	0f 84 14 01 00 00    	je     0x4159dd
4158c9:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
4158d0:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
4158d7:	00 10 00
4158da:	c7 85 8c fa ff ff 02 	movl   $0x2,-0x574(%ebp)
4158e1:	00 00 00
4158e4:	85 f6                	test   %esi,%esi
4158e6:	0f 84 f1 00 00 00    	je     0x4159dd
4158ec:	33 d2                	xor    %edx,%edx
4158ee:	8b 84 15 90 fa ff ff 	mov    -0x570(%ebp,%edx,1),%eax
4158f5:	3b 84 15 30 fe ff ff 	cmp    -0x1d0(%ebp,%edx,1),%eax
4158fc:	0f 85 db 00 00 00    	jne    0x4159dd
415902:	83 c2 04             	add    $0x4,%edx
415905:	83 fa 08             	cmp    $0x8,%edx
415908:	75 e4                	jne    0x4158ee
41590a:	33 db                	xor    %ebx,%ebx
41590c:	0f bd c6             	bsr    %esi,%eax
41590f:	89 9d a8 f8 ff ff    	mov    %ebx,-0x758(%ebp)
415915:	74 03                	je     0x41591a
415917:	40                   	inc    %eax
415918:	eb 02                	jmp    0x41591c
41591a:	8b c3                	mov    %ebx,%eax
41591c:	2b f8                	sub    %eax,%edi
41591e:	83 ff 02             	cmp    $0x2,%edi
415921:	1b f6                	sbb    %esi,%esi
415923:	f7 de                	neg    %esi
415925:	03 f1                	add    %ecx,%esi
415927:	83 fe 73             	cmp    $0x73,%esi
41592a:	76 2a                	jbe    0x415956
41592c:	53                   	push   %ebx
41592d:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415933:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
415939:	50                   	push   %eax
41593a:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
415940:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
415946:	68 cc 01 00 00       	push   $0x1cc
41594b:	50                   	push   %eax
41594c:	e8 6d a5 ff ff       	call   0x40febe
415951:	83 c4 10             	add    $0x10,%esp
415954:	eb 4d                	jmp    0x4159a3
415956:	8d 56 ff             	lea    -0x1(%esi),%edx
415959:	83 fa ff             	cmp    $0xffffffff,%edx
41595c:	74 3f                	je     0x41599d
41595e:	8d 7a ff             	lea    -0x1(%edx),%edi
415961:	3b d1                	cmp    %ecx,%edx
415963:	73 09                	jae    0x41596e
415965:	8b 84 95 30 fe ff ff 	mov    -0x1d0(%ebp,%edx,4),%eax
41596c:	eb 02                	jmp    0x415970
41596e:	8b c3                	mov    %ebx,%eax
415970:	3b f9                	cmp    %ecx,%edi
415972:	73 09                	jae    0x41597d
415974:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
41597b:	eb 02                	jmp    0x41597f
41597d:	8b cb                	mov    %ebx,%ecx
41597f:	c1 e9 1e             	shr    $0x1e,%ecx
415982:	c1 e0 02             	shl    $0x2,%eax
415985:	0b c8                	or     %eax,%ecx
415987:	89 8c 95 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edx,4)
41598e:	4a                   	dec    %edx
41598f:	4f                   	dec    %edi
415990:	83 fa ff             	cmp    $0xffffffff,%edx
415993:	74 08                	je     0x41599d
415995:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
41599b:	eb c4                	jmp    0x415961
41599d:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
4159a3:	bb 35 04 00 00       	mov    $0x435,%ebx
4159a8:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4159ae:	2b 9d b8 f8 ff ff    	sub    -0x748(%ebp),%ebx
4159b4:	8b fb                	mov    %ebx,%edi
4159b6:	c1 ef 05             	shr    $0x5,%edi
4159b9:	8b f7                	mov    %edi,%esi
4159bb:	c1 e6 02             	shl    $0x2,%esi
4159be:	56                   	push   %esi
4159bf:	6a 00                	push   $0x0
4159c1:	50                   	push   %eax
4159c2:	e8 49 37 ff ff       	call   0x409110
4159c7:	83 e3 1f             	and    $0x1f,%ebx
4159ca:	33 c0                	xor    %eax,%eax
4159cc:	40                   	inc    %eax
4159cd:	8b cb                	mov    %ebx,%ecx
4159cf:	d3 e0                	shl    %cl,%eax
4159d1:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
4159d8:	e9 e3 00 00 00       	jmp    0x415ac0
4159dd:	33 c0                	xor    %eax,%eax
4159df:	85 f6                	test   %esi,%esi
4159e1:	0f 95 c0             	setne  %al
4159e4:	83 a5 a8 f8 ff ff 00 	andl   $0x0,-0x758(%ebp)
4159eb:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
4159f2:	8b 84 05 2c fe ff ff 	mov    -0x1d4(%ebp,%eax,1),%eax
4159f9:	0f bd c0             	bsr    %eax,%eax
4159fc:	74 03                	je     0x415a01
4159fe:	40                   	inc    %eax
4159ff:	eb 02                	jmp    0x415a03
415a01:	33 c0                	xor    %eax,%eax
415a03:	2b f8                	sub    %eax,%edi
415a05:	3b fb                	cmp    %ebx,%edi
415a07:	1b f6                	sbb    %esi,%esi
415a09:	f7 de                	neg    %esi
415a0b:	03 f1                	add    %ecx,%esi
415a0d:	83 fe 73             	cmp    $0x73,%esi
415a10:	76 2d                	jbe    0x415a3f
415a12:	83 a5 8c fa ff ff 00 	andl   $0x0,-0x574(%ebp)
415a19:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415a1f:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
415a26:	6a 00                	push   $0x0
415a28:	50                   	push   %eax
415a29:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
415a2f:	68 cc 01 00 00       	push   $0x1cc
415a34:	50                   	push   %eax
415a35:	e8 84 a4 ff ff       	call   0x40febe
415a3a:	83 c4 10             	add    $0x10,%esp
415a3d:	eb 4c                	jmp    0x415a8b
415a3f:	8d 56 ff             	lea    -0x1(%esi),%edx
415a42:	83 fa ff             	cmp    $0xffffffff,%edx
415a45:	74 3e                	je     0x415a85
415a47:	8d 7a ff             	lea    -0x1(%edx),%edi
415a4a:	3b d1                	cmp    %ecx,%edx
415a4c:	73 09                	jae    0x415a57
415a4e:	8b 84 95 30 fe ff ff 	mov    -0x1d0(%ebp,%edx,4),%eax
415a55:	eb 02                	jmp    0x415a59
415a57:	33 c0                	xor    %eax,%eax
415a59:	3b f9                	cmp    %ecx,%edi
415a5b:	73 09                	jae    0x415a66
415a5d:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
415a64:	eb 02                	jmp    0x415a68
415a66:	33 c9                	xor    %ecx,%ecx
415a68:	c1 e9 1f             	shr    $0x1f,%ecx
415a6b:	03 c0                	add    %eax,%eax
415a6d:	0b c8                	or     %eax,%ecx
415a6f:	89 8c 95 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edx,4)
415a76:	4a                   	dec    %edx
415a77:	4f                   	dec    %edi
415a78:	83 fa ff             	cmp    $0xffffffff,%edx
415a7b:	74 08                	je     0x415a85
415a7d:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
415a83:	eb c5                	jmp    0x415a4a
415a85:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
415a8b:	bb 34 04 00 00       	mov    $0x434,%ebx
415a90:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415a96:	2b 9d b8 f8 ff ff    	sub    -0x748(%ebp),%ebx
415a9c:	8b fb                	mov    %ebx,%edi
415a9e:	c1 ef 05             	shr    $0x5,%edi
415aa1:	8b f7                	mov    %edi,%esi
415aa3:	c1 e6 02             	shl    $0x2,%esi
415aa6:	56                   	push   %esi
415aa7:	6a 00                	push   $0x0
415aa9:	50                   	push   %eax
415aaa:	e8 61 36 ff ff       	call   0x409110
415aaf:	83 e3 1f             	and    $0x1f,%ebx
415ab2:	33 c0                	xor    %eax,%eax
415ab4:	40                   	inc    %eax
415ab5:	8b cb                	mov    %ebx,%ecx
415ab7:	d3 e0                	shl    %cl,%eax
415ab9:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
415ac0:	8d 47 01             	lea    0x1(%edi),%eax
415ac3:	be cc 01 00 00       	mov    $0x1cc,%esi
415ac8:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415ace:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415ad4:	c1 e0 02             	shl    $0x2,%eax
415ad7:	50                   	push   %eax
415ad8:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415ade:	50                   	push   %eax
415adf:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
415ae5:	56                   	push   %esi
415ae6:	50                   	push   %eax
415ae7:	e8 d2 a3 ff ff       	call   0x40febe
415aec:	33 db                	xor    %ebx,%ebx
415aee:	83 c4 1c             	add    $0x1c,%esp
415af1:	43                   	inc    %ebx