51f832:	3b b3 48 01 00 00    	cmp    0x148(%ebx),%esi
51f838:	72 10                	jb     0x51f84a
51f83a:	8b 83 38 01 00 00    	mov    0x138(%ebx),%eax
51f840:	89 06                	mov    %eax,(%esi)
51f842:	89 b3 38 01 00 00    	mov    %esi,0x138(%ebx)
51f848:	eb 55                	jmp    0x51f89f
51f84a:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
51f851:	74 42                	je     0x51f895
51f853:	a1 90 ff 72 00       	mov    0x72ff90,%eax
51f858:	85 c0                	test   %eax,%eax
51f85a:	74 0a                	je     0x51f866
51f85c:	50                   	push   %eax
51f85d:	ff 15 60 18 72 00    	call   *0x721860
51f863:	83 c4 04             	add    $0x4,%esp
51f866:	56                   	push   %esi
51f867:	ff 15 3c 18 72 00    	call   *0x72183c
51f86d:	29 05 20 00 73 00    	sub    %eax,0x730020
51f873:	ff 0d 44 00 73 00    	decl   0x730044
51f879:	56                   	push   %esi
51f87a:	ff 15 34 18 72 00    	call   *0x721834
51f880:	a1 90 ff 72 00       	mov    0x72ff90,%eax
51f885:	83 c4 08             	add    $0x8,%esp
51f888:	85 c0                	test   %eax,%eax
51f88a:	74 13                	je     0x51f89f
51f88c:	50                   	push   %eax
51f88d:	ff 15 68 18 72 00    	call   *0x721868
51f893:	eb 07                	jmp    0x51f89c
51f895:	56                   	push   %esi
51f896:	ff 15 34 18 72 00    	call   *0x721834
51f89c:	83 c4 04             	add    $0x4,%esp
51f89f:	8b 45 f4             	mov    -0xc(%ebp),%eax
51f8a2:	83 c7 14             	add    $0x14,%edi
51f8a5:	83 e8 01             	sub    $0x1,%eax
51f8a8:	89 45 f4             	mov    %eax,-0xc(%ebp)
51f8ab:	0f 85 3f ff ff ff    	jne    0x51f7f0
51f8b1:	8b 75 f0             	mov    -0x10(%ebp),%esi
51f8b4:	85 f6                	test   %esi,%esi
51f8b6:	0f 84 a5 00 00 00    	je     0x51f961
51f8bc:	83 bb f8 01 00 00 00 	cmpl   $0x0,0x1f8(%ebx)
51f8c3:	74 0f                	je     0x51f8d4
51f8c5:	56                   	push   %esi
51f8c6:	53                   	push   %ebx
51f8c7:	e8 a4 9b fe ff       	call   0x509470
51f8cc:	83 c4 08             	add    $0x8,%esp
51f8cf:	e9 8d 00 00 00       	jmp    0x51f961
51f8d4:	3b b3 4c 01 00 00    	cmp    0x14c(%ebx),%esi
51f8da:	73 30                	jae    0x51f90c
51f8dc:	3b b3 44 01 00 00    	cmp    0x144(%ebx),%esi
51f8e2:	72 10                	jb     0x51f8f4
51f8e4:	8b 83 40 01 00 00    	mov    0x140(%ebx),%eax
51f8ea:	89 06                	mov    %eax,(%esi)
51f8ec:	89 b3 40 01 00 00    	mov    %esi,0x140(%ebx)
51f8f2:	eb 6d                	jmp    0x51f961
51f8f4:	3b b3 48 01 00 00    	cmp    0x148(%ebx),%esi
51f8fa:	72 10                	jb     0x51f90c
51f8fc:	8b 83 38 01 00 00    	mov    0x138(%ebx),%eax
51f902:	89 06                	mov    %eax,(%esi)
51f904:	89 b3 38 01 00 00    	mov    %esi,0x138(%ebx)
51f90a:	eb 55                	jmp    0x51f961
51f90c:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
51f913:	74 42                	je     0x51f957
51f915:	a1 90 ff 72 00       	mov    0x72ff90,%eax
51f91a:	85 c0                	test   %eax,%eax
51f91c:	74 0a                	je     0x51f928
51f91e:	50                   	push   %eax
51f91f:	ff 15 60 18 72 00    	call   *0x721860
51f925:	83 c4 04             	add    $0x4,%esp
51f928:	56                   	push   %esi
51f929:	ff 15 3c 18 72 00    	call   *0x72183c
51f92f:	29 05 20 00 73 00    	sub    %eax,0x730020
51f935:	ff 0d 44 00 73 00    	decl   0x730044
51f93b:	56                   	push   %esi
51f93c:	ff 15 34 18 72 00    	call   *0x721834
51f942:	a1 90 ff 72 00       	mov    0x72ff90,%eax
51f947:	83 c4 08             	add    $0x8,%esp
51f94a:	85 c0                	test   %eax,%eax
51f94c:	74 13                	je     0x51f961
51f94e:	50                   	push   %eax
51f94f:	ff 15 68 18 72 00    	call   *0x721868
51f955:	eb 07                	jmp    0x51f95e
51f957:	56                   	push   %esi
51f958:	ff 15 34 18 72 00    	call   *0x721834
51f95e:	83 c4 04             	add    $0x4,%esp
51f961:	8b 45 e0             	mov    -0x20(%ebp),%eax
51f964:	33 c9                	xor    %ecx,%ecx
51f966:	5f                   	pop    %edi
51f967:	5e                   	pop    %esi
51f968:	5b                   	pop    %ebx
51f969:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
51f96f:	8b 45 dc             	mov    -0x24(%ebp),%eax
51f972:	66 89 08             	mov    %cx,(%eax)
51f975:	8d 41 07             	lea    0x7(%ecx),%eax
51f978:	8b 4d fc             	mov    -0x4(%ebp),%ecx
51f97b:	33 cd                	xor    %ebp,%ecx
51f97d:	e8 58 1b 0c 00       	call   0x5e14da
51f982:	8b e5                	mov    %ebp,%esp
51f984:	5d                   	pop    %ebp
51f985:	c3                   	ret
51f986:	8b 4d fc             	mov    -0x4(%ebp),%ecx
51f989:	33 c0                	xor    %eax,%eax
51f98b:	5f                   	pop    %edi
51f98c:	5e                   	pop    %esi
51f98d:	33 cd                	xor    %ebp,%ecx
51f98f:	5b                   	pop    %ebx
51f990:	e8 45 1b 0c 00       	call   0x5e14da
51f995:	8b e5                	mov    %ebp,%esp
51f997:	5d                   	pop    %ebp
51f998:	c3                   	ret
51f999:	cc                   	int3
51f99a:	cc                   	int3
51f99b:	cc                   	int3
51f99c:	cc                   	int3
51f99d:	cc                   	int3
51f99e:	cc                   	int3
51f99f:	cc                   	int3
51f9a0:	55                   	push   %ebp
51f9a1:	8b ec                	mov    %esp,%ebp
51f9a3:	83 ec 0c             	sub    $0xc,%esp
51f9a6:	53                   	push   %ebx
51f9a7:	8b 5d 08             	mov    0x8(%ebp),%ebx
51f9aa:	56                   	push   %esi
51f9ab:	57                   	push   %edi
51f9ac:	8b 73 08             	mov    0x8(%ebx),%esi
51f9af:	89 75 f8             	mov    %esi,-0x8(%ebp)
51f9b2:	85 f6                	test   %esi,%esi
51f9b4:	75 1f                	jne    0x51f9d5
51f9b6:	39 73 74             	cmp    %esi,0x74(%ebx)
51f9b9:	75 0c                	jne    0x51f9c7
51f9bb:	8b 03                	mov    (%ebx),%eax
51f9bd:	f6 40 4c 08          	testb  $0x8,0x4c(%eax)
51f9c1:	75 04                	jne    0x51f9c7
51f9c3:	c6 43 17 01          	movb   $0x1,0x17(%ebx)
51f9c7:	53                   	push   %ebx
51f9c8:	e8 43 2a 02 00       	call   0x542410
51f9cd:	83 c4 04             	add    $0x4,%esp
51f9d0:	89 45 f8             	mov    %eax,-0x8(%ebp)
51f9d3:	8b f0                	mov    %eax,%esi
51f9d5:	8b 7d 0c             	mov    0xc(%ebp),%edi
51f9d8:	33 d2                	xor    %edx,%edx
51f9da:	89 55 fc             	mov    %edx,-0x4(%ebp)
51f9dd:	8b 7f 08             	mov    0x8(%edi),%edi
51f9e0:	85 ff                	test   %edi,%edi
51f9e2:	0f 84 e6 00 00 00    	je     0x51face
51f9e8:	8b 45 1c             	mov    0x1c(%ebp),%eax
51f9eb:	8d 04 90             	lea    (%eax,%edx,4),%eax
51f9ee:	8b 10                	mov    (%eax),%edx
51f9f0:	89 45 f4             	mov    %eax,-0xc(%ebp)
51f9f3:	85 d2                	test   %edx,%edx
51f9f5:	0f 84 be 00 00 00    	je     0x51fab9
51f9fb:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
51f9ff:	74 4a                	je     0x51fa4b
51fa01:	8b 4e 6c             	mov    0x6c(%esi),%ecx
51fa04:	8d 59 02             	lea    0x2(%ecx),%ebx
51fa07:	39 4e 70             	cmp    %ecx,0x70(%esi)
51fa0a:	7f 11                	jg     0x51fa1d
51fa0c:	6a 00                	push   $0x0
51fa0e:	53                   	push   %ebx
51fa0f:	52                   	push   %edx
51fa10:	6a 32                	push   $0x32
51fa12:	56                   	push   %esi
51fa13:	e8 e8 6a fe ff       	call   0x506500
51fa18:	83 c4 14             	add    $0x14,%esp
51fa1b:	eb 2e                	jmp    0x51fa4b
51fa1d:	8d 41 01             	lea    0x1(%ecx),%eax
51fa20:	89 46 6c             	mov    %eax,0x6c(%esi)
51fa23:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
51fa26:	8b 46 68             	mov    0x68(%esi),%eax
51fa29:	8b 75 f8             	mov    -0x8(%ebp),%esi
51fa2c:	c7 04 88 32 00 00 00 	movl   $0x32,(%eax,%ecx,4)
51fa33:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
51fa37:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
51fa3b:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
51fa42:	00
51fa43:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
51fa4a:	00
51fa4b:	8b 5d 28             	mov    0x28(%ebp),%ebx
51fa4e:	8b 4f 38             	mov    0x38(%edi),%ecx
51fa51:	f7 db                	neg    %ebx
51fa53:	8b c1                	mov    %ecx,%eax
51fa55:	1a db                	sbb    %bl,%bl
51fa57:	24 03                	and    $0x3,%al
51fa59:	80 e3 10             	and    $0x10,%bl
51fa5c:	3c 02                	cmp    $0x2,%al
51fa5e:	75 12                	jne    0x51fa72
51fa60:	8b 45 0c             	mov    0xc(%ebp),%eax
51fa63:	f6 40 24 80          	testb  $0x80,0x24(%eax)
51fa67:	74 09                	je     0x51fa72
51fa69:	8a 45 20             	mov    0x20(%ebp),%al
51fa6c:	24 02                	and    $0x2,%al
51fa6e:	0c 01                	or     $0x1,%al
51fa70:	0a d8                	or     %al,%bl
51fa72:	f6 c1 08             	test   $0x8,%cl
51fa75:	74 06                	je     0x51fa7d
51fa77:	0f b7 47 32          	movzwl 0x32(%edi),%eax
51fa7b:	eb 04                	jmp    0x51fa81
51fa7d:	0f b7 47 34          	movzwl 0x34(%edi),%eax
51fa81:	8b 4d f4             	mov    -0xc(%ebp),%ecx
51fa84:	0f b7 c0             	movzwl %ax,%eax
51fa87:	50                   	push   %eax
51fa88:	8b 09                	mov    (%ecx),%ecx
51fa8a:	8d 41 01             	lea    0x1(%ecx),%eax
51fa8d:	50                   	push   %eax
51fa8e:	8b 45 fc             	mov    -0x4(%ebp),%eax
51fa91:	03 45 14             	add    0x14(%ebp),%eax
51fa94:	51                   	push   %ecx
51fa95:	50                   	push   %eax
51fa96:	68 83 00 00 00       	push   $0x83
51fa9b:	56                   	push   %esi
51fa9c:	e8 6f 21 02 00       	call   0x541c10
51faa1:	8b 46 6c             	mov    0x6c(%esi),%eax
51faa4:	83 c4 18             	add    $0x18,%esp
51faa7:	85 c0                	test   %eax,%eax
51faa9:	7e 0e                	jle    0x51fab9
51faab:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
51faae:	0f b6 d3             	movzbl %bl,%edx
51fab1:	8b 46 68             	mov    0x68(%esi),%eax
51fab4:	66 89 54 88 ee       	mov    %dx,-0x12(%eax,%ecx,4)
51fab9:	8b 55 fc             	mov    -0x4(%ebp),%edx
51fabc:	8b 7f 14             	mov    0x14(%edi),%edi
51fabf:	42                   	inc    %edx
51fac0:	89 55 fc             	mov    %edx,-0x4(%ebp)
51fac3:	85 ff                	test   %edi,%edi
51fac5:	0f 85 1d ff ff ff    	jne    0x51f9e8
51facb:	8b 5d 08             	mov    0x8(%ebp),%ebx
51face:	8b 7d 0c             	mov    0xc(%ebp),%edi
51fad1:	f6 47 24 80          	testb  $0x80,0x24(%edi)
51fad5:	0f 85 d5 00 00 00    	jne    0x51fbb0
51fadb:	80 7b 12 00          	cmpb   $0x0,0x12(%ebx)
51fadf:	74 04                	je     0x51fae5
51fae1:	32 db                	xor    %bl,%bl
51fae3:	eb 13                	jmp    0x51faf8
51fae5:	8b 4d 20             	mov    0x20(%ebp),%ecx
51fae8:	bb 20 00 00 00       	mov    $0x20,%ebx
51faed:	85 c9                	test   %ecx,%ecx
51faef:	0f b6 c1             	movzbl %cl,%eax
51faf2:	0f 45 d8             	cmovne %eax,%ebx
51faf5:	80 cb 01             	or     $0x1,%bl
51faf8:	8a c3                	mov    %bl,%al
51fafa:	0c 08                	or     $0x8,%al
51fafc:	83 7d 24 00          	cmpl   $0x0,0x24(%ebp)
51fb00:	0f b6 c8             	movzbl %al,%ecx
51fb03:	0f b6 c3             	movzbl %bl,%eax
51fb06:	0f 44 c8             	cmove  %eax,%ecx
51fb09:	8a c1                	mov    %cl,%al
51fb0b:	0c 10                	or     $0x10,%al
51fb0d:	83 7d 28 00          	cmpl   $0x0,0x28(%ebp)
51fb11:	0f b6 d8             	movzbl %al,%ebx
51fb14:	0f b6 c1             	movzbl %cl,%eax
51fb17:	8b 4e 6c             	mov    0x6c(%esi),%ecx
51fb1a:	0f 44 d8             	cmove  %eax,%ebx
51fb1d:	8b 45 1c             	mov    0x1c(%ebp),%eax
51fb20:	8b 14 90             	mov    (%eax,%edx,4),%edx
51fb23:	39 4e 70             	cmp    %ecx,0x70(%esi)
51fb26:	7f 14                	jg     0x51fb3c
51fb28:	ff 75 18             	push   0x18(%ebp)
51fb2b:	52                   	push   %edx
51fb2c:	ff 75 10             	push   0x10(%ebp)
51fb2f:	6a 79                	push   $0x79
51fb31:	56                   	push   %esi
51fb32:	e8 c9 69 fe ff       	call   0x506500
51fb37:	83 c4 14             	add    $0x14,%esp
51fb3a:	eb 2e                	jmp    0x51fb6a
51fb3c:	8d 41 01             	lea    0x1(%ecx),%eax
51fb3f:	89 46 6c             	mov    %eax,0x6c(%esi)
51fb42:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
51fb45:	8b 46 68             	mov    0x68(%esi),%eax
51fb48:	c7 04 88 79 00 00 00 	movl   $0x79,(%eax,%ecx,4)
51fb4f:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
51fb53:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
51fb5a:	00
51fb5b:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
51fb5e:	8b 45 10             	mov    0x10(%ebp),%eax
51fb61:	89 41 04             	mov    %eax,0x4(%ecx)
51fb64:	8b 45 18             	mov    0x18(%ebp),%eax
51fb67:	89 41 0c             	mov    %eax,0xc(%ecx)
51fb6a:	8b 45 08             	mov    0x8(%ebp),%eax
51fb6d:	80 78 12 00          	cmpb   $0x0,0x12(%eax)
51fb71:	75 28                	jne    0x51fb9b
51fb73:	8b 06                	mov    (%esi),%eax
51fb75:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
51fb79:	74 0e                	je     0x51fb89
51fb7b:	57                   	push   %edi
51fb7c:	6a fa                	push   $0xfffffffa
51fb7e:	50                   	push   %eax
51fb7f:	e8 2c 41 fe ff       	call   0x503cb0
51fb84:	83 c4 0c             	add    $0xc,%esp
51fb87:	eb 12                	jmp    0x51fb9b
51fb89:	8b 46 6c             	mov    0x6c(%esi),%eax
51fb8c:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
51fb8f:	8b 46 68             	mov    0x68(%esi),%eax
51fb92:	c6 44 88 ed fa       	movb   $0xfa,-0x13(%eax,%ecx,4)
51fb97:	89 7c 88 fc          	mov    %edi,-0x4(%eax,%ecx,4)
51fb9b:	8b 46 6c             	mov    0x6c(%esi),%eax
51fb9e:	85 c0                	test   %eax,%eax
51fba0:	7e 0e                	jle    0x51fbb0
51fba2:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
51fba5:	0f b6 d3             	movzbl %bl,%edx
51fba8:	8b 46 68             	mov    0x68(%esi),%eax
51fbab:	66 89 54 88 ee       	mov    %dx,-0x12(%eax,%ecx,4)
51fbb0:	5f                   	pop    %edi
51fbb1:	5e                   	pop    %esi
51fbb2:	5b                   	pop    %ebx
51fbb3:	8b e5                	mov    %ebp,%esp
51fbb5:	5d                   	pop    %ebp
51fbb6:	c3                   	ret
51fbb7:	cc                   	int3
51fbb8:	cc                   	int3
51fbb9:	cc                   	int3
51fbba:	cc                   	int3
51fbbb:	cc                   	int3
51fbbc:	cc                   	int3
51fbbd:	cc                   	int3
51fbbe:	cc                   	int3
51fbbf:	cc                   	int3
51fbc0:	55                   	push   %ebp
51fbc1:	8b ec                	mov    %esp,%ebp
51fbc3:	83 ec 30             	sub    $0x30,%esp
51fbc6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
51fbcb:	33 c5                	xor    %ebp,%eax
51fbcd:	89 45 fc             	mov    %eax,-0x4(%ebp)
51fbd0:	53                   	push   %ebx
51fbd1:	8b 5d 08             	mov    0x8(%ebp),%ebx
51fbd4:	56                   	push   %esi
51fbd5:	57                   	push   %edi
51fbd6:	ff 75 0c             	push   0xc(%ebp)
51fbd9:	8b 7d 10             	mov    0x10(%ebp),%edi
51fbdc:	57                   	push   %edi
51fbdd:	ff 73 08             	push   0x8(%ebx)
51fbe0:	89 5d dc             	mov    %ebx,-0x24(%ebp)
51fbe3:	e8 58 e1 01 00       	call   0x53dd40
51fbe8:	83 c4 0c             	add    $0xc,%esp
51fbeb:	f6 47 24 40          	testb  $0x40,0x24(%edi)
51fbef:	74 4b                	je     0x51fc3c
51fbf1:	8b 53 08             	mov    0x8(%ebx),%edx
51fbf4:	8b 02                	mov    (%edx),%eax
51fbf6:	8b 4a 6c             	mov    0x6c(%edx),%ecx
51fbf9:	49                   	dec    %ecx
51fbfa:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
51fbfe:	74 07                	je     0x51fc07
51fc00:	b9 ec 02 73 00       	mov    $0x7302ec,%ecx
51fc05:	eb 09                	jmp    0x51fc10
51fc07:	8b 42 68             	mov    0x68(%edx),%eax
51fc0a:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
51fc0d:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
51fc10:	80 39 5a             	cmpb   $0x5a,(%ecx)
51fc13:	75 27                	jne    0x51fc3c
51fc15:	8b 49 10             	mov    0x10(%ecx),%ecx
51fc18:	80 39 00             	cmpb   $0x0,(%ecx)
51fc1b:	74 1f                	je     0x51fc3c
51fc1d:	33 d2                	xor    %edx,%edx