41044d:	33 c9                	xor    %ecx,%ecx
41044f:	8b 45 f0             	mov    -0x10(%ebp),%eax
410452:	0b 45 ec             	or     -0x14(%ebp),%eax
410455:	89 4d f8             	mov    %ecx,-0x8(%ebp)
410458:	89 55 f4             	mov    %edx,-0xc(%ebp)
41045b:	74 0a                	je     0x410467
41045d:	3b 55 f0             	cmp    -0x10(%ebp),%edx
410460:	75 05                	jne    0x410467
410462:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
410465:	74 65                	je     0x4104cc
410467:	8d 4e 08             	lea    0x8(%esi),%ecx
41046a:	e8 19 2e 00 00       	call   0x413288
41046f:	50                   	push   %eax
410470:	ff 75 08             	push   0x8(%ebp)
410473:	8b ce                	mov    %esi,%ecx
410475:	89 45 e4             	mov    %eax,-0x1c(%ebp)
410478:	e8 3f 2e 00 00       	call   0x4132bc
41047d:	84 c0                	test   %al,%al
41047f:	74 39                	je     0x4104ba
410481:	80 7e 2e 00          	cmpb   $0x0,0x2e(%esi)
410485:	75 17                	jne    0x41049e
410487:	8b 45 fc             	mov    -0x4(%ebp),%eax
41048a:	85 c0                	test   %eax,%eax
41048c:	74 1e                	je     0x4104ac
41048e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
410491:	8b 55 e4             	mov    -0x1c(%ebp),%edx
410494:	88 11                	mov    %dl,(%ecx)
410496:	41                   	inc    %ecx
410497:	48                   	dec    %eax
410498:	89 4d e8             	mov    %ecx,-0x18(%ebp)
41049b:	89 45 fc             	mov    %eax,-0x4(%ebp)
41049e:	8b 55 f4             	mov    -0xc(%ebp),%edx
4104a1:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4104a4:	83 c2 01             	add    $0x1,%edx
4104a7:	83 d1 00             	adc    $0x0,%ecx
4104aa:	eb a3                	jmp    0x41044f
4104ac:	83 ff ff             	cmp    $0xffffffff,%edi
4104af:	0f 84 66 ff ff ff    	je     0x41041b
4104b5:	e9 5e ff ff ff       	jmp    0x410418
4104ba:	8b 55 e4             	mov    -0x1c(%ebp),%edx
4104bd:	8d 4e 08             	lea    0x8(%esi),%ecx
4104c0:	52                   	push   %edx
4104c1:	e8 65 37 00 00       	call   0x413c2b
4104c6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4104c9:	8b 55 f4             	mov    -0xc(%ebp),%edx
4104cc:	8b c2                	mov    %edx,%eax
4104ce:	0b c1                	or     %ecx,%eax
4104d0:	0f 84 0e ff ff ff    	je     0x4103e4
4104d6:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4104da:	75 18                	jne    0x4104f4
4104dc:	3b 55 f0             	cmp    -0x10(%ebp),%edx
4104df:	75 05                	jne    0x4104e6
4104e1:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
4104e4:	74 0e                	je     0x4104f4
4104e6:	8b 06                	mov    (%esi),%eax
4104e8:	83 e0 04             	and    $0x4,%eax
4104eb:	83 c8 00             	or     $0x0,%eax
4104ee:	0f 84 f0 fe ff ff    	je     0x4103e4
4104f4:	80 7e 2e 00          	cmpb   $0x0,0x2e(%esi)
4104f8:	75 0f                	jne    0x410509
4104fa:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4104fe:	74 06                	je     0x410506
410500:	8b 45 e8             	mov    -0x18(%ebp),%eax
410503:	c6 00 00             	movb   $0x0,(%eax)
410506:	ff 46 70             	incl   0x70(%esi)
410509:	b0 01                	mov    $0x1,%al
41050b:	5f                   	pop    %edi
41050c:	5e                   	pop    %esi
41050d:	5b                   	pop    %ebx
41050e:	8b e5                	mov    %ebp,%esp
410510:	5d                   	pop    %ebp
410511:	c2 08 00             	ret    $0x8
410514:	8b ff                	mov    %edi,%edi
410516:	55                   	push   %ebp
410517:	8b ec                	mov    %esp,%ebp
410519:	83 ec 1c             	sub    $0x1c,%esp
41051c:	53                   	push   %ebx
41051d:	56                   	push   %esi
41051e:	8b f1                	mov    %ecx,%esi
410520:	33 db                	xor    %ebx,%ebx
410522:	57                   	push   %edi
410523:	38 5e 2e             	cmp    %bl,0x2e(%esi)
410526:	75 3a                	jne    0x410562
410528:	83 46 6c 04          	addl   $0x4,0x6c(%esi)
41052c:	8b 4e 6c             	mov    0x6c(%esi),%ecx
41052f:	8b 59 fc             	mov    -0x4(%ecx),%ebx
410532:	85 db                	test   %ebx,%ebx
410534:	75 17                	jne    0x41054d
410536:	e8 30 45 00 00       	call   0x414a6b
41053b:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
410541:	e8 9c b7 ff ff       	call   0x40bce2
410546:	32 c0                	xor    %al,%al
410548:	e9 2a 01 00 00       	jmp    0x410677
41054d:	8b 06                	mov    (%esi),%eax
41054f:	83 e0 01             	and    $0x1,%eax
410552:	83 c8 00             	or     $0x0,%eax
410555:	74 0b                	je     0x410562
410557:	8d 41 04             	lea    0x4(%ecx),%eax
41055a:	89 46 6c             	mov    %eax,0x6c(%esi)
41055d:	8b 78 fc             	mov    -0x4(%eax),%edi
410560:	eb 03                	jmp    0x410565
410562:	83 cf ff             	or     $0xffffffff,%edi
410565:	85 ff                	test   %edi,%edi
410567:	75 23                	jne    0x41058c
410569:	8b 06                	mov    (%esi),%eax
41056b:	83 e0 04             	and    $0x4,%eax
41056e:	0b c7                	or     %edi,%eax
410570:	74 0d                	je     0x41057f
410572:	8d 4e 08             	lea    0x8(%esi),%ecx
410575:	e8 0e 2d 00 00       	call   0x413288
41057a:	33 c0                	xor    %eax,%eax
41057c:	66 89 03             	mov    %ax,(%ebx)
41057f:	e8 e7 44 00 00       	call   0x414a6b
410584:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
41058a:	eb ba                	jmp    0x410546
41058c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
410590:	8b 46 30             	mov    0x30(%esi),%eax
410593:	89 45 f0             	mov    %eax,-0x10(%ebp)
410596:	8b 46 34             	mov    0x34(%esi),%eax
410599:	89 45 ec             	mov    %eax,-0x14(%ebp)
41059c:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
41059f:	89 7d f4             	mov    %edi,-0xc(%ebp)
4105a2:	74 0b                	je     0x4105af
4105a4:	83 ff ff             	cmp    $0xffffffff,%edi
4105a7:	74 06                	je     0x4105af
4105a9:	8d 47 ff             	lea    -0x1(%edi),%eax
4105ac:	89 45 f4             	mov    %eax,-0xc(%ebp)
4105af:	33 d2                	xor    %edx,%edx
4105b1:	33 c9                	xor    %ecx,%ecx
4105b3:	8b 45 f0             	mov    -0x10(%ebp),%eax
4105b6:	0b 45 ec             	or     -0x14(%ebp),%eax
4105b9:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4105bc:	89 55 f8             	mov    %edx,-0x8(%ebp)
4105bf:	74 0a                	je     0x4105cb
4105c1:	3b 55 f0             	cmp    -0x10(%ebp),%edx
4105c4:	75 05                	jne    0x4105cb
4105c6:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
4105c9:	74 6b                	je     0x410636
4105cb:	8d 4e 08             	lea    0x8(%esi),%ecx
4105ce:	e8 b5 2c 00 00       	call   0x413288
4105d3:	50                   	push   %eax
4105d4:	ff 75 08             	push   0x8(%ebp)
4105d7:	8b ce                	mov    %esi,%ecx
4105d9:	89 45 e8             	mov    %eax,-0x18(%ebp)
4105dc:	e8 db 2c 00 00       	call   0x4132bc
4105e1:	84 c0                	test   %al,%al
4105e3:	74 40                	je     0x410625
4105e5:	80 7e 2e 00          	cmpb   $0x0,0x2e(%esi)
4105e9:	75 1e                	jne    0x410609
4105eb:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4105ef:	74 26                	je     0x410617
4105f1:	ff 75 e8             	push   -0x18(%ebp)
4105f4:	8d 45 f4             	lea    -0xc(%ebp),%eax
4105f7:	8b ce                	mov    %esi,%ecx
4105f9:	50                   	push   %eax
4105fa:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4105fd:	50                   	push   %eax
4105fe:	57                   	push   %edi
4105ff:	53                   	push   %ebx
410600:	e8 a4 36 00 00       	call   0x413ca9
410605:	84 c0                	test   %al,%al
410607:	74 27                	je     0x410630
410609:	8b 55 f8             	mov    -0x8(%ebp),%edx
41060c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41060f:	83 c2 01             	add    $0x1,%edx
410612:	83 d1 00             	adc    $0x0,%ecx
410615:	eb 9c                	jmp    0x4105b3
410617:	83 ff ff             	cmp    $0xffffffff,%edi
41061a:	0f 84 5f ff ff ff    	je     0x41057f
410620:	e9 55 ff ff ff       	jmp    0x41057a
410625:	ff 75 e8             	push   -0x18(%ebp)
410628:	8d 4e 08             	lea    0x8(%esi),%ecx
41062b:	e8 fb 35 00 00       	call   0x413c2b
410630:	8b 55 f8             	mov    -0x8(%ebp),%edx
410633:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410636:	8b c2                	mov    %edx,%eax
410638:	0b c1                	or     %ecx,%eax
41063a:	0f 84 06 ff ff ff    	je     0x410546
410640:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
410644:	75 18                	jne    0x41065e
410646:	3b 55 f0             	cmp    -0x10(%ebp),%edx
410649:	75 05                	jne    0x410650
41064b:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
41064e:	74 0e                	je     0x41065e
410650:	8b 06                	mov    (%esi),%eax
410652:	83 e0 04             	and    $0x4,%eax
410655:	83 c8 00             	or     $0x0,%eax
410658:	0f 84 e8 fe ff ff    	je     0x410546
41065e:	80 7e 2e 00          	cmpb   $0x0,0x2e(%esi)
410662:	75 11                	jne    0x410675
410664:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
410668:	74 08                	je     0x410672
41066a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41066d:	33 c9                	xor    %ecx,%ecx
41066f:	66 89 08             	mov    %cx,(%eax)
410672:	ff 46 70             	incl   0x70(%esi)
410675:	b0 01                	mov    $0x1,%al
410677:	5f                   	pop    %edi
410678:	5e                   	pop    %esi
410679:	5b                   	pop    %ebx
41067a:	8b e5                	mov    %ebp,%esp
41067c:	5d                   	pop    %ebp
41067d:	c2 08 00             	ret    $0x8
410680:	8b ff                	mov    %edi,%edi
410682:	55                   	push   %ebp
410683:	8b ec                	mov    %esp,%ebp
410685:	53                   	push   %ebx
410686:	8b 4d 08             	mov    0x8(%ebp),%ecx
410689:	e8 fa 2b 00 00       	call   0x413288
41068e:	8b d8                	mov    %eax,%ebx
410690:	83 fb ff             	cmp    $0xffffffff,%ebx
410693:	74 15                	je     0x4106aa
410695:	ff 75 0c             	push   0xc(%ebp)
410698:	0f b6 cb             	movzbl %bl,%ecx
41069b:	6a 08                	push   $0x8
41069d:	51                   	push   %ecx
41069e:	e8 3c 37 00 00       	call   0x413ddf
4106a3:	83 c4 0c             	add    $0xc,%esp
4106a6:	85 c0                	test   %eax,%eax
4106a8:	75 dc                	jne    0x410686
4106aa:	8b c3                	mov    %ebx,%eax
4106ac:	5b                   	pop    %ebx
4106ad:	5d                   	pop    %ebp
4106ae:	c3                   	ret
4106af:	8b ff                	mov    %edi,%edi
4106b1:	55                   	push   %ebp
4106b2:	8b ec                	mov    %esp,%ebp
4106b4:	83 41 6c 04          	addl   $0x4,0x6c(%ecx)
4106b8:	8b 41 6c             	mov    0x6c(%ecx),%eax
4106bb:	8b 50 fc             	mov    -0x4(%eax),%edx
4106be:	85 d2                	test   %edx,%edx
4106c0:	75 14                	jne    0x4106d6
4106c2:	e8 a4 43 00 00       	call   0x414a6b
4106c7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4106cd:	e8 10 b6 ff ff       	call   0x40bce2
4106d2:	32 c0                	xor    %al,%al
4106d4:	eb 0c                	jmp    0x4106e2
4106d6:	8b 45 08             	mov    0x8(%ebp),%eax
4106d9:	ff 41 70             	incl   0x70(%ecx)
4106dc:	8b 00                	mov    (%eax),%eax
4106de:	89 02                	mov    %eax,(%edx)
4106e0:	b0 01                	mov    $0x1,%al
4106e2:	5d                   	pop    %ebp
4106e3:	c2 04 00             	ret    $0x4
4106e6:	8b ff                	mov    %edi,%edi
4106e8:	55                   	push   %ebp
4106e9:	8b ec                	mov    %esp,%ebp
4106eb:	83 41 6c 04          	addl   $0x4,0x6c(%ecx)
4106ef:	8b 41 6c             	mov    0x6c(%ecx),%eax
4106f2:	8b 50 fc             	mov    -0x4(%eax),%edx
4106f5:	85 d2                	test   %edx,%edx
4106f7:	75 14                	jne    0x41070d
4106f9:	e8 6d 43 00 00       	call   0x414a6b
4106fe:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
410704:	e8 d9 b5 ff ff       	call   0x40bce2
410709:	32 c0                	xor    %al,%al
41070b:	eb 12                	jmp    0x41071f
41070d:	ff 41 70             	incl   0x70(%ecx)
410710:	8b 4d 08             	mov    0x8(%ebp),%ecx
410713:	8b 01                	mov    (%ecx),%eax
410715:	89 02                	mov    %eax,(%edx)
410717:	8b 41 04             	mov    0x4(%ecx),%eax
41071a:	89 42 04             	mov    %eax,0x4(%edx)
41071d:	b0 01                	mov    $0x1,%al
41071f:	5d                   	pop    %ebp
410720:	c2 04 00             	ret    $0x4
410723:	8b ff                	mov    %edi,%edi
410725:	55                   	push   %ebp
410726:	8b ec                	mov    %esp,%ebp
410728:	8b 45 08             	mov    0x8(%ebp),%eax
41072b:	8b d1                	mov    %ecx,%edx
41072d:	53                   	push   %ebx
41072e:	33 db                	xor    %ebx,%ebx
410730:	57                   	push   %edi
410731:	89 02                	mov    %eax,(%edx)
410733:	8d 7a 2c             	lea    0x2c(%edx),%edi
410736:	8b 45 0c             	mov    0xc(%ebp),%eax
410739:	89 42 04             	mov    %eax,0x4(%edx)
41073c:	8b 45 10             	mov    0x10(%ebp),%eax
41073f:	6a 08                	push   $0x8
410741:	89 42 08             	mov    %eax,0x8(%edx)
410744:	33 c0                	xor    %eax,%eax
410746:	59                   	pop    %ecx
410747:	89 5a 0c             	mov    %ebx,0xc(%edx)
41074a:	f3 ab                	rep stos %eax,%es:(%edi)
41074c:	5f                   	pop    %edi
41074d:	89 5a 10             	mov    %ebx,0x10(%edx)
410750:	8b c2                	mov    %edx,%eax
410752:	66 89 5a 14          	mov    %bx,0x14(%edx)
410756:	88 5a 16             	mov    %bl,0x16(%edx)
410759:	89 5a 18             	mov    %ebx,0x18(%edx)
41075c:	89 5a 1c             	mov    %ebx,0x1c(%edx)
41075f:	89 5a 20             	mov    %ebx,0x20(%edx)
410762:	88 5a 24             	mov    %bl,0x24(%edx)
410765:	89 5a 28             	mov    %ebx,0x28(%edx)
410768:	5b                   	pop    %ebx
410769:	5d                   	pop    %ebp
41076a:	c2 0c 00             	ret    $0xc
41076d:	8b ff                	mov    %edi,%edi
41076f:	55                   	push   %ebp
410770:	8b ec                	mov    %esp,%ebp
410772:	8b 45 08             	mov    0x8(%ebp),%eax
410775:	83 61 10 00          	andl   $0x0,0x10(%ecx)
410779:	83 61 14 00          	andl   $0x0,0x14(%ecx)
41077d:	89 01                	mov    %eax,(%ecx)
41077f:	8b 45 0c             	mov    0xc(%ebp),%eax
410782:	89 41 08             	mov    %eax,0x8(%ecx)
410785:	8b 45 10             	mov    0x10(%ebp),%eax
410788:	89 41 0c             	mov    %eax,0xc(%ecx)
41078b:	8b 45 14             	mov    0x14(%ebp),%eax
41078e:	89 41 18             	mov    %eax,0x18(%ecx)
410791:	85 c0                	test   %eax,%eax
410793:	74 03                	je     0x410798
410795:	c6 00 01             	movb   $0x1,(%eax)
410798:	8b c1                	mov    %ecx,%eax
41079a:	5d                   	pop    %ebp
41079b:	c2 10 00             	ret    $0x10
41079e:	8b ff                	mov    %edi,%edi
4107a0:	55                   	push   %ebp
4107a1:	8b ec                	mov    %esp,%ebp
4107a3:	8b 55 0c             	mov    0xc(%ebp),%edx
4107a6:	8b 45 10             	mov    0x10(%ebp),%eax
4107a9:	53                   	push   %ebx
4107aa:	56                   	push   %esi
4107ab:	8b 75 08             	mov    0x8(%ebp),%esi
4107ae:	8b d9                	mov    %ecx,%ebx
4107b0:	57                   	push   %edi
4107b1:	ff 75 14             	push   0x14(%ebp)
4107b4:	89 13                	mov    %edx,(%ebx)
4107b6:	8d 7b 08             	lea    0x8(%ebx),%edi
4107b9:	89 43 04             	mov    %eax,0x4(%ebx)
4107bc:	8d 4b 18             	lea    0x18(%ebx),%ecx
4107bf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4107c0:	50                   	push   %eax
4107c1:	52                   	push   %edx
4107c2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4107c3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4107c4:	e8 5a ff ff ff       	call   0x410723
4107c9:	8b 45 18             	mov    0x18(%ebp),%eax
4107cc:	83 63 70 00          	andl   $0x0,0x70(%ebx)
4107d0:	83 63 74 00          	andl   $0x0,0x74(%ebx)
4107d4:	89 43 68             	mov    %eax,0x68(%ebx)
4107d7:	8b 45 1c             	mov    0x1c(%ebp),%eax
4107da:	5f                   	pop    %edi
4107db:	89 43 6c             	mov    %eax,0x6c(%ebx)
4107de:	8b c3                	mov    %ebx,%eax
4107e0:	5e                   	pop    %esi
4107e1:	5b                   	pop    %ebx
4107e2:	5d                   	pop    %ebp
4107e3:	c2 18 00             	ret    $0x18