4129ad:	83 c0 04             	add    $0x4,%eax
4129b0:	83 f9 26             	cmp    $0x26,%ecx
4129b3:	74 25                	je     0x4129da
4129b5:	83 38 00             	cmpl   $0x0,(%eax)
4129b8:	74 f2                	je     0x4129ac
4129ba:	53                   	push   %ebx
4129bb:	8d 84 8e b8 00 00 00 	lea    0xb8(%esi,%ecx,4),%eax
4129c2:	8b 18                	mov    (%eax),%ebx
4129c4:	8b 13                	mov    (%ebx),%edx
4129c6:	57                   	push   %edi
4129c7:	51                   	push   %ecx
4129c8:	53                   	push   %ebx
4129c9:	8b ce                	mov    %esi,%ecx
4129cb:	89 10                	mov    %edx,(%eax)
4129cd:	e8 ed f1 ff ff       	call   0x411bbf
4129d2:	8b c3                	mov    %ebx,%eax
4129d4:	5b                   	pop    %ebx
4129d5:	5f                   	pop    %edi
4129d6:	5e                   	pop    %esi
4129d7:	c2 04 00             	ret    $0x4
4129da:	fe 8e aa 00 00 00    	decb   0xaa(%esi)
4129e0:	0f b6 44 37 04       	movzbl 0x4(%edi,%esi,1),%eax
4129e5:	6b c0 0c             	imul   $0xc,%eax,%eax
4129e8:	8d 96 5c 01 00 00    	lea    0x15c(%esi),%edx
4129ee:	8b 0a                	mov    (%edx),%ecx
4129f0:	8b f9                	mov    %ecx,%edi
4129f2:	2b be 50 01 00 00    	sub    0x150(%esi),%edi
4129f8:	3b f8                	cmp    %eax,%edi
4129fa:	7e 10                	jle    0x412a0c
4129fc:	2b c8                	sub    %eax,%ecx
4129fe:	89 0a                	mov    %ecx,(%edx)
412a00:	8d 8e 54 01 00 00    	lea    0x154(%esi),%ecx
412a06:	29 01                	sub    %eax,(%ecx)
412a08:	8b 01                	mov    (%ecx),%eax
412a0a:	eb c9                	jmp    0x4129d5
412a0c:	33 c0                	xor    %eax,%eax
412a0e:	eb c5                	jmp    0x4129d5
412a10:	8b 44 24 04          	mov    0x4(%esp),%eax
412a14:	56                   	push   %esi
412a15:	0f b6 74 08 29       	movzbl 0x29(%eax,%ecx,1),%esi
412a1a:	8d 94 b1 b8 00 00 00 	lea    0xb8(%ecx,%esi,4),%edx
412a21:	8b 02                	mov    (%edx),%eax
412a23:	85 c0                	test   %eax,%eax
412a25:	74 06                	je     0x412a2d
412a27:	8b 08                	mov    (%eax),%ecx
412a29:	89 0a                	mov    %ecx,(%edx)
412a2b:	eb 34                	jmp    0x412a61
412a2d:	0f b6 54 0e 04       	movzbl 0x4(%esi,%ecx,1),%edx
412a32:	8b 81 b0 00 00 00    	mov    0xb0(%ecx),%eax
412a38:	6b d2 0c             	imul   $0xc,%edx,%edx
412a3b:	03 d0                	add    %eax,%edx
412a3d:	89 91 b0 00 00 00    	mov    %edx,0xb0(%ecx)
412a43:	3b 91 b4 00 00 00    	cmp    0xb4(%ecx),%edx
412a49:	76 16                	jbe    0x412a61
412a4b:	0f b6 44 0e 04       	movzbl 0x4(%esi,%ecx,1),%eax
412a50:	6b c0 0c             	imul   $0xc,%eax,%eax
412a53:	2b d0                	sub    %eax,%edx
412a55:	56                   	push   %esi
412a56:	89 91 b0 00 00 00    	mov    %edx,0xb0(%ecx)
412a5c:	e8 12 ff ff ff       	call   0x412973
412a61:	5e                   	pop    %esi
412a62:	c2 04 00             	ret    $0x4
412a65:	8d 91 b4 00 00 00    	lea    0xb4(%ecx),%edx
412a6b:	8b 02                	mov    (%edx),%eax
412a6d:	3b 81 b0 00 00 00    	cmp    0xb0(%ecx),%eax
412a73:	74 06                	je     0x412a7b
412a75:	83 c0 f4             	add    $0xfffffff4,%eax
412a78:	89 02                	mov    %eax,(%edx)
412a7a:	c3                   	ret
412a7b:	8d 91 b8 00 00 00    	lea    0xb8(%ecx),%edx
412a81:	83 3a 00             	cmpl   $0x0,(%edx)
412a84:	74 07                	je     0x412a8d
412a86:	8b 02                	mov    (%edx),%eax
412a88:	8b 08                	mov    (%eax),%ecx
412a8a:	89 0a                	mov    %ecx,(%edx)
412a8c:	c3                   	ret
412a8d:	6a 00                	push   $0x0
412a8f:	e8 df fe ff ff       	call   0x412973
412a94:	c3                   	ret
412a95:	55                   	push   %ebp
412a96:	8b ec                	mov    %esp,%ebp
412a98:	53                   	push   %ebx
412a99:	56                   	push   %esi
412a9a:	8b 75 0c             	mov    0xc(%ebp),%esi
412a9d:	57                   	push   %edi
412a9e:	8b f9                	mov    %ecx,%edi
412aa0:	0f b6 5c 3e 29       	movzbl 0x29(%esi,%edi,1),%ebx
412aa5:	0f b6 44 3e 2a       	movzbl 0x2a(%esi,%edi,1),%eax
412aaa:	3b d8                	cmp    %eax,%ebx
412aac:	75 05                	jne    0x412ab3
412aae:	8b 45 08             	mov    0x8(%ebp),%eax
412ab1:	eb 31                	jmp    0x412ae4
412ab3:	8d 46 01             	lea    0x1(%esi),%eax
412ab6:	50                   	push   %eax
412ab7:	e8 54 ff ff ff       	call   0x412a10
412abc:	89 45 0c             	mov    %eax,0xc(%ebp)
412abf:	85 c0                	test   %eax,%eax
412ac1:	74 1e                	je     0x412ae1
412ac3:	6b f6 0c             	imul   $0xc,%esi,%esi
412ac6:	56                   	push   %esi
412ac7:	8b 75 08             	mov    0x8(%ebp),%esi
412aca:	56                   	push   %esi
412acb:	50                   	push   %eax
412acc:	e8 9f 91 00 00       	call   0x41bc70
412ad1:	8d 84 9f b8 00 00 00 	lea    0xb8(%edi,%ebx,4),%eax
412ad8:	8b 08                	mov    (%eax),%ecx
412ada:	89 0e                	mov    %ecx,(%esi)
412adc:	83 c4 0c             	add    $0xc,%esp
412adf:	89 30                	mov    %esi,(%eax)
412ae1:	8b 45 0c             	mov    0xc(%ebp),%eax
412ae4:	5f                   	pop    %edi
412ae5:	5e                   	pop    %esi
412ae6:	5b                   	pop    %ebx
412ae7:	5d                   	pop    %ebp
412ae8:	c2 08 00             	ret    $0x8
412aeb:	53                   	push   %ebx
412aec:	8b d9                	mov    %ecx,%ebx
412aee:	8b 4c 24 08          	mov    0x8(%esp),%ecx
412af2:	81 c1 8c 4a 00 00    	add    $0x4a8c,%ecx
412af8:	e8 68 ff ff ff       	call   0x412a65
412afd:	85 c0                	test   %eax,%eax
412aff:	74 1e                	je     0x412b1f
412b01:	56                   	push   %esi
412b02:	8b 74 24 14          	mov    0x14(%esp),%esi
412b06:	57                   	push   %edi
412b07:	33 c9                	xor    %ecx,%ecx
412b09:	41                   	inc    %ecx
412b0a:	66 89 08             	mov    %cx,(%eax)
412b0d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
412b11:	8d 78 02             	lea    0x2(%eax),%edi
412b14:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412b15:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412b17:	5f                   	pop    %edi
412b18:	89 58 08             	mov    %ebx,0x8(%eax)
412b1b:	89 41 02             	mov    %eax,0x2(%ecx)
412b1e:	5e                   	pop    %esi
412b1f:	5b                   	pop    %ebx
412b20:	c2 0c 00             	ret    $0xc
412b23:	8b c1                	mov    %ecx,%eax
412b25:	33 c9                	xor    %ecx,%ecx
412b27:	89 88 8c 4a 00 00    	mov    %ecx,0x4a8c(%eax)
412b2d:	89 88 44 06 00 00    	mov    %ecx,0x644(%eax)
412b33:	89 88 4c 06 00 00    	mov    %ecx,0x64c(%eax)
412b39:	89 88 48 06 00 00    	mov    %ecx,0x648(%eax)
412b3f:	c3                   	ret
412b40:	55                   	push   %ebp
412b41:	8b ec                	mov    %esp,%ebp
412b43:	83 ec 14             	sub    $0x14,%esp
412b46:	53                   	push   %ebx
412b47:	56                   	push   %esi
412b48:	57                   	push   %edi
412b49:	bf 00 01 00 00       	mov    $0x100,%edi
412b4e:	8b f1                	mov    %ecx,%esi
412b50:	57                   	push   %edi
412b51:	8d 86 6c 06 00 00    	lea    0x66c(%esi),%eax
412b57:	6a 00                	push   $0x0
412b59:	50                   	push   %eax
412b5a:	e8 a1 76 00 00       	call   0x41a200
412b5f:	8d 9e 8c 4a 00 00    	lea    0x4a8c(%esi),%ebx
412b65:	83 c4 0c             	add    $0xc,%esp
412b68:	8b cb                	mov    %ebx,%ecx
412b6a:	e8 21 f1 ff ff       	call   0x411c90
412b6f:	8b 86 60 06 00 00    	mov    0x660(%esi),%eax
412b75:	83 f8 0c             	cmp    $0xc,%eax
412b78:	7c 03                	jl     0x412b7d
412b7a:	6a 0c                	push   $0xc
412b7c:	58                   	pop    %eax
412b7d:	83 c9 ff             	or     $0xffffffff,%ecx
412b80:	2b c8                	sub    %eax,%ecx
412b82:	89 8e 68 06 00 00    	mov    %ecx,0x668(%esi)
412b88:	8b cb                	mov    %ebx,%ecx
412b8a:	e8 d6 fe ff ff       	call   0x412a65
412b8f:	89 86 4c 06 00 00    	mov    %eax,0x64c(%esi)
412b95:	89 86 44 06 00 00    	mov    %eax,0x644(%esi)
412b9b:	83 60 08 00          	andl   $0x0,0x8(%eax)
412b9f:	8b 86 60 06 00 00    	mov    0x660(%esi),%eax
412ba5:	89 86 5c 06 00 00    	mov    %eax,0x65c(%esi)
412bab:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bb1:	66 89 38             	mov    %di,(%eax)
412bb4:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bba:	b9 01 01 00 00       	mov    $0x101,%ecx
412bbf:	66 89 48 02          	mov    %cx,0x2(%eax)
412bc3:	bf 80 00 00 00       	mov    $0x80,%edi
412bc8:	57                   	push   %edi
412bc9:	8b cb                	mov    %ebx,%ecx
412bcb:	e8 40 fe ff ff       	call   0x412a10
412bd0:	8b 8e 44 06 00 00    	mov    0x644(%esi),%ecx
412bd6:	89 41 04             	mov    %eax,0x4(%ecx)
412bd9:	8b 86 44 06 00 00    	mov    0x644(%esi),%eax
412bdf:	8b 40 04             	mov    0x4(%eax),%eax
412be2:	89 86 50 06 00 00    	mov    %eax,0x650(%esi)
412be8:	8b 86 68 06 00 00    	mov    0x668(%esi),%eax
412bee:	33 c9                	xor    %ecx,%ecx
412bf0:	89 86 64 06 00 00    	mov    %eax,0x664(%esi)
412bf6:	88 8e 6d 0a 00 00    	mov    %cl,0xa6d(%esi)
412bfc:	33 c0                	xor    %eax,%eax
412bfe:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c04:	8b 52 04             	mov    0x4(%edx),%edx
412c07:	88 0c 10             	mov    %cl,(%eax,%edx,1)
412c0a:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c10:	8b 52 04             	mov    0x4(%edx),%edx
412c13:	c6 44 02 01 01       	movb   $0x1,0x1(%edx,%eax,1)
412c18:	8b 96 44 06 00 00    	mov    0x644(%esi),%edx
412c1e:	8b 52 04             	mov    0x4(%edx),%edx
412c21:	83 64 02 02 00       	andl   $0x0,0x2(%edx,%eax,1)
412c26:	83 c0 06             	add    $0x6,%eax
412c29:	41                   	inc    %ecx
412c2a:	3d 00 06 00 00       	cmp    $0x600,%eax
412c2f:	7c cd                	jl     0x412bfe
412c31:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412c35:	8d 86 70 0a 00 00    	lea    0xa70(%esi),%eax
412c3b:	89 45 f0             	mov    %eax,-0x10(%ebp)
412c3e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
412c41:	8b 45 f0             	mov    -0x10(%ebp),%eax
412c44:	83 c3 02             	add    $0x2,%ebx
412c47:	b9 ac ad 42 00       	mov    $0x42adac,%ecx
412c4c:	89 45 f4             	mov    %eax,-0xc(%ebp)
412c4f:	8b 45 f4             	mov    -0xc(%ebp),%eax
412c52:	89 45 f8             	mov    %eax,-0x8(%ebp)
412c55:	c7 45 ec 08 00 00 00 	movl   $0x8,-0x14(%ebp)
412c5c:	0f b7 01             	movzwl (%ecx),%eax
412c5f:	99                   	cltd
412c60:	f7 fb                	idiv   %ebx
412c62:	ba 00 40 00 00       	mov    $0x4000,%edx
412c67:	2b d0                	sub    %eax,%edx
412c69:	8b 45 f8             	mov    -0x8(%ebp),%eax
412c6c:	83 45 f8 10          	addl   $0x10,-0x8(%ebp)
412c70:	ff 4d ec             	decl   -0x14(%ebp)
412c73:	66 89 10             	mov    %dx,(%eax)
412c76:	75 e4                	jne    0x412c5c
412c78:	83 45 f4 02          	addl   $0x2,-0xc(%ebp)
412c7c:	41                   	inc    %ecx
412c7d:	41                   	inc    %ecx
412c7e:	81 f9 bc ad 42 00    	cmp    $0x42adbc,%ecx
412c84:	7c c9                	jl     0x412c4f
412c86:	ff 45 fc             	incl   -0x4(%ebp)
412c89:	01 7d f0             	add    %edi,-0x10(%ebp)
412c8c:	39 7d fc             	cmp    %edi,-0x4(%ebp)
412c8f:	7c ad                	jl     0x412c3e
412c91:	33 d2                	xor    %edx,%edx
412c93:	8d 4e 03             	lea    0x3(%esi),%ecx
412c96:	8d 42 02             	lea    0x2(%edx),%eax
412c99:	6a 10                	push   $0x10
412c9b:	6b c0 28             	imul   $0x28,%eax,%eax
412c9e:	5e                   	pop    %esi
412c9f:	c6 41 ff 03          	movb   $0x3,-0x1(%ecx)
412ca3:	66 89 41 fd          	mov    %ax,-0x3(%ecx)
412ca7:	c6 01 04             	movb   $0x4,(%ecx)
412caa:	83 c1 04             	add    $0x4,%ecx
412cad:	4e                   	dec    %esi
412cae:	75 ef                	jne    0x412c9f
412cb0:	42                   	inc    %edx
412cb1:	83 fa 19             	cmp    $0x19,%edx
412cb4:	7c e0                	jl     0x412c96
412cb6:	5f                   	pop    %edi
412cb7:	5e                   	pop    %esi
412cb8:	5b                   	pop    %ebx
412cb9:	c9                   	leave
412cba:	c3                   	ret
412cbb:	8b 44 24 04          	mov    0x4(%esp),%eax
412cbf:	53                   	push   %ebx
412cc0:	56                   	push   %esi
412cc1:	8b f1                	mov    %ecx,%esi
412cc3:	33 db                	xor    %ebx,%ebx
412cc5:	43                   	inc    %ebx
412cc6:	57                   	push   %edi
412cc7:	88 9e 6c 0a 00 00    	mov    %bl,0xa6c(%esi)
412ccd:	89 86 60 06 00 00    	mov    %eax,0x660(%esi)
412cd3:	e8 68 fe ff ff       	call   0x412b40
412cd8:	6a 09                	push   $0x9
412cda:	8d 86 6e 08 00 00    	lea    0x86e(%esi),%eax
412ce0:	6a 04                	push   $0x4
412ce2:	50                   	push   %eax
412ce3:	c6 86 6c 08 00 00 00 	movb   $0x0,0x86c(%esi)
412cea:	c6 86 6d 08 00 00 02 	movb   $0x2,0x86d(%esi)
412cf1:	e8 0a 75 00 00       	call   0x41a200
412cf6:	68 f5 00 00 00       	push   $0xf5
412cfb:	8d 86 77 08 00 00    	lea    0x877(%esi),%eax
412d01:	6a 06                	push   $0x6
412d03:	50                   	push   %eax
412d04:	e8 f7 74 00 00       	call   0x41a200
412d09:	83 c4 18             	add    $0x18,%esp
412d0c:	33 c0                	xor    %eax,%eax
412d0e:	88 84 06 6c 07 00 00 	mov    %al,0x76c(%esi,%eax,1)
412d15:	40                   	inc    %eax
412d16:	83 f8 03             	cmp    $0x3,%eax
412d19:	7c f3                	jl     0x412d0e
412d1b:	8b d0                	mov    %eax,%edx
412d1d:	8b fb                	mov    %ebx,%edi
412d1f:	b9 00 01 00 00       	mov    $0x100,%ecx
412d24:	eb 0f                	jmp    0x412d35
412d26:	4f                   	dec    %edi
412d27:	88 94 06 6c 07 00 00 	mov    %dl,0x76c(%esi,%eax,1)
412d2e:	75 04                	jne    0x412d34
412d30:	43                   	inc    %ebx
412d31:	8b fb                	mov    %ebx,%edi
412d33:	42                   	inc    %edx
412d34:	40                   	inc    %eax
412d35:	3b c1                	cmp    %ecx,%eax
412d37:	7c ed                	jl     0x412d26
412d39:	6a 40                	push   $0x40
412d3b:	8d 86 6c 09 00 00    	lea    0x96c(%esi),%eax
412d41:	6a 00                	push   $0x0
412d43:	50                   	push   %eax
412d44:	e8 b7 74 00 00       	call   0x41a200
412d49:	68 c0 00 00 00       	push   $0xc0
412d4e:	8d 86 ac 09 00 00    	lea    0x9ac(%esi),%eax
412d54:	6a 08                	push   $0x8
412d56:	50                   	push   %eax
412d57:	e8 a4 74 00 00       	call   0x41a200
412d5c:	83 c4 18             	add    $0x18,%esp
412d5f:	5f                   	pop    %edi
412d60:	c6 86 42 06 00 00 07 	movb   $0x7,0x642(%esi)
412d67:	5e                   	pop    %esi
412d68:	5b                   	pop    %ebx
412d69:	c2 04 00             	ret    $0x4
412d6c:	55                   	push   %ebp
412d6d:	8b ec                	mov    %esp,%ebp
412d6f:	83 ec 20             	sub    $0x20,%esp
412d72:	53                   	push   %ebx
412d73:	8b d9                	mov    %ecx,%ebx
412d75:	0f b7 03             	movzwl (%ebx),%eax
412d78:	89 45 e8             	mov    %eax,-0x18(%ebp)
412d7b:	48                   	dec    %eax
412d7c:	89 45 fc             	mov    %eax,-0x4(%ebp)
412d7f:	8b 45 08             	mov    0x8(%ebp),%eax
412d82:	8b 80 50 06 00 00    	mov    0x650(%eax),%eax
412d88:	56                   	push   %esi
412d89:	57                   	push   %edi
412d8a:	eb 0c                	jmp    0x412d98
412d8c:	8d 70 fa             	lea    -0x6(%eax),%esi
412d8f:	56                   	push   %esi
412d90:	50                   	push   %eax
412d91:	e8 51 f8 ff ff       	call   0x4125e7
412d96:	8b c6                	mov    %esi,%eax
412d98:	3b 43 04             	cmp    0x4(%ebx),%eax
412d9b:	75 ef                	jne    0x412d8c
412d9d:	8b 4b 04             	mov    0x4(%ebx),%ecx
412da0:	80 41 01 04          	addb   $0x4,0x1(%ecx)
412da4:	8d 4b 02             	lea    0x2(%ebx),%ecx
412da7:	66 83 01 04          	addw   $0x4,(%ecx)
412dab:	0f b7 11             	movzwl (%ecx),%edx
412dae:	0f b6 70 01          	movzbl 0x1(%eax),%esi
412db2:	0f b7 d2             	movzwl %dx,%edx
412db5:	2b d6                	sub    %esi,%edx
412db7:	8b 75 08             	mov    0x8(%ebp),%esi
412dba:	89 55 f8             	mov    %edx,-0x8(%ebp)
412dbd:	33 d2                	xor    %edx,%edx
412dbf:	39 96 5c 06 00 00    	cmp    %edx,0x65c(%esi)
412dc5:	0f 95 c2             	setne  %dl