41333a:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
413340:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
413347:	0f bd c1             	bsr    %ecx,%eax
41334a:	74 09                	je     0x413355
41334c:	40                   	inc    %eax
41334d:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
413353:	eb 07                	jmp    0x41335c
413355:	83 a5 b0 f8 ff ff 00 	andl   $0x0,-0x750(%ebp)
41335c:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
413362:	be cc 01 00 00       	mov    $0x1cc,%esi
413367:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
41336a:	83 f8 73             	cmp    $0x73,%eax
41336d:	76 2b                	jbe    0x41339a
41336f:	33 c0                	xor    %eax,%eax
413371:	50                   	push   %eax
413372:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
413378:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41337e:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
413384:	50                   	push   %eax
413385:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
41338b:	56                   	push   %esi
41338c:	50                   	push   %eax
41338d:	e8 c9 ba ff ff       	call   0x40ee5b
413392:	83 c4 10             	add    $0x10,%esp
413395:	e9 e2 00 00 00       	jmp    0x41347c
41339a:	2b bd b0 f8 ff ff    	sub    -0x750(%ebp),%edi
4133a0:	3b bd a8 f8 ff ff    	cmp    -0x758(%ebp),%edi
4133a6:	1b c0                	sbb    %eax,%eax
4133a8:	f7 d8                	neg    %eax
4133aa:	03 c2                	add    %edx,%eax
4133ac:	03 c1                	add    %ecx,%eax
4133ae:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
4133b4:	83 f8 73             	cmp    $0x73,%eax
4133b7:	77 b6                	ja     0x41336f
4133b9:	8d 79 ff             	lea    -0x1(%ecx),%edi
4133bc:	48                   	dec    %eax
4133bd:	89 bd 80 f8 ff ff    	mov    %edi,-0x780(%ebp)
4133c3:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
4133c9:	3b c7                	cmp    %edi,%eax
4133cb:	0f 84 91 00 00 00    	je     0x413462
4133d1:	8b f8                	mov    %eax,%edi
4133d3:	2b f9                	sub    %ecx,%edi
4133d5:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4133db:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
4133de:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
4133e4:	3b fa                	cmp    %edx,%edi
4133e6:	73 05                	jae    0x4133ed
4133e8:	8b 41 04             	mov    0x4(%ecx),%eax
4133eb:	eb 02                	jmp    0x4133ef
4133ed:	33 c0                	xor    %eax,%eax
4133ef:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
4133f5:	8d 47 ff             	lea    -0x1(%edi),%eax
4133f8:	3b c2                	cmp    %edx,%eax
4133fa:	73 04                	jae    0x413400
4133fc:	8b 01                	mov    (%ecx),%eax
4133fe:	eb 02                	jmp    0x413402
413400:	33 c0                	xor    %eax,%eax
413402:	23 85 90 f8 ff ff    	and    -0x770(%ebp),%eax
413408:	8b 8d ac f8 ff ff    	mov    -0x754(%ebp),%ecx
41340e:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
413414:	23 95 94 f8 ff ff    	and    -0x76c(%ebp),%edx
41341a:	d3 e8                	shr    %cl,%eax
41341c:	8b 8d a8 f8 ff ff    	mov    -0x758(%ebp),%ecx
413422:	d3 e2                	shl    %cl,%edx
413424:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
41342a:	0b c2                	or     %edx,%eax
41342c:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
413433:	8b c1                	mov    %ecx,%eax
413435:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
41343b:	48                   	dec    %eax
41343c:	83 e9 04             	sub    $0x4,%ecx
41343f:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
413445:	4f                   	dec    %edi
413446:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
41344c:	3b 85 80 f8 ff ff    	cmp    -0x780(%ebp),%eax
413452:	74 08                	je     0x41345c
413454:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
41345a:	eb 88                	jmp    0x4133e4
41345c:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
413462:	85 c9                	test   %ecx,%ecx
413464:	74 0a                	je     0x413470
413466:	33 c0                	xor    %eax,%eax
413468:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
41346e:	f3 ab                	rep stos %eax,%es:(%edi)
413470:	8b 85 b8 f8 ff ff    	mov    -0x748(%ebp),%eax
413476:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41347c:	6a 04                	push   $0x4
41347e:	58                   	pop    %eax
41347f:	89 85 90 fa ff ff    	mov    %eax,-0x570(%ebp)
413485:	50                   	push   %eax
413486:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
41348d:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
413493:	50                   	push   %eax
413494:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
41349a:	89 9d 5c fc ff ff    	mov    %ebx,-0x3a4(%ebp)
4134a0:	56                   	push   %esi
4134a1:	50                   	push   %eax
4134a2:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
4134a8:	e8 ae b9 ff ff       	call   0x40ee5b
4134ad:	83 c4 10             	add    $0x10,%esp
4134b0:	e9 ce 03 00 00       	jmp    0x413883
4134b5:	8d 8a ce fb ff ff    	lea    -0x432(%edx),%ecx
4134bb:	8b f7                	mov    %edi,%esi
4134bd:	8b c1                	mov    %ecx,%eax
4134bf:	33 d2                	xor    %edx,%edx
4134c1:	83 e1 1f             	and    $0x1f,%ecx
4134c4:	c1 e8 05             	shr    $0x5,%eax
4134c7:	2b f1                	sub    %ecx,%esi
4134c9:	89 85 9c f8 ff ff    	mov    %eax,-0x764(%ebp)
4134cf:	89 8d a8 f8 ff ff    	mov    %ecx,-0x758(%ebp)
4134d5:	8b c3                	mov    %ebx,%eax
4134d7:	8b ce                	mov    %esi,%ecx
4134d9:	89 b5 ac f8 ff ff    	mov    %esi,-0x754(%ebp)
4134df:	e8 bc 47 00 00       	call   0x417ca0
4134e4:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
4134ea:	48                   	dec    %eax
4134eb:	83 a5 88 f8 ff ff 00 	andl   $0x0,-0x778(%ebp)
4134f2:	89 85 94 f8 ff ff    	mov    %eax,-0x76c(%ebp)
4134f8:	f7 d0                	not    %eax
4134fa:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
413500:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
413507:	0f bd c1             	bsr    %ecx,%eax
41350a:	74 09                	je     0x413515
41350c:	40                   	inc    %eax
41350d:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
413513:	eb 07                	jmp    0x41351c
413515:	83 a5 b0 f8 ff ff 00 	andl   $0x0,-0x750(%ebp)
41351c:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
413522:	be cc 01 00 00       	mov    $0x1cc,%esi
413527:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
41352a:	83 f8 73             	cmp    $0x73,%eax
41352d:	76 2b                	jbe    0x41355a
41352f:	33 c0                	xor    %eax,%eax
413531:	50                   	push   %eax
413532:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
413538:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41353e:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
413544:	50                   	push   %eax
413545:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
41354b:	56                   	push   %esi
41354c:	50                   	push   %eax
41354d:	e8 09 b9 ff ff       	call   0x40ee5b
413552:	83 c4 10             	add    $0x10,%esp
413555:	e9 e2 00 00 00       	jmp    0x41363c
41355a:	2b bd b0 f8 ff ff    	sub    -0x750(%ebp),%edi
413560:	3b bd a8 f8 ff ff    	cmp    -0x758(%ebp),%edi
413566:	1b c0                	sbb    %eax,%eax
413568:	f7 d8                	neg    %eax
41356a:	03 c2                	add    %edx,%eax
41356c:	03 c1                	add    %ecx,%eax
41356e:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
413574:	83 f8 73             	cmp    $0x73,%eax
413577:	77 b6                	ja     0x41352f
413579:	8d 79 ff             	lea    -0x1(%ecx),%edi
41357c:	48                   	dec    %eax
41357d:	89 bd 80 f8 ff ff    	mov    %edi,-0x780(%ebp)
413583:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
413589:	3b c7                	cmp    %edi,%eax
41358b:	0f 84 91 00 00 00    	je     0x413622
413591:	8b f8                	mov    %eax,%edi
413593:	2b f9                	sub    %ecx,%edi
413595:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
41359b:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
41359e:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
4135a4:	3b fa                	cmp    %edx,%edi
4135a6:	73 05                	jae    0x4135ad
4135a8:	8b 41 04             	mov    0x4(%ecx),%eax
4135ab:	eb 02                	jmp    0x4135af
4135ad:	33 c0                	xor    %eax,%eax
4135af:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
4135b5:	8d 47 ff             	lea    -0x1(%edi),%eax
4135b8:	3b c2                	cmp    %edx,%eax
4135ba:	73 04                	jae    0x4135c0
4135bc:	8b 01                	mov    (%ecx),%eax
4135be:	eb 02                	jmp    0x4135c2
4135c0:	33 c0                	xor    %eax,%eax
4135c2:	23 85 90 f8 ff ff    	and    -0x770(%ebp),%eax
4135c8:	8b 8d ac f8 ff ff    	mov    -0x754(%ebp),%ecx
4135ce:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
4135d4:	23 95 94 f8 ff ff    	and    -0x76c(%ebp),%edx
4135da:	d3 e8                	shr    %cl,%eax
4135dc:	8b 8d a8 f8 ff ff    	mov    -0x758(%ebp),%ecx
4135e2:	d3 e2                	shl    %cl,%edx
4135e4:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
4135ea:	0b c2                	or     %edx,%eax
4135ec:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
4135f3:	8b c1                	mov    %ecx,%eax
4135f5:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
4135fb:	48                   	dec    %eax
4135fc:	83 e9 04             	sub    $0x4,%ecx
4135ff:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
413605:	4f                   	dec    %edi
413606:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
41360c:	3b 85 80 f8 ff ff    	cmp    -0x780(%ebp),%eax
413612:	74 08                	je     0x41361c
413614:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
41361a:	eb 88                	jmp    0x4135a4
41361c:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
413622:	85 c9                	test   %ecx,%ecx
413624:	74 0a                	je     0x413630
413626:	33 c0                	xor    %eax,%eax
413628:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
41362e:	f3 ab                	rep stos %eax,%es:(%edi)
413630:	8b 85 b8 f8 ff ff    	mov    -0x748(%ebp),%eax
413636:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41363c:	c7 85 90 fa ff ff 02 	movl   $0x2,-0x570(%ebp)
413643:	00 00 00
413646:	6a 04                	push   $0x4
413648:	e9 39 fe ff ff       	jmp    0x413486
41364d:	83 fa 35             	cmp    $0x35,%edx
413650:	0f 84 16 01 00 00    	je     0x41376c
413656:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
41365d:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
413664:	00 10 00
413667:	c7 85 8c fa ff ff 02 	movl   $0x2,-0x574(%ebp)
41366e:	00 00 00
413671:	85 f6                	test   %esi,%esi
413673:	0f 84 f3 00 00 00    	je     0x41376c
413679:	33 d2                	xor    %edx,%edx
41367b:	8b 84 15 90 fa ff ff 	mov    -0x570(%ebp,%edx,1),%eax
413682:	3b 84 15 30 fe ff ff 	cmp    -0x1d0(%ebp,%edx,1),%eax
413689:	0f 85 dd 00 00 00    	jne    0x41376c
41368f:	83 c2 04             	add    $0x4,%edx
413692:	83 fa 08             	cmp    $0x8,%edx
413695:	75 e4                	jne    0x41367b
413697:	33 d2                	xor    %edx,%edx
413699:	0f bd c6             	bsr    %esi,%eax
41369c:	89 95 88 f8 ff ff    	mov    %edx,-0x778(%ebp)
4136a2:	74 03                	je     0x4136a7
4136a4:	40                   	inc    %eax
4136a5:	eb 02                	jmp    0x4136a9
4136a7:	8b c2                	mov    %edx,%eax
4136a9:	2b f8                	sub    %eax,%edi
4136ab:	83 ff 02             	cmp    $0x2,%edi
4136ae:	1b f6                	sbb    %esi,%esi
4136b0:	f7 de                	neg    %esi
4136b2:	03 f1                	add    %ecx,%esi
4136b4:	83 fe 73             	cmp    $0x73,%esi
4136b7:	76 2a                	jbe    0x4136e3
4136b9:	52                   	push   %edx
4136ba:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4136c0:	89 95 8c fa ff ff    	mov    %edx,-0x574(%ebp)
4136c6:	50                   	push   %eax
4136c7:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4136cd:	89 95 2c fe ff ff    	mov    %edx,-0x1d4(%ebp)
4136d3:	68 cc 01 00 00       	push   $0x1cc
4136d8:	50                   	push   %eax
4136d9:	e8 7d b7 ff ff       	call   0x40ee5b
4136de:	83 c4 10             	add    $0x10,%esp
4136e1:	eb 4f                	jmp    0x413732
4136e3:	8d 56 ff             	lea    -0x1(%esi),%edx
4136e6:	83 fa ff             	cmp    $0xffffffff,%edx
4136e9:	74 41                	je     0x41372c
4136eb:	8d 5a ff             	lea    -0x1(%edx),%ebx
4136ee:	8b fa                	mov    %edx,%edi
4136f0:	3b d1                	cmp    %ecx,%edx
4136f2:	73 09                	jae    0x4136fd
4136f4:	8b 84 bd 30 fe ff ff 	mov    -0x1d0(%ebp,%edi,4),%eax
4136fb:	eb 02                	jmp    0x4136ff
4136fd:	33 c0                	xor    %eax,%eax
4136ff:	3b d9                	cmp    %ecx,%ebx
413701:	73 09                	jae    0x41370c
413703:	8b 8c bd 2c fe ff ff 	mov    -0x1d4(%ebp,%edi,4),%ecx
41370a:	eb 02                	jmp    0x41370e
41370c:	33 c9                	xor    %ecx,%ecx
41370e:	c1 e9 1e             	shr    $0x1e,%ecx
413711:	c1 e0 02             	shl    $0x2,%eax
413714:	0b c8                	or     %eax,%ecx
413716:	4a                   	dec    %edx
413717:	4b                   	dec    %ebx
413718:	89 8c bd 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edi,4)
41371f:	83 fa ff             	cmp    $0xffffffff,%edx
413722:	74 08                	je     0x41372c
413724:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
41372a:	eb c2                	jmp    0x4136ee
41372c:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
413732:	bb 35 04 00 00       	mov    $0x435,%ebx
413737:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
41373d:	2b 9d b4 f8 ff ff    	sub    -0x74c(%ebp),%ebx
413743:	8b fb                	mov    %ebx,%edi
413745:	c1 ef 05             	shr    $0x5,%edi
413748:	8b f7                	mov    %edi,%esi
41374a:	c1 e6 02             	shl    $0x2,%esi
41374d:	56                   	push   %esi
41374e:	6a 00                	push   $0x0
413750:	50                   	push   %eax
413751:	e8 1a 13 ff ff       	call   0x404a70
413756:	83 e3 1f             	and    $0x1f,%ebx
413759:	33 c0                	xor    %eax,%eax
41375b:	40                   	inc    %eax
41375c:	8b cb                	mov    %ebx,%ecx
41375e:	d3 e0                	shl    %cl,%eax
413760:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
413767:	e9 e5 00 00 00       	jmp    0x413851
41376c:	33 c0                	xor    %eax,%eax
41376e:	85 f6                	test   %esi,%esi
413770:	0f 95 c0             	setne  %al
413773:	83 a5 88 f8 ff ff 00 	andl   $0x0,-0x778(%ebp)
41377a:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
413781:	8b 84 05 2c fe ff ff 	mov    -0x1d4(%ebp,%eax,1),%eax
413788:	0f bd c0             	bsr    %eax,%eax
41378b:	74 03                	je     0x413790
41378d:	40                   	inc    %eax
41378e:	eb 02                	jmp    0x413792
413790:	33 c0                	xor    %eax,%eax
413792:	2b f8                	sub    %eax,%edi
413794:	3b fb                	cmp    %ebx,%edi
413796:	1b f6                	sbb    %esi,%esi
413798:	f7 de                	neg    %esi
41379a:	03 f1                	add    %ecx,%esi
41379c:	83 fe 73             	cmp    $0x73,%esi
41379f:	76 2d                	jbe    0x4137ce
4137a1:	83 a5 8c fa ff ff 00 	andl   $0x0,-0x574(%ebp)
4137a8:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4137ae:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
4137b5:	6a 00                	push   $0x0
4137b7:	50                   	push   %eax
4137b8:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4137be:	68 cc 01 00 00       	push   $0x1cc
4137c3:	50                   	push   %eax
4137c4:	e8 92 b6 ff ff       	call   0x40ee5b
4137c9:	83 c4 10             	add    $0x10,%esp
4137cc:	eb 4e                	jmp    0x41381c
4137ce:	8d 56 ff             	lea    -0x1(%esi),%edx
4137d1:	83 fa ff             	cmp    $0xffffffff,%edx
4137d4:	74 40                	je     0x413816
4137d6:	8d 5a ff             	lea    -0x1(%edx),%ebx
4137d9:	8b fa                	mov    %edx,%edi
4137db:	3b d1                	cmp    %ecx,%edx
4137dd:	73 09                	jae    0x4137e8
4137df:	8b 84 bd 30 fe ff ff 	mov    -0x1d0(%ebp,%edi,4),%eax
4137e6:	eb 02                	jmp    0x4137ea
4137e8:	33 c0                	xor    %eax,%eax
4137ea:	3b d9                	cmp    %ecx,%ebx
4137ec:	73 09                	jae    0x4137f7
4137ee:	8b 8c bd 2c fe ff ff 	mov    -0x1d4(%ebp,%edi,4),%ecx
4137f5:	eb 02                	jmp    0x4137f9
4137f7:	33 c9                	xor    %ecx,%ecx
4137f9:	c1 e9 1f             	shr    $0x1f,%ecx
4137fc:	03 c0                	add    %eax,%eax
4137fe:	0b c8                	or     %eax,%ecx
413800:	4a                   	dec    %edx
413801:	4b                   	dec    %ebx
413802:	89 8c bd 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edi,4)
413809:	83 fa ff             	cmp    $0xffffffff,%edx
41380c:	74 08                	je     0x413816
41380e:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
413814:	eb c3                	jmp    0x4137d9
413816:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
41381c:	bb 34 04 00 00       	mov    $0x434,%ebx