42a959:	89 47 08             	mov    %eax,0x8(%edi)
42a95c:	eb 13                	jmp    0x42a971
42a95e:	54                   	push   %esp
42a95f:	0f b6 57 70          	movzbl 0x70(%edi),%edx
42a963:	52                   	push   %edx
42a964:	6a 00                	push   $0x0
42a966:	8b cd                	mov    %ebp,%ecx
42a968:	8b d0                	mov    %eax,%edx
42a96a:	8b c6                	mov    %esi,%eax
42a96c:	e8 0b f7 ff ff       	call   0x42a07c
42a971:	8b d6                	mov    %esi,%edx
42a973:	8b c6                	mov    %esi,%eax
42a975:	8b 08                	mov    (%eax),%ecx
42a977:	ff 51 10             	call   *0x10(%ecx)
42a97a:	83 c4 54             	add    $0x54,%esp
42a97d:	5d                   	pop    %ebp
42a97e:	5f                   	pop    %edi
42a97f:	5e                   	pop    %esi
42a980:	5b                   	pop    %ebx
42a981:	c3                   	ret
42a982:	8b c0                	mov    %eax,%eax
42a984:	53                   	push   %ebx
42a985:	56                   	push   %esi
42a986:	57                   	push   %edi
42a987:	8b fa                	mov    %edx,%edi
42a989:	8b f0                	mov    %eax,%esi
42a98b:	8b 46 28             	mov    0x28(%esi),%eax
42a98e:	8b 50 1c             	mov    0x1c(%eax),%edx
42a991:	8b cf                	mov    %edi,%ecx
42a993:	8b c6                	mov    %esi,%eax
42a995:	8b 18                	mov    (%eax),%ebx
42a997:	ff 53 64             	call   *0x64(%ebx)
42a99a:	5f                   	pop    %edi
42a99b:	5e                   	pop    %esi
42a99c:	5b                   	pop    %ebx
42a99d:	c3                   	ret
42a99e:	8b c0                	mov    %eax,%eax
42a9a0:	53                   	push   %ebx
42a9a1:	56                   	push   %esi
42a9a2:	57                   	push   %edi
42a9a3:	83 c4 ac             	add    $0xffffffac,%esp
42a9a6:	8b da                	mov    %edx,%ebx
42a9a8:	8b f8                	mov    %eax,%edi
42a9aa:	8b 77 28             	mov    0x28(%edi),%esi
42a9ad:	8d 46 30             	lea    0x30(%esi),%eax
42a9b0:	66 83 78 0c 01       	cmpw   $0x1,0xc(%eax)
42a9b5:	75 07                	jne    0x42a9be
42a9b7:	66 83 78 0e 01       	cmpw   $0x1,0xe(%eax)
42a9bc:	74 04                	je     0x42a9c2
42a9be:	33 c0                	xor    %eax,%eax
42a9c0:	eb 02                	jmp    0x42a9c4
42a9c2:	b0 01                	mov    $0x1,%al
42a9c4:	3a d8                	cmp    %al,%bl
42a9c6:	74 4d                	je     0x42aa15
42a9c8:	8b c7                	mov    %edi,%eax
42a9ca:	e8 4d f4 ff ff       	call   0x429e1c
42a9cf:	56                   	push   %esi
42a9d0:	57                   	push   %edi
42a9d1:	83 c6 18             	add    $0x18,%esi
42a9d4:	8d 7c 24 08          	lea    0x8(%esp),%edi
42a9d8:	b9 15 00 00 00       	mov    $0x15,%ecx
42a9dd:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42a9df:	5f                   	pop    %edi
42a9e0:	5e                   	pop    %esi
42a9e1:	33 c0                	xor    %eax,%eax
42a9e3:	89 44 24 18          	mov    %eax,0x18(%esp)
42a9e7:	0f b6 c3             	movzbl %bl,%eax
42a9ea:	66 89 44 24 24       	mov    %ax,0x24(%esp)
42a9ef:	66 89 44 24 26       	mov    %ax,0x26(%esp)
42a9f4:	66 89 44 24 10       	mov    %ax,0x10(%esp)
42a9f9:	66 89 44 24 12       	mov    %ax,0x12(%esp)
42a9fe:	54                   	push   %esp
42a9ff:	8b 4e 10             	mov    0x10(%esi),%ecx
42aa02:	8b 56 08             	mov    0x8(%esi),%edx
42aa05:	8b c7                	mov    %edi,%eax
42aa07:	e8 1c ee ff ff       	call   0x429828
42aa0c:	8b d7                	mov    %edi,%edx
42aa0e:	8b c7                	mov    %edi,%eax
42aa10:	8b 08                	mov    (%eax),%ecx
42aa12:	ff 51 10             	call   *0x10(%ecx)
42aa15:	83 c4 54             	add    $0x54,%esp
42aa18:	5f                   	pop    %edi
42aa19:	5e                   	pop    %esi
42aa1a:	5b                   	pop    %ebx
42aa1b:	c3                   	ret
42aa1c:	55                   	push   %ebp
42aa1d:	8b ec                	mov    %esp,%ebp
42aa1f:	83 c4 a8             	add    $0xffffffa8,%esp
42aa22:	53                   	push   %ebx
42aa23:	56                   	push   %esi
42aa24:	57                   	push   %edi
42aa25:	8b fa                	mov    %edx,%edi
42aa27:	8b d8                	mov    %eax,%ebx
42aa29:	8b 43 28             	mov    0x28(%ebx),%eax
42aa2c:	3b 78 10             	cmp    0x10(%eax),%edi
42aa2f:	0f 84 b4 00 00 00    	je     0x42aae9
42aa35:	8b f0                	mov    %eax,%esi
42aa37:	85 ff                	test   %edi,%edi
42aa39:	75 15                	jne    0x42aa50
42aa3b:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
42aa3f:	75 0f                	jne    0x42aa50
42aa41:	8b 46 10             	mov    0x10(%esi),%eax
42aa44:	e8 af 87 ff ff       	call   0x4231f8
42aa49:	33 c0                	xor    %eax,%eax
42aa4b:	89 46 10             	mov    %eax,0x10(%esi)
42aa4e:	eb 7c                	jmp    0x42aacc
42aa50:	8b c3                	mov    %ebx,%eax
42aa52:	e8 b5 f3 ff ff       	call   0x429e0c
42aa57:	8b c3                	mov    %ebx,%eax
42aa59:	e8 be f3 ff ff       	call   0x429e1c
42aa5e:	56                   	push   %esi
42aa5f:	57                   	push   %edi
42aa60:	83 c6 18             	add    $0x18,%esi
42aa63:	8d 7d a8             	lea    -0x58(%ebp),%edi
42aa66:	b9 15 00 00 00       	mov    $0x15,%ecx
42aa6b:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42aa6d:	5f                   	pop    %edi
42aa6e:	5e                   	pop    %esi
42aa6f:	8d 45 a8             	lea    -0x58(%ebp),%eax
42aa72:	50                   	push   %eax
42aa73:	6a 00                	push   $0x0
42aa75:	8b 56 10             	mov    0x10(%esi),%edx
42aa78:	8b 46 08             	mov    0x8(%esi),%eax
42aa7b:	8b cf                	mov    %edi,%ecx
42aa7d:	e8 32 e3 ff ff       	call   0x428db4
42aa82:	89 45 fc             	mov    %eax,-0x4(%ebp)
42aa85:	33 c0                	xor    %eax,%eax
42aa87:	55                   	push   %ebp
42aa88:	68 b4 aa 42 00       	push   $0x42aab4
42aa8d:	64 ff 30             	push   %fs:(%eax)
42aa90:	64 89 20             	mov    %esp,%fs:(%eax)
42aa93:	8d 45 a8             	lea    -0x58(%ebp),%eax
42aa96:	50                   	push   %eax
42aa97:	0f b6 46 70          	movzbl 0x70(%esi),%eax
42aa9b:	50                   	push   %eax
42aa9c:	6a 00                	push   $0x0
42aa9e:	8b cf                	mov    %edi,%ecx
42aaa0:	8b 55 fc             	mov    -0x4(%ebp),%edx
42aaa3:	8b c3                	mov    %ebx,%eax
42aaa5:	e8 d2 f5 ff ff       	call   0x42a07c
42aaaa:	33 c0                	xor    %eax,%eax
42aaac:	5a                   	pop    %edx
42aaad:	59                   	pop    %ecx
42aaae:	59                   	pop    %ecx
42aaaf:	64 89 10             	mov    %edx,%fs:(%eax)
42aab2:	eb 18                	jmp    0x42aacc
42aab4:	e9 43 93 fd ff       	jmp    0x403dfc
42aab9:	8b 45 fc             	mov    -0x4(%ebp),%eax
42aabc:	50                   	push   %eax
42aabd:	e8 4e c1 fd ff       	call   0x406c10
42aac2:	e8 f1 96 fd ff       	call   0x4041b8
42aac7:	e8 40 97 fd ff       	call   0x40420c
42aacc:	8b 43 28             	mov    0x28(%ebx),%eax
42aacf:	8d 48 18             	lea    0x18(%eax),%ecx
42aad2:	8b 40 14             	mov    0x14(%eax),%eax
42aad5:	8b d7                	mov    %edi,%edx
42aad7:	e8 d0 e1 ff ff       	call   0x428cac
42aadc:	c6 43 22 01          	movb   $0x1,0x22(%ebx)
42aae0:	8b d3                	mov    %ebx,%edx
42aae2:	8b c3                	mov    %ebx,%eax
42aae4:	8b 08                	mov    (%eax),%ecx
42aae6:	ff 51 10             	call   *0x10(%ecx)
42aae9:	5f                   	pop    %edi
42aaea:	5e                   	pop    %esi
42aaeb:	5b                   	pop    %ebx
42aaec:	8b e5                	mov    %ebp,%esp
42aaee:	5d                   	pop    %ebp
42aaef:	c3                   	ret
42aaf0:	53                   	push   %ebx
42aaf1:	56                   	push   %esi
42aaf2:	57                   	push   %edi
42aaf3:	8b fa                	mov    %edx,%edi
42aaf5:	8b f0                	mov    %eax,%esi
42aaf7:	8b 46 28             	mov    0x28(%esi),%eax
42aafa:	8b 48 20             	mov    0x20(%eax),%ecx
42aafd:	8b d7                	mov    %edi,%edx
42aaff:	8b c6                	mov    %esi,%eax
42ab01:	8b 18                	mov    (%eax),%ebx
42ab03:	ff 53 64             	call   *0x64(%ebx)
42ab06:	5f                   	pop    %edi
42ab07:	5e                   	pop    %esi
42ab08:	5b                   	pop    %ebx
42ab09:	c3                   	ret
42ab0a:	8b c0                	mov    %eax,%eax
42ab0c:	b1 01                	mov    $0x1,%cl
42ab0e:	e8 01 00 00 00       	call   0x42ab14
42ab13:	c3                   	ret
42ab14:	53                   	push   %ebx
42ab15:	56                   	push   %esi
42ab16:	57                   	push   %edi
42ab17:	55                   	push   %ebp
42ab18:	81 c4 d4 fb ff ff    	add    $0xfffffbd4,%esp
42ab1e:	8b d9                	mov    %ecx,%ebx
42ab20:	8b fa                	mov    %edx,%edi
42ab22:	8b f0                	mov    %eax,%esi
42ab24:	8d 44 24 10          	lea    0x10(%esp),%eax
42ab28:	33 c9                	xor    %ecx,%ecx
42ab2a:	ba 0e 00 00 00       	mov    $0xe,%edx
42ab2f:	e8 24 87 fd ff       	call   0x403258
42ab34:	66 c7 44 24 10 42 4d 	movw   $0x4d42,0x10(%esp)
42ab3b:	8b 46 28             	mov    0x28(%esi),%eax
42ab3e:	8b 68 6c             	mov    0x6c(%eax),%ebp
42ab41:	85 ed                	test   %ebp,%ebp
42ab43:	74 38                	je     0x42ab7d
42ab45:	8b c5                	mov    %ebp,%eax
42ab47:	8b 10                	mov    (%eax),%edx
42ab49:	ff 12                	call   *(%edx)
42ab4b:	89 04 24             	mov    %eax,(%esp)
42ab4e:	84 db                	test   %bl,%bl
42ab50:	74 0e                	je     0x42ab60
42ab52:	8b d4                	mov    %esp,%edx
42ab54:	b9 04 00 00 00       	mov    $0x4,%ecx
42ab59:	8b c7                	mov    %edi,%eax
42ab5b:	e8 38 ff fe ff       	call   0x41aa98
42ab60:	8b 46 28             	mov    0x28(%esi),%eax
42ab63:	8b 58 6c             	mov    0x6c(%eax),%ebx
42ab66:	8b c3                	mov    %ebx,%eax
42ab68:	8b 10                	mov    (%eax),%edx
42ab6a:	ff 12                	call   *(%edx)
42ab6c:	8b c8                	mov    %eax,%ecx
42ab6e:	8b 53 04             	mov    0x4(%ebx),%edx
42ab71:	8b c7                	mov    %edi,%eax
42ab73:	8b 18                	mov    (%eax),%ebx
42ab75:	ff 53 10             	call   *0x10(%ebx)
42ab78:	e9 3e 02 00 00       	jmp    0x42adbb
42ab7d:	8b c6                	mov    %esi,%eax
42ab7f:	e8 14 f2 ff ff       	call   0x429d98
42ab84:	8b 6e 28             	mov    0x28(%esi),%ebp
42ab87:	33 c0                	xor    %eax,%eax
42ab89:	89 04 24             	mov    %eax,(%esp)
42ab8c:	8b 45 14             	mov    0x14(%ebp),%eax
42ab8f:	85 c0                	test   %eax,%eax
42ab91:	0f 84 1a 01 00 00    	je     0x42acb1
42ab97:	8b 55 50             	mov    0x50(%ebp),%edx
42ab9a:	52                   	push   %edx
42ab9b:	8d 4c 24 04          	lea    0x4(%esp),%ecx
42ab9f:	8d 54 24 0c          	lea    0xc(%esp),%edx
42aba3:	e8 bc b7 ff ff       	call   0x426364
42aba8:	80 7d 70 00          	cmpb   $0x0,0x70(%ebp)
42abac:	74 22                	je     0x42abd0
42abae:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
42abb5:	00
42abb6:	0f b7 45 3e          	movzwl 0x3e(%ebp),%eax
42abba:	66 83 f8 08          	cmp    $0x8,%ax
42abbe:	77 10                	ja     0x42abd0
42abc0:	8b c8                	mov    %eax,%ecx
42abc2:	b8 01 00 00 00       	mov    $0x1,%eax
42abc7:	d3 e0                	shl    %cl,%eax
42abc9:	8d 04 40             	lea    (%eax,%eax,2),%eax
42abcc:	01 44 24 08          	add    %eax,0x8(%esp)
42abd0:	8b 44 24 08          	mov    0x8(%esp),%eax
42abd4:	83 c0 0e             	add    $0xe,%eax
42abd7:	01 04 24             	add    %eax,(%esp)
42abda:	8d 44 24 10          	lea    0x10(%esp),%eax
42abde:	33 c9                	xor    %ecx,%ecx
42abe0:	ba 0e 00 00 00       	mov    $0xe,%edx
42abe5:	e8 6e 86 fd ff       	call   0x403258
42abea:	66 c7 44 24 10 42 4d 	movw   $0x4d42,0x10(%esp)
42abf1:	8b c6                	mov    %esi,%eax
42abf3:	e8 64 f0 ff ff       	call   0x429c5c
42abf8:	0f b6 15 c8 ad 42 00 	movzbl 0x42adc8,%edx
42abff:	e8 e4 a5 ff ff       	call   0x4251e8
42ac04:	8b 45 14             	mov    0x14(%ebp),%eax
42ac07:	50                   	push   %eax
42ac08:	8b 46 2c             	mov    0x2c(%esi),%eax
42ac0b:	8b 40 04             	mov    0x4(%eax),%eax
42ac0e:	50                   	push   %eax
42ac0f:	e8 34 c1 fd ff       	call   0x406d48
42ac14:	e8 f7 a8 ff ff       	call   0x425510
42ac19:	89 44 24 0c          	mov    %eax,0xc(%esp)
42ac1d:	8d 44 24 2a          	lea    0x2a(%esp),%eax
42ac21:	50                   	push   %eax
42ac22:	68 00 01 00 00       	push   $0x100
42ac27:	6a 00                	push   $0x0
42ac29:	8b 46 2c             	mov    0x2c(%esi),%eax
42ac2c:	8b 40 04             	mov    0x4(%eax),%eax
42ac2f:	50                   	push   %eax
42ac30:	e8 1b c0 fd ff       	call   0x406c50
42ac35:	89 44 24 04          	mov    %eax,0x4(%esp)
42ac39:	8b 44 24 0c          	mov    0xc(%esp),%eax
42ac3d:	50                   	push   %eax
42ac3e:	8b 46 2c             	mov    0x2c(%esi),%eax
42ac41:	8b 40 04             	mov    0x4(%eax),%eax
42ac44:	50                   	push   %eax
42ac45:	e8 fe c0 fd ff       	call   0x406d48
42ac4a:	8b 45 50             	mov    0x50(%ebp),%eax
42ac4d:	85 c0                	test   %eax,%eax
42ac4f:	76 0a                	jbe    0x42ac5b
42ac51:	3b 44 24 04          	cmp    0x4(%esp),%eax
42ac55:	73 04                	jae    0x42ac5b
42ac57:	89 44 24 04          	mov    %eax,0x4(%esp)
42ac5b:	80 7d 70 00          	cmpb   $0x0,0x70(%ebp)
42ac5f:	75 3e                	jne    0x42ac9f
42ac61:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
42ac66:	75 37                	jne    0x42ac9f
42ac68:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
42ac6c:	74 31                	je     0x42ac9f
42ac6e:	80 7d 71 00          	cmpb   $0x0,0x71(%ebp)
42ac72:	75 2b                	jne    0x42ac9f
42ac74:	8d 54 24 2a          	lea    0x2a(%esp),%edx
42ac78:	b9 ff 00 00 00       	mov    $0xff,%ecx
42ac7d:	8b 45 10             	mov    0x10(%ebp),%eax
42ac80:	e8 27 b0 ff ff       	call   0x425cac
42ac85:	89 44 24 04          	mov    %eax,0x4(%esp)
42ac89:	66 83 7d 3e 08       	cmpw   $0x8,0x3e(%ebp)
42ac8e:	76 0f                	jbe    0x42ac9f
42ac90:	8b 44 24 04          	mov    0x4(%esp),%eax
42ac94:	03 c0                	add    %eax,%eax
42ac96:	03 c0                	add    %eax,%eax
42ac98:	01 04 24             	add    %eax,(%esp)
42ac9b:	01 44 24 08          	add    %eax,0x8(%esp)
42ac9f:	8b 04 24             	mov    (%esp),%eax
42aca2:	89 44 24 12          	mov    %eax,0x12(%esp)
42aca6:	8b 44 24 08          	mov    0x8(%esp),%eax
42acaa:	83 c0 0e             	add    $0xe,%eax
42acad:	89 44 24 1a          	mov    %eax,0x1a(%esp)
42acb1:	84 db                	test   %bl,%bl
42acb3:	74 0e                	je     0x42acc3
42acb5:	8b d4                	mov    %esp,%edx
42acb7:	b9 04 00 00 00       	mov    $0x4,%ecx
42acbc:	8b c7                	mov    %edi,%eax
42acbe:	e8 d5 fd fe ff       	call   0x41aa98
42acc3:	83 3c 24 00          	cmpl   $0x0,(%esp)
42acc7:	0f 84 ee 00 00 00    	je     0x42adbb
42accd:	8d 45 18             	lea    0x18(%ebp),%eax
42acd0:	e8 93 e0 ff ff       	call   0x428d68
42acd5:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
42acda:	74 27                	je     0x42ad03
42acdc:	8b 45 50             	mov    0x50(%ebp),%eax
42acdf:	85 c0                	test   %eax,%eax
42ace1:	74 06                	je     0x42ace9
42ace3:	3b 44 24 04          	cmp    0x4(%esp),%eax
42ace7:	74 07                	je     0x42acf0
42ace9:	8b 44 24 04          	mov    0x4(%esp),%eax
42aced:	89 45 50             	mov    %eax,0x50(%ebp)
42acf0:	80 7d 70 00          	cmpb   $0x0,0x70(%ebp)
42acf4:	74 0d                	je     0x42ad03
42acf6:	8d 54 24 04          	lea    0x4(%esp),%edx
42acfa:	8d 44 24 2a          	lea    0x2a(%esp),%eax
42acfe:	e8 85 ac ff ff       	call   0x425988
42ad03:	80 7d 70 00          	cmpb   $0x0,0x70(%ebp)
42ad07:	74 4f                	je     0x42ad58
42ad09:	8d 45 30             	lea    0x30(%ebp),%eax
42ad0c:	c7 44 24 1e 0c 00 00 	movl   $0xc,0x1e(%esp)
42ad13:	00
42ad14:	0f b7 50 04          	movzwl 0x4(%eax),%edx
42ad18:	66 89 54 24 22       	mov    %dx,0x22(%esp)
42ad1d:	0f b7 50 08          	movzwl 0x8(%eax),%edx
42ad21:	66 89 54 24 24       	mov    %dx,0x24(%esp)
42ad26:	66 c7 44 24 26 01 00 	movw   $0x1,0x26(%esp)