4ffb90:	8b 59 14             	mov    0x14(%ecx),%ebx
4ffb93:	8d 14 52             	lea    (%edx,%edx,2),%edx
4ffb96:	c1 e2 04             	shl    $0x4,%edx
4ffb99:	89 45 e8             	mov    %eax,-0x18(%ebp)
4ffb9c:	03 da                	add    %edx,%ebx
4ffb9e:	8b 00                	mov    (%eax),%eax
4ffba0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4ffba3:	89 55 c0             	mov    %edx,-0x40(%ebp)
4ffba6:	8b 0b                	mov    (%ebx),%ecx
4ffba8:	8b 00                	mov    (%eax),%eax
4ffbaa:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4ffbad:	89 5d c8             	mov    %ebx,-0x38(%ebp)
4ffbb0:	89 4d cc             	mov    %ecx,-0x34(%ebp)
4ffbb3:	85 c0                	test   %eax,%eax
4ffbb5:	74 17                	je     0x4ffbce
4ffbb7:	6a 00                	push   $0x0
4ffbb9:	68 a0 01 00 00       	push   $0x1a0
4ffbbe:	50                   	push   %eax
4ffbbf:	e8 1c 18 02 00       	call   0x5213e0
4ffbc4:	8b f8                	mov    %eax,%edi
4ffbc6:	83 c4 0c             	add    $0xc,%esp
4ffbc9:	89 7d fc             	mov    %edi,-0x4(%ebp)
4ffbcc:	eb 60                	jmp    0x4ffc2e
4ffbce:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
4ffbd5:	74 44                	je     0x4ffc1b
4ffbd7:	a1 90 ff 72 00       	mov    0x72ff90,%eax
4ffbdc:	85 c0                	test   %eax,%eax
4ffbde:	74 0a                	je     0x4ffbea
4ffbe0:	50                   	push   %eax
4ffbe1:	ff 15 60 18 72 00    	call   *0x721860
4ffbe7:	83 c4 04             	add    $0x4,%esp
4ffbea:	8d 45 d8             	lea    -0x28(%ebp),%eax
4ffbed:	50                   	push   %eax
4ffbee:	68 a0 01 00 00       	push   $0x1a0
4ffbf3:	e8 08 97 00 00       	call   0x509300
4ffbf8:	a1 90 ff 72 00       	mov    0x72ff90,%eax
4ffbfd:	83 c4 08             	add    $0x8,%esp
4ffc00:	85 c0                	test   %eax,%eax
4ffc02:	74 0f                	je     0x4ffc13
4ffc04:	50                   	push   %eax
4ffc05:	ff 15 68 18 72 00    	call   *0x721868
4ffc0b:	8b 7d d8             	mov    -0x28(%ebp),%edi
4ffc0e:	89 7d fc             	mov    %edi,-0x4(%ebp)
4ffc11:	eb 18                	jmp    0x4ffc2b
4ffc13:	8b 7d d8             	mov    -0x28(%ebp),%edi
4ffc16:	89 7d fc             	mov    %edi,-0x4(%ebp)
4ffc19:	eb 13                	jmp    0x4ffc2e
4ffc1b:	68 a0 01 00 00       	push   $0x1a0
4ffc20:	ff 15 30 18 72 00    	call   *0x721830
4ffc26:	8b f8                	mov    %eax,%edi
4ffc28:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ffc2b:	83 c4 04             	add    $0x4,%esp
4ffc2e:	85 ff                	test   %edi,%edi
4ffc30:	74 10                	je     0x4ffc42
4ffc32:	68 a0 01 00 00       	push   $0x1a0
4ffc37:	6a 00                	push   $0x0
4ffc39:	57                   	push   %edi
4ffc3a:	e8 c1 3d 0e 00       	call   0x5e3a00
4ffc3f:	83 c4 0c             	add    $0xc,%esp
4ffc42:	89 7b 1c             	mov    %edi,0x1c(%ebx)
4ffc45:	85 ff                	test   %edi,%edi
4ffc47:	0f 84 39 06 00 00    	je     0x500286
4ffc4d:	66 83 4b 0a 10       	orw    $0x10,0xa(%ebx)
4ffc52:	56                   	push   %esi
4ffc53:	68 80 01 00 00       	push   $0x180
4ffc58:	8d 77 18             	lea    0x18(%edi),%esi
4ffc5b:	6a 00                	push   $0x0
4ffc5d:	56                   	push   %esi
4ffc5e:	e8 9d 3d 0e 00       	call   0x5e3a00
4ffc63:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4ffc66:	6a 2b                	push   $0x2b
4ffc68:	ff 75 cc             	push   -0x34(%ebp)
4ffc6b:	89 0f                	mov    %ecx,(%edi)
4ffc6d:	57                   	push   %edi
4ffc6e:	c6 47 09 00          	movb   $0x0,0x9(%edi)
4ffc72:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
4ffc79:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
4ffc80:	c7 47 10 08 00 00 00 	movl   $0x8,0x10(%edi)
4ffc87:	89 77 14             	mov    %esi,0x14(%edi)
4ffc8a:	e8 31 41 05 00       	call   0x553dc0
4ffc8f:	8b 77 0c             	mov    0xc(%edi),%esi
4ffc92:	83 c4 18             	add    $0x18,%esp
4ffc95:	83 ee 01             	sub    $0x1,%esi
4ffc98:	78 18                	js     0x4ffcb2
4ffc9a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4ffca0:	56                   	push   %esi
4ffca1:	57                   	push   %edi
4ffca2:	ff 75 08             	push   0x8(%ebp)
4ffca5:	e8 e6 f3 ff ff       	call   0x4ff090
4ffcaa:	83 c4 0c             	add    $0xc,%esp
4ffcad:	83 ee 01             	sub    $0x1,%esi
4ffcb0:	79 ee                	jns    0x4ffca0
4ffcb2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4ffcb5:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
4ffcb9:	0f 85 c6 05 00 00    	jne    0x500285
4ffcbf:	8b 75 fc             	mov    -0x4(%ebp),%esi
4ffcc2:	83 ca ff             	or     $0xffffffff,%edx
4ffcc5:	83 c9 ff             	or     $0xffffffff,%ecx
4ffcc8:	89 55 e0             	mov    %edx,-0x20(%ebp)
4ffccb:	83 cf ff             	or     $0xffffffff,%edi
4ffcce:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4ffcd1:	89 7d f8             	mov    %edi,-0x8(%ebp)
4ffcd4:	8b 46 0c             	mov    0xc(%esi),%eax
4ffcd7:	8b 76 14             	mov    0x14(%esi),%esi
4ffcda:	83 e8 01             	sub    $0x1,%eax
4ffcdd:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
4ffce4:	89 45 d0             	mov    %eax,-0x30(%ebp)
4ffce7:	89 75 d8             	mov    %esi,-0x28(%ebp)
4ffcea:	0f 88 06 02 00 00    	js     0x4ffef6
4ffcf0:	8b c2                	mov    %edx,%eax
4ffcf2:	0b c1                	or     %ecx,%eax
4ffcf4:	0f 84 f6 01 00 00    	je     0x4ffef0
4ffcfa:	0f b7 46 0c          	movzwl 0xc(%esi),%eax
4ffcfe:	a9 ff 01 00 00       	test   $0x1ff,%eax
4ffd03:	0f 85 47 01 00 00    	jne    0x4ffe50
4ffd09:	6a 00                	push   $0x0
4ffd0b:	68 98 01 00 00       	push   $0x198
4ffd10:	ff 75 e4             	push   -0x1c(%ebp)
4ffd13:	0f 57 c0             	xorps  %xmm0,%xmm0
4ffd16:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
4ffd1b:	e8 c0 16 02 00       	call   0x5213e0
4ffd20:	8b f8                	mov    %eax,%edi
4ffd22:	83 c4 0c             	add    $0xc,%esp
4ffd25:	85 ff                	test   %edi,%edi
4ffd27:	0f 84 0c 01 00 00    	je     0x4ffe39
4ffd2d:	66 83 4e 0a 20       	orw    $0x20,0xa(%esi)
4ffd32:	b8 00 04 00 00       	mov    $0x400,%eax
4ffd37:	68 80 01 00 00       	push   $0x180
4ffd3c:	89 7e 1c             	mov    %edi,0x1c(%esi)
4ffd3f:	0f 57 c0             	xorps  %xmm0,%xmm0
4ffd42:	66 89 46 0c          	mov    %ax,0xc(%esi)
4ffd46:	8d 77 18             	lea    0x18(%edi),%esi
4ffd49:	6a 00                	push   $0x0
4ffd4b:	56                   	push   %esi
4ffd4c:	66 0f 13 45 ec       	movlpd %xmm0,-0x14(%ebp)
4ffd51:	e8 aa 3c 0e 00       	call   0x5e3a00
4ffd56:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4ffd59:	6a 2c                	push   $0x2c
4ffd5b:	8b 03                	mov    (%ebx),%eax
4ffd5d:	89 07                	mov    %eax,(%edi)
4ffd5f:	8b 45 d8             	mov    -0x28(%ebp),%eax
4ffd62:	c6 47 09 00          	movb   $0x0,0x9(%edi)
4ffd66:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
4ffd6d:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
4ffd74:	c7 47 10 08 00 00 00 	movl   $0x8,0x10(%edi)
4ffd7b:	89 77 14             	mov    %esi,0x14(%edi)
4ffd7e:	ff 30                	push   (%eax)
4ffd80:	57                   	push   %edi
4ffd81:	e8 3a 40 05 00       	call   0x553dc0
4ffd86:	8b 77 0c             	mov    0xc(%edi),%esi
4ffd89:	83 c4 18             	add    $0x18,%esp
4ffd8c:	83 ee 01             	sub    $0x1,%esi
4ffd8f:	78 12                	js     0x4ffda3
4ffd91:	56                   	push   %esi
4ffd92:	57                   	push   %edi
4ffd93:	ff 75 08             	push   0x8(%ebp)
4ffd96:	e8 f5 f2 ff ff       	call   0x4ff090
4ffd9b:	83 c4 0c             	add    $0xc,%esp
4ffd9e:	83 ee 01             	sub    $0x1,%esi
4ffda1:	79 ee                	jns    0x4ffd91
4ffda3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4ffda6:	89 5f 04             	mov    %ebx,0x4(%edi)
4ffda9:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
4ffdad:	75 60                	jne    0x4ffe0f
4ffdaf:	8b 77 14             	mov    0x14(%edi),%esi
4ffdb2:	8b 7f 0c             	mov    0xc(%edi),%edi
4ffdb5:	85 ff                	test   %edi,%edi
4ffdb7:	7e 56                	jle    0x4ffe0f
4ffdb9:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4ffdbc:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4ffdbf:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4ffdc2:	8b 06                	mov    (%esi),%eax
4ffdc4:	0f b6 00             	movzbl (%eax),%eax
4ffdc7:	83 f8 31             	cmp    $0x31,%eax
4ffdca:	74 1b                	je     0x4ffde7
4ffdcc:	83 f8 35             	cmp    $0x35,%eax
4ffdcf:	72 05                	jb     0x4ffdd6
4ffdd1:	83 f8 39             	cmp    $0x39,%eax
4ffdd4:	76 11                	jbe    0x4ffde7
4ffdd6:	83 f8 32             	cmp    $0x32,%eax
4ffdd9:	74 0c                	je     0x4ffde7
4ffddb:	83 f8 2d             	cmp    $0x2d,%eax
4ffdde:	74 07                	je     0x4ffde7
4ffde0:	66 83 7e 0c 40       	cmpw   $0x40,0xc(%esi)
4ffde5:	75 1e                	jne    0x4ffe05
4ffde7:	8b 45 e8             	mov    -0x18(%ebp),%eax
4ffdea:	ff 76 14             	push   0x14(%esi)
4ffded:	05 e8 01 00 00       	add    $0x1e8,%eax
4ffdf2:	50                   	push   %eax
4ffdf3:	e8 78 3f 05 00       	call   0x553d70
4ffdf8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4ffdfb:	83 c4 08             	add    $0x8,%esp
4ffdfe:	0b c8                	or     %eax,%ecx
4ffe00:	0b da                	or     %edx,%ebx
4ffe02:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4ffe05:	83 c6 30             	add    $0x30,%esi
4ffe08:	83 ef 01             	sub    $0x1,%edi
4ffe0b:	75 b5                	jne    0x4ffdc2
4ffe0d:	eb 06                	jmp    0x4ffe15
4ffe0f:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4ffe12:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4ffe15:	8b 55 e0             	mov    -0x20(%ebp),%edx
4ffe18:	8b 7d f4             	mov    -0xc(%ebp),%edi
4ffe1b:	23 d1                	and    %ecx,%edx
4ffe1d:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4ffe20:	8b 75 d8             	mov    -0x28(%ebp),%esi
4ffe23:	23 cb                	and    %ebx,%ecx
4ffe25:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4ffe28:	89 55 e0             	mov    %edx,-0x20(%ebp)
4ffe2b:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4ffe2e:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4ffe31:	89 7d f8             	mov    %edi,-0x8(%ebp)
4ffe34:	e9 a0 00 00 00       	jmp    0x4ffed9
4ffe39:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4ffe3c:	8b 7d f4             	mov    -0xc(%ebp),%edi
4ffe3f:	8b 55 e0             	mov    -0x20(%ebp),%edx
4ffe42:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4ffe45:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4ffe48:	89 7d f8             	mov    %edi,-0x8(%ebp)
4ffe4b:	e9 89 00 00 00       	jmp    0x4ffed9
4ffe50:	0f b7 46 0a          	movzwl 0xa(%esi),%eax
4ffe54:	a8 08                	test   $0x8,%al
4ffe56:	75 7e                	jne    0x4ffed6
4ffe58:	8b 45 e8             	mov    -0x18(%ebp),%eax
4ffe5b:	ff 76 14             	push   0x14(%esi)
4ffe5e:	05 e8 01 00 00       	add    $0x1e8,%eax
4ffe63:	50                   	push   %eax
4ffe64:	e8 07 3f 05 00       	call   0x553d70
4ffe69:	8b f8                	mov    %eax,%edi
4ffe6b:	83 c4 08             	add    $0x8,%esp
4ffe6e:	0f b7 46 0a          	movzwl 0xa(%esi),%eax
4ffe72:	8b da                	mov    %edx,%ebx
4ffe74:	a8 02                	test   $0x2,%al
4ffe76:	74 2a                	je     0x4ffea2
4ffe78:	8b 4e 10             	mov    0x10(%esi),%ecx
4ffe7b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffe7e:	8d 34 49             	lea    (%ecx,%ecx,2),%esi
4ffe81:	8b 48 14             	mov    0x14(%eax),%ecx
4ffe84:	03 f6                	add    %esi,%esi
4ffe86:	8b 45 e8             	mov    -0x18(%ebp),%eax
4ffe89:	05 e8 01 00 00       	add    $0x1e8,%eax
4ffe8e:	ff 74 f1 14          	push   0x14(%ecx,%esi,8)
4ffe92:	50                   	push   %eax
4ffe93:	e8 d8 3e 05 00       	call   0x553d70
4ffe98:	8b 75 d8             	mov    -0x28(%ebp),%esi
4ffe9b:	83 c4 08             	add    $0x8,%esp
4ffe9e:	0b f8                	or     %eax,%edi
4ffea0:	0b da                	or     %edx,%ebx
4ffea2:	8b 55 e0             	mov    -0x20(%ebp),%edx
4ffea5:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4ffea8:	23 d7                	and    %edi,%edx
4ffeaa:	0f b7 46 0c          	movzwl 0xc(%esi),%eax
4ffeae:	23 cb                	and    %ebx,%ecx
4ffeb0:	89 55 e0             	mov    %edx,-0x20(%ebp)
4ffeb3:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4ffeb6:	a8 02                	test   $0x2,%al
4ffeb8:	75 16                	jne    0x4ffed0
4ffeba:	0f 57 c0             	xorps  %xmm0,%xmm0
4ffebd:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
4ffec2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ffec5:	8b 7d f4             	mov    -0xc(%ebp),%edi
4ffec8:	89 45 f0             	mov    %eax,-0x10(%ebp)
4ffecb:	89 7d f8             	mov    %edi,-0x8(%ebp)
4ffece:	eb 09                	jmp    0x4ffed9
4ffed0:	21 7d f8             	and    %edi,-0x8(%ebp)
4ffed3:	21 5d f0             	and    %ebx,-0x10(%ebp)
4ffed6:	8b 7d f8             	mov    -0x8(%ebp),%edi
4ffed9:	8b 45 d0             	mov    -0x30(%ebp),%eax
4ffedc:	83 c6 30             	add    $0x30,%esi
4ffedf:	48                   	dec    %eax
4ffee0:	89 75 d8             	mov    %esi,-0x28(%ebp)
4ffee3:	89 45 d0             	mov    %eax,-0x30(%ebp)
4ffee6:	85 c0                	test   %eax,%eax
4ffee8:	0f 89 02 fe ff ff    	jns    0x4ffcf0
4ffeee:	eb 03                	jmp    0x4ffef3
4ffef0:	8b 7d f8             	mov    -0x8(%ebp),%edi
4ffef3:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4ffef6:	8b 75 fc             	mov    -0x4(%ebp),%esi
4ffef9:	b8 00 02 00 00       	mov    $0x200,%eax
4ffefe:	89 96 98 01 00 00    	mov    %edx,0x198(%esi)
4fff04:	0b d1                	or     %ecx,%edx
4fff06:	89 8e 9c 01 00 00    	mov    %ecx,0x19c(%esi)
4fff0c:	66 89 43 0c          	mov    %ax,0xc(%ebx)
4fff10:	0f 84 b3 00 00 00    	je     0x4fffc9
4fff16:	8b 45 0c             	mov    0xc(%ebp),%eax
4fff19:	c6 40 09 01          	movb   $0x1,0x9(%eax)
4fff1d:	83 7e 0c 02          	cmpl   $0x2,0xc(%esi)
4fff21:	0f 85 a2 00 00 00    	jne    0x4fffc9
4fff27:	33 c9                	xor    %ecx,%ecx
4fff29:	33 d2                	xor    %edx,%edx
4fff2b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4fff30:	8b 46 14             	mov    0x14(%esi),%eax
4fff33:	bf 00 04 00 00       	mov    $0x400,%edi
4fff38:	66 39 78 0c          	cmp    %di,0xc(%eax)
4fff3c:	74 09                	je     0x4fff47
4fff3e:	33 db                	xor    %ebx,%ebx
4fff40:	85 c9                	test   %ecx,%ecx
4fff42:	0f 44 d8             	cmove  %eax,%ebx
4fff45:	eb 11                	jmp    0x4fff58
4fff47:	8b 58 1c             	mov    0x1c(%eax),%ebx
4fff4a:	3b 4b 0c             	cmp    0xc(%ebx),%ecx
4fff4d:	7d 07                	jge    0x4fff56
4fff4f:	8b 5b 14             	mov    0x14(%ebx),%ebx
4fff52:	03 da                	add    %edx,%ebx
4fff54:	eb 02                	jmp    0x4fff58
4fff56:	33 db                	xor    %ebx,%ebx
4fff58:	41                   	inc    %ecx
4fff59:	83 c2 30             	add    $0x30,%edx
4fff5c:	89 4d c8             	mov    %ecx,-0x38(%ebp)
4fff5f:	89 55 d0             	mov    %edx,-0x30(%ebp)
4fff62:	85 db                	test   %ebx,%ebx
4fff64:	74 60                	je     0x4fffc6
4fff66:	33 f6                	xor    %esi,%esi
4fff68:	33 ff                	xor    %edi,%edi
4fff6a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4fff70:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fff73:	8b 48 14             	mov    0x14(%eax),%ecx
4fff76:	b8 00 04 00 00       	mov    $0x400,%eax
4fff7b:	83 c1 30             	add    $0x30,%ecx
4fff7e:	66 39 41 0c          	cmp    %ax,0xc(%ecx)
4fff82:	74 09                	je     0x4fff8d
4fff84:	33 c0                	xor    %eax,%eax
4fff86:	85 f6                	test   %esi,%esi
4fff88:	0f 44 c1             	cmove  %ecx,%eax
4fff8b:	eb 11                	jmp    0x4fff9e
4fff8d:	8b 41 1c             	mov    0x1c(%ecx),%eax
4fff90:	3b 70 0c             	cmp    0xc(%eax),%esi
4fff93:	7d 07                	jge    0x4fff9c
4fff95:	8b 40 14             	mov    0x14(%eax),%eax
4fff98:	03 c7                	add    %edi,%eax
4fff9a:	eb 02                	jmp    0x4fff9e
4fff9c:	33 c0                	xor    %eax,%eax
4fff9e:	46                   	inc    %esi
4fff9f:	83 c7 30             	add    $0x30,%edi
4fffa2:	85 c0                	test   %eax,%eax
4fffa4:	74 12                	je     0x4fffb8
4fffa6:	50                   	push   %eax
4fffa7:	53                   	push   %ebx
4fffa8:	ff 75 0c             	push   0xc(%ebp)
4fffab:	ff 75 08             	push   0x8(%ebp)
4fffae:	e8 ad 05 06 00       	call   0x560560
4fffb3:	83 c4 10             	add    $0x10,%esp
4fffb6:	eb b8                	jmp    0x4fff70
4fffb8:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4fffbb:	8b 55 d0             	mov    -0x30(%ebp),%edx
4fffbe:	8b 75 fc             	mov    -0x4(%ebp),%esi
4fffc1:	e9 6a ff ff ff       	jmp    0x4fff30
4fffc6:	8b 7d f8             	mov    -0x8(%ebp),%edi
4fffc9:	8b c7                	mov    %edi,%eax
4fffcb:	0b 45 f0             	or     -0x10(%ebp),%eax