410453:	85 c0                	test   %eax,%eax
410455:	0f 84 e0 fd ff ff    	je     0x41023b
41045b:	6a 00                	push   $0x0
41045d:	8b 4b 64             	mov    0x64(%ebx),%ecx
410460:	2b 4b 54             	sub    0x54(%ebx),%ecx
410463:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
410467:	7c 08                	jl     0x410471
410469:	8b 53 30             	mov    0x30(%ebx),%edx
41046c:	03 53 54             	add    0x54(%ebx),%edx
41046f:	eb 02                	jmp    0x410473
410471:	33 d2                	xor    %edx,%edx
410473:	8b c3                	mov    %ebx,%eax
410475:	e8 0e 19 00 00       	call   0x411d88
41047a:	8b 4b 64             	mov    0x64(%ebx),%ecx
41047d:	89 4b 54             	mov    %ecx,0x54(%ebx)
410480:	8b 03                	mov    (%ebx),%eax
410482:	e8 c9 f3 ff ff       	call   0x40f850
410487:	8b 13                	mov    (%ebx),%edx
410489:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
41048d:	0f 85 a8 fd ff ff    	jne    0x41023b
410493:	33 c0                	xor    %eax,%eax
410495:	eb 60                	jmp    0x4104f7
410497:	83 3c 24 04          	cmpl   $0x4,(%esp)
41049b:	0f 94 c2             	sete   %dl
41049e:	83 e2 01             	and    $0x1,%edx
4104a1:	52                   	push   %edx
4104a2:	8b 4b 64             	mov    0x64(%ebx),%ecx
4104a5:	2b 4b 54             	sub    0x54(%ebx),%ecx
4104a8:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
4104ac:	7c 08                	jl     0x4104b6
4104ae:	8b 53 30             	mov    0x30(%ebx),%edx
4104b1:	03 53 54             	add    0x54(%ebx),%edx
4104b4:	eb 02                	jmp    0x4104b8
4104b6:	33 d2                	xor    %edx,%edx
4104b8:	8b c3                	mov    %ebx,%eax
4104ba:	e8 c9 18 00 00       	call   0x411d88
4104bf:	8b 4b 64             	mov    0x64(%ebx),%ecx
4104c2:	89 4b 54             	mov    %ecx,0x54(%ebx)
4104c5:	8b 03                	mov    (%ebx),%eax
4104c7:	e8 84 f3 ff ff       	call   0x40f850
4104cc:	8b 13                	mov    (%ebx),%edx
4104ce:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
4104d2:	75 11                	jne    0x4104e5
4104d4:	83 3c 24 04          	cmpl   $0x4,(%esp)
4104d8:	75 07                	jne    0x4104e1
4104da:	b8 02 00 00 00       	mov    $0x2,%eax
4104df:	eb 16                	jmp    0x4104f7
4104e1:	33 c0                	xor    %eax,%eax
4104e3:	eb 12                	jmp    0x4104f7
4104e5:	83 3c 24 04          	cmpl   $0x4,(%esp)
4104e9:	75 07                	jne    0x4104f2
4104eb:	b8 03 00 00 00       	mov    $0x3,%eax
4104f0:	eb 05                	jmp    0x4104f7
4104f2:	b8 01 00 00 00       	mov    $0x1,%eax
4104f7:	5a                   	pop    %edx
4104f8:	5f                   	pop    %edi
4104f9:	5e                   	pop    %esi
4104fa:	5b                   	pop    %ebx
4104fb:	c3                   	ret
4104fc:	53                   	push   %ebx
4104fd:	56                   	push   %esi
4104fe:	57                   	push   %edi
4104ff:	83 c4 f8             	add    $0xfffffff8,%esp
410502:	33 f6                	xor    %esi,%esi
410504:	8b d8                	mov    %eax,%ebx
410506:	89 14 24             	mov    %edx,(%esp)
410509:	81 7b 6c 06 01 00 00 	cmpl   $0x106,0x6c(%ebx)
410510:	73 26                	jae    0x410538
410512:	8b c3                	mov    %ebx,%eax
410514:	e8 ab fa ff ff       	call   0x40ffc4
410519:	8b 43 6c             	mov    0x6c(%ebx),%eax
41051c:	3d 06 01 00 00       	cmp    $0x106,%eax
410521:	73 0d                	jae    0x410530
410523:	83 3c 24 00          	cmpl   $0x0,(%esp)
410527:	75 07                	jne    0x410530
410529:	33 c0                	xor    %eax,%eax
41052b:	e9 8c 03 00 00       	jmp    0x4108bc
410530:	85 c0                	test   %eax,%eax
410532:	0f 84 c8 02 00 00    	je     0x410800
410538:	83 7b 6c 03          	cmpl   $0x3,0x6c(%ebx)
41053c:	72 3d                	jb     0x41057b
41053e:	8b 4b 50             	mov    0x50(%ebx),%ecx
410541:	8b 43 40             	mov    0x40(%ebx),%eax
410544:	d3 e0                	shl    %cl,%eax
410546:	8b 53 30             	mov    0x30(%ebx),%edx
410549:	8b 4b 64             	mov    0x64(%ebx),%ecx
41054c:	0f b6 54 0a 02       	movzbl 0x2(%edx,%ecx,1),%edx
410551:	33 c2                	xor    %edx,%eax
410553:	23 43 4c             	and    0x4c(%ebx),%eax
410556:	89 43 40             	mov    %eax,0x40(%ebx)
410559:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
41055c:	0f b7 34 41          	movzwl (%ecx,%eax,2),%esi
410560:	8b 43 64             	mov    0x64(%ebx),%eax
410563:	23 43 2c             	and    0x2c(%ebx),%eax
410566:	8b 53 38             	mov    0x38(%ebx),%edx
410569:	66 89 34 42          	mov    %si,(%edx,%eax,2)
41056d:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
410570:	8b 43 40             	mov    0x40(%ebx),%eax
410573:	66 8b 53 64          	mov    0x64(%ebx),%dx
410577:	66 89 14 41          	mov    %dx,(%ecx,%eax,2)
41057b:	8b 4b 58             	mov    0x58(%ebx),%ecx
41057e:	89 4b 70             	mov    %ecx,0x70(%ebx)
410581:	8b 43 68             	mov    0x68(%ebx),%eax
410584:	89 43 5c             	mov    %eax,0x5c(%ebx)
410587:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
41058e:	85 f6                	test   %esi,%esi
410590:	74 58                	je     0x4105ea
410592:	8b 53 70             	mov    0x70(%ebx),%edx
410595:	3b 53 78             	cmp    0x78(%ebx),%edx
410598:	73 50                	jae    0x4105ea
41059a:	8b 4b 64             	mov    0x64(%ebx),%ecx
41059d:	8b 43 24             	mov    0x24(%ebx),%eax
4105a0:	2d 06 01 00 00       	sub    $0x106,%eax
4105a5:	2b ce                	sub    %esi,%ecx
4105a7:	3b c8                	cmp    %eax,%ecx
4105a9:	77 3f                	ja     0x4105ea
4105ab:	83 bb 80 00 00 00 02 	cmpl   $0x2,0x80(%ebx)
4105b2:	74 0c                	je     0x4105c0
4105b4:	8b d6                	mov    %esi,%edx
4105b6:	8b c3                	mov    %ebx,%eax
4105b8:	e8 8f f8 ff ff       	call   0x40fe4c
4105bd:	89 43 58             	mov    %eax,0x58(%ebx)
4105c0:	83 7b 58 05          	cmpl   $0x5,0x58(%ebx)
4105c4:	77 24                	ja     0x4105ea
4105c6:	83 bb 80 00 00 00 01 	cmpl   $0x1,0x80(%ebx)
4105cd:	74 14                	je     0x4105e3
4105cf:	83 7b 58 03          	cmpl   $0x3,0x58(%ebx)
4105d3:	75 15                	jne    0x4105ea
4105d5:	8b 53 64             	mov    0x64(%ebx),%edx
4105d8:	2b 53 68             	sub    0x68(%ebx),%edx
4105db:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4105e1:	76 07                	jbe    0x4105ea
4105e3:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
4105ea:	8b 43 70             	mov    0x70(%ebx),%eax
4105ed:	83 f8 03             	cmp    $0x3,%eax
4105f0:	0f 82 54 01 00 00    	jb     0x41074a
4105f6:	3b 43 58             	cmp    0x58(%ebx),%eax
4105f9:	0f 82 4b 01 00 00    	jb     0x41074a
4105ff:	8b 53 64             	mov    0x64(%ebx),%edx
410602:	03 53 6c             	add    0x6c(%ebx),%edx
410605:	83 ea 03             	sub    $0x3,%edx
410608:	89 54 24 04          	mov    %edx,0x4(%esp)
41060c:	66 8b 43 64          	mov    0x64(%ebx),%ax
410610:	8b 8b 9c 16 00 00    	mov    0x169c(%ebx),%ecx
410616:	48                   	dec    %eax
410617:	8b bb 98 16 00 00    	mov    0x1698(%ebx),%edi
41061d:	66 2b 43 5c          	sub    0x5c(%ebx),%ax
410621:	8a 53 70             	mov    0x70(%ebx),%dl
410624:	66 89 04 79          	mov    %ax,(%ecx,%edi,2)
410628:	80 ea 03             	sub    $0x3,%dl
41062b:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
410631:	48                   	dec    %eax
410632:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
410638:	8b bb 90 16 00 00    	mov    0x1690(%ebx),%edi
41063e:	88 14 0f             	mov    %dl,(%edi,%ecx,1)
410641:	81 e2 ff 00 00 00    	and    $0xff,%edx
410647:	33 c9                	xor    %ecx,%ecx
410649:	8a 8a b8 6d 42 00    	mov    0x426db8(%edx),%cl
41064f:	66 ff 84 8b 90 04 00 	incw   0x490(%ebx,%ecx,4)
410656:	00
410657:	66 3d 00 01          	cmp    $0x100,%ax
41065b:	73 0b                	jae    0x410668
41065d:	0f b7 d0             	movzwl %ax,%edx
410660:	8a 8a b8 6b 42 00    	mov    0x426bb8(%edx),%cl
410666:	eb 0c                	jmp    0x410674
410668:	0f b7 c0             	movzwl %ax,%eax
41066b:	c1 f8 07             	sar    $0x7,%eax
41066e:	8a 88 b8 6c 42 00    	mov    0x426cb8(%eax),%cl
410674:	33 c0                	xor    %eax,%eax
410676:	8a c1                	mov    %cl,%al
410678:	66 ff 84 83 80 09 00 	incw   0x980(%ebx,%eax,4)
41067f:	00
410680:	8b 93 94 16 00 00    	mov    0x1694(%ebx),%edx
410686:	4a                   	dec    %edx
410687:	3b 93 98 16 00 00    	cmp    0x1698(%ebx),%edx
41068d:	0f 94 c0             	sete   %al
410690:	83 e0 01             	and    $0x1,%eax
410693:	8b 53 70             	mov    0x70(%ebx),%edx
410696:	4a                   	dec    %edx
410697:	29 53 6c             	sub    %edx,0x6c(%ebx)
41069a:	83 6b 70 02          	subl   $0x2,0x70(%ebx)
41069e:	ff 43 64             	incl   0x64(%ebx)
4106a1:	8b 4b 64             	mov    0x64(%ebx),%ecx
4106a4:	3b 4c 24 04          	cmp    0x4(%esp),%ecx
4106a8:	77 40                	ja     0x4106ea
4106aa:	8b 4b 50             	mov    0x50(%ebx),%ecx
4106ad:	8b 53 40             	mov    0x40(%ebx),%edx
4106b0:	d3 e2                	shl    %cl,%edx
4106b2:	8b 4b 30             	mov    0x30(%ebx),%ecx
4106b5:	8b 73 64             	mov    0x64(%ebx),%esi
4106b8:	0f b6 4c 31 02       	movzbl 0x2(%ecx,%esi,1),%ecx
4106bd:	33 d1                	xor    %ecx,%edx
4106bf:	23 53 4c             	and    0x4c(%ebx),%edx
4106c2:	89 53 40             	mov    %edx,0x40(%ebx)
4106c5:	8b 53 3c             	mov    0x3c(%ebx),%edx
4106c8:	8b 4b 40             	mov    0x40(%ebx),%ecx
4106cb:	0f b7 34 4a          	movzwl (%edx,%ecx,2),%esi
4106cf:	8b 53 64             	mov    0x64(%ebx),%edx
4106d2:	23 53 2c             	and    0x2c(%ebx),%edx
4106d5:	8b 4b 38             	mov    0x38(%ebx),%ecx
4106d8:	66 89 34 51          	mov    %si,(%ecx,%edx,2)
4106dc:	8b 53 3c             	mov    0x3c(%ebx),%edx
4106df:	8b 4b 40             	mov    0x40(%ebx),%ecx
4106e2:	66 8b 7b 64          	mov    0x64(%ebx),%di
4106e6:	66 89 3c 4a          	mov    %di,(%edx,%ecx,2)
4106ea:	ff 4b 70             	decl   0x70(%ebx)
4106ed:	75 af                	jne    0x41069e
4106ef:	33 d2                	xor    %edx,%edx
4106f1:	89 53 60             	mov    %edx,0x60(%ebx)
4106f4:	c7 43 58 02 00 00 00 	movl   $0x2,0x58(%ebx)
4106fb:	ff 43 64             	incl   0x64(%ebx)
4106fe:	85 c0                	test   %eax,%eax
410700:	0f 84 03 fe ff ff    	je     0x410509
410706:	6a 00                	push   $0x0
410708:	8b 4b 64             	mov    0x64(%ebx),%ecx
41070b:	2b 4b 54             	sub    0x54(%ebx),%ecx
41070e:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
410712:	7c 08                	jl     0x41071c
410714:	8b 53 30             	mov    0x30(%ebx),%edx
410717:	03 53 54             	add    0x54(%ebx),%edx
41071a:	eb 02                	jmp    0x41071e
41071c:	33 d2                	xor    %edx,%edx
41071e:	8b c3                	mov    %ebx,%eax
410720:	e8 63 16 00 00       	call   0x411d88
410725:	8b 4b 64             	mov    0x64(%ebx),%ecx
410728:	89 4b 54             	mov    %ecx,0x54(%ebx)
41072b:	8b 03                	mov    (%ebx),%eax
41072d:	e8 1e f1 ff ff       	call   0x40f850
410732:	8b 13                	mov    (%ebx),%edx
410734:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
410738:	0f 85 cb fd ff ff    	jne    0x410509
41073e:	33 c0                	xor    %eax,%eax
410740:	e9 77 01 00 00       	jmp    0x4108bc
410745:	e9 bf fd ff ff       	jmp    0x410509
41074a:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
41074e:	0f 84 9a 00 00 00    	je     0x4107ee
410754:	8b 53 30             	mov    0x30(%ebx),%edx
410757:	8b 4b 64             	mov    0x64(%ebx),%ecx
41075a:	8a 44 0a ff          	mov    -0x1(%edx,%ecx,1),%al
41075e:	8b 93 9c 16 00 00    	mov    0x169c(%ebx),%edx
410764:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
41076a:	66 c7 04 4a 00 00    	movw   $0x0,(%edx,%ecx,2)
410770:	8b 93 98 16 00 00    	mov    0x1698(%ebx),%edx
410776:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
41077c:	8b 8b 90 16 00 00    	mov    0x1690(%ebx),%ecx
410782:	88 04 11             	mov    %al,(%ecx,%edx,1)
410785:	25 ff 00 00 00       	and    $0xff,%eax
41078a:	66 ff 84 83 8c 00 00 	incw   0x8c(%ebx,%eax,4)
410791:	00
410792:	8b 83 94 16 00 00    	mov    0x1694(%ebx),%eax
410798:	48                   	dec    %eax
410799:	3b 83 98 16 00 00    	cmp    0x1698(%ebx),%eax
41079f:	0f 94 c0             	sete   %al
4107a2:	83 e0 01             	and    $0x1,%eax
4107a5:	85 c0                	test   %eax,%eax
4107a7:	74 2c                	je     0x4107d5
4107a9:	6a 00                	push   $0x0
4107ab:	8b 4b 64             	mov    0x64(%ebx),%ecx
4107ae:	2b 4b 54             	sub    0x54(%ebx),%ecx
4107b1:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
4107b5:	7c 08                	jl     0x4107bf
4107b7:	8b 53 30             	mov    0x30(%ebx),%edx
4107ba:	03 53 54             	add    0x54(%ebx),%edx
4107bd:	eb 02                	jmp    0x4107c1
4107bf:	33 d2                	xor    %edx,%edx
4107c1:	8b c3                	mov    %ebx,%eax
4107c3:	e8 c0 15 00 00       	call   0x411d88
4107c8:	8b 4b 64             	mov    0x64(%ebx),%ecx
4107cb:	89 4b 54             	mov    %ecx,0x54(%ebx)
4107ce:	8b 03                	mov    (%ebx),%eax
4107d0:	e8 7b f0 ff ff       	call   0x40f850
4107d5:	ff 43 64             	incl   0x64(%ebx)
4107d8:	ff 4b 6c             	decl   0x6c(%ebx)
4107db:	8b 13                	mov    (%ebx),%edx
4107dd:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
4107e1:	0f 85 22 fd ff ff    	jne    0x410509
4107e7:	33 c0                	xor    %eax,%eax
4107e9:	e9 ce 00 00 00       	jmp    0x4108bc
4107ee:	c7 43 60 01 00 00 00 	movl   $0x1,0x60(%ebx)
4107f5:	ff 43 64             	incl   0x64(%ebx)
4107f8:	ff 4b 6c             	decl   0x6c(%ebx)
4107fb:	e9 09 fd ff ff       	jmp    0x410509
410800:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
410804:	74 56                	je     0x41085c
410806:	8b 53 30             	mov    0x30(%ebx),%edx
410809:	8b 4b 64             	mov    0x64(%ebx),%ecx
41080c:	8a 44 0a ff          	mov    -0x1(%edx,%ecx,1),%al
410810:	8b 93 9c 16 00 00    	mov    0x169c(%ebx),%edx
410816:	8b 8b 98 16 00 00    	mov    0x1698(%ebx),%ecx
41081c:	66 c7 04 4a 00 00    	movw   $0x0,(%edx,%ecx,2)
410822:	8b 93 98 16 00 00    	mov    0x1698(%ebx),%edx
410828:	ff 83 98 16 00 00    	incl   0x1698(%ebx)
41082e:	8b 8b 90 16 00 00    	mov    0x1690(%ebx),%ecx
410834:	88 04 11             	mov    %al,(%ecx,%edx,1)
410837:	25 ff 00 00 00       	and    $0xff,%eax
41083c:	66 ff 84 83 8c 00 00 	incw   0x8c(%ebx,%eax,4)
410843:	00
410844:	8b 83 94 16 00 00    	mov    0x1694(%ebx),%eax
41084a:	48                   	dec    %eax
41084b:	3b 83 98 16 00 00    	cmp    0x1698(%ebx),%eax
410851:	0f 94 c2             	sete   %dl
410854:	83 e2 01             	and    $0x1,%edx
410857:	33 c9                	xor    %ecx,%ecx
410859:	89 4b 60             	mov    %ecx,0x60(%ebx)
41085c:	83 3c 24 04          	cmpl   $0x4,(%esp)
410860:	0f 94 c0             	sete   %al
410863:	83 e0 01             	and    $0x1,%eax
410866:	50                   	push   %eax
410867:	8b 4b 64             	mov    0x64(%ebx),%ecx
41086a:	2b 4b 54             	sub    0x54(%ebx),%ecx
41086d:	83 7b 54 00          	cmpl   $0x0,0x54(%ebx)
410871:	7c 08                	jl     0x41087b
410873:	8b 53 30             	mov    0x30(%ebx),%edx
410876:	03 53 54             	add    0x54(%ebx),%edx
410879:	eb 02                	jmp    0x41087d
41087b:	33 d2                	xor    %edx,%edx
41087d:	8b c3                	mov    %ebx,%eax
41087f:	e8 04 15 00 00       	call   0x411d88
410884:	8b 4b 64             	mov    0x64(%ebx),%ecx
410887:	89 4b 54             	mov    %ecx,0x54(%ebx)
41088a:	8b 03                	mov    (%ebx),%eax
41088c:	e8 bf ef ff ff       	call   0x40f850
410891:	8b 13                	mov    (%ebx),%edx
410893:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
410897:	75 11                	jne    0x4108aa
410899:	83 3c 24 04          	cmpl   $0x4,(%esp)
41089d:	75 07                	jne    0x4108a6
41089f:	b8 02 00 00 00       	mov    $0x2,%eax
4108a4:	eb 16                	jmp    0x4108bc
4108a6:	33 c0                	xor    %eax,%eax
4108a8:	eb 12                	jmp    0x4108bc
4108aa:	83 3c 24 04          	cmpl   $0x4,(%esp)
4108ae:	75 07                	jne    0x4108b7
4108b0:	b8 03 00 00 00       	mov    $0x3,%eax
4108b5:	eb 05                	jmp    0x4108bc
4108b7:	b8 01 00 00 00       	mov    $0x1,%eax
4108bc:	59                   	pop    %ecx
4108bd:	5a                   	pop    %edx
4108be:	5f                   	pop    %edi
4108bf:	5e                   	pop    %esi
4108c0:	5b                   	pop    %ebx
4108c1:	c3                   	ret
4108c2:	8b c0                	mov    %eax,%eax
4108c4:	c3                   	ret
4108c5:	90                   	nop
4108c6:	90                   	nop
4108c7:	90                   	nop
4108c8:	53                   	push   %ebx
4108c9:	8b d8                	mov    %eax,%ebx
4108cb:	e8 f4 ff ff ff       	call   0x4108c4