415cb6:	83 c4 08             	add    $0x8,%esp
415cb9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
415cbc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
415cc3:	59                   	pop    %ecx
415cc4:	5e                   	pop    %esi
415cc5:	8b e5                	mov    %ebp,%esp
415cc7:	5d                   	pop    %ebp
415cc8:	8b e3                	mov    %ebx,%esp
415cca:	5b                   	pop    %ebx
415ccb:	c3                   	ret
415ccc:	e8 ae ad 00 00       	call   0x420a7f
415cd1:	cc                   	int3
415cd2:	cc                   	int3
415cd3:	cc                   	int3
415cd4:	cc                   	int3
415cd5:	cc                   	int3
415cd6:	cc                   	int3
415cd7:	cc                   	int3
415cd8:	cc                   	int3
415cd9:	cc                   	int3
415cda:	cc                   	int3
415cdb:	cc                   	int3
415cdc:	cc                   	int3
415cdd:	cc                   	int3
415cde:	cc                   	int3
415cdf:	cc                   	int3
415ce0:	55                   	push   %ebp
415ce1:	8b ec                	mov    %esp,%ebp
415ce3:	6a ff                	push   $0xffffffff
415ce5:	68 9d e3 43 00       	push   $0x43e39d
415cea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
415cf0:	50                   	push   %eax
415cf1:	83 ec 54             	sub    $0x54,%esp
415cf4:	a1 14 40 45 00       	mov    0x454014,%eax
415cf9:	33 c5                	xor    %ebp,%eax
415cfb:	89 45 f0             	mov    %eax,-0x10(%ebp)
415cfe:	56                   	push   %esi
415cff:	57                   	push   %edi
415d00:	50                   	push   %eax
415d01:	8d 45 f4             	lea    -0xc(%ebp),%eax
415d04:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
415d0a:	8b 45 10             	mov    0x10(%ebp),%eax
415d0d:	33 d2                	xor    %edx,%edx
415d0f:	8b 75 08             	mov    0x8(%ebp),%esi
415d12:	8b 4d 0c             	mov    0xc(%ebp),%ecx
415d15:	89 45 d0             	mov    %eax,-0x30(%ebp)
415d18:	8b 45 14             	mov    0x14(%ebp),%eax
415d1b:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
415d22:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
415d29:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
415d30:	66 89 55 d8          	mov    %dx,-0x28(%ebp)
415d34:	89 55 fc             	mov    %edx,-0x4(%ebp)
415d37:	8b 09                	mov    (%ecx),%ecx
415d39:	03 08                	add    (%eax),%ecx
415d3b:	8d 46 10             	lea    0x10(%esi),%eax
415d3e:	39 08                	cmp    %ecx,(%eax)
415d40:	89 45 d4             	mov    %eax,-0x2c(%ebp)
415d43:	0f 42 08             	cmovb  (%eax),%ecx
415d46:	8b c6                	mov    %esi,%eax
415d48:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
415d4c:	89 55 b8             	mov    %edx,-0x48(%ebp)
415d4f:	89 55 c8             	mov    %edx,-0x38(%ebp)
415d52:	89 55 cc             	mov    %edx,-0x34(%ebp)
415d55:	72 02                	jb     0x415d59
415d57:	8b 06                	mov    (%esi),%eax
415d59:	51                   	push   %ecx
415d5a:	50                   	push   %eax
415d5b:	8d 4d b8             	lea    -0x48(%ebp),%ecx
415d5e:	e8 ad c7 fe ff       	call   0x402510
415d63:	68 6c ed 44 00       	push   $0x44ed6c
415d68:	8d 55 b8             	lea    -0x48(%ebp),%edx
415d6b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
415d6f:	8d 4d a0             	lea    -0x60(%ebp),%ecx
415d72:	e8 59 c6 fe ff       	call   0x4023d0
415d77:	8b f8                	mov    %eax,%edi
415d79:	83 c4 04             	add    $0x4,%esp
415d7c:	8d 45 d8             	lea    -0x28(%ebp),%eax
415d7f:	3b c7                	cmp    %edi,%eax
415d81:	74 6c                	je     0x415def
415d83:	8b 4d ec             	mov    -0x14(%ebp),%ecx
415d86:	83 f9 08             	cmp    $0x8,%ecx
415d89:	72 32                	jb     0x415dbd
415d8b:	8b 55 d8             	mov    -0x28(%ebp),%edx
415d8e:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
415d95:	8b c2                	mov    %edx,%eax
415d97:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
415d9d:	72 14                	jb     0x415db3
415d9f:	8b 50 fc             	mov    -0x4(%eax),%edx
415da2:	83 c1 23             	add    $0x23,%ecx
415da5:	2b c2                	sub    %edx,%eax
415da7:	83 c0 fc             	add    $0xfffffffc,%eax
415daa:	83 f8 1f             	cmp    $0x1f,%eax
415dad:	0f 87 fe 01 00 00    	ja     0x415fb1
415db3:	51                   	push   %ecx
415db4:	52                   	push   %edx
415db5:	e8 54 5b 00 00       	call   0x41b90e
415dba:	83 c4 08             	add    $0x8,%esp
415dbd:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
415dc4:	33 c0                	xor    %eax,%eax
415dc6:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
415dcd:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
415dd1:	0f 10 07             	movups (%edi),%xmm0
415dd4:	0f 11 45 d8          	movups %xmm0,-0x28(%ebp)
415dd8:	f3 0f 7e 47 10       	movq   0x10(%edi),%xmm0
415ddd:	66 0f d6 45 e8       	movq   %xmm0,-0x18(%ebp)
415de2:	89 47 10             	mov    %eax,0x10(%edi)
415de5:	c7 47 14 07 00 00 00 	movl   $0x7,0x14(%edi)
415dec:	66 89 07             	mov    %ax,(%edi)
415def:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
415df2:	83 f9 08             	cmp    $0x8,%ecx
415df5:	72 32                	jb     0x415e29
415df7:	8b 55 a0             	mov    -0x60(%ebp),%edx
415dfa:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
415e01:	8b c2                	mov    %edx,%eax
415e03:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
415e09:	72 14                	jb     0x415e1f
415e0b:	8b 50 fc             	mov    -0x4(%eax),%edx
415e0e:	83 c1 23             	add    $0x23,%ecx
415e11:	2b c2                	sub    %edx,%eax
415e13:	83 c0 fc             	add    $0xfffffffc,%eax
415e16:	83 f8 1f             	cmp    $0x1f,%eax
415e19:	0f 87 92 01 00 00    	ja     0x415fb1
415e1f:	51                   	push   %ecx
415e20:	52                   	push   %edx
415e21:	e8 e8 5a 00 00       	call   0x41b90e
415e26:	83 c4 08             	add    $0x8,%esp
415e29:	33 c0                	xor    %eax,%eax
415e2b:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
415e32:	88 45 fc             	mov    %al,-0x4(%ebp)
415e35:	8b 4d cc             	mov    -0x34(%ebp),%ecx
415e38:	c7 45 b4 07 00 00 00 	movl   $0x7,-0x4c(%ebp)
415e3f:	66 89 45 a0          	mov    %ax,-0x60(%ebp)
415e43:	83 f9 08             	cmp    $0x8,%ecx
415e46:	72 32                	jb     0x415e7a
415e48:	8b 55 b8             	mov    -0x48(%ebp),%edx
415e4b:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
415e52:	8b c2                	mov    %edx,%eax
415e54:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
415e5a:	72 14                	jb     0x415e70
415e5c:	8b 50 fc             	mov    -0x4(%eax),%edx
415e5f:	83 c1 23             	add    $0x23,%ecx
415e62:	2b c2                	sub    %edx,%eax
415e64:	83 c0 fc             	add    $0xfffffffc,%eax
415e67:	83 f8 1f             	cmp    $0x1f,%eax
415e6a:	0f 87 41 01 00 00    	ja     0x415fb1
415e70:	51                   	push   %ecx
415e71:	52                   	push   %edx
415e72:	e8 97 5a 00 00       	call   0x41b90e
415e77:	83 c4 08             	add    $0x8,%esp
415e7a:	8b 4d d0             	mov    -0x30(%ebp),%ecx
415e7d:	8b 45 d4             	mov    -0x2c(%ebp),%eax
415e80:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
415e87:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
415e8e:	8b 09                	mov    (%ecx),%ecx
415e90:	8b 00                	mov    (%eax),%eax
415e92:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
415e99:	3b c1                	cmp    %ecx,%eax
415e9b:	0f 82 15 01 00 00    	jb     0x415fb6
415ea1:	2b c1                	sub    %ecx,%eax
415ea3:	83 ca ff             	or     $0xffffffff,%edx
415ea6:	83 f8 ff             	cmp    $0xffffffff,%eax
415ea9:	0f 42 d0             	cmovb  %eax,%edx
415eac:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
415eb0:	8b c6                	mov    %esi,%eax
415eb2:	72 02                	jb     0x415eb6
415eb4:	8b 06                	mov    (%esi),%eax
415eb6:	8d 04 48             	lea    (%eax,%ecx,2),%eax
415eb9:	52                   	push   %edx
415eba:	50                   	push   %eax
415ebb:	8d 4d b8             	lea    -0x48(%ebp),%ecx
415ebe:	e8 4d c6 fe ff       	call   0x402510
415ec3:	8d 45 b8             	lea    -0x48(%ebp),%eax
415ec6:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
415eca:	50                   	push   %eax
415ecb:	8d 4d d8             	lea    -0x28(%ebp),%ecx
415ece:	e8 1d 48 ff ff       	call   0x40a6f0
415ed3:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
415ed7:	8b 4d cc             	mov    -0x34(%ebp),%ecx
415eda:	83 f9 08             	cmp    $0x8,%ecx
415edd:	72 32                	jb     0x415f11
415edf:	8b 55 b8             	mov    -0x48(%ebp),%edx
415ee2:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
415ee9:	8b c2                	mov    %edx,%eax
415eeb:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
415ef1:	72 14                	jb     0x415f07
415ef3:	8b 50 fc             	mov    -0x4(%eax),%edx
415ef6:	83 c1 23             	add    $0x23,%ecx
415ef9:	2b c2                	sub    %edx,%eax
415efb:	83 c0 fc             	add    $0xfffffffc,%eax
415efe:	83 f8 1f             	cmp    $0x1f,%eax
415f01:	0f 87 b4 00 00 00    	ja     0x415fbb
415f07:	51                   	push   %ecx
415f08:	52                   	push   %edx
415f09:	e8 00 5a 00 00       	call   0x41b90e
415f0e:	83 c4 08             	add    $0x8,%esp
415f11:	8d 45 d8             	lea    -0x28(%ebp),%eax
415f14:	3b f0                	cmp    %eax,%esi
415f16:	74 46                	je     0x415f5e
415f18:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
415f1c:	8b c8                	mov    %eax,%ecx
415f1e:	8b 7d e8             	mov    -0x18(%ebp),%edi
415f21:	0f 43 4d d8          	cmovae -0x28(%ebp),%ecx
415f25:	8b 46 14             	mov    0x14(%esi),%eax
415f28:	3b f8                	cmp    %eax,%edi
415f2a:	77 22                	ja     0x415f4e
415f2c:	83 f8 08             	cmp    $0x8,%eax
415f2f:	72 02                	jb     0x415f33
415f31:	8b 36                	mov    (%esi),%esi
415f33:	8b 45 d4             	mov    -0x2c(%ebp),%eax
415f36:	89 38                	mov    %edi,(%eax)
415f38:	8d 04 3f             	lea    (%edi,%edi,1),%eax
415f3b:	50                   	push   %eax
415f3c:	51                   	push   %ecx
415f3d:	56                   	push   %esi
415f3e:	e8 0d 75 00 00       	call   0x41d450
415f43:	83 c4 0c             	add    $0xc,%esp
415f46:	33 c0                	xor    %eax,%eax
415f48:	66 89 04 7e          	mov    %ax,(%esi,%edi,2)
415f4c:	eb 10                	jmp    0x415f5e
415f4e:	51                   	push   %ecx
415f4f:	c6 45 d0 00          	movb   $0x0,-0x30(%ebp)
415f53:	8b ce                	mov    %esi,%ecx
415f55:	ff 75 d0             	push   -0x30(%ebp)
415f58:	57                   	push   %edi
415f59:	e8 b2 c6 fe ff       	call   0x402610
415f5e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
415f61:	83 f9 08             	cmp    $0x8,%ecx
415f64:	72 2e                	jb     0x415f94
415f66:	8b 55 d8             	mov    -0x28(%ebp),%edx
415f69:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
415f70:	8b c2                	mov    %edx,%eax
415f72:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
415f78:	72 10                	jb     0x415f8a
415f7a:	8b 50 fc             	mov    -0x4(%eax),%edx
415f7d:	83 c1 23             	add    $0x23,%ecx
415f80:	2b c2                	sub    %edx,%eax
415f82:	83 c0 fc             	add    $0xfffffffc,%eax
415f85:	83 f8 1f             	cmp    $0x1f,%eax
415f88:	77 31                	ja     0x415fbb
415f8a:	51                   	push   %ecx
415f8b:	52                   	push   %edx
415f8c:	e8 7d 59 00 00       	call   0x41b90e
415f91:	83 c4 08             	add    $0x8,%esp
415f94:	8b 4d f4             	mov    -0xc(%ebp),%ecx
415f97:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
415f9e:	59                   	pop    %ecx
415f9f:	5f                   	pop    %edi
415fa0:	5e                   	pop    %esi
415fa1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
415fa4:	33 cd                	xor    %ebp,%ecx
415fa6:	e8 25 59 00 00       	call   0x41b8d0
415fab:	8b e5                	mov    %ebp,%esp
415fad:	5d                   	pop    %ebp
415fae:	c2 10 00             	ret    $0x10
415fb1:	e8 c9 aa 00 00       	call   0x420a7f
415fb6:	e8 15 59 ff ff       	call   0x40b8d0
415fbb:	e8 bf aa 00 00       	call   0x420a7f
415fc0:	cc                   	int3
415fc1:	cc                   	int3
415fc2:	cc                   	int3
415fc3:	cc                   	int3
415fc4:	cc                   	int3
415fc5:	cc                   	int3
415fc6:	cc                   	int3
415fc7:	cc                   	int3
415fc8:	cc                   	int3
415fc9:	cc                   	int3
415fca:	cc                   	int3
415fcb:	cc                   	int3
415fcc:	cc                   	int3
415fcd:	cc                   	int3
415fce:	cc                   	int3
415fcf:	cc                   	int3
415fd0:	55                   	push   %ebp
415fd1:	8b ec                	mov    %esp,%ebp
415fd3:	6a ff                	push   $0xffffffff
415fd5:	68 f5 e3 43 00       	push   $0x43e3f5
415fda:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
415fe0:	50                   	push   %eax
415fe1:	81 ec a8 00 00 00    	sub    $0xa8,%esp
415fe7:	a1 14 40 45 00       	mov    0x454014,%eax
415fec:	33 c5                	xor    %ebp,%eax
415fee:	89 45 f0             	mov    %eax,-0x10(%ebp)
415ff1:	56                   	push   %esi
415ff2:	57                   	push   %edi
415ff3:	50                   	push   %eax
415ff4:	8d 45 f4             	lea    -0xc(%ebp),%eax
415ff7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
415ffd:	89 8d 68 ff ff ff    	mov    %ecx,-0x98(%ebp)
416003:	8b 75 08             	mov    0x8(%ebp),%esi
416006:	8b d6                	mov    %esi,%edx
416008:	8b 45 0c             	mov    0xc(%ebp),%eax
41600b:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
416011:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
416018:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
41601f:	8d 4a 02             	lea    0x2(%edx),%ecx
416022:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
416029:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
416030:	66 8b 02             	mov    (%edx),%ax
416033:	83 c2 02             	add    $0x2,%edx
416036:	66 85 c0             	test   %ax,%ax
416039:	75 f5                	jne    0x416030
41603b:	2b d1                	sub    %ecx,%edx
41603d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416040:	d1 fa                	sar    $1,%edx
416042:	52                   	push   %edx
416043:	56                   	push   %esi
416044:	e8 c7 c4 fe ff       	call   0x402510
416049:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
416050:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416053:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
416057:	8d 75 d8             	lea    -0x28(%ebp),%esi
41605a:	8b 55 d8             	mov    -0x28(%ebp),%edx
41605d:	8d 7d d8             	lea    -0x28(%ebp),%edi
416060:	8b 45 e8             	mov    -0x18(%ebp),%eax
416063:	0f 43 ca             	cmovae %edx,%ecx
416066:	0f 43 f2             	cmovae %edx,%esi
416069:	0f 43 fa             	cmovae %edx,%edi
41606c:	8d 04 41             	lea    (%ecx,%eax,2),%eax
41606f:	89 45 88             	mov    %eax,-0x78(%ebp)
416072:	3b f0                	cmp    %eax,%esi
416074:	74 22                	je     0x416098
416076:	2b fe                	sub    %esi,%edi
416078:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
41607f:	00
416080:	0f b7 06             	movzwl (%esi),%eax
416083:	50                   	push   %eax
416084:	e8 d3 06 01 00       	call   0x42675c
416089:	66 89 04 3e          	mov    %ax,(%esi,%edi,1)
41608d:	83 c4 04             	add    $0x4,%esp
416090:	83 c6 02             	add    $0x2,%esi
416093:	3b 75 88             	cmp    -0x78(%ebp),%esi
416096:	75 e8                	jne    0x416080
416098:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
41609e:	8b b0 00 01 00 00    	mov    0x100(%eax),%esi
4160a4:	3b b0 04 01 00 00    	cmp    0x104(%eax),%esi
4160aa:	0f 84 13 04 00 00    	je     0x4164c3
4160b0:	56                   	push   %esi
4160b1:	8d 4d 90             	lea    -0x70(%ebp),%ecx
4160b4:	e8 07 c2 fe ff       	call   0x4022c0
4160b9:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4160bd:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
4160c2:	8b 4d a0             	mov    -0x60(%ebp),%ecx
4160c5:	2b c1                	sub    %ecx,%eax
4160c7:	83 f8 01             	cmp    $0x1,%eax
4160ca:	0f 82 4b 04 00 00    	jb     0x41651b
4160d0:	83 7d a4 08          	cmpl   $0x8,-0x5c(%ebp)
4160d4:	8d 45 90             	lea    -0x70(%ebp),%eax
4160d7:	6a 01                	push   $0x1
4160d9:	0f 43 45 90          	cmovae -0x70(%ebp),%eax