47ec03:	83 c4 0c             	add    $0xc,%esp
47ec06:	5d                   	pop    %ebp
47ec07:	c3                   	ret
47ec08:	8b ff                	mov    %edi,%edi
47ec0a:	55                   	push   %ebp
47ec0b:	8b ec                	mov    %esp,%ebp
47ec0d:	8b 45 10             	mov    0x10(%ebp),%eax
47ec10:	ff 30                	push   (%eax)
47ec12:	8b 45 0c             	mov    0xc(%ebp),%eax
47ec15:	ff 30                	push   (%eax)
47ec17:	8b 45 08             	mov    0x8(%ebp),%eax
47ec1a:	ff 30                	push   (%eax)
47ec1c:	e8 46 92 fe ff       	call   0x467e67
47ec21:	83 c4 0c             	add    $0xc,%esp
47ec24:	5d                   	pop    %ebp
47ec25:	c3                   	ret
47ec26:	8b ff                	mov    %edi,%edi
47ec28:	55                   	push   %ebp
47ec29:	8b ec                	mov    %esp,%ebp
47ec2b:	8b 45 08             	mov    0x8(%ebp),%eax
47ec2e:	8b 00                	mov    (%eax),%eax
47ec30:	8d 50 01             	lea    0x1(%eax),%edx
47ec33:	8a 08                	mov    (%eax),%cl
47ec35:	40                   	inc    %eax
47ec36:	84 c9                	test   %cl,%cl
47ec38:	75 f9                	jne    0x47ec33
47ec3a:	2b c2                	sub    %edx,%eax
47ec3c:	5d                   	pop    %ebp
47ec3d:	c3                   	ret
47ec3e:	8b ff                	mov    %edi,%edi
47ec40:	55                   	push   %ebp
47ec41:	8b ec                	mov    %esp,%ebp
47ec43:	8b 45 08             	mov    0x8(%ebp),%eax
47ec46:	8b 00                	mov    (%eax),%eax
47ec48:	8d 50 02             	lea    0x2(%eax),%edx
47ec4b:	66 8b 08             	mov    (%eax),%cx
47ec4e:	83 c0 02             	add    $0x2,%eax
47ec51:	66 85 c9             	test   %cx,%cx
47ec54:	75 f5                	jne    0x47ec4b
47ec56:	2b c2                	sub    %edx,%eax
47ec58:	d1 f8                	sar    $1,%eax
47ec5a:	5d                   	pop    %ebp
47ec5b:	c3                   	ret
47ec5c:	8b ff                	mov    %edi,%edi
47ec5e:	55                   	push   %ebp
47ec5f:	8b ec                	mov    %esp,%ebp
47ec61:	8b 45 10             	mov    0x10(%ebp),%eax
47ec64:	ff 30                	push   (%eax)
47ec66:	8b 45 0c             	mov    0xc(%ebp),%eax
47ec69:	ff 30                	push   (%eax)
47ec6b:	8b 45 08             	mov    0x8(%ebp),%eax
47ec6e:	ff 30                	push   (%eax)
47ec70:	e8 eb 8f 00 00       	call   0x487c60
47ec75:	83 c4 0c             	add    $0xc,%esp
47ec78:	5d                   	pop    %ebp
47ec79:	c3                   	ret
47ec7a:	8b ff                	mov    %edi,%edi
47ec7c:	55                   	push   %ebp
47ec7d:	8b ec                	mov    %esp,%ebp
47ec7f:	8b 45 10             	mov    0x10(%ebp),%eax
47ec82:	ff 30                	push   (%eax)
47ec84:	8b 45 0c             	mov    0xc(%ebp),%eax
47ec87:	ff 30                	push   (%eax)
47ec89:	8b 45 08             	mov    0x8(%ebp),%eax
47ec8c:	ff 30                	push   (%eax)
47ec8e:	e8 d0 8d 00 00       	call   0x487a63
47ec93:	83 c4 0c             	add    $0xc,%esp
47ec96:	5d                   	pop    %ebp
47ec97:	c3                   	ret
47ec98:	b8 94 b8 4b 00       	mov    $0x4bb894,%eax
47ec9d:	c3                   	ret
47ec9e:	b8 98 b8 4b 00       	mov    $0x4bb898,%eax
47eca3:	c3                   	ret
47eca4:	b8 a0 b8 4b 00       	mov    $0x4bb8a0,%eax
47eca9:	c3                   	ret
47ecaa:	b8 9c b8 4b 00       	mov    $0x4bb89c,%eax
47ecaf:	c3                   	ret
47ecb0:	b8 94 b8 4b 00       	mov    $0x4bb894,%eax
47ecb5:	c3                   	ret
47ecb6:	b8 98 b8 4b 00       	mov    $0x4bb898,%eax
47ecbb:	c3                   	ret
47ecbc:	8b ff                	mov    %edi,%edi
47ecbe:	55                   	push   %ebp
47ecbf:	8b ec                	mov    %esp,%ebp
47ecc1:	5d                   	pop    %ebp
47ecc2:	e9 f9 52 fc ff       	jmp    0x443fc0
47ecc7:	8b ff                	mov    %edi,%edi
47ecc9:	55                   	push   %ebp
47ecca:	8b ec                	mov    %esp,%ebp
47eccc:	5d                   	pop    %ebp
47eccd:	e9 b5 ae 00 00       	jmp    0x489b87
47ecd2:	8b ff                	mov    %edi,%edi
47ecd4:	55                   	push   %ebp
47ecd5:	8b ec                	mov    %esp,%ebp
47ecd7:	5d                   	pop    %ebp
47ecd8:	e9 84 f7 ff ff       	jmp    0x47e461
47ecdd:	8b ff                	mov    %edi,%edi
47ecdf:	55                   	push   %ebp
47ece0:	8b ec                	mov    %esp,%ebp
47ece2:	5d                   	pop    %ebp
47ece3:	e9 c0 f9 ff ff       	jmp    0x47e6a8
47ece8:	a1 10 c3 4b 00       	mov    0x4bc310,%eax
47eced:	c3                   	ret
47ecee:	ff 15 18 40 49 00    	call   *0x494018
47ecf4:	85 c0                	test   %eax,%eax
47ecf6:	a3 10 c3 4b 00       	mov    %eax,0x4bc310
47ecfb:	0f 95 c0             	setne  %al
47ecfe:	c3                   	ret
47ecff:	83 25 10 c3 4b 00 00 	andl   $0x0,0x4bc310
47ed06:	b0 01                	mov    $0x1,%al
47ed08:	c3                   	ret
47ed09:	a1 10 c3 4b 00       	mov    0x4bc310,%eax
47ed0e:	c3                   	ret
47ed0f:	8b ff                	mov    %edi,%edi
47ed11:	55                   	push   %ebp
47ed12:	8b ec                	mov    %esp,%ebp
47ed14:	51                   	push   %ecx
47ed15:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47ed1a:	33 c5                	xor    %ebp,%eax
47ed1c:	89 45 fc             	mov    %eax,-0x4(%ebp)
47ed1f:	57                   	push   %edi
47ed20:	8b 7d 08             	mov    0x8(%ebp),%edi
47ed23:	3b 7d 0c             	cmp    0xc(%ebp),%edi
47ed26:	75 04                	jne    0x47ed2c
47ed28:	b0 01                	mov    $0x1,%al
47ed2a:	eb 57                	jmp    0x47ed83
47ed2c:	56                   	push   %esi
47ed2d:	8b f7                	mov    %edi,%esi
47ed2f:	53                   	push   %ebx
47ed30:	8b 1e                	mov    (%esi),%ebx
47ed32:	85 db                	test   %ebx,%ebx
47ed34:	74 0e                	je     0x47ed44
47ed36:	8b cb                	mov    %ebx,%ecx
47ed38:	ff 15 54 43 49 00    	call   *0x494354
47ed3e:	ff d3                	call   *%ebx
47ed40:	84 c0                	test   %al,%al
47ed42:	74 08                	je     0x47ed4c
47ed44:	83 c6 08             	add    $0x8,%esi
47ed47:	3b 75 0c             	cmp    0xc(%ebp),%esi
47ed4a:	75 e4                	jne    0x47ed30
47ed4c:	3b 75 0c             	cmp    0xc(%ebp),%esi
47ed4f:	75 04                	jne    0x47ed55
47ed51:	b0 01                	mov    $0x1,%al
47ed53:	eb 2c                	jmp    0x47ed81
47ed55:	3b f7                	cmp    %edi,%esi
47ed57:	74 26                	je     0x47ed7f
47ed59:	83 c6 fc             	add    $0xfffffffc,%esi
47ed5c:	83 7e fc 00          	cmpl   $0x0,-0x4(%esi)
47ed60:	74 13                	je     0x47ed75
47ed62:	8b 1e                	mov    (%esi),%ebx
47ed64:	85 db                	test   %ebx,%ebx
47ed66:	74 0d                	je     0x47ed75
47ed68:	6a 00                	push   $0x0
47ed6a:	8b cb                	mov    %ebx,%ecx
47ed6c:	ff 15 54 43 49 00    	call   *0x494354
47ed72:	ff d3                	call   *%ebx
47ed74:	59                   	pop    %ecx
47ed75:	83 ee 08             	sub    $0x8,%esi
47ed78:	8d 46 04             	lea    0x4(%esi),%eax
47ed7b:	3b c7                	cmp    %edi,%eax
47ed7d:	75 dd                	jne    0x47ed5c
47ed7f:	32 c0                	xor    %al,%al
47ed81:	5b                   	pop    %ebx
47ed82:	5e                   	pop    %esi
47ed83:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47ed86:	33 cd                	xor    %ebp,%ecx
47ed88:	5f                   	pop    %edi
47ed89:	e8 74 0c fc ff       	call   0x43fa02
47ed8e:	8b e5                	mov    %ebp,%esp
47ed90:	5d                   	pop    %ebp
47ed91:	c3                   	ret
47ed92:	8b ff                	mov    %edi,%edi
47ed94:	55                   	push   %ebp
47ed95:	8b ec                	mov    %esp,%ebp
47ed97:	51                   	push   %ecx
47ed98:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47ed9d:	33 c5                	xor    %ebp,%eax
47ed9f:	89 45 fc             	mov    %eax,-0x4(%ebp)
47eda2:	56                   	push   %esi
47eda3:	8b 75 0c             	mov    0xc(%ebp),%esi
47eda6:	39 75 08             	cmp    %esi,0x8(%ebp)
47eda9:	74 23                	je     0x47edce
47edab:	83 c6 fc             	add    $0xfffffffc,%esi
47edae:	57                   	push   %edi
47edaf:	8b 3e                	mov    (%esi),%edi
47edb1:	85 ff                	test   %edi,%edi
47edb3:	74 0d                	je     0x47edc2
47edb5:	6a 00                	push   $0x0
47edb7:	8b cf                	mov    %edi,%ecx
47edb9:	ff 15 54 43 49 00    	call   *0x494354
47edbf:	ff d7                	call   *%edi
47edc1:	59                   	pop    %ecx
47edc2:	83 ee 08             	sub    $0x8,%esi
47edc5:	8d 46 04             	lea    0x4(%esi),%eax
47edc8:	3b 45 08             	cmp    0x8(%ebp),%eax
47edcb:	75 e2                	jne    0x47edaf
47edcd:	5f                   	pop    %edi
47edce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47edd1:	b0 01                	mov    $0x1,%al
47edd3:	33 cd                	xor    %ebp,%ecx
47edd5:	5e                   	pop    %esi
47edd6:	e8 27 0c fc ff       	call   0x43fa02
47eddb:	8b e5                	mov    %ebp,%esp
47eddd:	5d                   	pop    %ebp
47edde:	c3                   	ret
47eddf:	8b ff                	mov    %edi,%edi
47ede1:	55                   	push   %ebp
47ede2:	8b ec                	mov    %esp,%ebp
47ede4:	8b 4d 08             	mov    0x8(%ebp),%ecx
47ede7:	85 c9                	test   %ecx,%ecx
47ede9:	78 1e                	js     0x47ee09
47edeb:	83 f9 02             	cmp    $0x2,%ecx
47edee:	7e 0c                	jle    0x47edfc
47edf0:	83 f9 03             	cmp    $0x3,%ecx
47edf3:	75 14                	jne    0x47ee09
47edf5:	a1 14 c3 4b 00       	mov    0x4bc314,%eax
47edfa:	5d                   	pop    %ebp
47edfb:	c3                   	ret
47edfc:	a1 14 c3 4b 00       	mov    0x4bc314,%eax
47ee01:	89 0d 14 c3 4b 00    	mov    %ecx,0x4bc314
47ee07:	5d                   	pop    %ebp
47ee08:	c3                   	ret
47ee09:	e8 21 e0 fc ff       	call   0x44ce2f
47ee0e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
47ee14:	e8 bd de fc ff       	call   0x44ccd6
47ee19:	83 c8 ff             	or     $0xffffffff,%eax
47ee1c:	5d                   	pop    %ebp
47ee1d:	c3                   	ret
47ee1e:	8b ff                	mov    %edi,%edi
47ee20:	55                   	push   %ebp
47ee21:	8b ec                	mov    %esp,%ebp
47ee23:	56                   	push   %esi
47ee24:	8b 75 08             	mov    0x8(%ebp),%esi
47ee27:	57                   	push   %edi
47ee28:	85 f6                	test   %esi,%esi
47ee2a:	74 13                	je     0x47ee3f
47ee2c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47ee2f:	85 c9                	test   %ecx,%ecx
47ee31:	74 0c                	je     0x47ee3f
47ee33:	8b 7d 10             	mov    0x10(%ebp),%edi
47ee36:	85 ff                	test   %edi,%edi
47ee38:	75 1a                	jne    0x47ee54
47ee3a:	33 c0                	xor    %eax,%eax
47ee3c:	66 89 06             	mov    %ax,(%esi)
47ee3f:	e8 eb df fc ff       	call   0x44ce2f
47ee44:	6a 16                	push   $0x16
47ee46:	5e                   	pop    %esi
47ee47:	89 30                	mov    %esi,(%eax)
47ee49:	e8 88 de fc ff       	call   0x44ccd6
47ee4e:	8b c6                	mov    %esi,%eax
47ee50:	5f                   	pop    %edi
47ee51:	5e                   	pop    %esi
47ee52:	5d                   	pop    %ebp
47ee53:	c3                   	ret
47ee54:	8b d6                	mov    %esi,%edx
47ee56:	66 83 3a 00          	cmpw   $0x0,(%edx)
47ee5a:	74 08                	je     0x47ee64
47ee5c:	83 c2 02             	add    $0x2,%edx
47ee5f:	83 e9 01             	sub    $0x1,%ecx
47ee62:	75 f2                	jne    0x47ee56
47ee64:	85 c9                	test   %ecx,%ecx
47ee66:	74 d2                	je     0x47ee3a
47ee68:	2b fa                	sub    %edx,%edi
47ee6a:	0f b7 04 17          	movzwl (%edi,%edx,1),%eax
47ee6e:	66 89 02             	mov    %ax,(%edx)
47ee71:	8d 52 02             	lea    0x2(%edx),%edx
47ee74:	66 85 c0             	test   %ax,%ax
47ee77:	74 05                	je     0x47ee7e
47ee79:	83 e9 01             	sub    $0x1,%ecx
47ee7c:	75 ec                	jne    0x47ee6a
47ee7e:	33 c0                	xor    %eax,%eax
47ee80:	85 c9                	test   %ecx,%ecx
47ee82:	75 cc                	jne    0x47ee50
47ee84:	66 89 06             	mov    %ax,(%esi)
47ee87:	e8 a3 df fc ff       	call   0x44ce2f
47ee8c:	6a 22                	push   $0x22
47ee8e:	eb b6                	jmp    0x47ee46
47ee90:	8b ff                	mov    %edi,%edi
47ee92:	55                   	push   %ebp
47ee93:	8b ec                	mov    %esp,%ebp
47ee95:	53                   	push   %ebx
47ee96:	56                   	push   %esi
47ee97:	57                   	push   %edi
47ee98:	8b 7d 08             	mov    0x8(%ebp),%edi
47ee9b:	85 ff                	test   %edi,%edi
47ee9d:	74 13                	je     0x47eeb2
47ee9f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47eea2:	85 c9                	test   %ecx,%ecx
47eea4:	74 0c                	je     0x47eeb2
47eea6:	8b 5d 10             	mov    0x10(%ebp),%ebx
47eea9:	85 db                	test   %ebx,%ebx
47eeab:	75 1b                	jne    0x47eec8
47eead:	33 c0                	xor    %eax,%eax
47eeaf:	66 89 07             	mov    %ax,(%edi)
47eeb2:	e8 78 df fc ff       	call   0x44ce2f
47eeb7:	6a 16                	push   $0x16
47eeb9:	5e                   	pop    %esi
47eeba:	89 30                	mov    %esi,(%eax)
47eebc:	e8 15 de fc ff       	call   0x44ccd6
47eec1:	5f                   	pop    %edi
47eec2:	8b c6                	mov    %esi,%eax
47eec4:	5e                   	pop    %esi
47eec5:	5b                   	pop    %ebx
47eec6:	5d                   	pop    %ebp
47eec7:	c3                   	ret
47eec8:	8b d7                	mov    %edi,%edx
47eeca:	33 f6                	xor    %esi,%esi
47eecc:	66 39 32             	cmp    %si,(%edx)
47eecf:	74 08                	je     0x47eed9
47eed1:	83 c2 02             	add    $0x2,%edx
47eed4:	83 e9 01             	sub    $0x1,%ecx
47eed7:	75 f3                	jne    0x47eecc
47eed9:	85 c9                	test   %ecx,%ecx
47eedb:	74 d0                	je     0x47eead
47eedd:	2b da                	sub    %edx,%ebx
47eedf:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
47eee3:	66 89 02             	mov    %ax,(%edx)
47eee6:	8d 52 02             	lea    0x2(%edx),%edx
47eee9:	66 85 c0             	test   %ax,%ax
47eeec:	74 05                	je     0x47eef3
47eeee:	83 e9 01             	sub    $0x1,%ecx
47eef1:	75 ec                	jne    0x47eedf
47eef3:	85 c9                	test   %ecx,%ecx
47eef5:	75 ca                	jne    0x47eec1
47eef7:	33 c0                	xor    %eax,%eax
47eef9:	66 89 07             	mov    %ax,(%edi)
47eefc:	e8 2e df fc ff       	call   0x44ce2f
47ef01:	6a 22                	push   $0x22
47ef03:	eb b4                	jmp    0x47eeb9
47ef05:	8b ff                	mov    %edi,%edi
47ef07:	55                   	push   %ebp
47ef08:	8b ec                	mov    %esp,%ebp
47ef0a:	51                   	push   %ecx
47ef0b:	8b 55 14             	mov    0x14(%ebp),%edx
47ef0e:	8b 4d 08             	mov    0x8(%ebp),%ecx
47ef11:	56                   	push   %esi
47ef12:	85 d2                	test   %edx,%edx
47ef14:	75 0d                	jne    0x47ef23
47ef16:	85 c9                	test   %ecx,%ecx
47ef18:	75 0d                	jne    0x47ef27
47ef1a:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
47ef1d:	75 26                	jne    0x47ef45
47ef1f:	33 c0                	xor    %eax,%eax
47ef21:	eb 33                	jmp    0x47ef56
47ef23:	85 c9                	test   %ecx,%ecx
47ef25:	74 1e                	je     0x47ef45
47ef27:	8b 45 0c             	mov    0xc(%ebp),%eax
47ef2a:	85 c0                	test   %eax,%eax
47ef2c:	74 17                	je     0x47ef45
47ef2e:	85 d2                	test   %edx,%edx