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
4107e6:	8b ff                	mov    %edi,%edi
4107e8:	56                   	push   %esi
4107e9:	8b f1                	mov    %ecx,%esi
4107eb:	8b 46 04             	mov    0x4(%esi),%eax
4107ee:	8b 0e                	mov    (%esi),%ecx
4107f0:	0f b6 00             	movzbl (%eax),%eax
4107f3:	50                   	push   %eax
4107f4:	e8 f1 33 00 00       	call   0x413bea
4107f9:	8b 46 04             	mov    0x4(%esi),%eax
4107fc:	c6 00 00             	movb   $0x0,(%eax)
4107ff:	8b 46 08             	mov    0x8(%esi),%eax
410802:	8b 0e                	mov    (%esi),%ecx
410804:	ff 70 04             	push   0x4(%eax)
410807:	ff 30                	push   (%eax)
410809:	e8 1c 2e 00 00       	call   0x41362a
41080e:	5e                   	pop    %esi
41080f:	c3                   	ret
410810:	8b ff                	mov    %edi,%edi
410812:	56                   	push   %esi
410813:	8b f1                	mov    %ecx,%esi
410815:	8b 46 04             	mov    0x4(%esi),%eax
410818:	8b 0e                	mov    (%esi),%ecx
41081a:	0f b6 00             	movzbl (%eax),%eax
41081d:	50                   	push   %eax
41081e:	e8 c7 33 00 00       	call   0x413bea
410823:	8b 46 04             	mov    0x4(%esi),%eax
410826:	c6 00 00             	movb   $0x0,(%eax)
410829:	8b 46 08             	mov    0x8(%esi),%eax
41082c:	8b 0e                	mov    (%esi),%ecx
41082e:	ff 70 04             	push   0x4(%eax)
410831:	ff 30                	push   (%eax)
410833:	e8 f2 2d 00 00       	call   0x41362a
410838:	5e                   	pop    %esi
410839:	c3                   	ret
41083a:	8b ff                	mov    %edi,%edi
41083c:	56                   	push   %esi
41083d:	8b f1                	mov    %ecx,%esi
41083f:	8b 46 04             	mov    0x4(%esi),%eax
410842:	8b 0e                	mov    (%esi),%ecx
410844:	0f b6 00             	movzbl (%eax),%eax
410847:	50                   	push   %eax
410848:	e8 9d 33 00 00       	call   0x413bea
41084d:	8b 46 04             	mov    0x4(%esi),%eax
410850:	c6 00 00             	movb   $0x0,(%eax)
410853:	8b 46 08             	mov    0x8(%esi),%eax
410856:	8b 0e                	mov    (%esi),%ecx
410858:	ff 70 04             	push   0x4(%eax)
41085b:	ff 30                	push   (%eax)
41085d:	e8 c8 2d 00 00       	call   0x41362a
410862:	5e                   	pop    %esi
410863:	c3                   	ret
410864:	8b ff                	mov    %edi,%edi
410866:	53                   	push   %ebx
410867:	56                   	push   %esi
410868:	8b f1                	mov    %ecx,%esi
41086a:	33 db                	xor    %ebx,%ebx
41086c:	39 5e 0c             	cmp    %ebx,0xc(%esi)
41086f:	74 07                	je     0x410878
410871:	32 c0                	xor    %al,%al
410873:	e9 09 01 00 00       	jmp    0x410981
410878:	8b 46 08             	mov    0x8(%esi),%eax
41087b:	89 5e 10             	mov    %ebx,0x10(%esi)
41087e:	66 89 5e 14          	mov    %bx,0x14(%esi)
410882:	88 5e 16             	mov    %bl,0x16(%esi)
410885:	89 5e 18             	mov    %ebx,0x18(%esi)
410888:	89 5e 1c             	mov    %ebx,0x1c(%esi)
41088b:	89 5e 20             	mov    %ebx,0x20(%esi)
41088e:	88 5e 24             	mov    %bl,0x24(%esi)
410891:	89 5e 28             	mov    %ebx,0x28(%esi)
410894:	38 18                	cmp    %bl,(%eax)
410896:	75 09                	jne    0x4108a1
410898:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%esi)
41089f:	eb d0                	jmp    0x410871
4108a1:	0f b6 00             	movzbl (%eax),%eax
4108a4:	50                   	push   %eax
4108a5:	e8 a5 3c 00 00       	call   0x41454f
4108aa:	59                   	pop    %ecx
4108ab:	85 c0                	test   %eax,%eax
4108ad:	74 24                	je     0x4108d3
4108af:	c7 46 10 02 00 00 00 	movl   $0x2,0x10(%esi)
4108b6:	eb 03                	jmp    0x4108bb
4108b8:	ff 46 08             	incl   0x8(%esi)
4108bb:	8b 46 08             	mov    0x8(%esi),%eax
4108be:	0f b6 00             	movzbl (%eax),%eax
4108c1:	50                   	push   %eax
4108c2:	e8 88 3c 00 00       	call   0x41454f
4108c7:	59                   	pop    %ecx
4108c8:	85 c0                	test   %eax,%eax
4108ca:	75 ec                	jne    0x4108b8
4108cc:	b0 01                	mov    $0x1,%al
4108ce:	e9 ae 00 00 00       	jmp    0x410981
4108d3:	8b 4e 08             	mov    0x8(%esi),%ecx
4108d6:	80 39 25             	cmpb   $0x25,(%ecx)
4108d9:	0f 85 80 00 00 00    	jne    0x41095f
4108df:	8d 41 01             	lea    0x1(%ecx),%eax
4108e2:	80 38 25             	cmpb   $0x25,(%eax)
4108e5:	74 78                	je     0x41095f
4108e7:	c7 46 10 04 00 00 00 	movl   $0x4,0x10(%esi)
4108ee:	89 46 08             	mov    %eax,0x8(%esi)
4108f1:	80 38 2a             	cmpb   $0x2a,(%eax)
4108f4:	75 08                	jne    0x4108fe
4108f6:	40                   	inc    %eax
4108f7:	c6 46 16 01          	movb   $0x1,0x16(%esi)
4108fb:	89 46 08             	mov    %eax,0x8(%esi)
4108fe:	8b ce                	mov    %esi,%ecx
410900:	e8 b5 2e 00 00       	call   0x4137ba
410905:	84 c0                	test   %al,%al
410907:	0f 84 64 ff ff ff    	je     0x410871
41090d:	8b ce                	mov    %esi,%ecx
41090f:	e8 45 2f 00 00       	call   0x413859
410914:	8b ce                	mov    %esi,%ecx
410916:	e8 b3 30 00 00       	call   0x4139ce
41091b:	8b ce                	mov    %esi,%ecx
41091d:	e8 2d 2d 00 00       	call   0x41364f
410922:	84 c0                	test   %al,%al
410924:	0f 84 47 ff ff ff    	je     0x410871
41092a:	6b 4e 28 0c          	imul   $0xc,0x28(%esi),%ecx
41092e:	8b 46 20             	mov    0x20(%esi),%eax
410931:	38 9c 01 50 ba 42 00 	cmp    %bl,0x42ba50(%ecx,%eax,1)
410938:	75 92                	jne    0x4108cc
41093a:	89 5e 10             	mov    %ebx,0x10(%esi)
41093d:	66 89 5e 14          	mov    %bx,0x14(%esi)
410941:	88 5e 16             	mov    %bl,0x16(%esi)
410944:	89 5e 18             	mov    %ebx,0x18(%esi)
410947:	89 5e 1c             	mov    %ebx,0x1c(%esi)
41094a:	89 5e 20             	mov    %ebx,0x20(%esi)
41094d:	88 5e 24             	mov    %bl,0x24(%esi)
410950:	89 5e 28             	mov    %ebx,0x28(%esi)
410953:	c7 46 0c 16 00 00 00 	movl   $0x16,0xc(%esi)
41095a:	e9 12 ff ff ff       	jmp    0x410871
41095f:	c7 46 10 03 00 00 00 	movl   $0x3,0x10(%esi)
410966:	8a 01                	mov    (%ecx),%al
410968:	88 46 14             	mov    %al,0x14(%esi)
41096b:	33 c0                	xor    %eax,%eax
41096d:	80 39 25             	cmpb   $0x25,(%ecx)
410970:	53                   	push   %ebx
410971:	0f 94 c0             	sete   %al
410974:	41                   	inc    %ecx
410975:	03 c1                	add    %ecx,%eax
410977:	8b ce                	mov    %esi,%ecx
410979:	89 46 08             	mov    %eax,0x8(%esi)
41097c:	e8 f8 2f 00 00       	call   0x413979
410981:	5e                   	pop    %esi
410982:	5b                   	pop    %ebx
410983:	c3                   	ret
410984:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
410988:	74 03                	je     0x41098d
41098a:	8b 01                	mov    (%ecx),%eax
41098c:	c3                   	ret
41098d:	6a 00                	push   $0x0
41098f:	68 9f 01 00 00       	push   $0x19f
410994:	68 f8 b8 42 00       	push   $0x42b8f8
410999:	68 60 b9 42 00       	push   $0x42b960
41099e:	68 bc b9 42 00       	push   $0x42b9bc
4109a3:	e8 67 b3 ff ff       	call   0x40bd0f
4109a8:	cc                   	int3
4109a9:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
4109ad:	75 03                	jne    0x4109b2
4109af:	8b 01                	mov    (%ecx),%eax
4109b1:	c3                   	ret
4109b2:	6a 00                	push   $0x0
4109b4:	68 a5 01 00 00       	push   $0x1a5
4109b9:	68 f8 b8 42 00       	push   $0x42b8f8
4109be:	68 d8 b9 42 00       	push   $0x42b9d8
4109c3:	68 34 ba 42 00       	push   $0x42ba34
4109c8:	e8 42 b3 ff ff       	call   0x40bd0f
4109cd:	cc                   	int3
4109ce:	8b ff                	mov    %edi,%edi
4109d0:	55                   	push   %ebp
4109d1:	8b ec                	mov    %esp,%ebp
4109d3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4109d6:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
4109da:	74 12                	je     0x4109ee
4109dc:	e8 a3 ff ff ff       	call   0x410984
4109e1:	50                   	push   %eax